├── .gitattributes ├── LICENSE ├── MY_FIRST_NODE_WEBSITE ├── .idea │ ├── MY_FIRST_NODE_WEBSITE.iml │ ├── codeStyles │ │ └── codeStyleConfig.xml │ ├── modules.xml │ ├── vcs.xml │ └── workspace.xml ├── about.html ├── contact.html ├── home.html ├── index.js ├── package.json └── terms.html ├── Node_Debug ├── .idea │ ├── Node_Debug.iml │ ├── codeStyles │ │ └── codeStyleConfig.xml │ ├── modules.xml │ ├── vcs.xml │ └── workspace.xml ├── index.js ├── node_modules │ ├── axios │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── UPGRADE_GUIDE.md │ │ ├── dist │ │ │ ├── axios.js │ │ │ ├── axios.map │ │ │ ├── axios.min.js │ │ │ └── axios.min.map │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── lib │ │ │ ├── adapters │ │ │ │ ├── README.md │ │ │ │ ├── http.js │ │ │ │ └── xhr.js │ │ │ ├── axios.js │ │ │ ├── cancel │ │ │ │ ├── Cancel.js │ │ │ │ ├── CancelToken.js │ │ │ │ └── isCancel.js │ │ │ ├── core │ │ │ │ ├── Axios.js │ │ │ │ ├── InterceptorManager.js │ │ │ │ ├── README.md │ │ │ │ ├── buildFullPath.js │ │ │ │ ├── createError.js │ │ │ │ ├── dispatchRequest.js │ │ │ │ ├── enhanceError.js │ │ │ │ ├── mergeConfig.js │ │ │ │ ├── settle.js │ │ │ │ └── transformData.js │ │ │ ├── defaults.js │ │ │ ├── helpers │ │ │ │ ├── README.md │ │ │ │ ├── bind.js │ │ │ │ ├── buildURL.js │ │ │ │ ├── combineURLs.js │ │ │ │ ├── cookies.js │ │ │ │ ├── deprecatedMethod.js │ │ │ │ ├── isAbsoluteURL.js │ │ │ │ ├── isURLSameOrigin.js │ │ │ │ ├── normalizeHeaderName.js │ │ │ │ ├── parseHeaders.js │ │ │ │ └── spread.js │ │ │ └── utils.js │ │ └── package.json │ └── follow-redirects │ │ ├── LICENSE │ │ ├── README.md │ │ ├── debug.js │ │ ├── http.js │ │ ├── https.js │ │ ├── index.js │ │ └── package.json ├── package-lock.json └── package.json ├── Node_With_Mongo ├── .idea │ ├── Node_With_Mongo.iml │ ├── codeStyles │ │ └── codeStyleConfig.xml │ ├── modules.xml │ ├── vcs.xml │ └── workspace.xml ├── index.js ├── node_modules │ ├── .bin │ │ ├── semver │ │ ├── semver.cmd │ │ └── semver.ps1 │ ├── bl │ │ ├── .jshintrc │ │ ├── .travis.yml │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── bl.js │ │ ├── package.json │ │ └── test │ │ │ ├── indexOf.js │ │ │ └── test.js │ ├── bson │ │ ├── HISTORY.md │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── bower.json │ │ ├── browser_build │ │ │ ├── bson.js │ │ │ └── package.json │ │ ├── index.js │ │ ├── lib │ │ │ └── bson │ │ │ │ ├── binary.js │ │ │ │ ├── bson.js │ │ │ │ ├── code.js │ │ │ │ ├── db_ref.js │ │ │ │ ├── decimal128.js │ │ │ │ ├── double.js │ │ │ │ ├── float_parser.js │ │ │ │ ├── int_32.js │ │ │ │ ├── long.js │ │ │ │ ├── map.js │ │ │ │ ├── max_key.js │ │ │ │ ├── min_key.js │ │ │ │ ├── objectid.js │ │ │ │ ├── parser │ │ │ │ ├── calculate_size.js │ │ │ │ ├── deserializer.js │ │ │ │ ├── serializer.js │ │ │ │ └── utils.js │ │ │ │ ├── regexp.js │ │ │ │ ├── symbol.js │ │ │ │ └── timestamp.js │ │ └── package.json │ ├── core-util-is │ │ ├── LICENSE │ │ ├── README.md │ │ ├── float.patch │ │ ├── lib │ │ │ └── util.js │ │ ├── package.json │ │ └── test.js │ ├── denque │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.js │ │ └── package.json │ ├── inherits │ │ ├── LICENSE │ │ ├── README.md │ │ ├── inherits.js │ │ ├── inherits_browser.js │ │ └── package.json │ ├── isarray │ │ ├── .npmignore │ │ ├── .travis.yml │ │ ├── Makefile │ │ ├── README.md │ │ ├── component.json │ │ ├── index.js │ │ ├── package.json │ │ └── test.js │ ├── memory-pager │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── test.js │ ├── mongodb │ │ ├── HISTORY.md │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── index.js │ │ ├── lib │ │ │ ├── admin.js │ │ │ ├── aggregation_cursor.js │ │ │ ├── apm.js │ │ │ ├── async │ │ │ │ ├── .eslintrc │ │ │ │ └── async_iterator.js │ │ │ ├── bulk │ │ │ │ ├── common.js │ │ │ │ ├── ordered.js │ │ │ │ └── unordered.js │ │ │ ├── change_stream.js │ │ │ ├── cmap │ │ │ │ ├── connection.js │ │ │ │ ├── connection_pool.js │ │ │ │ ├── errors.js │ │ │ │ ├── events.js │ │ │ │ ├── message_stream.js │ │ │ │ └── stream_description.js │ │ │ ├── collection.js │ │ │ ├── command_cursor.js │ │ │ ├── constants.js │ │ │ ├── core │ │ │ │ ├── auth │ │ │ │ │ ├── auth_provider.js │ │ │ │ │ ├── defaultAuthProviders.js │ │ │ │ │ ├── gssapi.js │ │ │ │ │ ├── mongo_credentials.js │ │ │ │ │ ├── mongocr.js │ │ │ │ │ ├── mongodb_aws.js │ │ │ │ │ ├── plain.js │ │ │ │ │ ├── scram.js │ │ │ │ │ └── x509.js │ │ │ │ ├── connection │ │ │ │ │ ├── apm.js │ │ │ │ │ ├── command_result.js │ │ │ │ │ ├── commands.js │ │ │ │ │ ├── connect.js │ │ │ │ │ ├── connection.js │ │ │ │ │ ├── logger.js │ │ │ │ │ ├── msg.js │ │ │ │ │ ├── pool.js │ │ │ │ │ └── utils.js │ │ │ │ ├── cursor.js │ │ │ │ ├── error.js │ │ │ │ ├── index.js │ │ │ │ ├── sdam │ │ │ │ │ ├── common.js │ │ │ │ │ ├── events.js │ │ │ │ │ ├── monitor.js │ │ │ │ │ ├── server.js │ │ │ │ │ ├── server_description.js │ │ │ │ │ ├── server_selection.js │ │ │ │ │ ├── srv_polling.js │ │ │ │ │ ├── topology.js │ │ │ │ │ └── topology_description.js │ │ │ │ ├── sessions.js │ │ │ │ ├── tools │ │ │ │ │ └── smoke_plugin.js │ │ │ │ ├── topologies │ │ │ │ │ ├── mongos.js │ │ │ │ │ ├── read_preference.js │ │ │ │ │ ├── replset.js │ │ │ │ │ ├── replset_state.js │ │ │ │ │ ├── server.js │ │ │ │ │ └── shared.js │ │ │ │ ├── transactions.js │ │ │ │ ├── uri_parser.js │ │ │ │ ├── utils.js │ │ │ │ └── wireprotocol │ │ │ │ │ ├── command.js │ │ │ │ │ ├── compression.js │ │ │ │ │ ├── constants.js │ │ │ │ │ ├── get_more.js │ │ │ │ │ ├── index.js │ │ │ │ │ ├── kill_cursors.js │ │ │ │ │ ├── query.js │ │ │ │ │ ├── shared.js │ │ │ │ │ └── write_command.js │ │ │ ├── cursor.js │ │ │ ├── db.js │ │ │ ├── dynamic_loaders.js │ │ │ ├── error.js │ │ │ ├── gridfs-stream │ │ │ │ ├── download.js │ │ │ │ ├── index.js │ │ │ │ └── upload.js │ │ │ ├── gridfs │ │ │ │ ├── chunk.js │ │ │ │ └── grid_store.js │ │ │ ├── mongo_client.js │ │ │ ├── operations │ │ │ │ ├── add_user.js │ │ │ │ ├── admin_ops.js │ │ │ │ ├── aggregate.js │ │ │ │ ├── bulk_write.js │ │ │ │ ├── collection_ops.js │ │ │ │ ├── collections.js │ │ │ │ ├── command.js │ │ │ │ ├── command_v2.js │ │ │ │ ├── common_functions.js │ │ │ │ ├── connect.js │ │ │ │ ├── count.js │ │ │ │ ├── count_documents.js │ │ │ │ ├── create_collection.js │ │ │ │ ├── create_indexes.js │ │ │ │ ├── cursor_ops.js │ │ │ │ ├── db_ops.js │ │ │ │ ├── delete_many.js │ │ │ │ ├── delete_one.js │ │ │ │ ├── distinct.js │ │ │ │ ├── drop.js │ │ │ │ ├── drop_index.js │ │ │ │ ├── drop_indexes.js │ │ │ │ ├── estimated_document_count.js │ │ │ │ ├── execute_db_admin_command.js │ │ │ │ ├── execute_operation.js │ │ │ │ ├── find.js │ │ │ │ ├── find_and_modify.js │ │ │ │ ├── find_one.js │ │ │ │ ├── find_one_and_delete.js │ │ │ │ ├── find_one_and_replace.js │ │ │ │ ├── find_one_and_update.js │ │ │ │ ├── geo_haystack_search.js │ │ │ │ ├── index_exists.js │ │ │ │ ├── index_information.js │ │ │ │ ├── indexes.js │ │ │ │ ├── insert_many.js │ │ │ │ ├── insert_one.js │ │ │ │ ├── is_capped.js │ │ │ │ ├── list_collections.js │ │ │ │ ├── list_databases.js │ │ │ │ ├── list_indexes.js │ │ │ │ ├── map_reduce.js │ │ │ │ ├── operation.js │ │ │ │ ├── options_operation.js │ │ │ │ ├── profiling_level.js │ │ │ │ ├── re_index.js │ │ │ │ ├── remove_user.js │ │ │ │ ├── rename.js │ │ │ │ ├── replace_one.js │ │ │ │ ├── run_command.js │ │ │ │ ├── set_profiling_level.js │ │ │ │ ├── stats.js │ │ │ │ ├── update_many.js │ │ │ │ ├── update_one.js │ │ │ │ └── validate_collection.js │ │ │ ├── read_concern.js │ │ │ ├── topologies │ │ │ │ ├── mongos.js │ │ │ │ ├── native_topology.js │ │ │ │ ├── replset.js │ │ │ │ ├── server.js │ │ │ │ └── topology_base.js │ │ │ ├── url_parser.js │ │ │ ├── utils.js │ │ │ └── write_concern.js │ │ └── package.json │ ├── process-nextick-args │ │ ├── index.js │ │ ├── license.md │ │ ├── package.json │ │ └── readme.md │ ├── readable-stream │ │ ├── .travis.yml │ │ ├── CONTRIBUTING.md │ │ ├── GOVERNANCE.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── doc │ │ │ └── wg-meetings │ │ │ │ └── 2015-01-30.md │ │ ├── duplex-browser.js │ │ ├── duplex.js │ │ ├── lib │ │ │ ├── _stream_duplex.js │ │ │ ├── _stream_passthrough.js │ │ │ ├── _stream_readable.js │ │ │ ├── _stream_transform.js │ │ │ ├── _stream_writable.js │ │ │ └── internal │ │ │ │ └── streams │ │ │ │ ├── BufferList.js │ │ │ │ ├── destroy.js │ │ │ │ ├── stream-browser.js │ │ │ │ └── stream.js │ │ ├── node_modules │ │ │ └── safe-buffer │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.d.ts │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ ├── package.json │ │ ├── passthrough.js │ │ ├── readable-browser.js │ │ ├── readable.js │ │ ├── transform.js │ │ ├── writable-browser.js │ │ └── writable.js │ ├── require_optional │ │ ├── .npmignore │ │ ├── .travis.yml │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── test │ │ │ ├── nestedTest │ │ │ ├── index.js │ │ │ └── package.json │ │ │ └── require_optional_tests.js │ ├── resolve-from │ │ ├── index.js │ │ ├── license │ │ ├── package.json │ │ └── readme.md │ ├── safe-buffer │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.js │ │ └── package.json │ ├── saslprep │ │ ├── .editorconfig │ │ ├── .gitattributes │ │ ├── .travis.yml │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── code-points.mem │ │ ├── generate-code-points.js │ │ ├── index.js │ │ ├── lib │ │ │ ├── code-points.js │ │ │ ├── memory-code-points.js │ │ │ └── util.js │ │ ├── package.json │ │ ├── readme.md │ │ └── test │ │ │ ├── index.js │ │ │ └── util.js │ ├── semver │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── bin │ │ │ └── semver │ │ ├── package.json │ │ ├── range.bnf │ │ └── semver.js │ ├── sparse-bitfield │ │ ├── .npmignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── test.js │ ├── string_decoder │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── lib │ │ │ └── string_decoder.js │ │ ├── node_modules │ │ │ └── safe-buffer │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.d.ts │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ └── package.json │ └── util-deprecate │ │ ├── History.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── browser.js │ │ ├── node.js │ │ └── package.json ├── package-lock.json └── package.json ├── Node_With_MySQL ├── .idea │ ├── Node_With_MySQL.iml │ ├── codeStyles │ │ └── codeStyleConfig.xml │ ├── modules.xml │ ├── vcs.xml │ └── workspace.xml ├── Node_With_MySQL.zip ├── index.js ├── node_modules │ ├── bignumber.js │ │ ├── CHANGELOG.md │ │ ├── LICENCE │ │ ├── README.md │ │ ├── bignumber.d.ts │ │ ├── bignumber.js │ │ ├── bignumber.min.js │ │ ├── bignumber.min.js.map │ │ ├── bignumber.mjs │ │ ├── doc │ │ │ └── API.html │ │ └── package.json │ ├── core-util-is │ │ ├── LICENSE │ │ ├── README.md │ │ ├── float.patch │ │ ├── lib │ │ │ └── util.js │ │ ├── package.json │ │ └── test.js │ ├── inherits │ │ ├── LICENSE │ │ ├── README.md │ │ ├── inherits.js │ │ ├── inherits_browser.js │ │ └── package.json │ ├── isarray │ │ ├── .npmignore │ │ ├── .travis.yml │ │ ├── Makefile │ │ ├── README.md │ │ ├── component.json │ │ ├── index.js │ │ ├── package.json │ │ └── test.js │ ├── mysql │ │ ├── Changes.md │ │ ├── License │ │ ├── Readme.md │ │ ├── index.js │ │ ├── lib │ │ │ ├── Connection.js │ │ │ ├── ConnectionConfig.js │ │ │ ├── Pool.js │ │ │ ├── PoolCluster.js │ │ │ ├── PoolConfig.js │ │ │ ├── PoolConnection.js │ │ │ ├── PoolNamespace.js │ │ │ ├── PoolSelector.js │ │ │ └── protocol │ │ │ │ ├── Auth.js │ │ │ │ ├── BufferList.js │ │ │ │ ├── PacketHeader.js │ │ │ │ ├── PacketWriter.js │ │ │ │ ├── Parser.js │ │ │ │ ├── Protocol.js │ │ │ │ ├── ResultSet.js │ │ │ │ ├── SqlString.js │ │ │ │ ├── Timer.js │ │ │ │ ├── constants │ │ │ │ ├── charsets.js │ │ │ │ ├── client.js │ │ │ │ ├── errors.js │ │ │ │ ├── field_flags.js │ │ │ │ ├── server_status.js │ │ │ │ ├── ssl_profiles.js │ │ │ │ └── types.js │ │ │ │ ├── packets │ │ │ │ ├── AuthSwitchRequestPacket.js │ │ │ │ ├── AuthSwitchResponsePacket.js │ │ │ │ ├── ClientAuthenticationPacket.js │ │ │ │ ├── ComChangeUserPacket.js │ │ │ │ ├── ComPingPacket.js │ │ │ │ ├── ComQueryPacket.js │ │ │ │ ├── ComQuitPacket.js │ │ │ │ ├── ComStatisticsPacket.js │ │ │ │ ├── EmptyPacket.js │ │ │ │ ├── EofPacket.js │ │ │ │ ├── ErrorPacket.js │ │ │ │ ├── Field.js │ │ │ │ ├── FieldPacket.js │ │ │ │ ├── HandshakeInitializationPacket.js │ │ │ │ ├── LocalDataFilePacket.js │ │ │ │ ├── LocalInfileRequestPacket.js │ │ │ │ ├── OkPacket.js │ │ │ │ ├── OldPasswordPacket.js │ │ │ │ ├── ResultSetHeaderPacket.js │ │ │ │ ├── RowDataPacket.js │ │ │ │ ├── SSLRequestPacket.js │ │ │ │ ├── StatisticsPacket.js │ │ │ │ ├── UseOldPasswordPacket.js │ │ │ │ └── index.js │ │ │ │ └── sequences │ │ │ │ ├── ChangeUser.js │ │ │ │ ├── Handshake.js │ │ │ │ ├── Ping.js │ │ │ │ ├── Query.js │ │ │ │ ├── Quit.js │ │ │ │ ├── Sequence.js │ │ │ │ ├── Statistics.js │ │ │ │ └── index.js │ │ └── package.json │ ├── process-nextick-args │ │ ├── index.js │ │ ├── license.md │ │ ├── package.json │ │ └── readme.md │ ├── readable-stream │ │ ├── .travis.yml │ │ ├── CONTRIBUTING.md │ │ ├── GOVERNANCE.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── doc │ │ │ └── wg-meetings │ │ │ │ └── 2015-01-30.md │ │ ├── duplex-browser.js │ │ ├── duplex.js │ │ ├── lib │ │ │ ├── _stream_duplex.js │ │ │ ├── _stream_passthrough.js │ │ │ ├── _stream_readable.js │ │ │ ├── _stream_transform.js │ │ │ ├── _stream_writable.js │ │ │ └── internal │ │ │ │ └── streams │ │ │ │ ├── BufferList.js │ │ │ │ ├── destroy.js │ │ │ │ ├── stream-browser.js │ │ │ │ └── stream.js │ │ ├── package.json │ │ ├── passthrough.js │ │ ├── readable-browser.js │ │ ├── readable.js │ │ ├── transform.js │ │ ├── writable-browser.js │ │ └── writable.js │ ├── safe-buffer │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.js │ │ └── package.json │ ├── sqlstring │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── lib │ │ │ └── SqlString.js │ │ └── package.json │ ├── string_decoder │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── lib │ │ │ └── string_decoder.js │ │ └── package.json │ └── util-deprecate │ │ ├── History.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── browser.js │ │ ├── node.js │ │ └── package.json ├── package-lock.json └── package.json ├── PowerPointSlides ├── 1.pptx ├── 10.pptx ├── 11 Node js MySQL.pptx ├── 13 Node js MongoDB Atlas.pptx ├── 14 Node js MongoDB Self Server.pptx ├── 15 Node js debugging.pptx ├── 2.pptx ├── 3.pptx ├── 4.pptx ├── 5.pptx ├── 6.pptx ├── 7.pptx ├── 8.pptx ├── 9.pptx └── ~$11 Node js MySQL.pptx ├── Preview.png ├── README.md ├── Source ├── .idea │ ├── Source.iml │ ├── misc.xml │ ├── modules.xml │ ├── vcs.xml │ └── workspace.xml ├── main.js └── package.json └── fsModule ├── .idea ├── codeStyles │ └── codeStyleConfig.xml ├── fsModule.iml ├── misc.xml ├── modules.xml ├── vcs.xml └── workspace.xml ├── index.js └── package.json /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /MY_FIRST_NODE_WEBSITE/.idea/MY_FIRST_NODE_WEBSITE.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /MY_FIRST_NODE_WEBSITE/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /MY_FIRST_NODE_WEBSITE/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /MY_FIRST_NODE_WEBSITE/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /MY_FIRST_NODE_WEBSITE/about.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Title 6 | 7 | 8 | 9 | Home
10 | Contact
11 | About
12 | Terms
13 | 14 | 15 |
16 | 17 |

This is About page

18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /MY_FIRST_NODE_WEBSITE/contact.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Title 6 | 7 | 8 | Home
9 | Contact
10 | About
11 | Terms
12 | 13 | 14 |
15 | 16 |

This is Contact page

17 | 18 | -------------------------------------------------------------------------------- /MY_FIRST_NODE_WEBSITE/home.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Title 6 | 7 | 8 | Home
9 | Contact
10 | About
11 | Terms
12 | 13 | 14 |
15 | 16 |

This is Home page

17 | 18 | -------------------------------------------------------------------------------- /MY_FIRST_NODE_WEBSITE/index.js: -------------------------------------------------------------------------------- 1 | var fs=require('fs'); 2 | var http=require('http'); 3 | var server=http.createServer(function (req,res) { 4 | 5 | if(req.url=="/"){ 6 | let data= fs.readFileSync('home.html','utf8'); 7 | res.end(data); 8 | } 9 | else if(req.url=="/Contact"){ 10 | let data= fs.readFileSync('contact.html','utf8'); 11 | res.end(data); 12 | 13 | } 14 | else if(req.url=="/About"){ 15 | 16 | let data= fs.readFileSync('about.html','utf8'); 17 | res.end(data); 18 | } 19 | 20 | else if(req.url=="/Terms"){ 21 | let data= fs.readFileSync('terms.html','utf8'); 22 | res.end(data); 23 | } 24 | 25 | }); 26 | server.listen(8080); 27 | console.log("Server Run Success"); 28 | -------------------------------------------------------------------------------- /MY_FIRST_NODE_WEBSITE/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "MY_FIRST_NODE_WEBSITE", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1", 8 | "start": "node index.js" 9 | }, 10 | "keywords": [], 11 | "author": "Your Name", 12 | "license": "ISC" 13 | } 14 | -------------------------------------------------------------------------------- /MY_FIRST_NODE_WEBSITE/terms.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Title 6 | 7 | 8 | 9 | Home
10 | Contact
11 | About
12 | Terms
13 | 14 | 15 |
16 | 17 |

This is Terms page

18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /Node_Debug/.idea/Node_Debug.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Node_Debug/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Node_Debug/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Node_Debug/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Node_Debug/index.js: -------------------------------------------------------------------------------- 1 | var axios=require('axios'); 2 | 3 | var URL="https://restcountries.eu/rest/v2/all"; 4 | 5 | 6 | axios.get(URL).then(function (response) { 7 | 8 | 9 | let CountryList=response.data; 10 | let StatusCode=response.status; 11 | 12 | console.log(CountryList) 13 | console.log(StatusCode) 14 | 15 | 16 | }).catch(function (error){ 17 | console.log(error) 18 | }) -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014-present Matt Zabriskie 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/axios'); -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/adapters/README.md: -------------------------------------------------------------------------------- 1 | # axios // adapters 2 | 3 | The modules under `adapters/` are modules that handle dispatching a request and settling a returned `Promise` once a response is received. 4 | 5 | ## Example 6 | 7 | ```js 8 | var settle = require('./../core/settle'); 9 | 10 | module.exports = function myAdapter(config) { 11 | // At this point: 12 | // - config has been merged with defaults 13 | // - request transformers have already run 14 | // - request interceptors have already run 15 | 16 | // Make the request using config provided 17 | // Upon response settle the Promise 18 | 19 | return new Promise(function(resolve, reject) { 20 | 21 | var response = { 22 | data: responseData, 23 | status: request.status, 24 | statusText: request.statusText, 25 | headers: responseHeaders, 26 | config: config, 27 | request: request 28 | }; 29 | 30 | settle(resolve, reject, response); 31 | 32 | // From here: 33 | // - response transformers will run 34 | // - response interceptors will run 35 | }); 36 | } 37 | ``` 38 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/axios.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var utils = require('./utils'); 4 | var bind = require('./helpers/bind'); 5 | var Axios = require('./core/Axios'); 6 | var mergeConfig = require('./core/mergeConfig'); 7 | var defaults = require('./defaults'); 8 | 9 | /** 10 | * Create an instance of Axios 11 | * 12 | * @param {Object} defaultConfig The default config for the instance 13 | * @return {Axios} A new instance of Axios 14 | */ 15 | function createInstance(defaultConfig) { 16 | var context = new Axios(defaultConfig); 17 | var instance = bind(Axios.prototype.request, context); 18 | 19 | // Copy axios.prototype to instance 20 | utils.extend(instance, Axios.prototype, context); 21 | 22 | // Copy context to instance 23 | utils.extend(instance, context); 24 | 25 | return instance; 26 | } 27 | 28 | // Create the default instance to be exported 29 | var axios = createInstance(defaults); 30 | 31 | // Expose Axios class to allow class inheritance 32 | axios.Axios = Axios; 33 | 34 | // Factory for creating new instances 35 | axios.create = function create(instanceConfig) { 36 | return createInstance(mergeConfig(axios.defaults, instanceConfig)); 37 | }; 38 | 39 | // Expose Cancel & CancelToken 40 | axios.Cancel = require('./cancel/Cancel'); 41 | axios.CancelToken = require('./cancel/CancelToken'); 42 | axios.isCancel = require('./cancel/isCancel'); 43 | 44 | // Expose all/spread 45 | axios.all = function all(promises) { 46 | return Promise.all(promises); 47 | }; 48 | axios.spread = require('./helpers/spread'); 49 | 50 | module.exports = axios; 51 | 52 | // Allow use of default import syntax in TypeScript 53 | module.exports.default = axios; 54 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/cancel/Cancel.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * A `Cancel` is an object that is thrown when an operation is canceled. 5 | * 6 | * @class 7 | * @param {string=} message The message. 8 | */ 9 | function Cancel(message) { 10 | this.message = message; 11 | } 12 | 13 | Cancel.prototype.toString = function toString() { 14 | return 'Cancel' + (this.message ? ': ' + this.message : ''); 15 | }; 16 | 17 | Cancel.prototype.__CANCEL__ = true; 18 | 19 | module.exports = Cancel; 20 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/cancel/CancelToken.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var Cancel = require('./Cancel'); 4 | 5 | /** 6 | * A `CancelToken` is an object that can be used to request cancellation of an operation. 7 | * 8 | * @class 9 | * @param {Function} executor The executor function. 10 | */ 11 | function CancelToken(executor) { 12 | if (typeof executor !== 'function') { 13 | throw new TypeError('executor must be a function.'); 14 | } 15 | 16 | var resolvePromise; 17 | this.promise = new Promise(function promiseExecutor(resolve) { 18 | resolvePromise = resolve; 19 | }); 20 | 21 | var token = this; 22 | executor(function cancel(message) { 23 | if (token.reason) { 24 | // Cancellation has already been requested 25 | return; 26 | } 27 | 28 | token.reason = new Cancel(message); 29 | resolvePromise(token.reason); 30 | }); 31 | } 32 | 33 | /** 34 | * Throws a `Cancel` if cancellation has been requested. 35 | */ 36 | CancelToken.prototype.throwIfRequested = function throwIfRequested() { 37 | if (this.reason) { 38 | throw this.reason; 39 | } 40 | }; 41 | 42 | /** 43 | * Returns an object that contains a new `CancelToken` and a function that, when called, 44 | * cancels the `CancelToken`. 45 | */ 46 | CancelToken.source = function source() { 47 | var cancel; 48 | var token = new CancelToken(function executor(c) { 49 | cancel = c; 50 | }); 51 | return { 52 | token: token, 53 | cancel: cancel 54 | }; 55 | }; 56 | 57 | module.exports = CancelToken; 58 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/cancel/isCancel.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function isCancel(value) { 4 | return !!(value && value.__CANCEL__); 5 | }; 6 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/core/InterceptorManager.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var utils = require('./../utils'); 4 | 5 | function InterceptorManager() { 6 | this.handlers = []; 7 | } 8 | 9 | /** 10 | * Add a new interceptor to the stack 11 | * 12 | * @param {Function} fulfilled The function to handle `then` for a `Promise` 13 | * @param {Function} rejected The function to handle `reject` for a `Promise` 14 | * 15 | * @return {Number} An ID used to remove interceptor later 16 | */ 17 | InterceptorManager.prototype.use = function use(fulfilled, rejected) { 18 | this.handlers.push({ 19 | fulfilled: fulfilled, 20 | rejected: rejected 21 | }); 22 | return this.handlers.length - 1; 23 | }; 24 | 25 | /** 26 | * Remove an interceptor from the stack 27 | * 28 | * @param {Number} id The ID that was returned by `use` 29 | */ 30 | InterceptorManager.prototype.eject = function eject(id) { 31 | if (this.handlers[id]) { 32 | this.handlers[id] = null; 33 | } 34 | }; 35 | 36 | /** 37 | * Iterate over all the registered interceptors 38 | * 39 | * This method is particularly useful for skipping over any 40 | * interceptors that may have become `null` calling `eject`. 41 | * 42 | * @param {Function} fn The function to call for each interceptor 43 | */ 44 | InterceptorManager.prototype.forEach = function forEach(fn) { 45 | utils.forEach(this.handlers, function forEachHandler(h) { 46 | if (h !== null) { 47 | fn(h); 48 | } 49 | }); 50 | }; 51 | 52 | module.exports = InterceptorManager; 53 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/core/README.md: -------------------------------------------------------------------------------- 1 | # axios // core 2 | 3 | The modules found in `core/` should be modules that are specific to the domain logic of axios. These modules would most likely not make sense to be consumed outside of the axios module, as their logic is too specific. Some examples of core modules are: 4 | 5 | - Dispatching requests 6 | - Managing interceptors 7 | - Handling config 8 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/core/buildFullPath.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var isAbsoluteURL = require('../helpers/isAbsoluteURL'); 4 | var combineURLs = require('../helpers/combineURLs'); 5 | 6 | /** 7 | * Creates a new URL by combining the baseURL with the requestedURL, 8 | * only when the requestedURL is not already an absolute URL. 9 | * If the requestURL is absolute, this function returns the requestedURL untouched. 10 | * 11 | * @param {string} baseURL The base URL 12 | * @param {string} requestedURL Absolute or relative URL to combine 13 | * @returns {string} The combined full path 14 | */ 15 | module.exports = function buildFullPath(baseURL, requestedURL) { 16 | if (baseURL && !isAbsoluteURL(requestedURL)) { 17 | return combineURLs(baseURL, requestedURL); 18 | } 19 | return requestedURL; 20 | }; 21 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/core/createError.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var enhanceError = require('./enhanceError'); 4 | 5 | /** 6 | * Create an Error with the specified message, config, error code, request and response. 7 | * 8 | * @param {string} message The error message. 9 | * @param {Object} config The config. 10 | * @param {string} [code] The error code (for example, 'ECONNABORTED'). 11 | * @param {Object} [request] The request. 12 | * @param {Object} [response] The response. 13 | * @returns {Error} The created error. 14 | */ 15 | module.exports = function createError(message, config, code, request, response) { 16 | var error = new Error(message); 17 | return enhanceError(error, config, code, request, response); 18 | }; 19 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/core/enhanceError.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Update an Error with the specified config, error code, and response. 5 | * 6 | * @param {Error} error The error to update. 7 | * @param {Object} config The config. 8 | * @param {string} [code] The error code (for example, 'ECONNABORTED'). 9 | * @param {Object} [request] The request. 10 | * @param {Object} [response] The response. 11 | * @returns {Error} The error. 12 | */ 13 | module.exports = function enhanceError(error, config, code, request, response) { 14 | error.config = config; 15 | if (code) { 16 | error.code = code; 17 | } 18 | 19 | error.request = request; 20 | error.response = response; 21 | error.isAxiosError = true; 22 | 23 | error.toJSON = function toJSON() { 24 | return { 25 | // Standard 26 | message: this.message, 27 | name: this.name, 28 | // Microsoft 29 | description: this.description, 30 | number: this.number, 31 | // Mozilla 32 | fileName: this.fileName, 33 | lineNumber: this.lineNumber, 34 | columnNumber: this.columnNumber, 35 | stack: this.stack, 36 | // Axios 37 | config: this.config, 38 | code: this.code 39 | }; 40 | }; 41 | return error; 42 | }; 43 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/core/settle.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var createError = require('./createError'); 4 | 5 | /** 6 | * Resolve or reject a Promise based on response status. 7 | * 8 | * @param {Function} resolve A function that resolves the promise. 9 | * @param {Function} reject A function that rejects the promise. 10 | * @param {object} response The response. 11 | */ 12 | module.exports = function settle(resolve, reject, response) { 13 | var validateStatus = response.config.validateStatus; 14 | if (!response.status || !validateStatus || validateStatus(response.status)) { 15 | resolve(response); 16 | } else { 17 | reject(createError( 18 | 'Request failed with status code ' + response.status, 19 | response.config, 20 | null, 21 | response.request, 22 | response 23 | )); 24 | } 25 | }; 26 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/core/transformData.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var utils = require('./../utils'); 4 | 5 | /** 6 | * Transform the data for a request or a response 7 | * 8 | * @param {Object|String} data The data to be transformed 9 | * @param {Array} headers The headers for the request or response 10 | * @param {Array|Function} fns A single function or Array of functions 11 | * @returns {*} The resulting transformed data 12 | */ 13 | module.exports = function transformData(data, headers, fns) { 14 | /*eslint no-param-reassign:0*/ 15 | utils.forEach(fns, function transform(fn) { 16 | data = fn(data, headers); 17 | }); 18 | 19 | return data; 20 | }; 21 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/helpers/README.md: -------------------------------------------------------------------------------- 1 | # axios // helpers 2 | 3 | The modules found in `helpers/` should be generic modules that are _not_ specific to the domain logic of axios. These modules could theoretically be published to npm on their own and consumed by other modules or apps. Some examples of generic modules are things like: 4 | 5 | - Browser polyfills 6 | - Managing cookies 7 | - Parsing HTTP headers 8 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/helpers/bind.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function bind(fn, thisArg) { 4 | return function wrap() { 5 | var args = new Array(arguments.length); 6 | for (var i = 0; i < args.length; i++) { 7 | args[i] = arguments[i]; 8 | } 9 | return fn.apply(thisArg, args); 10 | }; 11 | }; 12 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/helpers/combineURLs.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Creates a new URL by combining the specified URLs 5 | * 6 | * @param {string} baseURL The base URL 7 | * @param {string} relativeURL The relative URL 8 | * @returns {string} The combined URL 9 | */ 10 | module.exports = function combineURLs(baseURL, relativeURL) { 11 | return relativeURL 12 | ? baseURL.replace(/\/+$/, '') + '/' + relativeURL.replace(/^\/+/, '') 13 | : baseURL; 14 | }; 15 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/helpers/deprecatedMethod.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*eslint no-console:0*/ 4 | 5 | /** 6 | * Supply a warning to the developer that a method they are using 7 | * has been deprecated. 8 | * 9 | * @param {string} method The name of the deprecated method 10 | * @param {string} [instead] The alternate method to use if applicable 11 | * @param {string} [docs] The documentation URL to get further details 12 | */ 13 | module.exports = function deprecatedMethod(method, instead, docs) { 14 | try { 15 | console.warn( 16 | 'DEPRECATED method `' + method + '`.' + 17 | (instead ? ' Use `' + instead + '` instead.' : '') + 18 | ' This method will be removed in a future release.'); 19 | 20 | if (docs) { 21 | console.warn('For more information about usage see ' + docs); 22 | } 23 | } catch (e) { /* Ignore */ } 24 | }; 25 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/helpers/isAbsoluteURL.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Determines whether the specified URL is absolute 5 | * 6 | * @param {string} url The URL to test 7 | * @returns {boolean} True if the specified URL is absolute, otherwise false 8 | */ 9 | module.exports = function isAbsoluteURL(url) { 10 | // A URL is considered absolute if it begins with "://" or "//" (protocol-relative URL). 11 | // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed 12 | // by any combination of letters, digits, plus, period, or hyphen. 13 | return /^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(url); 14 | }; 15 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/helpers/normalizeHeaderName.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var utils = require('../utils'); 4 | 5 | module.exports = function normalizeHeaderName(headers, normalizedName) { 6 | utils.forEach(headers, function processHeader(value, name) { 7 | if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) { 8 | headers[normalizedName] = value; 9 | delete headers[name]; 10 | } 11 | }); 12 | }; 13 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/helpers/parseHeaders.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var utils = require('./../utils'); 4 | 5 | // Headers whose duplicates are ignored by node 6 | // c.f. https://nodejs.org/api/http.html#http_message_headers 7 | var ignoreDuplicateOf = [ 8 | 'age', 'authorization', 'content-length', 'content-type', 'etag', 9 | 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since', 10 | 'last-modified', 'location', 'max-forwards', 'proxy-authorization', 11 | 'referer', 'retry-after', 'user-agent' 12 | ]; 13 | 14 | /** 15 | * Parse headers into an object 16 | * 17 | * ``` 18 | * Date: Wed, 27 Aug 2014 08:58:49 GMT 19 | * Content-Type: application/json 20 | * Connection: keep-alive 21 | * Transfer-Encoding: chunked 22 | * ``` 23 | * 24 | * @param {String} headers Headers needing to be parsed 25 | * @returns {Object} Headers parsed into an object 26 | */ 27 | module.exports = function parseHeaders(headers) { 28 | var parsed = {}; 29 | var key; 30 | var val; 31 | var i; 32 | 33 | if (!headers) { return parsed; } 34 | 35 | utils.forEach(headers.split('\n'), function parser(line) { 36 | i = line.indexOf(':'); 37 | key = utils.trim(line.substr(0, i)).toLowerCase(); 38 | val = utils.trim(line.substr(i + 1)); 39 | 40 | if (key) { 41 | if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) { 42 | return; 43 | } 44 | if (key === 'set-cookie') { 45 | parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]); 46 | } else { 47 | parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val; 48 | } 49 | } 50 | }); 51 | 52 | return parsed; 53 | }; 54 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/axios/lib/helpers/spread.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Syntactic sugar for invoking a function and expanding an array for arguments. 5 | * 6 | * Common use case would be to use `Function.prototype.apply`. 7 | * 8 | * ```js 9 | * function f(x, y, z) {} 10 | * var args = [1, 2, 3]; 11 | * f.apply(null, args); 12 | * ``` 13 | * 14 | * With `spread` this example can be re-written. 15 | * 16 | * ```js 17 | * spread(function(x, y, z) {})([1, 2, 3]); 18 | * ``` 19 | * 20 | * @param {Function} callback 21 | * @returns {Function} 22 | */ 23 | module.exports = function spread(callback) { 24 | return function wrap(arr) { 25 | return callback.apply(null, arr); 26 | }; 27 | }; 28 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/follow-redirects/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2014–present Olivier Lalonde , James Talmage , Ruben Verborgh 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of 4 | this software and associated documentation files (the "Software"), to deal in 5 | the Software without restriction, including without limitation the rights to 6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 7 | of the Software, and to permit persons to whom the Software is furnished to do 8 | so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 17 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR 18 | IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/follow-redirects/debug.js: -------------------------------------------------------------------------------- 1 | var debug; 2 | try { 3 | /* eslint global-require: off */ 4 | debug = require("debug")("follow-redirects"); 5 | } 6 | catch (error) { 7 | debug = function () { /* */ }; 8 | } 9 | module.exports = debug; 10 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/follow-redirects/http.js: -------------------------------------------------------------------------------- 1 | module.exports = require("./").http; 2 | -------------------------------------------------------------------------------- /Node_Debug/node_modules/follow-redirects/https.js: -------------------------------------------------------------------------------- 1 | module.exports = require("./").https; 2 | -------------------------------------------------------------------------------- /Node_Debug/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Node_Debug", 3 | "version": "1.0.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "axios": { 8 | "version": "0.21.0", 9 | "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.0.tgz", 10 | "integrity": "sha512-fmkJBknJKoZwem3/IKSSLpkdNXZeBu5Q7GA/aRsr2btgrptmSCxi2oFjZHqGdK9DoTil9PIHlPIZw2EcRJXRvw==", 11 | "requires": { 12 | "follow-redirects": "^1.10.0" 13 | } 14 | }, 15 | "follow-redirects": { 16 | "version": "1.13.0", 17 | "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.0.tgz", 18 | "integrity": "sha512-aq6gF1BEKje4a9i9+5jimNFIpq4Q1WiwBToeRK5NvZBd/TRsmW8BsJfOEGkr76TbOyPVD3OVDN910EcUNtRYEA==" 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Node_Debug/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Node_Debug", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "keywords": [], 10 | "author": "Your Name", 11 | "license": "ISC", 12 | "dependencies": { 13 | "axios": "^0.21.0" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Node_With_Mongo/.idea/Node_With_Mongo.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Node_With_Mongo/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Node_With_Mongo/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Node_With_Mongo/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/.bin/semver: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | "$basedir/node" "$basedir/../semver/bin/semver" "$@" 10 | ret=$? 11 | else 12 | node "$basedir/../semver/bin/semver" "$@" 13 | ret=$? 14 | fi 15 | exit $ret 16 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/.bin/semver.cmd: -------------------------------------------------------------------------------- 1 | @ECHO off 2 | SETLOCAL 3 | CALL :find_dp0 4 | 5 | IF EXIST "%dp0%\node.exe" ( 6 | SET "_prog=%dp0%\node.exe" 7 | ) ELSE ( 8 | SET "_prog=node" 9 | SET PATHEXT=%PATHEXT:;.JS;=;% 10 | ) 11 | 12 | "%_prog%" "%dp0%\..\semver\bin\semver" %* 13 | ENDLOCAL 14 | EXIT /b %errorlevel% 15 | :find_dp0 16 | SET dp0=%~dp0 17 | EXIT /b 18 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/.bin/semver.ps1: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env pwsh 2 | $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent 3 | 4 | $exe="" 5 | if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { 6 | # Fix case when both the Windows and Linux builds of Node 7 | # are installed in the same directory 8 | $exe=".exe" 9 | } 10 | $ret=0 11 | if (Test-Path "$basedir/node$exe") { 12 | & "$basedir/node$exe" "$basedir/../semver/bin/semver" $args 13 | $ret=$LASTEXITCODE 14 | } else { 15 | & "node$exe" "$basedir/../semver/bin/semver" $args 16 | $ret=$LASTEXITCODE 17 | } 18 | exit $ret 19 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bl/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "predef": [ ] 3 | , "bitwise": false 4 | , "camelcase": false 5 | , "curly": false 6 | , "eqeqeq": false 7 | , "forin": false 8 | , "immed": false 9 | , "latedef": false 10 | , "noarg": true 11 | , "noempty": true 12 | , "nonew": true 13 | , "plusplus": false 14 | , "quotmark": true 15 | , "regexp": false 16 | , "undef": true 17 | , "unused": true 18 | , "strict": false 19 | , "trailing": true 20 | , "maxlen": 120 21 | , "asi": true 22 | , "boss": true 23 | , "debug": true 24 | , "eqnull": true 25 | , "esnext": false 26 | , "evil": true 27 | , "expr": true 28 | , "funcscope": false 29 | , "globalstrict": false 30 | , "iterator": false 31 | , "lastsemic": true 32 | , "laxbreak": true 33 | , "laxcomma": true 34 | , "loopfunc": true 35 | , "multistr": false 36 | , "onecase": false 37 | , "proto": false 38 | , "regexdash": false 39 | , "scripturl": true 40 | , "smarttabs": false 41 | , "shadow": false 42 | , "sub": true 43 | , "supernew": false 44 | , "validthis": true 45 | , "browser": true 46 | , "couch": false 47 | , "devel": false 48 | , "dojo": false 49 | , "mootools": false 50 | , "node": true 51 | , "nonstandard": true 52 | , "prototypejs": false 53 | , "rhino": false 54 | , "worker": true 55 | , "wsh": false 56 | , "nomen": false 57 | , "onevar": false 58 | , "passfail": false 59 | , "esversion": 3 60 | } -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bl/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: node_js 3 | node_js: 4 | - '4' 5 | - '6' 6 | - '8' 7 | - '9' 8 | - '10' 9 | branches: 10 | only: 11 | - master 12 | notifications: 13 | email: 14 | - rod@vagg.org 15 | - matteo.collina@gmail.com 16 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bl/LICENSE.md: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | ===================== 3 | 4 | Copyright (c) 2013-2018 bl contributors 5 | ---------------------------------- 6 | 7 | *bl contributors listed at * 8 | 9 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 14 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bson/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bson", 3 | "description": "A bson parser for node.js and the browser", 4 | "keywords": [ 5 | "mongodb", 6 | "bson", 7 | "parser" 8 | ], 9 | "author": "Christian Amor Kvalheim ", 10 | "main": "./browser_build/bson.js", 11 | "license": "Apache-2.0", 12 | "moduleType": [ 13 | "globals", 14 | "node" 15 | ], 16 | "ignore": [ 17 | "**/.*", 18 | "alternate_parsers", 19 | "benchmarks", 20 | "bower_components", 21 | "node_modules", 22 | "test", 23 | "tools" 24 | ], 25 | "version": "1.1.5" 26 | } 27 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bson/browser_build/package.json: -------------------------------------------------------------------------------- 1 | { "name" : "bson" 2 | , "description" : "A bson parser for node.js and the browser" 3 | , "main": "../" 4 | , "directories" : { "lib" : "../lib/bson" } 5 | , "engines" : { "node" : ">=0.6.0" } 6 | , "licenses" : [ { "type" : "Apache License, Version 2.0" 7 | , "url" : "http://www.apache.org/licenses/LICENSE-2.0" } ] 8 | } 9 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bson/index.js: -------------------------------------------------------------------------------- 1 | var BSON = require('./lib/bson/bson'), 2 | Binary = require('./lib/bson/binary'), 3 | Code = require('./lib/bson/code'), 4 | DBRef = require('./lib/bson/db_ref'), 5 | Decimal128 = require('./lib/bson/decimal128'), 6 | Double = require('./lib/bson/double'), 7 | Int32 = require('./lib/bson/int_32'), 8 | Long = require('./lib/bson/long'), 9 | Map = require('./lib/bson/map'), 10 | MaxKey = require('./lib/bson/max_key'), 11 | MinKey = require('./lib/bson/min_key'), 12 | ObjectId = require('./lib/bson/objectid'), 13 | BSONRegExp = require('./lib/bson/regexp'), 14 | Symbol = require('./lib/bson/symbol'), 15 | Timestamp = require('./lib/bson/timestamp'); 16 | 17 | // BSON MAX VALUES 18 | BSON.BSON_INT32_MAX = 0x7fffffff; 19 | BSON.BSON_INT32_MIN = -0x80000000; 20 | 21 | BSON.BSON_INT64_MAX = Math.pow(2, 63) - 1; 22 | BSON.BSON_INT64_MIN = -Math.pow(2, 63); 23 | 24 | // JS MAX PRECISE VALUES 25 | BSON.JS_INT_MAX = 0x20000000000000; // Any integer up to 2^53 can be precisely represented by a double. 26 | BSON.JS_INT_MIN = -0x20000000000000; // Any integer down to -2^53 can be precisely represented by a double. 27 | 28 | // Add BSON types to function creation 29 | BSON.Binary = Binary; 30 | BSON.Code = Code; 31 | BSON.DBRef = DBRef; 32 | BSON.Decimal128 = Decimal128; 33 | BSON.Double = Double; 34 | BSON.Int32 = Int32; 35 | BSON.Long = Long; 36 | BSON.Map = Map; 37 | BSON.MaxKey = MaxKey; 38 | BSON.MinKey = MinKey; 39 | BSON.ObjectId = ObjectId; 40 | BSON.ObjectID = ObjectId; 41 | BSON.BSONRegExp = BSONRegExp; 42 | BSON.Symbol = Symbol; 43 | BSON.Timestamp = Timestamp; 44 | 45 | // Return the BSON 46 | module.exports = BSON; 47 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bson/lib/bson/code.js: -------------------------------------------------------------------------------- 1 | /** 2 | * A class representation of the BSON Code type. 3 | * 4 | * @class 5 | * @param {(string|function)} code a string or function. 6 | * @param {Object} [scope] an optional scope for the function. 7 | * @return {Code} 8 | */ 9 | var Code = function Code(code, scope) { 10 | if (!(this instanceof Code)) return new Code(code, scope); 11 | this._bsontype = 'Code'; 12 | this.code = code; 13 | this.scope = scope; 14 | }; 15 | 16 | /** 17 | * @ignore 18 | */ 19 | Code.prototype.toJSON = function() { 20 | return { scope: this.scope, code: this.code }; 21 | }; 22 | 23 | module.exports = Code; 24 | module.exports.Code = Code; 25 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bson/lib/bson/db_ref.js: -------------------------------------------------------------------------------- 1 | /** 2 | * A class representation of the BSON DBRef type. 3 | * 4 | * @class 5 | * @param {string} namespace the collection name. 6 | * @param {ObjectID} oid the reference ObjectID. 7 | * @param {string} [db] optional db name, if omitted the reference is local to the current db. 8 | * @return {DBRef} 9 | */ 10 | function DBRef(namespace, oid, db) { 11 | if (!(this instanceof DBRef)) return new DBRef(namespace, oid, db); 12 | 13 | this._bsontype = 'DBRef'; 14 | this.namespace = namespace; 15 | this.oid = oid; 16 | this.db = db; 17 | } 18 | 19 | /** 20 | * @ignore 21 | * @api private 22 | */ 23 | DBRef.prototype.toJSON = function() { 24 | return { 25 | $ref: this.namespace, 26 | $id: this.oid, 27 | $db: this.db == null ? '' : this.db 28 | }; 29 | }; 30 | 31 | module.exports = DBRef; 32 | module.exports.DBRef = DBRef; 33 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bson/lib/bson/double.js: -------------------------------------------------------------------------------- 1 | /** 2 | * A class representation of the BSON Double type. 3 | * 4 | * @class 5 | * @param {number} value the number we want to represent as a double. 6 | * @return {Double} 7 | */ 8 | function Double(value) { 9 | if (!(this instanceof Double)) return new Double(value); 10 | 11 | this._bsontype = 'Double'; 12 | this.value = value; 13 | } 14 | 15 | /** 16 | * Access the number value. 17 | * 18 | * @method 19 | * @return {number} returns the wrapped double number. 20 | */ 21 | Double.prototype.valueOf = function() { 22 | return this.value; 23 | }; 24 | 25 | /** 26 | * @ignore 27 | */ 28 | Double.prototype.toJSON = function() { 29 | return this.value; 30 | }; 31 | 32 | module.exports = Double; 33 | module.exports.Double = Double; 34 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bson/lib/bson/int_32.js: -------------------------------------------------------------------------------- 1 | /** 2 | * A class representation of a BSON Int32 type. 3 | * 4 | * @class 5 | * @param {number} value the number we want to represent as an int32. 6 | * @return {Int32} 7 | */ 8 | var Int32 = function(value) { 9 | if (!(this instanceof Int32)) return new Int32(value); 10 | 11 | this._bsontype = 'Int32'; 12 | this.value = value; 13 | }; 14 | 15 | /** 16 | * Access the number value. 17 | * 18 | * @method 19 | * @return {number} returns the wrapped int32 number. 20 | */ 21 | Int32.prototype.valueOf = function() { 22 | return this.value; 23 | }; 24 | 25 | /** 26 | * @ignore 27 | */ 28 | Int32.prototype.toJSON = function() { 29 | return this.value; 30 | }; 31 | 32 | module.exports = Int32; 33 | module.exports.Int32 = Int32; 34 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bson/lib/bson/max_key.js: -------------------------------------------------------------------------------- 1 | /** 2 | * A class representation of the BSON MaxKey type. 3 | * 4 | * @class 5 | * @return {MaxKey} A MaxKey instance 6 | */ 7 | function MaxKey() { 8 | if (!(this instanceof MaxKey)) return new MaxKey(); 9 | 10 | this._bsontype = 'MaxKey'; 11 | } 12 | 13 | module.exports = MaxKey; 14 | module.exports.MaxKey = MaxKey; 15 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bson/lib/bson/min_key.js: -------------------------------------------------------------------------------- 1 | /** 2 | * A class representation of the BSON MinKey type. 3 | * 4 | * @class 5 | * @return {MinKey} A MinKey instance 6 | */ 7 | function MinKey() { 8 | if (!(this instanceof MinKey)) return new MinKey(); 9 | 10 | this._bsontype = 'MinKey'; 11 | } 12 | 13 | module.exports = MinKey; 14 | module.exports.MinKey = MinKey; 15 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bson/lib/bson/parser/utils.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Normalizes our expected stringified form of a function across versions of node 5 | * @param {Function} fn The function to stringify 6 | */ 7 | function normalizedFunctionString(fn) { 8 | return fn.toString().replace(/function *\(/, 'function ('); 9 | } 10 | 11 | function newBuffer(item, encoding) { 12 | return new Buffer(item, encoding); 13 | } 14 | 15 | function allocBuffer() { 16 | return Buffer.alloc.apply(Buffer, arguments); 17 | } 18 | 19 | function toBuffer() { 20 | return Buffer.from.apply(Buffer, arguments); 21 | } 22 | 23 | module.exports = { 24 | normalizedFunctionString: normalizedFunctionString, 25 | allocBuffer: typeof Buffer.alloc === 'function' ? allocBuffer : newBuffer, 26 | toBuffer: typeof Buffer.from === 'function' ? toBuffer : newBuffer 27 | }; 28 | 29 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bson/lib/bson/regexp.js: -------------------------------------------------------------------------------- 1 | /** 2 | * A class representation of the BSON RegExp type. 3 | * 4 | * @class 5 | * @return {BSONRegExp} A MinKey instance 6 | */ 7 | function BSONRegExp(pattern, options) { 8 | if (!(this instanceof BSONRegExp)) return new BSONRegExp(); 9 | 10 | // Execute 11 | this._bsontype = 'BSONRegExp'; 12 | this.pattern = pattern || ''; 13 | this.options = options || ''; 14 | 15 | // Validate options 16 | for (var i = 0; i < this.options.length; i++) { 17 | if ( 18 | !( 19 | this.options[i] === 'i' || 20 | this.options[i] === 'm' || 21 | this.options[i] === 'x' || 22 | this.options[i] === 'l' || 23 | this.options[i] === 's' || 24 | this.options[i] === 'u' 25 | ) 26 | ) { 27 | throw new Error('the regular expression options [' + this.options[i] + '] is not supported'); 28 | } 29 | } 30 | } 31 | 32 | module.exports = BSONRegExp; 33 | module.exports.BSONRegExp = BSONRegExp; 34 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/bson/lib/bson/symbol.js: -------------------------------------------------------------------------------- 1 | // Custom inspect property name / symbol. 2 | var inspect = Buffer ? require('util').inspect.custom || 'inspect' : 'inspect'; 3 | 4 | /** 5 | * A class representation of the BSON Symbol type. 6 | * 7 | * @class 8 | * @deprecated 9 | * @param {string} value the string representing the symbol. 10 | * @return {Symbol} 11 | */ 12 | function Symbol(value) { 13 | if (!(this instanceof Symbol)) return new Symbol(value); 14 | this._bsontype = 'Symbol'; 15 | this.value = value; 16 | } 17 | 18 | /** 19 | * Access the wrapped string value. 20 | * 21 | * @method 22 | * @return {String} returns the wrapped string. 23 | */ 24 | Symbol.prototype.valueOf = function() { 25 | return this.value; 26 | }; 27 | 28 | /** 29 | * @ignore 30 | */ 31 | Symbol.prototype.toString = function() { 32 | return this.value; 33 | }; 34 | 35 | /** 36 | * @ignore 37 | */ 38 | Symbol.prototype[inspect] = function() { 39 | return this.value; 40 | }; 41 | 42 | /** 43 | * @ignore 44 | */ 45 | Symbol.prototype.toJSON = function() { 46 | return this.value; 47 | }; 48 | 49 | module.exports = Symbol; 50 | module.exports.Symbol = Symbol; 51 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/core-util-is/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright Node.js contributors. All rights reserved. 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to 5 | deal in the Software without restriction, including without limitation the 6 | rights to use, copy, modify, merge, publish, distribute, sublicense, and/or 7 | sell copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 18 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 19 | IN THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/core-util-is/README.md: -------------------------------------------------------------------------------- 1 | # core-util-is 2 | 3 | The `util.is*` functions introduced in Node v0.12. 4 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/denque/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2018 Mike Diarmid (Salakar) 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this library except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/denque/index.d.ts: -------------------------------------------------------------------------------- 1 | declare class Denque { 2 | constructor(); 3 | constructor(array: T[]); 4 | 5 | push(item: T): number; 6 | unshift(item: T): number; 7 | pop(): T | undefined; 8 | removeBack(): T | undefined; 9 | shift(): T | undefined; 10 | peekBack(): T | undefined; 11 | peekFront(): T | undefined; 12 | peekAt(index: number): T | undefined; 13 | get(index: number): T | undefined; 14 | remove(index: number, count: number): T[]; 15 | removeOne(index: number): T | undefined; 16 | splice(index: number, count: number, ...item: T[]): T[] | undefined; 17 | isEmpty(): boolean; 18 | clear(): void; 19 | 20 | toString(): string; 21 | toArray(): T[]; 22 | 23 | length: number; 24 | } 25 | 26 | export = Denque; 27 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/inherits/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH 10 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND 11 | FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, 12 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 13 | LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR 14 | OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 15 | PERFORMANCE OF THIS SOFTWARE. 16 | 17 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/inherits/inherits.js: -------------------------------------------------------------------------------- 1 | try { 2 | var util = require('util'); 3 | /* istanbul ignore next */ 4 | if (typeof util.inherits !== 'function') throw ''; 5 | module.exports = util.inherits; 6 | } catch (e) { 7 | /* istanbul ignore next */ 8 | module.exports = require('./inherits_browser.js'); 9 | } 10 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/inherits/inherits_browser.js: -------------------------------------------------------------------------------- 1 | if (typeof Object.create === 'function') { 2 | // implementation from standard node.js 'util' module 3 | module.exports = function inherits(ctor, superCtor) { 4 | if (superCtor) { 5 | ctor.super_ = superCtor 6 | ctor.prototype = Object.create(superCtor.prototype, { 7 | constructor: { 8 | value: ctor, 9 | enumerable: false, 10 | writable: true, 11 | configurable: true 12 | } 13 | }) 14 | } 15 | }; 16 | } else { 17 | // old school shim for old browsers 18 | module.exports = function inherits(ctor, superCtor) { 19 | if (superCtor) { 20 | ctor.super_ = superCtor 21 | var TempCtor = function () {} 22 | TempCtor.prototype = superCtor.prototype 23 | ctor.prototype = new TempCtor() 24 | ctor.prototype.constructor = ctor 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/isarray/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/isarray/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "0.8" 4 | - "0.10" 5 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/isarray/Makefile: -------------------------------------------------------------------------------- 1 | 2 | test: 3 | @node_modules/.bin/tape test.js 4 | 5 | .PHONY: test 6 | 7 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/isarray/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name" : "isarray", 3 | "description" : "Array#isArray for older browsers", 4 | "version" : "0.0.1", 5 | "repository" : "juliangruber/isarray", 6 | "homepage": "https://github.com/juliangruber/isarray", 7 | "main" : "index.js", 8 | "scripts" : [ 9 | "index.js" 10 | ], 11 | "dependencies" : {}, 12 | "keywords": ["browser","isarray","array"], 13 | "author": { 14 | "name": "Julian Gruber", 15 | "email": "mail@juliangruber.com", 16 | "url": "http://juliangruber.com" 17 | }, 18 | "license": "MIT" 19 | } 20 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/isarray/index.js: -------------------------------------------------------------------------------- 1 | var toString = {}.toString; 2 | 3 | module.exports = Array.isArray || function (arr) { 4 | return toString.call(arr) == '[object Array]'; 5 | }; 6 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/isarray/test.js: -------------------------------------------------------------------------------- 1 | var isArray = require('./'); 2 | var test = require('tape'); 3 | 4 | test('is array', function(t){ 5 | t.ok(isArray([])); 6 | t.notOk(isArray({})); 7 | t.notOk(isArray(null)); 8 | t.notOk(isArray(false)); 9 | 10 | var obj = {}; 11 | obj[0] = true; 12 | t.notOk(isArray(obj)); 13 | 14 | var arr = []; 15 | arr.foo = 'bar'; 16 | t.ok(isArray(arr)); 17 | 18 | t.end(); 19 | }); 20 | 21 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/memory-pager/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - '4' 4 | - '6' 5 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/memory-pager/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2017 Mathias Buus 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/memory-pager/README.md: -------------------------------------------------------------------------------- 1 | # memory-pager 2 | 3 | Access memory using small fixed sized buffers instead of allocating a huge buffer. 4 | Useful if you are implementing sparse data structures (such as large bitfield). 5 | 6 | ![travis](https://travis-ci.org/mafintosh/memory-pager.svg?branch=master) 7 | 8 | ``` 9 | npm install memory-pager 10 | ``` 11 | 12 | ## Usage 13 | 14 | ``` js 15 | var pager = require('paged-memory') 16 | 17 | var pages = pager(1024) // use 1kb per page 18 | 19 | var page = pages.get(10) // get page #10 20 | 21 | console.log(page.offset) // 10240 22 | console.log(page.buffer) // a blank 1kb buffer 23 | ``` 24 | 25 | ## API 26 | 27 | #### `var pages = pager(pageSize)` 28 | 29 | Create a new pager. `pageSize` defaults to `1024`. 30 | 31 | #### `var page = pages.get(pageNumber, [noAllocate])` 32 | 33 | Get a page. The page will be allocated at first access. 34 | 35 | Optionally you can set the `noAllocate` flag which will make the 36 | method return undefined if no page has been allocated already 37 | 38 | A page looks like this 39 | 40 | ``` js 41 | { 42 | offset: byteOffset, 43 | buffer: bufferWithPageSize 44 | } 45 | ``` 46 | 47 | #### `pages.set(pageNumber, buffer)` 48 | 49 | Explicitly set the buffer for a page. 50 | 51 | #### `pages.updated(page)` 52 | 53 | Mark a page as updated. 54 | 55 | #### `pages.lastUpdate()` 56 | 57 | Get the last page that was updated. 58 | 59 | #### `var buf = pages.toBuffer()` 60 | 61 | Concat all pages allocated pages into a single buffer 62 | 63 | ## License 64 | 65 | MIT 66 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/apm.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | const EventEmitter = require('events').EventEmitter; 3 | 4 | class Instrumentation extends EventEmitter { 5 | constructor() { 6 | super(); 7 | } 8 | 9 | instrument(MongoClient, callback) { 10 | // store a reference to the original functions 11 | this.$MongoClient = MongoClient; 12 | const $prototypeConnect = (this.$prototypeConnect = MongoClient.prototype.connect); 13 | 14 | const instrumentation = this; 15 | MongoClient.prototype.connect = function(callback) { 16 | this.s.options.monitorCommands = true; 17 | this.on('commandStarted', event => instrumentation.emit('started', event)); 18 | this.on('commandSucceeded', event => instrumentation.emit('succeeded', event)); 19 | this.on('commandFailed', event => instrumentation.emit('failed', event)); 20 | return $prototypeConnect.call(this, callback); 21 | }; 22 | 23 | if (typeof callback === 'function') callback(null, this); 24 | } 25 | 26 | uninstrument() { 27 | this.$MongoClient.prototype.connect = this.$prototypeConnect; 28 | } 29 | } 30 | 31 | module.exports = Instrumentation; 32 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/async/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "parserOptions": { 3 | "ecmaVersion": 2018 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/async/async_iterator.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | // async function* asyncIterator() { 4 | // while (true) { 5 | // const value = await this.next(); 6 | // if (!value) { 7 | // await this.close(); 8 | // return; 9 | // } 10 | 11 | // yield value; 12 | // } 13 | // } 14 | 15 | // TODO: change this to the async generator function above 16 | function asyncIterator() { 17 | const cursor = this; 18 | 19 | return { 20 | next: function() { 21 | return Promise.resolve() 22 | .then(() => cursor.next()) 23 | .then(value => { 24 | if (!value) { 25 | return cursor.close().then(() => ({ value, done: true })); 26 | } 27 | return { value, done: false }; 28 | }); 29 | } 30 | }; 31 | } 32 | 33 | exports.asyncIterator = asyncIterator; 34 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/cmap/errors.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | const MongoError = require('../core/error').MongoError; 3 | 4 | /** 5 | * An error indicating a connection pool is closed 6 | * 7 | * @property {string} address The address of the connection pool 8 | * @extends MongoError 9 | */ 10 | class PoolClosedError extends MongoError { 11 | constructor(pool) { 12 | super('Attempted to check out a connection from closed connection pool'); 13 | this.name = 'MongoPoolClosedError'; 14 | this.address = pool.address; 15 | } 16 | } 17 | 18 | /** 19 | * An error thrown when a request to check out a connection times out 20 | * 21 | * @property {string} address The address of the connection pool 22 | * @extends MongoError 23 | */ 24 | class WaitQueueTimeoutError extends MongoError { 25 | constructor(pool) { 26 | super('Timed out while checking out a connection from connection pool'); 27 | this.name = 'MongoWaitQueueTimeoutError'; 28 | this.address = pool.address; 29 | } 30 | } 31 | 32 | module.exports = { 33 | PoolClosedError, 34 | WaitQueueTimeoutError 35 | }; 36 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/cmap/stream_description.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | const parseServerType = require('../core/sdam/server_description').parseServerType; 3 | 4 | const RESPONSE_FIELDS = [ 5 | 'minWireVersion', 6 | 'maxWireVersion', 7 | 'maxBsonObjectSize', 8 | 'maxMessageSizeBytes', 9 | 'maxWriteBatchSize', 10 | '__nodejs_mock_server__' 11 | ]; 12 | 13 | class StreamDescription { 14 | constructor(address, options) { 15 | this.address = address; 16 | this.type = parseServerType(null); 17 | this.minWireVersion = undefined; 18 | this.maxWireVersion = undefined; 19 | this.maxBsonObjectSize = 16777216; 20 | this.maxMessageSizeBytes = 48000000; 21 | this.maxWriteBatchSize = 100000; 22 | this.compressors = 23 | options && options.compression && Array.isArray(options.compression.compressors) 24 | ? options.compression.compressors 25 | : []; 26 | } 27 | 28 | receiveResponse(response) { 29 | this.type = parseServerType(response); 30 | 31 | RESPONSE_FIELDS.forEach(field => { 32 | if (typeof response[field] !== 'undefined') { 33 | this[field] = response[field]; 34 | } 35 | }); 36 | 37 | if (response.compression) { 38 | this.compressor = this.compressors.filter(c => response.compression.indexOf(c) !== -1)[0]; 39 | } 40 | } 41 | } 42 | 43 | module.exports = { 44 | StreamDescription 45 | }; 46 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/constants.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = { 4 | SYSTEM_NAMESPACE_COLLECTION: 'system.namespaces', 5 | SYSTEM_INDEX_COLLECTION: 'system.indexes', 6 | SYSTEM_PROFILE_COLLECTION: 'system.profile', 7 | SYSTEM_USER_COLLECTION: 'system.users', 8 | SYSTEM_COMMAND_COLLECTION: '$cmd', 9 | SYSTEM_JS_COLLECTION: 'system.js' 10 | }; 11 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/core/auth/defaultAuthProviders.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const MongoCR = require('./mongocr'); 4 | const X509 = require('./x509'); 5 | const Plain = require('./plain'); 6 | const GSSAPI = require('./gssapi'); 7 | const ScramSHA1 = require('./scram').ScramSHA1; 8 | const ScramSHA256 = require('./scram').ScramSHA256; 9 | const MongoDBAWS = require('./mongodb_aws'); 10 | 11 | /** 12 | * Returns the default authentication providers. 13 | * 14 | * @param {BSON} bson Bson definition 15 | * @returns {Object} a mapping of auth names to auth types 16 | */ 17 | function defaultAuthProviders(bson) { 18 | return { 19 | 'mongodb-aws': new MongoDBAWS(bson), 20 | mongocr: new MongoCR(bson), 21 | x509: new X509(bson), 22 | plain: new Plain(bson), 23 | gssapi: new GSSAPI(bson), 24 | 'scram-sha-1': new ScramSHA1(bson), 25 | 'scram-sha-256': new ScramSHA256(bson) 26 | }; 27 | } 28 | 29 | module.exports = { defaultAuthProviders }; 30 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/core/auth/mongocr.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const crypto = require('crypto'); 4 | const AuthProvider = require('./auth_provider').AuthProvider; 5 | 6 | class MongoCR extends AuthProvider { 7 | auth(authContext, callback) { 8 | const connection = authContext.connection; 9 | const credentials = authContext.credentials; 10 | const username = credentials.username; 11 | const password = credentials.password; 12 | const source = credentials.source; 13 | 14 | connection.command(`${source}.$cmd`, { getnonce: 1 }, (err, result) => { 15 | let nonce = null; 16 | let key = null; 17 | 18 | // Get nonce 19 | if (err == null) { 20 | const r = result.result; 21 | nonce = r.nonce; 22 | // Use node md5 generator 23 | let md5 = crypto.createHash('md5'); 24 | // Generate keys used for authentication 25 | md5.update(username + ':mongo:' + password, 'utf8'); 26 | const hash_password = md5.digest('hex'); 27 | // Final key 28 | md5 = crypto.createHash('md5'); 29 | md5.update(nonce + username + hash_password, 'utf8'); 30 | key = md5.digest('hex'); 31 | } 32 | 33 | const authenticateCommand = { 34 | authenticate: 1, 35 | user: username, 36 | nonce, 37 | key 38 | }; 39 | 40 | connection.command(`${source}.$cmd`, authenticateCommand, callback); 41 | }); 42 | } 43 | } 44 | 45 | module.exports = MongoCR; 46 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/core/auth/plain.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | const retrieveBSON = require('../connection/utils').retrieveBSON; 3 | const AuthProvider = require('./auth_provider').AuthProvider; 4 | 5 | // TODO: can we get the Binary type from this.bson instead? 6 | const BSON = retrieveBSON(); 7 | const Binary = BSON.Binary; 8 | 9 | class Plain extends AuthProvider { 10 | auth(authContext, callback) { 11 | const connection = authContext.connection; 12 | const credentials = authContext.credentials; 13 | const username = credentials.username; 14 | const password = credentials.password; 15 | 16 | const payload = new Binary(`\x00${username}\x00${password}`); 17 | const command = { 18 | saslStart: 1, 19 | mechanism: 'PLAIN', 20 | payload: payload, 21 | autoAuthorize: 1 22 | }; 23 | 24 | connection.command('$external.$cmd', command, callback); 25 | } 26 | } 27 | 28 | module.exports = Plain; 29 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/core/auth/x509.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | const AuthProvider = require('./auth_provider').AuthProvider; 3 | 4 | class X509 extends AuthProvider { 5 | prepare(handshakeDoc, authContext, callback) { 6 | const credentials = authContext.credentials; 7 | Object.assign(handshakeDoc, { 8 | speculativeAuthenticate: x509AuthenticateCommand(credentials) 9 | }); 10 | 11 | callback(undefined, handshakeDoc); 12 | } 13 | 14 | auth(authContext, callback) { 15 | const connection = authContext.connection; 16 | const credentials = authContext.credentials; 17 | const response = authContext.response; 18 | if (response.speculativeAuthenticate) { 19 | return callback(); 20 | } 21 | 22 | connection.command('$external.$cmd', x509AuthenticateCommand(credentials), callback); 23 | } 24 | } 25 | 26 | function x509AuthenticateCommand(credentials) { 27 | const command = { authenticate: 1, mechanism: 'MONGODB-X509' }; 28 | if (credentials.username) { 29 | Object.apply(command, { user: credentials.username }); 30 | } 31 | 32 | return command; 33 | } 34 | 35 | module.exports = X509; 36 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/core/connection/command_result.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Creates a new CommandResult instance 5 | * @class 6 | * @param {object} result CommandResult object 7 | * @param {Connection} connection A connection instance associated with this result 8 | * @return {CommandResult} A cursor instance 9 | */ 10 | var CommandResult = function(result, connection, message) { 11 | this.result = result; 12 | this.connection = connection; 13 | this.message = message; 14 | }; 15 | 16 | /** 17 | * Convert CommandResult to JSON 18 | * @method 19 | * @return {object} 20 | */ 21 | CommandResult.prototype.toJSON = function() { 22 | let result = Object.assign({}, this, this.result); 23 | delete result.message; 24 | return result; 25 | }; 26 | 27 | /** 28 | * Convert CommandResult to String representation 29 | * @method 30 | * @return {string} 31 | */ 32 | CommandResult.prototype.toString = function() { 33 | return JSON.stringify(this.toJSON()); 34 | }; 35 | 36 | module.exports = CommandResult; 37 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/core/connection/utils.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const require_optional = require('require_optional'); 4 | 5 | function debugOptions(debugFields, options) { 6 | var finaloptions = {}; 7 | debugFields.forEach(function(n) { 8 | finaloptions[n] = options[n]; 9 | }); 10 | 11 | return finaloptions; 12 | } 13 | 14 | function retrieveBSON() { 15 | var BSON = require('bson'); 16 | BSON.native = false; 17 | 18 | try { 19 | var optionalBSON = require_optional('bson-ext'); 20 | if (optionalBSON) { 21 | optionalBSON.native = true; 22 | return optionalBSON; 23 | } 24 | } catch (err) {} // eslint-disable-line 25 | 26 | return BSON; 27 | } 28 | 29 | // Throw an error if an attempt to use Snappy is made when Snappy is not installed 30 | function noSnappyWarning() { 31 | throw new Error( 32 | 'Attempted to use Snappy compression, but Snappy is not installed. Install or disable Snappy compression and try again.' 33 | ); 34 | } 35 | 36 | // Facilitate loading Snappy optionally 37 | function retrieveSnappy() { 38 | var snappy = null; 39 | try { 40 | snappy = require_optional('snappy'); 41 | } catch (error) {} // eslint-disable-line 42 | if (!snappy) { 43 | snappy = { 44 | compress: noSnappyWarning, 45 | uncompress: noSnappyWarning, 46 | compressSync: noSnappyWarning, 47 | uncompressSync: noSnappyWarning 48 | }; 49 | } 50 | return snappy; 51 | } 52 | 53 | module.exports = { 54 | debugOptions, 55 | retrieveBSON, 56 | retrieveSnappy 57 | }; 58 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/core/wireprotocol/constants.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const MIN_SUPPORTED_SERVER_VERSION = '2.6'; 4 | const MAX_SUPPORTED_SERVER_VERSION = '4.4'; 5 | const MIN_SUPPORTED_WIRE_VERSION = 2; 6 | const MAX_SUPPORTED_WIRE_VERSION = 9; 7 | 8 | module.exports = { 9 | MIN_SUPPORTED_SERVER_VERSION, 10 | MAX_SUPPORTED_SERVER_VERSION, 11 | MIN_SUPPORTED_WIRE_VERSION, 12 | MAX_SUPPORTED_WIRE_VERSION 13 | }; 14 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/core/wireprotocol/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | const writeCommand = require('./write_command'); 3 | 4 | module.exports = { 5 | insert: function insert(server, ns, ops, options, callback) { 6 | writeCommand(server, 'insert', 'documents', ns, ops, options, callback); 7 | }, 8 | update: function update(server, ns, ops, options, callback) { 9 | writeCommand(server, 'update', 'updates', ns, ops, options, callback); 10 | }, 11 | remove: function remove(server, ns, ops, options, callback) { 12 | writeCommand(server, 'delete', 'deletes', ns, ops, options, callback); 13 | }, 14 | killCursors: require('./kill_cursors'), 15 | getMore: require('./get_more'), 16 | query: require('./query'), 17 | command: require('./command') 18 | }; 19 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/dynamic_loaders.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | let collection; 4 | let cursor; 5 | let db; 6 | 7 | function loadCollection() { 8 | if (!collection) { 9 | collection = require('./collection'); 10 | } 11 | return collection; 12 | } 13 | 14 | function loadCursor() { 15 | if (!cursor) { 16 | cursor = require('./cursor'); 17 | } 18 | return cursor; 19 | } 20 | 21 | function loadDb() { 22 | if (!db) { 23 | db = require('./db'); 24 | } 25 | return db; 26 | } 27 | 28 | module.exports = { 29 | loadCollection, 30 | loadCursor, 31 | loadDb 32 | }; 33 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/error.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const MongoNetworkError = require('./core').MongoNetworkError; 4 | 5 | // From spec@https://github.com/mongodb/specifications/blob/f93d78191f3db2898a59013a7ed5650352ef6da8/source/change-streams/change-streams.rst#resumable-error 6 | const GET_MORE_RESUMABLE_CODES = new Set([ 7 | 6, // HostUnreachable 8 | 7, // HostNotFound 9 | 89, // NetworkTimeout 10 | 91, // ShutdownInProgress 11 | 189, // PrimarySteppedDown 12 | 262, // ExceededTimeLimit 13 | 9001, // SocketException 14 | 10107, // NotMaster 15 | 11600, // InterruptedAtShutdown 16 | 11602, // InterruptedDueToReplStateChange 17 | 13435, // NotMasterNoSlaveOk 18 | 13436, // NotMasterOrSecondary 19 | 63, // StaleShardVersion 20 | 150, // StaleEpoch 21 | 13388, // StaleConfig 22 | 234, // RetryChangeStream 23 | 133, // FailedToSatisfyReadPreference 24 | 43 // CursorNotFound 25 | ]); 26 | 27 | function isResumableError(error, wireVersion) { 28 | if (error instanceof MongoNetworkError) { 29 | return true; 30 | } 31 | 32 | if (wireVersion >= 9) { 33 | // DRIVERS-1308: For 4.4 drivers running against 4.4 servers, drivers will add a special case to treat the CursorNotFound error code as resumable 34 | if (error.code === 43) { 35 | return true; 36 | } 37 | return error.hasErrorLabel('ResumableChangeStreamError'); 38 | } 39 | 40 | return GET_MORE_RESUMABLE_CODES.has(error.code); 41 | } 42 | 43 | module.exports = { GET_MORE_RESUMABLE_CODES, isResumableError }; 44 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/collections.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const OperationBase = require('./operation').OperationBase; 4 | const handleCallback = require('../utils').handleCallback; 5 | 6 | let collection; 7 | function loadCollection() { 8 | if (!collection) { 9 | collection = require('../collection'); 10 | } 11 | return collection; 12 | } 13 | 14 | class CollectionsOperation extends OperationBase { 15 | constructor(db, options) { 16 | super(options); 17 | 18 | this.db = db; 19 | } 20 | 21 | execute(callback) { 22 | const db = this.db; 23 | let options = this.options; 24 | 25 | let Collection = loadCollection(); 26 | 27 | options = Object.assign({}, options, { nameOnly: true }); 28 | // Let's get the collection names 29 | db.listCollections({}, options).toArray((err, documents) => { 30 | if (err != null) return handleCallback(callback, err, null); 31 | // Filter collections removing any illegal ones 32 | documents = documents.filter(doc => { 33 | return doc.name.indexOf('$') === -1; 34 | }); 35 | 36 | // Return the collection objects 37 | handleCallback( 38 | callback, 39 | null, 40 | documents.map(d => { 41 | return new Collection( 42 | db, 43 | db.s.topology, 44 | db.databaseName, 45 | d.name, 46 | db.s.pkFactory, 47 | db.s.options 48 | ); 49 | }) 50 | ); 51 | }); 52 | } 53 | } 54 | 55 | module.exports = CollectionsOperation; 56 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/count_documents.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const AggregateOperation = require('./aggregate'); 4 | 5 | class CountDocumentsOperation extends AggregateOperation { 6 | constructor(collection, query, options) { 7 | const pipeline = [{ $match: query }]; 8 | if (typeof options.skip === 'number') { 9 | pipeline.push({ $skip: options.skip }); 10 | } 11 | 12 | if (typeof options.limit === 'number') { 13 | pipeline.push({ $limit: options.limit }); 14 | } 15 | 16 | pipeline.push({ $group: { _id: 1, n: { $sum: 1 } } }); 17 | 18 | super(collection, pipeline, options); 19 | } 20 | 21 | execute(server, callback) { 22 | super.execute(server, (err, result) => { 23 | if (err) { 24 | callback(err, null); 25 | return; 26 | } 27 | 28 | // NOTE: We're avoiding creating a cursor here to reduce the callstack. 29 | const response = result.result; 30 | if (response.cursor == null || response.cursor.firstBatch == null) { 31 | callback(null, 0); 32 | return; 33 | } 34 | 35 | const docs = response.cursor.firstBatch; 36 | callback(null, docs.length ? docs[0].n : 0); 37 | }); 38 | } 39 | } 40 | 41 | module.exports = CountDocumentsOperation; 42 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/delete_many.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const OperationBase = require('./operation').OperationBase; 4 | const deleteCallback = require('./common_functions').deleteCallback; 5 | const removeDocuments = require('./common_functions').removeDocuments; 6 | 7 | class DeleteManyOperation extends OperationBase { 8 | constructor(collection, filter, options) { 9 | super(options); 10 | 11 | this.collection = collection; 12 | this.filter = filter; 13 | } 14 | 15 | execute(callback) { 16 | const coll = this.collection; 17 | const filter = this.filter; 18 | const options = this.options; 19 | 20 | options.single = false; 21 | removeDocuments(coll, filter, options, (err, r) => deleteCallback(err, r, callback)); 22 | } 23 | } 24 | 25 | module.exports = DeleteManyOperation; 26 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/delete_one.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const OperationBase = require('./operation').OperationBase; 4 | const deleteCallback = require('./common_functions').deleteCallback; 5 | const removeDocuments = require('./common_functions').removeDocuments; 6 | 7 | class DeleteOneOperation extends OperationBase { 8 | constructor(collection, filter, options) { 9 | super(options); 10 | 11 | this.collection = collection; 12 | this.filter = filter; 13 | } 14 | 15 | execute(callback) { 16 | const coll = this.collection; 17 | const filter = this.filter; 18 | const options = this.options; 19 | 20 | options.single = true; 21 | removeDocuments(coll, filter, options, (err, r) => deleteCallback(err, r, callback)); 22 | } 23 | } 24 | 25 | module.exports = DeleteOneOperation; 26 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/drop.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const Aspect = require('./operation').Aspect; 4 | const CommandOperation = require('./command'); 5 | const defineAspects = require('./operation').defineAspects; 6 | const handleCallback = require('../utils').handleCallback; 7 | 8 | class DropOperation extends CommandOperation { 9 | constructor(db, options) { 10 | const finalOptions = Object.assign({}, options, db.s.options); 11 | 12 | if (options.session) { 13 | finalOptions.session = options.session; 14 | } 15 | 16 | super(db, finalOptions); 17 | } 18 | 19 | execute(callback) { 20 | super.execute((err, result) => { 21 | if (err) return handleCallback(callback, err); 22 | if (result.ok) return handleCallback(callback, null, true); 23 | handleCallback(callback, null, false); 24 | }); 25 | } 26 | } 27 | 28 | defineAspects(DropOperation, Aspect.WRITE_OPERATION); 29 | 30 | class DropCollectionOperation extends DropOperation { 31 | constructor(db, name, options) { 32 | super(db, options); 33 | 34 | this.name = name; 35 | this.namespace = `${db.namespace}.${name}`; 36 | } 37 | 38 | _buildCommand() { 39 | return { drop: this.name }; 40 | } 41 | } 42 | 43 | class DropDatabaseOperation extends DropOperation { 44 | _buildCommand() { 45 | return { dropDatabase: 1 }; 46 | } 47 | } 48 | 49 | module.exports = { 50 | DropOperation, 51 | DropCollectionOperation, 52 | DropDatabaseOperation 53 | }; 54 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/drop_index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const Aspect = require('./operation').Aspect; 4 | const defineAspects = require('./operation').defineAspects; 5 | const CommandOperation = require('./command'); 6 | const applyWriteConcern = require('../utils').applyWriteConcern; 7 | const handleCallback = require('../utils').handleCallback; 8 | 9 | class DropIndexOperation extends CommandOperation { 10 | constructor(collection, indexName, options) { 11 | super(collection.s.db, options, collection); 12 | 13 | this.collection = collection; 14 | this.indexName = indexName; 15 | } 16 | 17 | _buildCommand() { 18 | const collection = this.collection; 19 | const indexName = this.indexName; 20 | const options = this.options; 21 | 22 | let cmd = { dropIndexes: collection.collectionName, index: indexName }; 23 | 24 | // Decorate command with writeConcern if supported 25 | cmd = applyWriteConcern(cmd, { db: collection.s.db, collection }, options); 26 | 27 | return cmd; 28 | } 29 | 30 | execute(callback) { 31 | // Execute command 32 | super.execute((err, result) => { 33 | if (typeof callback !== 'function') return; 34 | if (err) return handleCallback(callback, err, null); 35 | handleCallback(callback, null, result); 36 | }); 37 | } 38 | } 39 | 40 | defineAspects(DropIndexOperation, Aspect.WRITE_OPERATION); 41 | 42 | module.exports = DropIndexOperation; 43 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/drop_indexes.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const Aspect = require('./operation').Aspect; 4 | const defineAspects = require('./operation').defineAspects; 5 | const DropIndexOperation = require('./drop_index'); 6 | const handleCallback = require('../utils').handleCallback; 7 | 8 | class DropIndexesOperation extends DropIndexOperation { 9 | constructor(collection, options) { 10 | super(collection, '*', options); 11 | } 12 | 13 | execute(callback) { 14 | super.execute(err => { 15 | if (err) return handleCallback(callback, err, false); 16 | handleCallback(callback, null, true); 17 | }); 18 | } 19 | } 20 | 21 | defineAspects(DropIndexesOperation, Aspect.WRITE_OPERATION); 22 | 23 | module.exports = DropIndexesOperation; 24 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/estimated_document_count.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const Aspect = require('./operation').Aspect; 4 | const defineAspects = require('./operation').defineAspects; 5 | const CommandOperationV2 = require('./command_v2'); 6 | 7 | class EstimatedDocumentCountOperation extends CommandOperationV2 { 8 | constructor(collection, query, options) { 9 | if (typeof options === 'undefined') { 10 | options = query; 11 | query = undefined; 12 | } 13 | 14 | super(collection, options); 15 | this.collectionName = collection.s.namespace.collection; 16 | if (query) { 17 | this.query = query; 18 | } 19 | } 20 | 21 | execute(server, callback) { 22 | const options = this.options; 23 | const cmd = { count: this.collectionName }; 24 | 25 | if (this.query) { 26 | cmd.query = this.query; 27 | } 28 | 29 | if (typeof options.skip === 'number') { 30 | cmd.skip = options.skip; 31 | } 32 | 33 | if (typeof options.limit === 'number') { 34 | cmd.limit = options.limit; 35 | } 36 | 37 | if (options.hint) { 38 | cmd.hint = options.hint; 39 | } 40 | 41 | super.executeCommand(server, cmd, (err, response) => { 42 | if (err) { 43 | callback(err); 44 | return; 45 | } 46 | 47 | callback(null, response.n); 48 | }); 49 | } 50 | } 51 | 52 | defineAspects(EstimatedDocumentCountOperation, [ 53 | Aspect.READ_OPERATION, 54 | Aspect.RETRYABLE, 55 | Aspect.EXECUTE_WITH_SELECTION 56 | ]); 57 | 58 | module.exports = EstimatedDocumentCountOperation; 59 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/execute_db_admin_command.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const OperationBase = require('./operation').OperationBase; 4 | const handleCallback = require('../utils').handleCallback; 5 | const MongoError = require('../core').MongoError; 6 | const MongoDBNamespace = require('../utils').MongoDBNamespace; 7 | 8 | class ExecuteDbAdminCommandOperation extends OperationBase { 9 | constructor(db, selector, options) { 10 | super(options); 11 | 12 | this.db = db; 13 | this.selector = selector; 14 | } 15 | 16 | execute(callback) { 17 | const db = this.db; 18 | const selector = this.selector; 19 | const options = this.options; 20 | 21 | const namespace = new MongoDBNamespace('admin', '$cmd'); 22 | db.s.topology.command(namespace, selector, options, (err, result) => { 23 | // Did the user destroy the topology 24 | if (db.serverConfig && db.serverConfig.isDestroyed()) { 25 | return callback(new MongoError('topology was destroyed')); 26 | } 27 | 28 | if (err) return handleCallback(callback, err); 29 | handleCallback(callback, null, result.result); 30 | }); 31 | } 32 | } 33 | 34 | module.exports = ExecuteDbAdminCommandOperation; 35 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/find.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const OperationBase = require('./operation').OperationBase; 4 | const Aspect = require('./operation').Aspect; 5 | const defineAspects = require('./operation').defineAspects; 6 | const ReadPreference = require('../core').ReadPreference; 7 | const maxWireVersion = require('../core/utils').maxWireVersion; 8 | const MongoError = require('../core/error').MongoError; 9 | 10 | class FindOperation extends OperationBase { 11 | constructor(collection, ns, command, options) { 12 | super(options); 13 | 14 | this.ns = ns; 15 | this.cmd = command; 16 | this.readPreference = ReadPreference.resolve(collection, this.options); 17 | } 18 | 19 | execute(server, callback) { 20 | // copied from `CommandOperationV2`, to be subclassed in the future 21 | this.server = server; 22 | 23 | if (typeof this.cmd.allowDiskUse !== 'undefined' && maxWireVersion(server) < 4) { 24 | callback(new MongoError('The `allowDiskUse` option is not supported on MongoDB < 3.2')); 25 | return; 26 | } 27 | 28 | // TOOD: use `MongoDBNamespace` through and through 29 | const cursorState = this.cursorState || {}; 30 | server.query(this.ns.toString(), this.cmd, cursorState, this.options, callback); 31 | } 32 | } 33 | 34 | defineAspects(FindOperation, [ 35 | Aspect.READ_OPERATION, 36 | Aspect.RETRYABLE, 37 | Aspect.EXECUTE_WITH_SELECTION 38 | ]); 39 | 40 | module.exports = FindOperation; 41 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/find_one.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const handleCallback = require('../utils').handleCallback; 4 | const OperationBase = require('./operation').OperationBase; 5 | const toError = require('../utils').toError; 6 | 7 | class FindOneOperation extends OperationBase { 8 | constructor(collection, query, options) { 9 | super(options); 10 | 11 | this.collection = collection; 12 | this.query = query; 13 | } 14 | 15 | execute(callback) { 16 | const coll = this.collection; 17 | const query = this.query; 18 | const options = this.options; 19 | 20 | try { 21 | const cursor = coll 22 | .find(query, options) 23 | .limit(-1) 24 | .batchSize(1); 25 | 26 | // Return the item 27 | cursor.next((err, item) => { 28 | if (err != null) return handleCallback(callback, toError(err), null); 29 | handleCallback(callback, null, item); 30 | }); 31 | } catch (e) { 32 | callback(e); 33 | } 34 | } 35 | } 36 | 37 | module.exports = FindOneOperation; 38 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/find_one_and_delete.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const FindAndModifyOperation = require('./find_and_modify'); 4 | 5 | class FindOneAndDeleteOperation extends FindAndModifyOperation { 6 | constructor(collection, filter, options) { 7 | // Final options 8 | const finalOptions = Object.assign({}, options); 9 | finalOptions.fields = options.projection; 10 | finalOptions.remove = true; 11 | 12 | // Basic validation 13 | if (filter == null || typeof filter !== 'object') { 14 | throw new TypeError('Filter parameter must be an object'); 15 | } 16 | 17 | super(collection, filter, finalOptions.sort, null, finalOptions); 18 | } 19 | } 20 | 21 | module.exports = FindOneAndDeleteOperation; 22 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/find_one_and_replace.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const FindAndModifyOperation = require('./find_and_modify'); 4 | const hasAtomicOperators = require('../utils').hasAtomicOperators; 5 | 6 | class FindOneAndReplaceOperation extends FindAndModifyOperation { 7 | constructor(collection, filter, replacement, options) { 8 | // Final options 9 | const finalOptions = Object.assign({}, options); 10 | finalOptions.fields = options.projection; 11 | finalOptions.update = true; 12 | finalOptions.new = options.returnOriginal !== void 0 ? !options.returnOriginal : false; 13 | finalOptions.upsert = options.upsert !== void 0 ? !!options.upsert : false; 14 | 15 | if (filter == null || typeof filter !== 'object') { 16 | throw new TypeError('Filter parameter must be an object'); 17 | } 18 | 19 | if (replacement == null || typeof replacement !== 'object') { 20 | throw new TypeError('Replacement parameter must be an object'); 21 | } 22 | 23 | if (hasAtomicOperators(replacement)) { 24 | throw new TypeError('Replacement document must not contain atomic operators'); 25 | } 26 | 27 | super(collection, filter, finalOptions.sort, replacement, finalOptions); 28 | } 29 | } 30 | 31 | module.exports = FindOneAndReplaceOperation; 32 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/find_one_and_update.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const FindAndModifyOperation = require('./find_and_modify'); 4 | const hasAtomicOperators = require('../utils').hasAtomicOperators; 5 | 6 | class FindOneAndUpdateOperation extends FindAndModifyOperation { 7 | constructor(collection, filter, update, options) { 8 | // Final options 9 | const finalOptions = Object.assign({}, options); 10 | finalOptions.fields = options.projection; 11 | finalOptions.update = true; 12 | finalOptions.new = 13 | typeof options.returnOriginal === 'boolean' ? !options.returnOriginal : false; 14 | finalOptions.upsert = typeof options.upsert === 'boolean' ? options.upsert : false; 15 | 16 | if (filter == null || typeof filter !== 'object') { 17 | throw new TypeError('Filter parameter must be an object'); 18 | } 19 | 20 | if (update == null || typeof update !== 'object') { 21 | throw new TypeError('Update parameter must be an object'); 22 | } 23 | 24 | if (!hasAtomicOperators(update)) { 25 | throw new TypeError('Update document requires atomic operators'); 26 | } 27 | 28 | super(collection, filter, finalOptions.sort, update, finalOptions); 29 | } 30 | } 31 | 32 | module.exports = FindOneAndUpdateOperation; 33 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/index_exists.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const OperationBase = require('./operation').OperationBase; 4 | const handleCallback = require('../utils').handleCallback; 5 | const indexInformationDb = require('./db_ops').indexInformation; 6 | 7 | class IndexExistsOperation extends OperationBase { 8 | constructor(collection, indexes, options) { 9 | super(options); 10 | 11 | this.collection = collection; 12 | this.indexes = indexes; 13 | } 14 | 15 | execute(callback) { 16 | const coll = this.collection; 17 | const indexes = this.indexes; 18 | const options = this.options; 19 | 20 | indexInformationDb(coll.s.db, coll.collectionName, options, (err, indexInformation) => { 21 | // If we have an error return 22 | if (err != null) return handleCallback(callback, err, null); 23 | // Let's check for the index names 24 | if (!Array.isArray(indexes)) 25 | return handleCallback(callback, null, indexInformation[indexes] != null); 26 | // Check in list of indexes 27 | for (let i = 0; i < indexes.length; i++) { 28 | if (indexInformation[indexes[i]] == null) { 29 | return handleCallback(callback, null, false); 30 | } 31 | } 32 | 33 | // All keys found return true 34 | return handleCallback(callback, null, true); 35 | }); 36 | } 37 | } 38 | 39 | module.exports = IndexExistsOperation; 40 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/index_information.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const OperationBase = require('./operation').OperationBase; 4 | const indexInformation = require('./common_functions').indexInformation; 5 | 6 | class IndexInformationOperation extends OperationBase { 7 | constructor(db, name, options) { 8 | super(options); 9 | 10 | this.db = db; 11 | this.name = name; 12 | } 13 | 14 | execute(callback) { 15 | const db = this.db; 16 | const name = this.name; 17 | const options = this.options; 18 | 19 | indexInformation(db, name, options, callback); 20 | } 21 | } 22 | 23 | module.exports = IndexInformationOperation; 24 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/indexes.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const OperationBase = require('./operation').OperationBase; 4 | const indexInformation = require('./common_functions').indexInformation; 5 | 6 | class IndexesOperation extends OperationBase { 7 | constructor(collection, options) { 8 | super(options); 9 | 10 | this.collection = collection; 11 | } 12 | 13 | execute(callback) { 14 | const coll = this.collection; 15 | let options = this.options; 16 | 17 | options = Object.assign({}, { full: true }, options); 18 | indexInformation(coll.s.db, coll.collectionName, options, callback); 19 | } 20 | } 21 | 22 | module.exports = IndexesOperation; 23 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/insert_one.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const MongoError = require('../core').MongoError; 4 | const OperationBase = require('./operation').OperationBase; 5 | const insertDocuments = require('./common_functions').insertDocuments; 6 | 7 | class InsertOneOperation extends OperationBase { 8 | constructor(collection, doc, options) { 9 | super(options); 10 | 11 | this.collection = collection; 12 | this.doc = doc; 13 | } 14 | 15 | execute(callback) { 16 | const coll = this.collection; 17 | const doc = this.doc; 18 | const options = this.options; 19 | 20 | if (Array.isArray(doc)) { 21 | return callback( 22 | MongoError.create({ message: 'doc parameter must be an object', driver: true }) 23 | ); 24 | } 25 | 26 | insertDocuments(coll, [doc], options, (err, r) => { 27 | if (callback == null) return; 28 | if (err && callback) return callback(err); 29 | // Workaround for pre 2.6 servers 30 | if (r == null) return callback(null, { result: { ok: 1 } }); 31 | // Add values to top level to ensure crud spec compatibility 32 | r.insertedCount = r.result.n; 33 | r.insertedId = doc._id; 34 | if (callback) callback(null, r); 35 | }); 36 | } 37 | } 38 | 39 | module.exports = InsertOneOperation; 40 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/is_capped.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const OptionsOperation = require('./options_operation'); 4 | const handleCallback = require('../utils').handleCallback; 5 | 6 | class IsCappedOperation extends OptionsOperation { 7 | constructor(collection, options) { 8 | super(collection, options); 9 | } 10 | 11 | execute(callback) { 12 | super.execute((err, document) => { 13 | if (err) return handleCallback(callback, err); 14 | handleCallback(callback, null, !!(document && document.capped)); 15 | }); 16 | } 17 | } 18 | 19 | module.exports = IsCappedOperation; 20 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/list_databases.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const CommandOperationV2 = require('./command_v2'); 4 | const Aspect = require('./operation').Aspect; 5 | const defineAspects = require('./operation').defineAspects; 6 | const MongoDBNamespace = require('../utils').MongoDBNamespace; 7 | 8 | class ListDatabasesOperation extends CommandOperationV2 { 9 | constructor(db, options) { 10 | super(db, options); 11 | this.ns = new MongoDBNamespace('admin', '$cmd'); 12 | } 13 | 14 | execute(server, callback) { 15 | const cmd = { listDatabases: 1 }; 16 | if (this.options.nameOnly) { 17 | cmd.nameOnly = Number(cmd.nameOnly); 18 | } 19 | 20 | if (this.options.filter) { 21 | cmd.filter = this.options.filter; 22 | } 23 | 24 | if (typeof this.options.authorizedDatabases === 'boolean') { 25 | cmd.authorizedDatabases = this.options.authorizedDatabases; 26 | } 27 | 28 | super.executeCommand(server, cmd, callback); 29 | } 30 | } 31 | 32 | defineAspects(ListDatabasesOperation, [ 33 | Aspect.READ_OPERATION, 34 | Aspect.RETRYABLE, 35 | Aspect.EXECUTE_WITH_SELECTION 36 | ]); 37 | 38 | module.exports = ListDatabasesOperation; 39 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/list_indexes.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const CommandOperationV2 = require('./command_v2'); 4 | const Aspect = require('./operation').Aspect; 5 | const defineAspects = require('./operation').defineAspects; 6 | const maxWireVersion = require('../core/utils').maxWireVersion; 7 | 8 | const LIST_INDEXES_WIRE_VERSION = 3; 9 | 10 | class ListIndexesOperation extends CommandOperationV2 { 11 | constructor(collection, options) { 12 | super(collection, options, { fullResponse: true }); 13 | 14 | this.collectionNamespace = collection.s.namespace; 15 | } 16 | 17 | execute(server, callback) { 18 | const serverWireVersion = maxWireVersion(server); 19 | if (serverWireVersion < LIST_INDEXES_WIRE_VERSION) { 20 | const systemIndexesNS = this.collectionNamespace.withCollection('system.indexes').toString(); 21 | const collectionNS = this.collectionNamespace.toString(); 22 | 23 | server.query(systemIndexesNS, { query: { ns: collectionNS } }, {}, this.options, callback); 24 | return; 25 | } 26 | 27 | const cursor = this.options.batchSize ? { batchSize: this.options.batchSize } : {}; 28 | super.executeCommand( 29 | server, 30 | { listIndexes: this.collectionNamespace.collection, cursor }, 31 | callback 32 | ); 33 | } 34 | } 35 | 36 | defineAspects(ListIndexesOperation, [ 37 | Aspect.READ_OPERATION, 38 | Aspect.RETRYABLE, 39 | Aspect.EXECUTE_WITH_SELECTION 40 | ]); 41 | 42 | module.exports = ListIndexesOperation; 43 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/options_operation.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const OperationBase = require('./operation').OperationBase; 4 | const handleCallback = require('../utils').handleCallback; 5 | const MongoError = require('../core').MongoError; 6 | 7 | class OptionsOperation extends OperationBase { 8 | constructor(collection, options) { 9 | super(options); 10 | 11 | this.collection = collection; 12 | } 13 | 14 | execute(callback) { 15 | const coll = this.collection; 16 | const opts = this.options; 17 | 18 | coll.s.db.listCollections({ name: coll.collectionName }, opts).toArray((err, collections) => { 19 | if (err) return handleCallback(callback, err); 20 | if (collections.length === 0) { 21 | return handleCallback( 22 | callback, 23 | MongoError.create({ message: `collection ${coll.namespace} not found`, driver: true }) 24 | ); 25 | } 26 | 27 | handleCallback(callback, err, collections[0].options || null); 28 | }); 29 | } 30 | } 31 | 32 | module.exports = OptionsOperation; 33 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/profiling_level.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const CommandOperation = require('./command'); 4 | 5 | class ProfilingLevelOperation extends CommandOperation { 6 | constructor(db, command, options) { 7 | super(db, options); 8 | } 9 | 10 | _buildCommand() { 11 | const command = { profile: -1 }; 12 | 13 | return command; 14 | } 15 | 16 | execute(callback) { 17 | super.execute((err, doc) => { 18 | if (err == null && doc.ok === 1) { 19 | const was = doc.was; 20 | if (was === 0) return callback(null, 'off'); 21 | if (was === 1) return callback(null, 'slow_only'); 22 | if (was === 2) return callback(null, 'all'); 23 | return callback(new Error('Error: illegal profiling level value ' + was), null); 24 | } else { 25 | err != null ? callback(err, null) : callback(new Error('Error with profile command'), null); 26 | } 27 | }); 28 | } 29 | } 30 | 31 | module.exports = ProfilingLevelOperation; 32 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/re_index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const Aspect = require('./operation').Aspect; 4 | const defineAspects = require('./operation').defineAspects; 5 | const CommandOperationV2 = require('./command_v2'); 6 | const serverType = require('../core/sdam/common').serverType; 7 | const ServerType = require('../core/sdam/common').ServerType; 8 | const MongoError = require('../core').MongoError; 9 | 10 | class ReIndexOperation extends CommandOperationV2 { 11 | constructor(collection, options) { 12 | super(collection, options); 13 | this.collectionName = collection.collectionName; 14 | } 15 | 16 | execute(server, callback) { 17 | if (serverType(server) !== ServerType.Standalone) { 18 | callback(new MongoError(`reIndex can only be executed on standalone servers.`)); 19 | return; 20 | } 21 | super.executeCommand(server, { reIndex: this.collectionName }, (err, result) => { 22 | if (err) { 23 | callback(err); 24 | return; 25 | } 26 | callback(null, !!result.ok); 27 | }); 28 | } 29 | } 30 | 31 | defineAspects(ReIndexOperation, [Aspect.EXECUTE_WITH_SELECTION]); 32 | 33 | module.exports = ReIndexOperation; 34 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/remove_user.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const Aspect = require('./operation').Aspect; 4 | const CommandOperation = require('./command'); 5 | const defineAspects = require('./operation').defineAspects; 6 | const handleCallback = require('../utils').handleCallback; 7 | const WriteConcern = require('../write_concern'); 8 | 9 | class RemoveUserOperation extends CommandOperation { 10 | constructor(db, username, options) { 11 | const commandOptions = {}; 12 | 13 | const writeConcern = WriteConcern.fromOptions(options); 14 | if (writeConcern != null) { 15 | commandOptions.writeConcern = writeConcern; 16 | } 17 | 18 | if (options.dbName) { 19 | commandOptions.dbName = options.dbName; 20 | } 21 | 22 | // Add maxTimeMS to options if set 23 | if (typeof options.maxTimeMS === 'number') { 24 | commandOptions.maxTimeMS = options.maxTimeMS; 25 | } 26 | 27 | super(db, commandOptions); 28 | 29 | this.username = username; 30 | } 31 | 32 | _buildCommand() { 33 | const username = this.username; 34 | 35 | // Build the command to execute 36 | const command = { dropUser: username }; 37 | 38 | return command; 39 | } 40 | 41 | execute(callback) { 42 | // Attempt to execute command 43 | super.execute((err, result) => { 44 | if (err) return handleCallback(callback, err, null); 45 | handleCallback(callback, err, result.ok ? true : false); 46 | }); 47 | } 48 | } 49 | 50 | defineAspects(RemoveUserOperation, Aspect.WRITE_OPERATION); 51 | 52 | module.exports = RemoveUserOperation; 53 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/run_command.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const CommandOperationV2 = require('./command_v2'); 4 | const defineAspects = require('./operation').defineAspects; 5 | const Aspect = require('./operation').Aspect; 6 | 7 | class RunCommandOperation extends CommandOperationV2 { 8 | constructor(parent, command, options) { 9 | super(parent, options); 10 | this.command = command; 11 | } 12 | execute(server, callback) { 13 | const command = this.command; 14 | this.executeCommand(server, command, callback); 15 | } 16 | } 17 | defineAspects(RunCommandOperation, [Aspect.EXECUTE_WITH_SELECTION, Aspect.NO_INHERIT_OPTIONS]); 18 | 19 | module.exports = RunCommandOperation; 20 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/set_profiling_level.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const CommandOperation = require('./command'); 4 | const levelValues = new Set(['off', 'slow_only', 'all']); 5 | 6 | class SetProfilingLevelOperation extends CommandOperation { 7 | constructor(db, level, options) { 8 | let profile = 0; 9 | 10 | if (level === 'off') { 11 | profile = 0; 12 | } else if (level === 'slow_only') { 13 | profile = 1; 14 | } else if (level === 'all') { 15 | profile = 2; 16 | } 17 | 18 | super(db, options); 19 | this.level = level; 20 | this.profile = profile; 21 | } 22 | 23 | _buildCommand() { 24 | const profile = this.profile; 25 | 26 | // Set up the profile number 27 | const command = { profile }; 28 | 29 | return command; 30 | } 31 | 32 | execute(callback) { 33 | const level = this.level; 34 | 35 | if (!levelValues.has(level)) { 36 | return callback(new Error('Error: illegal profiling level value ' + level)); 37 | } 38 | 39 | super.execute((err, doc) => { 40 | if (err == null && doc.ok === 1) return callback(null, level); 41 | return err != null 42 | ? callback(err, null) 43 | : callback(new Error('Error with profile command'), null); 44 | }); 45 | } 46 | } 47 | 48 | module.exports = SetProfilingLevelOperation; 49 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/stats.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const Aspect = require('./operation').Aspect; 4 | const CommandOperation = require('./command'); 5 | const defineAspects = require('./operation').defineAspects; 6 | 7 | /** 8 | * Get all the collection statistics. 9 | * 10 | * @class 11 | * @property {Collection} a Collection instance. 12 | * @property {object} [options] Optional settings. See Collection.prototype.stats for a list of options. 13 | */ 14 | class StatsOperation extends CommandOperation { 15 | /** 16 | * Construct a Stats operation. 17 | * 18 | * @param {Collection} a Collection instance. 19 | * @param {object} [options] Optional settings. See Collection.prototype.stats for a list of options. 20 | */ 21 | constructor(collection, options) { 22 | super(collection.s.db, options, collection); 23 | } 24 | 25 | _buildCommand() { 26 | const collection = this.collection; 27 | const options = this.options; 28 | 29 | // Build command object 30 | const command = { 31 | collStats: collection.collectionName 32 | }; 33 | 34 | // Check if we have the scale value 35 | if (options['scale'] != null) { 36 | command['scale'] = options['scale']; 37 | } 38 | 39 | return command; 40 | } 41 | } 42 | 43 | defineAspects(StatsOperation, Aspect.READ_OPERATION); 44 | 45 | module.exports = StatsOperation; 46 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/update_many.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const OperationBase = require('./operation').OperationBase; 4 | const updateCallback = require('./common_functions').updateCallback; 5 | const updateDocuments = require('./common_functions').updateDocuments; 6 | const hasAtomicOperators = require('../utils').hasAtomicOperators; 7 | 8 | class UpdateManyOperation extends OperationBase { 9 | constructor(collection, filter, update, options) { 10 | super(options); 11 | 12 | if (!hasAtomicOperators(update)) { 13 | throw new TypeError('Update document requires atomic operators'); 14 | } 15 | 16 | this.collection = collection; 17 | this.filter = filter; 18 | this.update = update; 19 | } 20 | 21 | execute(callback) { 22 | const coll = this.collection; 23 | const filter = this.filter; 24 | const update = this.update; 25 | const options = this.options; 26 | 27 | // Set single document update 28 | options.multi = true; 29 | // Execute update 30 | updateDocuments(coll, filter, update, options, (err, r) => updateCallback(err, r, callback)); 31 | } 32 | } 33 | 34 | module.exports = UpdateManyOperation; 35 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/operations/validate_collection.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const CommandOperation = require('./command'); 4 | 5 | class ValidateCollectionOperation extends CommandOperation { 6 | constructor(admin, collectionName, options) { 7 | // Decorate command with extra options 8 | let command = { validate: collectionName }; 9 | const keys = Object.keys(options); 10 | for (let i = 0; i < keys.length; i++) { 11 | if (options.hasOwnProperty(keys[i]) && keys[i] !== 'session') { 12 | command[keys[i]] = options[keys[i]]; 13 | } 14 | } 15 | 16 | super(admin.s.db, options, null, command); 17 | this.collectionName = collectionName; 18 | } 19 | 20 | execute(callback) { 21 | const collectionName = this.collectionName; 22 | 23 | super.execute((err, doc) => { 24 | if (err != null) return callback(err, null); 25 | 26 | if (doc.ok === 0) return callback(new Error('Error with validate command'), null); 27 | if (doc.result != null && doc.result.constructor !== String) 28 | return callback(new Error('Error with validation data'), null); 29 | if (doc.result != null && doc.result.match(/exception|corrupt/) != null) 30 | return callback(new Error('Error: invalid collection ' + collectionName), null); 31 | if (doc.valid != null && !doc.valid) 32 | return callback(new Error('Error: invalid collection ' + collectionName), null); 33 | 34 | return callback(null, doc); 35 | }); 36 | } 37 | } 38 | 39 | module.exports = ValidateCollectionOperation; 40 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/mongodb/lib/read_concern.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * The **ReadConcern** class is a class that represents a MongoDB ReadConcern. 5 | * @class 6 | * @property {string} level The read concern level 7 | * @see https://docs.mongodb.com/manual/reference/read-concern/index.html 8 | */ 9 | class ReadConcern { 10 | /** 11 | * Constructs a ReadConcern from the read concern properties. 12 | * @param {string} [level] The read concern level ({'local'|'available'|'majority'|'linearizable'|'snapshot'}) 13 | */ 14 | constructor(level) { 15 | if (level != null) { 16 | this.level = level; 17 | } 18 | } 19 | 20 | /** 21 | * Construct a ReadConcern given an options object. 22 | * 23 | * @param {object} options The options object from which to extract the write concern. 24 | * @return {ReadConcern} 25 | */ 26 | static fromOptions(options) { 27 | if (options == null) { 28 | return; 29 | } 30 | 31 | if (options.readConcern) { 32 | if (options.readConcern instanceof ReadConcern) { 33 | return options.readConcern; 34 | } 35 | 36 | return new ReadConcern(options.readConcern.level); 37 | } 38 | 39 | if (options.level) { 40 | return new ReadConcern(options.level); 41 | } 42 | } 43 | 44 | static get MAJORITY() { 45 | return 'majority'; 46 | } 47 | 48 | static get AVAILABLE() { 49 | return 'available'; 50 | } 51 | 52 | static get LINEARIZABLE() { 53 | return 'linearizable'; 54 | } 55 | 56 | static get SNAPSHOT() { 57 | return 'snapshot'; 58 | } 59 | } 60 | 61 | module.exports = ReadConcern; 62 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/process-nextick-args/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | if (typeof process === 'undefined' || 4 | !process.version || 5 | process.version.indexOf('v0.') === 0 || 6 | process.version.indexOf('v1.') === 0 && process.version.indexOf('v1.8.') !== 0) { 7 | module.exports = { nextTick: nextTick }; 8 | } else { 9 | module.exports = process 10 | } 11 | 12 | function nextTick(fn, arg1, arg2, arg3) { 13 | if (typeof fn !== 'function') { 14 | throw new TypeError('"callback" argument must be a function'); 15 | } 16 | var len = arguments.length; 17 | var args, i; 18 | switch (len) { 19 | case 0: 20 | case 1: 21 | return process.nextTick(fn); 22 | case 2: 23 | return process.nextTick(function afterTickOne() { 24 | fn.call(null, arg1); 25 | }); 26 | case 3: 27 | return process.nextTick(function afterTickTwo() { 28 | fn.call(null, arg1, arg2); 29 | }); 30 | case 4: 31 | return process.nextTick(function afterTickThree() { 32 | fn.call(null, arg1, arg2, arg3); 33 | }); 34 | default: 35 | args = new Array(len - 1); 36 | i = 0; 37 | while (i < args.length) { 38 | args[i++] = arguments[i]; 39 | } 40 | return process.nextTick(function afterTick() { 41 | fn.apply(null, args); 42 | }); 43 | } 44 | } 45 | 46 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/process-nextick-args/license.md: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2015 Calvin Metcalf 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | **THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 19 | SOFTWARE.** 20 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/process-nextick-args/readme.md: -------------------------------------------------------------------------------- 1 | process-nextick-args 2 | ===== 3 | 4 | [![Build Status](https://travis-ci.org/calvinmetcalf/process-nextick-args.svg?branch=master)](https://travis-ci.org/calvinmetcalf/process-nextick-args) 5 | 6 | ```bash 7 | npm install --save process-nextick-args 8 | ``` 9 | 10 | Always be able to pass arguments to process.nextTick, no matter the platform 11 | 12 | ```js 13 | var pna = require('process-nextick-args'); 14 | 15 | pna.nextTick(function (a, b, c) { 16 | console.log(a, b, c); 17 | }, 'step', 3, 'profit'); 18 | ``` 19 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: node_js 3 | before_install: 4 | - (test $NPM_LEGACY && npm install -g npm@2 && npm install -g npm@3) || true 5 | notifications: 6 | email: false 7 | matrix: 8 | fast_finish: true 9 | include: 10 | - node_js: '0.8' 11 | env: NPM_LEGACY=true 12 | - node_js: '0.10' 13 | env: NPM_LEGACY=true 14 | - node_js: '0.11' 15 | env: NPM_LEGACY=true 16 | - node_js: '0.12' 17 | env: NPM_LEGACY=true 18 | - node_js: 1 19 | env: NPM_LEGACY=true 20 | - node_js: 2 21 | env: NPM_LEGACY=true 22 | - node_js: 3 23 | env: NPM_LEGACY=true 24 | - node_js: 4 25 | - node_js: 5 26 | - node_js: 6 27 | - node_js: 7 28 | - node_js: 8 29 | - node_js: 9 30 | script: "npm run test" 31 | env: 32 | global: 33 | - secure: rE2Vvo7vnjabYNULNyLFxOyt98BoJexDqsiOnfiD6kLYYsiQGfr/sbZkPMOFm9qfQG7pjqx+zZWZjGSswhTt+626C0t/njXqug7Yps4c3dFblzGfreQHp7wNX5TFsvrxd6dAowVasMp61sJcRnB2w8cUzoe3RAYUDHyiHktwqMc= 34 | - secure: g9YINaKAdMatsJ28G9jCGbSaguXCyxSTy+pBO6Ch0Cf57ZLOTka3HqDj8p3nV28LUIHZ3ut5WO43CeYKwt4AUtLpBS3a0dndHdY6D83uY6b2qh5hXlrcbeQTq2cvw2y95F7hm4D1kwrgZ7ViqaKggRcEupAL69YbJnxeUDKWEdI= 35 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Developer's Certificate of Origin 1.1 2 | 3 | By making a contribution to this project, I certify that: 4 | 5 | * (a) The contribution was created in whole or in part by me and I 6 | have the right to submit it under the open source license 7 | indicated in the file; or 8 | 9 | * (b) The contribution is based upon previous work that, to the best 10 | of my knowledge, is covered under an appropriate open source 11 | license and I have the right under that license to submit that 12 | work with modifications, whether created in whole or in part 13 | by me, under the same open source license (unless I am 14 | permitted to submit under a different license), as indicated 15 | in the file; or 16 | 17 | * (c) The contribution was provided directly to me by some other 18 | person who certified (a), (b) or (c) and I have not modified 19 | it. 20 | 21 | * (d) I understand and agree that this project and the contribution 22 | are public and that a record of the contribution (including all 23 | personal information I submit with it, including my sign-off) is 24 | maintained indefinitely and may be redistributed consistent with 25 | this project or the open source license(s) involved. 26 | 27 | ## Moderation Policy 28 | 29 | The [Node.js Moderation Policy] applies to this WG. 30 | 31 | ## Code of Conduct 32 | 33 | The [Node.js Code of Conduct][] applies to this WG. 34 | 35 | [Node.js Code of Conduct]: 36 | https://github.com/nodejs/node/blob/master/CODE_OF_CONDUCT.md 37 | [Node.js Moderation Policy]: 38 | https://github.com/nodejs/TSC/blob/master/Moderation-Policy.md 39 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/duplex-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/_stream_duplex.js'); 2 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/duplex.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./readable').Duplex 2 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/lib/internal/streams/stream-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('events').EventEmitter; 2 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/lib/internal/streams/stream.js: -------------------------------------------------------------------------------- 1 | module.exports = require('stream'); 2 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/node_modules/safe-buffer/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) Feross Aboukhadijeh 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/passthrough.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./readable').PassThrough 2 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/readable-browser.js: -------------------------------------------------------------------------------- 1 | exports = module.exports = require('./lib/_stream_readable.js'); 2 | exports.Stream = exports; 3 | exports.Readable = exports; 4 | exports.Writable = require('./lib/_stream_writable.js'); 5 | exports.Duplex = require('./lib/_stream_duplex.js'); 6 | exports.Transform = require('./lib/_stream_transform.js'); 7 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 8 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/readable.js: -------------------------------------------------------------------------------- 1 | var Stream = require('stream'); 2 | if (process.env.READABLE_STREAM === 'disable' && Stream) { 3 | module.exports = Stream; 4 | exports = module.exports = Stream.Readable; 5 | exports.Readable = Stream.Readable; 6 | exports.Writable = Stream.Writable; 7 | exports.Duplex = Stream.Duplex; 8 | exports.Transform = Stream.Transform; 9 | exports.PassThrough = Stream.PassThrough; 10 | exports.Stream = Stream; 11 | } else { 12 | exports = module.exports = require('./lib/_stream_readable.js'); 13 | exports.Stream = Stream || exports; 14 | exports.Readable = exports; 15 | exports.Writable = require('./lib/_stream_writable.js'); 16 | exports.Duplex = require('./lib/_stream_duplex.js'); 17 | exports.Transform = require('./lib/_stream_transform.js'); 18 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 19 | } 20 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/transform.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./readable').Transform 2 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/writable-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/_stream_writable.js'); 2 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/readable-stream/writable.js: -------------------------------------------------------------------------------- 1 | var Stream = require("stream") 2 | var Writable = require("./lib/_stream_writable.js") 3 | 4 | if (process.env.READABLE_STREAM === 'disable') { 5 | module.exports = Stream && Stream.Writable || Writable 6 | } else { 7 | module.exports = Writable 8 | } 9 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/require_optional/.npmignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | 6 | # Runtime data 7 | pids 8 | *.pid 9 | *.seed 10 | 11 | # Directory for instrumented libs generated by jscoverage/JSCover 12 | lib-cov 13 | 14 | # Coverage directory used by tools like istanbul 15 | coverage 16 | 17 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 18 | .grunt 19 | 20 | # node-waf configuration 21 | .lock-wscript 22 | 23 | # Compiled binary addons (http://nodejs.org/api/addons.html) 24 | build/Release 25 | 26 | # Dependency directory 27 | node_modules 28 | 29 | # Optional npm cache directory 30 | .npm 31 | 32 | # Optional REPL history 33 | .node_repl_history 34 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/require_optional/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "0.10" 4 | - "0.12" 5 | - "4" 6 | - "6" 7 | - "7" 8 | - "8" 9 | sudo: false 10 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/require_optional/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.1 03-02-2016 2 | ================ 3 | * Fix dependency resolution issue when a component in peerOptionalDependencies is installed at the level of the module declaring in peerOptionalDependencies. 4 | 5 | 1.0.0 03-02-2016 6 | ================ 7 | * Initial release allowing us to optionally resolve dependencies in the package.json file under the peerOptionalDependencies tag. -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/require_optional/README.md: -------------------------------------------------------------------------------- 1 | # require_optional 2 | Work around the problem that we do not have a optionalPeerDependencies concept in node.js making it a hassle to optionally include native modules 3 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/require_optional/test/nestedTest/index.js: -------------------------------------------------------------------------------- 1 | var require_optional = require('../../') 2 | 3 | function findPackage(packageName) { 4 | var pkg = require_optional(packageName); 5 | return pkg; 6 | } 7 | 8 | module.exports.findPackage = findPackage 9 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/require_optional/test/nestedTest/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nestedtest", 3 | "version": "1.0.0", 4 | "description": "A dummy package that facilitates testing that require_optional correctly walks up the module call stack", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "author": "Sebastian Hallum Clarke", 10 | "license": "ISC" 11 | } 12 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/resolve-from/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | var path = require('path'); 3 | var Module = require('module'); 4 | 5 | module.exports = function (fromDir, moduleId) { 6 | if (typeof fromDir !== 'string' || typeof moduleId !== 'string') { 7 | throw new TypeError('Expected `fromDir` and `moduleId` to be a string'); 8 | } 9 | 10 | fromDir = path.resolve(fromDir); 11 | 12 | var fromFile = path.join(fromDir, 'noop.js'); 13 | 14 | try { 15 | return Module._resolveFilename(moduleId, { 16 | id: fromFile, 17 | filename: fromFile, 18 | paths: Module._nodeModulePaths(fromDir) 19 | }); 20 | } catch (err) { 21 | return null; 22 | } 23 | }; 24 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/resolve-from/license: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) Sindre Sorhus (sindresorhus.com) 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/resolve-from/readme.md: -------------------------------------------------------------------------------- 1 | # resolve-from [![Build Status](https://travis-ci.org/sindresorhus/resolve-from.svg?branch=master)](https://travis-ci.org/sindresorhus/resolve-from) 2 | 3 | > Resolve the path of a module like [`require.resolve()`](http://nodejs.org/api/globals.html#globals_require_resolve) but from a given path 4 | 5 | Unlike `require.resolve()` it returns `null` instead of throwing when the module can't be found. 6 | 7 | 8 | ## Install 9 | 10 | ``` 11 | $ npm install --save resolve-from 12 | ``` 13 | 14 | 15 | ## Usage 16 | 17 | ```js 18 | const resolveFrom = require('resolve-from'); 19 | 20 | // there's a file at `./foo/bar.js` 21 | 22 | resolveFrom('foo', './bar'); 23 | //=> '/Users/sindresorhus/dev/test/foo/bar.js' 24 | ``` 25 | 26 | 27 | ## API 28 | 29 | ### resolveFrom(fromDir, moduleId) 30 | 31 | #### fromDir 32 | 33 | Type: `string` 34 | 35 | Directory to resolve from. 36 | 37 | #### moduleId 38 | 39 | Type: `string` 40 | 41 | What you would use in `require()`. 42 | 43 | 44 | ## Tip 45 | 46 | Create a partial using a bound function if you want to require from the same `fromDir` multiple times: 47 | 48 | ```js 49 | const resolveFromFoo = resolveFrom.bind(null, 'foo'); 50 | 51 | resolveFromFoo('./bar'); 52 | resolveFromFoo('./baz'); 53 | ``` 54 | 55 | 56 | ## License 57 | 58 | MIT © [Sindre Sorhus](http://sindresorhus.com) 59 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/safe-buffer/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) Feross Aboukhadijeh 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/saslprep/.editorconfig: -------------------------------------------------------------------------------- 1 | # http://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/saslprep/.gitattributes: -------------------------------------------------------------------------------- 1 | *.mem binary 2 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/saslprep/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: node_js 3 | node_js: 4 | - "6" 5 | - "8" 6 | - "10" 7 | - "12" 8 | 9 | before_install: 10 | - npm install -g npm@6 11 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/saslprep/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | All notable changes to the "saslprep" package will be documented in this file. 3 | 4 | ## [1.0.3] - 2019-05-01 5 | 6 | - Correctly get code points >U+FFFF ([#5](https://github.com/reklatsmasters/saslprep/pull/5)) 7 | - Fix perfomance downgrades from [#5](https://github.com/reklatsmasters/saslprep/pull/5). 8 | 9 | ## [1.0.2] - 2018-09-13 10 | 11 | - Reduced initialization time ([#3](https://github.com/reklatsmasters/saslprep/issues/3)) 12 | 13 | ## [1.0.1] - 2018-06-20 14 | 15 | - Reduced stack overhead of range creation ([#2](https://github.com/reklatsmasters/saslprep/pull/2)) 16 | 17 | ## [1.0.0] - 2017-06-21 18 | 19 | - First release 20 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/saslprep/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014 Dmitry Tsvettsikh 2 | 3 | Permission is hereby granted, free of charge, to any person 4 | obtaining a copy of this software and associated documentation 5 | files (the "Software"), to deal in the Software without 6 | restriction, including without limitation the rights to use, 7 | copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | copies of the Software, and to permit persons to whom the 9 | Software is furnished to do so, subject to the following 10 | conditions: 11 | 12 | The above copyright notice and this permission notice shall be 13 | included in all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 17 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 19 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 20 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 21 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 22 | OTHER DEALINGS IN THE SOFTWARE. -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/saslprep/code-points.mem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/Node_With_Mongo/node_modules/saslprep/code-points.mem -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/saslprep/generate-code-points.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const bitfield = require('sparse-bitfield'); 4 | const codePoints = require('./lib/code-points'); 5 | 6 | const unassigned_code_points = bitfield(); 7 | const commonly_mapped_to_nothing = bitfield(); 8 | const non_ascii_space_characters = bitfield(); 9 | const prohibited_characters = bitfield(); 10 | const bidirectional_r_al = bitfield(); 11 | const bidirectional_l = bitfield(); 12 | 13 | /** 14 | * Iterare over code points and 15 | * convert it into an buffer. 16 | * @param {bitfield} bits 17 | * @param {Array} src 18 | * @returns {Buffer} 19 | */ 20 | function traverse(bits, src) { 21 | for (const code of src.keys()) { 22 | bits.set(code, true); 23 | } 24 | 25 | const buffer = bits.toBuffer(); 26 | return Buffer.concat([createSize(buffer), buffer]); 27 | } 28 | 29 | /** 30 | * @param {Buffer} buffer 31 | * @returns {Buffer} 32 | */ 33 | function createSize(buffer) { 34 | const buf = Buffer.alloc(4); 35 | buf.writeUInt32BE(buffer.length); 36 | 37 | return buf; 38 | } 39 | 40 | const memory = []; 41 | 42 | memory.push( 43 | traverse(unassigned_code_points, codePoints.unassigned_code_points), 44 | traverse(commonly_mapped_to_nothing, codePoints.commonly_mapped_to_nothing), 45 | traverse(non_ascii_space_characters, codePoints.non_ASCII_space_characters), 46 | traverse(prohibited_characters, codePoints.prohibited_characters), 47 | traverse(bidirectional_r_al, codePoints.bidirectional_r_al), 48 | traverse(bidirectional_l, codePoints.bidirectional_l) 49 | ); 50 | 51 | process.stdout.write(Buffer.concat(memory)); 52 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/saslprep/lib/memory-code-points.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const fs = require('fs'); 4 | const path = require('path'); 5 | const bitfield = require('sparse-bitfield'); 6 | 7 | /* eslint-disable-next-line security/detect-non-literal-fs-filename */ 8 | const memory = fs.readFileSync(path.resolve(__dirname, '../code-points.mem')); 9 | let offset = 0; 10 | 11 | /** 12 | * Loads each code points sequence from buffer. 13 | * @returns {bitfield} 14 | */ 15 | function read() { 16 | const size = memory.readUInt32BE(offset); 17 | offset += 4; 18 | 19 | const codepoints = memory.slice(offset, offset + size); 20 | offset += size; 21 | 22 | return bitfield({ buffer: codepoints }); 23 | } 24 | 25 | const unassigned_code_points = read(); 26 | const commonly_mapped_to_nothing = read(); 27 | const non_ASCII_space_characters = read(); 28 | const prohibited_characters = read(); 29 | const bidirectional_r_al = read(); 30 | const bidirectional_l = read(); 31 | 32 | module.exports = { 33 | unassigned_code_points, 34 | commonly_mapped_to_nothing, 35 | non_ASCII_space_characters, 36 | prohibited_characters, 37 | bidirectional_r_al, 38 | bidirectional_l, 39 | }; 40 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/saslprep/lib/util.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Create an array of numbers. 5 | * @param {number} from 6 | * @param {number} to 7 | * @returns {number[]} 8 | */ 9 | function range(from, to) { 10 | // TODO: make this inlined. 11 | const list = new Array(to - from + 1); 12 | 13 | for (let i = 0; i < list.length; i += 1) { 14 | list[i] = from + i; 15 | } 16 | return list; 17 | } 18 | 19 | module.exports = { 20 | range, 21 | }; 22 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/saslprep/readme.md: -------------------------------------------------------------------------------- 1 | # saslprep 2 | [![Build Status](https://travis-ci.org/reklatsmasters/saslprep.svg?branch=master)](https://travis-ci.org/reklatsmasters/saslprep) 3 | [![npm](https://img.shields.io/npm/v/saslprep.svg)](https://npmjs.org/package/saslprep) 4 | [![node](https://img.shields.io/node/v/saslprep.svg)](https://npmjs.org/package/saslprep) 5 | [![license](https://img.shields.io/npm/l/saslprep.svg)](https://npmjs.org/package/saslprep) 6 | [![downloads](https://img.shields.io/npm/dm/saslprep.svg)](https://npmjs.org/package/saslprep) 7 | 8 | Stringprep Profile for User Names and Passwords, [rfc4013](https://tools.ietf.org/html/rfc4013) 9 | 10 | ### Usage 11 | 12 | ```js 13 | const saslprep = require('saslprep') 14 | 15 | saslprep('password\u00AD') // password 16 | saslprep('password\u0007') // Error: prohibited character 17 | ``` 18 | 19 | ### API 20 | 21 | ##### `saslprep(input: String, opts: Options): String` 22 | 23 | Normalize user name or password. 24 | 25 | ##### `Options.allowUnassigned: bool` 26 | 27 | A special behavior for unassigned code points, see https://tools.ietf.org/html/rfc4013#section-2.5. Disabled by default. 28 | 29 | ## License 30 | 31 | MIT, 2017-2019 (c) Dmitriy Tsvettsikh 32 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/saslprep/test/util.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const { setFlagsFromString } = require('v8'); 4 | const { range } = require('../lib/util'); 5 | 6 | // 984 by default. 7 | setFlagsFromString('--stack_size=500'); 8 | 9 | test('should work', () => { 10 | const list = range(1, 3); 11 | expect(list).toEqual([1, 2, 3]); 12 | }); 13 | 14 | test('should work for large ranges', () => { 15 | expect(() => range(1, 1e6)).not.toThrow(); 16 | }); 17 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/semver/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # changes log 2 | 3 | ## 5.7 4 | 5 | * Add `minVersion` method 6 | 7 | ## 5.6 8 | 9 | * Move boolean `loose` param to an options object, with 10 | backwards-compatibility protection. 11 | * Add ability to opt out of special prerelease version handling with 12 | the `includePrerelease` option flag. 13 | 14 | ## 5.5 15 | 16 | * Add version coercion capabilities 17 | 18 | ## 5.4 19 | 20 | * Add intersection checking 21 | 22 | ## 5.3 23 | 24 | * Add `minSatisfying` method 25 | 26 | ## 5.2 27 | 28 | * Add `prerelease(v)` that returns prerelease components 29 | 30 | ## 5.1 31 | 32 | * Add Backus-Naur for ranges 33 | * Remove excessively cute inspection methods 34 | 35 | ## 5.0 36 | 37 | * Remove AMD/Browserified build artifacts 38 | * Fix ltr and gtr when using the `*` range 39 | * Fix for range `*` with a prerelease identifier 40 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/semver/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter and Contributors 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR 15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/semver/range.bnf: -------------------------------------------------------------------------------- 1 | range-set ::= range ( logical-or range ) * 2 | logical-or ::= ( ' ' ) * '||' ( ' ' ) * 3 | range ::= hyphen | simple ( ' ' simple ) * | '' 4 | hyphen ::= partial ' - ' partial 5 | simple ::= primitive | partial | tilde | caret 6 | primitive ::= ( '<' | '>' | '>=' | '<=' | '=' ) partial 7 | partial ::= xr ( '.' xr ( '.' xr qualifier ? )? )? 8 | xr ::= 'x' | 'X' | '*' | nr 9 | nr ::= '0' | [1-9] ( [0-9] ) * 10 | tilde ::= '~' partial 11 | caret ::= '^' partial 12 | qualifier ::= ( '-' pre )? ( '+' build )? 13 | pre ::= parts 14 | build ::= parts 15 | parts ::= part ( '.' part ) * 16 | part ::= nr | [-0-9A-Za-z]+ 17 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/sparse-bitfield/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/sparse-bitfield/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - '0.10' 4 | - '0.12' 5 | - '4.0' 6 | - '5.0' 7 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/sparse-bitfield/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Mathias Buus 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/string_decoder/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: node_js 3 | before_install: 4 | - npm install -g npm@2 5 | - test $NPM_LEGACY && npm install -g npm@latest-3 || npm install npm -g 6 | notifications: 7 | email: false 8 | matrix: 9 | fast_finish: true 10 | include: 11 | - node_js: '0.8' 12 | env: 13 | - TASK=test 14 | - NPM_LEGACY=true 15 | - node_js: '0.10' 16 | env: 17 | - TASK=test 18 | - NPM_LEGACY=true 19 | - node_js: '0.11' 20 | env: 21 | - TASK=test 22 | - NPM_LEGACY=true 23 | - node_js: '0.12' 24 | env: 25 | - TASK=test 26 | - NPM_LEGACY=true 27 | - node_js: 1 28 | env: 29 | - TASK=test 30 | - NPM_LEGACY=true 31 | - node_js: 2 32 | env: 33 | - TASK=test 34 | - NPM_LEGACY=true 35 | - node_js: 3 36 | env: 37 | - TASK=test 38 | - NPM_LEGACY=true 39 | - node_js: 4 40 | env: TASK=test 41 | - node_js: 5 42 | env: TASK=test 43 | - node_js: 6 44 | env: TASK=test 45 | - node_js: 7 46 | env: TASK=test 47 | - node_js: 8 48 | env: TASK=test 49 | - node_js: 9 50 | env: TASK=test 51 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/string_decoder/node_modules/safe-buffer/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) Feross Aboukhadijeh 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/util-deprecate/History.md: -------------------------------------------------------------------------------- 1 | 2 | 1.0.2 / 2015-10-07 3 | ================== 4 | 5 | * use try/catch when checking `localStorage` (#3, @kumavis) 6 | 7 | 1.0.1 / 2014-11-25 8 | ================== 9 | 10 | * browser: use `console.warn()` for deprecation calls 11 | * browser: more jsdocs 12 | 13 | 1.0.0 / 2014-04-30 14 | ================== 15 | 16 | * initial commit 17 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/util-deprecate/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Nathan Rajlich 4 | 5 | Permission is hereby granted, free of charge, to any person 6 | obtaining a copy of this software and associated documentation 7 | files (the "Software"), to deal in the Software without 8 | restriction, including without limitation the rights to use, 9 | copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the 11 | Software is furnished to do so, subject to the following 12 | conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 19 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 20 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 21 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 22 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 23 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 24 | OTHER DEALINGS IN THE SOFTWARE. 25 | -------------------------------------------------------------------------------- /Node_With_Mongo/node_modules/util-deprecate/node.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * For Node.js, simply re-export the core `util.deprecate` function. 4 | */ 5 | 6 | module.exports = require('util').deprecate; 7 | -------------------------------------------------------------------------------- /Node_With_Mongo/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Node_With_Mongo", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1", 8 | "start": "node index.js" 9 | }, 10 | "keywords": [], 11 | "author": "Your Name", 12 | "license": "ISC", 13 | "dependencies": { 14 | "mongodb": "^3.6.2" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Node_With_MySQL/.idea/Node_With_MySQL.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Node_With_MySQL/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Node_With_MySQL/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Node_With_MySQL/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Node_With_MySQL/Node_With_MySQL.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/Node_With_MySQL/Node_With_MySQL.zip -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/bignumber.js/LICENCE: -------------------------------------------------------------------------------- 1 | The MIT Licence. 2 | 3 | Copyright (c) 2019 Michael Mclaughlin 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | 'Software'), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 19 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | 24 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/core-util-is/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright Node.js contributors. All rights reserved. 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to 5 | deal in the Software without restriction, including without limitation the 6 | rights to use, copy, modify, merge, publish, distribute, sublicense, and/or 7 | sell copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 18 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 19 | IN THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/core-util-is/README.md: -------------------------------------------------------------------------------- 1 | # core-util-is 2 | 3 | The `util.is*` functions introduced in Node v0.12. 4 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/inherits/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH 10 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND 11 | FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, 12 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 13 | LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR 14 | OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 15 | PERFORMANCE OF THIS SOFTWARE. 16 | 17 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/inherits/inherits.js: -------------------------------------------------------------------------------- 1 | try { 2 | var util = require('util'); 3 | /* istanbul ignore next */ 4 | if (typeof util.inherits !== 'function') throw ''; 5 | module.exports = util.inherits; 6 | } catch (e) { 7 | /* istanbul ignore next */ 8 | module.exports = require('./inherits_browser.js'); 9 | } 10 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/inherits/inherits_browser.js: -------------------------------------------------------------------------------- 1 | if (typeof Object.create === 'function') { 2 | // implementation from standard node.js 'util' module 3 | module.exports = function inherits(ctor, superCtor) { 4 | if (superCtor) { 5 | ctor.super_ = superCtor 6 | ctor.prototype = Object.create(superCtor.prototype, { 7 | constructor: { 8 | value: ctor, 9 | enumerable: false, 10 | writable: true, 11 | configurable: true 12 | } 13 | }) 14 | } 15 | }; 16 | } else { 17 | // old school shim for old browsers 18 | module.exports = function inherits(ctor, superCtor) { 19 | if (superCtor) { 20 | ctor.super_ = superCtor 21 | var TempCtor = function () {} 22 | TempCtor.prototype = superCtor.prototype 23 | ctor.prototype = new TempCtor() 24 | ctor.prototype.constructor = ctor 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/isarray/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/isarray/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "0.8" 4 | - "0.10" 5 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/isarray/Makefile: -------------------------------------------------------------------------------- 1 | 2 | test: 3 | @node_modules/.bin/tape test.js 4 | 5 | .PHONY: test 6 | 7 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/isarray/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name" : "isarray", 3 | "description" : "Array#isArray for older browsers", 4 | "version" : "0.0.1", 5 | "repository" : "juliangruber/isarray", 6 | "homepage": "https://github.com/juliangruber/isarray", 7 | "main" : "index.js", 8 | "scripts" : [ 9 | "index.js" 10 | ], 11 | "dependencies" : {}, 12 | "keywords": ["browser","isarray","array"], 13 | "author": { 14 | "name": "Julian Gruber", 15 | "email": "mail@juliangruber.com", 16 | "url": "http://juliangruber.com" 17 | }, 18 | "license": "MIT" 19 | } 20 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/isarray/index.js: -------------------------------------------------------------------------------- 1 | var toString = {}.toString; 2 | 3 | module.exports = Array.isArray || function (arr) { 4 | return toString.call(arr) == '[object Array]'; 5 | }; 6 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/isarray/test.js: -------------------------------------------------------------------------------- 1 | var isArray = require('./'); 2 | var test = require('tape'); 3 | 4 | test('is array', function(t){ 5 | t.ok(isArray([])); 6 | t.notOk(isArray({})); 7 | t.notOk(isArray(null)); 8 | t.notOk(isArray(false)); 9 | 10 | var obj = {}; 11 | obj[0] = true; 12 | t.notOk(isArray(obj)); 13 | 14 | var arr = []; 15 | arr.foo = 'bar'; 16 | t.ok(isArray(arr)); 17 | 18 | t.end(); 19 | }); 20 | 21 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/License: -------------------------------------------------------------------------------- 1 | Copyright (c) 2012 Felix Geisendörfer (felix@debuggable.com) and contributors 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/PoolConfig.js: -------------------------------------------------------------------------------- 1 | 2 | var ConnectionConfig = require('./ConnectionConfig'); 3 | 4 | module.exports = PoolConfig; 5 | function PoolConfig(options) { 6 | if (typeof options === 'string') { 7 | options = ConnectionConfig.parseUrl(options); 8 | } 9 | 10 | this.acquireTimeout = (options.acquireTimeout === undefined) 11 | ? 10 * 1000 12 | : Number(options.acquireTimeout); 13 | this.connectionConfig = new ConnectionConfig(options); 14 | this.waitForConnections = (options.waitForConnections === undefined) 15 | ? true 16 | : Boolean(options.waitForConnections); 17 | this.connectionLimit = (options.connectionLimit === undefined) 18 | ? 10 19 | : Number(options.connectionLimit); 20 | this.queueLimit = (options.queueLimit === undefined) 21 | ? 0 22 | : Number(options.queueLimit); 23 | } 24 | 25 | PoolConfig.prototype.newConnectionConfig = function newConnectionConfig() { 26 | var connectionConfig = new ConnectionConfig(this.connectionConfig); 27 | 28 | connectionConfig.clientFlags = this.connectionConfig.clientFlags; 29 | connectionConfig.maxPacketSize = this.connectionConfig.maxPacketSize; 30 | 31 | return connectionConfig; 32 | }; 33 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/PoolSelector.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * PoolSelector 4 | */ 5 | var PoolSelector = module.exports = {}; 6 | 7 | PoolSelector.RR = function PoolSelectorRoundRobin() { 8 | var index = 0; 9 | 10 | return function(clusterIds) { 11 | if (index >= clusterIds.length) { 12 | index = 0; 13 | } 14 | 15 | var clusterId = clusterIds[index++]; 16 | 17 | return clusterId; 18 | }; 19 | }; 20 | 21 | PoolSelector.RANDOM = function PoolSelectorRandom() { 22 | return function(clusterIds) { 23 | return clusterIds[Math.floor(Math.random() * clusterIds.length)]; 24 | }; 25 | }; 26 | 27 | PoolSelector.ORDER = function PoolSelectorOrder() { 28 | return function(clusterIds) { 29 | return clusterIds[0]; 30 | }; 31 | }; 32 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/BufferList.js: -------------------------------------------------------------------------------- 1 | 2 | module.exports = BufferList; 3 | function BufferList() { 4 | this.bufs = []; 5 | this.size = 0; 6 | } 7 | 8 | BufferList.prototype.shift = function shift() { 9 | var buf = this.bufs.shift(); 10 | 11 | if (buf) { 12 | this.size -= buf.length; 13 | } 14 | 15 | return buf; 16 | }; 17 | 18 | BufferList.prototype.push = function push(buf) { 19 | if (!buf || !buf.length) { 20 | return; 21 | } 22 | 23 | this.bufs.push(buf); 24 | this.size += buf.length; 25 | }; 26 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/PacketHeader.js: -------------------------------------------------------------------------------- 1 | module.exports = PacketHeader; 2 | function PacketHeader(length, number) { 3 | this.length = length; 4 | this.number = number; 5 | } 6 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/ResultSet.js: -------------------------------------------------------------------------------- 1 | module.exports = ResultSet; 2 | function ResultSet(resultSetHeaderPacket) { 3 | this.resultSetHeaderPacket = resultSetHeaderPacket; 4 | this.fieldPackets = []; 5 | this.eofPackets = []; 6 | this.rows = []; 7 | } 8 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/SqlString.js: -------------------------------------------------------------------------------- 1 | module.exports = require('sqlstring'); 2 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/Timer.js: -------------------------------------------------------------------------------- 1 | var Timers = require('timers'); 2 | 3 | module.exports = Timer; 4 | function Timer(object) { 5 | this._object = object; 6 | this._timeout = null; 7 | } 8 | 9 | Timer.prototype.active = function active() { 10 | if (this._timeout) { 11 | if (this._timeout.refresh) { 12 | this._timeout.refresh(); 13 | } else { 14 | Timers.active(this._timeout); 15 | } 16 | } 17 | }; 18 | 19 | Timer.prototype.start = function start(msecs) { 20 | this.stop(); 21 | this._timeout = Timers.setTimeout(this._onTimeout.bind(this), msecs); 22 | }; 23 | 24 | Timer.prototype.stop = function stop() { 25 | if (this._timeout) { 26 | Timers.clearTimeout(this._timeout); 27 | this._timeout = null; 28 | } 29 | }; 30 | 31 | Timer.prototype._onTimeout = function _onTimeout() { 32 | return this._object._onTimeout(); 33 | }; 34 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/constants/field_flags.js: -------------------------------------------------------------------------------- 1 | // Manually extracted from mysql-5.5.23/include/mysql_com.h 2 | exports.NOT_NULL_FLAG = 1; /* Field can't be NULL */ 3 | exports.PRI_KEY_FLAG = 2; /* Field is part of a primary key */ 4 | exports.UNIQUE_KEY_FLAG = 4; /* Field is part of a unique key */ 5 | exports.MULTIPLE_KEY_FLAG = 8; /* Field is part of a key */ 6 | exports.BLOB_FLAG = 16; /* Field is a blob */ 7 | exports.UNSIGNED_FLAG = 32; /* Field is unsigned */ 8 | exports.ZEROFILL_FLAG = 64; /* Field is zerofill */ 9 | exports.BINARY_FLAG = 128; /* Field is binary */ 10 | 11 | /* The following are only sent to new clients */ 12 | exports.ENUM_FLAG = 256; /* field is an enum */ 13 | exports.AUTO_INCREMENT_FLAG = 512; /* field is a autoincrement field */ 14 | exports.TIMESTAMP_FLAG = 1024; /* Field is a timestamp */ 15 | exports.SET_FLAG = 2048; /* field is a set */ 16 | exports.NO_DEFAULT_VALUE_FLAG = 4096; /* Field doesn't have default value */ 17 | exports.ON_UPDATE_NOW_FLAG = 8192; /* Field is set to NOW on UPDATE */ 18 | exports.NUM_FLAG = 32768; /* Field is num (for clients) */ 19 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/constants/server_status.js: -------------------------------------------------------------------------------- 1 | // Manually extracted from mysql-5.5.23/include/mysql_com.h 2 | 3 | /** 4 | Is raised when a multi-statement transaction 5 | has been started, either explicitly, by means 6 | of BEGIN or COMMIT AND CHAIN, or 7 | implicitly, by the first transactional 8 | statement, when autocommit=off. 9 | */ 10 | exports.SERVER_STATUS_IN_TRANS = 1; 11 | exports.SERVER_STATUS_AUTOCOMMIT = 2; /* Server in auto_commit mode */ 12 | exports.SERVER_MORE_RESULTS_EXISTS = 8; /* Multi query - next query exists */ 13 | exports.SERVER_QUERY_NO_GOOD_INDEX_USED = 16; 14 | exports.SERVER_QUERY_NO_INDEX_USED = 32; 15 | /** 16 | The server was able to fulfill the clients request and opened a 17 | read-only non-scrollable cursor for a query. This flag comes 18 | in reply to COM_STMT_EXECUTE and COM_STMT_FETCH commands. 19 | */ 20 | exports.SERVER_STATUS_CURSOR_EXISTS = 64; 21 | /** 22 | This flag is sent when a read-only cursor is exhausted, in reply to 23 | COM_STMT_FETCH command. 24 | */ 25 | exports.SERVER_STATUS_LAST_ROW_SENT = 128; 26 | exports.SERVER_STATUS_DB_DROPPED = 256; /* A database was dropped */ 27 | exports.SERVER_STATUS_NO_BACKSLASH_ESCAPES = 512; 28 | /** 29 | Sent to the client if after a prepared statement reprepare 30 | we discovered that the new statement returns a different 31 | number of result set columns. 32 | */ 33 | exports.SERVER_STATUS_METADATA_CHANGED = 1024; 34 | exports.SERVER_QUERY_WAS_SLOW = 2048; 35 | 36 | /** 37 | To mark ResultSet containing output parameter values. 38 | */ 39 | exports.SERVER_PS_OUT_PARAMS = 4096; 40 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/AuthSwitchRequestPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = AuthSwitchRequestPacket; 2 | function AuthSwitchRequestPacket(options) { 3 | options = options || {}; 4 | 5 | this.status = 0xfe; 6 | this.authMethodName = options.authMethodName; 7 | this.authMethodData = options.authMethodData; 8 | } 9 | 10 | AuthSwitchRequestPacket.prototype.parse = function parse(parser) { 11 | this.status = parser.parseUnsignedNumber(1); 12 | this.authMethodName = parser.parseNullTerminatedString(); 13 | this.authMethodData = parser.parsePacketTerminatedBuffer(); 14 | }; 15 | 16 | AuthSwitchRequestPacket.prototype.write = function write(writer) { 17 | writer.writeUnsignedNumber(1, this.status); 18 | writer.writeNullTerminatedString(this.authMethodName); 19 | writer.writeBuffer(this.authMethodData); 20 | }; 21 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/AuthSwitchResponsePacket.js: -------------------------------------------------------------------------------- 1 | module.exports = AuthSwitchResponsePacket; 2 | function AuthSwitchResponsePacket(options) { 3 | options = options || {}; 4 | 5 | this.data = options.data; 6 | } 7 | 8 | AuthSwitchResponsePacket.prototype.parse = function parse(parser) { 9 | this.data = parser.parsePacketTerminatedBuffer(); 10 | }; 11 | 12 | AuthSwitchResponsePacket.prototype.write = function write(writer) { 13 | writer.writeBuffer(this.data); 14 | }; 15 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/ComChangeUserPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = ComChangeUserPacket; 2 | function ComChangeUserPacket(options) { 3 | options = options || {}; 4 | 5 | this.command = 0x11; 6 | this.user = options.user; 7 | this.scrambleBuff = options.scrambleBuff; 8 | this.database = options.database; 9 | this.charsetNumber = options.charsetNumber; 10 | } 11 | 12 | ComChangeUserPacket.prototype.parse = function(parser) { 13 | this.command = parser.parseUnsignedNumber(1); 14 | this.user = parser.parseNullTerminatedString(); 15 | this.scrambleBuff = parser.parseLengthCodedBuffer(); 16 | this.database = parser.parseNullTerminatedString(); 17 | this.charsetNumber = parser.parseUnsignedNumber(1); 18 | }; 19 | 20 | ComChangeUserPacket.prototype.write = function(writer) { 21 | writer.writeUnsignedNumber(1, this.command); 22 | writer.writeNullTerminatedString(this.user); 23 | writer.writeLengthCodedBuffer(this.scrambleBuff); 24 | writer.writeNullTerminatedString(this.database); 25 | writer.writeUnsignedNumber(2, this.charsetNumber); 26 | }; 27 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/ComPingPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = ComPingPacket; 2 | function ComPingPacket() { 3 | this.command = 0x0e; 4 | } 5 | 6 | ComPingPacket.prototype.write = function(writer) { 7 | writer.writeUnsignedNumber(1, this.command); 8 | }; 9 | 10 | ComPingPacket.prototype.parse = function(parser) { 11 | this.command = parser.parseUnsignedNumber(1); 12 | }; 13 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/ComQueryPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = ComQueryPacket; 2 | function ComQueryPacket(sql) { 3 | this.command = 0x03; 4 | this.sql = sql; 5 | } 6 | 7 | ComQueryPacket.prototype.write = function(writer) { 8 | writer.writeUnsignedNumber(1, this.command); 9 | writer.writeString(this.sql); 10 | }; 11 | 12 | ComQueryPacket.prototype.parse = function(parser) { 13 | this.command = parser.parseUnsignedNumber(1); 14 | this.sql = parser.parsePacketTerminatedString(); 15 | }; 16 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/ComQuitPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = ComQuitPacket; 2 | function ComQuitPacket() { 3 | this.command = 0x01; 4 | } 5 | 6 | ComQuitPacket.prototype.parse = function parse(parser) { 7 | this.command = parser.parseUnsignedNumber(1); 8 | }; 9 | 10 | ComQuitPacket.prototype.write = function write(writer) { 11 | writer.writeUnsignedNumber(1, this.command); 12 | }; 13 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/ComStatisticsPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = ComStatisticsPacket; 2 | function ComStatisticsPacket() { 3 | this.command = 0x09; 4 | } 5 | 6 | ComStatisticsPacket.prototype.write = function(writer) { 7 | writer.writeUnsignedNumber(1, this.command); 8 | }; 9 | 10 | ComStatisticsPacket.prototype.parse = function(parser) { 11 | this.command = parser.parseUnsignedNumber(1); 12 | }; 13 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/EmptyPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = EmptyPacket; 2 | function EmptyPacket() { 3 | } 4 | 5 | EmptyPacket.prototype.parse = function parse() { 6 | }; 7 | 8 | EmptyPacket.prototype.write = function write() { 9 | }; 10 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/EofPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = EofPacket; 2 | function EofPacket(options) { 3 | options = options || {}; 4 | 5 | this.fieldCount = undefined; 6 | this.warningCount = options.warningCount; 7 | this.serverStatus = options.serverStatus; 8 | this.protocol41 = options.protocol41; 9 | } 10 | 11 | EofPacket.prototype.parse = function(parser) { 12 | this.fieldCount = parser.parseUnsignedNumber(1); 13 | if (this.protocol41) { 14 | this.warningCount = parser.parseUnsignedNumber(2); 15 | this.serverStatus = parser.parseUnsignedNumber(2); 16 | } 17 | }; 18 | 19 | EofPacket.prototype.write = function(writer) { 20 | writer.writeUnsignedNumber(1, 0xfe); 21 | if (this.protocol41) { 22 | writer.writeUnsignedNumber(2, this.warningCount); 23 | writer.writeUnsignedNumber(2, this.serverStatus); 24 | } 25 | }; 26 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/ErrorPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = ErrorPacket; 2 | function ErrorPacket(options) { 3 | options = options || {}; 4 | 5 | this.fieldCount = options.fieldCount; 6 | this.errno = options.errno; 7 | this.sqlStateMarker = options.sqlStateMarker; 8 | this.sqlState = options.sqlState; 9 | this.message = options.message; 10 | } 11 | 12 | ErrorPacket.prototype.parse = function(parser) { 13 | this.fieldCount = parser.parseUnsignedNumber(1); 14 | this.errno = parser.parseUnsignedNumber(2); 15 | 16 | // sqlStateMarker ('#' = 0x23) indicates error packet format 17 | if (parser.peak() === 0x23) { 18 | this.sqlStateMarker = parser.parseString(1); 19 | this.sqlState = parser.parseString(5); 20 | } 21 | 22 | this.message = parser.parsePacketTerminatedString(); 23 | }; 24 | 25 | ErrorPacket.prototype.write = function(writer) { 26 | writer.writeUnsignedNumber(1, 0xff); 27 | writer.writeUnsignedNumber(2, this.errno); 28 | 29 | if (this.sqlStateMarker) { 30 | writer.writeString(this.sqlStateMarker); 31 | writer.writeString(this.sqlState); 32 | } 33 | 34 | writer.writeString(this.message); 35 | }; 36 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/Field.js: -------------------------------------------------------------------------------- 1 | var Types = require('../constants/types'); 2 | 3 | module.exports = Field; 4 | function Field(options) { 5 | options = options || {}; 6 | 7 | this.parser = options.parser; 8 | this.packet = options.packet; 9 | this.db = options.packet.db; 10 | this.table = options.packet.table; 11 | this.name = options.packet.name; 12 | this.type = Types[options.packet.type]; 13 | this.length = options.packet.length; 14 | } 15 | 16 | Field.prototype.string = function () { 17 | return this.parser.parseLengthCodedString(); 18 | }; 19 | 20 | Field.prototype.buffer = function () { 21 | return this.parser.parseLengthCodedBuffer(); 22 | }; 23 | 24 | Field.prototype.geometry = function () { 25 | return this.parser.parseGeometryValue(); 26 | }; 27 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/LocalDataFilePacket.js: -------------------------------------------------------------------------------- 1 | module.exports = LocalDataFilePacket; 2 | 3 | /** 4 | * Create a new LocalDataFilePacket 5 | * @constructor 6 | * @param {Buffer} data The data contents of the packet 7 | * @public 8 | */ 9 | function LocalDataFilePacket(data) { 10 | this.data = data; 11 | } 12 | 13 | LocalDataFilePacket.prototype.write = function(writer) { 14 | writer.writeBuffer(this.data); 15 | }; 16 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/LocalInfileRequestPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = LocalInfileRequestPacket; 2 | function LocalInfileRequestPacket(options) { 3 | options = options || {}; 4 | 5 | this.filename = options.filename; 6 | } 7 | 8 | LocalInfileRequestPacket.prototype.parse = function parse(parser) { 9 | if (parser.parseLengthCodedNumber() !== null) { 10 | var err = new TypeError('Received invalid field length'); 11 | err.code = 'PARSER_INVALID_FIELD_LENGTH'; 12 | throw err; 13 | } 14 | 15 | this.filename = parser.parsePacketTerminatedString(); 16 | }; 17 | 18 | LocalInfileRequestPacket.prototype.write = function write(writer) { 19 | writer.writeLengthCodedNumber(null); 20 | writer.writeString(this.filename); 21 | }; 22 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/OkPacket.js: -------------------------------------------------------------------------------- 1 | 2 | // Language-neutral expression to match ER_UPDATE_INFO 3 | var ER_UPDATE_INFO_REGEXP = /^[^:0-9]+: [0-9]+[^:0-9]+: ([0-9]+)[^:0-9]+: [0-9]+[^:0-9]*$/; 4 | 5 | module.exports = OkPacket; 6 | function OkPacket(options) { 7 | options = options || {}; 8 | 9 | this.fieldCount = undefined; 10 | this.affectedRows = undefined; 11 | this.insertId = undefined; 12 | this.serverStatus = undefined; 13 | this.warningCount = undefined; 14 | this.message = undefined; 15 | this.protocol41 = options.protocol41; 16 | } 17 | 18 | OkPacket.prototype.parse = function(parser) { 19 | this.fieldCount = parser.parseUnsignedNumber(1); 20 | this.affectedRows = parser.parseLengthCodedNumber(); 21 | this.insertId = parser.parseLengthCodedNumber(); 22 | if (this.protocol41) { 23 | this.serverStatus = parser.parseUnsignedNumber(2); 24 | this.warningCount = parser.parseUnsignedNumber(2); 25 | } 26 | this.message = parser.parsePacketTerminatedString(); 27 | this.changedRows = 0; 28 | 29 | var m = ER_UPDATE_INFO_REGEXP.exec(this.message); 30 | if (m !== null) { 31 | this.changedRows = parseInt(m[1], 10); 32 | } 33 | }; 34 | 35 | OkPacket.prototype.write = function(writer) { 36 | writer.writeUnsignedNumber(1, 0x00); 37 | writer.writeLengthCodedNumber(this.affectedRows || 0); 38 | writer.writeLengthCodedNumber(this.insertId || 0); 39 | if (this.protocol41) { 40 | writer.writeUnsignedNumber(2, this.serverStatus || 0); 41 | writer.writeUnsignedNumber(2, this.warningCount || 0); 42 | } 43 | writer.writeString(this.message); 44 | }; 45 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/OldPasswordPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = OldPasswordPacket; 2 | function OldPasswordPacket(options) { 3 | options = options || {}; 4 | 5 | this.scrambleBuff = options.scrambleBuff; 6 | } 7 | 8 | OldPasswordPacket.prototype.parse = function(parser) { 9 | this.scrambleBuff = parser.parsePacketTerminatedBuffer(); 10 | }; 11 | 12 | OldPasswordPacket.prototype.write = function(writer) { 13 | writer.writeBuffer(this.scrambleBuff); 14 | }; 15 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/ResultSetHeaderPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = ResultSetHeaderPacket; 2 | function ResultSetHeaderPacket(options) { 3 | options = options || {}; 4 | 5 | this.fieldCount = options.fieldCount; 6 | } 7 | 8 | ResultSetHeaderPacket.prototype.parse = function(parser) { 9 | this.fieldCount = parser.parseLengthCodedNumber(); 10 | }; 11 | 12 | ResultSetHeaderPacket.prototype.write = function(writer) { 13 | writer.writeLengthCodedNumber(this.fieldCount); 14 | }; 15 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/SSLRequestPacket.js: -------------------------------------------------------------------------------- 1 | // http://dev.mysql.com/doc/internals/en/ssl.html 2 | // http://dev.mysql.com/doc/internals/en/connection-phase-packets.html#packet-Protocol::SSLRequest 3 | 4 | var ClientConstants = require('../constants/client'); 5 | 6 | module.exports = SSLRequestPacket; 7 | 8 | function SSLRequestPacket(options) { 9 | options = options || {}; 10 | this.clientFlags = options.clientFlags | ClientConstants.CLIENT_SSL; 11 | this.maxPacketSize = options.maxPacketSize; 12 | this.charsetNumber = options.charsetNumber; 13 | } 14 | 15 | SSLRequestPacket.prototype.parse = function(parser) { 16 | // TODO: check SSLRequest packet v41 vs pre v41 17 | this.clientFlags = parser.parseUnsignedNumber(4); 18 | this.maxPacketSize = parser.parseUnsignedNumber(4); 19 | this.charsetNumber = parser.parseUnsignedNumber(1); 20 | }; 21 | 22 | SSLRequestPacket.prototype.write = function(writer) { 23 | writer.writeUnsignedNumber(4, this.clientFlags); 24 | writer.writeUnsignedNumber(4, this.maxPacketSize); 25 | writer.writeUnsignedNumber(1, this.charsetNumber); 26 | writer.writeFiller(23); 27 | }; 28 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/StatisticsPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = StatisticsPacket; 2 | function StatisticsPacket() { 3 | this.message = undefined; 4 | } 5 | 6 | StatisticsPacket.prototype.parse = function(parser) { 7 | this.message = parser.parsePacketTerminatedString(); 8 | 9 | var items = this.message.split(/\s\s/); 10 | for (var i = 0; i < items.length; i++) { 11 | var m = items[i].match(/^(.+)\:\s+(.+)$/); 12 | if (m !== null) { 13 | this[m[1].toLowerCase().replace(/\s/g, '_')] = Number(m[2]); 14 | } 15 | } 16 | }; 17 | 18 | StatisticsPacket.prototype.write = function(writer) { 19 | writer.writeString(this.message); 20 | }; 21 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/UseOldPasswordPacket.js: -------------------------------------------------------------------------------- 1 | module.exports = UseOldPasswordPacket; 2 | function UseOldPasswordPacket(options) { 3 | options = options || {}; 4 | 5 | this.firstByte = options.firstByte || 0xfe; 6 | } 7 | 8 | UseOldPasswordPacket.prototype.parse = function(parser) { 9 | this.firstByte = parser.parseUnsignedNumber(1); 10 | }; 11 | 12 | UseOldPasswordPacket.prototype.write = function(writer) { 13 | writer.writeUnsignedNumber(1, this.firstByte); 14 | }; 15 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/packets/index.js: -------------------------------------------------------------------------------- 1 | exports.AuthSwitchRequestPacket = require('./AuthSwitchRequestPacket'); 2 | exports.AuthSwitchResponsePacket = require('./AuthSwitchResponsePacket'); 3 | exports.ClientAuthenticationPacket = require('./ClientAuthenticationPacket'); 4 | exports.ComChangeUserPacket = require('./ComChangeUserPacket'); 5 | exports.ComPingPacket = require('./ComPingPacket'); 6 | exports.ComQueryPacket = require('./ComQueryPacket'); 7 | exports.ComQuitPacket = require('./ComQuitPacket'); 8 | exports.ComStatisticsPacket = require('./ComStatisticsPacket'); 9 | exports.EmptyPacket = require('./EmptyPacket'); 10 | exports.EofPacket = require('./EofPacket'); 11 | exports.ErrorPacket = require('./ErrorPacket'); 12 | exports.Field = require('./Field'); 13 | exports.FieldPacket = require('./FieldPacket'); 14 | exports.HandshakeInitializationPacket = require('./HandshakeInitializationPacket'); 15 | exports.LocalDataFilePacket = require('./LocalDataFilePacket'); 16 | exports.LocalInfileRequestPacket = require('./LocalInfileRequestPacket'); 17 | exports.OkPacket = require('./OkPacket'); 18 | exports.OldPasswordPacket = require('./OldPasswordPacket'); 19 | exports.ResultSetHeaderPacket = require('./ResultSetHeaderPacket'); 20 | exports.RowDataPacket = require('./RowDataPacket'); 21 | exports.SSLRequestPacket = require('./SSLRequestPacket'); 22 | exports.StatisticsPacket = require('./StatisticsPacket'); 23 | exports.UseOldPasswordPacket = require('./UseOldPasswordPacket'); 24 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/sequences/Ping.js: -------------------------------------------------------------------------------- 1 | var Sequence = require('./Sequence'); 2 | var Util = require('util'); 3 | var Packets = require('../packets'); 4 | 5 | module.exports = Ping; 6 | Util.inherits(Ping, Sequence); 7 | 8 | function Ping(options, callback) { 9 | if (!callback && typeof options === 'function') { 10 | callback = options; 11 | options = {}; 12 | } 13 | 14 | Sequence.call(this, options, callback); 15 | } 16 | 17 | Ping.prototype.start = function() { 18 | this.emit('packet', new Packets.ComPingPacket()); 19 | }; 20 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/sequences/Quit.js: -------------------------------------------------------------------------------- 1 | var Sequence = require('./Sequence'); 2 | var Util = require('util'); 3 | var Packets = require('../packets'); 4 | 5 | module.exports = Quit; 6 | Util.inherits(Quit, Sequence); 7 | function Quit(options, callback) { 8 | if (!callback && typeof options === 'function') { 9 | callback = options; 10 | options = {}; 11 | } 12 | 13 | Sequence.call(this, options, callback); 14 | 15 | this._started = false; 16 | } 17 | 18 | Quit.prototype.end = function end(err) { 19 | if (this._ended) { 20 | return; 21 | } 22 | 23 | if (!this._started) { 24 | Sequence.prototype.end.call(this, err); 25 | return; 26 | } 27 | 28 | if (err && err.code === 'ECONNRESET' && err.syscall === 'read') { 29 | // Ignore read errors after packet sent 30 | Sequence.prototype.end.call(this); 31 | return; 32 | } 33 | 34 | Sequence.prototype.end.call(this, err); 35 | }; 36 | 37 | Quit.prototype.start = function() { 38 | this._started = true; 39 | this.emit('packet', new Packets.ComQuitPacket()); 40 | }; 41 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/sequences/Statistics.js: -------------------------------------------------------------------------------- 1 | var Sequence = require('./Sequence'); 2 | var Util = require('util'); 3 | var Packets = require('../packets'); 4 | 5 | module.exports = Statistics; 6 | Util.inherits(Statistics, Sequence); 7 | function Statistics(options, callback) { 8 | if (!callback && typeof options === 'function') { 9 | callback = options; 10 | options = {}; 11 | } 12 | 13 | Sequence.call(this, options, callback); 14 | } 15 | 16 | Statistics.prototype.start = function() { 17 | this.emit('packet', new Packets.ComStatisticsPacket()); 18 | }; 19 | 20 | Statistics.prototype['StatisticsPacket'] = function (packet) { 21 | this.end(null, packet); 22 | }; 23 | 24 | Statistics.prototype.determinePacket = function determinePacket(firstByte) { 25 | if (firstByte === 0x55) { 26 | return Packets.StatisticsPacket; 27 | } 28 | 29 | return undefined; 30 | }; 31 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/mysql/lib/protocol/sequences/index.js: -------------------------------------------------------------------------------- 1 | exports.ChangeUser = require('./ChangeUser'); 2 | exports.Handshake = require('./Handshake'); 3 | exports.Ping = require('./Ping'); 4 | exports.Query = require('./Query'); 5 | exports.Quit = require('./Quit'); 6 | exports.Sequence = require('./Sequence'); 7 | exports.Statistics = require('./Statistics'); 8 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/process-nextick-args/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | if (typeof process === 'undefined' || 4 | !process.version || 5 | process.version.indexOf('v0.') === 0 || 6 | process.version.indexOf('v1.') === 0 && process.version.indexOf('v1.8.') !== 0) { 7 | module.exports = { nextTick: nextTick }; 8 | } else { 9 | module.exports = process 10 | } 11 | 12 | function nextTick(fn, arg1, arg2, arg3) { 13 | if (typeof fn !== 'function') { 14 | throw new TypeError('"callback" argument must be a function'); 15 | } 16 | var len = arguments.length; 17 | var args, i; 18 | switch (len) { 19 | case 0: 20 | case 1: 21 | return process.nextTick(fn); 22 | case 2: 23 | return process.nextTick(function afterTickOne() { 24 | fn.call(null, arg1); 25 | }); 26 | case 3: 27 | return process.nextTick(function afterTickTwo() { 28 | fn.call(null, arg1, arg2); 29 | }); 30 | case 4: 31 | return process.nextTick(function afterTickThree() { 32 | fn.call(null, arg1, arg2, arg3); 33 | }); 34 | default: 35 | args = new Array(len - 1); 36 | i = 0; 37 | while (i < args.length) { 38 | args[i++] = arguments[i]; 39 | } 40 | return process.nextTick(function afterTick() { 41 | fn.apply(null, args); 42 | }); 43 | } 44 | } 45 | 46 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/process-nextick-args/license.md: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2015 Calvin Metcalf 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | **THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 19 | SOFTWARE.** 20 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/process-nextick-args/readme.md: -------------------------------------------------------------------------------- 1 | process-nextick-args 2 | ===== 3 | 4 | [![Build Status](https://travis-ci.org/calvinmetcalf/process-nextick-args.svg?branch=master)](https://travis-ci.org/calvinmetcalf/process-nextick-args) 5 | 6 | ```bash 7 | npm install --save process-nextick-args 8 | ``` 9 | 10 | Always be able to pass arguments to process.nextTick, no matter the platform 11 | 12 | ```js 13 | var pna = require('process-nextick-args'); 14 | 15 | pna.nextTick(function (a, b, c) { 16 | console.log(a, b, c); 17 | }, 'step', 3, 'profit'); 18 | ``` 19 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/readable-stream/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: node_js 3 | before_install: 4 | - (test $NPM_LEGACY && npm install -g npm@2 && npm install -g npm@3) || true 5 | notifications: 6 | email: false 7 | matrix: 8 | fast_finish: true 9 | include: 10 | - node_js: '0.8' 11 | env: NPM_LEGACY=true 12 | - node_js: '0.10' 13 | env: NPM_LEGACY=true 14 | - node_js: '0.11' 15 | env: NPM_LEGACY=true 16 | - node_js: '0.12' 17 | env: NPM_LEGACY=true 18 | - node_js: 1 19 | env: NPM_LEGACY=true 20 | - node_js: 2 21 | env: NPM_LEGACY=true 22 | - node_js: 3 23 | env: NPM_LEGACY=true 24 | - node_js: 4 25 | - node_js: 5 26 | - node_js: 6 27 | - node_js: 7 28 | - node_js: 8 29 | - node_js: 9 30 | script: "npm run test" 31 | env: 32 | global: 33 | - secure: rE2Vvo7vnjabYNULNyLFxOyt98BoJexDqsiOnfiD6kLYYsiQGfr/sbZkPMOFm9qfQG7pjqx+zZWZjGSswhTt+626C0t/njXqug7Yps4c3dFblzGfreQHp7wNX5TFsvrxd6dAowVasMp61sJcRnB2w8cUzoe3RAYUDHyiHktwqMc= 34 | - secure: g9YINaKAdMatsJ28G9jCGbSaguXCyxSTy+pBO6Ch0Cf57ZLOTka3HqDj8p3nV28LUIHZ3ut5WO43CeYKwt4AUtLpBS3a0dndHdY6D83uY6b2qh5hXlrcbeQTq2cvw2y95F7hm4D1kwrgZ7ViqaKggRcEupAL69YbJnxeUDKWEdI= 35 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/readable-stream/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Developer's Certificate of Origin 1.1 2 | 3 | By making a contribution to this project, I certify that: 4 | 5 | * (a) The contribution was created in whole or in part by me and I 6 | have the right to submit it under the open source license 7 | indicated in the file; or 8 | 9 | * (b) The contribution is based upon previous work that, to the best 10 | of my knowledge, is covered under an appropriate open source 11 | license and I have the right under that license to submit that 12 | work with modifications, whether created in whole or in part 13 | by me, under the same open source license (unless I am 14 | permitted to submit under a different license), as indicated 15 | in the file; or 16 | 17 | * (c) The contribution was provided directly to me by some other 18 | person who certified (a), (b) or (c) and I have not modified 19 | it. 20 | 21 | * (d) I understand and agree that this project and the contribution 22 | are public and that a record of the contribution (including all 23 | personal information I submit with it, including my sign-off) is 24 | maintained indefinitely and may be redistributed consistent with 25 | this project or the open source license(s) involved. 26 | 27 | ## Moderation Policy 28 | 29 | The [Node.js Moderation Policy] applies to this WG. 30 | 31 | ## Code of Conduct 32 | 33 | The [Node.js Code of Conduct][] applies to this WG. 34 | 35 | [Node.js Code of Conduct]: 36 | https://github.com/nodejs/node/blob/master/CODE_OF_CONDUCT.md 37 | [Node.js Moderation Policy]: 38 | https://github.com/nodejs/TSC/blob/master/Moderation-Policy.md 39 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/readable-stream/duplex-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/_stream_duplex.js'); 2 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/readable-stream/duplex.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./readable').Duplex 2 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/readable-stream/lib/internal/streams/stream-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('events').EventEmitter; 2 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/readable-stream/lib/internal/streams/stream.js: -------------------------------------------------------------------------------- 1 | module.exports = require('stream'); 2 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/readable-stream/passthrough.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./readable').PassThrough 2 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/readable-stream/readable-browser.js: -------------------------------------------------------------------------------- 1 | exports = module.exports = require('./lib/_stream_readable.js'); 2 | exports.Stream = exports; 3 | exports.Readable = exports; 4 | exports.Writable = require('./lib/_stream_writable.js'); 5 | exports.Duplex = require('./lib/_stream_duplex.js'); 6 | exports.Transform = require('./lib/_stream_transform.js'); 7 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 8 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/readable-stream/readable.js: -------------------------------------------------------------------------------- 1 | var Stream = require('stream'); 2 | if (process.env.READABLE_STREAM === 'disable' && Stream) { 3 | module.exports = Stream; 4 | exports = module.exports = Stream.Readable; 5 | exports.Readable = Stream.Readable; 6 | exports.Writable = Stream.Writable; 7 | exports.Duplex = Stream.Duplex; 8 | exports.Transform = Stream.Transform; 9 | exports.PassThrough = Stream.PassThrough; 10 | exports.Stream = Stream; 11 | } else { 12 | exports = module.exports = require('./lib/_stream_readable.js'); 13 | exports.Stream = Stream || exports; 14 | exports.Readable = exports; 15 | exports.Writable = require('./lib/_stream_writable.js'); 16 | exports.Duplex = require('./lib/_stream_duplex.js'); 17 | exports.Transform = require('./lib/_stream_transform.js'); 18 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 19 | } 20 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/readable-stream/transform.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./readable').Transform 2 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/readable-stream/writable-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/_stream_writable.js'); 2 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/readable-stream/writable.js: -------------------------------------------------------------------------------- 1 | var Stream = require("stream") 2 | var Writable = require("./lib/_stream_writable.js") 3 | 4 | if (process.env.READABLE_STREAM === 'disable') { 5 | module.exports = Stream && Stream.Writable || Writable 6 | } else { 7 | module.exports = Writable 8 | } 9 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/safe-buffer/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) Feross Aboukhadijeh 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/sqlstring/HISTORY.md: -------------------------------------------------------------------------------- 1 | 2.3.1 / 2018-02-24 2 | ================== 3 | 4 | * Fix incorrectly replacing non-placeholders in SQL 5 | 6 | 2.3.0 / 2017-10-01 7 | ================== 8 | 9 | * Add `.toSqlString()` escape overriding 10 | * Add `raw` method to wrap raw strings for escape overriding 11 | * Small performance improvement on `escapeId` 12 | 13 | 2.2.0 / 2016-11-01 14 | ================== 15 | 16 | * Escape invalid `Date` objects as `NULL` 17 | 18 | 2.1.0 / 2016-09-26 19 | ================== 20 | 21 | * Accept numbers and other value types in `escapeId` 22 | * Run `buffer.toString()` through escaping 23 | 24 | 2.0.1 / 2016-06-06 25 | ================== 26 | 27 | * Fix npm package to include missing `lib/` directory 28 | 29 | 2.0.0 / 2016-06-06 30 | ================== 31 | 32 | * Bring repository up-to-date with `mysql` module changes 33 | * Support Node.js 0.6.x 34 | 35 | 1.0.0 / 2014-11-09 36 | ================== 37 | 38 | * Support Node.js 0.8.x 39 | 40 | 0.0.1 / 2014-02-25 41 | ================== 42 | 43 | * Initial release 44 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/sqlstring/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2012 Felix Geisendörfer (felix@debuggable.com) and contributors 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/sqlstring/index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/SqlString'); 2 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/string_decoder/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: node_js 3 | before_install: 4 | - npm install -g npm@2 5 | - test $NPM_LEGACY && npm install -g npm@latest-3 || npm install npm -g 6 | notifications: 7 | email: false 8 | matrix: 9 | fast_finish: true 10 | include: 11 | - node_js: '0.8' 12 | env: 13 | - TASK=test 14 | - NPM_LEGACY=true 15 | - node_js: '0.10' 16 | env: 17 | - TASK=test 18 | - NPM_LEGACY=true 19 | - node_js: '0.11' 20 | env: 21 | - TASK=test 22 | - NPM_LEGACY=true 23 | - node_js: '0.12' 24 | env: 25 | - TASK=test 26 | - NPM_LEGACY=true 27 | - node_js: 1 28 | env: 29 | - TASK=test 30 | - NPM_LEGACY=true 31 | - node_js: 2 32 | env: 33 | - TASK=test 34 | - NPM_LEGACY=true 35 | - node_js: 3 36 | env: 37 | - TASK=test 38 | - NPM_LEGACY=true 39 | - node_js: 4 40 | env: TASK=test 41 | - node_js: 5 42 | env: TASK=test 43 | - node_js: 6 44 | env: TASK=test 45 | - node_js: 7 46 | env: TASK=test 47 | - node_js: 8 48 | env: TASK=test 49 | - node_js: 9 50 | env: TASK=test 51 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/util-deprecate/History.md: -------------------------------------------------------------------------------- 1 | 2 | 1.0.2 / 2015-10-07 3 | ================== 4 | 5 | * use try/catch when checking `localStorage` (#3, @kumavis) 6 | 7 | 1.0.1 / 2014-11-25 8 | ================== 9 | 10 | * browser: use `console.warn()` for deprecation calls 11 | * browser: more jsdocs 12 | 13 | 1.0.0 / 2014-04-30 14 | ================== 15 | 16 | * initial commit 17 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/util-deprecate/LICENSE: -------------------------------------------------------------------------------- 1 | (The MIT License) 2 | 3 | Copyright (c) 2014 Nathan Rajlich 4 | 5 | Permission is hereby granted, free of charge, to any person 6 | obtaining a copy of this software and associated documentation 7 | files (the "Software"), to deal in the Software without 8 | restriction, including without limitation the rights to use, 9 | copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the 11 | Software is furnished to do so, subject to the following 12 | conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 19 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 20 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 21 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 22 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 23 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 24 | OTHER DEALINGS IN THE SOFTWARE. 25 | -------------------------------------------------------------------------------- /Node_With_MySQL/node_modules/util-deprecate/node.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * For Node.js, simply re-export the core `util.deprecate` function. 4 | */ 5 | 6 | module.exports = require('util').deprecate; 7 | -------------------------------------------------------------------------------- /Node_With_MySQL/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Node_With_MySQL", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1", 8 | "start": "node index.js" 9 | }, 10 | "keywords": [], 11 | "author": "Your Name", 12 | "license": "ISC", 13 | "dependencies": { 14 | "mysql": "^2.18.1" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /PowerPointSlides/1.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/1.pptx -------------------------------------------------------------------------------- /PowerPointSlides/10.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/10.pptx -------------------------------------------------------------------------------- /PowerPointSlides/11 Node js MySQL.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/11 Node js MySQL.pptx -------------------------------------------------------------------------------- /PowerPointSlides/13 Node js MongoDB Atlas.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/13 Node js MongoDB Atlas.pptx -------------------------------------------------------------------------------- /PowerPointSlides/14 Node js MongoDB Self Server.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/14 Node js MongoDB Self Server.pptx -------------------------------------------------------------------------------- /PowerPointSlides/15 Node js debugging.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/15 Node js debugging.pptx -------------------------------------------------------------------------------- /PowerPointSlides/2.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/2.pptx -------------------------------------------------------------------------------- /PowerPointSlides/3.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/3.pptx -------------------------------------------------------------------------------- /PowerPointSlides/4.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/4.pptx -------------------------------------------------------------------------------- /PowerPointSlides/5.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/5.pptx -------------------------------------------------------------------------------- /PowerPointSlides/6.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/6.pptx -------------------------------------------------------------------------------- /PowerPointSlides/7.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/7.pptx -------------------------------------------------------------------------------- /PowerPointSlides/8.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/8.pptx -------------------------------------------------------------------------------- /PowerPointSlides/9.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/PowerPointSlides/9.pptx -------------------------------------------------------------------------------- /PowerPointSlides/~$11 Node js MySQL.pptx: -------------------------------------------------------------------------------- 1 | Rabbil Rabbil -------------------------------------------------------------------------------- /Preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rupomsoft/Node.js-Tutorial-Bangla/f47bd1183c16a283d979ab39f7223aecc87f1f95/Preview.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Node.js Tutorial Bangla 2 | Learn With Rabbil Hasan, 3 | Learn Something Good & Do Something Better 4 | 5 | ### Preview 6 | 7 | TUTORIAL VIDEO 8 | 9 | 10 | 11 | 12 | 13 | ### Licensing 14 | Licensed under the Apache License, Version 2.0 (the "License"); 15 | you may not use this file except in compliance with the License. 16 | You may obtain a copy of the License at 17 | http://www.apache.org/licenses/LICENSE-2.0 18 | Unless required by applicable law or agreed to in writing, software 19 | distributed under the License is distributed on an "AS IS" BASIS, 20 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 21 | See the License for the specific language governing permissions and 22 | limitations under the License. 23 | -------------------------------------------------------------------------------- /Source/.idea/Source.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Source/.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /Source/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Source/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Source/main.js: -------------------------------------------------------------------------------- 1 | var http=require('http'); 2 | var URL=require('url'); 3 | var URL=require('url'); 4 | var server=http.createServer(function (req,res) { 5 | 6 | }); 7 | 8 | server.listen(5050); 9 | console.log("Server Run Success"); 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Source/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Source", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "main.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1", 8 | "start": "node main.js" 9 | }, 10 | "keywords": [], 11 | "author": "Your Name", 12 | "license": "ISC" 13 | } 14 | -------------------------------------------------------------------------------- /fsModule/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /fsModule/.idea/fsModule.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /fsModule/.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /fsModule/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /fsModule/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /fsModule/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "fsModule", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1", 8 | "start": "node index.js" 9 | }, 10 | "keywords": [], 11 | "author": "Your Name", 12 | "license": "ISC" 13 | } 14 | --------------------------------------------------------------------------------