{"errors":[],"warnings":[],"version":"4.44.1","hash":"d67c6d5ffcf3819cc3a9","publicPath":"","outputPath":"/home/travis/build/pubnub/target-repository","assetsByChunkName":{"main":"pubnub.js"},"assets":[{"name":"pubnub.js","size":572048,"chunks":[0],"chunkNames":["main"],"info":{},"emitted":true},{"name":"stats.json","size":0,"chunks":[],"chunkNames":[],"info":{},"emitted":false}],"filteredAssets":0,"entrypoints":{"main":{"chunks":[0],"assets":["pubnub.js"],"children":{},"childAssets":{}}},"namedChunkGroups":{"main":{"chunks":[0],"assets":["pubnub.js"],"children":{},"childAssets":{}}},"chunks":[{"id":0,"rendered":true,"initial":true,"entry":true,"size":564903,"names":["main"],"files":["pubnub.js"],"hash":"91da35cf856ff92d9a5f","siblings":[],"parents":[],"children":[],"childrenByOrder":{},"modules":[{"id":1,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/constants/operations.js","name":"./src/core/constants/operations.js","index":30,"index2":25,"size":3302,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":18,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","module":"./src/core/components/endpoint.js","moduleName":"./src/core/components/endpoint.js","type":"cjs require","userRequest":"../constants/operations","loc":"34:41-75"},{"moduleId":24,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/time.js","module":"./src/core/endpoints/time.js","moduleName":"./src/core/endpoints/time.js","type":"cjs require","userRequest":"../constants/operations","loc":"18:41-75"},{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./constants/operations","loc":"172:41-74"},{"moduleId":40,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/telemetry_manager.js","module":"./src/core/components/telemetry_manager.js","moduleName":"./src/core/components/telemetry_manager.js","type":"cjs require","userRequest":"../constants/operations","loc":"16:41-75"},{"moduleId":49,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/add_channels.js","module":"./src/core/endpoints/channel_groups/add_channels.js","moduleName":"./src/core/endpoints/channel_groups/add_channels.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":50,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/remove_channels.js","module":"./src/core/endpoints/channel_groups/remove_channels.js","moduleName":"./src/core/endpoints/channel_groups/remove_channels.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":51,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/delete_group.js","module":"./src/core/endpoints/channel_groups/delete_group.js","moduleName":"./src/core/endpoints/channel_groups/delete_group.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":52,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_groups.js","module":"./src/core/endpoints/channel_groups/list_groups.js","moduleName":"./src/core/endpoints/channel_groups/list_groups.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":53,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_channels.js","module":"./src/core/endpoints/channel_groups/list_channels.js","moduleName":"./src/core/endpoints/channel_groups/list_channels.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":54,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/add_push_channels.js","module":"./src/core/endpoints/push/add_push_channels.js","moduleName":"./src/core/endpoints/push/add_push_channels.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":55,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/remove_push_channels.js","module":"./src/core/endpoints/push/remove_push_channels.js","moduleName":"./src/core/endpoints/push/remove_push_channels.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":56,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/list_push_channels.js","module":"./src/core/endpoints/push/list_push_channels.js","moduleName":"./src/core/endpoints/push/list_push_channels.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":57,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/remove_device.js","module":"./src/core/endpoints/push/remove_device.js","moduleName":"./src/core/endpoints/push/remove_device.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":58,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/leave.js","module":"./src/core/endpoints/presence/leave.js","moduleName":"./src/core/endpoints/presence/leave.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":59,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/where_now.js","module":"./src/core/endpoints/presence/where_now.js","moduleName":"./src/core/endpoints/presence/where_now.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":60,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/heartbeat.js","module":"./src/core/endpoints/presence/heartbeat.js","moduleName":"./src/core/endpoints/presence/heartbeat.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":61,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/get_state.js","module":"./src/core/endpoints/presence/get_state.js","moduleName":"./src/core/endpoints/presence/get_state.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":62,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/set_state.js","module":"./src/core/endpoints/presence/set_state.js","moduleName":"./src/core/endpoints/presence/set_state.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":63,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/here_now.js","module":"./src/core/endpoints/presence/here_now.js","moduleName":"./src/core/endpoints/presence/here_now.js","type":"cjs require","userRequest":"../../constants/operations","loc":"21:41-78"},{"moduleId":64,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/add_message_action.js","module":"./src/core/endpoints/actions/add_message_action.js","moduleName":"./src/core/endpoints/actions/add_message_action.js","type":"cjs require","userRequest":"../../constants/operations","loc":"21:41-78"},{"moduleId":65,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/remove_message_action.js","module":"./src/core/endpoints/actions/remove_message_action.js","moduleName":"./src/core/endpoints/actions/remove_message_action.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":66,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/get_message_actions.js","module":"./src/core/endpoints/actions/get_message_actions.js","moduleName":"./src/core/endpoints/actions/get_message_actions.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":68,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/list_files.js","module":"./src/core/endpoints/file_upload/list_files.js","moduleName":"./src/core/endpoints/file_upload/list_files.js","type":"cjs require","userRequest":"../../constants/operations","loc":"10:41-78"},{"moduleId":69,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/generate_upload_url.js","module":"./src/core/endpoints/file_upload/generate_upload_url.js","moduleName":"./src/core/endpoints/file_upload/generate_upload_url.js","type":"cjs require","userRequest":"../../constants/operations","loc":"10:41-78"},{"moduleId":70,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/publish_file.js","module":"./src/core/endpoints/file_upload/publish_file.js","moduleName":"./src/core/endpoints/file_upload/publish_file.js","type":"cjs require","userRequest":"../../constants/operations","loc":"12:41-78"},{"moduleId":74,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/download_file.js","module":"./src/core/endpoints/file_upload/download_file.js","moduleName":"./src/core/endpoints/file_upload/download_file.js","type":"cjs require","userRequest":"../../constants/operations","loc":"14:41-78"},{"moduleId":75,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/delete_file.js","module":"./src/core/endpoints/file_upload/delete_file.js","moduleName":"./src/core/endpoints/file_upload/delete_file.js","type":"cjs require","userRequest":"../../constants/operations","loc":"10:41-78"},{"moduleId":76,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/get_all.js","module":"./src/core/endpoints/objects/uuid/get_all.js","moduleName":"./src/core/endpoints/objects/uuid/get_all.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"12:41-81"},{"moduleId":82,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/get.js","module":"./src/core/endpoints/objects/uuid/get.js","moduleName":"./src/core/endpoints/objects/uuid/get.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"10:41-81"},{"moduleId":83,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/set.js","module":"./src/core/endpoints/objects/uuid/set.js","moduleName":"./src/core/endpoints/objects/uuid/set.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"10:41-81"},{"moduleId":84,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/remove.js","module":"./src/core/endpoints/objects/uuid/remove.js","moduleName":"./src/core/endpoints/objects/uuid/remove.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"10:41-81"},{"moduleId":85,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/get_all.js","module":"./src/core/endpoints/objects/channel/get_all.js","moduleName":"./src/core/endpoints/objects/channel/get_all.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"12:41-81"},{"moduleId":86,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/get.js","module":"./src/core/endpoints/objects/channel/get.js","moduleName":"./src/core/endpoints/objects/channel/get.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"10:41-81"},{"moduleId":87,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/set.js","module":"./src/core/endpoints/objects/channel/set.js","moduleName":"./src/core/endpoints/objects/channel/set.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"10:41-81"},{"moduleId":88,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/remove.js","module":"./src/core/endpoints/objects/channel/remove.js","moduleName":"./src/core/endpoints/objects/channel/remove.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"10:41-81"},{"moduleId":89,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/member/get.js","module":"./src/core/endpoints/objects/member/get.js","moduleName":"./src/core/endpoints/objects/member/get.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"12:41-81"},{"moduleId":90,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/member/set.js","module":"./src/core/endpoints/objects/member/set.js","moduleName":"./src/core/endpoints/objects/member/set.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"14:41-81"},{"moduleId":91,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/membership/get.js","module":"./src/core/endpoints/objects/membership/get.js","moduleName":"./src/core/endpoints/objects/membership/get.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"12:41-81"},{"moduleId":92,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/membership/set.js","module":"./src/core/endpoints/objects/membership/set.js","moduleName":"./src/core/endpoints/objects/membership/set.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"14:41-81"},{"moduleId":93,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/create_user.js","module":"./src/core/endpoints/users/create_user.js","moduleName":"./src/core/endpoints/users/create_user.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":94,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/update_user.js","module":"./src/core/endpoints/users/update_user.js","moduleName":"./src/core/endpoints/users/update_user.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":95,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/delete_user.js","module":"./src/core/endpoints/users/delete_user.js","moduleName":"./src/core/endpoints/users/delete_user.js","type":"cjs require","userRequest":"../../constants/operations","loc":"20:41-78"},{"moduleId":96,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_user.js","module":"./src/core/endpoints/users/get_user.js","moduleName":"./src/core/endpoints/users/get_user.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":97,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_users.js","module":"./src/core/endpoints/users/get_users.js","moduleName":"./src/core/endpoints/users/get_users.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":98,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/create_space.js","module":"./src/core/endpoints/spaces/create_space.js","moduleName":"./src/core/endpoints/spaces/create_space.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":99,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/update_space.js","module":"./src/core/endpoints/spaces/update_space.js","moduleName":"./src/core/endpoints/spaces/update_space.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":100,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/delete_space.js","module":"./src/core/endpoints/spaces/delete_space.js","moduleName":"./src/core/endpoints/spaces/delete_space.js","type":"cjs require","userRequest":"../../constants/operations","loc":"20:41-78"},{"moduleId":101,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_spaces.js","module":"./src/core/endpoints/spaces/get_spaces.js","moduleName":"./src/core/endpoints/spaces/get_spaces.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":102,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_space.js","module":"./src/core/endpoints/spaces/get_space.js","moduleName":"./src/core/endpoints/spaces/get_space.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":103,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_members.js","module":"./src/core/endpoints/memberships/get_members.js","moduleName":"./src/core/endpoints/memberships/get_members.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":104,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/add_members.js","module":"./src/core/endpoints/memberships/add_members.js","moduleName":"./src/core/endpoints/memberships/add_members.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":105,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_members.js","module":"./src/core/endpoints/memberships/update_members.js","moduleName":"./src/core/endpoints/memberships/update_members.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":106,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/remove_members.js","module":"./src/core/endpoints/memberships/remove_members.js","moduleName":"./src/core/endpoints/memberships/remove_members.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":107,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_memberships.js","module":"./src/core/endpoints/memberships/get_memberships.js","moduleName":"./src/core/endpoints/memberships/get_memberships.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":108,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_memberships.js","module":"./src/core/endpoints/memberships/update_memberships.js","moduleName":"./src/core/endpoints/memberships/update_memberships.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":109,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/join_spaces.js","module":"./src/core/endpoints/memberships/join_spaces.js","moduleName":"./src/core/endpoints/memberships/join_spaces.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":110,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/leave_spaces.js","module":"./src/core/endpoints/memberships/leave_spaces.js","moduleName":"./src/core/endpoints/memberships/leave_spaces.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":111,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/audit.js","module":"./src/core/endpoints/access_manager/audit.js","moduleName":"./src/core/endpoints/access_manager/audit.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":112,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/grant.js","module":"./src/core/endpoints/access_manager/grant.js","moduleName":"./src/core/endpoints/access_manager/grant.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":113,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/grant_token.js","module":"./src/core/endpoints/access_manager/grant_token.js","moduleName":"./src/core/endpoints/access_manager/grant_token.js","type":"cjs require","userRequest":"../../constants/operations","loc":"21:41-78"},{"moduleId":114,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/publish.js","module":"./src/core/endpoints/publish.js","moduleName":"./src/core/endpoints/publish.js","type":"cjs require","userRequest":"../constants/operations","loc":"23:41-75"},{"moduleId":115,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/signal.js","module":"./src/core/endpoints/signal.js","moduleName":"./src/core/endpoints/signal.js","type":"cjs require","userRequest":"../constants/operations","loc":"18:41-75"},{"moduleId":116,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/get_history.js","module":"./src/core/endpoints/history/get_history.js","moduleName":"./src/core/endpoints/history/get_history.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":117,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/delete_messages.js","module":"./src/core/endpoints/history/delete_messages.js","moduleName":"./src/core/endpoints/history/delete_messages.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":118,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/message_counts.js","module":"./src/core/endpoints/history/message_counts.js","moduleName":"./src/core/endpoints/history/message_counts.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":119,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/fetch_messages.js","module":"./src/core/endpoints/fetch_messages.js","moduleName":"./src/core/endpoints/fetch_messages.js","type":"cjs require","userRequest":"../constants/operations","loc":"18:41-75"},{"moduleId":120,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/subscribe.js","module":"./src/core/endpoints/subscribe.js","moduleName":"./src/core/endpoints/subscribe.js","type":"cjs require","userRequest":"../constants/operations","loc":"18:41-75"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\nvar _default = {\n  PNTimeOperation: 'PNTimeOperation',\n  PNHistoryOperation: 'PNHistoryOperation',\n  PNDeleteMessagesOperation: 'PNDeleteMessagesOperation',\n  PNFetchMessagesOperation: 'PNFetchMessagesOperation',\n  PNMessageCounts: 'PNMessageCountsOperation',\n  PNSubscribeOperation: 'PNSubscribeOperation',\n  PNUnsubscribeOperation: 'PNUnsubscribeOperation',\n  PNPublishOperation: 'PNPublishOperation',\n  PNSignalOperation: 'PNSignalOperation',\n  PNAddMessageActionOperation: 'PNAddActionOperation',\n  PNRemoveMessageActionOperation: 'PNRemoveMessageActionOperation',\n  PNGetMessageActionsOperation: 'PNGetMessageActionsOperation',\n  PNCreateUserOperation: 'PNCreateUserOperation',\n  PNUpdateUserOperation: 'PNUpdateUserOperation',\n  PNDeleteUserOperation: 'PNDeleteUserOperation',\n  PNGetUserOperation: 'PNGetUsersOperation',\n  PNGetUsersOperation: 'PNGetUsersOperation',\n  PNCreateSpaceOperation: 'PNCreateSpaceOperation',\n  PNUpdateSpaceOperation: 'PNUpdateSpaceOperation',\n  PNDeleteSpaceOperation: 'PNDeleteSpaceOperation',\n  PNGetSpaceOperation: 'PNGetSpacesOperation',\n  PNGetSpacesOperation: 'PNGetSpacesOperation',\n  PNGetMembersOperation: 'PNGetMembersOperation',\n  PNUpdateMembersOperation: 'PNUpdateMembersOperation',\n  PNGetMembershipsOperation: 'PNGetMembershipsOperation',\n  PNUpdateMembershipsOperation: 'PNUpdateMembershipsOperation',\n  PNListFilesOperation: 'PNListFilesOperation',\n  PNGenerateUploadUrlOperation: 'PNGenerateUploadUrlOperation',\n  PNPublishFileOperation: 'PNPublishFileOperation',\n  PNGetFileUrlOperation: 'PNGetFileUrlOperation',\n  PNDownloadFileOperation: 'PNDownloadFileOperation',\n  PNGetAllUUIDMetadataOperation: 'PNGetAllUUIDMetadataOperation',\n  PNGetUUIDMetadataOperation: 'PNGetUUIDMetadataOperation',\n  PNSetUUIDMetadataOperation: 'PNSetUUIDMetadataOperation',\n  PNRemoveUUIDMetadataOperation: 'PNRemoveUUIDMetadataOperation',\n  PNGetAllChannelMetadataOperation: 'PNGetAllChannelMetadataOperation',\n  PNGetChannelMetadataOperation: 'PNGetChannelMetadataOperation',\n  PNSetChannelMetadataOperation: 'PNSetChannelMetadataOperation',\n  PNRemoveChannelMetadataOperation: 'PNRemoveChannelMetadataOperation',\n  PNSetMembersOperation: 'PNSetMembersOperation',\n  PNSetMembershipsOperation: 'PNSetMembershipsOperation',\n  PNPushNotificationEnabledChannelsOperation: 'PNPushNotificationEnabledChannelsOperation',\n  PNRemoveAllPushNotificationsOperation: 'PNRemoveAllPushNotificationsOperation',\n  PNWhereNowOperation: 'PNWhereNowOperation',\n  PNSetStateOperation: 'PNSetStateOperation',\n  PNHereNowOperation: 'PNHereNowOperation',\n  PNGetStateOperation: 'PNGetStateOperation',\n  PNHeartbeatOperation: 'PNHeartbeatOperation',\n  PNChannelGroupsOperation: 'PNChannelGroupsOperation',\n  PNRemoveGroupOperation: 'PNRemoveGroupOperation',\n  PNChannelsForGroupOperation: 'PNChannelsForGroupOperation',\n  PNAddChannelsToGroupOperation: 'PNAddChannelsToGroupOperation',\n  PNRemoveChannelsFromGroupOperation: 'PNRemoveChannelsFromGroupOperation',\n  PNAccessManagerGrant: 'PNAccessManagerGrant',\n  PNAccessManagerGrantToken: 'PNAccessManagerGrantToken',\n  PNAccessManagerAudit: 'PNAccessManagerAudit'\n};\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":2,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/flow_interfaces.js","name":"./src/core/flow_interfaces.js","index":17,"index2":14,"size":35,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":8,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/config.js","module":"./src/core/components/config.js","moduleName":"./src/core/components/config.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"18:23-52"},{"moduleId":18,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","module":"./src/core/components/endpoint.js","moduleName":"./src/core/components/endpoint.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"28:23-52"},{"moduleId":23,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/listener_manager.js","module":"./src/core/components/listener_manager.js","moduleName":"./src/core/components/listener_manager.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"16:23-52"},{"moduleId":24,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/time.js","module":"./src/core/endpoints/time.js","moduleName":"./src/core/endpoints/time.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"16:23-52"},{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../core/flow_interfaces","loc":"34:23-57"},{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./flow_interfaces","loc":"176:23-51"},{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"30:23-52"},{"moduleId":37,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/reconnection_manager.js","module":"./src/core/components/reconnection_manager.js","moduleName":"./src/core/components/reconnection_manager.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"18:23-52"},{"moduleId":38,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/deduping_manager.js","module":"./src/core/components/deduping_manager.js","moduleName":"./src/core/components/deduping_manager.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"18:23-52"},{"moduleId":41,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/push_payload.js","module":"./src/core/components/push_payload.js","moduleName":"./src/core/components/push_payload.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"26:23-52"},{"moduleId":44,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/token_manager.js","module":"./src/core/components/token_manager.js","moduleName":"./src/core/components/token_manager.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"20:23-52"},{"moduleId":49,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/add_channels.js","module":"./src/core/endpoints/channel_groups/add_channels.js","moduleName":"./src/core/endpoints/channel_groups/add_channels.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":50,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/remove_channels.js","module":"./src/core/endpoints/channel_groups/remove_channels.js","moduleName":"./src/core/endpoints/channel_groups/remove_channels.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":51,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/delete_group.js","module":"./src/core/endpoints/channel_groups/delete_group.js","moduleName":"./src/core/endpoints/channel_groups/delete_group.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":52,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_groups.js","module":"./src/core/endpoints/channel_groups/list_groups.js","moduleName":"./src/core/endpoints/channel_groups/list_groups.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":53,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_channels.js","module":"./src/core/endpoints/channel_groups/list_channels.js","moduleName":"./src/core/endpoints/channel_groups/list_channels.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":54,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/add_push_channels.js","module":"./src/core/endpoints/push/add_push_channels.js","moduleName":"./src/core/endpoints/push/add_push_channels.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":55,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/remove_push_channels.js","module":"./src/core/endpoints/push/remove_push_channels.js","moduleName":"./src/core/endpoints/push/remove_push_channels.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":56,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/list_push_channels.js","module":"./src/core/endpoints/push/list_push_channels.js","moduleName":"./src/core/endpoints/push/list_push_channels.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":57,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/remove_device.js","module":"./src/core/endpoints/push/remove_device.js","moduleName":"./src/core/endpoints/push/remove_device.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":58,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/leave.js","module":"./src/core/endpoints/presence/leave.js","moduleName":"./src/core/endpoints/presence/leave.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":59,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/where_now.js","module":"./src/core/endpoints/presence/where_now.js","moduleName":"./src/core/endpoints/presence/where_now.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":60,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/heartbeat.js","module":"./src/core/endpoints/presence/heartbeat.js","moduleName":"./src/core/endpoints/presence/heartbeat.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":61,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/get_state.js","module":"./src/core/endpoints/presence/get_state.js","moduleName":"./src/core/endpoints/presence/get_state.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":62,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/set_state.js","module":"./src/core/endpoints/presence/set_state.js","moduleName":"./src/core/endpoints/presence/set_state.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":63,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/here_now.js","module":"./src/core/endpoints/presence/here_now.js","moduleName":"./src/core/endpoints/presence/here_now.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"19:23-55"},{"moduleId":64,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/add_message_action.js","module":"./src/core/endpoints/actions/add_message_action.js","moduleName":"./src/core/endpoints/actions/add_message_action.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"19:23-55"},{"moduleId":65,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/remove_message_action.js","module":"./src/core/endpoints/actions/remove_message_action.js","moduleName":"./src/core/endpoints/actions/remove_message_action.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":66,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/get_message_actions.js","module":"./src/core/endpoints/actions/get_message_actions.js","moduleName":"./src/core/endpoints/actions/get_message_actions.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":93,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/create_user.js","module":"./src/core/endpoints/users/create_user.js","moduleName":"./src/core/endpoints/users/create_user.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":94,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/update_user.js","module":"./src/core/endpoints/users/update_user.js","moduleName":"./src/core/endpoints/users/update_user.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":95,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/delete_user.js","module":"./src/core/endpoints/users/delete_user.js","moduleName":"./src/core/endpoints/users/delete_user.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"18:23-55"},{"moduleId":96,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_user.js","module":"./src/core/endpoints/users/get_user.js","moduleName":"./src/core/endpoints/users/get_user.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":97,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_users.js","module":"./src/core/endpoints/users/get_users.js","moduleName":"./src/core/endpoints/users/get_users.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":98,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/create_space.js","module":"./src/core/endpoints/spaces/create_space.js","moduleName":"./src/core/endpoints/spaces/create_space.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":99,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/update_space.js","module":"./src/core/endpoints/spaces/update_space.js","moduleName":"./src/core/endpoints/spaces/update_space.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":100,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/delete_space.js","module":"./src/core/endpoints/spaces/delete_space.js","moduleName":"./src/core/endpoints/spaces/delete_space.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"18:23-55"},{"moduleId":101,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_spaces.js","module":"./src/core/endpoints/spaces/get_spaces.js","moduleName":"./src/core/endpoints/spaces/get_spaces.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":102,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_space.js","module":"./src/core/endpoints/spaces/get_space.js","moduleName":"./src/core/endpoints/spaces/get_space.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":103,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_members.js","module":"./src/core/endpoints/memberships/get_members.js","moduleName":"./src/core/endpoints/memberships/get_members.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":104,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/add_members.js","module":"./src/core/endpoints/memberships/add_members.js","moduleName":"./src/core/endpoints/memberships/add_members.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":105,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_members.js","module":"./src/core/endpoints/memberships/update_members.js","moduleName":"./src/core/endpoints/memberships/update_members.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":106,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/remove_members.js","module":"./src/core/endpoints/memberships/remove_members.js","moduleName":"./src/core/endpoints/memberships/remove_members.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":107,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_memberships.js","module":"./src/core/endpoints/memberships/get_memberships.js","moduleName":"./src/core/endpoints/memberships/get_memberships.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":108,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_memberships.js","module":"./src/core/endpoints/memberships/update_memberships.js","moduleName":"./src/core/endpoints/memberships/update_memberships.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":109,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/join_spaces.js","module":"./src/core/endpoints/memberships/join_spaces.js","moduleName":"./src/core/endpoints/memberships/join_spaces.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":110,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/leave_spaces.js","module":"./src/core/endpoints/memberships/leave_spaces.js","moduleName":"./src/core/endpoints/memberships/leave_spaces.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":111,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/audit.js","module":"./src/core/endpoints/access_manager/audit.js","moduleName":"./src/core/endpoints/access_manager/audit.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":112,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/grant.js","module":"./src/core/endpoints/access_manager/grant.js","moduleName":"./src/core/endpoints/access_manager/grant.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":113,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/grant_token.js","module":"./src/core/endpoints/access_manager/grant_token.js","moduleName":"./src/core/endpoints/access_manager/grant_token.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"19:23-55"},{"moduleId":114,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/publish.js","module":"./src/core/endpoints/publish.js","moduleName":"./src/core/endpoints/publish.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"21:23-52"},{"moduleId":115,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/signal.js","module":"./src/core/endpoints/signal.js","moduleName":"./src/core/endpoints/signal.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"16:23-52"},{"moduleId":116,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/get_history.js","module":"./src/core/endpoints/history/get_history.js","moduleName":"./src/core/endpoints/history/get_history.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":117,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/delete_messages.js","module":"./src/core/endpoints/history/delete_messages.js","moduleName":"./src/core/endpoints/history/delete_messages.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":119,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/fetch_messages.js","module":"./src/core/endpoints/fetch_messages.js","moduleName":"./src/core/endpoints/fetch_messages.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"16:23-52"},{"moduleId":120,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/subscribe.js","module":"./src/core/endpoints/subscribe.js","moduleName":"./src/core/endpoints/subscribe.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"16:23-52"},{"moduleId":121,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/networking/index.js","module":"./src/networking/index.js","moduleName":"./src/networking/index.js","type":"cjs require","userRequest":"../core/flow_interfaces","loc":"20:23-57"},{"moduleId":124,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/networking/modules/web-node.js","module":"./src/networking/modules/web-node.js","moduleName":"./src/networking/modules/web-node.js","type":"cjs require","userRequest":"../../core/flow_interfaces","loc":"21:23-60"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nmodule.exports = {};"},{"id":3,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/utils.js","name":"./src/core/utils.js","index":32,"index2":30,"size":1942,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":18,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","module":"./src/core/components/endpoint.js","moduleName":"./src/core/components/endpoint.js","type":"cjs require","userRequest":"../utils","loc":"30:36-55"},{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./utils","loc":"34:13-31"},{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../utils","loc":"28:36-55"},{"moduleId":49,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/add_channels.js","module":"./src/core/endpoints/channel_groups/add_channels.js","moduleName":"./src/core/endpoints/channel_groups/add_channels.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":50,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/remove_channels.js","module":"./src/core/endpoints/channel_groups/remove_channels.js","moduleName":"./src/core/endpoints/channel_groups/remove_channels.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":51,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/delete_group.js","module":"./src/core/endpoints/channel_groups/delete_group.js","moduleName":"./src/core/endpoints/channel_groups/delete_group.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":53,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_channels.js","module":"./src/core/endpoints/channel_groups/list_channels.js","moduleName":"./src/core/endpoints/channel_groups/list_channels.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":58,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/leave.js","module":"./src/core/endpoints/presence/leave.js","moduleName":"./src/core/endpoints/presence/leave.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":59,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/where_now.js","module":"./src/core/endpoints/presence/where_now.js","moduleName":"./src/core/endpoints/presence/where_now.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":60,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/heartbeat.js","module":"./src/core/endpoints/presence/heartbeat.js","moduleName":"./src/core/endpoints/presence/heartbeat.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":61,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/get_state.js","module":"./src/core/endpoints/presence/get_state.js","moduleName":"./src/core/endpoints/presence/get_state.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":62,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/set_state.js","module":"./src/core/endpoints/presence/set_state.js","moduleName":"./src/core/endpoints/presence/set_state.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":63,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/here_now.js","module":"./src/core/endpoints/presence/here_now.js","moduleName":"./src/core/endpoints/presence/here_now.js","type":"cjs require","userRequest":"../../utils","loc":"23:36-58"},{"moduleId":64,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/add_message_action.js","module":"./src/core/endpoints/actions/add_message_action.js","moduleName":"./src/core/endpoints/actions/add_message_action.js","type":"cjs require","userRequest":"../../utils","loc":"23:36-58"},{"moduleId":65,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/remove_message_action.js","module":"./src/core/endpoints/actions/remove_message_action.js","moduleName":"./src/core/endpoints/actions/remove_message_action.js","type":"cjs require","userRequest":"../../utils","loc":"21:36-58"},{"moduleId":66,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/get_message_actions.js","module":"./src/core/endpoints/actions/get_message_actions.js","moduleName":"./src/core/endpoints/actions/get_message_actions.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":68,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/list_files.js","module":"./src/core/endpoints/file_upload/list_files.js","moduleName":"./src/core/endpoints/file_upload/list_files.js","type":"cjs require","userRequest":"../../utils","loc":"12:36-58"},{"moduleId":69,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/generate_upload_url.js","module":"./src/core/endpoints/file_upload/generate_upload_url.js","moduleName":"./src/core/endpoints/file_upload/generate_upload_url.js","type":"cjs require","userRequest":"../../utils","loc":"12:36-58"},{"moduleId":70,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/publish_file.js","module":"./src/core/endpoints/file_upload/publish_file.js","moduleName":"./src/core/endpoints/file_upload/publish_file.js","type":"cjs require","userRequest":"../../utils","loc":"14:36-58"},{"moduleId":73,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/get_file_url.js","module":"./src/core/endpoints/file_upload/get_file_url.js","moduleName":"./src/core/endpoints/file_upload/get_file_url.js","type":"cjs require","userRequest":"../../utils","loc":"12:36-58"},{"moduleId":74,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/download_file.js","module":"./src/core/endpoints/file_upload/download_file.js","moduleName":"./src/core/endpoints/file_upload/download_file.js","type":"cjs require","userRequest":"../../utils","loc":"16:36-58"},{"moduleId":75,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/delete_file.js","module":"./src/core/endpoints/file_upload/delete_file.js","moduleName":"./src/core/endpoints/file_upload/delete_file.js","type":"cjs require","userRequest":"../../utils","loc":"12:36-58"},{"moduleId":82,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/get.js","module":"./src/core/endpoints/objects/uuid/get.js","moduleName":"./src/core/endpoints/objects/uuid/get.js","type":"cjs require","userRequest":"../../../utils","loc":"12:36-61"},{"moduleId":83,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/set.js","module":"./src/core/endpoints/objects/uuid/set.js","moduleName":"./src/core/endpoints/objects/uuid/set.js","type":"cjs require","userRequest":"../../../utils","loc":"12:36-61"},{"moduleId":84,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/remove.js","module":"./src/core/endpoints/objects/uuid/remove.js","moduleName":"./src/core/endpoints/objects/uuid/remove.js","type":"cjs require","userRequest":"../../../utils","loc":"12:36-61"},{"moduleId":86,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/get.js","module":"./src/core/endpoints/objects/channel/get.js","moduleName":"./src/core/endpoints/objects/channel/get.js","type":"cjs require","userRequest":"../../../utils","loc":"12:36-61"},{"moduleId":87,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/set.js","module":"./src/core/endpoints/objects/channel/set.js","moduleName":"./src/core/endpoints/objects/channel/set.js","type":"cjs require","userRequest":"../../../utils","loc":"12:36-61"},{"moduleId":88,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/remove.js","module":"./src/core/endpoints/objects/channel/remove.js","moduleName":"./src/core/endpoints/objects/channel/remove.js","type":"cjs require","userRequest":"../../../utils","loc":"12:36-61"},{"moduleId":89,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/member/get.js","module":"./src/core/endpoints/objects/member/get.js","moduleName":"./src/core/endpoints/objects/member/get.js","type":"cjs require","userRequest":"../../../utils","loc":"14:36-61"},{"moduleId":90,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/member/set.js","module":"./src/core/endpoints/objects/member/set.js","moduleName":"./src/core/endpoints/objects/member/set.js","type":"cjs require","userRequest":"../../../utils","loc":"16:36-61"},{"moduleId":91,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/membership/get.js","module":"./src/core/endpoints/objects/membership/get.js","moduleName":"./src/core/endpoints/objects/membership/get.js","type":"cjs require","userRequest":"../../../utils","loc":"14:36-61"},{"moduleId":92,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/membership/set.js","module":"./src/core/endpoints/objects/membership/set.js","moduleName":"./src/core/endpoints/objects/membership/set.js","type":"cjs require","userRequest":"../../../utils","loc":"16:36-61"},{"moduleId":94,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/update_user.js","module":"./src/core/endpoints/users/update_user.js","moduleName":"./src/core/endpoints/users/update_user.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":95,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/delete_user.js","module":"./src/core/endpoints/users/delete_user.js","moduleName":"./src/core/endpoints/users/delete_user.js","type":"cjs require","userRequest":"../../utils","loc":"22:36-58"},{"moduleId":96,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_user.js","module":"./src/core/endpoints/users/get_user.js","moduleName":"./src/core/endpoints/users/get_user.js","type":"cjs require","userRequest":"../../utils","loc":"21:36-58"},{"moduleId":99,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/update_space.js","module":"./src/core/endpoints/spaces/update_space.js","moduleName":"./src/core/endpoints/spaces/update_space.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":100,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/delete_space.js","module":"./src/core/endpoints/spaces/delete_space.js","moduleName":"./src/core/endpoints/spaces/delete_space.js","type":"cjs require","userRequest":"../../utils","loc":"22:36-58"},{"moduleId":102,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_space.js","module":"./src/core/endpoints/spaces/get_space.js","moduleName":"./src/core/endpoints/spaces/get_space.js","type":"cjs require","userRequest":"../../utils","loc":"21:36-58"},{"moduleId":103,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_members.js","module":"./src/core/endpoints/memberships/get_members.js","moduleName":"./src/core/endpoints/memberships/get_members.js","type":"cjs require","userRequest":"../../utils","loc":"21:36-58"},{"moduleId":104,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/add_members.js","module":"./src/core/endpoints/memberships/add_members.js","moduleName":"./src/core/endpoints/memberships/add_members.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":105,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_members.js","module":"./src/core/endpoints/memberships/update_members.js","moduleName":"./src/core/endpoints/memberships/update_members.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":106,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/remove_members.js","module":"./src/core/endpoints/memberships/remove_members.js","moduleName":"./src/core/endpoints/memberships/remove_members.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":107,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_memberships.js","module":"./src/core/endpoints/memberships/get_memberships.js","moduleName":"./src/core/endpoints/memberships/get_memberships.js","type":"cjs require","userRequest":"../../utils","loc":"21:36-58"},{"moduleId":108,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_memberships.js","module":"./src/core/endpoints/memberships/update_memberships.js","moduleName":"./src/core/endpoints/memberships/update_memberships.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":109,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/join_spaces.js","module":"./src/core/endpoints/memberships/join_spaces.js","moduleName":"./src/core/endpoints/memberships/join_spaces.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":110,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/leave_spaces.js","module":"./src/core/endpoints/memberships/leave_spaces.js","moduleName":"./src/core/endpoints/memberships/leave_spaces.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":114,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/publish.js","module":"./src/core/endpoints/publish.js","moduleName":"./src/core/endpoints/publish.js","type":"cjs require","userRequest":"../utils","loc":"25:36-55"},{"moduleId":115,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/signal.js","module":"./src/core/endpoints/signal.js","moduleName":"./src/core/endpoints/signal.js","type":"cjs require","userRequest":"../utils","loc":"20:36-55"},{"moduleId":116,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/get_history.js","module":"./src/core/endpoints/history/get_history.js","moduleName":"./src/core/endpoints/history/get_history.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":117,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/delete_messages.js","module":"./src/core/endpoints/history/delete_messages.js","moduleName":"./src/core/endpoints/history/delete_messages.js","type":"cjs require","userRequest":"../../utils","loc":"21:36-58"},{"moduleId":118,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/message_counts.js","module":"./src/core/endpoints/history/message_counts.js","moduleName":"./src/core/endpoints/history/message_counts.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":119,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/fetch_messages.js","module":"./src/core/endpoints/fetch_messages.js","moduleName":"./src/core/endpoints/fetch_messages.js","type":"cjs require","userRequest":"../utils","loc":"20:36-55"},{"moduleId":120,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/subscribe.js","module":"./src/core/endpoints/subscribe.js","moduleName":"./src/core/endpoints/subscribe.js","type":"cjs require","userRequest":"../utils","loc":"20:36-55"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nfunction objectToList(o) {\n  var l = [];\n  Object.keys(o).forEach(function (key) {\n    return l.push(key);\n  });\n  return l;\n}\n\nfunction encodeString(input) {\n  return encodeURIComponent(input).replace(/[!~*'()]/g, function (x) {\n    return \"%\".concat(x.charCodeAt(0).toString(16).toUpperCase());\n  });\n}\n\nfunction objectToListSorted(o) {\n  return objectToList(o).sort();\n}\n\nfunction signPamFromParams(params) {\n  var l = objectToListSorted(params);\n  return l.map(function (paramKey) {\n    return \"\".concat(paramKey, \"=\").concat(encodeString(params[paramKey]));\n  }).join('&');\n}\n\nfunction endsWith(searchString, suffix) {\n  return searchString.indexOf(suffix, this.length - suffix.length) !== -1;\n}\n\nfunction createPromise() {\n  var successResolve;\n  var failureResolve;\n  var promise = new Promise(function (fulfill, reject) {\n    successResolve = fulfill;\n    failureResolve = reject;\n  });\n  return {\n    promise: promise,\n    reject: failureResolve,\n    fulfill: successResolve\n  };\n}\n\nvar deprecationMessage = \"The Objects v1 API has been deprecated.\\nYou can learn more about Objects v2 API at https://www.pubnub.com/docs/web-javascript/api-reference-objects.\\nIf you have questions about the Objects v2 API or require additional help with migrating to the new data model, please contact PubNub Support at support@pubnub.com.\";\n\nfunction deprecated(fn) {\n  return function () {\n    if (typeof process !== 'undefined') {\n      var _process, _process$env;\n\n      if (((_process = process) === null || _process === void 0 ? void 0 : (_process$env = _process.env) === null || _process$env === void 0 ? void 0 : _process$env.NODE_ENV) !== 'test') {\n        console.warn(deprecationMessage);\n      }\n    }\n\n    return fn.apply(void 0, arguments);\n  };\n}\n\nmodule.exports = {\n  signPamFromParams: signPamFromParams,\n  endsWith: endsWith,\n  createPromise: createPromise,\n  encodeString: encodeString,\n  deprecated: deprecated\n};"},{"id":8,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/config.js","name":"./src/core/components/config.js","index":14,"index2":15,"size":9757,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":18,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","module":"./src/core/components/endpoint.js","moduleName":"./src/core/components/endpoint.js","type":"cjs require","userRequest":"./config","loc":"32:37-56"},{"moduleId":20,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/cryptography/index.js","module":"./src/core/components/cryptography/index.js","moduleName":"./src/core/components/cryptography/index.js","type":"cjs require","userRequest":"../config","loc":"16:37-57"},{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/config","loc":"18:37-67"},{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../components/config","loc":"20:37-68"},{"moduleId":38,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/deduping_manager.js","module":"./src/core/components/deduping_manager.js","moduleName":"./src/core/components/deduping_manager.js","type":"cjs require","userRequest":"../components/config","loc":"16:37-68"},{"moduleId":44,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/token_manager.js","module":"./src/core/components/token_manager.js","moduleName":"./src/core/components/token_manager.js","type":"cjs require","userRequest":"./config","loc":"18:37-56"},{"moduleId":121,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/networking/index.js","module":"./src/networking/index.js","moduleName":"./src/networking/index.js","type":"cjs require","userRequest":"../core/components/config","loc":"16:37-73"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _uuid = _interopRequireDefault(require(\"./uuid\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar PRESENCE_TIMEOUT_MINIMUM = 20;\nvar PRESENCE_TIMEOUT_DEFAULT = 300;\n\nvar _default = function () {\n  function _default(_ref) {\n    var _setup$fileUploadPubl, _setup$useRandomIVs;\n\n    var setup = _ref.setup,\n        db = _ref.db;\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_db\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"subscribeKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"publishKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"secretKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"cipherKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"authKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"UUID\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"proxy\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"instanceId\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"sdkName\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"sdkFamily\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"partnerId\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"filterExpression\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"suppressLeaveEvents\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"secure\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"origin\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"logVerbosity\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"useInstanceId\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"useRequestId\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"keepAlive\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"keepAliveSettings\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"autoNetworkDetection\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"announceSuccessfulHeartbeats\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"announceFailedHeartbeats\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_presenceTimeout\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_heartbeatInterval\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_subscribeRequestTimeout\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_transactionalRequestTimeout\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_useSendBeacon\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_PNSDKSuffix\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"requestMessageCountThreshold\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"restore\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"dedupeOnSubscribe\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"maximumCacheSize\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"customEncrypt\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"customDecrypt\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"fileUploadPublishRetryLimit\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"useRandomIVs\", void 0);\n    this._PNSDKSuffix = {};\n    this._db = db;\n    this.instanceId = \"pn-\".concat(_uuid[\"default\"].createUUID());\n    this.secretKey = setup.secretKey || setup.secret_key;\n    this.subscribeKey = setup.subscribeKey || setup.subscribe_key;\n    this.publishKey = setup.publishKey || setup.publish_key;\n    this.sdkName = setup.sdkName;\n    this.sdkFamily = setup.sdkFamily;\n    this.partnerId = setup.partnerId;\n    this.setAuthKey(setup.authKey);\n    this.setCipherKey(setup.cipherKey);\n    this.setFilterExpression(setup.filterExpression);\n    this.origin = setup.origin || 'ps.pndsn.com';\n    this.secure = setup.ssl || false;\n    this.restore = setup.restore || false;\n    this.proxy = setup.proxy;\n    this.keepAlive = setup.keepAlive;\n    this.keepAliveSettings = setup.keepAliveSettings;\n    this.autoNetworkDetection = setup.autoNetworkDetection || false;\n    this.dedupeOnSubscribe = setup.dedupeOnSubscribe || false;\n    this.maximumCacheSize = setup.maximumCacheSize || 100;\n    this.customEncrypt = setup.customEncrypt;\n    this.customDecrypt = setup.customDecrypt;\n    this.fileUploadPublishRetryLimit = (_setup$fileUploadPubl = setup.fileUploadPublishRetryLimit) !== null && _setup$fileUploadPubl !== void 0 ? _setup$fileUploadPubl : 5;\n    this.useRandomIVs = (_setup$useRandomIVs = setup.useRandomIVs) !== null && _setup$useRandomIVs !== void 0 ? _setup$useRandomIVs : true;\n\n    if (typeof location !== 'undefined' && location.protocol === 'https:') {\n      this.secure = true;\n    }\n\n    this.logVerbosity = setup.logVerbosity || false;\n    this.suppressLeaveEvents = setup.suppressLeaveEvents || false;\n    this.announceFailedHeartbeats = setup.announceFailedHeartbeats || true;\n    this.announceSuccessfulHeartbeats = setup.announceSuccessfulHeartbeats || false;\n    this.useInstanceId = setup.useInstanceId || false;\n    this.useRequestId = setup.useRequestId || false;\n    this.requestMessageCountThreshold = setup.requestMessageCountThreshold;\n    this.setTransactionTimeout(setup.transactionalRequestTimeout || 15 * 1000);\n    this.setSubscribeTimeout(setup.subscribeRequestTimeout || 310 * 1000);\n    this.setSendBeaconConfig(setup.useSendBeacon || true);\n\n    if (setup.presenceTimeout) {\n      this.setPresenceTimeout(setup.presenceTimeout);\n    } else {\n      this._presenceTimeout = PRESENCE_TIMEOUT_DEFAULT;\n    }\n\n    if (setup.heartbeatInterval != null) {\n      this.setHeartbeatInterval(setup.heartbeatInterval);\n    }\n\n    this.setUUID(this._decideUUID(setup.uuid));\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"getAuthKey\",\n    value: function getAuthKey() {\n      return this.authKey;\n    }\n  }, {\n    key: \"setAuthKey\",\n    value: function setAuthKey(val) {\n      this.authKey = val;\n      return this;\n    }\n  }, {\n    key: \"setCipherKey\",\n    value: function setCipherKey(val) {\n      this.cipherKey = val;\n      return this;\n    }\n  }, {\n    key: \"getUUID\",\n    value: function getUUID() {\n      return this.UUID;\n    }\n  }, {\n    key: \"setUUID\",\n    value: function setUUID(val) {\n      if (this._db && this._db.set) this._db.set(\"\".concat(this.subscribeKey, \"uuid\"), val);\n      this.UUID = val;\n      return this;\n    }\n  }, {\n    key: \"getFilterExpression\",\n    value: function getFilterExpression() {\n      return this.filterExpression;\n    }\n  }, {\n    key: \"setFilterExpression\",\n    value: function setFilterExpression(val) {\n      this.filterExpression = val;\n      return this;\n    }\n  }, {\n    key: \"getPresenceTimeout\",\n    value: function getPresenceTimeout() {\n      return this._presenceTimeout;\n    }\n  }, {\n    key: \"setPresenceTimeout\",\n    value: function setPresenceTimeout(val) {\n      if (val >= PRESENCE_TIMEOUT_MINIMUM) {\n        this._presenceTimeout = val;\n      } else {\n        this._presenceTimeout = PRESENCE_TIMEOUT_MINIMUM;\n        console.log('WARNING: Presence timeout is less than the minimum. Using minimum value: ', this._presenceTimeout);\n      }\n\n      this.setHeartbeatInterval(this._presenceTimeout / 2 - 1);\n      return this;\n    }\n  }, {\n    key: \"setProxy\",\n    value: function setProxy(proxy) {\n      this.proxy = proxy;\n    }\n  }, {\n    key: \"getHeartbeatInterval\",\n    value: function getHeartbeatInterval() {\n      return this._heartbeatInterval;\n    }\n  }, {\n    key: \"setHeartbeatInterval\",\n    value: function setHeartbeatInterval(val) {\n      this._heartbeatInterval = val;\n      return this;\n    }\n  }, {\n    key: \"getSubscribeTimeout\",\n    value: function getSubscribeTimeout() {\n      return this._subscribeRequestTimeout;\n    }\n  }, {\n    key: \"setSubscribeTimeout\",\n    value: function setSubscribeTimeout(val) {\n      this._subscribeRequestTimeout = val;\n      return this;\n    }\n  }, {\n    key: \"getTransactionTimeout\",\n    value: function getTransactionTimeout() {\n      return this._transactionalRequestTimeout;\n    }\n  }, {\n    key: \"setTransactionTimeout\",\n    value: function setTransactionTimeout(val) {\n      this._transactionalRequestTimeout = val;\n      return this;\n    }\n  }, {\n    key: \"isSendBeaconEnabled\",\n    value: function isSendBeaconEnabled() {\n      return this._useSendBeacon;\n    }\n  }, {\n    key: \"setSendBeaconConfig\",\n    value: function setSendBeaconConfig(val) {\n      this._useSendBeacon = val;\n      return this;\n    }\n  }, {\n    key: \"getVersion\",\n    value: function getVersion() {\n      return '4.32.1';\n    }\n  }, {\n    key: \"_addPnsdkSuffix\",\n    value: function _addPnsdkSuffix(name, suffix) {\n      this._PNSDKSuffix[name] = suffix;\n    }\n  }, {\n    key: \"_getPnsdkSuffix\",\n    value: function _getPnsdkSuffix(separator) {\n      var _this = this;\n\n      return Object.keys(this._PNSDKSuffix).reduce(function (result, key) {\n        return result + separator + _this._PNSDKSuffix[key];\n      }, '');\n    }\n  }, {\n    key: \"_decideUUID\",\n    value: function _decideUUID(providedUUID) {\n      if (providedUUID) {\n        return providedUUID;\n      }\n\n      if (this._db && this._db.get && this._db.get(\"\".concat(this.subscribeKey, \"uuid\"))) {\n        return this._db.get(\"\".concat(this.subscribeKey, \"uuid\"));\n      }\n\n      return \"pn-\".concat(_uuid[\"default\"].createUUID());\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":10,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/constants/categories.js","name":"./src/core/constants/categories.js","index":27,"index2":23,"size":704,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":18,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","module":"./src/core/components/endpoint.js","moduleName":"./src/core/components/endpoint.js","type":"cjs require","userRequest":"../constants/categories","loc":"36:41-75"},{"moduleId":23,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/listener_manager.js","module":"./src/core/components/listener_manager.js","moduleName":"./src/core/components/listener_manager.js","type":"cjs require","userRequest":"../constants/categories","loc":"18:41-75"},{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./constants/categories","loc":"174:41-74"},{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../constants/categories","loc":"32:41-75"},{"moduleId":121,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/networking/index.js","module":"./src/networking/index.js","moduleName":"./src/networking/index.js","type":"cjs require","userRequest":"../core/constants/categories","loc":"18:41-80"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\nvar _default = {\n  PNNetworkUpCategory: 'PNNetworkUpCategory',\n  PNNetworkDownCategory: 'PNNetworkDownCategory',\n  PNNetworkIssuesCategory: 'PNNetworkIssuesCategory',\n  PNTimeoutCategory: 'PNTimeoutCategory',\n  PNBadRequestCategory: 'PNBadRequestCategory',\n  PNAccessDeniedCategory: 'PNAccessDeniedCategory',\n  PNUnknownCategory: 'PNUnknownCategory',\n  PNReconnectedCategory: 'PNReconnectedCategory',\n  PNConnectedCategory: 'PNConnectedCategory',\n  PNRequestMessageCountExceededCategory: 'PNRequestMessageCountExceededCategory'\n};\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":17,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/uuid.js","name":"./src/core/components/uuid.js","index":15,"index2":13,"size":521,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":8,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/config.js","module":"./src/core/components/config.js","moduleName":"./src/core/components/config.js","type":"cjs require","userRequest":"./uuid","loc":"16:35-52"},{"moduleId":18,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","module":"./src/core/components/endpoint.js","moduleName":"./src/core/components/endpoint.js","type":"cjs require","userRequest":"./uuid","loc":"26:35-52"},{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/uuid","loc":"178:35-63"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _lilUuid = _interopRequireDefault(require(\"lil-uuid\"));\n\nvar _default = {\n  createUUID: function createUUID() {\n    if (_lilUuid[\"default\"].uuid) {\n      return _lilUuid[\"default\"].uuid();\n    } else {\n      return (0, _lilUuid[\"default\"])();\n    }\n  }\n};\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":18,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","name":"./src/core/components/endpoint.js","index":39,"index2":41,"size":12038,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/endpoint","loc":"32:39-71"},{"moduleId":71,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/send_file.js","module":"./src/core/endpoints/file_upload/send_file.js","moduleName":"./src/core/endpoints/file_upload/send_file.js","type":"cjs require","userRequest":"../../components/endpoint","loc":"14:16-52"},{"moduleId":73,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/get_file_url.js","module":"./src/core/endpoints/file_upload/get_file_url.js","moduleName":"./src/core/endpoints/file_upload/get_file_url.js","type":"cjs require","userRequest":"../../components/endpoint","loc":"10:16-52"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.createValidationError = createValidationError;\nexports.generatePNSDK = generatePNSDK;\nexports.signRequest = signRequest;\nexports[\"default\"] = _default;\nexports.PubNubError = void 0;\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _inherits2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inherits\"));\n\nvar _possibleConstructorReturn2 = _interopRequireDefault(require(\"@babel/runtime/helpers/possibleConstructorReturn\"));\n\nvar _getPrototypeOf2 = _interopRequireDefault(require(\"@babel/runtime/helpers/getPrototypeOf\"));\n\nvar _wrapNativeSuper2 = _interopRequireDefault(require(\"@babel/runtime/helpers/wrapNativeSuper\"));\n\nvar _uuid = _interopRequireDefault(require(\"./uuid\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _utils = _interopRequireDefault(require(\"../utils\"));\n\nvar _config = _interopRequireDefault(require(\"./config\"));\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nvar _categories = _interopRequireDefault(require(\"../constants/categories\"));\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2[\"default\"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2[\"default\"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2[\"default\"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2[\"default\"])(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nvar PubNubError = function (_Error) {\n  (0, _inherits2[\"default\"])(PubNubError, _Error);\n\n  var _super = _createSuper(PubNubError);\n\n  function PubNubError(message, status) {\n    var _this;\n\n    (0, _classCallCheck2[\"default\"])(this, PubNubError);\n    _this = _super.call(this, message);\n    _this.name = _this.constructor.name;\n    _this.status = status;\n    _this.message = message;\n    return _this;\n  }\n\n  return PubNubError;\n}((0, _wrapNativeSuper2[\"default\"])(Error));\n\nexports.PubNubError = PubNubError;\n\nfunction createError(errorPayload, type) {\n  errorPayload.type = type;\n  errorPayload.error = true;\n  return errorPayload;\n}\n\nfunction createValidationError(message) {\n  return createError({\n    message: message\n  }, 'validationError');\n}\n\nfunction decideURL(endpoint, modules, incomingParams) {\n  if (endpoint.usePost && endpoint.usePost(modules, incomingParams)) {\n    return endpoint.postURL(modules, incomingParams);\n  } else if (endpoint.usePatch && endpoint.usePatch(modules, incomingParams)) {\n    return endpoint.patchURL(modules, incomingParams);\n  } else if (endpoint.useGetFile && endpoint.useGetFile(modules, incomingParams)) {\n    return endpoint.getFileURL(modules, incomingParams);\n  } else {\n    return endpoint.getURL(modules, incomingParams);\n  }\n}\n\nfunction getAuthToken(endpoint, modules, incomingParams) {\n  var token;\n\n  if (endpoint.getAuthToken) {\n    token = endpoint.getAuthToken(modules, incomingParams);\n  }\n\n  return token;\n}\n\nfunction generatePNSDK(config) {\n  if (config.sdkName) {\n    return config.sdkName;\n  }\n\n  var base = \"PubNub-JS-\".concat(config.sdkFamily);\n\n  if (config.partnerId) {\n    base += \"-\".concat(config.partnerId);\n  }\n\n  base += \"/\".concat(config.getVersion());\n\n  var pnsdkSuffix = config._getPnsdkSuffix(' ');\n\n  if (pnsdkSuffix.length > 0) {\n    base += pnsdkSuffix;\n  }\n\n  return base;\n}\n\nfunction getHttpMethod(modules, endpoint, incomingParams) {\n  if (endpoint.usePost && endpoint.usePost(modules, incomingParams)) {\n    return 'POST';\n  } else if (endpoint.usePatch && endpoint.usePatch(modules, incomingParams)) {\n    return 'PATCH';\n  } else if (endpoint.useDelete && endpoint.useDelete(modules, incomingParams)) {\n    return 'DELETE';\n  } else if (endpoint.useGetFile && endpoint.useGetFile(modules, incomingParams)) {\n    return 'GETFILE';\n  } else {\n    return 'GET';\n  }\n}\n\nfunction signRequest(modules, url, outgoingParams, incomingParams, endpoint) {\n  var config = modules.config,\n      crypto = modules.crypto;\n  var httpMethod = getHttpMethod(modules, endpoint, incomingParams);\n  outgoingParams.timestamp = Math.floor(new Date().getTime() / 1000);\n\n  if (endpoint.getOperation() === 'PNPublishOperation' && endpoint.usePost && endpoint.usePost(modules, incomingParams)) {\n    httpMethod = 'GET';\n  }\n\n  if (httpMethod === 'GETFILE') {\n    httpMethod = 'GET';\n  }\n\n  var signInput = \"\".concat(httpMethod, \"\\n\").concat(config.publishKey, \"\\n\").concat(url, \"\\n\").concat(_utils[\"default\"].signPamFromParams(outgoingParams), \"\\n\");\n\n  if (httpMethod === 'POST') {\n    var payload = endpoint.postPayload(modules, incomingParams);\n\n    if (typeof payload === 'string') {\n      signInput += payload;\n    } else {\n      signInput += JSON.stringify(payload);\n    }\n  } else if (httpMethod === 'PATCH') {\n    var _payload = endpoint.patchPayload(modules, incomingParams);\n\n    if (typeof _payload === 'string') {\n      signInput += _payload;\n    } else {\n      signInput += JSON.stringify(_payload);\n    }\n  }\n\n  var signature = \"v2.\".concat(crypto.HMACSHA256(signInput));\n  signature = signature.replace(/\\+/g, '-');\n  signature = signature.replace(/\\//g, '_');\n  signature = signature.replace(/=+$/, '');\n  outgoingParams.signature = signature;\n}\n\nfunction _default(modules, endpoint) {\n  var networking = modules.networking,\n      config = modules.config,\n      telemetryManager = modules.telemetryManager;\n\n  var requestId = _uuid[\"default\"].createUUID();\n\n  var callback = null;\n  var promiseComponent = null;\n  var incomingParams = {};\n\n  if (endpoint.getOperation() === _operations[\"default\"].PNTimeOperation || endpoint.getOperation() === _operations[\"default\"].PNChannelGroupsOperation) {\n    callback = arguments.length <= 2 ? undefined : arguments[2];\n  } else {\n    incomingParams = arguments.length <= 2 ? undefined : arguments[2];\n    callback = arguments.length <= 3 ? undefined : arguments[3];\n  }\n\n  if (typeof Promise !== 'undefined' && !callback) {\n    promiseComponent = _utils[\"default\"].createPromise();\n  }\n\n  var validationResult = endpoint.validateParams(modules, incomingParams);\n\n  if (validationResult) {\n    if (callback) {\n      return callback(createValidationError(validationResult));\n    } else if (promiseComponent) {\n      promiseComponent.reject(new PubNubError('Validation failed, check status for details', createValidationError(validationResult)));\n      return promiseComponent.promise;\n    }\n\n    return;\n  }\n\n  var outgoingParams = endpoint.prepareParams(modules, incomingParams);\n  var url = decideURL(endpoint, modules, incomingParams);\n  var callInstance;\n  var networkingParams = {\n    url: url,\n    operation: endpoint.getOperation(),\n    timeout: endpoint.getRequestTimeout(modules),\n    headers: endpoint.getRequestHeaders ? endpoint.getRequestHeaders() : {},\n    ignoreBody: typeof endpoint.ignoreBody === 'function' ? endpoint.ignoreBody(modules) : false,\n    forceBuffered: typeof endpoint.forceBuffered === 'function' ? endpoint.forceBuffered(modules, incomingParams) : null\n  };\n  outgoingParams.uuid = config.UUID;\n  outgoingParams.pnsdk = generatePNSDK(config);\n  var telemetryLatencies = telemetryManager.operationsLatencyForRequest();\n\n  if (Object.keys(telemetryLatencies).length) {\n    outgoingParams = _objectSpread(_objectSpread({}, outgoingParams), telemetryLatencies);\n  }\n\n  if (config.useInstanceId) {\n    outgoingParams.instanceid = config.instanceId;\n  }\n\n  if (config.useRequestId) {\n    outgoingParams.requestid = requestId;\n  }\n\n  if (endpoint.isAuthSupported()) {\n    var token = getAuthToken(endpoint, modules, incomingParams);\n    var tokenOrKey = token || config.getAuthKey();\n\n    if (tokenOrKey) {\n      outgoingParams.auth = tokenOrKey;\n    }\n  }\n\n  if (config.secretKey) {\n    signRequest(modules, url, outgoingParams, incomingParams, endpoint);\n  }\n\n  var onResponse = function onResponse(status, payload) {\n    var _responseP;\n\n    if (status.error) {\n      if (endpoint.handleError) {\n        endpoint.handleError(modules, incomingParams, status);\n      }\n\n      if (callback) {\n        callback(status);\n      } else if (promiseComponent) {\n        promiseComponent.reject(new PubNubError('PubNub call failed, check status for details', status));\n      }\n\n      return;\n    }\n\n    telemetryManager.stopLatencyMeasure(endpoint.getOperation(), requestId);\n    var responseP = endpoint.handleResponse(modules, payload, incomingParams);\n\n    if (typeof ((_responseP = responseP) === null || _responseP === void 0 ? void 0 : _responseP.then) !== 'function') {\n      responseP = Promise.resolve(responseP);\n    }\n\n    responseP.then(function (result) {\n      if (callback) {\n        callback(status, result);\n      } else if (promiseComponent) {\n        promiseComponent.fulfill(result);\n      }\n    })[\"catch\"](function (e) {\n      if (callback) {\n        var errorData = e;\n\n        if (endpoint.getOperation() === _operations[\"default\"].PNSubscribeOperation) {\n          errorData = {\n            statusCode: 400,\n            error: true,\n            operation: endpoint.getOperation(),\n            errorData: e,\n            category: _categories[\"default\"].PNUnknownCategory\n          };\n        }\n\n        callback(errorData, null);\n      } else if (promiseComponent) {\n        promiseComponent.reject(new PubNubError('PubNub call failed, check status for details', e));\n      }\n    });\n  };\n\n  telemetryManager.startLatencyMeasure(endpoint.getOperation(), requestId);\n\n  if (getHttpMethod(modules, endpoint, incomingParams) === 'POST') {\n    var payload = endpoint.postPayload(modules, incomingParams);\n    callInstance = networking.POST(outgoingParams, payload, networkingParams, onResponse);\n  } else if (getHttpMethod(modules, endpoint, incomingParams) === 'PATCH') {\n    var _payload2 = endpoint.patchPayload(modules, incomingParams);\n\n    callInstance = networking.PATCH(outgoingParams, _payload2, networkingParams, onResponse);\n  } else if (getHttpMethod(modules, endpoint, incomingParams) === 'DELETE') {\n    callInstance = networking.DELETE(outgoingParams, networkingParams, onResponse);\n  } else if (getHttpMethod(modules, endpoint, incomingParams) === 'GETFILE') {\n    callInstance = networking.GETFILE(outgoingParams, networkingParams, onResponse);\n  } else {\n    callInstance = networking.GET(outgoingParams, networkingParams, onResponse);\n  }\n\n  if (endpoint.getOperation() === _operations[\"default\"].PNSubscribeOperation) {\n    return callInstance;\n  }\n\n  if (promiseComponent) {\n    return promiseComponent.promise;\n  }\n}"},{"id":20,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/cryptography/index.js","name":"./src/core/components/cryptography/index.js","index":18,"index2":22,"size":7342,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/cryptography/index","loc":"20:36-78"},{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../components/cryptography","loc":"18:43-80"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _config = _interopRequireDefault(require(\"../config\"));\n\nvar _hmacSha = _interopRequireDefault(require(\"./hmac-sha256\"));\n\nfunction bufferToWordArray(b) {\n  var wa = [];\n  var i;\n\n  for (i = 0; i < b.length; i += 1) {\n    wa[i / 4 | 0] |= b[i] << 24 - 8 * i;\n  }\n\n  return _hmacSha[\"default\"].lib.WordArray.create(wa, b.length);\n}\n\nvar _default = function () {\n  function _default(_ref) {\n    var config = _ref.config;\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_config\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_iv\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_allowedKeyEncodings\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_allowedKeyLengths\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_allowedModes\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_defaultOptions\", void 0);\n    this._config = config;\n    this._iv = '0123456789012345';\n    this._allowedKeyEncodings = ['hex', 'utf8', 'base64', 'binary'];\n    this._allowedKeyLengths = [128, 256];\n    this._allowedModes = ['ecb', 'cbc'];\n    this._defaultOptions = {\n      encryptKey: true,\n      keyEncoding: 'utf8',\n      keyLength: 256,\n      mode: 'cbc'\n    };\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"HMACSHA256\",\n    value: function HMACSHA256(data) {\n      var hash = _hmacSha[\"default\"].HmacSHA256(data, this._config.secretKey);\n\n      return hash.toString(_hmacSha[\"default\"].enc.Base64);\n    }\n  }, {\n    key: \"SHA256\",\n    value: function SHA256(s) {\n      return _hmacSha[\"default\"].SHA256(s).toString(_hmacSha[\"default\"].enc.Hex);\n    }\n  }, {\n    key: \"_parseOptions\",\n    value: function _parseOptions(incomingOptions) {\n      var options = incomingOptions || {};\n      if (!options.hasOwnProperty('encryptKey')) options.encryptKey = this._defaultOptions.encryptKey;\n      if (!options.hasOwnProperty('keyEncoding')) options.keyEncoding = this._defaultOptions.keyEncoding;\n      if (!options.hasOwnProperty('keyLength')) options.keyLength = this._defaultOptions.keyLength;\n      if (!options.hasOwnProperty('mode')) options.mode = this._defaultOptions.mode;\n\n      if (this._allowedKeyEncodings.indexOf(options.keyEncoding.toLowerCase()) === -1) {\n        options.keyEncoding = this._defaultOptions.keyEncoding;\n      }\n\n      if (this._allowedKeyLengths.indexOf(parseInt(options.keyLength, 10)) === -1) {\n        options.keyLength = this._defaultOptions.keyLength;\n      }\n\n      if (this._allowedModes.indexOf(options.mode.toLowerCase()) === -1) {\n        options.mode = this._defaultOptions.mode;\n      }\n\n      return options;\n    }\n  }, {\n    key: \"_decodeKey\",\n    value: function _decodeKey(key, options) {\n      if (options.keyEncoding === 'base64') {\n        return _hmacSha[\"default\"].enc.Base64.parse(key);\n      } else if (options.keyEncoding === 'hex') {\n        return _hmacSha[\"default\"].enc.Hex.parse(key);\n      } else {\n        return key;\n      }\n    }\n  }, {\n    key: \"_getPaddedKey\",\n    value: function _getPaddedKey(key, options) {\n      key = this._decodeKey(key, options);\n\n      if (options.encryptKey) {\n        return _hmacSha[\"default\"].enc.Utf8.parse(this.SHA256(key).slice(0, 32));\n      } else {\n        return key;\n      }\n    }\n  }, {\n    key: \"_getMode\",\n    value: function _getMode(options) {\n      if (options.mode === 'ecb') {\n        return _hmacSha[\"default\"].mode.ECB;\n      } else {\n        return _hmacSha[\"default\"].mode.CBC;\n      }\n    }\n  }, {\n    key: \"_getIV\",\n    value: function _getIV(options) {\n      return options.mode === 'cbc' ? _hmacSha[\"default\"].enc.Utf8.parse(this._iv) : null;\n    }\n  }, {\n    key: \"_getRandomIV\",\n    value: function _getRandomIV() {\n      return _hmacSha[\"default\"].lib.WordArray.random(16);\n    }\n  }, {\n    key: \"encrypt\",\n    value: function encrypt(data, customCipherKey, options) {\n      if (this._config.customEncrypt) {\n        return this._config.customEncrypt(data);\n      } else {\n        return this.pnEncrypt(data, customCipherKey, options);\n      }\n    }\n  }, {\n    key: \"decrypt\",\n    value: function decrypt(data, customCipherKey, options) {\n      if (this._config.customDecrypt) {\n        return this._config.customDecrypt(data);\n      } else {\n        return this.pnDecrypt(data, customCipherKey, options);\n      }\n    }\n  }, {\n    key: \"pnEncrypt\",\n    value: function pnEncrypt(data, customCipherKey, options) {\n      if (!customCipherKey && !this._config.cipherKey) return data;\n      options = this._parseOptions(options);\n\n      var mode = this._getMode(options);\n\n      var cipherKey = this._getPaddedKey(customCipherKey || this._config.cipherKey, options);\n\n      if (this._config.useRandomIVs) {\n        var waIv = this._getRandomIV();\n\n        var waPayload = _hmacSha[\"default\"].AES.encrypt(data, cipherKey, {\n          iv: waIv,\n          mode: mode\n        }).ciphertext;\n\n        return waIv.clone().concat(waPayload.clone()).toString(_hmacSha[\"default\"].enc.Base64);\n      } else {\n        var iv = this._getIV(options);\n\n        var encryptedHexArray = _hmacSha[\"default\"].AES.encrypt(data, cipherKey, {\n          iv: iv,\n          mode: mode\n        }).ciphertext;\n\n        var base64Encrypted = encryptedHexArray.toString(_hmacSha[\"default\"].enc.Base64);\n        return base64Encrypted || data;\n      }\n    }\n  }, {\n    key: \"pnDecrypt\",\n    value: function pnDecrypt(data, customCipherKey, options) {\n      if (!customCipherKey && !this._config.cipherKey) return data;\n      options = this._parseOptions(options);\n\n      var mode = this._getMode(options);\n\n      var cipherKey = this._getPaddedKey(customCipherKey || this._config.cipherKey, options);\n\n      if (this._config.useRandomIVs) {\n        var ciphertext = Buffer.from(data, 'base64');\n        var iv = bufferToWordArray(ciphertext.slice(0, 16));\n        var payload = bufferToWordArray(ciphertext.slice(16));\n\n        try {\n          var plainJSON = _hmacSha[\"default\"].AES.decrypt({\n            ciphertext: payload\n          }, cipherKey, {\n            iv: iv,\n            mode: mode\n          }).toString(_hmacSha[\"default\"].enc.Utf8);\n\n          var plaintext = JSON.parse(plainJSON);\n          return plaintext;\n        } catch (e) {\n          return null;\n        }\n      } else {\n        var _iv = this._getIV(options);\n\n        try {\n          var _ciphertext = _hmacSha[\"default\"].enc.Base64.parse(data);\n\n          var _plainJSON = _hmacSha[\"default\"].AES.decrypt({\n            ciphertext: _ciphertext\n          }, cipherKey, {\n            iv: _iv,\n            mode: mode\n          }).toString(_hmacSha[\"default\"].enc.Utf8);\n\n          var _plaintext = JSON.parse(_plainJSON);\n\n          return _plaintext;\n        } catch (e) {\n          return null;\n        }\n      }\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":22,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/cryptography/hmac-sha256.js","name":"./src/core/components/cryptography/hmac-sha256.js","index":24,"index2":21,"size":25476,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":20,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/cryptography/index.js","module":"./src/core/components/cryptography/index.js","moduleName":"./src/core/components/cryptography/index.js","type":"cjs require","userRequest":"./hmac-sha256","loc":"18:38-62"},{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../core/components/cryptography/hmac-sha256","loc":"26:38-92"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar CryptoJS = CryptoJS || function (h, s) {\n  var f = {},\n      g = f.lib = {},\n      q = function q() {},\n      m = g.Base = {\n    extend: function extend(a) {\n      q.prototype = this;\n      var c = new q();\n      a && c.mixIn(a);\n      c.hasOwnProperty(\"init\") || (c.init = function () {\n        c.$super.init.apply(this, arguments);\n      });\n      c.init.prototype = c;\n      c.$super = this;\n      return c;\n    },\n    create: function create() {\n      var a = this.extend();\n      a.init.apply(a, arguments);\n      return a;\n    },\n    init: function init() {},\n    mixIn: function mixIn(a) {\n      for (var c in a) {\n        a.hasOwnProperty(c) && (this[c] = a[c]);\n      }\n\n      a.hasOwnProperty(\"toString\") && (this.toString = a.toString);\n    },\n    clone: function clone() {\n      return this.init.prototype.extend(this);\n    }\n  },\n      r = g.WordArray = m.extend({\n    init: function init(a, c) {\n      a = this.words = a || [];\n      this.sigBytes = c != s ? c : 4 * a.length;\n    },\n    toString: function toString(a) {\n      return (a || k).stringify(this);\n    },\n    concat: function concat(a) {\n      var c = this.words,\n          d = a.words,\n          b = this.sigBytes;\n      a = a.sigBytes;\n      this.clamp();\n      if (b % 4) for (var e = 0; e < a; e++) {\n        c[b + e >>> 2] |= (d[e >>> 2] >>> 24 - 8 * (e % 4) & 255) << 24 - 8 * ((b + e) % 4);\n      } else if (65535 < d.length) for (e = 0; e < a; e += 4) {\n        c[b + e >>> 2] = d[e >>> 2];\n      } else c.push.apply(c, d);\n      this.sigBytes += a;\n      return this;\n    },\n    clamp: function clamp() {\n      var a = this.words,\n          c = this.sigBytes;\n      a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n      a.length = h.ceil(c / 4);\n    },\n    clone: function clone() {\n      var a = m.clone.call(this);\n      a.words = this.words.slice(0);\n      return a;\n    },\n    random: function random(a) {\n      for (var c = [], d = 0; d < a; d += 4) {\n        c.push(4294967296 * h.random() | 0);\n      }\n\n      return new r.init(c, a);\n    }\n  }),\n      l = f.enc = {},\n      k = l.Hex = {\n    stringify: function stringify(a) {\n      var c = a.words;\n      a = a.sigBytes;\n\n      for (var d = [], b = 0; b < a; b++) {\n        var e = c[b >>> 2] >>> 24 - 8 * (b % 4) & 255;\n        d.push((e >>> 4).toString(16));\n        d.push((e & 15).toString(16));\n      }\n\n      return d.join(\"\");\n    },\n    parse: function parse(a) {\n      for (var c = a.length, d = [], b = 0; b < c; b += 2) {\n        d[b >>> 3] |= parseInt(a.substr(b, 2), 16) << 24 - 4 * (b % 8);\n      }\n\n      return new r.init(d, c / 2);\n    }\n  },\n      n = l.Latin1 = {\n    stringify: function stringify(a) {\n      var c = a.words;\n      a = a.sigBytes;\n\n      for (var d = [], b = 0; b < a; b++) {\n        d.push(String.fromCharCode(c[b >>> 2] >>> 24 - 8 * (b % 4) & 255));\n      }\n\n      return d.join(\"\");\n    },\n    parse: function parse(a) {\n      for (var c = a.length, d = [], b = 0; b < c; b++) {\n        d[b >>> 2] |= (a.charCodeAt(b) & 255) << 24 - 8 * (b % 4);\n      }\n\n      return new r.init(d, c);\n    }\n  },\n      j = l.Utf8 = {\n    stringify: function stringify(a) {\n      try {\n        return decodeURIComponent(escape(n.stringify(a)));\n      } catch (c) {\n        throw Error(\"Malformed UTF-8 data\");\n      }\n    },\n    parse: function parse(a) {\n      return n.parse(unescape(encodeURIComponent(a)));\n    }\n  },\n      u = g.BufferedBlockAlgorithm = m.extend({\n    reset: function reset() {\n      this._data = new r.init();\n      this._nDataBytes = 0;\n    },\n    _append: function _append(a) {\n      \"string\" == typeof a && (a = j.parse(a));\n\n      this._data.concat(a);\n\n      this._nDataBytes += a.sigBytes;\n    },\n    _process: function _process(a) {\n      var c = this._data,\n          d = c.words,\n          b = c.sigBytes,\n          e = this.blockSize,\n          f = b / (4 * e),\n          f = a ? h.ceil(f) : h.max((f | 0) - this._minBufferSize, 0);\n      a = f * e;\n      b = h.min(4 * a, b);\n\n      if (a) {\n        for (var g = 0; g < a; g += e) {\n          this._doProcessBlock(d, g);\n        }\n\n        g = d.splice(0, a);\n        c.sigBytes -= b;\n      }\n\n      return new r.init(g, b);\n    },\n    clone: function clone() {\n      var a = m.clone.call(this);\n      a._data = this._data.clone();\n      return a;\n    },\n    _minBufferSize: 0\n  });\n\n  g.Hasher = u.extend({\n    cfg: m.extend(),\n    init: function init(a) {\n      this.cfg = this.cfg.extend(a);\n      this.reset();\n    },\n    reset: function reset() {\n      u.reset.call(this);\n\n      this._doReset();\n    },\n    update: function update(a) {\n      this._append(a);\n\n      this._process();\n\n      return this;\n    },\n    finalize: function finalize(a) {\n      a && this._append(a);\n      return this._doFinalize();\n    },\n    blockSize: 16,\n    _createHelper: function _createHelper(a) {\n      return function (c, d) {\n        return new a.init(d).finalize(c);\n      };\n    },\n    _createHmacHelper: function _createHmacHelper(a) {\n      return function (c, d) {\n        return new t.HMAC.init(a, d).finalize(c);\n      };\n    }\n  });\n  var t = f.algo = {};\n  return f;\n}(Math);\n\n(function (h) {\n  for (var s = CryptoJS, f = s.lib, g = f.WordArray, q = f.Hasher, f = s.algo, m = [], r = [], l = function l(a) {\n    return 4294967296 * (a - (a | 0)) | 0;\n  }, k = 2, n = 0; 64 > n;) {\n    var j;\n\n    a: {\n      j = k;\n\n      for (var u = h.sqrt(j), t = 2; t <= u; t++) {\n        if (!(j % t)) {\n          j = !1;\n          break a;\n        }\n      }\n\n      j = !0;\n    }\n\n    j && (8 > n && (m[n] = l(h.pow(k, 0.5))), r[n] = l(h.pow(k, 1 / 3)), n++);\n    k++;\n  }\n\n  var a = [],\n      f = f.SHA256 = q.extend({\n    _doReset: function _doReset() {\n      this._hash = new g.init(m.slice(0));\n    },\n    _doProcessBlock: function _doProcessBlock(c, d) {\n      for (var b = this._hash.words, e = b[0], f = b[1], g = b[2], j = b[3], h = b[4], m = b[5], n = b[6], q = b[7], p = 0; 64 > p; p++) {\n        if (16 > p) a[p] = c[d + p] | 0;else {\n          var k = a[p - 15],\n              l = a[p - 2];\n          a[p] = ((k << 25 | k >>> 7) ^ (k << 14 | k >>> 18) ^ k >>> 3) + a[p - 7] + ((l << 15 | l >>> 17) ^ (l << 13 | l >>> 19) ^ l >>> 10) + a[p - 16];\n        }\n        k = q + ((h << 26 | h >>> 6) ^ (h << 21 | h >>> 11) ^ (h << 7 | h >>> 25)) + (h & m ^ ~h & n) + r[p] + a[p];\n        l = ((e << 30 | e >>> 2) ^ (e << 19 | e >>> 13) ^ (e << 10 | e >>> 22)) + (e & f ^ e & g ^ f & g);\n        q = n;\n        n = m;\n        m = h;\n        h = j + k | 0;\n        j = g;\n        g = f;\n        f = e;\n        e = k + l | 0;\n      }\n\n      b[0] = b[0] + e | 0;\n      b[1] = b[1] + f | 0;\n      b[2] = b[2] + g | 0;\n      b[3] = b[3] + j | 0;\n      b[4] = b[4] + h | 0;\n      b[5] = b[5] + m | 0;\n      b[6] = b[6] + n | 0;\n      b[7] = b[7] + q | 0;\n    },\n    _doFinalize: function _doFinalize() {\n      var a = this._data,\n          d = a.words,\n          b = 8 * this._nDataBytes,\n          e = 8 * a.sigBytes;\n      d[e >>> 5] |= 128 << 24 - e % 32;\n      d[(e + 64 >>> 9 << 4) + 14] = h.floor(b / 4294967296);\n      d[(e + 64 >>> 9 << 4) + 15] = b;\n      a.sigBytes = 4 * d.length;\n\n      this._process();\n\n      return this._hash;\n    },\n    clone: function clone() {\n      var a = q.clone.call(this);\n      a._hash = this._hash.clone();\n      return a;\n    }\n  });\n  s.SHA256 = q._createHelper(f);\n  s.HmacSHA256 = q._createHmacHelper(f);\n})(Math);\n\n(function () {\n  var h = CryptoJS,\n      s = h.enc.Utf8;\n  h.algo.HMAC = h.lib.Base.extend({\n    init: function init(f, g) {\n      f = this._hasher = new f.init();\n      \"string\" == typeof g && (g = s.parse(g));\n      var h = f.blockSize,\n          m = 4 * h;\n      g.sigBytes > m && (g = f.finalize(g));\n      g.clamp();\n\n      for (var r = this._oKey = g.clone(), l = this._iKey = g.clone(), k = r.words, n = l.words, j = 0; j < h; j++) {\n        k[j] ^= 1549556828, n[j] ^= 909522486;\n      }\n\n      r.sigBytes = l.sigBytes = m;\n      this.reset();\n    },\n    reset: function reset() {\n      var f = this._hasher;\n      f.reset();\n      f.update(this._iKey);\n    },\n    update: function update(f) {\n      this._hasher.update(f);\n\n      return this;\n    },\n    finalize: function finalize(f) {\n      var g = this._hasher;\n      f = g.finalize(f);\n      g.reset();\n      return g.finalize(this._oKey.clone().concat(f));\n    }\n  });\n})();\n\n(function () {\n  var u = CryptoJS,\n      p = u.lib.WordArray;\n  u.enc.Base64 = {\n    stringify: function stringify(d) {\n      var l = d.words,\n          p = d.sigBytes,\n          t = this._map;\n      d.clamp();\n      d = [];\n\n      for (var r = 0; r < p; r += 3) {\n        for (var w = (l[r >>> 2] >>> 24 - 8 * (r % 4) & 255) << 16 | (l[r + 1 >>> 2] >>> 24 - 8 * ((r + 1) % 4) & 255) << 8 | l[r + 2 >>> 2] >>> 24 - 8 * ((r + 2) % 4) & 255, v = 0; 4 > v && r + 0.75 * v < p; v++) {\n          d.push(t.charAt(w >>> 6 * (3 - v) & 63));\n        }\n      }\n\n      if (l = t.charAt(64)) for (; d.length % 4;) {\n        d.push(l);\n      }\n      return d.join(\"\");\n    },\n    parse: function parse(d) {\n      var l = d.length,\n          s = this._map,\n          t = s.charAt(64);\n      t && (t = d.indexOf(t), -1 != t && (l = t));\n\n      for (var t = [], r = 0, w = 0; w < l; w++) {\n        if (w % 4) {\n          var v = s.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n              b = s.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n          t[r >>> 2] |= (v | b) << 24 - 8 * (r % 4);\n          r++;\n        }\n      }\n\n      return p.create(t, r);\n    },\n    _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n  };\n})();\n\n(function (u) {\n  function p(b, n, a, c, e, j, k) {\n    b = b + (n & a | ~n & c) + e + k;\n    return (b << j | b >>> 32 - j) + n;\n  }\n\n  function d(b, n, a, c, e, j, k) {\n    b = b + (n & c | a & ~c) + e + k;\n    return (b << j | b >>> 32 - j) + n;\n  }\n\n  function l(b, n, a, c, e, j, k) {\n    b = b + (n ^ a ^ c) + e + k;\n    return (b << j | b >>> 32 - j) + n;\n  }\n\n  function s(b, n, a, c, e, j, k) {\n    b = b + (a ^ (n | ~c)) + e + k;\n    return (b << j | b >>> 32 - j) + n;\n  }\n\n  for (var t = CryptoJS, r = t.lib, w = r.WordArray, v = r.Hasher, r = t.algo, b = [], x = 0; 64 > x; x++) {\n    b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n  }\n\n  r = r.MD5 = v.extend({\n    _doReset: function _doReset() {\n      this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878]);\n    },\n    _doProcessBlock: function _doProcessBlock(q, n) {\n      for (var a = 0; 16 > a; a++) {\n        var c = n + a,\n            e = q[c];\n        q[c] = (e << 8 | e >>> 24) & 16711935 | (e << 24 | e >>> 8) & 4278255360;\n      }\n\n      var a = this._hash.words,\n          c = q[n + 0],\n          e = q[n + 1],\n          j = q[n + 2],\n          k = q[n + 3],\n          z = q[n + 4],\n          r = q[n + 5],\n          t = q[n + 6],\n          w = q[n + 7],\n          v = q[n + 8],\n          A = q[n + 9],\n          B = q[n + 10],\n          C = q[n + 11],\n          u = q[n + 12],\n          D = q[n + 13],\n          E = q[n + 14],\n          x = q[n + 15],\n          f = a[0],\n          m = a[1],\n          g = a[2],\n          h = a[3],\n          f = p(f, m, g, h, c, 7, b[0]),\n          h = p(h, f, m, g, e, 12, b[1]),\n          g = p(g, h, f, m, j, 17, b[2]),\n          m = p(m, g, h, f, k, 22, b[3]),\n          f = p(f, m, g, h, z, 7, b[4]),\n          h = p(h, f, m, g, r, 12, b[5]),\n          g = p(g, h, f, m, t, 17, b[6]),\n          m = p(m, g, h, f, w, 22, b[7]),\n          f = p(f, m, g, h, v, 7, b[8]),\n          h = p(h, f, m, g, A, 12, b[9]),\n          g = p(g, h, f, m, B, 17, b[10]),\n          m = p(m, g, h, f, C, 22, b[11]),\n          f = p(f, m, g, h, u, 7, b[12]),\n          h = p(h, f, m, g, D, 12, b[13]),\n          g = p(g, h, f, m, E, 17, b[14]),\n          m = p(m, g, h, f, x, 22, b[15]),\n          f = d(f, m, g, h, e, 5, b[16]),\n          h = d(h, f, m, g, t, 9, b[17]),\n          g = d(g, h, f, m, C, 14, b[18]),\n          m = d(m, g, h, f, c, 20, b[19]),\n          f = d(f, m, g, h, r, 5, b[20]),\n          h = d(h, f, m, g, B, 9, b[21]),\n          g = d(g, h, f, m, x, 14, b[22]),\n          m = d(m, g, h, f, z, 20, b[23]),\n          f = d(f, m, g, h, A, 5, b[24]),\n          h = d(h, f, m, g, E, 9, b[25]),\n          g = d(g, h, f, m, k, 14, b[26]),\n          m = d(m, g, h, f, v, 20, b[27]),\n          f = d(f, m, g, h, D, 5, b[28]),\n          h = d(h, f, m, g, j, 9, b[29]),\n          g = d(g, h, f, m, w, 14, b[30]),\n          m = d(m, g, h, f, u, 20, b[31]),\n          f = l(f, m, g, h, r, 4, b[32]),\n          h = l(h, f, m, g, v, 11, b[33]),\n          g = l(g, h, f, m, C, 16, b[34]),\n          m = l(m, g, h, f, E, 23, b[35]),\n          f = l(f, m, g, h, e, 4, b[36]),\n          h = l(h, f, m, g, z, 11, b[37]),\n          g = l(g, h, f, m, w, 16, b[38]),\n          m = l(m, g, h, f, B, 23, b[39]),\n          f = l(f, m, g, h, D, 4, b[40]),\n          h = l(h, f, m, g, c, 11, b[41]),\n          g = l(g, h, f, m, k, 16, b[42]),\n          m = l(m, g, h, f, t, 23, b[43]),\n          f = l(f, m, g, h, A, 4, b[44]),\n          h = l(h, f, m, g, u, 11, b[45]),\n          g = l(g, h, f, m, x, 16, b[46]),\n          m = l(m, g, h, f, j, 23, b[47]),\n          f = s(f, m, g, h, c, 6, b[48]),\n          h = s(h, f, m, g, w, 10, b[49]),\n          g = s(g, h, f, m, E, 15, b[50]),\n          m = s(m, g, h, f, r, 21, b[51]),\n          f = s(f, m, g, h, u, 6, b[52]),\n          h = s(h, f, m, g, k, 10, b[53]),\n          g = s(g, h, f, m, B, 15, b[54]),\n          m = s(m, g, h, f, e, 21, b[55]),\n          f = s(f, m, g, h, v, 6, b[56]),\n          h = s(h, f, m, g, x, 10, b[57]),\n          g = s(g, h, f, m, t, 15, b[58]),\n          m = s(m, g, h, f, D, 21, b[59]),\n          f = s(f, m, g, h, z, 6, b[60]),\n          h = s(h, f, m, g, C, 10, b[61]),\n          g = s(g, h, f, m, j, 15, b[62]),\n          m = s(m, g, h, f, A, 21, b[63]);\n      a[0] = a[0] + f | 0;\n      a[1] = a[1] + m | 0;\n      a[2] = a[2] + g | 0;\n      a[3] = a[3] + h | 0;\n    },\n    _doFinalize: function _doFinalize() {\n      var b = this._data,\n          n = b.words,\n          a = 8 * this._nDataBytes,\n          c = 8 * b.sigBytes;\n      n[c >>> 5] |= 128 << 24 - c % 32;\n      var e = u.floor(a / 4294967296);\n      n[(c + 64 >>> 9 << 4) + 15] = (e << 8 | e >>> 24) & 16711935 | (e << 24 | e >>> 8) & 4278255360;\n      n[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n      b.sigBytes = 4 * (n.length + 1);\n\n      this._process();\n\n      b = this._hash;\n      n = b.words;\n\n      for (a = 0; 4 > a; a++) {\n        c = n[a], n[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n      }\n\n      return b;\n    },\n    clone: function clone() {\n      var b = v.clone.call(this);\n      b._hash = this._hash.clone();\n      return b;\n    }\n  });\n  t.MD5 = v._createHelper(r);\n  t.HmacMD5 = v._createHmacHelper(r);\n})(Math);\n\n(function () {\n  var u = CryptoJS,\n      p = u.lib,\n      d = p.Base,\n      l = p.WordArray,\n      p = u.algo,\n      s = p.EvpKDF = d.extend({\n    cfg: d.extend({\n      keySize: 4,\n      hasher: p.MD5,\n      iterations: 1\n    }),\n    init: function init(d) {\n      this.cfg = this.cfg.extend(d);\n    },\n    compute: function compute(d, r) {\n      for (var p = this.cfg, s = p.hasher.create(), b = l.create(), u = b.words, q = p.keySize, p = p.iterations; u.length < q;) {\n        n && s.update(n);\n        var n = s.update(d).finalize(r);\n        s.reset();\n\n        for (var a = 1; a < p; a++) {\n          n = s.finalize(n), s.reset();\n        }\n\n        b.concat(n);\n      }\n\n      b.sigBytes = 4 * q;\n      return b;\n    }\n  });\n\n  u.EvpKDF = function (d, l, p) {\n    return s.create(p).compute(d, l);\n  };\n})();\n\nCryptoJS.lib.Cipher || function (u) {\n  var p = CryptoJS,\n      d = p.lib,\n      l = d.Base,\n      s = d.WordArray,\n      t = d.BufferedBlockAlgorithm,\n      r = p.enc.Base64,\n      w = p.algo.EvpKDF,\n      v = d.Cipher = t.extend({\n    cfg: l.extend(),\n    createEncryptor: function createEncryptor(e, a) {\n      return this.create(this._ENC_XFORM_MODE, e, a);\n    },\n    createDecryptor: function createDecryptor(e, a) {\n      return this.create(this._DEC_XFORM_MODE, e, a);\n    },\n    init: function init(e, a, b) {\n      this.cfg = this.cfg.extend(b);\n      this._xformMode = e;\n      this._key = a;\n      this.reset();\n    },\n    reset: function reset() {\n      t.reset.call(this);\n\n      this._doReset();\n    },\n    process: function process(e) {\n      this._append(e);\n\n      return this._process();\n    },\n    finalize: function finalize(e) {\n      e && this._append(e);\n      return this._doFinalize();\n    },\n    keySize: 4,\n    ivSize: 4,\n    _ENC_XFORM_MODE: 1,\n    _DEC_XFORM_MODE: 2,\n    _createHelper: function _createHelper(e) {\n      return {\n        encrypt: function encrypt(b, k, d) {\n          return (\"string\" == typeof k ? c : a).encrypt(e, b, k, d);\n        },\n        decrypt: function decrypt(b, k, d) {\n          return (\"string\" == typeof k ? c : a).decrypt(e, b, k, d);\n        }\n      };\n    }\n  });\n  d.StreamCipher = v.extend({\n    _doFinalize: function _doFinalize() {\n      return this._process(!0);\n    },\n    blockSize: 1\n  });\n\n  var b = p.mode = {},\n      x = function x(e, a, b) {\n    var c = this._iv;\n    c ? this._iv = u : c = this._prevBlock;\n\n    for (var d = 0; d < b; d++) {\n      e[a + d] ^= c[d];\n    }\n  },\n      q = (d.BlockCipherMode = l.extend({\n    createEncryptor: function createEncryptor(e, a) {\n      return this.Encryptor.create(e, a);\n    },\n    createDecryptor: function createDecryptor(e, a) {\n      return this.Decryptor.create(e, a);\n    },\n    init: function init(e, a) {\n      this._cipher = e;\n      this._iv = a;\n    }\n  })).extend();\n\n  q.Encryptor = q.extend({\n    processBlock: function processBlock(e, a) {\n      var b = this._cipher,\n          c = b.blockSize;\n      x.call(this, e, a, c);\n      b.encryptBlock(e, a);\n      this._prevBlock = e.slice(a, a + c);\n    }\n  });\n  q.Decryptor = q.extend({\n    processBlock: function processBlock(e, a) {\n      var b = this._cipher,\n          c = b.blockSize,\n          d = e.slice(a, a + c);\n      b.decryptBlock(e, a);\n      x.call(this, e, a, c);\n      this._prevBlock = d;\n    }\n  });\n  b = b.CBC = q;\n  q = (p.pad = {}).Pkcs7 = {\n    pad: function pad(a, b) {\n      for (var c = 4 * b, c = c - a.sigBytes % c, d = c << 24 | c << 16 | c << 8 | c, l = [], n = 0; n < c; n += 4) {\n        l.push(d);\n      }\n\n      c = s.create(l, c);\n      a.concat(c);\n    },\n    unpad: function unpad(a) {\n      a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255;\n    }\n  };\n  d.BlockCipher = v.extend({\n    cfg: v.cfg.extend({\n      mode: b,\n      padding: q\n    }),\n    reset: function reset() {\n      v.reset.call(this);\n      var a = this.cfg,\n          b = a.iv,\n          a = a.mode;\n      if (this._xformMode == this._ENC_XFORM_MODE) var c = a.createEncryptor;else c = a.createDecryptor, this._minBufferSize = 1;\n      this._mode = c.call(a, this, b && b.words);\n    },\n    _doProcessBlock: function _doProcessBlock(a, b) {\n      this._mode.processBlock(a, b);\n    },\n    _doFinalize: function _doFinalize() {\n      var a = this.cfg.padding;\n\n      if (this._xformMode == this._ENC_XFORM_MODE) {\n        a.pad(this._data, this.blockSize);\n\n        var b = this._process(!0);\n      } else b = this._process(!0), a.unpad(b);\n\n      return b;\n    },\n    blockSize: 4\n  });\n  var n = d.CipherParams = l.extend({\n    init: function init(a) {\n      this.mixIn(a);\n    },\n    toString: function toString(a) {\n      return (a || this.formatter).stringify(this);\n    }\n  }),\n      b = (p.format = {}).OpenSSL = {\n    stringify: function stringify(a) {\n      var b = a.ciphertext;\n      a = a.salt;\n      return (a ? s.create([1398893684, 1701076831]).concat(a).concat(b) : b).toString(r);\n    },\n    parse: function parse(a) {\n      a = r.parse(a);\n      var b = a.words;\n\n      if (1398893684 == b[0] && 1701076831 == b[1]) {\n        var c = s.create(b.slice(2, 4));\n        b.splice(0, 4);\n        a.sigBytes -= 16;\n      }\n\n      return n.create({\n        ciphertext: a,\n        salt: c\n      });\n    }\n  },\n      a = d.SerializableCipher = l.extend({\n    cfg: l.extend({\n      format: b\n    }),\n    encrypt: function encrypt(a, b, c, d) {\n      d = this.cfg.extend(d);\n      var l = a.createEncryptor(c, d);\n      b = l.finalize(b);\n      l = l.cfg;\n      return n.create({\n        ciphertext: b,\n        key: c,\n        iv: l.iv,\n        algorithm: a,\n        mode: l.mode,\n        padding: l.padding,\n        blockSize: a.blockSize,\n        formatter: d.format\n      });\n    },\n    decrypt: function decrypt(a, b, c, d) {\n      d = this.cfg.extend(d);\n      b = this._parse(b, d.format);\n      return a.createDecryptor(c, d).finalize(b.ciphertext);\n    },\n    _parse: function _parse(a, b) {\n      return \"string\" == typeof a ? b.parse(a, this) : a;\n    }\n  }),\n      p = (p.kdf = {}).OpenSSL = {\n    execute: function execute(a, b, c, d) {\n      d || (d = s.random(8));\n      a = w.create({\n        keySize: b + c\n      }).compute(a, d);\n      c = s.create(a.words.slice(b), 4 * c);\n      a.sigBytes = 4 * b;\n      return n.create({\n        key: a,\n        iv: c,\n        salt: d\n      });\n    }\n  },\n      c = d.PasswordBasedCipher = a.extend({\n    cfg: a.cfg.extend({\n      kdf: p\n    }),\n    encrypt: function encrypt(b, c, d, l) {\n      l = this.cfg.extend(l);\n      d = l.kdf.execute(d, b.keySize, b.ivSize);\n      l.iv = d.iv;\n      b = a.encrypt.call(this, b, c, d.key, l);\n      b.mixIn(d);\n      return b;\n    },\n    decrypt: function decrypt(b, c, d, l) {\n      l = this.cfg.extend(l);\n      c = this._parse(c, l.format);\n      d = l.kdf.execute(d, b.keySize, b.ivSize, c.salt);\n      l.iv = d.iv;\n      return a.decrypt.call(this, b, c, d.key, l);\n    }\n  });\n}();\n\n(function () {\n  for (var u = CryptoJS, p = u.lib.BlockCipher, d = u.algo, l = [], s = [], t = [], r = [], w = [], v = [], b = [], x = [], q = [], n = [], a = [], c = 0; 256 > c; c++) {\n    a[c] = 128 > c ? c << 1 : c << 1 ^ 283;\n  }\n\n  for (var e = 0, j = 0, c = 0; 256 > c; c++) {\n    var k = j ^ j << 1 ^ j << 2 ^ j << 3 ^ j << 4,\n        k = k >>> 8 ^ k & 255 ^ 99;\n    l[e] = k;\n    s[k] = e;\n    var z = a[e],\n        F = a[z],\n        G = a[F],\n        y = 257 * a[k] ^ 16843008 * k;\n    t[e] = y << 24 | y >>> 8;\n    r[e] = y << 16 | y >>> 16;\n    w[e] = y << 8 | y >>> 24;\n    v[e] = y;\n    y = 16843009 * G ^ 65537 * F ^ 257 * z ^ 16843008 * e;\n    b[k] = y << 24 | y >>> 8;\n    x[k] = y << 16 | y >>> 16;\n    q[k] = y << 8 | y >>> 24;\n    n[k] = y;\n    e ? (e = z ^ a[a[a[G ^ z]]], j ^= a[a[j]]) : e = j = 1;\n  }\n\n  var H = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54],\n      d = d.AES = p.extend({\n    _doReset: function _doReset() {\n      for (var a = this._key, c = a.words, d = a.sigBytes / 4, a = 4 * ((this._nRounds = d + 6) + 1), e = this._keySchedule = [], j = 0; j < a; j++) {\n        if (j < d) e[j] = c[j];else {\n          var k = e[j - 1];\n          j % d ? 6 < d && 4 == j % d && (k = l[k >>> 24] << 24 | l[k >>> 16 & 255] << 16 | l[k >>> 8 & 255] << 8 | l[k & 255]) : (k = k << 8 | k >>> 24, k = l[k >>> 24] << 24 | l[k >>> 16 & 255] << 16 | l[k >>> 8 & 255] << 8 | l[k & 255], k ^= H[j / d | 0] << 24);\n          e[j] = e[j - d] ^ k;\n        }\n      }\n\n      c = this._invKeySchedule = [];\n\n      for (d = 0; d < a; d++) {\n        j = a - d, k = d % 4 ? e[j] : e[j - 4], c[d] = 4 > d || 4 >= j ? k : b[l[k >>> 24]] ^ x[l[k >>> 16 & 255]] ^ q[l[k >>> 8 & 255]] ^ n[l[k & 255]];\n      }\n    },\n    encryptBlock: function encryptBlock(a, b) {\n      this._doCryptBlock(a, b, this._keySchedule, t, r, w, v, l);\n    },\n    decryptBlock: function decryptBlock(a, c) {\n      var d = a[c + 1];\n      a[c + 1] = a[c + 3];\n      a[c + 3] = d;\n\n      this._doCryptBlock(a, c, this._invKeySchedule, b, x, q, n, s);\n\n      d = a[c + 1];\n      a[c + 1] = a[c + 3];\n      a[c + 3] = d;\n    },\n    _doCryptBlock: function _doCryptBlock(a, b, c, d, e, j, l, f) {\n      for (var m = this._nRounds, g = a[b] ^ c[0], h = a[b + 1] ^ c[1], k = a[b + 2] ^ c[2], n = a[b + 3] ^ c[3], p = 4, r = 1; r < m; r++) {\n        var q = d[g >>> 24] ^ e[h >>> 16 & 255] ^ j[k >>> 8 & 255] ^ l[n & 255] ^ c[p++],\n            s = d[h >>> 24] ^ e[k >>> 16 & 255] ^ j[n >>> 8 & 255] ^ l[g & 255] ^ c[p++],\n            t = d[k >>> 24] ^ e[n >>> 16 & 255] ^ j[g >>> 8 & 255] ^ l[h & 255] ^ c[p++],\n            n = d[n >>> 24] ^ e[g >>> 16 & 255] ^ j[h >>> 8 & 255] ^ l[k & 255] ^ c[p++],\n            g = q,\n            h = s,\n            k = t;\n      }\n\n      q = (f[g >>> 24] << 24 | f[h >>> 16 & 255] << 16 | f[k >>> 8 & 255] << 8 | f[n & 255]) ^ c[p++];\n      s = (f[h >>> 24] << 24 | f[k >>> 16 & 255] << 16 | f[n >>> 8 & 255] << 8 | f[g & 255]) ^ c[p++];\n      t = (f[k >>> 24] << 24 | f[n >>> 16 & 255] << 16 | f[g >>> 8 & 255] << 8 | f[h & 255]) ^ c[p++];\n      n = (f[n >>> 24] << 24 | f[g >>> 16 & 255] << 16 | f[h >>> 8 & 255] << 8 | f[k & 255]) ^ c[p++];\n      a[b] = q;\n      a[b + 1] = s;\n      a[b + 2] = t;\n      a[b + 3] = n;\n    },\n    keySize: 8\n  });\n  u.AES = p._createHelper(d);\n})();\n\nCryptoJS.mode.ECB = function () {\n  var ECB = CryptoJS.lib.BlockCipherMode.extend();\n  ECB.Encryptor = ECB.extend({\n    processBlock: function processBlock(words, offset) {\n      this._cipher.encryptBlock(words, offset);\n    }\n  });\n  ECB.Decryptor = ECB.extend({\n    processBlock: function processBlock(words, offset) {\n      this._cipher.decryptBlock(words, offset);\n    }\n  });\n  return ECB;\n}();\n\nmodule.exports = CryptoJS;"},{"id":23,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/listener_manager.js","name":"./src/core/components/listener_manager.js","index":26,"index2":24,"size":4061,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/listener_manager","loc":"28:47-87"},{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../components/listener_manager","loc":"22:47-88"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _categories = _interopRequireDefault(require(\"../constants/categories\"));\n\nvar _default = function () {\n  function _default() {\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_listeners\", void 0);\n    this._listeners = [];\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"addListener\",\n    value: function addListener(newListeners) {\n      this._listeners.push(newListeners);\n    }\n  }, {\n    key: \"removeListener\",\n    value: function removeListener(deprecatedListener) {\n      var newListeners = [];\n\n      this._listeners.forEach(function (listener) {\n        if (listener !== deprecatedListener) newListeners.push(listener);\n      });\n\n      this._listeners = newListeners;\n    }\n  }, {\n    key: \"removeAllListeners\",\n    value: function removeAllListeners() {\n      this._listeners = [];\n    }\n  }, {\n    key: \"announcePresence\",\n    value: function announcePresence(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.presence) listener.presence(announce);\n      });\n    }\n  }, {\n    key: \"announceStatus\",\n    value: function announceStatus(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.status) listener.status(announce);\n      });\n    }\n  }, {\n    key: \"announceMessage\",\n    value: function announceMessage(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.message) listener.message(announce);\n      });\n    }\n  }, {\n    key: \"announceSignal\",\n    value: function announceSignal(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.signal) listener.signal(announce);\n      });\n    }\n  }, {\n    key: \"announceMessageAction\",\n    value: function announceMessageAction(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.messageAction) listener.messageAction(announce);\n      });\n    }\n  }, {\n    key: \"announceFile\",\n    value: function announceFile(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.file) listener.file(announce);\n      });\n    }\n  }, {\n    key: \"announceObjects\",\n    value: function announceObjects(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.objects) listener.objects(announce);\n      });\n    }\n  }, {\n    key: \"announceUser\",\n    value: function announceUser(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.user) listener.user(announce);\n      });\n    }\n  }, {\n    key: \"announceSpace\",\n    value: function announceSpace(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.space) listener.space(announce);\n      });\n    }\n  }, {\n    key: \"announceMembership\",\n    value: function announceMembership(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.membership) listener.membership(announce);\n      });\n    }\n  }, {\n    key: \"announceNetworkUp\",\n    value: function announceNetworkUp() {\n      var networkStatus = {};\n      networkStatus.category = _categories[\"default\"].PNNetworkUpCategory;\n      this.announceStatus(networkStatus);\n    }\n  }, {\n    key: \"announceNetworkDown\",\n    value: function announceNetworkDown() {\n      var networkStatus = {};\n      networkStatus.category = _categories[\"default\"].PNNetworkDownCategory;\n      this.announceStatus(networkStatus);\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":24,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/time.js","name":"./src/core/endpoints/time.js","index":29,"index2":26,"size":1025,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/time","loc":"168:49-76"},{"moduleId":37,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/reconnection_manager.js","module":"./src/core/components/reconnection_manager.js","moduleName":"./src/core/components/reconnection_manager.js","type":"cjs require","userRequest":"../endpoints/time","loc":"16:35-63"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.prepareParams = prepareParams;\nexports.isAuthSupported = isAuthSupported;\nexports.handleResponse = handleResponse;\nexports.validateParams = validateParams;\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNTimeOperation;\n}\n\nfunction getURL() {\n  return '/time/0';\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction isAuthSupported() {\n  return false;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    timetoken: serverResponse[0]\n  };\n}\n\nfunction validateParams() {}"},{"id":25,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/file/index.js","name":"./src/file/index.js","index":62,"index2":60,"size":13,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/file/modules/web.js","issuerId":132,"issuerName":"./src/file/modules/web.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":132,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/file/modules/web.js","name":"./src/file/modules/web.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":2642,"building":2440},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"../file","loc":"72:12-30"},{"moduleId":132,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/file/modules/web.js","module":"./src/file/modules/web.js","moduleName":"./src/file/modules/web.js","type":"cjs require","userRequest":"../","loc":"20:8-22"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";"},{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","index":0,"index2":134,"size":5882,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":null,"issuerId":null,"issuerName":null,"issuerPath":null,"profile":{"factory":20,"building":129},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":null,"moduleIdentifier":null,"module":null,"moduleName":null,"type":"single entry","userRequest":"/home/travis/build/pubnub/target-repository/src/web/index.js","loc":"main"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":0,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _inherits2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inherits\"));\n\nvar _possibleConstructorReturn2 = _interopRequireDefault(require(\"@babel/runtime/helpers/possibleConstructorReturn\"));\n\nvar _getPrototypeOf2 = _interopRequireDefault(require(\"@babel/runtime/helpers/getPrototypeOf\"));\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime/helpers/typeof\"));\n\nvar _cborJs = _interopRequireDefault(require(\"cbor-js\"));\n\nvar _pubnubCommon = _interopRequireDefault(require(\"../core/pubnub-common\"));\n\nvar _networking = _interopRequireDefault(require(\"../networking\"));\n\nvar _hmacSha = _interopRequireDefault(require(\"../core/components/cryptography/hmac-sha256\"));\n\nvar _web = _interopRequireDefault(require(\"../db/web\"));\n\nvar _common = _interopRequireDefault(require(\"../cbor/common\"));\n\nvar _webNode = require(\"../networking/modules/web-node\");\n\nvar _flow_interfaces = require(\"../core/flow_interfaces\");\n\nvar _web2 = _interopRequireDefault(require(\"../crypto/modules/web\"));\n\nvar _web3 = _interopRequireDefault(require(\"../file/modules/web\"));\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2[\"default\"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2[\"default\"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2[\"default\"])(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction sendBeacon(url) {\n  if (navigator && navigator.sendBeacon) {\n    navigator.sendBeacon(url);\n  } else {\n    return false;\n  }\n}\n\nfunction base64ToBinary(base64String) {\n  var parsedWordArray = _hmacSha[\"default\"].enc.Base64.parse(base64String).words;\n\n  var arrayBuffer = new ArrayBuffer(parsedWordArray.length * 4);\n  var view = new Uint8Array(arrayBuffer);\n  var filledArrayBuffer = null;\n  var zeroBytesCount = 0;\n  var byteOffset = 0;\n\n  for (var wordIdx = 0; wordIdx < parsedWordArray.length; wordIdx += 1) {\n    var word = parsedWordArray[wordIdx];\n    byteOffset = wordIdx * 4;\n    view[byteOffset] = (word & 0xff000000) >> 24;\n    view[byteOffset + 1] = (word & 0x00ff0000) >> 16;\n    view[byteOffset + 2] = (word & 0x0000ff00) >> 8;\n    view[byteOffset + 3] = word & 0x000000ff;\n  }\n\n  for (var byteIdx = byteOffset + 3; byteIdx >= byteOffset; byteIdx -= 1) {\n    if (view[byteIdx] === 0) {\n      zeroBytesCount += 1;\n    }\n  }\n\n  if (zeroBytesCount > 0) {\n    filledArrayBuffer = view.buffer.slice(0, view.byteLength - zeroBytesCount);\n  } else {\n    filledArrayBuffer = view.buffer;\n  }\n\n  return filledArrayBuffer;\n}\n\nfunction stringifyBufferKeys(obj) {\n  var isObject = function isObject(value) {\n    return value && (0, _typeof2[\"default\"])(value) === 'object' && value.constructor === Object;\n  };\n\n  var isString = function isString(value) {\n    return typeof value === 'string' || value instanceof String;\n  };\n\n  var isNumber = function isNumber(value) {\n    return typeof value === 'number' && isFinite(value);\n  };\n\n  if (!isObject(obj)) {\n    return obj;\n  }\n\n  var normalizedObject = {};\n  Object.keys(obj).forEach(function (key) {\n    var keyIsString = isString(key);\n    var stringifiedKey = key;\n    var value = obj[key];\n\n    if (Array.isArray(key) || keyIsString && key.indexOf(',') >= 0) {\n      var bytes = keyIsString ? key.split(',') : key;\n      stringifiedKey = bytes.reduce(function (string, _byte) {\n        string += String.fromCharCode(_byte);\n        return string;\n      }, '');\n    } else if (isNumber(key) || keyIsString && !isNaN(key)) {\n      stringifiedKey = String.fromCharCode(keyIsString ? parseInt(key, 10) : 10);\n    }\n\n    normalizedObject[stringifiedKey] = isObject(value) ? stringifyBufferKeys(value) : value;\n  });\n  return normalizedObject;\n}\n\nvar _default = function (_PubNubCore) {\n  (0, _inherits2[\"default\"])(_default, _PubNubCore);\n\n  var _super = _createSuper(_default);\n\n  function _default(setup) {\n    var _this;\n\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    var _setup$listenToBrowse = setup.listenToBrowserNetworkEvents,\n        listenToBrowserNetworkEvents = _setup$listenToBrowse === void 0 ? true : _setup$listenToBrowse;\n    setup.db = _web[\"default\"];\n    setup.sdkFamily = 'Web';\n    setup.networking = new _networking[\"default\"]({\n      del: _webNode.del,\n      get: _webNode.get,\n      post: _webNode.post,\n      patch: _webNode.patch,\n      sendBeacon: sendBeacon,\n      getfile: _webNode.getfile,\n      postfile: _webNode.postfile\n    });\n    setup.cbor = new _common[\"default\"](function (arrayBuffer) {\n      return stringifyBufferKeys(_cborJs[\"default\"].decode(arrayBuffer));\n    }, base64ToBinary);\n    setup.PubNubFile = _web3[\"default\"];\n    setup.cryptography = new _web2[\"default\"]();\n    _this = _super.call(this, setup);\n\n    if (listenToBrowserNetworkEvents) {\n      window.addEventListener('offline', function () {\n        _this.networkDownDetected();\n      });\n      window.addEventListener('online', function () {\n        _this.networkUpDetected();\n      });\n    }\n\n    return _this;\n  }\n\n  return _default;\n}(_pubnubCommon[\"default\"]);\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","index":10,"index2":118,"size":28402,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../core/pubnub-common","loc":"22:43-75"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _config = _interopRequireDefault(require(\"./components/config\"));\n\nvar _index = _interopRequireDefault(require(\"./components/cryptography/index\"));\n\nvar _subscription_manager = _interopRequireDefault(require(\"./components/subscription_manager\"));\n\nvar _telemetry_manager = _interopRequireDefault(require(\"./components/telemetry_manager\"));\n\nvar _push_payload = _interopRequireDefault(require(\"./components/push_payload\"));\n\nvar _listener_manager = _interopRequireDefault(require(\"./components/listener_manager\"));\n\nvar _token_manager = _interopRequireDefault(require(\"./components/token_manager\"));\n\nvar _endpoint = _interopRequireDefault(require(\"./components/endpoint\"));\n\nvar _utils = require(\"./utils\");\n\nvar addChannelsChannelGroupConfig = _interopRequireWildcard(require(\"./endpoints/channel_groups/add_channels\"));\n\nvar removeChannelsChannelGroupConfig = _interopRequireWildcard(require(\"./endpoints/channel_groups/remove_channels\"));\n\nvar deleteChannelGroupConfig = _interopRequireWildcard(require(\"./endpoints/channel_groups/delete_group\"));\n\nvar listChannelGroupsConfig = _interopRequireWildcard(require(\"./endpoints/channel_groups/list_groups\"));\n\nvar listChannelsInChannelGroupConfig = _interopRequireWildcard(require(\"./endpoints/channel_groups/list_channels\"));\n\nvar addPushChannelsConfig = _interopRequireWildcard(require(\"./endpoints/push/add_push_channels\"));\n\nvar removePushChannelsConfig = _interopRequireWildcard(require(\"./endpoints/push/remove_push_channels\"));\n\nvar listPushChannelsConfig = _interopRequireWildcard(require(\"./endpoints/push/list_push_channels\"));\n\nvar removeDevicePushConfig = _interopRequireWildcard(require(\"./endpoints/push/remove_device\"));\n\nvar presenceLeaveEndpointConfig = _interopRequireWildcard(require(\"./endpoints/presence/leave\"));\n\nvar presenceWhereNowEndpointConfig = _interopRequireWildcard(require(\"./endpoints/presence/where_now\"));\n\nvar presenceHeartbeatEndpointConfig = _interopRequireWildcard(require(\"./endpoints/presence/heartbeat\"));\n\nvar presenceGetStateConfig = _interopRequireWildcard(require(\"./endpoints/presence/get_state\"));\n\nvar presenceSetStateConfig = _interopRequireWildcard(require(\"./endpoints/presence/set_state\"));\n\nvar presenceHereNowConfig = _interopRequireWildcard(require(\"./endpoints/presence/here_now\"));\n\nvar addMessageActionEndpointConfig = _interopRequireWildcard(require(\"./endpoints/actions/add_message_action\"));\n\nvar removeMessageActionEndpointConfig = _interopRequireWildcard(require(\"./endpoints/actions/remove_message_action\"));\n\nvar getMessageActionEndpointConfig = _interopRequireWildcard(require(\"./endpoints/actions/get_message_actions\"));\n\nvar _file = require(\"../file\");\n\nvar fileUploadTypes = _interopRequireWildcard(require(\"./endpoints/file_upload/types\"));\n\nvar _list_files = _interopRequireDefault(require(\"./endpoints/file_upload/list_files\"));\n\nvar _generate_upload_url = _interopRequireDefault(require(\"./endpoints/file_upload/generate_upload_url\"));\n\nvar _publish_file = _interopRequireDefault(require(\"./endpoints/file_upload/publish_file\"));\n\nvar _send_file = _interopRequireDefault(require(\"./endpoints/file_upload/send_file\"));\n\nvar _get_file_url = _interopRequireDefault(require(\"./endpoints/file_upload/get_file_url\"));\n\nvar _download_file = _interopRequireDefault(require(\"./endpoints/file_upload/download_file\"));\n\nvar _delete_file = _interopRequireDefault(require(\"./endpoints/file_upload/delete_file\"));\n\nvar _get_all = _interopRequireDefault(require(\"./endpoints/objects/uuid/get_all\"));\n\nvar _get = _interopRequireDefault(require(\"./endpoints/objects/uuid/get\"));\n\nvar _set = _interopRequireDefault(require(\"./endpoints/objects/uuid/set\"));\n\nvar _remove = _interopRequireDefault(require(\"./endpoints/objects/uuid/remove\"));\n\nvar _get_all2 = _interopRequireDefault(require(\"./endpoints/objects/channel/get_all\"));\n\nvar _get2 = _interopRequireDefault(require(\"./endpoints/objects/channel/get\"));\n\nvar _set2 = _interopRequireDefault(require(\"./endpoints/objects/channel/set\"));\n\nvar _remove2 = _interopRequireDefault(require(\"./endpoints/objects/channel/remove\"));\n\nvar _get3 = _interopRequireDefault(require(\"./endpoints/objects/member/get\"));\n\nvar _set3 = _interopRequireDefault(require(\"./endpoints/objects/member/set\"));\n\nvar _get4 = _interopRequireDefault(require(\"./endpoints/objects/membership/get\"));\n\nvar _set4 = _interopRequireDefault(require(\"./endpoints/objects/membership/set\"));\n\nvar createUserEndpointConfig = _interopRequireWildcard(require(\"./endpoints/users/create_user\"));\n\nvar updateUserEndpointConfig = _interopRequireWildcard(require(\"./endpoints/users/update_user\"));\n\nvar deleteUserEndpointConfig = _interopRequireWildcard(require(\"./endpoints/users/delete_user\"));\n\nvar getUserEndpointConfig = _interopRequireWildcard(require(\"./endpoints/users/get_user\"));\n\nvar getUsersEndpointConfig = _interopRequireWildcard(require(\"./endpoints/users/get_users\"));\n\nvar createSpaceEndpointConfig = _interopRequireWildcard(require(\"./endpoints/spaces/create_space\"));\n\nvar updateSpaceEndpointConfig = _interopRequireWildcard(require(\"./endpoints/spaces/update_space\"));\n\nvar deleteSpaceEndpointConfig = _interopRequireWildcard(require(\"./endpoints/spaces/delete_space\"));\n\nvar getSpacesEndpointConfig = _interopRequireWildcard(require(\"./endpoints/spaces/get_spaces\"));\n\nvar getSpaceEndpointConfig = _interopRequireWildcard(require(\"./endpoints/spaces/get_space\"));\n\nvar getMembersEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/get_members\"));\n\nvar addMembersEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/add_members\"));\n\nvar updateMembersEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/update_members\"));\n\nvar removeMembersEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/remove_members\"));\n\nvar getMembershipsEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/get_memberships\"));\n\nvar updateMembershipsEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/update_memberships\"));\n\nvar joinSpacesEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/join_spaces\"));\n\nvar leaveSpacesEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/leave_spaces\"));\n\nvar auditEndpointConfig = _interopRequireWildcard(require(\"./endpoints/access_manager/audit\"));\n\nvar grantEndpointConfig = _interopRequireWildcard(require(\"./endpoints/access_manager/grant\"));\n\nvar grantTokenEndpointConfig = _interopRequireWildcard(require(\"./endpoints/access_manager/grant_token\"));\n\nvar publishEndpointConfig = _interopRequireWildcard(require(\"./endpoints/publish\"));\n\nvar signalEndpointConfig = _interopRequireWildcard(require(\"./endpoints/signal\"));\n\nvar historyEndpointConfig = _interopRequireWildcard(require(\"./endpoints/history/get_history\"));\n\nvar deleteMessagesEndpointConfig = _interopRequireWildcard(require(\"./endpoints/history/delete_messages\"));\n\nvar messageCountsEndpointConfig = _interopRequireWildcard(require(\"./endpoints/history/message_counts\"));\n\nvar fetchMessagesEndpointConfig = _interopRequireWildcard(require(\"./endpoints/fetch_messages\"));\n\nvar timeEndpointConfig = _interopRequireWildcard(require(\"./endpoints/time\"));\n\nvar subscribeEndpointConfig = _interopRequireWildcard(require(\"./endpoints/subscribe\"));\n\nvar _operations = _interopRequireDefault(require(\"./constants/operations\"));\n\nvar _categories = _interopRequireDefault(require(\"./constants/categories\"));\n\nvar _flow_interfaces = require(\"./flow_interfaces\");\n\nvar _uuid = _interopRequireDefault(require(\"./components/uuid\"));\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2[\"default\"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nvar _default = function () {\n  function _default(setup) {\n    var _this = this;\n\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_config\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_telemetryManager\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_listenerManager\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_tokenManager\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"time\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"publish\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"fire\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"history\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"deleteMessages\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"messageCounts\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"fetchMessages\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"channelGroups\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"push\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"hereNow\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"whereNow\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getState\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setState\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"grant\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"grantToken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"audit\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"subscribe\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"signal\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"presence\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"unsubscribe\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"unsubscribeAll\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"addMessageAction\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"removeMessageAction\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getMessageActions\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"File\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"encryptFile\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"decryptFile\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"listFiles\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"sendFile\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"downloadFile\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getFileUrl\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"deleteFile\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"publishFile\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"objects\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"createUser\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"updateUser\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"deleteUser\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getUser\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getUsers\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"createSpace\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"updateSpace\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"deleteSpace\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getSpaces\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getSpace\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getMembers\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"addMembers\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"updateMembers\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"removeMembers\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getMemberships\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"joinSpaces\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"updateMemberships\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"leaveSpaces\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"disconnect\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"reconnect\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"destroy\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"stop\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getSubscribedChannels\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getSubscribedChannelGroups\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"addListener\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"removeListener\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"removeAllListeners\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"parseToken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setToken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setTokens\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getToken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getTokens\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"clearTokens\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getAuthKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setAuthKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setCipherKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setUUID\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getUUID\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getFilterExpression\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setFilterExpression\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setHeartbeatInterval\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setProxy\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"encrypt\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"decrypt\", void 0);\n    var db = setup.db,\n        networking = setup.networking,\n        cbor = setup.cbor;\n    var config = this._config = new _config[\"default\"]({\n      setup: setup,\n      db: db\n    });\n    var crypto = new _index[\"default\"]({\n      config: config\n    });\n    var cryptography = setup.cryptography;\n    networking.init(config);\n    var tokenManager = this._tokenManager = new _token_manager[\"default\"](config, cbor);\n    var telemetryManager = this._telemetryManager = new _telemetry_manager[\"default\"]({\n      maximumSamplesCount: 60000\n    });\n    var modules = {\n      config: config,\n      networking: networking,\n      crypto: crypto,\n      cryptography: cryptography,\n      tokenManager: tokenManager,\n      telemetryManager: telemetryManager,\n      PubNubFile: setup.PubNubFile\n    };\n    this.File = setup.PubNubFile;\n\n    this.encryptFile = function (key, file) {\n      return cryptography.encryptFile(key, file, _this.File);\n    };\n\n    this.decryptFile = function (key, file) {\n      return cryptography.decryptFile(key, file, _this.File);\n    };\n\n    var timeEndpoint = _endpoint[\"default\"].bind(this, modules, timeEndpointConfig);\n\n    var leaveEndpoint = _endpoint[\"default\"].bind(this, modules, presenceLeaveEndpointConfig);\n\n    var heartbeatEndpoint = _endpoint[\"default\"].bind(this, modules, presenceHeartbeatEndpointConfig);\n\n    var setStateEndpoint = _endpoint[\"default\"].bind(this, modules, presenceSetStateConfig);\n\n    var subscribeEndpoint = _endpoint[\"default\"].bind(this, modules, subscribeEndpointConfig);\n\n    var listenerManager = this._listenerManager = new _listener_manager[\"default\"]();\n    var subscriptionManager = new _subscription_manager[\"default\"]({\n      timeEndpoint: timeEndpoint,\n      leaveEndpoint: leaveEndpoint,\n      heartbeatEndpoint: heartbeatEndpoint,\n      setStateEndpoint: setStateEndpoint,\n      subscribeEndpoint: subscribeEndpoint,\n      crypto: modules.crypto,\n      config: modules.config,\n      listenerManager: listenerManager,\n      getFileUrl: function getFileUrl(params) {\n        return (0, _get_file_url[\"default\"])(modules, params);\n      }\n    });\n    this.addListener = listenerManager.addListener.bind(listenerManager);\n    this.removeListener = listenerManager.removeListener.bind(listenerManager);\n    this.removeAllListeners = listenerManager.removeAllListeners.bind(listenerManager);\n    this.parseToken = tokenManager.parseToken.bind(tokenManager);\n    this.setToken = tokenManager.setToken.bind(tokenManager);\n    this.setTokens = tokenManager.setTokens.bind(tokenManager);\n    this.getToken = tokenManager.getToken.bind(tokenManager);\n    this.getTokens = tokenManager.getTokens.bind(tokenManager);\n    this.clearTokens = tokenManager.clearTokens.bind(tokenManager);\n    this.channelGroups = {\n      listGroups: _endpoint[\"default\"].bind(this, modules, listChannelGroupsConfig),\n      listChannels: _endpoint[\"default\"].bind(this, modules, listChannelsInChannelGroupConfig),\n      addChannels: _endpoint[\"default\"].bind(this, modules, addChannelsChannelGroupConfig),\n      removeChannels: _endpoint[\"default\"].bind(this, modules, removeChannelsChannelGroupConfig),\n      deleteGroup: _endpoint[\"default\"].bind(this, modules, deleteChannelGroupConfig)\n    };\n    this.push = {\n      addChannels: _endpoint[\"default\"].bind(this, modules, addPushChannelsConfig),\n      removeChannels: _endpoint[\"default\"].bind(this, modules, removePushChannelsConfig),\n      deleteDevice: _endpoint[\"default\"].bind(this, modules, removeDevicePushConfig),\n      listChannels: _endpoint[\"default\"].bind(this, modules, listPushChannelsConfig)\n    };\n    this.hereNow = _endpoint[\"default\"].bind(this, modules, presenceHereNowConfig);\n    this.whereNow = _endpoint[\"default\"].bind(this, modules, presenceWhereNowEndpointConfig);\n    this.getState = _endpoint[\"default\"].bind(this, modules, presenceGetStateConfig);\n    this.setState = subscriptionManager.adaptStateChange.bind(subscriptionManager);\n    this.grant = _endpoint[\"default\"].bind(this, modules, grantEndpointConfig);\n    this.grantToken = _endpoint[\"default\"].bind(this, modules, grantTokenEndpointConfig);\n    this.audit = _endpoint[\"default\"].bind(this, modules, auditEndpointConfig);\n    this.publish = _endpoint[\"default\"].bind(this, modules, publishEndpointConfig);\n\n    this.fire = function (args, callback) {\n      args.replicate = false;\n      args.storeInHistory = false;\n      return _this.publish(args, callback);\n    };\n\n    this.signal = _endpoint[\"default\"].bind(this, modules, signalEndpointConfig);\n    this.history = _endpoint[\"default\"].bind(this, modules, historyEndpointConfig);\n    this.deleteMessages = _endpoint[\"default\"].bind(this, modules, deleteMessagesEndpointConfig);\n    this.messageCounts = _endpoint[\"default\"].bind(this, modules, messageCountsEndpointConfig);\n    this.fetchMessages = _endpoint[\"default\"].bind(this, modules, fetchMessagesEndpointConfig);\n    this.addMessageAction = _endpoint[\"default\"].bind(this, modules, addMessageActionEndpointConfig);\n    this.removeMessageAction = _endpoint[\"default\"].bind(this, modules, removeMessageActionEndpointConfig);\n    this.getMessageActions = _endpoint[\"default\"].bind(this, modules, getMessageActionEndpointConfig);\n    this.listFiles = _endpoint[\"default\"].bind(this, modules, _list_files[\"default\"]);\n\n    var generateUploadUrl = _endpoint[\"default\"].bind(this, modules, _generate_upload_url[\"default\"]);\n\n    this.publishFile = _endpoint[\"default\"].bind(this, modules, _publish_file[\"default\"]);\n    this.sendFile = (0, _send_file[\"default\"])({\n      generateUploadUrl: generateUploadUrl,\n      publishFile: this.publishFile,\n      modules: modules\n    });\n\n    this.getFileUrl = function (params) {\n      return (0, _get_file_url[\"default\"])(modules, params);\n    };\n\n    this.downloadFile = _endpoint[\"default\"].bind(this, modules, _download_file[\"default\"]);\n    this.deleteFile = _endpoint[\"default\"].bind(this, modules, _delete_file[\"default\"]);\n    this.objects = {\n      getAllUUIDMetadata: _endpoint[\"default\"].bind(this, modules, _get_all[\"default\"]),\n      getUUIDMetadata: _endpoint[\"default\"].bind(this, modules, _get[\"default\"]),\n      setUUIDMetadata: _endpoint[\"default\"].bind(this, modules, _set[\"default\"]),\n      removeUUIDMetadata: _endpoint[\"default\"].bind(this, modules, _remove[\"default\"]),\n      getAllChannelMetadata: _endpoint[\"default\"].bind(this, modules, _get_all2[\"default\"]),\n      getChannelMetadata: _endpoint[\"default\"].bind(this, modules, _get2[\"default\"]),\n      setChannelMetadata: _endpoint[\"default\"].bind(this, modules, _set2[\"default\"]),\n      removeChannelMetadata: _endpoint[\"default\"].bind(this, modules, _remove2[\"default\"]),\n      getChannelMembers: _endpoint[\"default\"].bind(this, modules, _get3[\"default\"]),\n      setChannelMembers: function setChannelMembers(parameters) {\n        for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n          rest[_key - 1] = arguments[_key];\n        }\n\n        return _endpoint[\"default\"].call.apply(_endpoint[\"default\"], [_this, modules, _set3[\"default\"], _objectSpread({\n          type: 'set'\n        }, parameters)].concat(rest));\n      },\n      removeChannelMembers: function removeChannelMembers(parameters) {\n        for (var _len2 = arguments.length, rest = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n          rest[_key2 - 1] = arguments[_key2];\n        }\n\n        return _endpoint[\"default\"].call.apply(_endpoint[\"default\"], [_this, modules, _set3[\"default\"], _objectSpread({\n          type: 'delete'\n        }, parameters)].concat(rest));\n      },\n      getMemberships: _endpoint[\"default\"].bind(this, modules, _get4[\"default\"]),\n      setMemberships: function setMemberships(parameters) {\n        for (var _len3 = arguments.length, rest = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n          rest[_key3 - 1] = arguments[_key3];\n        }\n\n        return _endpoint[\"default\"].call.apply(_endpoint[\"default\"], [_this, modules, _set4[\"default\"], _objectSpread({\n          type: 'set'\n        }, parameters)].concat(rest));\n      },\n      removeMemberships: function removeMemberships(parameters) {\n        for (var _len4 = arguments.length, rest = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n          rest[_key4 - 1] = arguments[_key4];\n        }\n\n        return _endpoint[\"default\"].call.apply(_endpoint[\"default\"], [_this, modules, _set4[\"default\"], _objectSpread({\n          type: 'delete'\n        }, parameters)].concat(rest));\n      }\n    };\n    this.createUser = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, createUserEndpointConfig));\n    this.updateUser = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, updateUserEndpointConfig));\n    this.deleteUser = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, deleteUserEndpointConfig));\n    this.getUser = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, getUserEndpointConfig));\n    this.getUsers = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, getUsersEndpointConfig));\n    this.createSpace = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, createSpaceEndpointConfig));\n    this.updateSpace = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, updateSpaceEndpointConfig));\n    this.deleteSpace = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, deleteSpaceEndpointConfig));\n    this.getSpaces = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, getSpacesEndpointConfig));\n    this.getSpace = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, getSpaceEndpointConfig));\n    this.addMembers = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, addMembersEndpointConfig));\n    this.updateMembers = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, updateMembersEndpointConfig));\n    this.removeMembers = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, removeMembersEndpointConfig));\n    this.getMembers = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, getMembersEndpointConfig));\n    this.getMemberships = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, getMembershipsEndpointConfig));\n    this.joinSpaces = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, joinSpacesEndpointConfig));\n    this.updateMemberships = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, updateMembershipsEndpointConfig));\n    this.leaveSpaces = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, leaveSpacesEndpointConfig));\n    this.time = timeEndpoint;\n    this.subscribe = subscriptionManager.adaptSubscribeChange.bind(subscriptionManager);\n    this.presence = subscriptionManager.adaptPresenceChange.bind(subscriptionManager);\n    this.unsubscribe = subscriptionManager.adaptUnsubscribeChange.bind(subscriptionManager);\n    this.disconnect = subscriptionManager.disconnect.bind(subscriptionManager);\n    this.reconnect = subscriptionManager.reconnect.bind(subscriptionManager);\n\n    this.destroy = function (isOffline) {\n      subscriptionManager.unsubscribeAll(isOffline);\n      subscriptionManager.disconnect();\n    };\n\n    this.stop = this.destroy;\n    this.unsubscribeAll = subscriptionManager.unsubscribeAll.bind(subscriptionManager);\n    this.getSubscribedChannels = subscriptionManager.getSubscribedChannels.bind(subscriptionManager);\n    this.getSubscribedChannelGroups = subscriptionManager.getSubscribedChannelGroups.bind(subscriptionManager);\n    this.encrypt = crypto.encrypt.bind(crypto);\n    this.decrypt = crypto.decrypt.bind(crypto);\n    this.getAuthKey = modules.config.getAuthKey.bind(modules.config);\n    this.setAuthKey = modules.config.setAuthKey.bind(modules.config);\n    this.setCipherKey = modules.config.setCipherKey.bind(modules.config);\n    this.getUUID = modules.config.getUUID.bind(modules.config);\n    this.setUUID = modules.config.setUUID.bind(modules.config);\n    this.getFilterExpression = modules.config.getFilterExpression.bind(modules.config);\n    this.setFilterExpression = modules.config.setFilterExpression.bind(modules.config);\n    this.setHeartbeatInterval = modules.config.setHeartbeatInterval.bind(modules.config);\n\n    if (networking.hasModule('proxy')) {\n      this.setProxy = function (proxy) {\n        modules.config.setProxy(proxy);\n\n        _this.reconnect();\n      };\n    }\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"getVersion\",\n    value: function getVersion() {\n      return this._config.getVersion();\n    }\n  }, {\n    key: \"_addPnsdkSuffix\",\n    value: function _addPnsdkSuffix(name, suffix) {\n      this._config._addPnsdkSuffix(name, suffix);\n    }\n  }, {\n    key: \"networkDownDetected\",\n    value: function networkDownDetected() {\n      this._listenerManager.announceNetworkDown();\n\n      if (this._config.restore) {\n        this.disconnect();\n      } else {\n        this.destroy(true);\n      }\n    }\n  }, {\n    key: \"networkUpDetected\",\n    value: function networkUpDetected() {\n      this._listenerManager.announceNetworkUp();\n\n      this.reconnect();\n    }\n  }], [{\n    key: \"notificationPayload\",\n    value: function notificationPayload(title, body) {\n      return new _push_payload[\"default\"](title, body);\n    }\n  }, {\n    key: \"generateUUID\",\n    value: function generateUUID() {\n      return _uuid[\"default\"].createUUID();\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\n(0, _defineProperty2[\"default\"])(_default, \"OPERATIONS\", _operations[\"default\"]);\n(0, _defineProperty2[\"default\"])(_default, \"CATEGORIES\", _categories[\"default\"]);\nmodule.exports = exports.default;"},{"id":32,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/webpack/buildin/global.js","name":"(webpack)/buildin/global.js","index":20,"index2":16,"size":472,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/node-libs-browser/node_modules/buffer/index.js","issuerId":21,"issuerName":"./node_modules/node-libs-browser/node_modules/buffer/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":131,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/crypto/modules/web.js","name":"./src/crypto/modules/web.js","profile":{"factory":905,"building":85,"dependencies":2695}},{"id":21,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/node-libs-browser/node_modules/buffer/index.js","name":"./node_modules/node-libs-browser/node_modules/buffer/index.js","profile":{"factory":2710,"building":62}}],"profile":{"factory":96,"building":29},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":21,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/node-libs-browser/node_modules/buffer/index.js","module":"./node_modules/node-libs-browser/node_modules/buffer/index.js","moduleName":"./node_modules/node-libs-browser/node_modules/buffer/index.js","type":"cjs require","userRequest":"global","loc":"1:0-47"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":3,"source":"var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n"},{"id":36,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","name":"./src/core/components/subscription_manager.js","index":25,"index2":31,"size":26854,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/subscription_manager","loc":"22:51-95"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime/helpers/typeof\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _cryptography = _interopRequireDefault(require(\"../components/cryptography\"));\n\nvar _config = _interopRequireDefault(require(\"../components/config\"));\n\nvar _listener_manager = _interopRequireDefault(require(\"../components/listener_manager\"));\n\nvar _reconnection_manager = _interopRequireDefault(require(\"../components/reconnection_manager\"));\n\nvar _deduping_manager = _interopRequireDefault(require(\"../components/deduping_manager\"));\n\nvar _utils = _interopRequireDefault(require(\"../utils\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _categories = _interopRequireDefault(require(\"../constants/categories\"));\n\nvar _default = function () {\n  function _default(_ref) {\n    var subscribeEndpoint = _ref.subscribeEndpoint,\n        leaveEndpoint = _ref.leaveEndpoint,\n        heartbeatEndpoint = _ref.heartbeatEndpoint,\n        setStateEndpoint = _ref.setStateEndpoint,\n        timeEndpoint = _ref.timeEndpoint,\n        getFileUrl = _ref.getFileUrl,\n        config = _ref.config,\n        crypto = _ref.crypto,\n        listenerManager = _ref.listenerManager;\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_crypto\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_config\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_listenerManager\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_reconnectionManager\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_leaveEndpoint\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_heartbeatEndpoint\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_setStateEndpoint\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_subscribeEndpoint\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_getFileUrl\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_channels\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_presenceChannels\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_heartbeatChannels\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_heartbeatChannelGroups\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_channelGroups\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_presenceChannelGroups\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_currentTimetoken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_lastTimetoken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_storedTimetoken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_region\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_subscribeCall\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_heartbeatTimer\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_subscriptionStatusAnnounced\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_autoNetworkDetection\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_isOnline\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_pendingChannelSubscriptions\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_pendingChannelGroupSubscriptions\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_dedupingManager\", void 0);\n    this._listenerManager = listenerManager;\n    this._config = config;\n    this._leaveEndpoint = leaveEndpoint;\n    this._heartbeatEndpoint = heartbeatEndpoint;\n    this._setStateEndpoint = setStateEndpoint;\n    this._subscribeEndpoint = subscribeEndpoint;\n    this._getFileUrl = getFileUrl;\n    this._crypto = crypto;\n    this._channels = {};\n    this._presenceChannels = {};\n    this._heartbeatChannels = {};\n    this._heartbeatChannelGroups = {};\n    this._channelGroups = {};\n    this._presenceChannelGroups = {};\n    this._pendingChannelSubscriptions = [];\n    this._pendingChannelGroupSubscriptions = [];\n    this._currentTimetoken = 0;\n    this._lastTimetoken = 0;\n    this._storedTimetoken = null;\n    this._subscriptionStatusAnnounced = false;\n    this._isOnline = true;\n    this._reconnectionManager = new _reconnection_manager[\"default\"]({\n      timeEndpoint: timeEndpoint\n    });\n    this._dedupingManager = new _deduping_manager[\"default\"]({\n      config: config\n    });\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"adaptStateChange\",\n    value: function adaptStateChange(args, callback) {\n      var _this = this;\n\n      var state = args.state,\n          _args$channels = args.channels,\n          channels = _args$channels === void 0 ? [] : _args$channels,\n          _args$channelGroups = args.channelGroups,\n          channelGroups = _args$channelGroups === void 0 ? [] : _args$channelGroups;\n      channels.forEach(function (channel) {\n        if (channel in _this._channels) _this._channels[channel].state = state;\n      });\n      channelGroups.forEach(function (channelGroup) {\n        if (channelGroup in _this._channelGroups) {\n          _this._channelGroups[channelGroup].state = state;\n        }\n      });\n      return this._setStateEndpoint({\n        state: state,\n        channels: channels,\n        channelGroups: channelGroups\n      }, callback);\n    }\n  }, {\n    key: \"adaptPresenceChange\",\n    value: function adaptPresenceChange(args) {\n      var _this2 = this;\n\n      var connected = args.connected,\n          _args$channels2 = args.channels,\n          channels = _args$channels2 === void 0 ? [] : _args$channels2,\n          _args$channelGroups2 = args.channelGroups,\n          channelGroups = _args$channelGroups2 === void 0 ? [] : _args$channelGroups2;\n\n      if (connected) {\n        channels.forEach(function (channel) {\n          _this2._heartbeatChannels[channel] = {\n            state: {}\n          };\n        });\n        channelGroups.forEach(function (channelGroup) {\n          _this2._heartbeatChannelGroups[channelGroup] = {\n            state: {}\n          };\n        });\n      } else {\n        channels.forEach(function (channel) {\n          if (channel in _this2._heartbeatChannels) {\n            delete _this2._heartbeatChannels[channel];\n          }\n        });\n        channelGroups.forEach(function (channelGroup) {\n          if (channelGroup in _this2._heartbeatChannelGroups) {\n            delete _this2._heartbeatChannelGroups[channelGroup];\n          }\n        });\n\n        if (this._config.suppressLeaveEvents === false) {\n          this._leaveEndpoint({\n            channels: channels,\n            channelGroups: channelGroups\n          }, function (status) {\n            _this2._listenerManager.announceStatus(status);\n          });\n        }\n      }\n\n      this.reconnect();\n    }\n  }, {\n    key: \"adaptSubscribeChange\",\n    value: function adaptSubscribeChange(args) {\n      var _this3 = this;\n\n      var timetoken = args.timetoken,\n          _args$channels3 = args.channels,\n          channels = _args$channels3 === void 0 ? [] : _args$channels3,\n          _args$channelGroups3 = args.channelGroups,\n          channelGroups = _args$channelGroups3 === void 0 ? [] : _args$channelGroups3,\n          _args$withPresence = args.withPresence,\n          withPresence = _args$withPresence === void 0 ? false : _args$withPresence,\n          _args$withHeartbeats = args.withHeartbeats,\n          withHeartbeats = _args$withHeartbeats === void 0 ? false : _args$withHeartbeats;\n\n      if (!this._config.subscribeKey || this._config.subscribeKey === '') {\n        if (console && console.log) {\n          console.log('subscribe key missing; aborting subscribe');\n        }\n\n        return;\n      }\n\n      if (timetoken) {\n        this._lastTimetoken = this._currentTimetoken;\n        this._currentTimetoken = timetoken;\n      }\n\n      if (this._currentTimetoken !== '0' && this._currentTimetoken !== 0) {\n        this._storedTimetoken = this._currentTimetoken;\n        this._currentTimetoken = 0;\n      }\n\n      channels.forEach(function (channel) {\n        _this3._channels[channel] = {\n          state: {}\n        };\n        if (withPresence) _this3._presenceChannels[channel] = {};\n        if (withHeartbeats || _this3._config.getHeartbeatInterval()) _this3._heartbeatChannels[channel] = {};\n\n        _this3._pendingChannelSubscriptions.push(channel);\n      });\n      channelGroups.forEach(function (channelGroup) {\n        _this3._channelGroups[channelGroup] = {\n          state: {}\n        };\n        if (withPresence) _this3._presenceChannelGroups[channelGroup] = {};\n        if (withHeartbeats || _this3._config.getHeartbeatInterval()) _this3._heartbeatChannelGroups[channelGroup] = {};\n\n        _this3._pendingChannelGroupSubscriptions.push(channelGroup);\n      });\n      this._subscriptionStatusAnnounced = false;\n      this.reconnect();\n    }\n  }, {\n    key: \"adaptUnsubscribeChange\",\n    value: function adaptUnsubscribeChange(args, isOffline) {\n      var _this4 = this;\n\n      var _args$channels4 = args.channels,\n          channels = _args$channels4 === void 0 ? [] : _args$channels4,\n          _args$channelGroups4 = args.channelGroups,\n          channelGroups = _args$channelGroups4 === void 0 ? [] : _args$channelGroups4;\n      var actualChannels = [];\n      var actualChannelGroups = [];\n      channels.forEach(function (channel) {\n        if (channel in _this4._channels) {\n          delete _this4._channels[channel];\n          actualChannels.push(channel);\n\n          if (channel in _this4._heartbeatChannels) {\n            delete _this4._heartbeatChannels[channel];\n          }\n        }\n\n        if (channel in _this4._presenceChannels) {\n          delete _this4._presenceChannels[channel];\n          actualChannels.push(channel);\n        }\n      });\n      channelGroups.forEach(function (channelGroup) {\n        if (channelGroup in _this4._channelGroups) {\n          delete _this4._channelGroups[channelGroup];\n          actualChannelGroups.push(channelGroup);\n\n          if (channelGroup in _this4._heartbeatChannelGroups) {\n            delete _this4._heartbeatChannelGroups[channelGroup];\n          }\n        }\n\n        if (channelGroup in _this4._presenceChannelGroups) {\n          delete _this4._channelGroups[channelGroup];\n          actualChannelGroups.push(channelGroup);\n        }\n      });\n\n      if (actualChannels.length === 0 && actualChannelGroups.length === 0) {\n        return;\n      }\n\n      if (this._config.suppressLeaveEvents === false && !isOffline) {\n        this._leaveEndpoint({\n          channels: actualChannels,\n          channelGroups: actualChannelGroups\n        }, function (status) {\n          status.affectedChannels = actualChannels;\n          status.affectedChannelGroups = actualChannelGroups;\n          status.currentTimetoken = _this4._currentTimetoken;\n          status.lastTimetoken = _this4._lastTimetoken;\n\n          _this4._listenerManager.announceStatus(status);\n        });\n      }\n\n      if (Object.keys(this._channels).length === 0 && Object.keys(this._presenceChannels).length === 0 && Object.keys(this._channelGroups).length === 0 && Object.keys(this._presenceChannelGroups).length === 0) {\n        this._lastTimetoken = 0;\n        this._currentTimetoken = 0;\n        this._storedTimetoken = null;\n        this._region = null;\n\n        this._reconnectionManager.stopPolling();\n      }\n\n      this.reconnect();\n    }\n  }, {\n    key: \"unsubscribeAll\",\n    value: function unsubscribeAll(isOffline) {\n      this.adaptUnsubscribeChange({\n        channels: this.getSubscribedChannels(),\n        channelGroups: this.getSubscribedChannelGroups()\n      }, isOffline);\n    }\n  }, {\n    key: \"getHeartbeatChannels\",\n    value: function getHeartbeatChannels() {\n      return Object.keys(this._heartbeatChannels);\n    }\n  }, {\n    key: \"getHeartbeatChannelGroups\",\n    value: function getHeartbeatChannelGroups() {\n      return Object.keys(this._heartbeatChannelGroups);\n    }\n  }, {\n    key: \"getSubscribedChannels\",\n    value: function getSubscribedChannels() {\n      return Object.keys(this._channels);\n    }\n  }, {\n    key: \"getSubscribedChannelGroups\",\n    value: function getSubscribedChannelGroups() {\n      return Object.keys(this._channelGroups);\n    }\n  }, {\n    key: \"reconnect\",\n    value: function reconnect() {\n      this._startSubscribeLoop();\n\n      this._registerHeartbeatTimer();\n    }\n  }, {\n    key: \"disconnect\",\n    value: function disconnect() {\n      this._stopSubscribeLoop();\n\n      this._stopHeartbeatTimer();\n\n      this._reconnectionManager.stopPolling();\n    }\n  }, {\n    key: \"_registerHeartbeatTimer\",\n    value: function _registerHeartbeatTimer() {\n      this._stopHeartbeatTimer();\n\n      if (this._config.getHeartbeatInterval() === 0 || this._config.getHeartbeatInterval() === undefined) {\n        return;\n      }\n\n      this._performHeartbeatLoop();\n\n      this._heartbeatTimer = setInterval(this._performHeartbeatLoop.bind(this), this._config.getHeartbeatInterval() * 1000);\n    }\n  }, {\n    key: \"_stopHeartbeatTimer\",\n    value: function _stopHeartbeatTimer() {\n      if (this._heartbeatTimer) {\n        clearInterval(this._heartbeatTimer);\n        this._heartbeatTimer = null;\n      }\n    }\n  }, {\n    key: \"_performHeartbeatLoop\",\n    value: function _performHeartbeatLoop() {\n      var _this5 = this;\n\n      var heartbeatChannels = this.getHeartbeatChannels();\n      var heartbeatChannelGroups = this.getHeartbeatChannelGroups();\n      var presenceState = {};\n\n      if (heartbeatChannels.length === 0 && heartbeatChannelGroups.length === 0) {\n        return;\n      }\n\n      this.getSubscribedChannels().forEach(function (channel) {\n        var channelState = _this5._channels[channel].state;\n\n        if (Object.keys(channelState).length) {\n          presenceState[channel] = channelState;\n        }\n      });\n      this.getSubscribedChannelGroups().forEach(function (channelGroup) {\n        var channelGroupState = _this5._channelGroups[channelGroup].state;\n\n        if (Object.keys(channelGroupState).length) {\n          presenceState[channelGroup] = channelGroupState;\n        }\n      });\n\n      var onHeartbeat = function onHeartbeat(status) {\n        if (status.error && _this5._config.announceFailedHeartbeats) {\n          _this5._listenerManager.announceStatus(status);\n        }\n\n        if (status.error && _this5._config.autoNetworkDetection && _this5._isOnline) {\n          _this5._isOnline = false;\n\n          _this5.disconnect();\n\n          _this5._listenerManager.announceNetworkDown();\n\n          _this5.reconnect();\n        }\n\n        if (!status.error && _this5._config.announceSuccessfulHeartbeats) {\n          _this5._listenerManager.announceStatus(status);\n        }\n      };\n\n      this._heartbeatEndpoint({\n        channels: heartbeatChannels,\n        channelGroups: heartbeatChannelGroups,\n        state: presenceState\n      }, onHeartbeat.bind(this));\n    }\n  }, {\n    key: \"_startSubscribeLoop\",\n    value: function _startSubscribeLoop() {\n      var _this6 = this;\n\n      this._stopSubscribeLoop();\n\n      var presenceState = {};\n      var channels = [];\n      var channelGroups = [];\n      Object.keys(this._channels).forEach(function (channel) {\n        var channelState = _this6._channels[channel].state;\n\n        if (Object.keys(channelState).length) {\n          presenceState[channel] = channelState;\n        }\n\n        channels.push(channel);\n      });\n      Object.keys(this._presenceChannels).forEach(function (channel) {\n        channels.push(\"\".concat(channel, \"-pnpres\"));\n      });\n      Object.keys(this._channelGroups).forEach(function (channelGroup) {\n        var channelGroupState = _this6._channelGroups[channelGroup].state;\n\n        if (Object.keys(channelGroupState).length) {\n          presenceState[channelGroup] = channelGroupState;\n        }\n\n        channelGroups.push(channelGroup);\n      });\n      Object.keys(this._presenceChannelGroups).forEach(function (channelGroup) {\n        channelGroups.push(\"\".concat(channelGroup, \"-pnpres\"));\n      });\n\n      if (channels.length === 0 && channelGroups.length === 0) {\n        return;\n      }\n\n      var subscribeArgs = {\n        channels: channels,\n        channelGroups: channelGroups,\n        state: presenceState,\n        timetoken: this._currentTimetoken,\n        filterExpression: this._config.filterExpression,\n        region: this._region\n      };\n      this._subscribeCall = this._subscribeEndpoint(subscribeArgs, this._processSubscribeResponse.bind(this));\n    }\n  }, {\n    key: \"_processSubscribeResponse\",\n    value: function _processSubscribeResponse(status, payload) {\n      var _this7 = this;\n\n      if (status.error) {\n        if (status.category === _categories[\"default\"].PNTimeoutCategory) {\n          this._startSubscribeLoop();\n        } else if (status.category === _categories[\"default\"].PNNetworkIssuesCategory) {\n          this.disconnect();\n\n          if (status.error && this._config.autoNetworkDetection && this._isOnline) {\n            this._isOnline = false;\n\n            this._listenerManager.announceNetworkDown();\n          }\n\n          this._reconnectionManager.onReconnection(function () {\n            if (_this7._config.autoNetworkDetection && !_this7._isOnline) {\n              _this7._isOnline = true;\n\n              _this7._listenerManager.announceNetworkUp();\n            }\n\n            _this7.reconnect();\n\n            _this7._subscriptionStatusAnnounced = true;\n            var reconnectedAnnounce = {\n              category: _categories[\"default\"].PNReconnectedCategory,\n              operation: status.operation,\n              lastTimetoken: _this7._lastTimetoken,\n              currentTimetoken: _this7._currentTimetoken\n            };\n\n            _this7._listenerManager.announceStatus(reconnectedAnnounce);\n          });\n\n          this._reconnectionManager.startPolling();\n\n          this._listenerManager.announceStatus(status);\n        } else if (status.category === _categories[\"default\"].PNBadRequestCategory) {\n          this._stopHeartbeatTimer();\n\n          this._listenerManager.announceStatus(status);\n        } else {\n          this._listenerManager.announceStatus(status);\n        }\n\n        return;\n      }\n\n      if (this._storedTimetoken) {\n        this._currentTimetoken = this._storedTimetoken;\n        this._storedTimetoken = null;\n      } else {\n        this._lastTimetoken = this._currentTimetoken;\n        this._currentTimetoken = payload.metadata.timetoken;\n      }\n\n      if (!this._subscriptionStatusAnnounced) {\n        var connectedAnnounce = {};\n        connectedAnnounce.category = _categories[\"default\"].PNConnectedCategory;\n        connectedAnnounce.operation = status.operation;\n        connectedAnnounce.affectedChannels = this._pendingChannelSubscriptions;\n        connectedAnnounce.subscribedChannels = this.getSubscribedChannels();\n        connectedAnnounce.affectedChannelGroups = this._pendingChannelGroupSubscriptions;\n        connectedAnnounce.lastTimetoken = this._lastTimetoken;\n        connectedAnnounce.currentTimetoken = this._currentTimetoken;\n        this._subscriptionStatusAnnounced = true;\n\n        this._listenerManager.announceStatus(connectedAnnounce);\n\n        this._pendingChannelSubscriptions = [];\n        this._pendingChannelGroupSubscriptions = [];\n      }\n\n      var messages = payload.messages || [];\n      var _this$_config = this._config,\n          requestMessageCountThreshold = _this$_config.requestMessageCountThreshold,\n          dedupeOnSubscribe = _this$_config.dedupeOnSubscribe;\n\n      if (requestMessageCountThreshold && messages.length >= requestMessageCountThreshold) {\n        var countAnnouncement = {};\n        countAnnouncement.category = _categories[\"default\"].PNRequestMessageCountExceededCategory;\n        countAnnouncement.operation = status.operation;\n\n        this._listenerManager.announceStatus(countAnnouncement);\n      }\n\n      messages.forEach(function (message) {\n        var channel = message.channel;\n        var subscriptionMatch = message.subscriptionMatch;\n        var publishMetaData = message.publishMetaData;\n\n        if (channel === subscriptionMatch) {\n          subscriptionMatch = null;\n        }\n\n        if (dedupeOnSubscribe) {\n          if (_this7._dedupingManager.isDuplicate(message)) {\n            return;\n          } else {\n            _this7._dedupingManager.addEntry(message);\n          }\n        }\n\n        if (_utils[\"default\"].endsWith(message.channel, '-pnpres')) {\n          var announce = {};\n          announce.channel = null;\n          announce.subscription = null;\n          announce.actualChannel = subscriptionMatch != null ? channel : null;\n          announce.subscribedChannel = subscriptionMatch != null ? subscriptionMatch : channel;\n\n          if (channel) {\n            announce.channel = channel.substring(0, channel.lastIndexOf('-pnpres'));\n          }\n\n          if (subscriptionMatch) {\n            announce.subscription = subscriptionMatch.substring(0, subscriptionMatch.lastIndexOf('-pnpres'));\n          }\n\n          announce.action = message.payload.action;\n          announce.state = message.payload.data;\n          announce.timetoken = publishMetaData.publishTimetoken;\n          announce.occupancy = message.payload.occupancy;\n          announce.uuid = message.payload.uuid;\n          announce.timestamp = message.payload.timestamp;\n\n          if (message.payload.join) {\n            announce.join = message.payload.join;\n          }\n\n          if (message.payload.leave) {\n            announce.leave = message.payload.leave;\n          }\n\n          if (message.payload.timeout) {\n            announce.timeout = message.payload.timeout;\n          }\n\n          _this7._listenerManager.announcePresence(announce);\n        } else if (message.messageType === 1) {\n          var _announce = {};\n          _announce.channel = null;\n          _announce.subscription = null;\n          _announce.channel = channel;\n          _announce.subscription = subscriptionMatch;\n          _announce.timetoken = publishMetaData.publishTimetoken;\n          _announce.publisher = message.issuingClientId;\n\n          if (message.userMetadata) {\n            _announce.userMetadata = message.userMetadata;\n          }\n\n          _announce.message = message.payload;\n\n          _this7._listenerManager.announceSignal(_announce);\n        } else if (message.messageType === 2) {\n          var _announce2 = {};\n          _announce2.channel = null;\n          _announce2.subscription = null;\n          _announce2.channel = channel;\n          _announce2.subscription = subscriptionMatch;\n          _announce2.timetoken = publishMetaData.publishTimetoken;\n          _announce2.publisher = message.issuingClientId;\n\n          if (message.userMetadata) {\n            _announce2.userMetadata = message.userMetadata;\n          }\n\n          _announce2.message = {\n            event: message.payload.event,\n            type: message.payload.type,\n            data: message.payload.data\n          };\n\n          _this7._listenerManager.announceObjects(_announce2);\n\n          if (message.payload.type === 'user') {\n            _this7._listenerManager.announceUser(_announce2);\n          } else if (message.payload.type === 'space') {\n            _this7._listenerManager.announceSpace(_announce2);\n          } else if (message.payload.type === 'membership') {\n            _this7._listenerManager.announceMembership(_announce2);\n          }\n        } else if (message.messageType === 3) {\n          var _announce3 = {};\n          _announce3.channel = channel;\n          _announce3.subscription = subscriptionMatch;\n          _announce3.timetoken = publishMetaData.publishTimetoken;\n          _announce3.publisher = message.issuingClientId;\n          _announce3.data = {\n            messageTimetoken: message.payload.data.messageTimetoken,\n            actionTimetoken: message.payload.data.actionTimetoken,\n            type: message.payload.data.type,\n            uuid: message.issuingClientId,\n            value: message.payload.data.value\n          };\n          _announce3.event = message.payload.event;\n\n          _this7._listenerManager.announceMessageAction(_announce3);\n        } else if (message.messageType === 4) {\n          var _announce4 = {};\n          _announce4.channel = channel;\n          _announce4.subscription = subscriptionMatch;\n          _announce4.timetoken = publishMetaData.publishTimetoken;\n          _announce4.publisher = message.issuingClientId;\n          var msgPayload = message.payload;\n\n          if (_this7._config.cipherKey) {\n            var decryptedPayload = _this7._crypto.decrypt(message.payload);\n\n            if ((0, _typeof2[\"default\"])(decryptedPayload) === 'object' && decryptedPayload !== null) {\n              msgPayload = decryptedPayload;\n            }\n          }\n\n          if (message.userMetadata) {\n            _announce4.userMetadata = message.userMetadata;\n          }\n\n          _announce4.message = msgPayload.message;\n          _announce4.file = {\n            id: msgPayload.file.id,\n            name: msgPayload.file.name,\n            url: _this7._getFileUrl({\n              id: msgPayload.file.id,\n              name: msgPayload.file.name,\n              channel: channel\n            })\n          };\n\n          _this7._listenerManager.announceFile(_announce4);\n        } else {\n          var _announce5 = {};\n          _announce5.channel = null;\n          _announce5.subscription = null;\n          _announce5.actualChannel = subscriptionMatch != null ? channel : null;\n          _announce5.subscribedChannel = subscriptionMatch != null ? subscriptionMatch : channel;\n          _announce5.channel = channel;\n          _announce5.subscription = subscriptionMatch;\n          _announce5.timetoken = publishMetaData.publishTimetoken;\n          _announce5.publisher = message.issuingClientId;\n\n          if (message.userMetadata) {\n            _announce5.userMetadata = message.userMetadata;\n          }\n\n          if (_this7._config.cipherKey) {\n            _announce5.message = _this7._crypto.decrypt(message.payload);\n          } else {\n            _announce5.message = message.payload;\n          }\n\n          _this7._listenerManager.announceMessage(_announce5);\n        }\n      });\n      this._region = payload.metadata.region;\n\n      this._startSubscribeLoop();\n    }\n  }, {\n    key: \"_stopSubscribeLoop\",\n    value: function _stopSubscribeLoop() {\n      if (this._subscribeCall) {\n        if (typeof this._subscribeCall.abort === 'function') {\n          this._subscribeCall.abort();\n        }\n\n        this._subscribeCall = null;\n      }\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":37,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/reconnection_manager.js","name":"./src/core/components/reconnection_manager.js","index":28,"index2":27,"size":1856,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","issuerId":36,"issuerName":"./src/core/components/subscription_manager.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}},{"id":36,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","name":"./src/core/components/subscription_manager.js","profile":{"factory":695,"building":2433,"dependencies":2167}}],"profile":{"factory":2167,"building":56,"dependencies":2},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../components/reconnection_manager","loc":"24:51-96"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":3,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _time = _interopRequireDefault(require(\"../endpoints/time\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _default = function () {\n  function _default(_ref) {\n    var timeEndpoint = _ref.timeEndpoint;\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_reconnectionCallback\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_timeEndpoint\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_timeTimer\", void 0);\n    this._timeEndpoint = timeEndpoint;\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"onReconnection\",\n    value: function onReconnection(reconnectionCallback) {\n      this._reconnectionCallback = reconnectionCallback;\n    }\n  }, {\n    key: \"startPolling\",\n    value: function startPolling() {\n      this._timeTimer = setInterval(this._performTimeLoop.bind(this), 3000);\n    }\n  }, {\n    key: \"stopPolling\",\n    value: function stopPolling() {\n      clearInterval(this._timeTimer);\n    }\n  }, {\n    key: \"_performTimeLoop\",\n    value: function _performTimeLoop() {\n      var _this = this;\n\n      this._timeEndpoint(function (status) {\n        if (!status.error) {\n          clearInterval(_this._timeTimer);\n\n          _this._reconnectionCallback();\n        }\n      });\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":38,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/deduping_manager.js","name":"./src/core/components/deduping_manager.js","index":31,"index2":28,"size":2120,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","issuerId":36,"issuerName":"./src/core/components/subscription_manager.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}},{"id":36,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","name":"./src/core/components/subscription_manager.js","profile":{"factory":695,"building":2433,"dependencies":2167}}],"profile":{"factory":2167,"building":56,"dependencies":2},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../components/deduping_manager","loc":"26:47-88"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":3,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _config = _interopRequireDefault(require(\"../components/config\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar hashCode = function hashCode(payload) {\n  var hash = 0;\n  if (payload.length === 0) return hash;\n\n  for (var i = 0; i < payload.length; i += 1) {\n    var character = payload.charCodeAt(i);\n    hash = (hash << 5) - hash + character;\n    hash = hash & hash;\n  }\n\n  return hash;\n};\n\nvar _default = function () {\n  function _default(_ref) {\n    var config = _ref.config;\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_config\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"hashHistory\", void 0);\n    this.hashHistory = [];\n    this._config = config;\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"getKey\",\n    value: function getKey(message) {\n      var hashedPayload = hashCode(JSON.stringify(message.payload)).toString();\n      var timetoken = message.publishMetaData.publishTimetoken;\n      return \"\".concat(timetoken, \"-\").concat(hashedPayload);\n    }\n  }, {\n    key: \"isDuplicate\",\n    value: function isDuplicate(message) {\n      return this.hashHistory.includes(this.getKey(message));\n    }\n  }, {\n    key: \"addEntry\",\n    value: function addEntry(message) {\n      if (this.hashHistory.length >= this._config.maximumCacheSize) {\n        this.hashHistory.shift();\n      }\n\n      this.hashHistory.push(this.getKey(message));\n    }\n  }, {\n    key: \"clearHistory\",\n    value: function clearHistory() {\n      this.hashHistory = [];\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":40,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/telemetry_manager.js","name":"./src/core/components/telemetry_manager.js","index":34,"index2":32,"size":6101,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/telemetry_manager","loc":"24:48-89"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nvar _default = function () {\n  function _default(configuration) {\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_maximumSamplesCount\", 100);\n    (0, _defineProperty2[\"default\"])(this, \"_trackedLatencies\", {});\n    (0, _defineProperty2[\"default\"])(this, \"_latencies\", {});\n    this._maximumSamplesCount = configuration.maximumSamplesCount || this._maximumSamplesCount;\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"operationsLatencyForRequest\",\n    value: function operationsLatencyForRequest() {\n      var _this = this;\n\n      var latencies = {};\n      Object.keys(this._latencies).forEach(function (endpointName) {\n        var operationLatencies = _this._latencies[endpointName];\n\n        var averageLatency = _this._averageLatency(operationLatencies);\n\n        if (averageLatency > 0) {\n          latencies[\"l_\".concat(endpointName)] = averageLatency;\n        }\n      });\n      return latencies;\n    }\n  }, {\n    key: \"startLatencyMeasure\",\n    value: function startLatencyMeasure(operationType, identifier) {\n      if (operationType === _operations[\"default\"].PNSubscribeOperation || !identifier) {\n        return;\n      }\n\n      this._trackedLatencies[identifier] = Date.now();\n    }\n  }, {\n    key: \"stopLatencyMeasure\",\n    value: function stopLatencyMeasure(operationType, identifier) {\n      if (operationType === _operations[\"default\"].PNSubscribeOperation || !identifier) {\n        return;\n      }\n\n      var endpointName = this._endpointName(operationType);\n\n      var endpointLatencies = this._latencies[endpointName];\n      var startDate = this._trackedLatencies[identifier];\n\n      if (!endpointLatencies) {\n        endpointLatencies = this._latencies[endpointName] = [];\n      }\n\n      endpointLatencies.push(Date.now() - startDate);\n\n      if (endpointLatencies.length > this._maximumSamplesCount) {\n        endpointLatencies.splice(0, endpointLatencies.length - this._maximumSamplesCount);\n      }\n\n      delete this._trackedLatencies[identifier];\n    }\n  }, {\n    key: \"_averageLatency\",\n    value: function _averageLatency(latencies) {\n      var arrayReduce = function arrayReduce(accumulatedLatency, latency) {\n        return accumulatedLatency + latency;\n      };\n\n      return Math.floor(latencies.reduce(arrayReduce, 0) / latencies.length);\n    }\n  }, {\n    key: \"_endpointName\",\n    value: function _endpointName(operationType) {\n      var operation = null;\n\n      switch (operationType) {\n        case _operations[\"default\"].PNPublishOperation:\n          operation = 'pub';\n          break;\n\n        case _operations[\"default\"].PNSignalOperation:\n          operation = 'sig';\n          break;\n\n        case _operations[\"default\"].PNHistoryOperation:\n        case _operations[\"default\"].PNFetchMessagesOperation:\n        case _operations[\"default\"].PNDeleteMessagesOperation:\n        case _operations[\"default\"].PNMessageCounts:\n          operation = 'hist';\n          break;\n\n        case _operations[\"default\"].PNUnsubscribeOperation:\n        case _operations[\"default\"].PNWhereNowOperation:\n        case _operations[\"default\"].PNHereNowOperation:\n        case _operations[\"default\"].PNHeartbeatOperation:\n        case _operations[\"default\"].PNSetStateOperation:\n        case _operations[\"default\"].PNGetStateOperation:\n          operation = 'pres';\n          break;\n\n        case _operations[\"default\"].PNAddChannelsToGroupOperation:\n        case _operations[\"default\"].PNRemoveChannelsFromGroupOperation:\n        case _operations[\"default\"].PNChannelGroupsOperation:\n        case _operations[\"default\"].PNRemoveGroupOperation:\n        case _operations[\"default\"].PNChannelsForGroupOperation:\n          operation = 'cg';\n          break;\n\n        case _operations[\"default\"].PNPushNotificationEnabledChannelsOperation:\n        case _operations[\"default\"].PNRemoveAllPushNotificationsOperation:\n          operation = 'push';\n          break;\n\n        case _operations[\"default\"].PNCreateUserOperation:\n        case _operations[\"default\"].PNUpdateUserOperation:\n        case _operations[\"default\"].PNDeleteUserOperation:\n        case _operations[\"default\"].PNGetUserOperation:\n        case _operations[\"default\"].PNGetUsersOperation:\n        case _operations[\"default\"].PNCreateSpaceOperation:\n        case _operations[\"default\"].PNUpdateSpaceOperation:\n        case _operations[\"default\"].PNDeleteSpaceOperation:\n        case _operations[\"default\"].PNGetSpaceOperation:\n        case _operations[\"default\"].PNGetSpacesOperation:\n        case _operations[\"default\"].PNGetMembersOperation:\n        case _operations[\"default\"].PNUpdateMembersOperation:\n        case _operations[\"default\"].PNGetMembershipsOperation:\n        case _operations[\"default\"].PNUpdateMembershipsOperation:\n          operation = 'obj';\n          break;\n\n        case _operations[\"default\"].PNAddMessageActionOperation:\n        case _operations[\"default\"].PNRemoveMessageActionOperation:\n        case _operations[\"default\"].PNGetMessageActionsOperation:\n          operation = 'msga';\n          break;\n\n        case _operations[\"default\"].PNAccessManagerGrant:\n        case _operations[\"default\"].PNAccessManagerAudit:\n          operation = 'pam';\n          break;\n\n        case _operations[\"default\"].PNAccessManagerGrantToken:\n          operation = 'pam3';\n          break;\n\n        default:\n          operation = 'time';\n          break;\n      }\n\n      return operation;\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":41,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/push_payload.js","name":"./src/core/components/push_payload.js","index":35,"index2":35,"size":19951,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/push_payload","loc":"26:43-79"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = exports.FCMNotificationPayload = exports.MPNSNotificationPayload = exports.APNSNotificationPayload = void 0;\n\nvar _objectWithoutProperties2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutProperties\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inherits2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inherits\"));\n\nvar _possibleConstructorReturn2 = _interopRequireDefault(require(\"@babel/runtime/helpers/possibleConstructorReturn\"));\n\nvar _getPrototypeOf2 = _interopRequireDefault(require(\"@babel/runtime/helpers/getPrototypeOf\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2[\"default\"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2[\"default\"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2[\"default\"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2[\"default\"])(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nvar BaseNotificationPayload = function () {\n  (0, _createClass2[\"default\"])(BaseNotificationPayload, [{\n    key: \"payload\",\n    get: function get() {\n      return this._payload;\n    }\n  }, {\n    key: \"title\",\n    set: function set(value) {\n      this._title = value;\n    }\n  }, {\n    key: \"subtitle\",\n    set: function set(value) {\n      this._subtitle = value;\n    }\n  }, {\n    key: \"body\",\n    set: function set(value) {\n      this._body = value;\n    }\n  }, {\n    key: \"badge\",\n    set: function set(value) {\n      this._badge = value;\n    }\n  }, {\n    key: \"sound\",\n    set: function set(value) {\n      this._sound = value;\n    }\n  }]);\n\n  function BaseNotificationPayload(payload, title, body) {\n    (0, _classCallCheck2[\"default\"])(this, BaseNotificationPayload);\n    (0, _defineProperty2[\"default\"])(this, \"_subtitle\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_payload\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_badge\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_sound\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_title\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_body\", void 0);\n    this._payload = payload;\n\n    this._setDefaultPayloadStructure();\n\n    this.title = title;\n    this.body = body;\n  }\n\n  (0, _createClass2[\"default\"])(BaseNotificationPayload, [{\n    key: \"_setDefaultPayloadStructure\",\n    value: function _setDefaultPayloadStructure() {}\n  }, {\n    key: \"toObject\",\n    value: function toObject() {\n      return {};\n    }\n  }]);\n  return BaseNotificationPayload;\n}();\n\nvar APNSNotificationPayload = function (_BaseNotificationPayl) {\n  (0, _inherits2[\"default\"])(APNSNotificationPayload, _BaseNotificationPayl);\n\n  var _super = _createSuper(APNSNotificationPayload);\n\n  function APNSNotificationPayload() {\n    var _this;\n\n    (0, _classCallCheck2[\"default\"])(this, APNSNotificationPayload);\n\n    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    _this = _super.call.apply(_super, [this].concat(args));\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this), \"_configurations\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this), \"_apnsPushType\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this), \"_isSilent\", void 0);\n    return _this;\n  }\n\n  (0, _createClass2[\"default\"])(APNSNotificationPayload, [{\n    key: \"_setDefaultPayloadStructure\",\n    value: function _setDefaultPayloadStructure() {\n      this._payload.aps = {\n        alert: {}\n      };\n    }\n  }, {\n    key: \"toObject\",\n    value: function toObject() {\n      var _this2 = this;\n\n      var payload = _objectSpread({}, this._payload);\n\n      var aps = payload.aps;\n      var alert = aps.alert;\n\n      if (this._isSilent) {\n        aps['content-available'] = 1;\n      }\n\n      if (this._apnsPushType === 'apns2') {\n        if (!this._configurations || !this._configurations.length) {\n          throw new ReferenceError('APNS2 configuration is missing');\n        }\n\n        var configurations = [];\n\n        this._configurations.forEach(function (configuration) {\n          configurations.push(_this2._objectFromAPNS2Configuration(configuration));\n        });\n\n        if (configurations.length) {\n          payload.pn_push = configurations;\n        }\n      }\n\n      if (!alert || !Object.keys(alert).length) {\n        delete aps.alert;\n      }\n\n      if (this._isSilent) {\n        delete aps.alert;\n        delete aps.badge;\n        delete aps.sound;\n        alert = {};\n      }\n\n      return this._isSilent || Object.keys(alert).length ? payload : null;\n    }\n  }, {\n    key: \"_objectFromAPNS2Configuration\",\n    value: function _objectFromAPNS2Configuration(configuration) {\n      var _this3 = this;\n\n      if (!configuration.targets || !configuration.targets.length) {\n        throw new ReferenceError('At least one APNS2 target should be provided');\n      }\n\n      var targets = [];\n      configuration.targets.forEach(function (target) {\n        targets.push(_this3._objectFromAPNSTarget(target));\n      });\n      var collapseId = configuration.collapseId,\n          expirationDate = configuration.expirationDate;\n      var objectifiedConfiguration = {\n        auth_method: 'token',\n        targets: targets,\n        version: 'v2'\n      };\n\n      if (collapseId && collapseId.length) {\n        objectifiedConfiguration.collapse_id = collapseId;\n      }\n\n      if (expirationDate) {\n        objectifiedConfiguration.expiration = expirationDate.toISOString();\n      }\n\n      return objectifiedConfiguration;\n    }\n  }, {\n    key: \"_objectFromAPNSTarget\",\n    value: function _objectFromAPNSTarget(target) {\n      if (!target.topic || !target.topic.length) {\n        throw new TypeError('Target \\'topic\\' undefined.');\n      }\n\n      var topic = target.topic,\n          _target$environment = target.environment,\n          environment = _target$environment === void 0 ? 'development' : _target$environment,\n          _target$excludedDevic = target.excludedDevices,\n          excludedDevices = _target$excludedDevic === void 0 ? [] : _target$excludedDevic;\n      var objectifiedTarget = {\n        topic: topic,\n        environment: environment\n      };\n\n      if (excludedDevices.length) {\n        objectifiedTarget.excluded_devices = excludedDevices;\n      }\n\n      return objectifiedTarget;\n    }\n  }, {\n    key: \"configurations\",\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._configurations = value;\n    }\n  }, {\n    key: \"notification\",\n    get: function get() {\n      return this._payload.aps;\n    }\n  }, {\n    key: \"title\",\n    get: function get() {\n      return this._title;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.aps.alert.title = value;\n      this._title = value;\n    }\n  }, {\n    key: \"subtitle\",\n    get: function get() {\n      return this._subtitle;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.aps.alert.subtitle = value;\n      this._subtitle = value;\n    }\n  }, {\n    key: \"body\",\n    get: function get() {\n      return this._body;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.aps.alert.body = value;\n      this._body = value;\n    }\n  }, {\n    key: \"badge\",\n    get: function get() {\n      return this._badge;\n    },\n    set: function set(value) {\n      if (value === undefined || value === null) return;\n      this._payload.aps.badge = value;\n      this._badge = value;\n    }\n  }, {\n    key: \"sound\",\n    get: function get() {\n      return this._sound;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.aps.sound = value;\n      this._sound = value;\n    }\n  }, {\n    key: \"silent\",\n    set: function set(value) {\n      this._isSilent = value;\n    }\n  }]);\n  return APNSNotificationPayload;\n}(BaseNotificationPayload);\n\nexports.APNSNotificationPayload = APNSNotificationPayload;\n\nvar MPNSNotificationPayload = function (_BaseNotificationPayl2) {\n  (0, _inherits2[\"default\"])(MPNSNotificationPayload, _BaseNotificationPayl2);\n\n  var _super2 = _createSuper(MPNSNotificationPayload);\n\n  function MPNSNotificationPayload() {\n    var _this4;\n\n    (0, _classCallCheck2[\"default\"])(this, MPNSNotificationPayload);\n\n    for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n      args[_key2] = arguments[_key2];\n    }\n\n    _this4 = _super2.call.apply(_super2, [this].concat(args));\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this4), \"_backContent\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this4), \"_backTitle\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this4), \"_count\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this4), \"_type\", void 0);\n    return _this4;\n  }\n\n  (0, _createClass2[\"default\"])(MPNSNotificationPayload, [{\n    key: \"toObject\",\n    value: function toObject() {\n      return Object.keys(this._payload).length ? _objectSpread({}, this._payload) : null;\n    }\n  }, {\n    key: \"backContent\",\n    get: function get() {\n      return this._backContent;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.back_content = value;\n      this._backContent = value;\n    }\n  }, {\n    key: \"backTitle\",\n    get: function get() {\n      return this._backTitle;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.back_title = value;\n      this._backTitle = value;\n    }\n  }, {\n    key: \"count\",\n    get: function get() {\n      return this._count;\n    },\n    set: function set(value) {\n      if (value === undefined || value === null) return;\n      this._payload.count = value;\n      this._count = value;\n    }\n  }, {\n    key: \"title\",\n    get: function get() {\n      return this._title;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.title = value;\n      this._title = value;\n    }\n  }, {\n    key: \"type\",\n    get: function get() {\n      return this._type;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.type = value;\n      this._type = value;\n    }\n  }, {\n    key: \"subtitle\",\n    get: function get() {\n      return this.backTitle;\n    },\n    set: function set(value) {\n      this.backTitle = value;\n    }\n  }, {\n    key: \"body\",\n    get: function get() {\n      return this.backContent;\n    },\n    set: function set(value) {\n      this.backContent = value;\n    }\n  }, {\n    key: \"badge\",\n    get: function get() {\n      return this.count;\n    },\n    set: function set(value) {\n      this.count = value;\n    }\n  }]);\n  return MPNSNotificationPayload;\n}(BaseNotificationPayload);\n\nexports.MPNSNotificationPayload = MPNSNotificationPayload;\n\nvar FCMNotificationPayload = function (_BaseNotificationPayl3) {\n  (0, _inherits2[\"default\"])(FCMNotificationPayload, _BaseNotificationPayl3);\n\n  var _super3 = _createSuper(FCMNotificationPayload);\n\n  function FCMNotificationPayload() {\n    var _this5;\n\n    (0, _classCallCheck2[\"default\"])(this, FCMNotificationPayload);\n\n    for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n      args[_key3] = arguments[_key3];\n    }\n\n    _this5 = _super3.call.apply(_super3, [this].concat(args));\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this5), \"_isSilent\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this5), \"_icon\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this5), \"_tag\", void 0);\n    return _this5;\n  }\n\n  (0, _createClass2[\"default\"])(FCMNotificationPayload, [{\n    key: \"_setDefaultPayloadStructure\",\n    value: function _setDefaultPayloadStructure() {\n      this._payload.notification = {};\n      this._payload.data = {};\n    }\n  }, {\n    key: \"toObject\",\n    value: function toObject() {\n      var data = _objectSpread({}, this._payload.data);\n\n      var notification = null;\n      var payload = {};\n\n      if (Object.keys(this._payload).length > 2) {\n        var _this$_payload = this._payload,\n            initialNotification = _this$_payload.notification,\n            initialData = _this$_payload.data,\n            additionalData = (0, _objectWithoutProperties2[\"default\"])(_this$_payload, [\"notification\", \"data\"]);\n        data = _objectSpread(_objectSpread({}, data), additionalData);\n      }\n\n      if (this._isSilent) {\n        data.notification = this._payload.notification;\n      } else {\n        notification = this._payload.notification;\n      }\n\n      if (Object.keys(data).length) {\n        payload.data = data;\n      }\n\n      if (notification && Object.keys(notification).length) {\n        payload.notification = notification;\n      }\n\n      return Object.keys(payload).length ? payload : null;\n    }\n  }, {\n    key: \"notification\",\n    get: function get() {\n      return this._payload.notification;\n    }\n  }, {\n    key: \"data\",\n    get: function get() {\n      return this._payload.data;\n    }\n  }, {\n    key: \"title\",\n    get: function get() {\n      return this._title;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.notification.title = value;\n      this._title = value;\n    }\n  }, {\n    key: \"body\",\n    get: function get() {\n      return this._body;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.notification.body = value;\n      this._body = value;\n    }\n  }, {\n    key: \"sound\",\n    get: function get() {\n      return this._sound;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.notification.sound = value;\n      this._sound = value;\n    }\n  }, {\n    key: \"icon\",\n    get: function get() {\n      return this._icon;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.notification.icon = value;\n      this._icon = value;\n    }\n  }, {\n    key: \"tag\",\n    get: function get() {\n      return this._tag;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.notification.tag = value;\n      this._tag = value;\n    }\n  }, {\n    key: \"silent\",\n    set: function set(value) {\n      this._isSilent = value;\n    }\n  }]);\n  return FCMNotificationPayload;\n}(BaseNotificationPayload);\n\nexports.FCMNotificationPayload = FCMNotificationPayload;\n\nvar NotificationsPayload = function () {\n  (0, _createClass2[\"default\"])(NotificationsPayload, [{\n    key: \"debugging\",\n    set: function set(value) {\n      this._debugging = value;\n    }\n  }, {\n    key: \"title\",\n    get: function get() {\n      return this._title;\n    }\n  }, {\n    key: \"body\",\n    get: function get() {\n      return this._body;\n    }\n  }, {\n    key: \"subtitle\",\n    get: function get() {\n      return this._subtitle;\n    },\n    set: function set(value) {\n      this._subtitle = value;\n      this.apns.subtitle = value;\n      this.mpns.subtitle = value;\n      this.fcm.subtitle = value;\n    }\n  }, {\n    key: \"badge\",\n    get: function get() {\n      return this._badge;\n    },\n    set: function set(value) {\n      this._badge = value;\n      this.apns.badge = value;\n      this.mpns.badge = value;\n      this.fcm.badge = value;\n    }\n  }, {\n    key: \"sound\",\n    get: function get() {\n      return this._sound;\n    },\n    set: function set(value) {\n      this._sound = value;\n      this.apns.sound = value;\n      this.mpns.sound = value;\n      this.fcm.sound = value;\n    }\n  }]);\n\n  function NotificationsPayload(title, body) {\n    (0, _classCallCheck2[\"default\"])(this, NotificationsPayload);\n    (0, _defineProperty2[\"default\"])(this, \"_payload\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_debugging\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_subtitle\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_badge\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_sound\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_title\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_body\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"apns\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"mpns\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"fcm\", void 0);\n    this._payload = {\n      apns: {},\n      mpns: {},\n      fcm: {}\n    };\n    this._title = title;\n    this._body = body;\n    this.apns = new APNSNotificationPayload(this._payload.apns, title, body);\n    this.mpns = new MPNSNotificationPayload(this._payload.mpns, title, body);\n    this.fcm = new FCMNotificationPayload(this._payload.fcm, title, body);\n  }\n\n  (0, _createClass2[\"default\"])(NotificationsPayload, [{\n    key: \"buildPayload\",\n    value: function buildPayload(platforms) {\n      var payload = {};\n\n      if (platforms.includes('apns') || platforms.includes('apns2')) {\n        this.apns._apnsPushType = platforms.includes('apns') ? 'apns' : 'apns2';\n        var apnsPayload = this.apns.toObject();\n\n        if (apnsPayload && Object.keys(apnsPayload).length) {\n          payload.pn_apns = apnsPayload;\n        }\n      }\n\n      if (platforms.includes('mpns')) {\n        var mpnsPayload = this.mpns.toObject();\n\n        if (mpnsPayload && Object.keys(mpnsPayload).length) {\n          payload.pn_mpns = mpnsPayload;\n        }\n      }\n\n      if (platforms.includes('fcm')) {\n        var fcmPayload = this.fcm.toObject();\n\n        if (fcmPayload && Object.keys(fcmPayload).length) {\n          payload.pn_gcm = fcmPayload;\n        }\n      }\n\n      if (Object.keys(payload).length && this._debugging) {\n        payload.pn_debug = true;\n      }\n\n      return payload;\n    }\n  }]);\n  return NotificationsPayload;\n}();\n\nvar _default = NotificationsPayload;\nexports[\"default\"] = _default;"},{"id":44,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/token_manager.js","name":"./src/core/components/token_manager.js","index":38,"index2":36,"size":9323,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/token_manager","loc":"30:44-81"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime/helpers/typeof\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _config = _interopRequireDefault(require(\"./config\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _default = function () {\n  function _default(config, cbor) {\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_config\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_cbor\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_userTokens\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_spaceTokens\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_userToken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_spaceToken\", void 0);\n    this._config = config;\n    this._cbor = cbor;\n\n    this._initializeTokens();\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"_initializeTokens\",\n    value: function _initializeTokens() {\n      this._userTokens = {};\n      this._spaceTokens = {};\n      this._userToken = undefined;\n      this._spaceToken = undefined;\n    }\n  }, {\n    key: \"_setToken\",\n    value: function _setToken(token) {\n      var _this = this;\n\n      var tokenObject = this.parseToken(token);\n\n      if (tokenObject && tokenObject.resources) {\n        if (tokenObject.resources.users) {\n          Object.keys(tokenObject.resources.users).forEach(function (id) {\n            _this._userTokens[id] = token;\n          });\n        }\n\n        if (tokenObject.resources.spaces) {\n          Object.keys(tokenObject.resources.spaces).forEach(function (id) {\n            _this._spaceTokens[id] = token;\n          });\n        }\n      }\n\n      if (tokenObject && tokenObject.patterns) {\n        if (tokenObject.patterns.users && Object.keys(tokenObject.patterns.users).length > 0) {\n          this._userToken = token;\n        }\n\n        if (tokenObject.patterns.spaces && Object.keys(tokenObject.patterns.spaces).length > 0) {\n          this._spaceToken = token;\n        }\n      }\n    }\n  }, {\n    key: \"setToken\",\n    value: function setToken(token) {\n      if (token && token.length > 0) {\n        this._setToken(token);\n      }\n    }\n  }, {\n    key: \"setTokens\",\n    value: function setTokens(tokens) {\n      var _this2 = this;\n\n      if (tokens && tokens.length && (0, _typeof2[\"default\"])(tokens) === 'object') {\n        tokens.forEach(function (token) {\n          _this2.setToken(token);\n        });\n      }\n    }\n  }, {\n    key: \"getTokens\",\n    value: function getTokens(tokenDef) {\n      var _this3 = this;\n\n      var result = {\n        users: {},\n        spaces: {}\n      };\n\n      if (tokenDef) {\n        if (tokenDef.user) {\n          result.user = this._userToken;\n        }\n\n        if (tokenDef.space) {\n          result.space = this._spaceToken;\n        }\n\n        if (tokenDef.users) {\n          tokenDef.users.forEach(function (user) {\n            result.users[user] = _this3._userTokens[user];\n          });\n        }\n\n        if (tokenDef.space) {\n          tokenDef.spaces.forEach(function (space) {\n            result.spaces[space] = _this3._spaceTokens[space];\n          });\n        }\n      } else {\n        if (this._userToken) {\n          result.user = this._userToken;\n        }\n\n        if (this._spaceToken) {\n          result.space = this._spaceToken;\n        }\n\n        Object.keys(this._userTokens).forEach(function (user) {\n          result.users[user] = _this3._userTokens[user];\n        });\n        Object.keys(this._spaceTokens).forEach(function (space) {\n          result.spaces[space] = _this3._spaceTokens[space];\n        });\n      }\n\n      return result;\n    }\n  }, {\n    key: \"getToken\",\n    value: function getToken(type, id) {\n      var result;\n\n      if (id) {\n        if (type === 'user') {\n          result = this._userTokens[id];\n        } else if (type === 'space') {\n          result = this._spaceTokens[id];\n        }\n      } else if (type === 'user') {\n        result = this._userToken;\n      } else if (type === 'space') {\n        result = this._spaceToken;\n      }\n\n      return result;\n    }\n  }, {\n    key: \"extractPermissions\",\n    value: function extractPermissions(permissions) {\n      var permissionsResult = {\n        create: false,\n        read: false,\n        write: false,\n        manage: false,\n        \"delete\": false\n      };\n\n      if ((permissions & 16) === 16) {\n        permissionsResult.create = true;\n      }\n\n      if ((permissions & 8) === 8) {\n        permissionsResult[\"delete\"] = true;\n      }\n\n      if ((permissions & 4) === 4) {\n        permissionsResult.manage = true;\n      }\n\n      if ((permissions & 2) === 2) {\n        permissionsResult.write = true;\n      }\n\n      if ((permissions & 1) === 1) {\n        permissionsResult.read = true;\n      }\n\n      return permissionsResult;\n    }\n  }, {\n    key: \"parseToken\",\n    value: function parseToken(tokenString) {\n      var _this4 = this;\n\n      var parsed = this._cbor.decodeToken(tokenString);\n\n      if (parsed !== undefined) {\n        var userResourcePermissions = Object.keys(parsed.res.usr);\n        var spaceResourcePermissions = Object.keys(parsed.res.spc);\n        var channelResourcePermissions = Object.keys(parsed.res.chan);\n        var groupResourcePermissions = Object.keys(parsed.res.grp);\n        var userPatternPermissions = Object.keys(parsed.pat.usr);\n        var spacePatternPermissions = Object.keys(parsed.pat.spc);\n        var channelPatternPermissions = Object.keys(parsed.pat.chan);\n        var groupPatternPermissions = Object.keys(parsed.pat.grp);\n        var result = {\n          version: parsed.v,\n          timestamp: parsed.t,\n          ttl: parsed.ttl\n        };\n        var userResources = userResourcePermissions.length > 0;\n        var spaceResources = spaceResourcePermissions.length > 0;\n        var channelResources = channelResourcePermissions.length > 0;\n        var groupResources = groupResourcePermissions.length > 0;\n\n        if (userResources || spaceResources || channelResources || groupResources) {\n          result.resources = {};\n\n          if (userResources) {\n            result.resources.users = {};\n            userResourcePermissions.forEach(function (id) {\n              result.resources.users[id] = _this4.extractPermissions(parsed.res.usr[id]);\n            });\n          }\n\n          if (spaceResources) {\n            result.resources.spaces = {};\n            spaceResourcePermissions.forEach(function (id) {\n              result.resources.spaces[id] = _this4.extractPermissions(parsed.res.spc[id]);\n            });\n          }\n\n          if (channelResources) {\n            result.resources.channels = {};\n            channelResourcePermissions.forEach(function (id) {\n              result.resources.channels[id] = _this4.extractPermissions(parsed.res.chan[id]);\n            });\n          }\n\n          if (groupResources) {\n            result.resources.groups = {};\n            groupResourcePermissions.forEach(function (id) {\n              result.resources.groups[id] = _this4.extractPermissions(parsed.res.grp[id]);\n            });\n          }\n        }\n\n        var userPatterns = userPatternPermissions.length > 0;\n        var spacePatterns = spacePatternPermissions.length > 0;\n        var channelPatterns = channelPatternPermissions.length > 0;\n        var groupPatterns = groupPatternPermissions.length > 0;\n\n        if (userPatterns || spacePatterns || channelPatterns || groupPatterns) {\n          result.patterns = {};\n\n          if (userPatterns) {\n            result.patterns.users = {};\n            userPatternPermissions.forEach(function (id) {\n              result.patterns.users[id] = _this4.extractPermissions(parsed.pat.usr[id]);\n            });\n          }\n\n          if (spacePatterns) {\n            result.patterns.spaces = {};\n            spacePatternPermissions.forEach(function (id) {\n              result.patterns.spaces[id] = _this4.extractPermissions(parsed.pat.spc[id]);\n            });\n          }\n\n          if (channelPatterns) {\n            result.patterns.channels = {};\n            channelPatternPermissions.forEach(function (id) {\n              result.patterns.channels[id] = _this4.extractPermissions(parsed.pat.chan[id]);\n            });\n          }\n\n          if (groupPatterns) {\n            result.patterns.groups = {};\n            groupPatternPermissions.forEach(function (id) {\n              result.patterns.groups[id] = _this4.extractPermissions(parsed.pat.grp[id]);\n            });\n          }\n        }\n\n        if (Object.keys(parsed.meta).length > 0) {\n          result.meta = parsed.meta;\n        }\n\n        result.signature = parsed.sig;\n        return result;\n      } else {\n        return undefined;\n      }\n    }\n  }, {\n    key: \"clearTokens\",\n    value: function clearTokens() {\n      this._initializeTokens();\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":49,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/add_channels.js","name":"./src/core/endpoints/channel_groups/add_channels.js","index":44,"index2":42,"size":1795,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/channel_groups/add_channels","loc":"36:60-110"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNAddChannelsToGroupOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channels = incomingParams.channels,\n      channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  if (!channelGroup) return 'Missing Channel Group';\n  if (!channels || channels.length === 0) return 'Missing Channels';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  return \"/v1/channel-registration/sub-key/\".concat(config.subscribeKey, \"/channel-group/\").concat(_utils[\"default\"].encodeString(channelGroup));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann;\n  return {\n    add: channels.join(',')\n  };\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":50,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/remove_channels.js","name":"./src/core/endpoints/channel_groups/remove_channels.js","index":45,"index2":43,"size":1803,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/channel_groups/remove_channels","loc":"38:63-116"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNRemoveChannelsFromGroupOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channels = incomingParams.channels,\n      channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  if (!channelGroup) return 'Missing Channel Group';\n  if (!channels || channels.length === 0) return 'Missing Channels';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  return \"/v1/channel-registration/sub-key/\".concat(config.subscribeKey, \"/channel-group/\").concat(_utils[\"default\"].encodeString(channelGroup));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann;\n  return {\n    remove: channels.join(',')\n  };\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":51,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/delete_group.js","name":"./src/core/endpoints/channel_groups/delete_group.js","index":46,"index2":44,"size":1499,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/channel_groups/delete_group","loc":"40:55-105"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.isAuthSupported = isAuthSupported;\nexports.getRequestTimeout = getRequestTimeout;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNRemoveGroupOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  if (!channelGroup) return 'Missing Channel Group';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  return \"/v1/channel-registration/sub-key/\".concat(config.subscribeKey, \"/channel-group/\").concat(_utils[\"default\"].encodeString(channelGroup), \"/remove\");\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":52,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_groups.js","name":"./src/core/endpoints/channel_groups/list_groups.js","index":47,"index2":45,"size":1257,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/channel_groups/list_groups","loc":"42:54-103"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNChannelGroupsOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v1/channel-registration/sub-key/\".concat(config.subscribeKey, \"/channel-group\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    groups: serverResponse.payload.groups\n  };\n}"},{"id":53,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_channels.js","name":"./src/core/endpoints/channel_groups/list_channels.js","index":48,"index2":46,"size":1565,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/channel_groups/list_channels","loc":"44:63-114"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNChannelsForGroupOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  if (!channelGroup) return 'Missing Channel Group';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  return \"/v1/channel-registration/sub-key/\".concat(config.subscribeKey, \"/channel-group/\").concat(_utils[\"default\"].encodeString(channelGroup));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    channels: serverResponse.payload.channels\n  };\n}"},{"id":54,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/add_push_channels.js","name":"./src/core/endpoints/push/add_push_channels.js","index":49,"index2":47,"size":2542,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/push/add_push_channels","loc":"46:52-97"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNPushNotificationEnabledChannelsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway,\n      channels = incomingParams.channels,\n      topic = incomingParams.topic;\n  var config = modules.config;\n  if (!device) return 'Missing Device ID (device)';\n  if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n  if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n  if (!channels || channels.length === 0) return 'Missing Channels';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway;\n  var config = modules.config;\n\n  if (pushGateway === 'apns2') {\n    return \"/v2/push/sub-key/\".concat(config.subscribeKey, \"/devices-apns2/\").concat(device);\n  }\n\n  return \"/v1/push/sub-key/\".concat(config.subscribeKey, \"/devices/\").concat(device);\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var pushGateway = incomingParams.pushGateway,\n      _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann,\n      _incomingParams$envir = incomingParams.environment,\n      environment = _incomingParams$envir === void 0 ? 'development' : _incomingParams$envir,\n      topic = incomingParams.topic;\n  var parameters = {\n    type: pushGateway,\n    add: channels.join(',')\n  };\n\n  if (pushGateway === 'apns2') {\n    parameters = Object.assign({}, parameters, {\n      environment: environment,\n      topic: topic\n    });\n    delete parameters.type;\n  }\n\n  return parameters;\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":55,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/remove_push_channels.js","name":"./src/core/endpoints/push/remove_push_channels.js","index":50,"index2":48,"size":2545,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/push/remove_push_channels","loc":"48:55-103"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNPushNotificationEnabledChannelsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway,\n      channels = incomingParams.channels,\n      topic = incomingParams.topic;\n  var config = modules.config;\n  if (!device) return 'Missing Device ID (device)';\n  if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n  if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n  if (!channels || channels.length === 0) return 'Missing Channels';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway;\n  var config = modules.config;\n\n  if (pushGateway === 'apns2') {\n    return \"/v2/push/sub-key/\".concat(config.subscribeKey, \"/devices-apns2/\").concat(device);\n  }\n\n  return \"/v1/push/sub-key/\".concat(config.subscribeKey, \"/devices/\").concat(device);\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var pushGateway = incomingParams.pushGateway,\n      _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann,\n      _incomingParams$envir = incomingParams.environment,\n      environment = _incomingParams$envir === void 0 ? 'development' : _incomingParams$envir,\n      topic = incomingParams.topic;\n  var parameters = {\n    type: pushGateway,\n    remove: channels.join(',')\n  };\n\n  if (pushGateway === 'apns2') {\n    parameters = Object.assign({}, parameters, {\n      environment: environment,\n      topic: topic\n    });\n    delete parameters.type;\n  }\n\n  return parameters;\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":56,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/list_push_channels.js","name":"./src/core/endpoints/push/list_push_channels.js","index":51,"index2":49,"size":2322,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/push/list_push_channels","loc":"50:53-99"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNPushNotificationEnabledChannelsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway,\n      topic = incomingParams.topic;\n  var config = modules.config;\n  if (!device) return 'Missing Device ID (device)';\n  if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n  if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway;\n  var config = modules.config;\n\n  if (pushGateway === 'apns2') {\n    return \"/v2/push/sub-key/\".concat(config.subscribeKey, \"/devices-apns2/\").concat(device);\n  }\n\n  return \"/v1/push/sub-key/\".concat(config.subscribeKey, \"/devices/\").concat(device);\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var pushGateway = incomingParams.pushGateway,\n      _incomingParams$envir = incomingParams.environment,\n      environment = _incomingParams$envir === void 0 ? 'development' : _incomingParams$envir,\n      topic = incomingParams.topic;\n  var parameters = {\n    type: pushGateway\n  };\n\n  if (pushGateway === 'apns2') {\n    parameters = Object.assign({}, parameters, {\n      environment: environment,\n      topic: topic\n    });\n    delete parameters.type;\n  }\n\n  return parameters;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    channels: serverResponse\n  };\n}"},{"id":57,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/remove_device.js","name":"./src/core/endpoints/push/remove_device.js","index":52,"index2":50,"size":2284,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/push/remove_device","loc":"52:53-94"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNRemoveAllPushNotificationsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway,\n      topic = incomingParams.topic;\n  var config = modules.config;\n  if (!device) return 'Missing Device ID (device)';\n  if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n  if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway;\n  var config = modules.config;\n\n  if (pushGateway === 'apns2') {\n    return \"/v2/push/sub-key/\".concat(config.subscribeKey, \"/devices-apns2/\").concat(device, \"/remove\");\n  }\n\n  return \"/v1/push/sub-key/\".concat(config.subscribeKey, \"/devices/\").concat(device, \"/remove\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var pushGateway = incomingParams.pushGateway,\n      _incomingParams$envir = incomingParams.environment,\n      environment = _incomingParams$envir === void 0 ? 'development' : _incomingParams$envir,\n      topic = incomingParams.topic;\n  var parameters = {\n    type: pushGateway\n  };\n\n  if (pushGateway === 'apns2') {\n    parameters = Object.assign({}, parameters, {\n      environment: environment,\n      topic: topic\n    });\n    delete parameters.type;\n  }\n\n  return parameters;\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":58,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/leave.js","name":"./src/core/endpoints/presence/leave.js","index":53,"index2":51,"size":1818,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/presence/leave","loc":"54:58-95"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUnsubscribeOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann;\n  var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n  return \"/v2/presence/sub-key/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(stringifiedChannels), \"/leave\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2;\n  var params = {};\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  return params;\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":59,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/where_now.js","name":"./src/core/endpoints/presence/where_now.js","index":54,"index2":52,"size":1569,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/presence/where_now","loc":"56:61-102"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNWhereNowOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$uuid = incomingParams.uuid,\n      uuid = _incomingParams$uuid === void 0 ? config.UUID : _incomingParams$uuid;\n  return \"/v2/presence/sub-key/\".concat(config.subscribeKey, \"/uuid/\").concat(_utils[\"default\"].encodeString(uuid));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse(modules, serverResponse) {\n  if (!serverResponse.payload) {\n    return {\n      channels: []\n    };\n  }\n\n  return {\n    channels: serverResponse.payload.channels\n  };\n}"},{"id":60,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/heartbeat.js","name":"./src/core/endpoints/presence/heartbeat.js","index":55,"index2":53,"size":2070,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/presence/heartbeat","loc":"58:62-103"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.isAuthSupported = isAuthSupported;\nexports.getRequestTimeout = getRequestTimeout;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNHeartbeatOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann;\n  var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n  return \"/v2/presence/sub-key/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(stringifiedChannels), \"/heartbeat\");\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2,\n      _incomingParams$state = incomingParams.state,\n      state = _incomingParams$state === void 0 ? {} : _incomingParams$state;\n  var config = modules.config;\n  var params = {};\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  params.state = JSON.stringify(state);\n  params.heartbeat = config.getPresenceTimeout();\n  return params;\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":61,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/get_state.js","name":"./src/core/endpoints/presence/get_state.js","index":56,"index2":54,"size":2534,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/presence/get_state","loc":"60:53-94"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetStateOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$uuid = incomingParams.uuid,\n      uuid = _incomingParams$uuid === void 0 ? config.UUID : _incomingParams$uuid,\n      _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann;\n  var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n  return \"/v2/presence/sub-key/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(stringifiedChannels), \"/uuid/\").concat(uuid);\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2;\n  var params = {};\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse, incomingParams) {\n  var _incomingParams$chann3 = incomingParams.channels,\n      channels = _incomingParams$chann3 === void 0 ? [] : _incomingParams$chann3,\n      _incomingParams$chann4 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann4 === void 0 ? [] : _incomingParams$chann4;\n  var channelsResponse = {};\n\n  if (channels.length === 1 && channelGroups.length === 0) {\n    channelsResponse[channels[0]] = serverResponse.payload;\n  } else {\n    channelsResponse = serverResponse.payload;\n  }\n\n  return {\n    channels: channelsResponse\n  };\n}"},{"id":62,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/set_state.js","name":"./src/core/endpoints/presence/set_state.js","index":57,"index2":55,"size":2513,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/presence/set_state","loc":"62:53-94"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNSetStateOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var config = modules.config;\n  var state = incomingParams.state,\n      _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann,\n      _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2;\n  if (!state) return 'Missing State';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n  if (channels.length === 0 && channelGroups.length === 0) return 'Please provide a list of channels and/or channel-groups';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$chann3 = incomingParams.channels,\n      channels = _incomingParams$chann3 === void 0 ? [] : _incomingParams$chann3;\n  var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n  return \"/v2/presence/sub-key/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(stringifiedChannels), \"/uuid/\").concat(_utils[\"default\"].encodeString(config.UUID), \"/data\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var state = incomingParams.state,\n      _incomingParams$chann4 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann4 === void 0 ? [] : _incomingParams$chann4;\n  var params = {};\n  params.state = JSON.stringify(state);\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    state: serverResponse.payload\n  };\n}"},{"id":63,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/here_now.js","name":"./src/core/endpoints/presence/here_now.js","index":58,"index2":56,"size":6744,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/presence/here_now","loc":"64:52-92"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\nexports.handleError = handleError;\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2[\"default\"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction getOperation() {\n  return _operations[\"default\"].PNHereNowOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann,\n      _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2;\n  var baseURL = \"/v2/presence/sub-key/\".concat(config.subscribeKey);\n\n  if (channels.length > 0 || channelGroups.length > 0) {\n    var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n    baseURL += \"/channel/\".concat(_utils[\"default\"].encodeString(stringifiedChannels));\n  }\n\n  return baseURL;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann3 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann3 === void 0 ? [] : _incomingParams$chann3,\n      _incomingParams$inclu = incomingParams.includeUUIDs,\n      includeUUIDs = _incomingParams$inclu === void 0 ? true : _incomingParams$inclu,\n      _incomingParams$inclu2 = incomingParams.includeState,\n      includeState = _incomingParams$inclu2 === void 0 ? false : _incomingParams$inclu2,\n      _incomingParams$query = incomingParams.queryParameters,\n      queryParameters = _incomingParams$query === void 0 ? {} : _incomingParams$query;\n  var params = {};\n  if (!includeUUIDs) params.disable_uuids = 1;\n  if (includeState) params.state = 1;\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  params = _objectSpread(_objectSpread({}, params), queryParameters);\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse, incomingParams) {\n  var _incomingParams$chann4 = incomingParams.channels,\n      channels = _incomingParams$chann4 === void 0 ? [] : _incomingParams$chann4,\n      _incomingParams$chann5 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann5 === void 0 ? [] : _incomingParams$chann5,\n      _incomingParams$inclu3 = incomingParams.includeUUIDs,\n      includeUUIDs = _incomingParams$inclu3 === void 0 ? true : _incomingParams$inclu3,\n      _incomingParams$inclu4 = incomingParams.includeState,\n      includeState = _incomingParams$inclu4 === void 0 ? false : _incomingParams$inclu4;\n\n  var prepareSingularChannel = function prepareSingularChannel() {\n    var response = {};\n    var occupantsList = [];\n    response.totalChannels = 1;\n    response.totalOccupancy = serverResponse.occupancy;\n    response.channels = {};\n    response.channels[channels[0]] = {\n      occupants: occupantsList,\n      name: channels[0],\n      occupancy: serverResponse.occupancy\n    };\n\n    if (includeUUIDs && serverResponse.uuids) {\n      serverResponse.uuids.forEach(function (uuidEntry) {\n        if (includeState) {\n          occupantsList.push({\n            state: uuidEntry.state,\n            uuid: uuidEntry.uuid\n          });\n        } else {\n          occupantsList.push({\n            state: null,\n            uuid: uuidEntry\n          });\n        }\n      });\n    }\n\n    return response;\n  };\n\n  var prepareMultipleChannel = function prepareMultipleChannel() {\n    var response = {};\n    response.totalChannels = serverResponse.payload.total_channels;\n    response.totalOccupancy = serverResponse.payload.total_occupancy;\n    response.channels = {};\n    Object.keys(serverResponse.payload.channels).forEach(function (channelName) {\n      var channelEntry = serverResponse.payload.channels[channelName];\n      var occupantsList = [];\n      response.channels[channelName] = {\n        occupants: occupantsList,\n        name: channelName,\n        occupancy: channelEntry.occupancy\n      };\n\n      if (includeUUIDs) {\n        channelEntry.uuids.forEach(function (uuidEntry) {\n          if (includeState) {\n            occupantsList.push({\n              state: uuidEntry.state,\n              uuid: uuidEntry.uuid\n            });\n          } else {\n            occupantsList.push({\n              state: null,\n              uuid: uuidEntry\n            });\n          }\n        });\n      }\n\n      return response;\n    });\n    return response;\n  };\n\n  var response;\n\n  if (channels.length > 1 || channelGroups.length > 0 || channelGroups.length === 0 && channels.length === 0) {\n    response = prepareMultipleChannel();\n  } else {\n    response = prepareSingularChannel();\n  }\n\n  return response;\n}\n\nfunction handleError(modules, params, status) {\n  if (status.statusCode === 402 && !this.getURL(modules, params).includes('channel')) {\n    status.errorData.message = 'You have tried to perform a Global Here Now operation, your keyset configuration does not support that. Please provide a channel, or enable the Global Here Now feature from the Portal.';\n  }\n}"},{"id":64,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/add_message_action.js","name":"./src/core/endpoints/actions/add_message_action.js","index":59,"index2":57,"size":2319,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/actions/add_message_action","loc":"66:61-110"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.usePost = usePost;\nexports.postURL = postURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.getRequestHeaders = getRequestHeaders;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.postPayload = postPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNAddMessageActionOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var action = incomingParams.action,\n      channel = incomingParams.channel,\n      messageTimetoken = incomingParams.messageTimetoken;\n  if (!messageTimetoken) return 'Missing message timetoken';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n  if (!channel) return 'Missing message channel';\n  if (!action) return 'Missing Action';\n  if (!action.value) return 'Missing Action.value';\n  if (!action.type) return 'Missing Action.type';\n  if (action.type.length > 15) return 'Action.type value exceed maximum length of 15';\n}\n\nfunction usePost() {\n  return true;\n}\n\nfunction postURL(_ref2, incomingParams) {\n  var config = _ref2.config;\n  var channel = incomingParams.channel,\n      messageTimetoken = incomingParams.messageTimetoken;\n  return \"/v1/message-actions/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(channel), \"/message/\").concat(messageTimetoken);\n}\n\nfunction getRequestTimeout(_ref3) {\n  var config = _ref3.config;\n  return config.getTransactionTimeout();\n}\n\nfunction getRequestHeaders() {\n  return {\n    'Content-Type': 'application/json'\n  };\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction postPayload(modules, incomingParams) {\n  return incomingParams.action;\n}\n\nfunction handleResponse(modules, addMessageActionResponse) {\n  return {\n    data: addMessageActionResponse.data\n  };\n}"},{"id":65,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/remove_message_action.js","name":"./src/core/endpoints/actions/remove_message_action.js","index":60,"index2":58,"size":2017,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/actions/remove_message_action","loc":"68:64-116"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.useDelete = useDelete;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNRemoveMessageActionOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var channel = incomingParams.channel,\n      actionTimetoken = incomingParams.actionTimetoken,\n      messageTimetoken = incomingParams.messageTimetoken;\n  if (!messageTimetoken) return 'Missing message timetoken';\n  if (!actionTimetoken) return 'Missing action timetoken';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n  if (!channel) return 'Missing message channel';\n}\n\nfunction useDelete() {\n  return true;\n}\n\nfunction getURL(_ref2, incomingParams) {\n  var config = _ref2.config;\n  var channel = incomingParams.channel,\n      actionTimetoken = incomingParams.actionTimetoken,\n      messageTimetoken = incomingParams.messageTimetoken;\n  return \"/v1/message-actions/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(channel), \"/message/\").concat(messageTimetoken, \"/action/\").concat(actionTimetoken);\n}\n\nfunction getRequestTimeout(_ref3) {\n  var config = _ref3.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse(modules, removeMessageActionResponse) {\n  return {\n    data: removeMessageActionResponse.data\n  };\n}"},{"id":66,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/get_message_actions.js","name":"./src/core/endpoints/actions/get_message_actions.js","index":61,"index2":59,"size":2032,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/actions/get_message_actions","loc":"70:61-111"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetMessageActionsOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var channel = incomingParams.channel;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n  if (!channel) return 'Missing message channel';\n}\n\nfunction getURL(_ref2, incomingParams) {\n  var config = _ref2.config;\n  var channel = incomingParams.channel;\n  return \"/v1/message-actions/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(channel));\n}\n\nfunction getRequestTimeout(_ref3) {\n  var config = _ref3.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var limit = incomingParams.limit,\n      start = incomingParams.start,\n      end = incomingParams.end;\n  var outgoingParams = {};\n  if (limit) outgoingParams.limit = limit;\n  if (start) outgoingParams.start = start;\n  if (end) outgoingParams.end = end;\n  return outgoingParams;\n}\n\nfunction handleResponse(modules, getMessageActionsResponse) {\n  var response = {\n    data: getMessageActionsResponse.data,\n    start: null,\n    end: null\n  };\n\n  if (response.data.length) {\n    response.end = response.data[response.data.length - 1].actionTimetoken;\n    response.start = response.data[0].actionTimetoken;\n  }\n\n  return response;\n}"},{"id":67,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/types.js","name":"./src/core/endpoints/file_upload/types.js","index":63,"index2":61,"size":13,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/types","loc":"74:46-86"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";"},{"id":68,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/list_files.js","name":"./src/core/endpoints/file_upload/list_files.js","index":64,"index2":62,"size":1728,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/list_files","loc":"76:41-86"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNListFilesOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'channel can\\'t be empty';\n    }\n  },\n  getURL: function getURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v1/files/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel), \"/files\");\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('fileUpload');\n  },\n  prepareParams: function prepareParams(_, params) {\n    var outParams = {};\n\n    if (params.limit) {\n      outParams.limit = params.limit;\n    }\n\n    if (params.next) {\n      outParams.next = params.next;\n    }\n\n    return outParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      next: response.next,\n      count: response.count\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":69,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/generate_upload_url.js","name":"./src/core/endpoints/file_upload/generate_upload_url.js","index":65,"index2":63,"size":1847,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/generate_upload_url","loc":"78:50-104"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGenerateUploadUrlOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'channel can\\'t be empty';\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.name)) {\n      return 'name can\\'t be empty';\n    }\n  },\n  usePost: function usePost() {\n    return true;\n  },\n  postURL: function postURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v1/files/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel), \"/generate-upload-url\");\n  },\n  postPayload: function postPayload(_, params) {\n    return {\n      name: params.name\n    };\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('fileUpload');\n  },\n  prepareParams: function prepareParams() {\n    return {};\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      file_upload_request: response.file_upload_request\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":70,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/publish_file.js","name":"./src/core/endpoints/file_upload/publish_file.js","index":66,"index2":64,"size":2891,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/publish_file","loc":"80:43-90"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime/helpers/typeof\"));\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nvar preparePayload = function preparePayload(_ref, payload) {\n  var crypto = _ref.crypto,\n      config = _ref.config;\n  var stringifiedPayload = JSON.stringify(payload);\n\n  if (config.cipherKey) {\n    stringifiedPayload = crypto.encrypt(stringifiedPayload);\n    stringifiedPayload = JSON.stringify(stringifiedPayload);\n  }\n\n  return stringifiedPayload || '';\n};\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNPublishFileOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return \"channel can't be empty\";\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.fileId)) {\n      return \"file id can't be empty\";\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.fileName)) {\n      return \"file name can't be empty\";\n    }\n  },\n  getURL: function getURL(modules, params) {\n    var _modules$config = modules.config,\n        publishKey = _modules$config.publishKey,\n        subscribeKey = _modules$config.subscribeKey;\n    var message = {\n      message: params.message,\n      file: {\n        name: params.fileName,\n        id: params.fileId\n      }\n    };\n    var payload = preparePayload(modules, message);\n    return \"/v1/files/publish-file/\".concat(publishKey, \"/\").concat(subscribeKey, \"/0/\").concat(_utils[\"default\"].encodeString(params.channel), \"/0/\").concat(_utils[\"default\"].encodeString(payload));\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('fileUpload');\n  },\n  prepareParams: function prepareParams(_, params) {\n    var outParams = {};\n\n    if (params.ttl) {\n      outParams.ttl = params.ttl;\n    }\n\n    if (params.storeInHistory !== undefined) {\n      outParams.store = params.storeInHistory ? '1' : '0';\n    }\n\n    if (params.meta && (0, _typeof2[\"default\"])(params.meta) === 'object') {\n      outParams.meta = JSON.stringify(params.meta);\n    }\n\n    return outParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      timetoken: response['2']\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":71,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/send_file.js","name":"./src/core/endpoints/file_upload/send_file.js","index":67,"index2":68,"size":9714,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/send_file","loc":"82:40-84"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime/helpers/asyncToGenerator\"));\n\nvar _endpoint = require(\"../../components/endpoint\");\n\nvar getErrorFromResponse = function getErrorFromResponse(response) {\n  return new Promise(function (resolve) {\n    var result = '';\n    response.on('data', function (data) {\n      result += data.toString('utf8');\n    });\n    response.on('end', function () {\n      resolve(result);\n    });\n  });\n};\n\nvar sendFile = function sendFile(_ref) {\n  var generateUploadUrl = _ref.generateUploadUrl,\n      publishFile = _ref.publishFile,\n      _ref$modules = _ref.modules,\n      PubNubFile = _ref$modules.PubNubFile,\n      config = _ref$modules.config,\n      cryptography = _ref$modules.cryptography,\n      networking = _ref$modules.networking;\n  return function () {\n    var _ref3 = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee(_ref2) {\n      var channel, input, message, cipherKey, meta, ttl, storeInHistory, file, _yield$generateUpload, _yield$generateUpload2, url, formFields, _yield$generateUpload3, id, name, formFieldsWithMimeType, result, errorBody, reason, retries, wasSuccessful, publishResult;\n\n      return _regenerator[\"default\"].wrap(function _callee$(_context) {\n        while (1) {\n          switch (_context.prev = _context.next) {\n            case 0:\n              channel = _ref2.channel, input = _ref2.file, message = _ref2.message, cipherKey = _ref2.cipherKey, meta = _ref2.meta, ttl = _ref2.ttl, storeInHistory = _ref2.storeInHistory;\n\n              if (channel) {\n                _context.next = 3;\n                break;\n              }\n\n              throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)(\"channel can't be empty\"));\n\n            case 3:\n              if (input) {\n                _context.next = 5;\n                break;\n              }\n\n              throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)(\"file can't be empty\"));\n\n            case 5:\n              file = PubNubFile.create(input);\n              _context.next = 8;\n              return generateUploadUrl({\n                channel: channel,\n                name: file.name\n              });\n\n            case 8:\n              _yield$generateUpload = _context.sent;\n              _yield$generateUpload2 = _yield$generateUpload.file_upload_request;\n              url = _yield$generateUpload2.url;\n              formFields = _yield$generateUpload2.form_fields;\n              _yield$generateUpload3 = _yield$generateUpload.data;\n              id = _yield$generateUpload3.id;\n              name = _yield$generateUpload3.name;\n\n              if (!(PubNubFile.supportsEncryptFile && (cipherKey !== null && cipherKey !== void 0 ? cipherKey : config.cipherKey))) {\n                _context.next = 19;\n                break;\n              }\n\n              _context.next = 18;\n              return cryptography.encryptFile(cipherKey !== null && cipherKey !== void 0 ? cipherKey : config.cipherKey, file, PubNubFile);\n\n            case 18:\n              file = _context.sent;\n\n            case 19:\n              formFieldsWithMimeType = formFields;\n\n              if (file.mimeType) {\n                formFieldsWithMimeType = formFields.map(function (entry) {\n                  if (entry.key === 'Content-Type') return {\n                    key: entry.key,\n                    value: file.mimeType\n                  };else return entry;\n                });\n              }\n\n              _context.prev = 21;\n\n              if (!(PubNubFile.supportsFileUri && input.uri)) {\n                _context.next = 34;\n                break;\n              }\n\n              _context.t0 = networking;\n              _context.t1 = url;\n              _context.t2 = formFieldsWithMimeType;\n              _context.next = 28;\n              return file.toFileUri();\n\n            case 28:\n              _context.t3 = _context.sent;\n              _context.next = 31;\n              return _context.t0.POSTFILE.call(_context.t0, _context.t1, _context.t2, _context.t3);\n\n            case 31:\n              result = _context.sent;\n              _context.next = 71;\n              break;\n\n            case 34:\n              if (!PubNubFile.supportsFile) {\n                _context.next = 46;\n                break;\n              }\n\n              _context.t4 = networking;\n              _context.t5 = url;\n              _context.t6 = formFieldsWithMimeType;\n              _context.next = 40;\n              return file.toFile();\n\n            case 40:\n              _context.t7 = _context.sent;\n              _context.next = 43;\n              return _context.t4.POSTFILE.call(_context.t4, _context.t5, _context.t6, _context.t7);\n\n            case 43:\n              result = _context.sent;\n              _context.next = 71;\n              break;\n\n            case 46:\n              if (!PubNubFile.supportsBuffer) {\n                _context.next = 58;\n                break;\n              }\n\n              _context.t8 = networking;\n              _context.t9 = url;\n              _context.t10 = formFieldsWithMimeType;\n              _context.next = 52;\n              return file.toBuffer();\n\n            case 52:\n              _context.t11 = _context.sent;\n              _context.next = 55;\n              return _context.t8.POSTFILE.call(_context.t8, _context.t9, _context.t10, _context.t11);\n\n            case 55:\n              result = _context.sent;\n              _context.next = 71;\n              break;\n\n            case 58:\n              if (!PubNubFile.supportsBlob) {\n                _context.next = 70;\n                break;\n              }\n\n              _context.t12 = networking;\n              _context.t13 = url;\n              _context.t14 = formFieldsWithMimeType;\n              _context.next = 64;\n              return file.toBlob();\n\n            case 64:\n              _context.t15 = _context.sent;\n              _context.next = 67;\n              return _context.t12.POSTFILE.call(_context.t12, _context.t13, _context.t14, _context.t15);\n\n            case 67:\n              result = _context.sent;\n              _context.next = 71;\n              break;\n\n            case 70:\n              throw new Error('Unsupported environment');\n\n            case 71:\n              _context.next = 80;\n              break;\n\n            case 73:\n              _context.prev = 73;\n              _context.t16 = _context[\"catch\"](21);\n              _context.next = 77;\n              return getErrorFromResponse(_context.t16.response);\n\n            case 77:\n              errorBody = _context.sent;\n              reason = /<Message>(.*)<\\/Message>/gi.exec(errorBody);\n              throw new _endpoint.PubNubError(reason ? \"Upload to bucket failed: \".concat(reason[1]) : 'Upload to bucket failed.', _context.t16);\n\n            case 80:\n              if (!(result.status !== 204)) {\n                _context.next = 82;\n                break;\n              }\n\n              throw new _endpoint.PubNubError('Upload to bucket was unsuccessful', result);\n\n            case 82:\n              retries = 5;\n              wasSuccessful = false;\n              publishResult = {\n                timetoken: '0'\n              };\n\n            case 85:\n              if (!(!wasSuccessful && retries > 0)) {\n                _context.next = 98;\n                break;\n              }\n\n              _context.prev = 86;\n              _context.next = 89;\n              return publishFile({\n                channel: channel,\n                message: message,\n                fileId: id,\n                fileName: name,\n                meta: meta,\n                storeInHistory: storeInHistory,\n                ttl: ttl\n              });\n\n            case 89:\n              publishResult = _context.sent;\n              wasSuccessful = true;\n              _context.next = 96;\n              break;\n\n            case 93:\n              _context.prev = 93;\n              _context.t17 = _context[\"catch\"](86);\n              retries -= 1;\n\n            case 96:\n              _context.next = 85;\n              break;\n\n            case 98:\n              if (wasSuccessful) {\n                _context.next = 102;\n                break;\n              }\n\n              throw new _endpoint.PubNubError('Publish failed. You may want to execute that operation manually using pubnub.publishFile', {\n                channel: channel,\n                id: id,\n                name: name\n              });\n\n            case 102:\n              return _context.abrupt(\"return\", {\n                timetoken: publishResult.timetoken,\n                id: id,\n                name: name\n              });\n\n            case 103:\n            case \"end\":\n              return _context.stop();\n          }\n        }\n      }, _callee, null, [[21, 73], [86, 93]]);\n    }));\n\n    return function (_x) {\n      return _ref3.apply(this, arguments);\n    };\n  }();\n};\n\nvar _default = function _default(deps) {\n  var f = sendFile(deps);\n  return function (params, cb) {\n    var resultP = f(params);\n\n    if (typeof cb === 'function') {\n      resultP.then(function (result) {\n        return cb(null, result);\n      })[\"catch\"](function (error) {\n        return cb(error, null);\n      });\n      return resultP;\n    } else {\n      return resultP;\n    }\n  };\n};\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":73,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/get_file_url.js","name":"./src/core/endpoints/file_upload/get_file_url.js","index":71,"index2":69,"size":1919,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/get_file_url","loc":"84:43-90"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _endpoint = require(\"../../components/endpoint\");\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nvar _default = function _default(modules, _ref) {\n  var channel = _ref.channel,\n      id = _ref.id,\n      name = _ref.name;\n  var config = modules.config;\n\n  if (!channel) {\n    throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)(\"channel can't be empty\"));\n  }\n\n  if (!id) {\n    throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)(\"file id can't be empty\"));\n  }\n\n  if (!name) {\n    throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)(\"file name can't be empty\"));\n  }\n\n  var url = \"/v1/files/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(channel), \"/files/\").concat(id, \"/\").concat(name);\n  var params = {};\n  params.uuid = config.getUUID();\n  params.pnsdk = (0, _endpoint.generatePNSDK)(config);\n\n  if (config.getAuthKey()) {\n    params.auth = config.getAuthKey();\n  }\n\n  if (config.secretKey) {\n    (0, _endpoint.signRequest)(modules, url, params, {}, {\n      getOperation: function getOperation() {\n        return 'PubNubGetFileUrlOperation';\n      }\n    });\n  }\n\n  var queryParams = Object.keys(params).map(function (key) {\n    return \"\".concat(encodeURIComponent(key), \"=\").concat(encodeURIComponent(params[key]));\n  }).join('&');\n\n  if (queryParams !== '') {\n    return \"https://\".concat(config.origin).concat(url, \"?\").concat(queryParams);\n  }\n\n  return \"https://\".concat(config.origin).concat(url);\n};\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":74,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/download_file.js","name":"./src/core/endpoints/file_upload/download_file.js","index":72,"index2":70,"size":3439,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/download_file","loc":"86:44-92"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime/helpers/asyncToGenerator\"));\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNDownloadFileOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return \"channel can't be empty\";\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.name)) {\n      return \"name can't be empty\";\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.id)) {\n      return \"id can't be empty\";\n    }\n  },\n  useGetFile: function useGetFile() {\n    return true;\n  },\n  getFileURL: function getFileURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v1/files/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel), \"/files/\").concat(params.id, \"/\").concat(params.name);\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  ignoreBody: function ignoreBody() {\n    return true;\n  },\n  forceBuffered: function forceBuffered() {\n    return true;\n  },\n  prepareParams: function prepareParams() {\n    return {};\n  },\n  handleResponse: function () {\n    var _handleResponse = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee(_ref3, res, params) {\n      var _res$response$name;\n\n      var PubNubFile, config, cryptography, body, _params$cipherKey;\n\n      return _regenerator[\"default\"].wrap(function _callee$(_context) {\n        while (1) {\n          switch (_context.prev = _context.next) {\n            case 0:\n              PubNubFile = _ref3.PubNubFile, config = _ref3.config, cryptography = _ref3.cryptography;\n              body = res.response.body;\n\n              if (!(PubNubFile.supportsEncryptFile && config.cipherKey)) {\n                _context.next = 6;\n                break;\n              }\n\n              _context.next = 5;\n              return cryptography.decrypt((_params$cipherKey = params.cipherKey) !== null && _params$cipherKey !== void 0 ? _params$cipherKey : config.cipherKey, body);\n\n            case 5:\n              body = _context.sent;\n\n            case 6:\n              return _context.abrupt(\"return\", PubNubFile.create({\n                data: body,\n                name: (_res$response$name = res.response.name) !== null && _res$response$name !== void 0 ? _res$response$name : params.name,\n                mimeType: res.response.type\n              }));\n\n            case 7:\n            case \"end\":\n              return _context.stop();\n          }\n        }\n      }, _callee);\n    }));\n\n    function handleResponse(_x, _x2, _x3) {\n      return _handleResponse.apply(this, arguments);\n    }\n\n    return handleResponse;\n  }()\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":75,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/delete_file.js","name":"./src/core/endpoints/file_upload/delete_file.js","index":73,"index2":71,"size":1810,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/delete_file","loc":"88:42-88"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNListFilesOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return \"channel can't be empty\";\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.id)) {\n      return \"file id can't be empty\";\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.name)) {\n      return \"file name can't be empty\";\n    }\n  },\n  useDelete: function useDelete() {\n    return true;\n  },\n  getURL: function getURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v1/files/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel), \"/files/\").concat(params.id, \"/\").concat(params.name);\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('fileUpload');\n  },\n  prepareParams: function prepareParams() {\n    return {};\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":76,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/get_all.js","name":"./src/core/endpoints/objects/uuid/get_all.js","index":74,"index2":78,"size":3572,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/uuid/get_all","loc":"90:38-81"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGetAllUUIDMetadataOperation;\n  },\n  validateParams: function validateParams() {},\n  getURL: function getURL(_ref) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/uuids\");\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('user');\n  },\n  prepareParams: function prepareParams(_modules, params) {\n    var _params$include, _params$include2, _params$page, _params$page3, _params$limit;\n\n    var queryParams = {};\n\n    if (params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) {\n      queryParams.include = 'custom';\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.totalCount) {\n      var _params$include3;\n\n      queryParams.count = (_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.totalCount;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) {\n      var _params$page2;\n\n      queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) {\n      var _params$page4;\n\n      queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.filter) {\n      queryParams.filter = params.filter;\n    }\n\n    queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100;\n\n    if (params === null || params === void 0 ? void 0 : params.sort) {\n      var _params$sort;\n\n      queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) {\n        var _ref5 = (0, _slicedToArray2[\"default\"])(_ref4, 2),\n            key = _ref5[0],\n            value = _ref5[1];\n\n        if (value === 'asc' || value === 'desc') {\n          return \"\".concat(key, \":\").concat(value);\n        } else {\n          return key;\n        }\n      });\n    }\n\n    return queryParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      totalCount: response.totalCount,\n      next: response.next,\n      prev: response.prev\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":82,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/get.js","name":"./src/core/endpoints/objects/uuid/get.js","index":81,"index2":79,"size":2080,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/uuid/get","loc":"92:34-73"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGetUUIDMetadataOperation;\n  },\n  validateParams: function validateParams() {},\n  getURL: function getURL(_ref, params) {\n    var _params$uuid;\n\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/uuids/\").concat(_utils[\"default\"].encodeString((_params$uuid = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid !== void 0 ? _params$uuid : config.getUUID()));\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('user');\n  },\n  prepareParams: function prepareParams(_ref4, params) {\n    var _params$uuid2, _params$include$custo, _params$include;\n\n    var config = _ref4.config;\n    return {\n      uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID(),\n      include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom'\n    };\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":83,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/set.js","name":"./src/core/endpoints/objects/uuid/set.js","index":82,"index2":80,"size":2301,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/uuid/set","loc":"94:34-73"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNSetUUIDMetadataOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.data)) {\n      return 'Data cannot be empty';\n    }\n  },\n  usePatch: function usePatch() {\n    return true;\n  },\n  patchURL: function patchURL(_ref, params) {\n    var _params$uuid;\n\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/uuids/\").concat(_utils[\"default\"].encodeString((_params$uuid = params.uuid) !== null && _params$uuid !== void 0 ? _params$uuid : config.getUUID()));\n  },\n  patchPayload: function patchPayload(_, params) {\n    return params.data;\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('user');\n  },\n  prepareParams: function prepareParams(_ref4, params) {\n    var _params$uuid2, _params$include$custo, _params$include;\n\n    var config = _ref4.config;\n    return {\n      uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID(),\n      include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom'\n    };\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":84,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/remove.js","name":"./src/core/endpoints/objects/uuid/remove.js","index":83,"index2":81,"size":1807,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/uuid/remove","loc":"96:37-79"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNRemoveUUIDMetadataOperation;\n  },\n  validateParams: function validateParams() {},\n  getURL: function getURL(_ref, params) {\n    var _params$uuid;\n\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/uuids/\").concat(_utils[\"default\"].encodeString((_params$uuid = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid !== void 0 ? _params$uuid : config.getUUID()));\n  },\n  useDelete: function useDelete() {\n    return true;\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('user');\n  },\n  prepareParams: function prepareParams(_ref4, params) {\n    var _params$uuid2;\n\n    var config = _ref4.config;\n    return {\n      uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID()\n    };\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":85,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/get_all.js","name":"./src/core/endpoints/objects/channel/get_all.js","index":84,"index2":82,"size":3581,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/channel/get_all","loc":"98:39-85"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGetAllChannelMetadataOperation;\n  },\n  validateParams: function validateParams() {},\n  getURL: function getURL(_ref) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/channels\");\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('channel');\n  },\n  prepareParams: function prepareParams(_modules, params) {\n    var _params$include, _params$include2, _params$page, _params$page3, _params$limit;\n\n    var queryParams = {};\n\n    if (params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) {\n      queryParams.include = 'custom';\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.totalCount) {\n      var _params$include3;\n\n      queryParams.count = (_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.totalCount;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) {\n      var _params$page2;\n\n      queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) {\n      var _params$page4;\n\n      queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.filter) {\n      queryParams.filter = params.filter;\n    }\n\n    queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100;\n\n    if (params === null || params === void 0 ? void 0 : params.sort) {\n      var _params$sort;\n\n      queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) {\n        var _ref5 = (0, _slicedToArray2[\"default\"])(_ref4, 2),\n            key = _ref5[0],\n            value = _ref5[1];\n\n        if (value === 'asc' || value === 'desc') {\n          return \"\".concat(key, \":\").concat(value);\n        } else {\n          return key;\n        }\n      });\n    }\n\n    return queryParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      totalCount: response.totalCount,\n      prev: response.prev,\n      next: response.next\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":86,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/get.js","name":"./src/core/endpoints/objects/channel/get.js","index":85,"index2":83,"size":1856,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/channel/get","loc":"100:35-77"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGetChannelMetadataOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'Channel cannot be empty';\n    }\n  },\n  getURL: function getURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel));\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('channel');\n  },\n  prepareParams: function prepareParams(_, params) {\n    var _params$include$custo, _params$include;\n\n    return {\n      include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom'\n    };\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":87,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/set.js","name":"./src/core/endpoints/objects/channel/set.js","index":86,"index2":84,"size":2114,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/channel/set","loc":"102:35-77"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNSetChannelMetadataOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'Channel cannot be empty';\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.data)) {\n      return 'Data cannot be empty';\n    }\n  },\n  usePatch: function usePatch() {\n    return true;\n  },\n  patchURL: function patchURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel));\n  },\n  patchPayload: function patchPayload(_, params) {\n    return params.data;\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('channel');\n  },\n  prepareParams: function prepareParams(_, params) {\n    var _params$include$custo, _params$include;\n\n    return {\n      include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom'\n    };\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":88,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/remove.js","name":"./src/core/endpoints/objects/channel/remove.js","index":87,"index2":85,"size":1561,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/channel/remove","loc":"104:38-83"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNRemoveChannelMetadataOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'Channel cannot be empty';\n    }\n  },\n  getURL: function getURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel));\n  },\n  useDelete: function useDelete() {\n    return true;\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('channel');\n  },\n  prepareParams: function prepareParams() {\n    return {};\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":89,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/member/get.js","name":"./src/core/endpoints/objects/member/get.js","index":88,"index2":86,"size":4518,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/member/get","loc":"106:35-76"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGetMembersOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'UUID cannot be empty';\n    }\n  },\n  getURL: function getURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel), \"/uuids\");\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('member');\n  },\n  prepareParams: function prepareParams(_modules, params) {\n    var _params$include4, _params$page, _params$page3, _params$limit;\n\n    var queryParams = {};\n\n    if (params === null || params === void 0 ? void 0 : params.include) {\n      var _params$include, _params$include2, _params$include$UUIDF, _params$include3;\n\n      queryParams.include = [];\n\n      if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) {\n        queryParams.include.push('custom');\n      }\n\n      if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customUUIDFields) {\n        queryParams.include.push('uuid.custom');\n      }\n\n      if ((_params$include$UUIDF = (_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.UUIDFields) !== null && _params$include$UUIDF !== void 0 ? _params$include$UUIDF : true) {\n        queryParams.include.push('uuid');\n      }\n\n      queryParams.include = queryParams.include.join(',');\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) {\n      var _params$include5;\n\n      queryParams.count = (_params$include5 = params.include) === null || _params$include5 === void 0 ? void 0 : _params$include5.totalCount;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) {\n      var _params$page2;\n\n      queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) {\n      var _params$page4;\n\n      queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.filter) {\n      queryParams.filter = params.filter;\n    }\n\n    queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100;\n\n    if (params === null || params === void 0 ? void 0 : params.sort) {\n      var _params$sort;\n\n      queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) {\n        var _ref5 = (0, _slicedToArray2[\"default\"])(_ref4, 2),\n            key = _ref5[0],\n            value = _ref5[1];\n\n        if (value === 'asc' || value === 'desc') {\n          return \"\".concat(key, \":\").concat(value);\n        } else {\n          return key;\n        }\n      });\n    }\n\n    return queryParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      totalCount: response.totalCount,\n      prev: response.prev,\n      next: response.next\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":90,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/member/set.js","name":"./src/core/endpoints/objects/member/set.js","index":89,"index2":87,"size":5005,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/member/set","loc":"108:35-76"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNSetMembersOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'Channel cannot be empty';\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.uuids) || (params === null || params === void 0 ? void 0 : params.uuids.length) === 0) {\n      return 'UUIDs cannot be empty';\n    }\n  },\n  usePatch: function usePatch() {\n    return true;\n  },\n  patchURL: function patchURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel), \"/uuids\");\n  },\n  patchPayload: function patchPayload(_, params) {\n    return (0, _defineProperty2[\"default\"])({\n      set: [],\n      remove: []\n    }, params.type, params.uuids.map(function (uuid) {\n      if (typeof uuid === 'string') {\n        return {\n          uuid: {\n            id: uuid\n          }\n        };\n      } else {\n        return {\n          uuid: {\n            id: uuid.id\n          },\n          custom: uuid.custom\n        };\n      }\n    }));\n  },\n  getRequestTimeout: function getRequestTimeout(_ref3) {\n    var config = _ref3.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref4) {\n    var tokenManager = _ref4.tokenManager;\n    return tokenManager.getToken('member');\n  },\n  prepareParams: function prepareParams(_modules, params) {\n    var _params$include4, _params$page, _params$page3;\n\n    var queryParams = {};\n\n    if (params === null || params === void 0 ? void 0 : params.include) {\n      var _params$include, _params$include2, _params$include3;\n\n      queryParams.include = [];\n\n      if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) {\n        queryParams.include.push('custom');\n      }\n\n      if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customUUIDFields) {\n        queryParams.include.push('uuid.custom');\n      }\n\n      if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.UUIDFields) {\n        queryParams.include.push('uuid');\n      }\n\n      queryParams.include = queryParams.include.join(',');\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) {\n      queryParams.count = true;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) {\n      var _params$page2;\n\n      queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) {\n      var _params$page4;\n\n      queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.filter) {\n      queryParams.filter = params.filter;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.limit) {\n      queryParams.limit = params.limit;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.sort) {\n      var _params$sort;\n\n      queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref5) {\n        var _ref6 = (0, _slicedToArray2[\"default\"])(_ref5, 2),\n            key = _ref6[0],\n            value = _ref6[1];\n\n        if (value === 'asc' || value === 'desc') {\n          return \"\".concat(key, \":\").concat(value);\n        } else {\n          return key;\n        }\n      });\n    }\n\n    return queryParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      totalCount: response.totalCount,\n      prev: response.prev,\n      next: response.next\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":91,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/membership/get.js","name":"./src/core/endpoints/objects/membership/get.js","index":90,"index2":88,"size":4436,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/membership/get","loc":"110:35-80"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGetMembershipsOperation;\n  },\n  validateParams: function validateParams() {},\n  getURL: function getURL(_ref, params) {\n    var _params$uuid;\n\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/uuids/\").concat(_utils[\"default\"].encodeString((_params$uuid = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid !== void 0 ? _params$uuid : config.getUUID()), \"/channels\");\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('membership');\n  },\n  prepareParams: function prepareParams(_modules, params) {\n    var _params$include4, _params$page, _params$page3, _params$limit;\n\n    var queryParams = {};\n\n    if (params === null || params === void 0 ? void 0 : params.include) {\n      var _params$include, _params$include2, _params$include3;\n\n      queryParams.include = [];\n\n      if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) {\n        queryParams.include.push('custom');\n      }\n\n      if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customChannelFields) {\n        queryParams.include.push('channel.custom');\n      }\n\n      if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.channelFields) {\n        queryParams.include.push('channel');\n      }\n\n      queryParams.include = queryParams.include.join(',');\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) {\n      var _params$include5;\n\n      queryParams.count = (_params$include5 = params.include) === null || _params$include5 === void 0 ? void 0 : _params$include5.totalCount;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) {\n      var _params$page2;\n\n      queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) {\n      var _params$page4;\n\n      queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.filter) {\n      queryParams.filter = params.filter;\n    }\n\n    queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100;\n\n    if (params === null || params === void 0 ? void 0 : params.sort) {\n      var _params$sort;\n\n      queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) {\n        var _ref5 = (0, _slicedToArray2[\"default\"])(_ref4, 2),\n            key = _ref5[0],\n            value = _ref5[1];\n\n        if (value === 'asc' || value === 'desc') {\n          return \"\".concat(key, \":\").concat(value);\n        } else {\n          return key;\n        }\n      });\n    }\n\n    return queryParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      totalCount: response.totalCount,\n      prev: response.prev,\n      next: response.next\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":92,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/membership/set.js","name":"./src/core/endpoints/objects/membership/set.js","index":91,"index2":89,"size":5041,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/membership/set","loc":"112:35-80"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNSetMembershipsOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channels) || (params === null || params === void 0 ? void 0 : params.channels.length) === 0) {\n      return 'Channels cannot be empty';\n    }\n  },\n  usePatch: function usePatch() {\n    return true;\n  },\n  patchURL: function patchURL(_ref, params) {\n    var _params$uuid;\n\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/uuids/\").concat(_utils[\"default\"].encodeString((_params$uuid = params.uuid) !== null && _params$uuid !== void 0 ? _params$uuid : config.getUUID()), \"/channels\");\n  },\n  patchPayload: function patchPayload(_, params) {\n    return (0, _defineProperty2[\"default\"])({\n      set: [],\n      remove: []\n    }, params.type, params.channels.map(function (channel) {\n      if (typeof channel === 'string') {\n        return {\n          channel: {\n            id: channel\n          }\n        };\n      } else {\n        return {\n          channel: {\n            id: channel.id\n          },\n          custom: channel.custom\n        };\n      }\n    }));\n  },\n  getRequestTimeout: function getRequestTimeout(_ref3) {\n    var config = _ref3.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref4) {\n    var tokenManager = _ref4.tokenManager;\n    return tokenManager.getToken('membership');\n  },\n  prepareParams: function prepareParams(_modules, params) {\n    var _params$include4, _params$page, _params$page3;\n\n    var queryParams = {};\n\n    if (params === null || params === void 0 ? void 0 : params.include) {\n      var _params$include, _params$include2, _params$include3;\n\n      queryParams.include = [];\n\n      if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) {\n        queryParams.include.push('custom');\n      }\n\n      if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customChannelFields) {\n        queryParams.include.push('channel.custom');\n      }\n\n      if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.channelFields) {\n        queryParams.include.push('channel');\n      }\n\n      queryParams.include = queryParams.include.join(',');\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) {\n      queryParams.count = true;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) {\n      var _params$page2;\n\n      queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) {\n      var _params$page4;\n\n      queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.filter) {\n      queryParams.filter = params.filter;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.limit) {\n      queryParams.limit = params.limit;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.sort) {\n      var _params$sort;\n\n      queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref5) {\n        var _ref6 = (0, _slicedToArray2[\"default\"])(_ref5, 2),\n            key = _ref6[0],\n            value = _ref6[1];\n\n        if (value === 'asc' || value === 'desc') {\n          return \"\".concat(key, \":\").concat(value);\n        } else {\n          return key;\n        }\n      });\n    }\n\n    return queryParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      totalCount: response.totalCount,\n      prev: response.prev,\n      next: response.next\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":93,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/create_user.js","name":"./src/core/endpoints/users/create_user.js","index":92,"index2":90,"size":2814,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/users/create_user","loc":"114:55-95"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.usePost = usePost;\nexports.getURL = getURL;\nexports.postURL = postURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.postPayload = postPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  return incomingParams;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNCreateUserOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var id = incomingParams.id,\n      name = incomingParams.name,\n      custom = incomingParams.custom;\n  if (!id) return 'Missing User.id';\n  if (!name) return 'Missing User.name';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n  if (custom) {\n    if (!Object.values(custom).every(function (value) {\n      return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';\n    })) {\n      return 'Invalid custom type, only string, number and boolean values are allowed.';\n    }\n  }\n}\n\nfunction usePost() {\n  return true;\n}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users\");\n}\n\nfunction postURL(modules) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users\");\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.id) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include;\n  var params = {};\n\n  if (!include) {\n    include = {\n      customFields: true\n    };\n  } else if (include.customFields === undefined) {\n    include.customFields = true;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  return params;\n}\n\nfunction postPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, usersResponse) {\n  return usersResponse;\n}"},{"id":94,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/update_user.js","name":"./src/core/endpoints/users/update_user.js","index":93,"index2":91,"size":3065,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/users/update_user","loc":"116:55-95"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.usePatch = usePatch;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  return incomingParams;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateUserOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var id = incomingParams.id,\n      name = incomingParams.name,\n      custom = incomingParams.custom;\n  if (!id) return 'Missing User.id';\n  if (!name) return 'Missing User.name';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n  if (custom) {\n    if (!Object.values(custom).every(function (value) {\n      return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';\n    })) {\n      return 'Invalid custom type, only string, number and boolean values are allowed.';\n    }\n  }\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var id = incomingParams.id;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(id));\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  var id = incomingParams.id;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(id));\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.id) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include;\n  var params = {};\n\n  if (!include) {\n    include = {\n      customFields: true\n    };\n  } else if (include.customFields === undefined) {\n    include.customFields = true;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, usersResponse) {\n  return usersResponse;\n}"},{"id":95,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/delete_user.js","name":"./src/core/endpoints/users/delete_user.js","index":94,"index2":92,"size":1623,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/users/delete_user","loc":"118:55-95"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.useDelete = useDelete;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNDeleteUserOperation;\n}\n\nfunction validateParams(_ref, userId) {\n  var config = _ref.config;\n  if (!userId) return 'Missing UserId';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction useDelete() {\n  return true;\n}\n\nfunction getURL(modules, userId) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(userId));\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, userId) {\n  var token = modules.tokenManager.getToken('user', userId) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse(modules, usersResponse) {\n  return usersResponse;\n}"},{"id":96,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_user.js","name":"./src/core/endpoints/users/get_user.js","index":95,"index2":93,"size":2039,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/users/get_user","loc":"120:52-89"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetUserOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var userId = incomingParams.userId;\n  if (!userId) return 'Missing userId';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include;\n  var params = {};\n\n  if (!include) {\n    include = {\n      customFields: true\n    };\n  } else if (include.customFields === undefined) {\n    include.customFields = true;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, usersResponse) {\n  return usersResponse;\n}"},{"id":97,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_users.js","name":"./src/core/endpoints/users/get_users.js","index":96,"index2":94,"size":1965,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/users/get_users","loc":"122:53-91"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetUsersOperation;\n}\n\nfunction validateParams() {}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules) {\n  var token = modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page,\n      filter = incomingParams.filter;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  if (filter) {\n    params.filter = filter;\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, usersResponse) {\n  return usersResponse;\n}"},{"id":98,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/create_space.js","name":"./src/core/endpoints/spaces/create_space.js","index":97,"index2":95,"size":2823,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/spaces/create_space","loc":"124:56-98"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.usePost = usePost;\nexports.getURL = getURL;\nexports.postURL = postURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.postPayload = postPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  return incomingParams;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNCreateSpaceOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var id = incomingParams.id,\n      name = incomingParams.name,\n      custom = incomingParams.custom;\n  if (!id) return 'Missing Space.id';\n  if (!name) return 'Missing Space.name';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n  if (custom) {\n    if (!Object.values(custom).every(function (value) {\n      return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';\n    })) {\n      return 'Invalid custom type, only string, number and boolean values are allowed.';\n    }\n  }\n}\n\nfunction usePost() {\n  return true;\n}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces\");\n}\n\nfunction postURL(modules) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces\");\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.id) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include;\n  var params = {};\n\n  if (!include) {\n    include = {\n      customFields: true\n    };\n  } else if (include.customFields === undefined) {\n    include.customFields = true;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  return params;\n}\n\nfunction postPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, spacesResponse) {\n  return spacesResponse;\n}"},{"id":99,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/update_space.js","name":"./src/core/endpoints/spaces/update_space.js","index":98,"index2":96,"size":3074,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/spaces/update_space","loc":"126:56-98"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.usePatch = usePatch;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  return incomingParams;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateSpaceOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var id = incomingParams.id,\n      name = incomingParams.name,\n      custom = incomingParams.custom;\n  if (!id) return 'Missing Space.id';\n  if (!name) return 'Missing Space.name';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n  if (custom) {\n    if (!Object.values(custom).every(function (value) {\n      return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';\n    })) {\n      return 'Invalid custom type, only string, number and boolean values are allowed.';\n    }\n  }\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var id = incomingParams.id;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(id));\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  var id = incomingParams.id;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(id));\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.id) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include;\n  var params = {};\n\n  if (!include) {\n    include = {\n      customFields: true\n    };\n  } else if (include.customFields === undefined) {\n    include.customFields = true;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, spacesResponse) {\n  return spacesResponse;\n}"},{"id":100,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/delete_space.js","name":"./src/core/endpoints/spaces/delete_space.js","index":99,"index2":97,"size":1636,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/spaces/delete_space","loc":"128:56-98"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.useDelete = useDelete;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNDeleteSpaceOperation;\n}\n\nfunction validateParams(_ref, spaceId) {\n  var config = _ref.config;\n  if (!spaceId) return 'Missing SpaceId';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction useDelete() {\n  return true;\n}\n\nfunction getURL(modules, spaceId) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(spaceId));\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, spaceId) {\n  var token = modules.tokenManager.getToken('space', spaceId) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse(modules, spacesResponse) {\n  return spacesResponse;\n}"},{"id":101,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_spaces.js","name":"./src/core/endpoints/spaces/get_spaces.js","index":100,"index2":98,"size":1970,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/spaces/get_spaces","loc":"130:54-94"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetSpacesOperation;\n}\n\nfunction validateParams() {}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules) {\n  var token = modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page,\n      filter = incomingParams.filter;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  if (filter) {\n    params.filter = filter;\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, spacesResponse) {\n  return spacesResponse;\n}"},{"id":102,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_space.js","name":"./src/core/endpoints/spaces/get_space.js","index":101,"index2":99,"size":2051,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/spaces/get_space","loc":"132:53-92"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetSpaceOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var spaceId = incomingParams.spaceId;\n  if (!spaceId) return 'Missing spaceId';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include;\n  var params = {};\n\n  if (!include) {\n    include = {\n      customFields: true\n    };\n  } else if (include.customFields === undefined) {\n    include.customFields = true;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, spacesResponse) {\n  return spacesResponse;\n}"},{"id":103,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_members.js","name":"./src/core/endpoints/memberships/get_members.js","index":102,"index2":100,"size":2458,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/get_members","loc":"134:55-101"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetMembersOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var spaceId = incomingParams.spaceId;\n  if (!spaceId) return 'Missing spaceId';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page,\n      filter = incomingParams.filter;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.userFields) {\n      includes.push('user');\n    }\n\n    if (include.customUserFields) {\n      includes.push('user.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  if (filter) {\n    params.filter = filter;\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, membersResponse) {\n  return membersResponse;\n}"},{"id":104,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/add_members.js","name":"./src/core/endpoints/memberships/add_members.js","index":103,"index2":101,"size":3341,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/add_members","loc":"136:55-101"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.usePatch = usePatch;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var users = incomingParams.users;\n  var payload = {};\n\n  if (users && users.length > 0) {\n    payload.add = [];\n    users.forEach(function (addMember) {\n      var currentAdd = {\n        id: addMember.id\n      };\n\n      if (addMember.custom) {\n        currentAdd.custom = addMember.custom;\n      }\n\n      payload.add.push(currentAdd);\n    });\n  }\n\n  return payload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateMembersOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var spaceId = incomingParams.spaceId,\n      users = incomingParams.users;\n  if (!spaceId) return 'Missing spaceId';\n  if (!users) return 'Missing users';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, membersResponse) {\n  return membersResponse;\n}"},{"id":105,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_members.js","name":"./src/core/endpoints/memberships/update_members.js","index":104,"index2":102,"size":4394,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/update_members","loc":"138:58-107"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.usePatch = usePatch;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var addMembers = incomingParams.addMembers,\n      updateMembers = incomingParams.updateMembers,\n      removeMembers = incomingParams.removeMembers,\n      users = incomingParams.users;\n  var payload = {};\n\n  if (addMembers && addMembers.length > 0) {\n    payload.add = [];\n    addMembers.forEach(function (addMember) {\n      var currentAdd = {\n        id: addMember.id\n      };\n\n      if (addMember.custom) {\n        currentAdd.custom = addMember.custom;\n      }\n\n      payload.add.push(currentAdd);\n    });\n  }\n\n  if (updateMembers && updateMembers.length > 0) {\n    payload.update = [];\n    updateMembers.forEach(function (updateMember) {\n      var currentUpdate = {\n        id: updateMember.id\n      };\n\n      if (updateMember.custom) {\n        currentUpdate.custom = updateMember.custom;\n      }\n\n      payload.update.push(currentUpdate);\n    });\n  }\n\n  if (users && users.length > 0) {\n    payload.update = payload.update || [];\n    users.forEach(function (updateMember) {\n      var currentUpdate = {\n        id: updateMember.id\n      };\n\n      if (updateMember.custom) {\n        currentUpdate.custom = updateMember.custom;\n      }\n\n      payload.update.push(currentUpdate);\n    });\n  }\n\n  if (removeMembers && removeMembers.length > 0) {\n    payload.remove = [];\n    removeMembers.forEach(function (removeMemberId) {\n      payload.remove.push({\n        id: removeMemberId\n      });\n    });\n  }\n\n  return payload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateMembersOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var spaceId = incomingParams.spaceId,\n      users = incomingParams.users;\n  if (!spaceId) return 'Missing spaceId';\n  if (!users) return 'Missing users';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, membersResponse) {\n  return membersResponse;\n}"},{"id":106,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/remove_members.js","name":"./src/core/endpoints/memberships/remove_members.js","index":105,"index2":103,"size":3233,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/remove_members","loc":"140:58-107"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.usePatch = usePatch;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var users = incomingParams.users;\n  var payload = {};\n\n  if (users && users.length > 0) {\n    payload.remove = [];\n    users.forEach(function (removeMemberId) {\n      payload.remove.push({\n        id: removeMemberId\n      });\n    });\n  }\n\n  return payload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateMembersOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var spaceId = incomingParams.spaceId,\n      users = incomingParams.users;\n  if (!spaceId) return 'Missing spaceId';\n  if (!users) return 'Missing users';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, membersResponse) {\n  return membersResponse;\n}"},{"id":107,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_memberships.js","name":"./src/core/endpoints/memberships/get_memberships.js","index":106,"index2":104,"size":2466,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/get_memberships","loc":"142:59-109"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetMembershipsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var userId = incomingParams.userId;\n  if (!userId) return 'Missing userId';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page,\n      filter = incomingParams.filter;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  if (filter) {\n    params.filter = filter;\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, membershipsResponse) {\n  return membershipsResponse;\n}"},{"id":108,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_memberships.js","name":"./src/core/endpoints/memberships/update_memberships.js","index":107,"index2":105,"size":4522,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/update_memberships","loc":"144:62-115"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.usePatch = usePatch;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var addMemberships = incomingParams.addMemberships,\n      updateMemberships = incomingParams.updateMemberships,\n      removeMemberships = incomingParams.removeMemberships,\n      spaces = incomingParams.spaces;\n  var payload = {};\n\n  if (addMemberships && addMemberships.length > 0) {\n    payload.add = [];\n    addMemberships.forEach(function (addMembership) {\n      var currentAdd = {\n        id: addMembership.id\n      };\n\n      if (addMembership.custom) {\n        currentAdd.custom = addMembership.custom;\n      }\n\n      payload.add.push(currentAdd);\n    });\n  }\n\n  if (updateMemberships && updateMemberships.length > 0) {\n    payload.update = [];\n    updateMemberships.forEach(function (updateMembership) {\n      var currentUpdate = {\n        id: updateMembership.id\n      };\n\n      if (updateMembership.custom) {\n        currentUpdate.custom = updateMembership.custom;\n      }\n\n      payload.update.push(currentUpdate);\n    });\n  }\n\n  if (spaces && spaces.length > 0) {\n    payload.update = payload.update || [];\n    spaces.forEach(function (updateMembership) {\n      var currentUpdate = {\n        id: updateMembership.id\n      };\n\n      if (updateMembership.custom) {\n        currentUpdate.custom = updateMembership.custom;\n      }\n\n      payload.update.push(currentUpdate);\n    });\n  }\n\n  if (removeMemberships && removeMemberships.length > 0) {\n    payload.remove = [];\n    removeMemberships.forEach(function (removeMembershipId) {\n      payload.remove.push({\n        id: removeMembershipId\n      });\n    });\n  }\n\n  return payload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateMembershipsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var userId = incomingParams.userId,\n      spaces = incomingParams.spaces;\n  if (!userId) return 'Missing userId';\n  if (!spaces) return 'Missing spaces';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, membershipsResponse) {\n  return membershipsResponse;\n}"},{"id":109,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/join_spaces.js","name":"./src/core/endpoints/memberships/join_spaces.js","index":108,"index2":106,"size":3369,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/join_spaces","loc":"146:55-101"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.usePatch = usePatch;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var spaces = incomingParams.spaces;\n  var payload = {};\n\n  if (spaces && spaces.length > 0) {\n    payload.add = [];\n    spaces.forEach(function (addMembership) {\n      var currentAdd = {\n        id: addMembership.id\n      };\n\n      if (addMembership.custom) {\n        currentAdd.custom = addMembership.custom;\n      }\n\n      payload.add.push(currentAdd);\n    });\n  }\n\n  return payload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateMembershipsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var userId = incomingParams.userId,\n      spaces = incomingParams.spaces;\n  if (!userId) return 'Missing userId';\n  if (!spaces) return 'Missing spaces';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, membershipsResponse) {\n  return membershipsResponse;\n}"},{"id":110,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/leave_spaces.js","name":"./src/core/endpoints/memberships/leave_spaces.js","index":109,"index2":107,"size":3253,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/leave_spaces","loc":"148:56-103"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.usePatch = usePatch;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var spaces = incomingParams.spaces;\n  var payload = {};\n\n  if (spaces && spaces.length > 0) {\n    payload.remove = [];\n    spaces.forEach(function (removeMembershipId) {\n      payload.remove.push({\n        id: removeMembershipId\n      });\n    });\n  }\n\n  return payload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateMembershipsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var userId = incomingParams.userId,\n      spaces = incomingParams.spaces;\n  if (!userId) return 'Missing userId';\n  if (!spaces) return 'Missing spaces';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, membershipsResponse) {\n  return membershipsResponse;\n}"},{"id":111,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/audit.js","name":"./src/core/endpoints/access_manager/audit.js","index":110,"index2":108,"size":1668,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/access_manager/audit","loc":"150:50-93"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNAccessManagerAudit;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v2/auth/audit/sub-key/\".concat(config.subscribeKey);\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return false;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var channel = incomingParams.channel,\n      channelGroup = incomingParams.channelGroup,\n      _incomingParams$authK = incomingParams.authKeys,\n      authKeys = _incomingParams$authK === void 0 ? [] : _incomingParams$authK;\n  var params = {};\n\n  if (channel) {\n    params.channel = channel;\n  }\n\n  if (channelGroup) {\n    params['channel-group'] = channelGroup;\n  }\n\n  if (authKeys.length > 0) {\n    params.auth = authKeys.join(',');\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return serverResponse.payload;\n}"},{"id":112,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/grant.js","name":"./src/core/endpoints/access_manager/grant.js","index":111,"index2":109,"size":3668,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/access_manager/grant","loc":"152:50-93"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNAccessManagerGrant;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n  if (!config.publishKey) return 'Missing Publish Key';\n  if (!config.secretKey) return 'Missing Secret Key';\n\n  if (incomingParams.uuids != null && !incomingParams.authKeys) {\n    return 'authKeys are required for grant request on uuids';\n  }\n\n  if (incomingParams.uuids != null && (incomingParams.channels != null || incomingParams.channelGroups != null)) {\n    return 'Both channel/channelgroup and uuid cannot be used in the same request';\n  }\n}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v2/auth/grant/sub-key/\".concat(config.subscribeKey);\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return false;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann,\n      _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2,\n      _incomingParams$uuids = incomingParams.uuids,\n      uuids = _incomingParams$uuids === void 0 ? [] : _incomingParams$uuids,\n      ttl = incomingParams.ttl,\n      _incomingParams$read = incomingParams.read,\n      read = _incomingParams$read === void 0 ? false : _incomingParams$read,\n      _incomingParams$write = incomingParams.write,\n      write = _incomingParams$write === void 0 ? false : _incomingParams$write,\n      _incomingParams$manag = incomingParams.manage,\n      manage = _incomingParams$manag === void 0 ? false : _incomingParams$manag,\n      _incomingParams$get = incomingParams.get,\n      get = _incomingParams$get === void 0 ? false : _incomingParams$get,\n      _incomingParams$join = incomingParams.join,\n      join = _incomingParams$join === void 0 ? false : _incomingParams$join,\n      _incomingParams$updat = incomingParams.update,\n      update = _incomingParams$updat === void 0 ? false : _incomingParams$updat,\n      _incomingParams$authK = incomingParams.authKeys,\n      authKeys = _incomingParams$authK === void 0 ? [] : _incomingParams$authK;\n  var deleteParam = incomingParams[\"delete\"];\n  var params = {};\n  params.r = read ? '1' : '0';\n  params.w = write ? '1' : '0';\n  params.m = manage ? '1' : '0';\n  params.d = deleteParam ? '1' : '0';\n  params.g = get ? '1' : '0';\n  params.j = join ? '1' : '0';\n  params.u = update ? '1' : '0';\n\n  if (channels.length > 0) {\n    params.channel = channels.join(',');\n  }\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  if (authKeys.length > 0) {\n    params.auth = authKeys.join(',');\n  }\n\n  if (uuids.length > 0) {\n    params['target-uuid'] = uuids.join(',');\n  }\n\n  if (ttl || ttl === 0) {\n    params.ttl = ttl;\n  }\n\n  return params;\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":113,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/grant_token.js","name":"./src/core/endpoints/access_manager/grant_token.js","index":112,"index2":110,"size":5425,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/access_manager/grant_token","loc":"154:55-104"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.extractPermissions = extractPermissions;\nexports.validateParams = validateParams;\nexports.postURL = postURL;\nexports.usePost = usePost;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.postPayload = postPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNAccessManagerGrantToken;\n}\n\nfunction extractPermissions(permissions) {\n  var permissionsResult = 0;\n\n  if (permissions.create) {\n    permissionsResult |= 16;\n  }\n\n  if (permissions[\"delete\"]) {\n    permissionsResult |= 8;\n  }\n\n  if (permissions.manage) {\n    permissionsResult |= 4;\n  }\n\n  if (permissions.write) {\n    permissionsResult |= 2;\n  }\n\n  if (permissions.read) {\n    permissionsResult |= 1;\n  }\n\n  return permissionsResult;\n}\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var ttl = incomingParams.ttl,\n      resources = incomingParams.resources,\n      patterns = incomingParams.patterns,\n      meta = incomingParams.meta;\n  var params = {\n    ttl: 0,\n    permissions: {\n      resources: {\n        channels: {},\n        groups: {},\n        users: {},\n        spaces: {}\n      },\n      patterns: {\n        channels: {},\n        groups: {},\n        users: {},\n        spaces: {}\n      },\n      meta: {}\n    }\n  };\n\n  if (resources) {\n    var users = resources.users,\n        spaces = resources.spaces,\n        channels = resources.channels,\n        groups = resources.groups;\n\n    if (users) {\n      Object.keys(users).forEach(function (user) {\n        params.permissions.resources.users[user] = extractPermissions(users[user]);\n      });\n    }\n\n    if (spaces) {\n      Object.keys(spaces).forEach(function (space) {\n        params.permissions.resources.spaces[space] = extractPermissions(spaces[space]);\n      });\n    }\n\n    if (channels) {\n      Object.keys(channels).forEach(function (channel) {\n        params.permissions.resources.channels[channel] = extractPermissions(channels[channel]);\n      });\n    }\n\n    if (groups) {\n      Object.keys(groups).forEach(function (group) {\n        params.permissions.resources.groups[group] = extractPermissions(groups[group]);\n      });\n    }\n  }\n\n  if (patterns) {\n    var _users = patterns.users,\n        _spaces = patterns.spaces,\n        _channels = patterns.channels,\n        _groups = patterns.groups;\n\n    if (_users) {\n      Object.keys(_users).forEach(function (user) {\n        params.permissions.patterns.users[user] = extractPermissions(_users[user]);\n      });\n    }\n\n    if (_spaces) {\n      Object.keys(_spaces).forEach(function (space) {\n        params.permissions.patterns.spaces[space] = extractPermissions(_spaces[space]);\n      });\n    }\n\n    if (_channels) {\n      Object.keys(_channels).forEach(function (channel) {\n        params.permissions.patterns.channels[channel] = extractPermissions(_channels[channel]);\n      });\n    }\n\n    if (_groups) {\n      Object.keys(_groups).forEach(function (group) {\n        params.permissions.patterns.groups[group] = extractPermissions(_groups[group]);\n      });\n    }\n  }\n\n  if (ttl || ttl === 0) {\n    params.ttl = ttl;\n  }\n\n  if (meta) {\n    params.permissions.meta = meta;\n  }\n\n  return params;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n  if (!config.publishKey) return 'Missing Publish Key';\n  if (!config.secretKey) return 'Missing Secret Key';\n  if (!incomingParams.resources && !incomingParams.patterns) return 'Missing either Resources or Patterns.';\n\n  if (incomingParams.resources && (!incomingParams.resources.users || Object.keys(incomingParams.resources.users).length === 0) && (!incomingParams.resources.spaces || Object.keys(incomingParams.resources.spaces).length === 0) && (!incomingParams.resources.channels || Object.keys(incomingParams.resources.channels).length === 0) && (!incomingParams.resources.groups || Object.keys(incomingParams.resources.groups).length === 0) || incomingParams.patterns && (!incomingParams.patterns.users || Object.keys(incomingParams.patterns.users).length === 0) && (!incomingParams.patterns.spaces || Object.keys(incomingParams.patterns.spaces).length === 0) && (!incomingParams.patterns.channels || Object.keys(incomingParams.patterns.channels).length === 0) && (!incomingParams.patterns.groups || Object.keys(incomingParams.patterns.groups).length === 0)) {\n    return 'Missing values for either Resources or Patterns.';\n  }\n}\n\nfunction postURL(modules) {\n  var config = modules.config;\n  return \"/v3/pam/\".concat(config.subscribeKey, \"/grant\");\n}\n\nfunction usePost() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return false;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction postPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, response) {\n  var token = response.data.token;\n  return token;\n}"},{"id":114,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/publish.js","name":"./src/core/endpoints/publish.js","index":113,"index2":111,"size":3539,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/publish","loc":"156:52-82"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.usePost = usePost;\nexports.getURL = getURL;\nexports.postURL = postURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.postPayload = postPayload;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime/helpers/typeof\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../utils\"));\n\nfunction prepareMessagePayload(modules, messagePayload) {\n  var crypto = modules.crypto,\n      config = modules.config;\n  var stringifiedPayload = JSON.stringify(messagePayload);\n\n  if (config.cipherKey) {\n    stringifiedPayload = crypto.encrypt(stringifiedPayload);\n    stringifiedPayload = JSON.stringify(stringifiedPayload);\n  }\n\n  return stringifiedPayload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNPublishOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var message = incomingParams.message,\n      channel = incomingParams.channel;\n  if (!channel) return 'Missing Channel';\n  if (!message) return 'Missing Message';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction usePost(modules, incomingParams) {\n  var _incomingParams$sendB = incomingParams.sendByPost,\n      sendByPost = _incomingParams$sendB === void 0 ? false : _incomingParams$sendB;\n  return sendByPost;\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var channel = incomingParams.channel,\n      message = incomingParams.message;\n  var stringifiedPayload = prepareMessagePayload(modules, message);\n  return \"/publish/\".concat(config.publishKey, \"/\").concat(config.subscribeKey, \"/0/\").concat(_utils[\"default\"].encodeString(channel), \"/0/\").concat(_utils[\"default\"].encodeString(stringifiedPayload));\n}\n\nfunction postURL(modules, incomingParams) {\n  var config = modules.config;\n  var channel = incomingParams.channel;\n  return \"/publish/\".concat(config.publishKey, \"/\").concat(config.subscribeKey, \"/0/\").concat(_utils[\"default\"].encodeString(channel), \"/0\");\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction postPayload(modules, incomingParams) {\n  var message = incomingParams.message;\n  return prepareMessagePayload(modules, message);\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var meta = incomingParams.meta,\n      _incomingParams$repli = incomingParams.replicate,\n      replicate = _incomingParams$repli === void 0 ? true : _incomingParams$repli,\n      storeInHistory = incomingParams.storeInHistory,\n      ttl = incomingParams.ttl;\n  var params = {};\n\n  if (storeInHistory != null) {\n    if (storeInHistory) {\n      params.store = '1';\n    } else {\n      params.store = '0';\n    }\n  }\n\n  if (ttl) {\n    params.ttl = ttl;\n  }\n\n  if (replicate === false) {\n    params.norep = 'true';\n  }\n\n  if (meta && (0, _typeof2[\"default\"])(meta) === 'object') {\n    params.meta = JSON.stringify(meta);\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    timetoken: serverResponse[2]\n  };\n}"},{"id":115,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/signal.js","name":"./src/core/endpoints/signal.js","index":114,"index2":112,"size":1915,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/signal","loc":"158:51-80"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../utils\"));\n\nfunction prepareMessagePayload(modules, messagePayload) {\n  var stringifiedPayload = JSON.stringify(messagePayload);\n  return stringifiedPayload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNSignalOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var message = incomingParams.message,\n      channel = incomingParams.channel;\n  if (!channel) return 'Missing Channel';\n  if (!message) return 'Missing Message';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var channel = incomingParams.channel,\n      message = incomingParams.message;\n  var stringifiedPayload = prepareMessagePayload(modules, message);\n  return \"/signal/\".concat(config.publishKey, \"/\").concat(config.subscribeKey, \"/0/\").concat(_utils[\"default\"].encodeString(channel), \"/0/\").concat(_utils[\"default\"].encodeString(stringifiedPayload));\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams() {\n  var params = {};\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    timetoken: serverResponse[2]\n  };\n}"},{"id":116,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/get_history.js","name":"./src/core/endpoints/history/get_history.js","index":115,"index2":113,"size":3145,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/history/get_history","loc":"160:52-94"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction __processMessage(modules, message) {\n  var config = modules.config,\n      crypto = modules.crypto;\n  if (!config.cipherKey) return message;\n\n  try {\n    return crypto.decrypt(message);\n  } catch (e) {\n    return message;\n  }\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNHistoryOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channel = incomingParams.channel;\n  var config = modules.config;\n  if (!channel) return 'Missing channel';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var channel = incomingParams.channel;\n  var config = modules.config;\n  return \"/v2/history/sub-key/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(channel));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var start = incomingParams.start,\n      end = incomingParams.end,\n      reverse = incomingParams.reverse,\n      _incomingParams$count = incomingParams.count,\n      count = _incomingParams$count === void 0 ? 100 : _incomingParams$count,\n      _incomingParams$strin = incomingParams.stringifiedTimeToken,\n      stringifiedTimeToken = _incomingParams$strin === void 0 ? false : _incomingParams$strin,\n      _incomingParams$inclu = incomingParams.includeMeta,\n      includeMeta = _incomingParams$inclu === void 0 ? false : _incomingParams$inclu;\n  var outgoingParams = {\n    include_token: 'true'\n  };\n  outgoingParams.count = count;\n  if (start) outgoingParams.start = start;\n  if (end) outgoingParams.end = end;\n  if (stringifiedTimeToken) outgoingParams.string_message_token = 'true';\n  if (reverse != null) outgoingParams.reverse = reverse.toString();\n  if (includeMeta) outgoingParams.include_meta = 'true';\n  return outgoingParams;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  var response = {\n    messages: [],\n    startTimeToken: serverResponse[1],\n    endTimeToken: serverResponse[2]\n  };\n\n  if (Array.isArray(serverResponse[0])) {\n    serverResponse[0].forEach(function (serverHistoryItem) {\n      var item = {\n        timetoken: serverHistoryItem.timetoken,\n        entry: __processMessage(modules, serverHistoryItem.message)\n      };\n\n      if (serverHistoryItem.meta) {\n        item.meta = serverHistoryItem.meta;\n      }\n\n      response.messages.push(item);\n    });\n  }\n\n  return response;\n}"},{"id":117,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/delete_messages.js","name":"./src/core/endpoints/history/delete_messages.js","index":116,"index2":114,"size":1761,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/history/delete_messages","loc":"162:59-105"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.useDelete = useDelete;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNDeleteMessagesOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channel = incomingParams.channel;\n  var config = modules.config;\n  if (!channel) return 'Missing channel';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction useDelete() {\n  return true;\n}\n\nfunction getURL(modules, incomingParams) {\n  var channel = incomingParams.channel;\n  var config = modules.config;\n  return \"/v3/history/sub-key/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(channel));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var start = incomingParams.start,\n      end = incomingParams.end;\n  var outgoingParams = {};\n  if (start) outgoingParams.start = start;\n  if (end) outgoingParams.end = end;\n  return outgoingParams;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return serverResponse.payload;\n}"},{"id":118,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/message_counts.js","name":"./src/core/endpoints/history/message_counts.js","index":117,"index2":115,"size":2551,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/history/message_counts","loc":"164:58-103"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNMessageCounts;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channels = incomingParams.channels,\n      timetoken = incomingParams.timetoken,\n      channelTimetokens = incomingParams.channelTimetokens;\n  var config = modules.config;\n  if (!channels) return 'Missing channel';\n  if (timetoken && channelTimetokens) return 'timetoken and channelTimetokens are incompatible together';\n  if (timetoken && channelTimetokens && channelTimetokens.length > 1 && channels.length !== channelTimetokens.length) return 'Length of channelTimetokens and channels do not match';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var channels = incomingParams.channels;\n  var config = modules.config;\n  var stringifiedChannels = channels.join(',');\n  return \"/v3/history/sub-key/\".concat(config.subscribeKey, \"/message-counts/\").concat(_utils[\"default\"].encodeString(stringifiedChannels));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var timetoken = incomingParams.timetoken,\n      channelTimetokens = incomingParams.channelTimetokens;\n  var outgoingParams = {};\n\n  if (channelTimetokens && channelTimetokens.length === 1) {\n    var _channelTimetokens = (0, _slicedToArray2[\"default\"])(channelTimetokens, 1),\n        tt = _channelTimetokens[0];\n\n    outgoingParams.timetoken = tt;\n  } else if (channelTimetokens) {\n    outgoingParams.channelsTimetoken = channelTimetokens.join(',');\n  } else if (timetoken) {\n    outgoingParams.timetoken = timetoken;\n  }\n\n  return outgoingParams;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    channels: serverResponse.channels\n  };\n}"},{"id":119,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/fetch_messages.js","name":"./src/core/endpoints/fetch_messages.js","index":118,"index2":116,"size":4927,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/fetch_messages","loc":"166:58-95"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../utils\"));\n\nfunction __processMessage(modules, message) {\n  var config = modules.config,\n      crypto = modules.crypto;\n  if (!config.cipherKey) return message;\n\n  try {\n    return crypto.decrypt(message);\n  } catch (e) {\n    return message;\n  }\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNFetchMessagesOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channels = incomingParams.channels,\n      _incomingParams$inclu = incomingParams.includeMessageActions,\n      includeMessageActions = _incomingParams$inclu === void 0 ? false : _incomingParams$inclu;\n  var config = modules.config;\n  if (!channels || channels.length === 0) return 'Missing channels';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n  if (includeMessageActions && channels.length > 1) {\n    throw new TypeError('History can return actions data for a single channel only. Either pass a single channel or disable the includeMessageActions flag.');\n  }\n}\n\nfunction getURL(modules, incomingParams) {\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann,\n      _incomingParams$inclu2 = incomingParams.includeMessageActions,\n      includeMessageActions = _incomingParams$inclu2 === void 0 ? false : _incomingParams$inclu2;\n  var config = modules.config;\n  var endpoint = !includeMessageActions ? 'history' : 'history-with-actions';\n  var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n  return \"/v3/\".concat(endpoint, \"/sub-key/\").concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(stringifiedChannels));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var channels = incomingParams.channels,\n      start = incomingParams.start,\n      end = incomingParams.end,\n      includeMessageActions = incomingParams.includeMessageActions,\n      count = incomingParams.count,\n      _incomingParams$strin = incomingParams.stringifiedTimeToken,\n      stringifiedTimeToken = _incomingParams$strin === void 0 ? false : _incomingParams$strin,\n      _incomingParams$inclu3 = incomingParams.includeMeta,\n      includeMeta = _incomingParams$inclu3 === void 0 ? false : _incomingParams$inclu3,\n      includeUuid = incomingParams.includeUuid,\n      _incomingParams$inclu4 = incomingParams.includeUUID,\n      includeUUID = _incomingParams$inclu4 === void 0 ? true : _incomingParams$inclu4,\n      _incomingParams$inclu5 = incomingParams.includeMessageType,\n      includeMessageType = _incomingParams$inclu5 === void 0 ? true : _incomingParams$inclu5;\n  var outgoingParams = {};\n\n  if (count) {\n    outgoingParams.max = count;\n  } else {\n    outgoingParams.max = channels.length > 1 || includeMessageActions === true ? 25 : 100;\n  }\n\n  if (start) outgoingParams.start = start;\n  if (end) outgoingParams.end = end;\n  if (stringifiedTimeToken) outgoingParams.string_message_token = 'true';\n  if (includeMeta) outgoingParams.include_meta = 'true';\n  if (includeUUID && includeUuid !== false) outgoingParams.include_uuid = 'true';\n  if (includeMessageType) outgoingParams.include_message_type = 'true';\n  return outgoingParams;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  var response = {\n    channels: {}\n  };\n  Object.keys(serverResponse.channels || {}).forEach(function (channelName) {\n    response.channels[channelName] = [];\n    (serverResponse.channels[channelName] || []).forEach(function (messageEnvelope) {\n      var announce = {};\n      announce.channel = channelName;\n      announce.timetoken = messageEnvelope.timetoken;\n      announce.message = __processMessage(modules, messageEnvelope.message);\n      announce.messageType = messageEnvelope.message_type;\n      announce.uuid = messageEnvelope.uuid;\n\n      if (messageEnvelope.actions) {\n        announce.actions = messageEnvelope.actions;\n        announce.data = messageEnvelope.actions;\n      }\n\n      if (messageEnvelope.meta) {\n        announce.meta = messageEnvelope.meta;\n      }\n\n      response.channels[channelName].push(announce);\n    });\n  });\n\n  if (serverResponse.more) {\n    response.more = serverResponse.more;\n  }\n\n  return response;\n}"},{"id":120,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/subscribe.js","name":"./src/core/endpoints/subscribe.js","index":119,"index2":117,"size":3117,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/subscribe","loc":"170:54-86"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNSubscribeOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann;\n  var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n  return \"/v2/subscribe/\".concat(config.subscribeKey, \"/\").concat(_utils[\"default\"].encodeString(stringifiedChannels), \"/0\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getSubscribeTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(_ref2, incomingParams) {\n  var config = _ref2.config;\n  var state = incomingParams.state,\n      _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2,\n      timetoken = incomingParams.timetoken,\n      filterExpression = incomingParams.filterExpression,\n      region = incomingParams.region;\n  var params = {\n    heartbeat: config.getPresenceTimeout()\n  };\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  if (filterExpression && filterExpression.length > 0) {\n    params['filter-expr'] = filterExpression;\n  }\n\n  if (Object.keys(state).length) {\n    params.state = JSON.stringify(state);\n  }\n\n  if (timetoken) {\n    params.tt = timetoken;\n  }\n\n  if (region) {\n    params.tr = region;\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  var messages = [];\n  serverResponse.m.forEach(function (rawMessage) {\n    var publishMetaData = {\n      publishTimetoken: rawMessage.p.t,\n      region: rawMessage.p.r\n    };\n    var parsedMessage = {\n      shard: parseInt(rawMessage.a, 10),\n      subscriptionMatch: rawMessage.b,\n      channel: rawMessage.c,\n      messageType: rawMessage.e,\n      payload: rawMessage.d,\n      flags: rawMessage.f,\n      issuingClientId: rawMessage.i,\n      subscribeKey: rawMessage.k,\n      originationTimetoken: rawMessage.o,\n      userMetadata: rawMessage.u,\n      publishMetaData: publishMetaData\n    };\n    messages.push(parsedMessage);\n  });\n  var metadata = {\n    timetoken: serverResponse.t.t,\n    region: serverResponse.t.r\n  };\n  return {\n    messages: messages,\n    metadata: metadata\n  };\n}"},{"id":121,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/networking/index.js","name":"./src/networking/index.js","index":120,"index2":119,"size":5105,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../networking","loc":"24:41-65"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _config = _interopRequireDefault(require(\"../core/components/config\"));\n\nvar _categories = _interopRequireDefault(require(\"../core/constants/categories\"));\n\nvar _flow_interfaces = require(\"../core/flow_interfaces\");\n\nvar _default = function () {\n  function _default(modules) {\n    var _this = this;\n\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_modules\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_config\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_maxSubDomain\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_currentSubDomain\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_standardOrigin\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_subscribeOrigin\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_providedFQDN\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_requestTimeout\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_coreParams\", void 0);\n    this._modules = {};\n    Object.keys(modules).forEach(function (key) {\n      _this._modules[key] = modules[key].bind(_this);\n    });\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"init\",\n    value: function init(config) {\n      this._config = config;\n      this._maxSubDomain = 20;\n      this._currentSubDomain = Math.floor(Math.random() * this._maxSubDomain);\n      this._providedFQDN = (this._config.secure ? 'https://' : 'http://') + this._config.origin;\n      this._coreParams = {};\n      this.shiftStandardOrigin();\n    }\n  }, {\n    key: \"nextOrigin\",\n    value: function nextOrigin() {\n      if (!this._providedFQDN.match(/ps\\.pndsn\\.com$/i)) {\n        return this._providedFQDN;\n      }\n\n      var newSubDomain;\n      this._currentSubDomain += 1;\n\n      if (this._currentSubDomain >= this._maxSubDomain) {\n        this._currentSubDomain = 1;\n      }\n\n      newSubDomain = this._currentSubDomain.toString();\n      return this._providedFQDN.replace('ps.pndsn.com', \"ps\".concat(newSubDomain, \".pndsn.com\"));\n    }\n  }, {\n    key: \"hasModule\",\n    value: function hasModule(name) {\n      return name in this._modules;\n    }\n  }, {\n    key: \"shiftStandardOrigin\",\n    value: function shiftStandardOrigin() {\n      this._standardOrigin = this.nextOrigin();\n      return this._standardOrigin;\n    }\n  }, {\n    key: \"getStandardOrigin\",\n    value: function getStandardOrigin() {\n      return this._standardOrigin;\n    }\n  }, {\n    key: \"POSTFILE\",\n    value: function POSTFILE(url, fields, file) {\n      return this._modules.postfile(url, fields, file);\n    }\n  }, {\n    key: \"GETFILE\",\n    value: function GETFILE(params, endpoint, callback) {\n      return this._modules.getfile(params, endpoint, callback);\n    }\n  }, {\n    key: \"POST\",\n    value: function POST(params, body, endpoint, callback) {\n      return this._modules.post(params, body, endpoint, callback);\n    }\n  }, {\n    key: \"PATCH\",\n    value: function PATCH(params, body, endpoint, callback) {\n      return this._modules.patch(params, body, endpoint, callback);\n    }\n  }, {\n    key: \"GET\",\n    value: function GET(params, endpoint, callback) {\n      return this._modules.get(params, endpoint, callback);\n    }\n  }, {\n    key: \"DELETE\",\n    value: function DELETE(params, endpoint, callback) {\n      return this._modules.del(params, endpoint, callback);\n    }\n  }, {\n    key: \"_detectErrorCategory\",\n    value: function _detectErrorCategory(err) {\n      if (err.code === 'ENOTFOUND') {\n        return _categories[\"default\"].PNNetworkIssuesCategory;\n      }\n\n      if (err.code === 'ECONNREFUSED') {\n        return _categories[\"default\"].PNNetworkIssuesCategory;\n      }\n\n      if (err.code === 'ECONNRESET') {\n        return _categories[\"default\"].PNNetworkIssuesCategory;\n      }\n\n      if (err.code === 'EAI_AGAIN') {\n        return _categories[\"default\"].PNNetworkIssuesCategory;\n      }\n\n      if (err.status === 0 || err.hasOwnProperty('status') && typeof err.status === 'undefined') {\n        return _categories[\"default\"].PNNetworkIssuesCategory;\n      }\n\n      if (err.timeout) return _categories[\"default\"].PNTimeoutCategory;\n\n      if (err.code === 'ETIMEDOUT') {\n        return _categories[\"default\"].PNNetworkIssuesCategory;\n      }\n\n      if (err.response) {\n        if (err.response.badRequest) {\n          return _categories[\"default\"].PNBadRequestCategory;\n        }\n\n        if (err.response.forbidden) {\n          return _categories[\"default\"].PNAccessDeniedCategory;\n        }\n      }\n\n      return _categories[\"default\"].PNUnknownCategory;\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":122,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/db/web.js","name":"./src/db/web.js","index":121,"index2":120,"size":454,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../db/web","loc":"28:34-54"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\nvar _default = {\n  get: function get(key) {\n    try {\n      return localStorage.getItem(key);\n    } catch (e) {\n      return null;\n    }\n  },\n  set: function set(key, data) {\n    try {\n      return localStorage.setItem(key, data);\n    } catch (e) {\n      return null;\n    }\n  }\n};\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":123,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/cbor/common.js","name":"./src/cbor/common.js","index":122,"index2":121,"size":1563,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../cbor/common","loc":"30:37-62"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime/helpers/typeof\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _default = function () {\n  function _default(decode, base64ToBinary) {\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_base64ToBinary\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_cborReader\", void 0);\n    this._base64ToBinary = base64ToBinary;\n    this._decode = decode;\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"decodeToken\",\n    value: function decodeToken(tokenString) {\n      var padding = '';\n\n      if (tokenString.length % 4 === 3) {\n        padding = '=';\n      } else if (tokenString.length % 4 === 2) {\n        padding = '==';\n      }\n\n      var cleaned = tokenString.replace(/-/gi, '+').replace(/_/gi, '/') + padding;\n\n      var result = this._decode(this._base64ToBinary(cleaned));\n\n      if ((0, _typeof2[\"default\"])(result) === 'object') {\n        return result;\n      }\n\n      return undefined;\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":124,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/networking/modules/web-node.js","name":"./src/networking/modules/web-node.js","index":123,"index2":129,"size":6060,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../networking/modules/web-node","loc":"32:15-56"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.postfile = postfile;\nexports.getfile = getfile;\nexports.get = get;\nexports.post = post;\nexports.patch = patch;\nexports.del = del;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime/helpers/asyncToGenerator\"));\n\nvar _superagent = _interopRequireDefault(require(\"superagent\"));\n\nvar _flow_interfaces = require(\"../../core/flow_interfaces\");\n\nfunction log(req) {\n  var _pickLogger = function _pickLogger() {\n    if (console && console.log) return console;\n    if (window && window.console && window.console.log) return window.console;\n    return console;\n  };\n\n  var start = new Date().getTime();\n  var timestamp = new Date().toISOString();\n\n  var logger = _pickLogger();\n\n  logger.log('<<<<<');\n  logger.log(\"[\".concat(timestamp, \"]\"), '\\n', req.url, '\\n', req.qs);\n  logger.log('-----');\n  req.on('response', function (res) {\n    var now = new Date().getTime();\n    var elapsed = now - start;\n    var timestampDone = new Date().toISOString();\n    logger.log('>>>>>>');\n    logger.log(\"[\".concat(timestampDone, \" / \").concat(elapsed, \"]\"), '\\n', req.url, '\\n', req.qs, '\\n', res.text);\n    logger.log('-----');\n  });\n}\n\nfunction xdr(superagentConstruct, endpoint, callback) {\n  var _this = this;\n\n  if (this._config.logVerbosity) {\n    superagentConstruct = superagentConstruct.use(log);\n  }\n\n  if (this._config.proxy && this._modules.proxy) {\n    superagentConstruct = this._modules.proxy.call(this, superagentConstruct);\n  }\n\n  if (this._config.keepAlive && this._modules.keepAlive) {\n    superagentConstruct = this._modules.keepAlive(superagentConstruct);\n  }\n\n  var sc = superagentConstruct;\n\n  if (endpoint.forceBuffered === true) {\n    if (typeof Blob === 'undefined') {\n      sc = sc.buffer().responseType('arraybuffer');\n    } else {\n      sc = sc.responseType('arraybuffer');\n    }\n  } else if (endpoint.forceBuffered === false) {\n    sc = sc.buffer(false);\n  }\n\n  return sc.timeout(endpoint.timeout).end(function (err, resp) {\n    var parsedResponse;\n    var status = {};\n    status.error = err !== null;\n    status.operation = endpoint.operation;\n\n    if (resp && resp.status) {\n      status.statusCode = resp.status;\n    }\n\n    if (err) {\n      if (err.response && err.response.text && !_this._config.logVerbosity) {\n        try {\n          status.errorData = JSON.parse(err.response.text);\n        } catch (e) {\n          status.errorData = err;\n        }\n      } else {\n        status.errorData = err;\n      }\n\n      status.category = _this._detectErrorCategory(err);\n      return callback(status, null);\n    }\n\n    if (endpoint.ignoreBody) {\n      parsedResponse = {\n        headers: resp.headers,\n        redirects: resp.redirects,\n        response: resp\n      };\n    } else {\n      try {\n        parsedResponse = JSON.parse(resp.text);\n      } catch (e) {\n        status.errorData = resp;\n        status.error = true;\n        return callback(status, null);\n      }\n    }\n\n    if (parsedResponse.error && parsedResponse.error === 1 && parsedResponse.status && parsedResponse.message && parsedResponse.service) {\n      status.errorData = parsedResponse;\n      status.statusCode = parsedResponse.status;\n      status.error = true;\n      status.category = _this._detectErrorCategory(status);\n      return callback(status, null);\n    } else if (parsedResponse.error && parsedResponse.error.message) {\n      status.errorData = parsedResponse.error;\n    }\n\n    return callback(status, parsedResponse);\n  });\n}\n\nfunction postfile(_x, _x2, _x3) {\n  return _postfile.apply(this, arguments);\n}\n\nfunction _postfile() {\n  _postfile = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee(url, fields, fileInput) {\n    var agent, result;\n    return _regenerator[\"default\"].wrap(function _callee$(_context) {\n      while (1) {\n        switch (_context.prev = _context.next) {\n          case 0:\n            agent = _superagent[\"default\"].post(url);\n            fields.forEach(function (_ref) {\n              var key = _ref.key,\n                  value = _ref.value;\n              agent = agent.field(key, value);\n            });\n            agent.attach('file', fileInput, {\n              contentType: 'application/octet-stream'\n            });\n            _context.next = 5;\n            return agent;\n\n          case 5:\n            result = _context.sent;\n            return _context.abrupt(\"return\", result);\n\n          case 7:\n          case \"end\":\n            return _context.stop();\n        }\n      }\n    }, _callee);\n  }));\n  return _postfile.apply(this, arguments);\n}\n\nfunction getfile(params, endpoint, callback) {\n  var superagentConstruct = _superagent[\"default\"].get(this.getStandardOrigin() + endpoint.url).set(endpoint.headers).query(params);\n\n  return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nfunction get(params, endpoint, callback) {\n  var superagentConstruct = _superagent[\"default\"].get(this.getStandardOrigin() + endpoint.url).set(endpoint.headers).query(params);\n\n  return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nfunction post(params, body, endpoint, callback) {\n  var superagentConstruct = _superagent[\"default\"].post(this.getStandardOrigin() + endpoint.url).query(params).set(endpoint.headers).send(body);\n\n  return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nfunction patch(params, body, endpoint, callback) {\n  var superagentConstruct = _superagent[\"default\"].patch(this.getStandardOrigin() + endpoint.url).query(params).set(endpoint.headers).send(body);\n\n  return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nfunction del(params, endpoint, callback) {\n  var superagentConstruct = _superagent[\"default\"][\"delete\"](this.getStandardOrigin() + endpoint.url).set(endpoint.headers).query(params);\n\n  return xdr.call(this, superagentConstruct, endpoint, callback);\n}"},{"id":131,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/crypto/modules/web.js","name":"./src/crypto/modules/web.js","index":131,"index2":132,"size":13041,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../crypto/modules/web","loc":"36:35-67"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime/helpers/asyncToGenerator\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _isomorphicWebcrypto = _interopRequireDefault(require(\"isomorphic-webcrypto\"));\n\nfunction concatArrayBuffer(ab1, ab2) {\n  var tmp = new Uint8Array(ab1.byteLength + ab2.byteLength);\n  tmp.set(new Uint8Array(ab1), 0);\n  tmp.set(new Uint8Array(ab2), ab1.byteLength);\n  return tmp.buffer;\n}\n\nvar WebCryptography = function () {\n  function WebCryptography() {\n    (0, _classCallCheck2[\"default\"])(this, WebCryptography);\n  }\n\n  (0, _createClass2[\"default\"])(WebCryptography, [{\n    key: \"encrypt\",\n    value: function () {\n      var _encrypt = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee(key, input) {\n        var cKey;\n        return _regenerator[\"default\"].wrap(function _callee$(_context) {\n          while (1) {\n            switch (_context.prev = _context.next) {\n              case 0:\n                _context.next = 2;\n                return this.getKey(key);\n\n              case 2:\n                cKey = _context.sent;\n\n                if (!(input instanceof ArrayBuffer)) {\n                  _context.next = 7;\n                  break;\n                }\n\n                return _context.abrupt(\"return\", this.encryptArrayBuffer(cKey, input));\n\n              case 7:\n                if (!(typeof input === 'string')) {\n                  _context.next = 11;\n                  break;\n                }\n\n                return _context.abrupt(\"return\", this.encryptString(cKey, input));\n\n              case 11:\n                throw new Error('Cannot encrypt this file. In browsers file encryption supports only string or ArrayBuffer');\n\n              case 12:\n              case \"end\":\n                return _context.stop();\n            }\n          }\n        }, _callee, this);\n      }));\n\n      function encrypt(_x, _x2) {\n        return _encrypt.apply(this, arguments);\n      }\n\n      return encrypt;\n    }()\n  }, {\n    key: \"decrypt\",\n    value: function () {\n      var _decrypt = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee2(key, input) {\n        var cKey;\n        return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n          while (1) {\n            switch (_context2.prev = _context2.next) {\n              case 0:\n                _context2.next = 2;\n                return this.getKey(key);\n\n              case 2:\n                cKey = _context2.sent;\n\n                if (!(input instanceof ArrayBuffer)) {\n                  _context2.next = 7;\n                  break;\n                }\n\n                return _context2.abrupt(\"return\", this.decryptArrayBuffer(cKey, input));\n\n              case 7:\n                if (!(typeof input === 'string')) {\n                  _context2.next = 11;\n                  break;\n                }\n\n                return _context2.abrupt(\"return\", this.decryptString(cKey, input));\n\n              case 11:\n                throw new Error('Cannot decrypt this file. In browsers file decryption supports only string or ArrayBuffer');\n\n              case 12:\n              case \"end\":\n                return _context2.stop();\n            }\n          }\n        }, _callee2, this);\n      }));\n\n      function decrypt(_x3, _x4) {\n        return _decrypt.apply(this, arguments);\n      }\n\n      return decrypt;\n    }()\n  }, {\n    key: \"encryptFile\",\n    value: function () {\n      var _encryptFile = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee3(key, file, File) {\n        var bKey, abPlaindata, abCipherdata;\n        return _regenerator[\"default\"].wrap(function _callee3$(_context3) {\n          while (1) {\n            switch (_context3.prev = _context3.next) {\n              case 0:\n                _context3.next = 2;\n                return this.getKey(key);\n\n              case 2:\n                bKey = _context3.sent;\n                _context3.next = 5;\n                return file.toArrayBuffer();\n\n              case 5:\n                abPlaindata = _context3.sent;\n                _context3.next = 8;\n                return this.encryptArrayBuffer(bKey, abPlaindata);\n\n              case 8:\n                abCipherdata = _context3.sent;\n                return _context3.abrupt(\"return\", File.create({\n                  name: file.name,\n                  mimeType: 'application/octet-stream',\n                  data: abCipherdata\n                }));\n\n              case 10:\n              case \"end\":\n                return _context3.stop();\n            }\n          }\n        }, _callee3, this);\n      }));\n\n      function encryptFile(_x5, _x6, _x7) {\n        return _encryptFile.apply(this, arguments);\n      }\n\n      return encryptFile;\n    }()\n  }, {\n    key: \"decryptFile\",\n    value: function () {\n      var _decryptFile = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee4(key, file, File) {\n        var bKey, abCipherdata, abPlaindata;\n        return _regenerator[\"default\"].wrap(function _callee4$(_context4) {\n          while (1) {\n            switch (_context4.prev = _context4.next) {\n              case 0:\n                _context4.next = 2;\n                return this.getKey(key);\n\n              case 2:\n                bKey = _context4.sent;\n                _context4.next = 5;\n                return file.toArrayBuffer();\n\n              case 5:\n                abCipherdata = _context4.sent;\n                _context4.next = 8;\n                return this.decryptArrayBuffer(bKey, abCipherdata);\n\n              case 8:\n                abPlaindata = _context4.sent;\n\n                if (!(file.data instanceof ArrayBuffer)) {\n                  _context4.next = 13;\n                  break;\n                }\n\n                return _context4.abrupt(\"return\", File.create({\n                  name: file.name,\n                  data: abPlaindata\n                }));\n\n              case 13:\n                throw new Error('Cannot decrypt this file. In browser environment file decryption supports only ArrayBuffer.');\n\n              case 14:\n              case \"end\":\n                return _context4.stop();\n            }\n          }\n        }, _callee4, this);\n      }));\n\n      function decryptFile(_x8, _x9, _x10) {\n        return _decryptFile.apply(this, arguments);\n      }\n\n      return decryptFile;\n    }()\n  }, {\n    key: \"getKey\",\n    value: function () {\n      var _getKey = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee5(key) {\n        var bKey, abHash, abKey;\n        return _regenerator[\"default\"].wrap(function _callee5$(_context5) {\n          while (1) {\n            switch (_context5.prev = _context5.next) {\n              case 0:\n                bKey = Buffer.from(key);\n                _context5.next = 3;\n                return _isomorphicWebcrypto[\"default\"].subtle.digest('SHA-256', bKey.buffer);\n\n              case 3:\n                abHash = _context5.sent;\n                abKey = Buffer.from(Buffer.from(abHash).toString('hex').slice(0, 32), 'utf8').buffer;\n                return _context5.abrupt(\"return\", _isomorphicWebcrypto[\"default\"].subtle.importKey('raw', abKey, 'AES-CBC', true, ['encrypt', 'decrypt']));\n\n              case 6:\n              case \"end\":\n                return _context5.stop();\n            }\n          }\n        }, _callee5);\n      }));\n\n      function getKey(_x11) {\n        return _getKey.apply(this, arguments);\n      }\n\n      return getKey;\n    }()\n  }, {\n    key: \"encryptArrayBuffer\",\n    value: function () {\n      var _encryptArrayBuffer = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee6(key, plaintext) {\n        var abIv;\n        return _regenerator[\"default\"].wrap(function _callee6$(_context6) {\n          while (1) {\n            switch (_context6.prev = _context6.next) {\n              case 0:\n                abIv = _isomorphicWebcrypto[\"default\"].getRandomValues(new Uint8Array(16));\n                _context6.t0 = concatArrayBuffer;\n                _context6.t1 = abIv.buffer;\n                _context6.next = 5;\n                return _isomorphicWebcrypto[\"default\"].subtle.encrypt({\n                  name: 'AES-CBC',\n                  iv: abIv\n                }, key, plaintext);\n\n              case 5:\n                _context6.t2 = _context6.sent;\n                return _context6.abrupt(\"return\", (0, _context6.t0)(_context6.t1, _context6.t2));\n\n              case 7:\n              case \"end\":\n                return _context6.stop();\n            }\n          }\n        }, _callee6);\n      }));\n\n      function encryptArrayBuffer(_x12, _x13) {\n        return _encryptArrayBuffer.apply(this, arguments);\n      }\n\n      return encryptArrayBuffer;\n    }()\n  }, {\n    key: \"decryptArrayBuffer\",\n    value: function () {\n      var _decryptArrayBuffer = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee7(key, ciphertext) {\n        var abIv;\n        return _regenerator[\"default\"].wrap(function _callee7$(_context7) {\n          while (1) {\n            switch (_context7.prev = _context7.next) {\n              case 0:\n                abIv = ciphertext.slice(0, 16);\n                return _context7.abrupt(\"return\", _isomorphicWebcrypto[\"default\"].subtle.decrypt({\n                  name: 'AES-CBC',\n                  iv: abIv\n                }, key, ciphertext.slice(16)));\n\n              case 2:\n              case \"end\":\n                return _context7.stop();\n            }\n          }\n        }, _callee7);\n      }));\n\n      function decryptArrayBuffer(_x14, _x15) {\n        return _decryptArrayBuffer.apply(this, arguments);\n      }\n\n      return decryptArrayBuffer;\n    }()\n  }, {\n    key: \"encryptString\",\n    value: function () {\n      var _encryptString = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee8(key, plaintext) {\n        var abIv, abPlaintext, abPayload, ciphertext;\n        return _regenerator[\"default\"].wrap(function _callee8$(_context8) {\n          while (1) {\n            switch (_context8.prev = _context8.next) {\n              case 0:\n                abIv = _isomorphicWebcrypto[\"default\"].getRandomValues(new Uint8Array(16));\n                abPlaintext = Buffer.from(plaintext).buffer;\n                _context8.next = 4;\n                return _isomorphicWebcrypto[\"default\"].subtle.encrypt({\n                  name: 'AES-CBC',\n                  iv: abIv\n                }, key, abPlaintext);\n\n              case 4:\n                abPayload = _context8.sent;\n                ciphertext = concatArrayBuffer(abIv.buffer, abPayload);\n                return _context8.abrupt(\"return\", Buffer.from(ciphertext).toString('utf8'));\n\n              case 7:\n              case \"end\":\n                return _context8.stop();\n            }\n          }\n        }, _callee8);\n      }));\n\n      function encryptString(_x16, _x17) {\n        return _encryptString.apply(this, arguments);\n      }\n\n      return encryptString;\n    }()\n  }, {\n    key: \"decryptString\",\n    value: function () {\n      var _decryptString = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee9(key, ciphertext) {\n        var abCiphertext, abIv, abPayload, abPlaintext;\n        return _regenerator[\"default\"].wrap(function _callee9$(_context9) {\n          while (1) {\n            switch (_context9.prev = _context9.next) {\n              case 0:\n                abCiphertext = Buffer.from(ciphertext);\n                abIv = abCiphertext.slice(0, 16);\n                abPayload = abCiphertext.slice(16);\n                _context9.next = 5;\n                return _isomorphicWebcrypto[\"default\"].subtle.decrypt({\n                  name: 'AES-CBC',\n                  iv: abIv\n                }, key, abPayload);\n\n              case 5:\n                abPlaintext = _context9.sent;\n                return _context9.abrupt(\"return\", Buffer.from(abPlaintext).toString('utf8'));\n\n              case 7:\n              case \"end\":\n                return _context9.stop();\n            }\n          }\n        }, _callee9);\n      }));\n\n      function decryptString(_x18, _x19) {\n        return _decryptString.apply(this, arguments);\n      }\n\n      return decryptString;\n    }()\n  }, {\n    key: \"algo\",\n    get: function get() {\n      return 'aes-256-cbc';\n    }\n  }]);\n  return WebCryptography;\n}();\n\nexports[\"default\"] = WebCryptography;\n(0, _defineProperty2[\"default\"])(WebCryptography, \"IV_LENGTH\", 16);\nmodule.exports = exports.default;"},{"id":132,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/file/modules/web.js","name":"./src/file/modules/web.js","index":134,"index2":133,"size":8476,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../file/modules/web","loc":"38:35-65"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime/helpers/asyncToGenerator\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _ = require(\"../\");\n\nvar _class, _temp;\n\nvar PubNubFile = (_temp = _class = function () {\n  (0, _createClass2[\"default\"])(PubNubFile, null, [{\n    key: \"create\",\n    value: function create(config) {\n      return new this(config);\n    }\n  }]);\n\n  function PubNubFile(config) {\n    (0, _classCallCheck2[\"default\"])(this, PubNubFile);\n    (0, _defineProperty2[\"default\"])(this, \"data\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"name\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"mimeType\", void 0);\n\n    if (config instanceof File) {\n      this.data = config;\n      this.name = this.data.name;\n      this.mimeType = this.data.type;\n    } else if (config.data) {\n      var contents = config.data;\n      this.data = new File([contents], config.name, {\n        type: config.mimeType\n      });\n      this.name = config.name;\n\n      if (config.mimeType) {\n        this.mimeType = config.mimeType;\n      }\n    }\n\n    if (this.data === undefined) {\n      throw new Error(\"Couldn't construct a file out of supplied options.\");\n    }\n\n    if (this.name === undefined) {\n      throw new Error(\"Couldn't guess filename out of the options. Please provide one.\");\n    }\n  }\n\n  (0, _createClass2[\"default\"])(PubNubFile, [{\n    key: \"toBuffer\",\n    value: function () {\n      var _toBuffer = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee() {\n        return _regenerator[\"default\"].wrap(function _callee$(_context) {\n          while (1) {\n            switch (_context.prev = _context.next) {\n              case 0:\n                throw new Error('This feature is only supported in Node.js environments.');\n\n              case 1:\n              case \"end\":\n                return _context.stop();\n            }\n          }\n        }, _callee);\n      }));\n\n      function toBuffer() {\n        return _toBuffer.apply(this, arguments);\n      }\n\n      return toBuffer;\n    }()\n  }, {\n    key: \"toStream\",\n    value: function () {\n      var _toStream = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee2() {\n        return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n          while (1) {\n            switch (_context2.prev = _context2.next) {\n              case 0:\n                throw new Error('This feature is only supported in Node.js environments.');\n\n              case 1:\n              case \"end\":\n                return _context2.stop();\n            }\n          }\n        }, _callee2);\n      }));\n\n      function toStream() {\n        return _toStream.apply(this, arguments);\n      }\n\n      return toStream;\n    }()\n  }, {\n    key: \"toFileUri\",\n    value: function () {\n      var _toFileUri = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee3() {\n        return _regenerator[\"default\"].wrap(function _callee3$(_context3) {\n          while (1) {\n            switch (_context3.prev = _context3.next) {\n              case 0:\n                throw new Error('This feature is only supported in react native environments.');\n\n              case 1:\n              case \"end\":\n                return _context3.stop();\n            }\n          }\n        }, _callee3);\n      }));\n\n      function toFileUri() {\n        return _toFileUri.apply(this, arguments);\n      }\n\n      return toFileUri;\n    }()\n  }, {\n    key: \"toBlob\",\n    value: function () {\n      var _toBlob = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee4() {\n        return _regenerator[\"default\"].wrap(function _callee4$(_context4) {\n          while (1) {\n            switch (_context4.prev = _context4.next) {\n              case 0:\n                return _context4.abrupt(\"return\", this.data);\n\n              case 1:\n              case \"end\":\n                return _context4.stop();\n            }\n          }\n        }, _callee4, this);\n      }));\n\n      function toBlob() {\n        return _toBlob.apply(this, arguments);\n      }\n\n      return toBlob;\n    }()\n  }, {\n    key: \"toArrayBuffer\",\n    value: function () {\n      var _toArrayBuffer = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee5() {\n        var _this = this;\n\n        return _regenerator[\"default\"].wrap(function _callee5$(_context5) {\n          while (1) {\n            switch (_context5.prev = _context5.next) {\n              case 0:\n                return _context5.abrupt(\"return\", new Promise(function (resolve, reject) {\n                  var reader = new FileReader();\n                  reader.addEventListener('load', function () {\n                    if (reader.result instanceof ArrayBuffer) {\n                      return resolve(reader.result);\n                    }\n                  });\n                  reader.addEventListener('error', function () {\n                    reject(reader.error);\n                  });\n                  reader.readAsArrayBuffer(_this.data);\n                }));\n\n              case 1:\n              case \"end\":\n                return _context5.stop();\n            }\n          }\n        }, _callee5);\n      }));\n\n      function toArrayBuffer() {\n        return _toArrayBuffer.apply(this, arguments);\n      }\n\n      return toArrayBuffer;\n    }()\n  }, {\n    key: \"toString\",\n    value: function () {\n      var _toString = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee6() {\n        var _this2 = this;\n\n        return _regenerator[\"default\"].wrap(function _callee6$(_context6) {\n          while (1) {\n            switch (_context6.prev = _context6.next) {\n              case 0:\n                return _context6.abrupt(\"return\", new Promise(function (resolve, reject) {\n                  var reader = new FileReader();\n                  reader.addEventListener('load', function () {\n                    if (typeof reader.result === 'string') {\n                      return resolve(reader.result);\n                    }\n                  });\n                  reader.addEventListener('error', function () {\n                    reject(reader.error);\n                  });\n                  reader.readAsBinaryString(_this2.data);\n                }));\n\n              case 1:\n              case \"end\":\n                return _context6.stop();\n            }\n          }\n        }, _callee6);\n      }));\n\n      function toString() {\n        return _toString.apply(this, arguments);\n      }\n\n      return toString;\n    }()\n  }, {\n    key: \"toFile\",\n    value: function () {\n      var _toFile = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee7() {\n        return _regenerator[\"default\"].wrap(function _callee7$(_context7) {\n          while (1) {\n            switch (_context7.prev = _context7.next) {\n              case 0:\n                return _context7.abrupt(\"return\", this.data);\n\n              case 1:\n              case \"end\":\n                return _context7.stop();\n            }\n          }\n        }, _callee7, this);\n      }));\n\n      function toFile() {\n        return _toFile.apply(this, arguments);\n      }\n\n      return toFile;\n    }()\n  }]);\n  return PubNubFile;\n}(), (0, _defineProperty2[\"default\"])(_class, \"supportsFile\", typeof File !== 'undefined'), (0, _defineProperty2[\"default\"])(_class, \"supportsBlob\", typeof Blob !== 'undefined'), (0, _defineProperty2[\"default\"])(_class, \"supportsArrayBuffer\", typeof ArrayBuffer !== 'undefined'), (0, _defineProperty2[\"default\"])(_class, \"supportsBuffer\", false), (0, _defineProperty2[\"default\"])(_class, \"supportsStream\", false), (0, _defineProperty2[\"default\"])(_class, \"supportsString\", true), (0, _defineProperty2[\"default\"])(_class, \"supportsEncryptFile\", true), (0, _defineProperty2[\"default\"])(_class, \"supportsFileUri\", false), _temp);\nvar _default = PubNubFile;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":133,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/isomorphic-webcrypto/src/browser.mjs e9ef07f88f941362430dae814d88de4d","name":"./node_modules/isomorphic-webcrypto/src/browser.mjs + 1 modules","index":132,"index2":131,"size":23428,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":null,"issuerId":null,"issuerName":null,"issuerPath":null,"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":131,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/crypto/modules/web.js","module":"./src/crypto/modules/web.js","moduleName":"./src/crypto/modules/web.js","type":"cjs require","userRequest":"isomorphic-webcrypto","loc":"20:50-81"}],"usedExports":true,"providedExports":["default"],"optimizationBailout":[],"depth":2,"modules":[],"filteredModules":2}],"filteredModules":40,"origins":[{"module":"","moduleIdentifier":"","moduleName":"","loc":"main","request":"/home/travis/build/pubnub/target-repository/src/web/index.js","reasons":[]}]}],"modules":[{"id":1,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/constants/operations.js","name":"./src/core/constants/operations.js","index":30,"index2":25,"size":3302,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":18,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","module":"./src/core/components/endpoint.js","moduleName":"./src/core/components/endpoint.js","type":"cjs require","userRequest":"../constants/operations","loc":"34:41-75"},{"moduleId":24,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/time.js","module":"./src/core/endpoints/time.js","moduleName":"./src/core/endpoints/time.js","type":"cjs require","userRequest":"../constants/operations","loc":"18:41-75"},{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./constants/operations","loc":"172:41-74"},{"moduleId":40,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/telemetry_manager.js","module":"./src/core/components/telemetry_manager.js","moduleName":"./src/core/components/telemetry_manager.js","type":"cjs require","userRequest":"../constants/operations","loc":"16:41-75"},{"moduleId":49,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/add_channels.js","module":"./src/core/endpoints/channel_groups/add_channels.js","moduleName":"./src/core/endpoints/channel_groups/add_channels.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":50,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/remove_channels.js","module":"./src/core/endpoints/channel_groups/remove_channels.js","moduleName":"./src/core/endpoints/channel_groups/remove_channels.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":51,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/delete_group.js","module":"./src/core/endpoints/channel_groups/delete_group.js","moduleName":"./src/core/endpoints/channel_groups/delete_group.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":52,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_groups.js","module":"./src/core/endpoints/channel_groups/list_groups.js","moduleName":"./src/core/endpoints/channel_groups/list_groups.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":53,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_channels.js","module":"./src/core/endpoints/channel_groups/list_channels.js","moduleName":"./src/core/endpoints/channel_groups/list_channels.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":54,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/add_push_channels.js","module":"./src/core/endpoints/push/add_push_channels.js","moduleName":"./src/core/endpoints/push/add_push_channels.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":55,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/remove_push_channels.js","module":"./src/core/endpoints/push/remove_push_channels.js","moduleName":"./src/core/endpoints/push/remove_push_channels.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":56,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/list_push_channels.js","module":"./src/core/endpoints/push/list_push_channels.js","moduleName":"./src/core/endpoints/push/list_push_channels.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":57,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/remove_device.js","module":"./src/core/endpoints/push/remove_device.js","moduleName":"./src/core/endpoints/push/remove_device.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":58,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/leave.js","module":"./src/core/endpoints/presence/leave.js","moduleName":"./src/core/endpoints/presence/leave.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":59,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/where_now.js","module":"./src/core/endpoints/presence/where_now.js","moduleName":"./src/core/endpoints/presence/where_now.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":60,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/heartbeat.js","module":"./src/core/endpoints/presence/heartbeat.js","moduleName":"./src/core/endpoints/presence/heartbeat.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":61,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/get_state.js","module":"./src/core/endpoints/presence/get_state.js","moduleName":"./src/core/endpoints/presence/get_state.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":62,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/set_state.js","module":"./src/core/endpoints/presence/set_state.js","moduleName":"./src/core/endpoints/presence/set_state.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":63,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/here_now.js","module":"./src/core/endpoints/presence/here_now.js","moduleName":"./src/core/endpoints/presence/here_now.js","type":"cjs require","userRequest":"../../constants/operations","loc":"21:41-78"},{"moduleId":64,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/add_message_action.js","module":"./src/core/endpoints/actions/add_message_action.js","moduleName":"./src/core/endpoints/actions/add_message_action.js","type":"cjs require","userRequest":"../../constants/operations","loc":"21:41-78"},{"moduleId":65,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/remove_message_action.js","module":"./src/core/endpoints/actions/remove_message_action.js","moduleName":"./src/core/endpoints/actions/remove_message_action.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":66,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/get_message_actions.js","module":"./src/core/endpoints/actions/get_message_actions.js","moduleName":"./src/core/endpoints/actions/get_message_actions.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":68,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/list_files.js","module":"./src/core/endpoints/file_upload/list_files.js","moduleName":"./src/core/endpoints/file_upload/list_files.js","type":"cjs require","userRequest":"../../constants/operations","loc":"10:41-78"},{"moduleId":69,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/generate_upload_url.js","module":"./src/core/endpoints/file_upload/generate_upload_url.js","moduleName":"./src/core/endpoints/file_upload/generate_upload_url.js","type":"cjs require","userRequest":"../../constants/operations","loc":"10:41-78"},{"moduleId":70,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/publish_file.js","module":"./src/core/endpoints/file_upload/publish_file.js","moduleName":"./src/core/endpoints/file_upload/publish_file.js","type":"cjs require","userRequest":"../../constants/operations","loc":"12:41-78"},{"moduleId":74,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/download_file.js","module":"./src/core/endpoints/file_upload/download_file.js","moduleName":"./src/core/endpoints/file_upload/download_file.js","type":"cjs require","userRequest":"../../constants/operations","loc":"14:41-78"},{"moduleId":75,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/delete_file.js","module":"./src/core/endpoints/file_upload/delete_file.js","moduleName":"./src/core/endpoints/file_upload/delete_file.js","type":"cjs require","userRequest":"../../constants/operations","loc":"10:41-78"},{"moduleId":76,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/get_all.js","module":"./src/core/endpoints/objects/uuid/get_all.js","moduleName":"./src/core/endpoints/objects/uuid/get_all.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"12:41-81"},{"moduleId":82,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/get.js","module":"./src/core/endpoints/objects/uuid/get.js","moduleName":"./src/core/endpoints/objects/uuid/get.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"10:41-81"},{"moduleId":83,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/set.js","module":"./src/core/endpoints/objects/uuid/set.js","moduleName":"./src/core/endpoints/objects/uuid/set.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"10:41-81"},{"moduleId":84,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/remove.js","module":"./src/core/endpoints/objects/uuid/remove.js","moduleName":"./src/core/endpoints/objects/uuid/remove.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"10:41-81"},{"moduleId":85,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/get_all.js","module":"./src/core/endpoints/objects/channel/get_all.js","moduleName":"./src/core/endpoints/objects/channel/get_all.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"12:41-81"},{"moduleId":86,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/get.js","module":"./src/core/endpoints/objects/channel/get.js","moduleName":"./src/core/endpoints/objects/channel/get.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"10:41-81"},{"moduleId":87,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/set.js","module":"./src/core/endpoints/objects/channel/set.js","moduleName":"./src/core/endpoints/objects/channel/set.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"10:41-81"},{"moduleId":88,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/remove.js","module":"./src/core/endpoints/objects/channel/remove.js","moduleName":"./src/core/endpoints/objects/channel/remove.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"10:41-81"},{"moduleId":89,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/member/get.js","module":"./src/core/endpoints/objects/member/get.js","moduleName":"./src/core/endpoints/objects/member/get.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"12:41-81"},{"moduleId":90,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/member/set.js","module":"./src/core/endpoints/objects/member/set.js","moduleName":"./src/core/endpoints/objects/member/set.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"14:41-81"},{"moduleId":91,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/membership/get.js","module":"./src/core/endpoints/objects/membership/get.js","moduleName":"./src/core/endpoints/objects/membership/get.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"12:41-81"},{"moduleId":92,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/membership/set.js","module":"./src/core/endpoints/objects/membership/set.js","moduleName":"./src/core/endpoints/objects/membership/set.js","type":"cjs require","userRequest":"../../../constants/operations","loc":"14:41-81"},{"moduleId":93,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/create_user.js","module":"./src/core/endpoints/users/create_user.js","moduleName":"./src/core/endpoints/users/create_user.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":94,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/update_user.js","module":"./src/core/endpoints/users/update_user.js","moduleName":"./src/core/endpoints/users/update_user.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":95,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/delete_user.js","module":"./src/core/endpoints/users/delete_user.js","moduleName":"./src/core/endpoints/users/delete_user.js","type":"cjs require","userRequest":"../../constants/operations","loc":"20:41-78"},{"moduleId":96,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_user.js","module":"./src/core/endpoints/users/get_user.js","moduleName":"./src/core/endpoints/users/get_user.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":97,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_users.js","module":"./src/core/endpoints/users/get_users.js","moduleName":"./src/core/endpoints/users/get_users.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":98,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/create_space.js","module":"./src/core/endpoints/spaces/create_space.js","moduleName":"./src/core/endpoints/spaces/create_space.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":99,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/update_space.js","module":"./src/core/endpoints/spaces/update_space.js","moduleName":"./src/core/endpoints/spaces/update_space.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":100,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/delete_space.js","module":"./src/core/endpoints/spaces/delete_space.js","moduleName":"./src/core/endpoints/spaces/delete_space.js","type":"cjs require","userRequest":"../../constants/operations","loc":"20:41-78"},{"moduleId":101,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_spaces.js","module":"./src/core/endpoints/spaces/get_spaces.js","moduleName":"./src/core/endpoints/spaces/get_spaces.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":102,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_space.js","module":"./src/core/endpoints/spaces/get_space.js","moduleName":"./src/core/endpoints/spaces/get_space.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":103,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_members.js","module":"./src/core/endpoints/memberships/get_members.js","moduleName":"./src/core/endpoints/memberships/get_members.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":104,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/add_members.js","module":"./src/core/endpoints/memberships/add_members.js","moduleName":"./src/core/endpoints/memberships/add_members.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":105,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_members.js","module":"./src/core/endpoints/memberships/update_members.js","moduleName":"./src/core/endpoints/memberships/update_members.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":106,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/remove_members.js","module":"./src/core/endpoints/memberships/remove_members.js","moduleName":"./src/core/endpoints/memberships/remove_members.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":107,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_memberships.js","module":"./src/core/endpoints/memberships/get_memberships.js","moduleName":"./src/core/endpoints/memberships/get_memberships.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":108,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_memberships.js","module":"./src/core/endpoints/memberships/update_memberships.js","moduleName":"./src/core/endpoints/memberships/update_memberships.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":109,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/join_spaces.js","module":"./src/core/endpoints/memberships/join_spaces.js","moduleName":"./src/core/endpoints/memberships/join_spaces.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":110,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/leave_spaces.js","module":"./src/core/endpoints/memberships/leave_spaces.js","moduleName":"./src/core/endpoints/memberships/leave_spaces.js","type":"cjs require","userRequest":"../../constants/operations","loc":"22:41-78"},{"moduleId":111,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/audit.js","module":"./src/core/endpoints/access_manager/audit.js","moduleName":"./src/core/endpoints/access_manager/audit.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":112,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/grant.js","module":"./src/core/endpoints/access_manager/grant.js","moduleName":"./src/core/endpoints/access_manager/grant.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":113,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/grant_token.js","module":"./src/core/endpoints/access_manager/grant_token.js","moduleName":"./src/core/endpoints/access_manager/grant_token.js","type":"cjs require","userRequest":"../../constants/operations","loc":"21:41-78"},{"moduleId":114,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/publish.js","module":"./src/core/endpoints/publish.js","moduleName":"./src/core/endpoints/publish.js","type":"cjs require","userRequest":"../constants/operations","loc":"23:41-75"},{"moduleId":115,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/signal.js","module":"./src/core/endpoints/signal.js","moduleName":"./src/core/endpoints/signal.js","type":"cjs require","userRequest":"../constants/operations","loc":"18:41-75"},{"moduleId":116,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/get_history.js","module":"./src/core/endpoints/history/get_history.js","moduleName":"./src/core/endpoints/history/get_history.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":117,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/delete_messages.js","module":"./src/core/endpoints/history/delete_messages.js","moduleName":"./src/core/endpoints/history/delete_messages.js","type":"cjs require","userRequest":"../../constants/operations","loc":"19:41-78"},{"moduleId":118,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/message_counts.js","module":"./src/core/endpoints/history/message_counts.js","moduleName":"./src/core/endpoints/history/message_counts.js","type":"cjs require","userRequest":"../../constants/operations","loc":"18:41-78"},{"moduleId":119,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/fetch_messages.js","module":"./src/core/endpoints/fetch_messages.js","moduleName":"./src/core/endpoints/fetch_messages.js","type":"cjs require","userRequest":"../constants/operations","loc":"18:41-75"},{"moduleId":120,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/subscribe.js","module":"./src/core/endpoints/subscribe.js","moduleName":"./src/core/endpoints/subscribe.js","type":"cjs require","userRequest":"../constants/operations","loc":"18:41-75"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\nvar _default = {\n  PNTimeOperation: 'PNTimeOperation',\n  PNHistoryOperation: 'PNHistoryOperation',\n  PNDeleteMessagesOperation: 'PNDeleteMessagesOperation',\n  PNFetchMessagesOperation: 'PNFetchMessagesOperation',\n  PNMessageCounts: 'PNMessageCountsOperation',\n  PNSubscribeOperation: 'PNSubscribeOperation',\n  PNUnsubscribeOperation: 'PNUnsubscribeOperation',\n  PNPublishOperation: 'PNPublishOperation',\n  PNSignalOperation: 'PNSignalOperation',\n  PNAddMessageActionOperation: 'PNAddActionOperation',\n  PNRemoveMessageActionOperation: 'PNRemoveMessageActionOperation',\n  PNGetMessageActionsOperation: 'PNGetMessageActionsOperation',\n  PNCreateUserOperation: 'PNCreateUserOperation',\n  PNUpdateUserOperation: 'PNUpdateUserOperation',\n  PNDeleteUserOperation: 'PNDeleteUserOperation',\n  PNGetUserOperation: 'PNGetUsersOperation',\n  PNGetUsersOperation: 'PNGetUsersOperation',\n  PNCreateSpaceOperation: 'PNCreateSpaceOperation',\n  PNUpdateSpaceOperation: 'PNUpdateSpaceOperation',\n  PNDeleteSpaceOperation: 'PNDeleteSpaceOperation',\n  PNGetSpaceOperation: 'PNGetSpacesOperation',\n  PNGetSpacesOperation: 'PNGetSpacesOperation',\n  PNGetMembersOperation: 'PNGetMembersOperation',\n  PNUpdateMembersOperation: 'PNUpdateMembersOperation',\n  PNGetMembershipsOperation: 'PNGetMembershipsOperation',\n  PNUpdateMembershipsOperation: 'PNUpdateMembershipsOperation',\n  PNListFilesOperation: 'PNListFilesOperation',\n  PNGenerateUploadUrlOperation: 'PNGenerateUploadUrlOperation',\n  PNPublishFileOperation: 'PNPublishFileOperation',\n  PNGetFileUrlOperation: 'PNGetFileUrlOperation',\n  PNDownloadFileOperation: 'PNDownloadFileOperation',\n  PNGetAllUUIDMetadataOperation: 'PNGetAllUUIDMetadataOperation',\n  PNGetUUIDMetadataOperation: 'PNGetUUIDMetadataOperation',\n  PNSetUUIDMetadataOperation: 'PNSetUUIDMetadataOperation',\n  PNRemoveUUIDMetadataOperation: 'PNRemoveUUIDMetadataOperation',\n  PNGetAllChannelMetadataOperation: 'PNGetAllChannelMetadataOperation',\n  PNGetChannelMetadataOperation: 'PNGetChannelMetadataOperation',\n  PNSetChannelMetadataOperation: 'PNSetChannelMetadataOperation',\n  PNRemoveChannelMetadataOperation: 'PNRemoveChannelMetadataOperation',\n  PNSetMembersOperation: 'PNSetMembersOperation',\n  PNSetMembershipsOperation: 'PNSetMembershipsOperation',\n  PNPushNotificationEnabledChannelsOperation: 'PNPushNotificationEnabledChannelsOperation',\n  PNRemoveAllPushNotificationsOperation: 'PNRemoveAllPushNotificationsOperation',\n  PNWhereNowOperation: 'PNWhereNowOperation',\n  PNSetStateOperation: 'PNSetStateOperation',\n  PNHereNowOperation: 'PNHereNowOperation',\n  PNGetStateOperation: 'PNGetStateOperation',\n  PNHeartbeatOperation: 'PNHeartbeatOperation',\n  PNChannelGroupsOperation: 'PNChannelGroupsOperation',\n  PNRemoveGroupOperation: 'PNRemoveGroupOperation',\n  PNChannelsForGroupOperation: 'PNChannelsForGroupOperation',\n  PNAddChannelsToGroupOperation: 'PNAddChannelsToGroupOperation',\n  PNRemoveChannelsFromGroupOperation: 'PNRemoveChannelsFromGroupOperation',\n  PNAccessManagerGrant: 'PNAccessManagerGrant',\n  PNAccessManagerGrantToken: 'PNAccessManagerGrantToken',\n  PNAccessManagerAudit: 'PNAccessManagerAudit'\n};\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":2,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/flow_interfaces.js","name":"./src/core/flow_interfaces.js","index":17,"index2":14,"size":35,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":8,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/config.js","module":"./src/core/components/config.js","moduleName":"./src/core/components/config.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"18:23-52"},{"moduleId":18,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","module":"./src/core/components/endpoint.js","moduleName":"./src/core/components/endpoint.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"28:23-52"},{"moduleId":23,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/listener_manager.js","module":"./src/core/components/listener_manager.js","moduleName":"./src/core/components/listener_manager.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"16:23-52"},{"moduleId":24,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/time.js","module":"./src/core/endpoints/time.js","moduleName":"./src/core/endpoints/time.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"16:23-52"},{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../core/flow_interfaces","loc":"34:23-57"},{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./flow_interfaces","loc":"176:23-51"},{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"30:23-52"},{"moduleId":37,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/reconnection_manager.js","module":"./src/core/components/reconnection_manager.js","moduleName":"./src/core/components/reconnection_manager.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"18:23-52"},{"moduleId":38,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/deduping_manager.js","module":"./src/core/components/deduping_manager.js","moduleName":"./src/core/components/deduping_manager.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"18:23-52"},{"moduleId":41,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/push_payload.js","module":"./src/core/components/push_payload.js","moduleName":"./src/core/components/push_payload.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"26:23-52"},{"moduleId":44,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/token_manager.js","module":"./src/core/components/token_manager.js","moduleName":"./src/core/components/token_manager.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"20:23-52"},{"moduleId":49,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/add_channels.js","module":"./src/core/endpoints/channel_groups/add_channels.js","moduleName":"./src/core/endpoints/channel_groups/add_channels.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":50,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/remove_channels.js","module":"./src/core/endpoints/channel_groups/remove_channels.js","moduleName":"./src/core/endpoints/channel_groups/remove_channels.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":51,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/delete_group.js","module":"./src/core/endpoints/channel_groups/delete_group.js","moduleName":"./src/core/endpoints/channel_groups/delete_group.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":52,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_groups.js","module":"./src/core/endpoints/channel_groups/list_groups.js","moduleName":"./src/core/endpoints/channel_groups/list_groups.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":53,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_channels.js","module":"./src/core/endpoints/channel_groups/list_channels.js","moduleName":"./src/core/endpoints/channel_groups/list_channels.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":54,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/add_push_channels.js","module":"./src/core/endpoints/push/add_push_channels.js","moduleName":"./src/core/endpoints/push/add_push_channels.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":55,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/remove_push_channels.js","module":"./src/core/endpoints/push/remove_push_channels.js","moduleName":"./src/core/endpoints/push/remove_push_channels.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":56,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/list_push_channels.js","module":"./src/core/endpoints/push/list_push_channels.js","moduleName":"./src/core/endpoints/push/list_push_channels.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":57,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/remove_device.js","module":"./src/core/endpoints/push/remove_device.js","moduleName":"./src/core/endpoints/push/remove_device.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":58,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/leave.js","module":"./src/core/endpoints/presence/leave.js","moduleName":"./src/core/endpoints/presence/leave.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":59,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/where_now.js","module":"./src/core/endpoints/presence/where_now.js","moduleName":"./src/core/endpoints/presence/where_now.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":60,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/heartbeat.js","module":"./src/core/endpoints/presence/heartbeat.js","moduleName":"./src/core/endpoints/presence/heartbeat.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":61,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/get_state.js","module":"./src/core/endpoints/presence/get_state.js","moduleName":"./src/core/endpoints/presence/get_state.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":62,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/set_state.js","module":"./src/core/endpoints/presence/set_state.js","moduleName":"./src/core/endpoints/presence/set_state.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":63,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/here_now.js","module":"./src/core/endpoints/presence/here_now.js","moduleName":"./src/core/endpoints/presence/here_now.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"19:23-55"},{"moduleId":64,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/add_message_action.js","module":"./src/core/endpoints/actions/add_message_action.js","moduleName":"./src/core/endpoints/actions/add_message_action.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"19:23-55"},{"moduleId":65,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/remove_message_action.js","module":"./src/core/endpoints/actions/remove_message_action.js","moduleName":"./src/core/endpoints/actions/remove_message_action.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":66,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/get_message_actions.js","module":"./src/core/endpoints/actions/get_message_actions.js","moduleName":"./src/core/endpoints/actions/get_message_actions.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":93,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/create_user.js","module":"./src/core/endpoints/users/create_user.js","moduleName":"./src/core/endpoints/users/create_user.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":94,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/update_user.js","module":"./src/core/endpoints/users/update_user.js","moduleName":"./src/core/endpoints/users/update_user.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":95,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/delete_user.js","module":"./src/core/endpoints/users/delete_user.js","moduleName":"./src/core/endpoints/users/delete_user.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"18:23-55"},{"moduleId":96,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_user.js","module":"./src/core/endpoints/users/get_user.js","moduleName":"./src/core/endpoints/users/get_user.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":97,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_users.js","module":"./src/core/endpoints/users/get_users.js","moduleName":"./src/core/endpoints/users/get_users.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":98,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/create_space.js","module":"./src/core/endpoints/spaces/create_space.js","moduleName":"./src/core/endpoints/spaces/create_space.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":99,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/update_space.js","module":"./src/core/endpoints/spaces/update_space.js","moduleName":"./src/core/endpoints/spaces/update_space.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":100,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/delete_space.js","module":"./src/core/endpoints/spaces/delete_space.js","moduleName":"./src/core/endpoints/spaces/delete_space.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"18:23-55"},{"moduleId":101,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_spaces.js","module":"./src/core/endpoints/spaces/get_spaces.js","moduleName":"./src/core/endpoints/spaces/get_spaces.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":102,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_space.js","module":"./src/core/endpoints/spaces/get_space.js","moduleName":"./src/core/endpoints/spaces/get_space.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":103,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_members.js","module":"./src/core/endpoints/memberships/get_members.js","moduleName":"./src/core/endpoints/memberships/get_members.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":104,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/add_members.js","module":"./src/core/endpoints/memberships/add_members.js","moduleName":"./src/core/endpoints/memberships/add_members.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":105,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_members.js","module":"./src/core/endpoints/memberships/update_members.js","moduleName":"./src/core/endpoints/memberships/update_members.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":106,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/remove_members.js","module":"./src/core/endpoints/memberships/remove_members.js","moduleName":"./src/core/endpoints/memberships/remove_members.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":107,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_memberships.js","module":"./src/core/endpoints/memberships/get_memberships.js","moduleName":"./src/core/endpoints/memberships/get_memberships.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":108,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_memberships.js","module":"./src/core/endpoints/memberships/update_memberships.js","moduleName":"./src/core/endpoints/memberships/update_memberships.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":109,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/join_spaces.js","module":"./src/core/endpoints/memberships/join_spaces.js","moduleName":"./src/core/endpoints/memberships/join_spaces.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":110,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/leave_spaces.js","module":"./src/core/endpoints/memberships/leave_spaces.js","moduleName":"./src/core/endpoints/memberships/leave_spaces.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"20:23-55"},{"moduleId":111,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/audit.js","module":"./src/core/endpoints/access_manager/audit.js","moduleName":"./src/core/endpoints/access_manager/audit.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":112,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/grant.js","module":"./src/core/endpoints/access_manager/grant.js","moduleName":"./src/core/endpoints/access_manager/grant.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":113,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/grant_token.js","module":"./src/core/endpoints/access_manager/grant_token.js","moduleName":"./src/core/endpoints/access_manager/grant_token.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"19:23-55"},{"moduleId":114,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/publish.js","module":"./src/core/endpoints/publish.js","moduleName":"./src/core/endpoints/publish.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"21:23-52"},{"moduleId":115,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/signal.js","module":"./src/core/endpoints/signal.js","moduleName":"./src/core/endpoints/signal.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"16:23-52"},{"moduleId":116,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/get_history.js","module":"./src/core/endpoints/history/get_history.js","moduleName":"./src/core/endpoints/history/get_history.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"16:23-55"},{"moduleId":117,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/delete_messages.js","module":"./src/core/endpoints/history/delete_messages.js","moduleName":"./src/core/endpoints/history/delete_messages.js","type":"cjs require","userRequest":"../../flow_interfaces","loc":"17:23-55"},{"moduleId":119,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/fetch_messages.js","module":"./src/core/endpoints/fetch_messages.js","moduleName":"./src/core/endpoints/fetch_messages.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"16:23-52"},{"moduleId":120,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/subscribe.js","module":"./src/core/endpoints/subscribe.js","moduleName":"./src/core/endpoints/subscribe.js","type":"cjs require","userRequest":"../flow_interfaces","loc":"16:23-52"},{"moduleId":121,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/networking/index.js","module":"./src/networking/index.js","moduleName":"./src/networking/index.js","type":"cjs require","userRequest":"../core/flow_interfaces","loc":"20:23-57"},{"moduleId":124,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/networking/modules/web-node.js","module":"./src/networking/modules/web-node.js","moduleName":"./src/networking/modules/web-node.js","type":"cjs require","userRequest":"../../core/flow_interfaces","loc":"21:23-60"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nmodule.exports = {};"},{"id":3,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/utils.js","name":"./src/core/utils.js","index":32,"index2":30,"size":1942,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":18,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","module":"./src/core/components/endpoint.js","moduleName":"./src/core/components/endpoint.js","type":"cjs require","userRequest":"../utils","loc":"30:36-55"},{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./utils","loc":"34:13-31"},{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../utils","loc":"28:36-55"},{"moduleId":49,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/add_channels.js","module":"./src/core/endpoints/channel_groups/add_channels.js","moduleName":"./src/core/endpoints/channel_groups/add_channels.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":50,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/remove_channels.js","module":"./src/core/endpoints/channel_groups/remove_channels.js","moduleName":"./src/core/endpoints/channel_groups/remove_channels.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":51,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/delete_group.js","module":"./src/core/endpoints/channel_groups/delete_group.js","moduleName":"./src/core/endpoints/channel_groups/delete_group.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":53,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_channels.js","module":"./src/core/endpoints/channel_groups/list_channels.js","moduleName":"./src/core/endpoints/channel_groups/list_channels.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":58,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/leave.js","module":"./src/core/endpoints/presence/leave.js","moduleName":"./src/core/endpoints/presence/leave.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":59,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/where_now.js","module":"./src/core/endpoints/presence/where_now.js","moduleName":"./src/core/endpoints/presence/where_now.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":60,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/heartbeat.js","module":"./src/core/endpoints/presence/heartbeat.js","moduleName":"./src/core/endpoints/presence/heartbeat.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":61,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/get_state.js","module":"./src/core/endpoints/presence/get_state.js","moduleName":"./src/core/endpoints/presence/get_state.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":62,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/set_state.js","module":"./src/core/endpoints/presence/set_state.js","moduleName":"./src/core/endpoints/presence/set_state.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":63,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/here_now.js","module":"./src/core/endpoints/presence/here_now.js","moduleName":"./src/core/endpoints/presence/here_now.js","type":"cjs require","userRequest":"../../utils","loc":"23:36-58"},{"moduleId":64,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/add_message_action.js","module":"./src/core/endpoints/actions/add_message_action.js","moduleName":"./src/core/endpoints/actions/add_message_action.js","type":"cjs require","userRequest":"../../utils","loc":"23:36-58"},{"moduleId":65,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/remove_message_action.js","module":"./src/core/endpoints/actions/remove_message_action.js","moduleName":"./src/core/endpoints/actions/remove_message_action.js","type":"cjs require","userRequest":"../../utils","loc":"21:36-58"},{"moduleId":66,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/get_message_actions.js","module":"./src/core/endpoints/actions/get_message_actions.js","moduleName":"./src/core/endpoints/actions/get_message_actions.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":68,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/list_files.js","module":"./src/core/endpoints/file_upload/list_files.js","moduleName":"./src/core/endpoints/file_upload/list_files.js","type":"cjs require","userRequest":"../../utils","loc":"12:36-58"},{"moduleId":69,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/generate_upload_url.js","module":"./src/core/endpoints/file_upload/generate_upload_url.js","moduleName":"./src/core/endpoints/file_upload/generate_upload_url.js","type":"cjs require","userRequest":"../../utils","loc":"12:36-58"},{"moduleId":70,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/publish_file.js","module":"./src/core/endpoints/file_upload/publish_file.js","moduleName":"./src/core/endpoints/file_upload/publish_file.js","type":"cjs require","userRequest":"../../utils","loc":"14:36-58"},{"moduleId":73,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/get_file_url.js","module":"./src/core/endpoints/file_upload/get_file_url.js","moduleName":"./src/core/endpoints/file_upload/get_file_url.js","type":"cjs require","userRequest":"../../utils","loc":"12:36-58"},{"moduleId":74,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/download_file.js","module":"./src/core/endpoints/file_upload/download_file.js","moduleName":"./src/core/endpoints/file_upload/download_file.js","type":"cjs require","userRequest":"../../utils","loc":"16:36-58"},{"moduleId":75,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/delete_file.js","module":"./src/core/endpoints/file_upload/delete_file.js","moduleName":"./src/core/endpoints/file_upload/delete_file.js","type":"cjs require","userRequest":"../../utils","loc":"12:36-58"},{"moduleId":82,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/get.js","module":"./src/core/endpoints/objects/uuid/get.js","moduleName":"./src/core/endpoints/objects/uuid/get.js","type":"cjs require","userRequest":"../../../utils","loc":"12:36-61"},{"moduleId":83,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/set.js","module":"./src/core/endpoints/objects/uuid/set.js","moduleName":"./src/core/endpoints/objects/uuid/set.js","type":"cjs require","userRequest":"../../../utils","loc":"12:36-61"},{"moduleId":84,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/remove.js","module":"./src/core/endpoints/objects/uuid/remove.js","moduleName":"./src/core/endpoints/objects/uuid/remove.js","type":"cjs require","userRequest":"../../../utils","loc":"12:36-61"},{"moduleId":86,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/get.js","module":"./src/core/endpoints/objects/channel/get.js","moduleName":"./src/core/endpoints/objects/channel/get.js","type":"cjs require","userRequest":"../../../utils","loc":"12:36-61"},{"moduleId":87,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/set.js","module":"./src/core/endpoints/objects/channel/set.js","moduleName":"./src/core/endpoints/objects/channel/set.js","type":"cjs require","userRequest":"../../../utils","loc":"12:36-61"},{"moduleId":88,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/remove.js","module":"./src/core/endpoints/objects/channel/remove.js","moduleName":"./src/core/endpoints/objects/channel/remove.js","type":"cjs require","userRequest":"../../../utils","loc":"12:36-61"},{"moduleId":89,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/member/get.js","module":"./src/core/endpoints/objects/member/get.js","moduleName":"./src/core/endpoints/objects/member/get.js","type":"cjs require","userRequest":"../../../utils","loc":"14:36-61"},{"moduleId":90,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/member/set.js","module":"./src/core/endpoints/objects/member/set.js","moduleName":"./src/core/endpoints/objects/member/set.js","type":"cjs require","userRequest":"../../../utils","loc":"16:36-61"},{"moduleId":91,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/membership/get.js","module":"./src/core/endpoints/objects/membership/get.js","moduleName":"./src/core/endpoints/objects/membership/get.js","type":"cjs require","userRequest":"../../../utils","loc":"14:36-61"},{"moduleId":92,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/membership/set.js","module":"./src/core/endpoints/objects/membership/set.js","moduleName":"./src/core/endpoints/objects/membership/set.js","type":"cjs require","userRequest":"../../../utils","loc":"16:36-61"},{"moduleId":94,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/update_user.js","module":"./src/core/endpoints/users/update_user.js","moduleName":"./src/core/endpoints/users/update_user.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":95,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/delete_user.js","module":"./src/core/endpoints/users/delete_user.js","moduleName":"./src/core/endpoints/users/delete_user.js","type":"cjs require","userRequest":"../../utils","loc":"22:36-58"},{"moduleId":96,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_user.js","module":"./src/core/endpoints/users/get_user.js","moduleName":"./src/core/endpoints/users/get_user.js","type":"cjs require","userRequest":"../../utils","loc":"21:36-58"},{"moduleId":99,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/update_space.js","module":"./src/core/endpoints/spaces/update_space.js","moduleName":"./src/core/endpoints/spaces/update_space.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":100,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/delete_space.js","module":"./src/core/endpoints/spaces/delete_space.js","moduleName":"./src/core/endpoints/spaces/delete_space.js","type":"cjs require","userRequest":"../../utils","loc":"22:36-58"},{"moduleId":102,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_space.js","module":"./src/core/endpoints/spaces/get_space.js","moduleName":"./src/core/endpoints/spaces/get_space.js","type":"cjs require","userRequest":"../../utils","loc":"21:36-58"},{"moduleId":103,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_members.js","module":"./src/core/endpoints/memberships/get_members.js","moduleName":"./src/core/endpoints/memberships/get_members.js","type":"cjs require","userRequest":"../../utils","loc":"21:36-58"},{"moduleId":104,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/add_members.js","module":"./src/core/endpoints/memberships/add_members.js","moduleName":"./src/core/endpoints/memberships/add_members.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":105,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_members.js","module":"./src/core/endpoints/memberships/update_members.js","moduleName":"./src/core/endpoints/memberships/update_members.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":106,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/remove_members.js","module":"./src/core/endpoints/memberships/remove_members.js","moduleName":"./src/core/endpoints/memberships/remove_members.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":107,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_memberships.js","module":"./src/core/endpoints/memberships/get_memberships.js","moduleName":"./src/core/endpoints/memberships/get_memberships.js","type":"cjs require","userRequest":"../../utils","loc":"21:36-58"},{"moduleId":108,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_memberships.js","module":"./src/core/endpoints/memberships/update_memberships.js","moduleName":"./src/core/endpoints/memberships/update_memberships.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":109,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/join_spaces.js","module":"./src/core/endpoints/memberships/join_spaces.js","moduleName":"./src/core/endpoints/memberships/join_spaces.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":110,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/leave_spaces.js","module":"./src/core/endpoints/memberships/leave_spaces.js","moduleName":"./src/core/endpoints/memberships/leave_spaces.js","type":"cjs require","userRequest":"../../utils","loc":"24:36-58"},{"moduleId":114,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/publish.js","module":"./src/core/endpoints/publish.js","moduleName":"./src/core/endpoints/publish.js","type":"cjs require","userRequest":"../utils","loc":"25:36-55"},{"moduleId":115,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/signal.js","module":"./src/core/endpoints/signal.js","moduleName":"./src/core/endpoints/signal.js","type":"cjs require","userRequest":"../utils","loc":"20:36-55"},{"moduleId":116,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/get_history.js","module":"./src/core/endpoints/history/get_history.js","moduleName":"./src/core/endpoints/history/get_history.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":117,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/delete_messages.js","module":"./src/core/endpoints/history/delete_messages.js","moduleName":"./src/core/endpoints/history/delete_messages.js","type":"cjs require","userRequest":"../../utils","loc":"21:36-58"},{"moduleId":118,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/message_counts.js","module":"./src/core/endpoints/history/message_counts.js","moduleName":"./src/core/endpoints/history/message_counts.js","type":"cjs require","userRequest":"../../utils","loc":"20:36-58"},{"moduleId":119,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/fetch_messages.js","module":"./src/core/endpoints/fetch_messages.js","moduleName":"./src/core/endpoints/fetch_messages.js","type":"cjs require","userRequest":"../utils","loc":"20:36-55"},{"moduleId":120,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/subscribe.js","module":"./src/core/endpoints/subscribe.js","moduleName":"./src/core/endpoints/subscribe.js","type":"cjs require","userRequest":"../utils","loc":"20:36-55"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nfunction objectToList(o) {\n  var l = [];\n  Object.keys(o).forEach(function (key) {\n    return l.push(key);\n  });\n  return l;\n}\n\nfunction encodeString(input) {\n  return encodeURIComponent(input).replace(/[!~*'()]/g, function (x) {\n    return \"%\".concat(x.charCodeAt(0).toString(16).toUpperCase());\n  });\n}\n\nfunction objectToListSorted(o) {\n  return objectToList(o).sort();\n}\n\nfunction signPamFromParams(params) {\n  var l = objectToListSorted(params);\n  return l.map(function (paramKey) {\n    return \"\".concat(paramKey, \"=\").concat(encodeString(params[paramKey]));\n  }).join('&');\n}\n\nfunction endsWith(searchString, suffix) {\n  return searchString.indexOf(suffix, this.length - suffix.length) !== -1;\n}\n\nfunction createPromise() {\n  var successResolve;\n  var failureResolve;\n  var promise = new Promise(function (fulfill, reject) {\n    successResolve = fulfill;\n    failureResolve = reject;\n  });\n  return {\n    promise: promise,\n    reject: failureResolve,\n    fulfill: successResolve\n  };\n}\n\nvar deprecationMessage = \"The Objects v1 API has been deprecated.\\nYou can learn more about Objects v2 API at https://www.pubnub.com/docs/web-javascript/api-reference-objects.\\nIf you have questions about the Objects v2 API or require additional help with migrating to the new data model, please contact PubNub Support at support@pubnub.com.\";\n\nfunction deprecated(fn) {\n  return function () {\n    if (typeof process !== 'undefined') {\n      var _process, _process$env;\n\n      if (((_process = process) === null || _process === void 0 ? void 0 : (_process$env = _process.env) === null || _process$env === void 0 ? void 0 : _process$env.NODE_ENV) !== 'test') {\n        console.warn(deprecationMessage);\n      }\n    }\n\n    return fn.apply(void 0, arguments);\n  };\n}\n\nmodule.exports = {\n  signPamFromParams: signPamFromParams,\n  endsWith: endsWith,\n  createPromise: createPromise,\n  encodeString: encodeString,\n  deprecated: deprecated\n};"},{"id":8,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/config.js","name":"./src/core/components/config.js","index":14,"index2":15,"size":9757,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":18,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","module":"./src/core/components/endpoint.js","moduleName":"./src/core/components/endpoint.js","type":"cjs require","userRequest":"./config","loc":"32:37-56"},{"moduleId":20,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/cryptography/index.js","module":"./src/core/components/cryptography/index.js","moduleName":"./src/core/components/cryptography/index.js","type":"cjs require","userRequest":"../config","loc":"16:37-57"},{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/config","loc":"18:37-67"},{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../components/config","loc":"20:37-68"},{"moduleId":38,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/deduping_manager.js","module":"./src/core/components/deduping_manager.js","moduleName":"./src/core/components/deduping_manager.js","type":"cjs require","userRequest":"../components/config","loc":"16:37-68"},{"moduleId":44,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/token_manager.js","module":"./src/core/components/token_manager.js","moduleName":"./src/core/components/token_manager.js","type":"cjs require","userRequest":"./config","loc":"18:37-56"},{"moduleId":121,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/networking/index.js","module":"./src/networking/index.js","moduleName":"./src/networking/index.js","type":"cjs require","userRequest":"../core/components/config","loc":"16:37-73"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _uuid = _interopRequireDefault(require(\"./uuid\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar PRESENCE_TIMEOUT_MINIMUM = 20;\nvar PRESENCE_TIMEOUT_DEFAULT = 300;\n\nvar _default = function () {\n  function _default(_ref) {\n    var _setup$fileUploadPubl, _setup$useRandomIVs;\n\n    var setup = _ref.setup,\n        db = _ref.db;\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_db\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"subscribeKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"publishKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"secretKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"cipherKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"authKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"UUID\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"proxy\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"instanceId\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"sdkName\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"sdkFamily\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"partnerId\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"filterExpression\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"suppressLeaveEvents\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"secure\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"origin\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"logVerbosity\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"useInstanceId\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"useRequestId\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"keepAlive\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"keepAliveSettings\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"autoNetworkDetection\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"announceSuccessfulHeartbeats\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"announceFailedHeartbeats\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_presenceTimeout\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_heartbeatInterval\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_subscribeRequestTimeout\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_transactionalRequestTimeout\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_useSendBeacon\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_PNSDKSuffix\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"requestMessageCountThreshold\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"restore\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"dedupeOnSubscribe\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"maximumCacheSize\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"customEncrypt\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"customDecrypt\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"fileUploadPublishRetryLimit\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"useRandomIVs\", void 0);\n    this._PNSDKSuffix = {};\n    this._db = db;\n    this.instanceId = \"pn-\".concat(_uuid[\"default\"].createUUID());\n    this.secretKey = setup.secretKey || setup.secret_key;\n    this.subscribeKey = setup.subscribeKey || setup.subscribe_key;\n    this.publishKey = setup.publishKey || setup.publish_key;\n    this.sdkName = setup.sdkName;\n    this.sdkFamily = setup.sdkFamily;\n    this.partnerId = setup.partnerId;\n    this.setAuthKey(setup.authKey);\n    this.setCipherKey(setup.cipherKey);\n    this.setFilterExpression(setup.filterExpression);\n    this.origin = setup.origin || 'ps.pndsn.com';\n    this.secure = setup.ssl || false;\n    this.restore = setup.restore || false;\n    this.proxy = setup.proxy;\n    this.keepAlive = setup.keepAlive;\n    this.keepAliveSettings = setup.keepAliveSettings;\n    this.autoNetworkDetection = setup.autoNetworkDetection || false;\n    this.dedupeOnSubscribe = setup.dedupeOnSubscribe || false;\n    this.maximumCacheSize = setup.maximumCacheSize || 100;\n    this.customEncrypt = setup.customEncrypt;\n    this.customDecrypt = setup.customDecrypt;\n    this.fileUploadPublishRetryLimit = (_setup$fileUploadPubl = setup.fileUploadPublishRetryLimit) !== null && _setup$fileUploadPubl !== void 0 ? _setup$fileUploadPubl : 5;\n    this.useRandomIVs = (_setup$useRandomIVs = setup.useRandomIVs) !== null && _setup$useRandomIVs !== void 0 ? _setup$useRandomIVs : true;\n\n    if (typeof location !== 'undefined' && location.protocol === 'https:') {\n      this.secure = true;\n    }\n\n    this.logVerbosity = setup.logVerbosity || false;\n    this.suppressLeaveEvents = setup.suppressLeaveEvents || false;\n    this.announceFailedHeartbeats = setup.announceFailedHeartbeats || true;\n    this.announceSuccessfulHeartbeats = setup.announceSuccessfulHeartbeats || false;\n    this.useInstanceId = setup.useInstanceId || false;\n    this.useRequestId = setup.useRequestId || false;\n    this.requestMessageCountThreshold = setup.requestMessageCountThreshold;\n    this.setTransactionTimeout(setup.transactionalRequestTimeout || 15 * 1000);\n    this.setSubscribeTimeout(setup.subscribeRequestTimeout || 310 * 1000);\n    this.setSendBeaconConfig(setup.useSendBeacon || true);\n\n    if (setup.presenceTimeout) {\n      this.setPresenceTimeout(setup.presenceTimeout);\n    } else {\n      this._presenceTimeout = PRESENCE_TIMEOUT_DEFAULT;\n    }\n\n    if (setup.heartbeatInterval != null) {\n      this.setHeartbeatInterval(setup.heartbeatInterval);\n    }\n\n    this.setUUID(this._decideUUID(setup.uuid));\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"getAuthKey\",\n    value: function getAuthKey() {\n      return this.authKey;\n    }\n  }, {\n    key: \"setAuthKey\",\n    value: function setAuthKey(val) {\n      this.authKey = val;\n      return this;\n    }\n  }, {\n    key: \"setCipherKey\",\n    value: function setCipherKey(val) {\n      this.cipherKey = val;\n      return this;\n    }\n  }, {\n    key: \"getUUID\",\n    value: function getUUID() {\n      return this.UUID;\n    }\n  }, {\n    key: \"setUUID\",\n    value: function setUUID(val) {\n      if (this._db && this._db.set) this._db.set(\"\".concat(this.subscribeKey, \"uuid\"), val);\n      this.UUID = val;\n      return this;\n    }\n  }, {\n    key: \"getFilterExpression\",\n    value: function getFilterExpression() {\n      return this.filterExpression;\n    }\n  }, {\n    key: \"setFilterExpression\",\n    value: function setFilterExpression(val) {\n      this.filterExpression = val;\n      return this;\n    }\n  }, {\n    key: \"getPresenceTimeout\",\n    value: function getPresenceTimeout() {\n      return this._presenceTimeout;\n    }\n  }, {\n    key: \"setPresenceTimeout\",\n    value: function setPresenceTimeout(val) {\n      if (val >= PRESENCE_TIMEOUT_MINIMUM) {\n        this._presenceTimeout = val;\n      } else {\n        this._presenceTimeout = PRESENCE_TIMEOUT_MINIMUM;\n        console.log('WARNING: Presence timeout is less than the minimum. Using minimum value: ', this._presenceTimeout);\n      }\n\n      this.setHeartbeatInterval(this._presenceTimeout / 2 - 1);\n      return this;\n    }\n  }, {\n    key: \"setProxy\",\n    value: function setProxy(proxy) {\n      this.proxy = proxy;\n    }\n  }, {\n    key: \"getHeartbeatInterval\",\n    value: function getHeartbeatInterval() {\n      return this._heartbeatInterval;\n    }\n  }, {\n    key: \"setHeartbeatInterval\",\n    value: function setHeartbeatInterval(val) {\n      this._heartbeatInterval = val;\n      return this;\n    }\n  }, {\n    key: \"getSubscribeTimeout\",\n    value: function getSubscribeTimeout() {\n      return this._subscribeRequestTimeout;\n    }\n  }, {\n    key: \"setSubscribeTimeout\",\n    value: function setSubscribeTimeout(val) {\n      this._subscribeRequestTimeout = val;\n      return this;\n    }\n  }, {\n    key: \"getTransactionTimeout\",\n    value: function getTransactionTimeout() {\n      return this._transactionalRequestTimeout;\n    }\n  }, {\n    key: \"setTransactionTimeout\",\n    value: function setTransactionTimeout(val) {\n      this._transactionalRequestTimeout = val;\n      return this;\n    }\n  }, {\n    key: \"isSendBeaconEnabled\",\n    value: function isSendBeaconEnabled() {\n      return this._useSendBeacon;\n    }\n  }, {\n    key: \"setSendBeaconConfig\",\n    value: function setSendBeaconConfig(val) {\n      this._useSendBeacon = val;\n      return this;\n    }\n  }, {\n    key: \"getVersion\",\n    value: function getVersion() {\n      return '4.32.1';\n    }\n  }, {\n    key: \"_addPnsdkSuffix\",\n    value: function _addPnsdkSuffix(name, suffix) {\n      this._PNSDKSuffix[name] = suffix;\n    }\n  }, {\n    key: \"_getPnsdkSuffix\",\n    value: function _getPnsdkSuffix(separator) {\n      var _this = this;\n\n      return Object.keys(this._PNSDKSuffix).reduce(function (result, key) {\n        return result + separator + _this._PNSDKSuffix[key];\n      }, '');\n    }\n  }, {\n    key: \"_decideUUID\",\n    value: function _decideUUID(providedUUID) {\n      if (providedUUID) {\n        return providedUUID;\n      }\n\n      if (this._db && this._db.get && this._db.get(\"\".concat(this.subscribeKey, \"uuid\"))) {\n        return this._db.get(\"\".concat(this.subscribeKey, \"uuid\"));\n      }\n\n      return \"pn-\".concat(_uuid[\"default\"].createUUID());\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":10,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/constants/categories.js","name":"./src/core/constants/categories.js","index":27,"index2":23,"size":704,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":18,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","module":"./src/core/components/endpoint.js","moduleName":"./src/core/components/endpoint.js","type":"cjs require","userRequest":"../constants/categories","loc":"36:41-75"},{"moduleId":23,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/listener_manager.js","module":"./src/core/components/listener_manager.js","moduleName":"./src/core/components/listener_manager.js","type":"cjs require","userRequest":"../constants/categories","loc":"18:41-75"},{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./constants/categories","loc":"174:41-74"},{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../constants/categories","loc":"32:41-75"},{"moduleId":121,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/networking/index.js","module":"./src/networking/index.js","moduleName":"./src/networking/index.js","type":"cjs require","userRequest":"../core/constants/categories","loc":"18:41-80"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\nvar _default = {\n  PNNetworkUpCategory: 'PNNetworkUpCategory',\n  PNNetworkDownCategory: 'PNNetworkDownCategory',\n  PNNetworkIssuesCategory: 'PNNetworkIssuesCategory',\n  PNTimeoutCategory: 'PNTimeoutCategory',\n  PNBadRequestCategory: 'PNBadRequestCategory',\n  PNAccessDeniedCategory: 'PNAccessDeniedCategory',\n  PNUnknownCategory: 'PNUnknownCategory',\n  PNReconnectedCategory: 'PNReconnectedCategory',\n  PNConnectedCategory: 'PNConnectedCategory',\n  PNRequestMessageCountExceededCategory: 'PNRequestMessageCountExceededCategory'\n};\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":17,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/uuid.js","name":"./src/core/components/uuid.js","index":15,"index2":13,"size":521,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":8,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/config.js","module":"./src/core/components/config.js","moduleName":"./src/core/components/config.js","type":"cjs require","userRequest":"./uuid","loc":"16:35-52"},{"moduleId":18,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","module":"./src/core/components/endpoint.js","moduleName":"./src/core/components/endpoint.js","type":"cjs require","userRequest":"./uuid","loc":"26:35-52"},{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/uuid","loc":"178:35-63"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _lilUuid = _interopRequireDefault(require(\"lil-uuid\"));\n\nvar _default = {\n  createUUID: function createUUID() {\n    if (_lilUuid[\"default\"].uuid) {\n      return _lilUuid[\"default\"].uuid();\n    } else {\n      return (0, _lilUuid[\"default\"])();\n    }\n  }\n};\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":18,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/endpoint.js","name":"./src/core/components/endpoint.js","index":39,"index2":41,"size":12038,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/endpoint","loc":"32:39-71"},{"moduleId":71,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/send_file.js","module":"./src/core/endpoints/file_upload/send_file.js","moduleName":"./src/core/endpoints/file_upload/send_file.js","type":"cjs require","userRequest":"../../components/endpoint","loc":"14:16-52"},{"moduleId":73,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/get_file_url.js","module":"./src/core/endpoints/file_upload/get_file_url.js","moduleName":"./src/core/endpoints/file_upload/get_file_url.js","type":"cjs require","userRequest":"../../components/endpoint","loc":"10:16-52"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.createValidationError = createValidationError;\nexports.generatePNSDK = generatePNSDK;\nexports.signRequest = signRequest;\nexports[\"default\"] = _default;\nexports.PubNubError = void 0;\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _inherits2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inherits\"));\n\nvar _possibleConstructorReturn2 = _interopRequireDefault(require(\"@babel/runtime/helpers/possibleConstructorReturn\"));\n\nvar _getPrototypeOf2 = _interopRequireDefault(require(\"@babel/runtime/helpers/getPrototypeOf\"));\n\nvar _wrapNativeSuper2 = _interopRequireDefault(require(\"@babel/runtime/helpers/wrapNativeSuper\"));\n\nvar _uuid = _interopRequireDefault(require(\"./uuid\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _utils = _interopRequireDefault(require(\"../utils\"));\n\nvar _config = _interopRequireDefault(require(\"./config\"));\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nvar _categories = _interopRequireDefault(require(\"../constants/categories\"));\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2[\"default\"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2[\"default\"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2[\"default\"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2[\"default\"])(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nvar PubNubError = function (_Error) {\n  (0, _inherits2[\"default\"])(PubNubError, _Error);\n\n  var _super = _createSuper(PubNubError);\n\n  function PubNubError(message, status) {\n    var _this;\n\n    (0, _classCallCheck2[\"default\"])(this, PubNubError);\n    _this = _super.call(this, message);\n    _this.name = _this.constructor.name;\n    _this.status = status;\n    _this.message = message;\n    return _this;\n  }\n\n  return PubNubError;\n}((0, _wrapNativeSuper2[\"default\"])(Error));\n\nexports.PubNubError = PubNubError;\n\nfunction createError(errorPayload, type) {\n  errorPayload.type = type;\n  errorPayload.error = true;\n  return errorPayload;\n}\n\nfunction createValidationError(message) {\n  return createError({\n    message: message\n  }, 'validationError');\n}\n\nfunction decideURL(endpoint, modules, incomingParams) {\n  if (endpoint.usePost && endpoint.usePost(modules, incomingParams)) {\n    return endpoint.postURL(modules, incomingParams);\n  } else if (endpoint.usePatch && endpoint.usePatch(modules, incomingParams)) {\n    return endpoint.patchURL(modules, incomingParams);\n  } else if (endpoint.useGetFile && endpoint.useGetFile(modules, incomingParams)) {\n    return endpoint.getFileURL(modules, incomingParams);\n  } else {\n    return endpoint.getURL(modules, incomingParams);\n  }\n}\n\nfunction getAuthToken(endpoint, modules, incomingParams) {\n  var token;\n\n  if (endpoint.getAuthToken) {\n    token = endpoint.getAuthToken(modules, incomingParams);\n  }\n\n  return token;\n}\n\nfunction generatePNSDK(config) {\n  if (config.sdkName) {\n    return config.sdkName;\n  }\n\n  var base = \"PubNub-JS-\".concat(config.sdkFamily);\n\n  if (config.partnerId) {\n    base += \"-\".concat(config.partnerId);\n  }\n\n  base += \"/\".concat(config.getVersion());\n\n  var pnsdkSuffix = config._getPnsdkSuffix(' ');\n\n  if (pnsdkSuffix.length > 0) {\n    base += pnsdkSuffix;\n  }\n\n  return base;\n}\n\nfunction getHttpMethod(modules, endpoint, incomingParams) {\n  if (endpoint.usePost && endpoint.usePost(modules, incomingParams)) {\n    return 'POST';\n  } else if (endpoint.usePatch && endpoint.usePatch(modules, incomingParams)) {\n    return 'PATCH';\n  } else if (endpoint.useDelete && endpoint.useDelete(modules, incomingParams)) {\n    return 'DELETE';\n  } else if (endpoint.useGetFile && endpoint.useGetFile(modules, incomingParams)) {\n    return 'GETFILE';\n  } else {\n    return 'GET';\n  }\n}\n\nfunction signRequest(modules, url, outgoingParams, incomingParams, endpoint) {\n  var config = modules.config,\n      crypto = modules.crypto;\n  var httpMethod = getHttpMethod(modules, endpoint, incomingParams);\n  outgoingParams.timestamp = Math.floor(new Date().getTime() / 1000);\n\n  if (endpoint.getOperation() === 'PNPublishOperation' && endpoint.usePost && endpoint.usePost(modules, incomingParams)) {\n    httpMethod = 'GET';\n  }\n\n  if (httpMethod === 'GETFILE') {\n    httpMethod = 'GET';\n  }\n\n  var signInput = \"\".concat(httpMethod, \"\\n\").concat(config.publishKey, \"\\n\").concat(url, \"\\n\").concat(_utils[\"default\"].signPamFromParams(outgoingParams), \"\\n\");\n\n  if (httpMethod === 'POST') {\n    var payload = endpoint.postPayload(modules, incomingParams);\n\n    if (typeof payload === 'string') {\n      signInput += payload;\n    } else {\n      signInput += JSON.stringify(payload);\n    }\n  } else if (httpMethod === 'PATCH') {\n    var _payload = endpoint.patchPayload(modules, incomingParams);\n\n    if (typeof _payload === 'string') {\n      signInput += _payload;\n    } else {\n      signInput += JSON.stringify(_payload);\n    }\n  }\n\n  var signature = \"v2.\".concat(crypto.HMACSHA256(signInput));\n  signature = signature.replace(/\\+/g, '-');\n  signature = signature.replace(/\\//g, '_');\n  signature = signature.replace(/=+$/, '');\n  outgoingParams.signature = signature;\n}\n\nfunction _default(modules, endpoint) {\n  var networking = modules.networking,\n      config = modules.config,\n      telemetryManager = modules.telemetryManager;\n\n  var requestId = _uuid[\"default\"].createUUID();\n\n  var callback = null;\n  var promiseComponent = null;\n  var incomingParams = {};\n\n  if (endpoint.getOperation() === _operations[\"default\"].PNTimeOperation || endpoint.getOperation() === _operations[\"default\"].PNChannelGroupsOperation) {\n    callback = arguments.length <= 2 ? undefined : arguments[2];\n  } else {\n    incomingParams = arguments.length <= 2 ? undefined : arguments[2];\n    callback = arguments.length <= 3 ? undefined : arguments[3];\n  }\n\n  if (typeof Promise !== 'undefined' && !callback) {\n    promiseComponent = _utils[\"default\"].createPromise();\n  }\n\n  var validationResult = endpoint.validateParams(modules, incomingParams);\n\n  if (validationResult) {\n    if (callback) {\n      return callback(createValidationError(validationResult));\n    } else if (promiseComponent) {\n      promiseComponent.reject(new PubNubError('Validation failed, check status for details', createValidationError(validationResult)));\n      return promiseComponent.promise;\n    }\n\n    return;\n  }\n\n  var outgoingParams = endpoint.prepareParams(modules, incomingParams);\n  var url = decideURL(endpoint, modules, incomingParams);\n  var callInstance;\n  var networkingParams = {\n    url: url,\n    operation: endpoint.getOperation(),\n    timeout: endpoint.getRequestTimeout(modules),\n    headers: endpoint.getRequestHeaders ? endpoint.getRequestHeaders() : {},\n    ignoreBody: typeof endpoint.ignoreBody === 'function' ? endpoint.ignoreBody(modules) : false,\n    forceBuffered: typeof endpoint.forceBuffered === 'function' ? endpoint.forceBuffered(modules, incomingParams) : null\n  };\n  outgoingParams.uuid = config.UUID;\n  outgoingParams.pnsdk = generatePNSDK(config);\n  var telemetryLatencies = telemetryManager.operationsLatencyForRequest();\n\n  if (Object.keys(telemetryLatencies).length) {\n    outgoingParams = _objectSpread(_objectSpread({}, outgoingParams), telemetryLatencies);\n  }\n\n  if (config.useInstanceId) {\n    outgoingParams.instanceid = config.instanceId;\n  }\n\n  if (config.useRequestId) {\n    outgoingParams.requestid = requestId;\n  }\n\n  if (endpoint.isAuthSupported()) {\n    var token = getAuthToken(endpoint, modules, incomingParams);\n    var tokenOrKey = token || config.getAuthKey();\n\n    if (tokenOrKey) {\n      outgoingParams.auth = tokenOrKey;\n    }\n  }\n\n  if (config.secretKey) {\n    signRequest(modules, url, outgoingParams, incomingParams, endpoint);\n  }\n\n  var onResponse = function onResponse(status, payload) {\n    var _responseP;\n\n    if (status.error) {\n      if (endpoint.handleError) {\n        endpoint.handleError(modules, incomingParams, status);\n      }\n\n      if (callback) {\n        callback(status);\n      } else if (promiseComponent) {\n        promiseComponent.reject(new PubNubError('PubNub call failed, check status for details', status));\n      }\n\n      return;\n    }\n\n    telemetryManager.stopLatencyMeasure(endpoint.getOperation(), requestId);\n    var responseP = endpoint.handleResponse(modules, payload, incomingParams);\n\n    if (typeof ((_responseP = responseP) === null || _responseP === void 0 ? void 0 : _responseP.then) !== 'function') {\n      responseP = Promise.resolve(responseP);\n    }\n\n    responseP.then(function (result) {\n      if (callback) {\n        callback(status, result);\n      } else if (promiseComponent) {\n        promiseComponent.fulfill(result);\n      }\n    })[\"catch\"](function (e) {\n      if (callback) {\n        var errorData = e;\n\n        if (endpoint.getOperation() === _operations[\"default\"].PNSubscribeOperation) {\n          errorData = {\n            statusCode: 400,\n            error: true,\n            operation: endpoint.getOperation(),\n            errorData: e,\n            category: _categories[\"default\"].PNUnknownCategory\n          };\n        }\n\n        callback(errorData, null);\n      } else if (promiseComponent) {\n        promiseComponent.reject(new PubNubError('PubNub call failed, check status for details', e));\n      }\n    });\n  };\n\n  telemetryManager.startLatencyMeasure(endpoint.getOperation(), requestId);\n\n  if (getHttpMethod(modules, endpoint, incomingParams) === 'POST') {\n    var payload = endpoint.postPayload(modules, incomingParams);\n    callInstance = networking.POST(outgoingParams, payload, networkingParams, onResponse);\n  } else if (getHttpMethod(modules, endpoint, incomingParams) === 'PATCH') {\n    var _payload2 = endpoint.patchPayload(modules, incomingParams);\n\n    callInstance = networking.PATCH(outgoingParams, _payload2, networkingParams, onResponse);\n  } else if (getHttpMethod(modules, endpoint, incomingParams) === 'DELETE') {\n    callInstance = networking.DELETE(outgoingParams, networkingParams, onResponse);\n  } else if (getHttpMethod(modules, endpoint, incomingParams) === 'GETFILE') {\n    callInstance = networking.GETFILE(outgoingParams, networkingParams, onResponse);\n  } else {\n    callInstance = networking.GET(outgoingParams, networkingParams, onResponse);\n  }\n\n  if (endpoint.getOperation() === _operations[\"default\"].PNSubscribeOperation) {\n    return callInstance;\n  }\n\n  if (promiseComponent) {\n    return promiseComponent.promise;\n  }\n}"},{"id":20,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/cryptography/index.js","name":"./src/core/components/cryptography/index.js","index":18,"index2":22,"size":7342,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/cryptography/index","loc":"20:36-78"},{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../components/cryptography","loc":"18:43-80"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _config = _interopRequireDefault(require(\"../config\"));\n\nvar _hmacSha = _interopRequireDefault(require(\"./hmac-sha256\"));\n\nfunction bufferToWordArray(b) {\n  var wa = [];\n  var i;\n\n  for (i = 0; i < b.length; i += 1) {\n    wa[i / 4 | 0] |= b[i] << 24 - 8 * i;\n  }\n\n  return _hmacSha[\"default\"].lib.WordArray.create(wa, b.length);\n}\n\nvar _default = function () {\n  function _default(_ref) {\n    var config = _ref.config;\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_config\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_iv\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_allowedKeyEncodings\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_allowedKeyLengths\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_allowedModes\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_defaultOptions\", void 0);\n    this._config = config;\n    this._iv = '0123456789012345';\n    this._allowedKeyEncodings = ['hex', 'utf8', 'base64', 'binary'];\n    this._allowedKeyLengths = [128, 256];\n    this._allowedModes = ['ecb', 'cbc'];\n    this._defaultOptions = {\n      encryptKey: true,\n      keyEncoding: 'utf8',\n      keyLength: 256,\n      mode: 'cbc'\n    };\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"HMACSHA256\",\n    value: function HMACSHA256(data) {\n      var hash = _hmacSha[\"default\"].HmacSHA256(data, this._config.secretKey);\n\n      return hash.toString(_hmacSha[\"default\"].enc.Base64);\n    }\n  }, {\n    key: \"SHA256\",\n    value: function SHA256(s) {\n      return _hmacSha[\"default\"].SHA256(s).toString(_hmacSha[\"default\"].enc.Hex);\n    }\n  }, {\n    key: \"_parseOptions\",\n    value: function _parseOptions(incomingOptions) {\n      var options = incomingOptions || {};\n      if (!options.hasOwnProperty('encryptKey')) options.encryptKey = this._defaultOptions.encryptKey;\n      if (!options.hasOwnProperty('keyEncoding')) options.keyEncoding = this._defaultOptions.keyEncoding;\n      if (!options.hasOwnProperty('keyLength')) options.keyLength = this._defaultOptions.keyLength;\n      if (!options.hasOwnProperty('mode')) options.mode = this._defaultOptions.mode;\n\n      if (this._allowedKeyEncodings.indexOf(options.keyEncoding.toLowerCase()) === -1) {\n        options.keyEncoding = this._defaultOptions.keyEncoding;\n      }\n\n      if (this._allowedKeyLengths.indexOf(parseInt(options.keyLength, 10)) === -1) {\n        options.keyLength = this._defaultOptions.keyLength;\n      }\n\n      if (this._allowedModes.indexOf(options.mode.toLowerCase()) === -1) {\n        options.mode = this._defaultOptions.mode;\n      }\n\n      return options;\n    }\n  }, {\n    key: \"_decodeKey\",\n    value: function _decodeKey(key, options) {\n      if (options.keyEncoding === 'base64') {\n        return _hmacSha[\"default\"].enc.Base64.parse(key);\n      } else if (options.keyEncoding === 'hex') {\n        return _hmacSha[\"default\"].enc.Hex.parse(key);\n      } else {\n        return key;\n      }\n    }\n  }, {\n    key: \"_getPaddedKey\",\n    value: function _getPaddedKey(key, options) {\n      key = this._decodeKey(key, options);\n\n      if (options.encryptKey) {\n        return _hmacSha[\"default\"].enc.Utf8.parse(this.SHA256(key).slice(0, 32));\n      } else {\n        return key;\n      }\n    }\n  }, {\n    key: \"_getMode\",\n    value: function _getMode(options) {\n      if (options.mode === 'ecb') {\n        return _hmacSha[\"default\"].mode.ECB;\n      } else {\n        return _hmacSha[\"default\"].mode.CBC;\n      }\n    }\n  }, {\n    key: \"_getIV\",\n    value: function _getIV(options) {\n      return options.mode === 'cbc' ? _hmacSha[\"default\"].enc.Utf8.parse(this._iv) : null;\n    }\n  }, {\n    key: \"_getRandomIV\",\n    value: function _getRandomIV() {\n      return _hmacSha[\"default\"].lib.WordArray.random(16);\n    }\n  }, {\n    key: \"encrypt\",\n    value: function encrypt(data, customCipherKey, options) {\n      if (this._config.customEncrypt) {\n        return this._config.customEncrypt(data);\n      } else {\n        return this.pnEncrypt(data, customCipherKey, options);\n      }\n    }\n  }, {\n    key: \"decrypt\",\n    value: function decrypt(data, customCipherKey, options) {\n      if (this._config.customDecrypt) {\n        return this._config.customDecrypt(data);\n      } else {\n        return this.pnDecrypt(data, customCipherKey, options);\n      }\n    }\n  }, {\n    key: \"pnEncrypt\",\n    value: function pnEncrypt(data, customCipherKey, options) {\n      if (!customCipherKey && !this._config.cipherKey) return data;\n      options = this._parseOptions(options);\n\n      var mode = this._getMode(options);\n\n      var cipherKey = this._getPaddedKey(customCipherKey || this._config.cipherKey, options);\n\n      if (this._config.useRandomIVs) {\n        var waIv = this._getRandomIV();\n\n        var waPayload = _hmacSha[\"default\"].AES.encrypt(data, cipherKey, {\n          iv: waIv,\n          mode: mode\n        }).ciphertext;\n\n        return waIv.clone().concat(waPayload.clone()).toString(_hmacSha[\"default\"].enc.Base64);\n      } else {\n        var iv = this._getIV(options);\n\n        var encryptedHexArray = _hmacSha[\"default\"].AES.encrypt(data, cipherKey, {\n          iv: iv,\n          mode: mode\n        }).ciphertext;\n\n        var base64Encrypted = encryptedHexArray.toString(_hmacSha[\"default\"].enc.Base64);\n        return base64Encrypted || data;\n      }\n    }\n  }, {\n    key: \"pnDecrypt\",\n    value: function pnDecrypt(data, customCipherKey, options) {\n      if (!customCipherKey && !this._config.cipherKey) return data;\n      options = this._parseOptions(options);\n\n      var mode = this._getMode(options);\n\n      var cipherKey = this._getPaddedKey(customCipherKey || this._config.cipherKey, options);\n\n      if (this._config.useRandomIVs) {\n        var ciphertext = Buffer.from(data, 'base64');\n        var iv = bufferToWordArray(ciphertext.slice(0, 16));\n        var payload = bufferToWordArray(ciphertext.slice(16));\n\n        try {\n          var plainJSON = _hmacSha[\"default\"].AES.decrypt({\n            ciphertext: payload\n          }, cipherKey, {\n            iv: iv,\n            mode: mode\n          }).toString(_hmacSha[\"default\"].enc.Utf8);\n\n          var plaintext = JSON.parse(plainJSON);\n          return plaintext;\n        } catch (e) {\n          return null;\n        }\n      } else {\n        var _iv = this._getIV(options);\n\n        try {\n          var _ciphertext = _hmacSha[\"default\"].enc.Base64.parse(data);\n\n          var _plainJSON = _hmacSha[\"default\"].AES.decrypt({\n            ciphertext: _ciphertext\n          }, cipherKey, {\n            iv: _iv,\n            mode: mode\n          }).toString(_hmacSha[\"default\"].enc.Utf8);\n\n          var _plaintext = JSON.parse(_plainJSON);\n\n          return _plaintext;\n        } catch (e) {\n          return null;\n        }\n      }\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":22,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/cryptography/hmac-sha256.js","name":"./src/core/components/cryptography/hmac-sha256.js","index":24,"index2":21,"size":25476,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":20,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/cryptography/index.js","module":"./src/core/components/cryptography/index.js","moduleName":"./src/core/components/cryptography/index.js","type":"cjs require","userRequest":"./hmac-sha256","loc":"18:38-62"},{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../core/components/cryptography/hmac-sha256","loc":"26:38-92"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar CryptoJS = CryptoJS || function (h, s) {\n  var f = {},\n      g = f.lib = {},\n      q = function q() {},\n      m = g.Base = {\n    extend: function extend(a) {\n      q.prototype = this;\n      var c = new q();\n      a && c.mixIn(a);\n      c.hasOwnProperty(\"init\") || (c.init = function () {\n        c.$super.init.apply(this, arguments);\n      });\n      c.init.prototype = c;\n      c.$super = this;\n      return c;\n    },\n    create: function create() {\n      var a = this.extend();\n      a.init.apply(a, arguments);\n      return a;\n    },\n    init: function init() {},\n    mixIn: function mixIn(a) {\n      for (var c in a) {\n        a.hasOwnProperty(c) && (this[c] = a[c]);\n      }\n\n      a.hasOwnProperty(\"toString\") && (this.toString = a.toString);\n    },\n    clone: function clone() {\n      return this.init.prototype.extend(this);\n    }\n  },\n      r = g.WordArray = m.extend({\n    init: function init(a, c) {\n      a = this.words = a || [];\n      this.sigBytes = c != s ? c : 4 * a.length;\n    },\n    toString: function toString(a) {\n      return (a || k).stringify(this);\n    },\n    concat: function concat(a) {\n      var c = this.words,\n          d = a.words,\n          b = this.sigBytes;\n      a = a.sigBytes;\n      this.clamp();\n      if (b % 4) for (var e = 0; e < a; e++) {\n        c[b + e >>> 2] |= (d[e >>> 2] >>> 24 - 8 * (e % 4) & 255) << 24 - 8 * ((b + e) % 4);\n      } else if (65535 < d.length) for (e = 0; e < a; e += 4) {\n        c[b + e >>> 2] = d[e >>> 2];\n      } else c.push.apply(c, d);\n      this.sigBytes += a;\n      return this;\n    },\n    clamp: function clamp() {\n      var a = this.words,\n          c = this.sigBytes;\n      a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n      a.length = h.ceil(c / 4);\n    },\n    clone: function clone() {\n      var a = m.clone.call(this);\n      a.words = this.words.slice(0);\n      return a;\n    },\n    random: function random(a) {\n      for (var c = [], d = 0; d < a; d += 4) {\n        c.push(4294967296 * h.random() | 0);\n      }\n\n      return new r.init(c, a);\n    }\n  }),\n      l = f.enc = {},\n      k = l.Hex = {\n    stringify: function stringify(a) {\n      var c = a.words;\n      a = a.sigBytes;\n\n      for (var d = [], b = 0; b < a; b++) {\n        var e = c[b >>> 2] >>> 24 - 8 * (b % 4) & 255;\n        d.push((e >>> 4).toString(16));\n        d.push((e & 15).toString(16));\n      }\n\n      return d.join(\"\");\n    },\n    parse: function parse(a) {\n      for (var c = a.length, d = [], b = 0; b < c; b += 2) {\n        d[b >>> 3] |= parseInt(a.substr(b, 2), 16) << 24 - 4 * (b % 8);\n      }\n\n      return new r.init(d, c / 2);\n    }\n  },\n      n = l.Latin1 = {\n    stringify: function stringify(a) {\n      var c = a.words;\n      a = a.sigBytes;\n\n      for (var d = [], b = 0; b < a; b++) {\n        d.push(String.fromCharCode(c[b >>> 2] >>> 24 - 8 * (b % 4) & 255));\n      }\n\n      return d.join(\"\");\n    },\n    parse: function parse(a) {\n      for (var c = a.length, d = [], b = 0; b < c; b++) {\n        d[b >>> 2] |= (a.charCodeAt(b) & 255) << 24 - 8 * (b % 4);\n      }\n\n      return new r.init(d, c);\n    }\n  },\n      j = l.Utf8 = {\n    stringify: function stringify(a) {\n      try {\n        return decodeURIComponent(escape(n.stringify(a)));\n      } catch (c) {\n        throw Error(\"Malformed UTF-8 data\");\n      }\n    },\n    parse: function parse(a) {\n      return n.parse(unescape(encodeURIComponent(a)));\n    }\n  },\n      u = g.BufferedBlockAlgorithm = m.extend({\n    reset: function reset() {\n      this._data = new r.init();\n      this._nDataBytes = 0;\n    },\n    _append: function _append(a) {\n      \"string\" == typeof a && (a = j.parse(a));\n\n      this._data.concat(a);\n\n      this._nDataBytes += a.sigBytes;\n    },\n    _process: function _process(a) {\n      var c = this._data,\n          d = c.words,\n          b = c.sigBytes,\n          e = this.blockSize,\n          f = b / (4 * e),\n          f = a ? h.ceil(f) : h.max((f | 0) - this._minBufferSize, 0);\n      a = f * e;\n      b = h.min(4 * a, b);\n\n      if (a) {\n        for (var g = 0; g < a; g += e) {\n          this._doProcessBlock(d, g);\n        }\n\n        g = d.splice(0, a);\n        c.sigBytes -= b;\n      }\n\n      return new r.init(g, b);\n    },\n    clone: function clone() {\n      var a = m.clone.call(this);\n      a._data = this._data.clone();\n      return a;\n    },\n    _minBufferSize: 0\n  });\n\n  g.Hasher = u.extend({\n    cfg: m.extend(),\n    init: function init(a) {\n      this.cfg = this.cfg.extend(a);\n      this.reset();\n    },\n    reset: function reset() {\n      u.reset.call(this);\n\n      this._doReset();\n    },\n    update: function update(a) {\n      this._append(a);\n\n      this._process();\n\n      return this;\n    },\n    finalize: function finalize(a) {\n      a && this._append(a);\n      return this._doFinalize();\n    },\n    blockSize: 16,\n    _createHelper: function _createHelper(a) {\n      return function (c, d) {\n        return new a.init(d).finalize(c);\n      };\n    },\n    _createHmacHelper: function _createHmacHelper(a) {\n      return function (c, d) {\n        return new t.HMAC.init(a, d).finalize(c);\n      };\n    }\n  });\n  var t = f.algo = {};\n  return f;\n}(Math);\n\n(function (h) {\n  for (var s = CryptoJS, f = s.lib, g = f.WordArray, q = f.Hasher, f = s.algo, m = [], r = [], l = function l(a) {\n    return 4294967296 * (a - (a | 0)) | 0;\n  }, k = 2, n = 0; 64 > n;) {\n    var j;\n\n    a: {\n      j = k;\n\n      for (var u = h.sqrt(j), t = 2; t <= u; t++) {\n        if (!(j % t)) {\n          j = !1;\n          break a;\n        }\n      }\n\n      j = !0;\n    }\n\n    j && (8 > n && (m[n] = l(h.pow(k, 0.5))), r[n] = l(h.pow(k, 1 / 3)), n++);\n    k++;\n  }\n\n  var a = [],\n      f = f.SHA256 = q.extend({\n    _doReset: function _doReset() {\n      this._hash = new g.init(m.slice(0));\n    },\n    _doProcessBlock: function _doProcessBlock(c, d) {\n      for (var b = this._hash.words, e = b[0], f = b[1], g = b[2], j = b[3], h = b[4], m = b[5], n = b[6], q = b[7], p = 0; 64 > p; p++) {\n        if (16 > p) a[p] = c[d + p] | 0;else {\n          var k = a[p - 15],\n              l = a[p - 2];\n          a[p] = ((k << 25 | k >>> 7) ^ (k << 14 | k >>> 18) ^ k >>> 3) + a[p - 7] + ((l << 15 | l >>> 17) ^ (l << 13 | l >>> 19) ^ l >>> 10) + a[p - 16];\n        }\n        k = q + ((h << 26 | h >>> 6) ^ (h << 21 | h >>> 11) ^ (h << 7 | h >>> 25)) + (h & m ^ ~h & n) + r[p] + a[p];\n        l = ((e << 30 | e >>> 2) ^ (e << 19 | e >>> 13) ^ (e << 10 | e >>> 22)) + (e & f ^ e & g ^ f & g);\n        q = n;\n        n = m;\n        m = h;\n        h = j + k | 0;\n        j = g;\n        g = f;\n        f = e;\n        e = k + l | 0;\n      }\n\n      b[0] = b[0] + e | 0;\n      b[1] = b[1] + f | 0;\n      b[2] = b[2] + g | 0;\n      b[3] = b[3] + j | 0;\n      b[4] = b[4] + h | 0;\n      b[5] = b[5] + m | 0;\n      b[6] = b[6] + n | 0;\n      b[7] = b[7] + q | 0;\n    },\n    _doFinalize: function _doFinalize() {\n      var a = this._data,\n          d = a.words,\n          b = 8 * this._nDataBytes,\n          e = 8 * a.sigBytes;\n      d[e >>> 5] |= 128 << 24 - e % 32;\n      d[(e + 64 >>> 9 << 4) + 14] = h.floor(b / 4294967296);\n      d[(e + 64 >>> 9 << 4) + 15] = b;\n      a.sigBytes = 4 * d.length;\n\n      this._process();\n\n      return this._hash;\n    },\n    clone: function clone() {\n      var a = q.clone.call(this);\n      a._hash = this._hash.clone();\n      return a;\n    }\n  });\n  s.SHA256 = q._createHelper(f);\n  s.HmacSHA256 = q._createHmacHelper(f);\n})(Math);\n\n(function () {\n  var h = CryptoJS,\n      s = h.enc.Utf8;\n  h.algo.HMAC = h.lib.Base.extend({\n    init: function init(f, g) {\n      f = this._hasher = new f.init();\n      \"string\" == typeof g && (g = s.parse(g));\n      var h = f.blockSize,\n          m = 4 * h;\n      g.sigBytes > m && (g = f.finalize(g));\n      g.clamp();\n\n      for (var r = this._oKey = g.clone(), l = this._iKey = g.clone(), k = r.words, n = l.words, j = 0; j < h; j++) {\n        k[j] ^= 1549556828, n[j] ^= 909522486;\n      }\n\n      r.sigBytes = l.sigBytes = m;\n      this.reset();\n    },\n    reset: function reset() {\n      var f = this._hasher;\n      f.reset();\n      f.update(this._iKey);\n    },\n    update: function update(f) {\n      this._hasher.update(f);\n\n      return this;\n    },\n    finalize: function finalize(f) {\n      var g = this._hasher;\n      f = g.finalize(f);\n      g.reset();\n      return g.finalize(this._oKey.clone().concat(f));\n    }\n  });\n})();\n\n(function () {\n  var u = CryptoJS,\n      p = u.lib.WordArray;\n  u.enc.Base64 = {\n    stringify: function stringify(d) {\n      var l = d.words,\n          p = d.sigBytes,\n          t = this._map;\n      d.clamp();\n      d = [];\n\n      for (var r = 0; r < p; r += 3) {\n        for (var w = (l[r >>> 2] >>> 24 - 8 * (r % 4) & 255) << 16 | (l[r + 1 >>> 2] >>> 24 - 8 * ((r + 1) % 4) & 255) << 8 | l[r + 2 >>> 2] >>> 24 - 8 * ((r + 2) % 4) & 255, v = 0; 4 > v && r + 0.75 * v < p; v++) {\n          d.push(t.charAt(w >>> 6 * (3 - v) & 63));\n        }\n      }\n\n      if (l = t.charAt(64)) for (; d.length % 4;) {\n        d.push(l);\n      }\n      return d.join(\"\");\n    },\n    parse: function parse(d) {\n      var l = d.length,\n          s = this._map,\n          t = s.charAt(64);\n      t && (t = d.indexOf(t), -1 != t && (l = t));\n\n      for (var t = [], r = 0, w = 0; w < l; w++) {\n        if (w % 4) {\n          var v = s.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n              b = s.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n          t[r >>> 2] |= (v | b) << 24 - 8 * (r % 4);\n          r++;\n        }\n      }\n\n      return p.create(t, r);\n    },\n    _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n  };\n})();\n\n(function (u) {\n  function p(b, n, a, c, e, j, k) {\n    b = b + (n & a | ~n & c) + e + k;\n    return (b << j | b >>> 32 - j) + n;\n  }\n\n  function d(b, n, a, c, e, j, k) {\n    b = b + (n & c | a & ~c) + e + k;\n    return (b << j | b >>> 32 - j) + n;\n  }\n\n  function l(b, n, a, c, e, j, k) {\n    b = b + (n ^ a ^ c) + e + k;\n    return (b << j | b >>> 32 - j) + n;\n  }\n\n  function s(b, n, a, c, e, j, k) {\n    b = b + (a ^ (n | ~c)) + e + k;\n    return (b << j | b >>> 32 - j) + n;\n  }\n\n  for (var t = CryptoJS, r = t.lib, w = r.WordArray, v = r.Hasher, r = t.algo, b = [], x = 0; 64 > x; x++) {\n    b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n  }\n\n  r = r.MD5 = v.extend({\n    _doReset: function _doReset() {\n      this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878]);\n    },\n    _doProcessBlock: function _doProcessBlock(q, n) {\n      for (var a = 0; 16 > a; a++) {\n        var c = n + a,\n            e = q[c];\n        q[c] = (e << 8 | e >>> 24) & 16711935 | (e << 24 | e >>> 8) & 4278255360;\n      }\n\n      var a = this._hash.words,\n          c = q[n + 0],\n          e = q[n + 1],\n          j = q[n + 2],\n          k = q[n + 3],\n          z = q[n + 4],\n          r = q[n + 5],\n          t = q[n + 6],\n          w = q[n + 7],\n          v = q[n + 8],\n          A = q[n + 9],\n          B = q[n + 10],\n          C = q[n + 11],\n          u = q[n + 12],\n          D = q[n + 13],\n          E = q[n + 14],\n          x = q[n + 15],\n          f = a[0],\n          m = a[1],\n          g = a[2],\n          h = a[3],\n          f = p(f, m, g, h, c, 7, b[0]),\n          h = p(h, f, m, g, e, 12, b[1]),\n          g = p(g, h, f, m, j, 17, b[2]),\n          m = p(m, g, h, f, k, 22, b[3]),\n          f = p(f, m, g, h, z, 7, b[4]),\n          h = p(h, f, m, g, r, 12, b[5]),\n          g = p(g, h, f, m, t, 17, b[6]),\n          m = p(m, g, h, f, w, 22, b[7]),\n          f = p(f, m, g, h, v, 7, b[8]),\n          h = p(h, f, m, g, A, 12, b[9]),\n          g = p(g, h, f, m, B, 17, b[10]),\n          m = p(m, g, h, f, C, 22, b[11]),\n          f = p(f, m, g, h, u, 7, b[12]),\n          h = p(h, f, m, g, D, 12, b[13]),\n          g = p(g, h, f, m, E, 17, b[14]),\n          m = p(m, g, h, f, x, 22, b[15]),\n          f = d(f, m, g, h, e, 5, b[16]),\n          h = d(h, f, m, g, t, 9, b[17]),\n          g = d(g, h, f, m, C, 14, b[18]),\n          m = d(m, g, h, f, c, 20, b[19]),\n          f = d(f, m, g, h, r, 5, b[20]),\n          h = d(h, f, m, g, B, 9, b[21]),\n          g = d(g, h, f, m, x, 14, b[22]),\n          m = d(m, g, h, f, z, 20, b[23]),\n          f = d(f, m, g, h, A, 5, b[24]),\n          h = d(h, f, m, g, E, 9, b[25]),\n          g = d(g, h, f, m, k, 14, b[26]),\n          m = d(m, g, h, f, v, 20, b[27]),\n          f = d(f, m, g, h, D, 5, b[28]),\n          h = d(h, f, m, g, j, 9, b[29]),\n          g = d(g, h, f, m, w, 14, b[30]),\n          m = d(m, g, h, f, u, 20, b[31]),\n          f = l(f, m, g, h, r, 4, b[32]),\n          h = l(h, f, m, g, v, 11, b[33]),\n          g = l(g, h, f, m, C, 16, b[34]),\n          m = l(m, g, h, f, E, 23, b[35]),\n          f = l(f, m, g, h, e, 4, b[36]),\n          h = l(h, f, m, g, z, 11, b[37]),\n          g = l(g, h, f, m, w, 16, b[38]),\n          m = l(m, g, h, f, B, 23, b[39]),\n          f = l(f, m, g, h, D, 4, b[40]),\n          h = l(h, f, m, g, c, 11, b[41]),\n          g = l(g, h, f, m, k, 16, b[42]),\n          m = l(m, g, h, f, t, 23, b[43]),\n          f = l(f, m, g, h, A, 4, b[44]),\n          h = l(h, f, m, g, u, 11, b[45]),\n          g = l(g, h, f, m, x, 16, b[46]),\n          m = l(m, g, h, f, j, 23, b[47]),\n          f = s(f, m, g, h, c, 6, b[48]),\n          h = s(h, f, m, g, w, 10, b[49]),\n          g = s(g, h, f, m, E, 15, b[50]),\n          m = s(m, g, h, f, r, 21, b[51]),\n          f = s(f, m, g, h, u, 6, b[52]),\n          h = s(h, f, m, g, k, 10, b[53]),\n          g = s(g, h, f, m, B, 15, b[54]),\n          m = s(m, g, h, f, e, 21, b[55]),\n          f = s(f, m, g, h, v, 6, b[56]),\n          h = s(h, f, m, g, x, 10, b[57]),\n          g = s(g, h, f, m, t, 15, b[58]),\n          m = s(m, g, h, f, D, 21, b[59]),\n          f = s(f, m, g, h, z, 6, b[60]),\n          h = s(h, f, m, g, C, 10, b[61]),\n          g = s(g, h, f, m, j, 15, b[62]),\n          m = s(m, g, h, f, A, 21, b[63]);\n      a[0] = a[0] + f | 0;\n      a[1] = a[1] + m | 0;\n      a[2] = a[2] + g | 0;\n      a[3] = a[3] + h | 0;\n    },\n    _doFinalize: function _doFinalize() {\n      var b = this._data,\n          n = b.words,\n          a = 8 * this._nDataBytes,\n          c = 8 * b.sigBytes;\n      n[c >>> 5] |= 128 << 24 - c % 32;\n      var e = u.floor(a / 4294967296);\n      n[(c + 64 >>> 9 << 4) + 15] = (e << 8 | e >>> 24) & 16711935 | (e << 24 | e >>> 8) & 4278255360;\n      n[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n      b.sigBytes = 4 * (n.length + 1);\n\n      this._process();\n\n      b = this._hash;\n      n = b.words;\n\n      for (a = 0; 4 > a; a++) {\n        c = n[a], n[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n      }\n\n      return b;\n    },\n    clone: function clone() {\n      var b = v.clone.call(this);\n      b._hash = this._hash.clone();\n      return b;\n    }\n  });\n  t.MD5 = v._createHelper(r);\n  t.HmacMD5 = v._createHmacHelper(r);\n})(Math);\n\n(function () {\n  var u = CryptoJS,\n      p = u.lib,\n      d = p.Base,\n      l = p.WordArray,\n      p = u.algo,\n      s = p.EvpKDF = d.extend({\n    cfg: d.extend({\n      keySize: 4,\n      hasher: p.MD5,\n      iterations: 1\n    }),\n    init: function init(d) {\n      this.cfg = this.cfg.extend(d);\n    },\n    compute: function compute(d, r) {\n      for (var p = this.cfg, s = p.hasher.create(), b = l.create(), u = b.words, q = p.keySize, p = p.iterations; u.length < q;) {\n        n && s.update(n);\n        var n = s.update(d).finalize(r);\n        s.reset();\n\n        for (var a = 1; a < p; a++) {\n          n = s.finalize(n), s.reset();\n        }\n\n        b.concat(n);\n      }\n\n      b.sigBytes = 4 * q;\n      return b;\n    }\n  });\n\n  u.EvpKDF = function (d, l, p) {\n    return s.create(p).compute(d, l);\n  };\n})();\n\nCryptoJS.lib.Cipher || function (u) {\n  var p = CryptoJS,\n      d = p.lib,\n      l = d.Base,\n      s = d.WordArray,\n      t = d.BufferedBlockAlgorithm,\n      r = p.enc.Base64,\n      w = p.algo.EvpKDF,\n      v = d.Cipher = t.extend({\n    cfg: l.extend(),\n    createEncryptor: function createEncryptor(e, a) {\n      return this.create(this._ENC_XFORM_MODE, e, a);\n    },\n    createDecryptor: function createDecryptor(e, a) {\n      return this.create(this._DEC_XFORM_MODE, e, a);\n    },\n    init: function init(e, a, b) {\n      this.cfg = this.cfg.extend(b);\n      this._xformMode = e;\n      this._key = a;\n      this.reset();\n    },\n    reset: function reset() {\n      t.reset.call(this);\n\n      this._doReset();\n    },\n    process: function process(e) {\n      this._append(e);\n\n      return this._process();\n    },\n    finalize: function finalize(e) {\n      e && this._append(e);\n      return this._doFinalize();\n    },\n    keySize: 4,\n    ivSize: 4,\n    _ENC_XFORM_MODE: 1,\n    _DEC_XFORM_MODE: 2,\n    _createHelper: function _createHelper(e) {\n      return {\n        encrypt: function encrypt(b, k, d) {\n          return (\"string\" == typeof k ? c : a).encrypt(e, b, k, d);\n        },\n        decrypt: function decrypt(b, k, d) {\n          return (\"string\" == typeof k ? c : a).decrypt(e, b, k, d);\n        }\n      };\n    }\n  });\n  d.StreamCipher = v.extend({\n    _doFinalize: function _doFinalize() {\n      return this._process(!0);\n    },\n    blockSize: 1\n  });\n\n  var b = p.mode = {},\n      x = function x(e, a, b) {\n    var c = this._iv;\n    c ? this._iv = u : c = this._prevBlock;\n\n    for (var d = 0; d < b; d++) {\n      e[a + d] ^= c[d];\n    }\n  },\n      q = (d.BlockCipherMode = l.extend({\n    createEncryptor: function createEncryptor(e, a) {\n      return this.Encryptor.create(e, a);\n    },\n    createDecryptor: function createDecryptor(e, a) {\n      return this.Decryptor.create(e, a);\n    },\n    init: function init(e, a) {\n      this._cipher = e;\n      this._iv = a;\n    }\n  })).extend();\n\n  q.Encryptor = q.extend({\n    processBlock: function processBlock(e, a) {\n      var b = this._cipher,\n          c = b.blockSize;\n      x.call(this, e, a, c);\n      b.encryptBlock(e, a);\n      this._prevBlock = e.slice(a, a + c);\n    }\n  });\n  q.Decryptor = q.extend({\n    processBlock: function processBlock(e, a) {\n      var b = this._cipher,\n          c = b.blockSize,\n          d = e.slice(a, a + c);\n      b.decryptBlock(e, a);\n      x.call(this, e, a, c);\n      this._prevBlock = d;\n    }\n  });\n  b = b.CBC = q;\n  q = (p.pad = {}).Pkcs7 = {\n    pad: function pad(a, b) {\n      for (var c = 4 * b, c = c - a.sigBytes % c, d = c << 24 | c << 16 | c << 8 | c, l = [], n = 0; n < c; n += 4) {\n        l.push(d);\n      }\n\n      c = s.create(l, c);\n      a.concat(c);\n    },\n    unpad: function unpad(a) {\n      a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255;\n    }\n  };\n  d.BlockCipher = v.extend({\n    cfg: v.cfg.extend({\n      mode: b,\n      padding: q\n    }),\n    reset: function reset() {\n      v.reset.call(this);\n      var a = this.cfg,\n          b = a.iv,\n          a = a.mode;\n      if (this._xformMode == this._ENC_XFORM_MODE) var c = a.createEncryptor;else c = a.createDecryptor, this._minBufferSize = 1;\n      this._mode = c.call(a, this, b && b.words);\n    },\n    _doProcessBlock: function _doProcessBlock(a, b) {\n      this._mode.processBlock(a, b);\n    },\n    _doFinalize: function _doFinalize() {\n      var a = this.cfg.padding;\n\n      if (this._xformMode == this._ENC_XFORM_MODE) {\n        a.pad(this._data, this.blockSize);\n\n        var b = this._process(!0);\n      } else b = this._process(!0), a.unpad(b);\n\n      return b;\n    },\n    blockSize: 4\n  });\n  var n = d.CipherParams = l.extend({\n    init: function init(a) {\n      this.mixIn(a);\n    },\n    toString: function toString(a) {\n      return (a || this.formatter).stringify(this);\n    }\n  }),\n      b = (p.format = {}).OpenSSL = {\n    stringify: function stringify(a) {\n      var b = a.ciphertext;\n      a = a.salt;\n      return (a ? s.create([1398893684, 1701076831]).concat(a).concat(b) : b).toString(r);\n    },\n    parse: function parse(a) {\n      a = r.parse(a);\n      var b = a.words;\n\n      if (1398893684 == b[0] && 1701076831 == b[1]) {\n        var c = s.create(b.slice(2, 4));\n        b.splice(0, 4);\n        a.sigBytes -= 16;\n      }\n\n      return n.create({\n        ciphertext: a,\n        salt: c\n      });\n    }\n  },\n      a = d.SerializableCipher = l.extend({\n    cfg: l.extend({\n      format: b\n    }),\n    encrypt: function encrypt(a, b, c, d) {\n      d = this.cfg.extend(d);\n      var l = a.createEncryptor(c, d);\n      b = l.finalize(b);\n      l = l.cfg;\n      return n.create({\n        ciphertext: b,\n        key: c,\n        iv: l.iv,\n        algorithm: a,\n        mode: l.mode,\n        padding: l.padding,\n        blockSize: a.blockSize,\n        formatter: d.format\n      });\n    },\n    decrypt: function decrypt(a, b, c, d) {\n      d = this.cfg.extend(d);\n      b = this._parse(b, d.format);\n      return a.createDecryptor(c, d).finalize(b.ciphertext);\n    },\n    _parse: function _parse(a, b) {\n      return \"string\" == typeof a ? b.parse(a, this) : a;\n    }\n  }),\n      p = (p.kdf = {}).OpenSSL = {\n    execute: function execute(a, b, c, d) {\n      d || (d = s.random(8));\n      a = w.create({\n        keySize: b + c\n      }).compute(a, d);\n      c = s.create(a.words.slice(b), 4 * c);\n      a.sigBytes = 4 * b;\n      return n.create({\n        key: a,\n        iv: c,\n        salt: d\n      });\n    }\n  },\n      c = d.PasswordBasedCipher = a.extend({\n    cfg: a.cfg.extend({\n      kdf: p\n    }),\n    encrypt: function encrypt(b, c, d, l) {\n      l = this.cfg.extend(l);\n      d = l.kdf.execute(d, b.keySize, b.ivSize);\n      l.iv = d.iv;\n      b = a.encrypt.call(this, b, c, d.key, l);\n      b.mixIn(d);\n      return b;\n    },\n    decrypt: function decrypt(b, c, d, l) {\n      l = this.cfg.extend(l);\n      c = this._parse(c, l.format);\n      d = l.kdf.execute(d, b.keySize, b.ivSize, c.salt);\n      l.iv = d.iv;\n      return a.decrypt.call(this, b, c, d.key, l);\n    }\n  });\n}();\n\n(function () {\n  for (var u = CryptoJS, p = u.lib.BlockCipher, d = u.algo, l = [], s = [], t = [], r = [], w = [], v = [], b = [], x = [], q = [], n = [], a = [], c = 0; 256 > c; c++) {\n    a[c] = 128 > c ? c << 1 : c << 1 ^ 283;\n  }\n\n  for (var e = 0, j = 0, c = 0; 256 > c; c++) {\n    var k = j ^ j << 1 ^ j << 2 ^ j << 3 ^ j << 4,\n        k = k >>> 8 ^ k & 255 ^ 99;\n    l[e] = k;\n    s[k] = e;\n    var z = a[e],\n        F = a[z],\n        G = a[F],\n        y = 257 * a[k] ^ 16843008 * k;\n    t[e] = y << 24 | y >>> 8;\n    r[e] = y << 16 | y >>> 16;\n    w[e] = y << 8 | y >>> 24;\n    v[e] = y;\n    y = 16843009 * G ^ 65537 * F ^ 257 * z ^ 16843008 * e;\n    b[k] = y << 24 | y >>> 8;\n    x[k] = y << 16 | y >>> 16;\n    q[k] = y << 8 | y >>> 24;\n    n[k] = y;\n    e ? (e = z ^ a[a[a[G ^ z]]], j ^= a[a[j]]) : e = j = 1;\n  }\n\n  var H = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54],\n      d = d.AES = p.extend({\n    _doReset: function _doReset() {\n      for (var a = this._key, c = a.words, d = a.sigBytes / 4, a = 4 * ((this._nRounds = d + 6) + 1), e = this._keySchedule = [], j = 0; j < a; j++) {\n        if (j < d) e[j] = c[j];else {\n          var k = e[j - 1];\n          j % d ? 6 < d && 4 == j % d && (k = l[k >>> 24] << 24 | l[k >>> 16 & 255] << 16 | l[k >>> 8 & 255] << 8 | l[k & 255]) : (k = k << 8 | k >>> 24, k = l[k >>> 24] << 24 | l[k >>> 16 & 255] << 16 | l[k >>> 8 & 255] << 8 | l[k & 255], k ^= H[j / d | 0] << 24);\n          e[j] = e[j - d] ^ k;\n        }\n      }\n\n      c = this._invKeySchedule = [];\n\n      for (d = 0; d < a; d++) {\n        j = a - d, k = d % 4 ? e[j] : e[j - 4], c[d] = 4 > d || 4 >= j ? k : b[l[k >>> 24]] ^ x[l[k >>> 16 & 255]] ^ q[l[k >>> 8 & 255]] ^ n[l[k & 255]];\n      }\n    },\n    encryptBlock: function encryptBlock(a, b) {\n      this._doCryptBlock(a, b, this._keySchedule, t, r, w, v, l);\n    },\n    decryptBlock: function decryptBlock(a, c) {\n      var d = a[c + 1];\n      a[c + 1] = a[c + 3];\n      a[c + 3] = d;\n\n      this._doCryptBlock(a, c, this._invKeySchedule, b, x, q, n, s);\n\n      d = a[c + 1];\n      a[c + 1] = a[c + 3];\n      a[c + 3] = d;\n    },\n    _doCryptBlock: function _doCryptBlock(a, b, c, d, e, j, l, f) {\n      for (var m = this._nRounds, g = a[b] ^ c[0], h = a[b + 1] ^ c[1], k = a[b + 2] ^ c[2], n = a[b + 3] ^ c[3], p = 4, r = 1; r < m; r++) {\n        var q = d[g >>> 24] ^ e[h >>> 16 & 255] ^ j[k >>> 8 & 255] ^ l[n & 255] ^ c[p++],\n            s = d[h >>> 24] ^ e[k >>> 16 & 255] ^ j[n >>> 8 & 255] ^ l[g & 255] ^ c[p++],\n            t = d[k >>> 24] ^ e[n >>> 16 & 255] ^ j[g >>> 8 & 255] ^ l[h & 255] ^ c[p++],\n            n = d[n >>> 24] ^ e[g >>> 16 & 255] ^ j[h >>> 8 & 255] ^ l[k & 255] ^ c[p++],\n            g = q,\n            h = s,\n            k = t;\n      }\n\n      q = (f[g >>> 24] << 24 | f[h >>> 16 & 255] << 16 | f[k >>> 8 & 255] << 8 | f[n & 255]) ^ c[p++];\n      s = (f[h >>> 24] << 24 | f[k >>> 16 & 255] << 16 | f[n >>> 8 & 255] << 8 | f[g & 255]) ^ c[p++];\n      t = (f[k >>> 24] << 24 | f[n >>> 16 & 255] << 16 | f[g >>> 8 & 255] << 8 | f[h & 255]) ^ c[p++];\n      n = (f[n >>> 24] << 24 | f[g >>> 16 & 255] << 16 | f[h >>> 8 & 255] << 8 | f[k & 255]) ^ c[p++];\n      a[b] = q;\n      a[b + 1] = s;\n      a[b + 2] = t;\n      a[b + 3] = n;\n    },\n    keySize: 8\n  });\n  u.AES = p._createHelper(d);\n})();\n\nCryptoJS.mode.ECB = function () {\n  var ECB = CryptoJS.lib.BlockCipherMode.extend();\n  ECB.Encryptor = ECB.extend({\n    processBlock: function processBlock(words, offset) {\n      this._cipher.encryptBlock(words, offset);\n    }\n  });\n  ECB.Decryptor = ECB.extend({\n    processBlock: function processBlock(words, offset) {\n      this._cipher.decryptBlock(words, offset);\n    }\n  });\n  return ECB;\n}();\n\nmodule.exports = CryptoJS;"},{"id":23,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/listener_manager.js","name":"./src/core/components/listener_manager.js","index":26,"index2":24,"size":4061,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/listener_manager","loc":"28:47-87"},{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../components/listener_manager","loc":"22:47-88"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _categories = _interopRequireDefault(require(\"../constants/categories\"));\n\nvar _default = function () {\n  function _default() {\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_listeners\", void 0);\n    this._listeners = [];\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"addListener\",\n    value: function addListener(newListeners) {\n      this._listeners.push(newListeners);\n    }\n  }, {\n    key: \"removeListener\",\n    value: function removeListener(deprecatedListener) {\n      var newListeners = [];\n\n      this._listeners.forEach(function (listener) {\n        if (listener !== deprecatedListener) newListeners.push(listener);\n      });\n\n      this._listeners = newListeners;\n    }\n  }, {\n    key: \"removeAllListeners\",\n    value: function removeAllListeners() {\n      this._listeners = [];\n    }\n  }, {\n    key: \"announcePresence\",\n    value: function announcePresence(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.presence) listener.presence(announce);\n      });\n    }\n  }, {\n    key: \"announceStatus\",\n    value: function announceStatus(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.status) listener.status(announce);\n      });\n    }\n  }, {\n    key: \"announceMessage\",\n    value: function announceMessage(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.message) listener.message(announce);\n      });\n    }\n  }, {\n    key: \"announceSignal\",\n    value: function announceSignal(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.signal) listener.signal(announce);\n      });\n    }\n  }, {\n    key: \"announceMessageAction\",\n    value: function announceMessageAction(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.messageAction) listener.messageAction(announce);\n      });\n    }\n  }, {\n    key: \"announceFile\",\n    value: function announceFile(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.file) listener.file(announce);\n      });\n    }\n  }, {\n    key: \"announceObjects\",\n    value: function announceObjects(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.objects) listener.objects(announce);\n      });\n    }\n  }, {\n    key: \"announceUser\",\n    value: function announceUser(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.user) listener.user(announce);\n      });\n    }\n  }, {\n    key: \"announceSpace\",\n    value: function announceSpace(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.space) listener.space(announce);\n      });\n    }\n  }, {\n    key: \"announceMembership\",\n    value: function announceMembership(announce) {\n      this._listeners.forEach(function (listener) {\n        if (listener.membership) listener.membership(announce);\n      });\n    }\n  }, {\n    key: \"announceNetworkUp\",\n    value: function announceNetworkUp() {\n      var networkStatus = {};\n      networkStatus.category = _categories[\"default\"].PNNetworkUpCategory;\n      this.announceStatus(networkStatus);\n    }\n  }, {\n    key: \"announceNetworkDown\",\n    value: function announceNetworkDown() {\n      var networkStatus = {};\n      networkStatus.category = _categories[\"default\"].PNNetworkDownCategory;\n      this.announceStatus(networkStatus);\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":24,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/time.js","name":"./src/core/endpoints/time.js","index":29,"index2":26,"size":1025,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/time","loc":"168:49-76"},{"moduleId":37,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/reconnection_manager.js","module":"./src/core/components/reconnection_manager.js","moduleName":"./src/core/components/reconnection_manager.js","type":"cjs require","userRequest":"../endpoints/time","loc":"16:35-63"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.prepareParams = prepareParams;\nexports.isAuthSupported = isAuthSupported;\nexports.handleResponse = handleResponse;\nexports.validateParams = validateParams;\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNTimeOperation;\n}\n\nfunction getURL() {\n  return '/time/0';\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction isAuthSupported() {\n  return false;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    timetoken: serverResponse[0]\n  };\n}\n\nfunction validateParams() {}"},{"id":25,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/file/index.js","name":"./src/file/index.js","index":62,"index2":60,"size":13,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/file/modules/web.js","issuerId":132,"issuerName":"./src/file/modules/web.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":132,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/file/modules/web.js","name":"./src/file/modules/web.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":2642,"building":2440},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"../file","loc":"72:12-30"},{"moduleId":132,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/file/modules/web.js","module":"./src/file/modules/web.js","moduleName":"./src/file/modules/web.js","type":"cjs require","userRequest":"../","loc":"20:8-22"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";"},{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","index":0,"index2":134,"size":5882,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":null,"issuerId":null,"issuerName":null,"issuerPath":null,"profile":{"factory":20,"building":129},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":null,"moduleIdentifier":null,"module":null,"moduleName":null,"type":"single entry","userRequest":"/home/travis/build/pubnub/target-repository/src/web/index.js","loc":"main"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":0,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _inherits2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inherits\"));\n\nvar _possibleConstructorReturn2 = _interopRequireDefault(require(\"@babel/runtime/helpers/possibleConstructorReturn\"));\n\nvar _getPrototypeOf2 = _interopRequireDefault(require(\"@babel/runtime/helpers/getPrototypeOf\"));\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime/helpers/typeof\"));\n\nvar _cborJs = _interopRequireDefault(require(\"cbor-js\"));\n\nvar _pubnubCommon = _interopRequireDefault(require(\"../core/pubnub-common\"));\n\nvar _networking = _interopRequireDefault(require(\"../networking\"));\n\nvar _hmacSha = _interopRequireDefault(require(\"../core/components/cryptography/hmac-sha256\"));\n\nvar _web = _interopRequireDefault(require(\"../db/web\"));\n\nvar _common = _interopRequireDefault(require(\"../cbor/common\"));\n\nvar _webNode = require(\"../networking/modules/web-node\");\n\nvar _flow_interfaces = require(\"../core/flow_interfaces\");\n\nvar _web2 = _interopRequireDefault(require(\"../crypto/modules/web\"));\n\nvar _web3 = _interopRequireDefault(require(\"../file/modules/web\"));\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2[\"default\"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2[\"default\"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2[\"default\"])(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction sendBeacon(url) {\n  if (navigator && navigator.sendBeacon) {\n    navigator.sendBeacon(url);\n  } else {\n    return false;\n  }\n}\n\nfunction base64ToBinary(base64String) {\n  var parsedWordArray = _hmacSha[\"default\"].enc.Base64.parse(base64String).words;\n\n  var arrayBuffer = new ArrayBuffer(parsedWordArray.length * 4);\n  var view = new Uint8Array(arrayBuffer);\n  var filledArrayBuffer = null;\n  var zeroBytesCount = 0;\n  var byteOffset = 0;\n\n  for (var wordIdx = 0; wordIdx < parsedWordArray.length; wordIdx += 1) {\n    var word = parsedWordArray[wordIdx];\n    byteOffset = wordIdx * 4;\n    view[byteOffset] = (word & 0xff000000) >> 24;\n    view[byteOffset + 1] = (word & 0x00ff0000) >> 16;\n    view[byteOffset + 2] = (word & 0x0000ff00) >> 8;\n    view[byteOffset + 3] = word & 0x000000ff;\n  }\n\n  for (var byteIdx = byteOffset + 3; byteIdx >= byteOffset; byteIdx -= 1) {\n    if (view[byteIdx] === 0) {\n      zeroBytesCount += 1;\n    }\n  }\n\n  if (zeroBytesCount > 0) {\n    filledArrayBuffer = view.buffer.slice(0, view.byteLength - zeroBytesCount);\n  } else {\n    filledArrayBuffer = view.buffer;\n  }\n\n  return filledArrayBuffer;\n}\n\nfunction stringifyBufferKeys(obj) {\n  var isObject = function isObject(value) {\n    return value && (0, _typeof2[\"default\"])(value) === 'object' && value.constructor === Object;\n  };\n\n  var isString = function isString(value) {\n    return typeof value === 'string' || value instanceof String;\n  };\n\n  var isNumber = function isNumber(value) {\n    return typeof value === 'number' && isFinite(value);\n  };\n\n  if (!isObject(obj)) {\n    return obj;\n  }\n\n  var normalizedObject = {};\n  Object.keys(obj).forEach(function (key) {\n    var keyIsString = isString(key);\n    var stringifiedKey = key;\n    var value = obj[key];\n\n    if (Array.isArray(key) || keyIsString && key.indexOf(',') >= 0) {\n      var bytes = keyIsString ? key.split(',') : key;\n      stringifiedKey = bytes.reduce(function (string, _byte) {\n        string += String.fromCharCode(_byte);\n        return string;\n      }, '');\n    } else if (isNumber(key) || keyIsString && !isNaN(key)) {\n      stringifiedKey = String.fromCharCode(keyIsString ? parseInt(key, 10) : 10);\n    }\n\n    normalizedObject[stringifiedKey] = isObject(value) ? stringifyBufferKeys(value) : value;\n  });\n  return normalizedObject;\n}\n\nvar _default = function (_PubNubCore) {\n  (0, _inherits2[\"default\"])(_default, _PubNubCore);\n\n  var _super = _createSuper(_default);\n\n  function _default(setup) {\n    var _this;\n\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    var _setup$listenToBrowse = setup.listenToBrowserNetworkEvents,\n        listenToBrowserNetworkEvents = _setup$listenToBrowse === void 0 ? true : _setup$listenToBrowse;\n    setup.db = _web[\"default\"];\n    setup.sdkFamily = 'Web';\n    setup.networking = new _networking[\"default\"]({\n      del: _webNode.del,\n      get: _webNode.get,\n      post: _webNode.post,\n      patch: _webNode.patch,\n      sendBeacon: sendBeacon,\n      getfile: _webNode.getfile,\n      postfile: _webNode.postfile\n    });\n    setup.cbor = new _common[\"default\"](function (arrayBuffer) {\n      return stringifyBufferKeys(_cborJs[\"default\"].decode(arrayBuffer));\n    }, base64ToBinary);\n    setup.PubNubFile = _web3[\"default\"];\n    setup.cryptography = new _web2[\"default\"]();\n    _this = _super.call(this, setup);\n\n    if (listenToBrowserNetworkEvents) {\n      window.addEventListener('offline', function () {\n        _this.networkDownDetected();\n      });\n      window.addEventListener('online', function () {\n        _this.networkUpDetected();\n      });\n    }\n\n    return _this;\n  }\n\n  return _default;\n}(_pubnubCommon[\"default\"]);\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","index":10,"index2":118,"size":28402,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../core/pubnub-common","loc":"22:43-75"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _config = _interopRequireDefault(require(\"./components/config\"));\n\nvar _index = _interopRequireDefault(require(\"./components/cryptography/index\"));\n\nvar _subscription_manager = _interopRequireDefault(require(\"./components/subscription_manager\"));\n\nvar _telemetry_manager = _interopRequireDefault(require(\"./components/telemetry_manager\"));\n\nvar _push_payload = _interopRequireDefault(require(\"./components/push_payload\"));\n\nvar _listener_manager = _interopRequireDefault(require(\"./components/listener_manager\"));\n\nvar _token_manager = _interopRequireDefault(require(\"./components/token_manager\"));\n\nvar _endpoint = _interopRequireDefault(require(\"./components/endpoint\"));\n\nvar _utils = require(\"./utils\");\n\nvar addChannelsChannelGroupConfig = _interopRequireWildcard(require(\"./endpoints/channel_groups/add_channels\"));\n\nvar removeChannelsChannelGroupConfig = _interopRequireWildcard(require(\"./endpoints/channel_groups/remove_channels\"));\n\nvar deleteChannelGroupConfig = _interopRequireWildcard(require(\"./endpoints/channel_groups/delete_group\"));\n\nvar listChannelGroupsConfig = _interopRequireWildcard(require(\"./endpoints/channel_groups/list_groups\"));\n\nvar listChannelsInChannelGroupConfig = _interopRequireWildcard(require(\"./endpoints/channel_groups/list_channels\"));\n\nvar addPushChannelsConfig = _interopRequireWildcard(require(\"./endpoints/push/add_push_channels\"));\n\nvar removePushChannelsConfig = _interopRequireWildcard(require(\"./endpoints/push/remove_push_channels\"));\n\nvar listPushChannelsConfig = _interopRequireWildcard(require(\"./endpoints/push/list_push_channels\"));\n\nvar removeDevicePushConfig = _interopRequireWildcard(require(\"./endpoints/push/remove_device\"));\n\nvar presenceLeaveEndpointConfig = _interopRequireWildcard(require(\"./endpoints/presence/leave\"));\n\nvar presenceWhereNowEndpointConfig = _interopRequireWildcard(require(\"./endpoints/presence/where_now\"));\n\nvar presenceHeartbeatEndpointConfig = _interopRequireWildcard(require(\"./endpoints/presence/heartbeat\"));\n\nvar presenceGetStateConfig = _interopRequireWildcard(require(\"./endpoints/presence/get_state\"));\n\nvar presenceSetStateConfig = _interopRequireWildcard(require(\"./endpoints/presence/set_state\"));\n\nvar presenceHereNowConfig = _interopRequireWildcard(require(\"./endpoints/presence/here_now\"));\n\nvar addMessageActionEndpointConfig = _interopRequireWildcard(require(\"./endpoints/actions/add_message_action\"));\n\nvar removeMessageActionEndpointConfig = _interopRequireWildcard(require(\"./endpoints/actions/remove_message_action\"));\n\nvar getMessageActionEndpointConfig = _interopRequireWildcard(require(\"./endpoints/actions/get_message_actions\"));\n\nvar _file = require(\"../file\");\n\nvar fileUploadTypes = _interopRequireWildcard(require(\"./endpoints/file_upload/types\"));\n\nvar _list_files = _interopRequireDefault(require(\"./endpoints/file_upload/list_files\"));\n\nvar _generate_upload_url = _interopRequireDefault(require(\"./endpoints/file_upload/generate_upload_url\"));\n\nvar _publish_file = _interopRequireDefault(require(\"./endpoints/file_upload/publish_file\"));\n\nvar _send_file = _interopRequireDefault(require(\"./endpoints/file_upload/send_file\"));\n\nvar _get_file_url = _interopRequireDefault(require(\"./endpoints/file_upload/get_file_url\"));\n\nvar _download_file = _interopRequireDefault(require(\"./endpoints/file_upload/download_file\"));\n\nvar _delete_file = _interopRequireDefault(require(\"./endpoints/file_upload/delete_file\"));\n\nvar _get_all = _interopRequireDefault(require(\"./endpoints/objects/uuid/get_all\"));\n\nvar _get = _interopRequireDefault(require(\"./endpoints/objects/uuid/get\"));\n\nvar _set = _interopRequireDefault(require(\"./endpoints/objects/uuid/set\"));\n\nvar _remove = _interopRequireDefault(require(\"./endpoints/objects/uuid/remove\"));\n\nvar _get_all2 = _interopRequireDefault(require(\"./endpoints/objects/channel/get_all\"));\n\nvar _get2 = _interopRequireDefault(require(\"./endpoints/objects/channel/get\"));\n\nvar _set2 = _interopRequireDefault(require(\"./endpoints/objects/channel/set\"));\n\nvar _remove2 = _interopRequireDefault(require(\"./endpoints/objects/channel/remove\"));\n\nvar _get3 = _interopRequireDefault(require(\"./endpoints/objects/member/get\"));\n\nvar _set3 = _interopRequireDefault(require(\"./endpoints/objects/member/set\"));\n\nvar _get4 = _interopRequireDefault(require(\"./endpoints/objects/membership/get\"));\n\nvar _set4 = _interopRequireDefault(require(\"./endpoints/objects/membership/set\"));\n\nvar createUserEndpointConfig = _interopRequireWildcard(require(\"./endpoints/users/create_user\"));\n\nvar updateUserEndpointConfig = _interopRequireWildcard(require(\"./endpoints/users/update_user\"));\n\nvar deleteUserEndpointConfig = _interopRequireWildcard(require(\"./endpoints/users/delete_user\"));\n\nvar getUserEndpointConfig = _interopRequireWildcard(require(\"./endpoints/users/get_user\"));\n\nvar getUsersEndpointConfig = _interopRequireWildcard(require(\"./endpoints/users/get_users\"));\n\nvar createSpaceEndpointConfig = _interopRequireWildcard(require(\"./endpoints/spaces/create_space\"));\n\nvar updateSpaceEndpointConfig = _interopRequireWildcard(require(\"./endpoints/spaces/update_space\"));\n\nvar deleteSpaceEndpointConfig = _interopRequireWildcard(require(\"./endpoints/spaces/delete_space\"));\n\nvar getSpacesEndpointConfig = _interopRequireWildcard(require(\"./endpoints/spaces/get_spaces\"));\n\nvar getSpaceEndpointConfig = _interopRequireWildcard(require(\"./endpoints/spaces/get_space\"));\n\nvar getMembersEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/get_members\"));\n\nvar addMembersEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/add_members\"));\n\nvar updateMembersEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/update_members\"));\n\nvar removeMembersEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/remove_members\"));\n\nvar getMembershipsEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/get_memberships\"));\n\nvar updateMembershipsEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/update_memberships\"));\n\nvar joinSpacesEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/join_spaces\"));\n\nvar leaveSpacesEndpointConfig = _interopRequireWildcard(require(\"./endpoints/memberships/leave_spaces\"));\n\nvar auditEndpointConfig = _interopRequireWildcard(require(\"./endpoints/access_manager/audit\"));\n\nvar grantEndpointConfig = _interopRequireWildcard(require(\"./endpoints/access_manager/grant\"));\n\nvar grantTokenEndpointConfig = _interopRequireWildcard(require(\"./endpoints/access_manager/grant_token\"));\n\nvar publishEndpointConfig = _interopRequireWildcard(require(\"./endpoints/publish\"));\n\nvar signalEndpointConfig = _interopRequireWildcard(require(\"./endpoints/signal\"));\n\nvar historyEndpointConfig = _interopRequireWildcard(require(\"./endpoints/history/get_history\"));\n\nvar deleteMessagesEndpointConfig = _interopRequireWildcard(require(\"./endpoints/history/delete_messages\"));\n\nvar messageCountsEndpointConfig = _interopRequireWildcard(require(\"./endpoints/history/message_counts\"));\n\nvar fetchMessagesEndpointConfig = _interopRequireWildcard(require(\"./endpoints/fetch_messages\"));\n\nvar timeEndpointConfig = _interopRequireWildcard(require(\"./endpoints/time\"));\n\nvar subscribeEndpointConfig = _interopRequireWildcard(require(\"./endpoints/subscribe\"));\n\nvar _operations = _interopRequireDefault(require(\"./constants/operations\"));\n\nvar _categories = _interopRequireDefault(require(\"./constants/categories\"));\n\nvar _flow_interfaces = require(\"./flow_interfaces\");\n\nvar _uuid = _interopRequireDefault(require(\"./components/uuid\"));\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2[\"default\"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nvar _default = function () {\n  function _default(setup) {\n    var _this = this;\n\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_config\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_telemetryManager\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_listenerManager\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_tokenManager\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"time\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"publish\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"fire\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"history\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"deleteMessages\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"messageCounts\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"fetchMessages\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"channelGroups\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"push\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"hereNow\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"whereNow\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getState\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setState\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"grant\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"grantToken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"audit\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"subscribe\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"signal\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"presence\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"unsubscribe\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"unsubscribeAll\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"addMessageAction\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"removeMessageAction\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getMessageActions\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"File\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"encryptFile\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"decryptFile\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"listFiles\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"sendFile\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"downloadFile\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getFileUrl\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"deleteFile\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"publishFile\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"objects\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"createUser\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"updateUser\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"deleteUser\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getUser\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getUsers\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"createSpace\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"updateSpace\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"deleteSpace\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getSpaces\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getSpace\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getMembers\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"addMembers\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"updateMembers\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"removeMembers\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getMemberships\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"joinSpaces\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"updateMemberships\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"leaveSpaces\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"disconnect\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"reconnect\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"destroy\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"stop\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getSubscribedChannels\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getSubscribedChannelGroups\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"addListener\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"removeListener\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"removeAllListeners\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"parseToken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setToken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setTokens\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getToken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getTokens\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"clearTokens\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getAuthKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setAuthKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setCipherKey\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setUUID\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getUUID\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"getFilterExpression\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setFilterExpression\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setHeartbeatInterval\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"setProxy\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"encrypt\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"decrypt\", void 0);\n    var db = setup.db,\n        networking = setup.networking,\n        cbor = setup.cbor;\n    var config = this._config = new _config[\"default\"]({\n      setup: setup,\n      db: db\n    });\n    var crypto = new _index[\"default\"]({\n      config: config\n    });\n    var cryptography = setup.cryptography;\n    networking.init(config);\n    var tokenManager = this._tokenManager = new _token_manager[\"default\"](config, cbor);\n    var telemetryManager = this._telemetryManager = new _telemetry_manager[\"default\"]({\n      maximumSamplesCount: 60000\n    });\n    var modules = {\n      config: config,\n      networking: networking,\n      crypto: crypto,\n      cryptography: cryptography,\n      tokenManager: tokenManager,\n      telemetryManager: telemetryManager,\n      PubNubFile: setup.PubNubFile\n    };\n    this.File = setup.PubNubFile;\n\n    this.encryptFile = function (key, file) {\n      return cryptography.encryptFile(key, file, _this.File);\n    };\n\n    this.decryptFile = function (key, file) {\n      return cryptography.decryptFile(key, file, _this.File);\n    };\n\n    var timeEndpoint = _endpoint[\"default\"].bind(this, modules, timeEndpointConfig);\n\n    var leaveEndpoint = _endpoint[\"default\"].bind(this, modules, presenceLeaveEndpointConfig);\n\n    var heartbeatEndpoint = _endpoint[\"default\"].bind(this, modules, presenceHeartbeatEndpointConfig);\n\n    var setStateEndpoint = _endpoint[\"default\"].bind(this, modules, presenceSetStateConfig);\n\n    var subscribeEndpoint = _endpoint[\"default\"].bind(this, modules, subscribeEndpointConfig);\n\n    var listenerManager = this._listenerManager = new _listener_manager[\"default\"]();\n    var subscriptionManager = new _subscription_manager[\"default\"]({\n      timeEndpoint: timeEndpoint,\n      leaveEndpoint: leaveEndpoint,\n      heartbeatEndpoint: heartbeatEndpoint,\n      setStateEndpoint: setStateEndpoint,\n      subscribeEndpoint: subscribeEndpoint,\n      crypto: modules.crypto,\n      config: modules.config,\n      listenerManager: listenerManager,\n      getFileUrl: function getFileUrl(params) {\n        return (0, _get_file_url[\"default\"])(modules, params);\n      }\n    });\n    this.addListener = listenerManager.addListener.bind(listenerManager);\n    this.removeListener = listenerManager.removeListener.bind(listenerManager);\n    this.removeAllListeners = listenerManager.removeAllListeners.bind(listenerManager);\n    this.parseToken = tokenManager.parseToken.bind(tokenManager);\n    this.setToken = tokenManager.setToken.bind(tokenManager);\n    this.setTokens = tokenManager.setTokens.bind(tokenManager);\n    this.getToken = tokenManager.getToken.bind(tokenManager);\n    this.getTokens = tokenManager.getTokens.bind(tokenManager);\n    this.clearTokens = tokenManager.clearTokens.bind(tokenManager);\n    this.channelGroups = {\n      listGroups: _endpoint[\"default\"].bind(this, modules, listChannelGroupsConfig),\n      listChannels: _endpoint[\"default\"].bind(this, modules, listChannelsInChannelGroupConfig),\n      addChannels: _endpoint[\"default\"].bind(this, modules, addChannelsChannelGroupConfig),\n      removeChannels: _endpoint[\"default\"].bind(this, modules, removeChannelsChannelGroupConfig),\n      deleteGroup: _endpoint[\"default\"].bind(this, modules, deleteChannelGroupConfig)\n    };\n    this.push = {\n      addChannels: _endpoint[\"default\"].bind(this, modules, addPushChannelsConfig),\n      removeChannels: _endpoint[\"default\"].bind(this, modules, removePushChannelsConfig),\n      deleteDevice: _endpoint[\"default\"].bind(this, modules, removeDevicePushConfig),\n      listChannels: _endpoint[\"default\"].bind(this, modules, listPushChannelsConfig)\n    };\n    this.hereNow = _endpoint[\"default\"].bind(this, modules, presenceHereNowConfig);\n    this.whereNow = _endpoint[\"default\"].bind(this, modules, presenceWhereNowEndpointConfig);\n    this.getState = _endpoint[\"default\"].bind(this, modules, presenceGetStateConfig);\n    this.setState = subscriptionManager.adaptStateChange.bind(subscriptionManager);\n    this.grant = _endpoint[\"default\"].bind(this, modules, grantEndpointConfig);\n    this.grantToken = _endpoint[\"default\"].bind(this, modules, grantTokenEndpointConfig);\n    this.audit = _endpoint[\"default\"].bind(this, modules, auditEndpointConfig);\n    this.publish = _endpoint[\"default\"].bind(this, modules, publishEndpointConfig);\n\n    this.fire = function (args, callback) {\n      args.replicate = false;\n      args.storeInHistory = false;\n      return _this.publish(args, callback);\n    };\n\n    this.signal = _endpoint[\"default\"].bind(this, modules, signalEndpointConfig);\n    this.history = _endpoint[\"default\"].bind(this, modules, historyEndpointConfig);\n    this.deleteMessages = _endpoint[\"default\"].bind(this, modules, deleteMessagesEndpointConfig);\n    this.messageCounts = _endpoint[\"default\"].bind(this, modules, messageCountsEndpointConfig);\n    this.fetchMessages = _endpoint[\"default\"].bind(this, modules, fetchMessagesEndpointConfig);\n    this.addMessageAction = _endpoint[\"default\"].bind(this, modules, addMessageActionEndpointConfig);\n    this.removeMessageAction = _endpoint[\"default\"].bind(this, modules, removeMessageActionEndpointConfig);\n    this.getMessageActions = _endpoint[\"default\"].bind(this, modules, getMessageActionEndpointConfig);\n    this.listFiles = _endpoint[\"default\"].bind(this, modules, _list_files[\"default\"]);\n\n    var generateUploadUrl = _endpoint[\"default\"].bind(this, modules, _generate_upload_url[\"default\"]);\n\n    this.publishFile = _endpoint[\"default\"].bind(this, modules, _publish_file[\"default\"]);\n    this.sendFile = (0, _send_file[\"default\"])({\n      generateUploadUrl: generateUploadUrl,\n      publishFile: this.publishFile,\n      modules: modules\n    });\n\n    this.getFileUrl = function (params) {\n      return (0, _get_file_url[\"default\"])(modules, params);\n    };\n\n    this.downloadFile = _endpoint[\"default\"].bind(this, modules, _download_file[\"default\"]);\n    this.deleteFile = _endpoint[\"default\"].bind(this, modules, _delete_file[\"default\"]);\n    this.objects = {\n      getAllUUIDMetadata: _endpoint[\"default\"].bind(this, modules, _get_all[\"default\"]),\n      getUUIDMetadata: _endpoint[\"default\"].bind(this, modules, _get[\"default\"]),\n      setUUIDMetadata: _endpoint[\"default\"].bind(this, modules, _set[\"default\"]),\n      removeUUIDMetadata: _endpoint[\"default\"].bind(this, modules, _remove[\"default\"]),\n      getAllChannelMetadata: _endpoint[\"default\"].bind(this, modules, _get_all2[\"default\"]),\n      getChannelMetadata: _endpoint[\"default\"].bind(this, modules, _get2[\"default\"]),\n      setChannelMetadata: _endpoint[\"default\"].bind(this, modules, _set2[\"default\"]),\n      removeChannelMetadata: _endpoint[\"default\"].bind(this, modules, _remove2[\"default\"]),\n      getChannelMembers: _endpoint[\"default\"].bind(this, modules, _get3[\"default\"]),\n      setChannelMembers: function setChannelMembers(parameters) {\n        for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n          rest[_key - 1] = arguments[_key];\n        }\n\n        return _endpoint[\"default\"].call.apply(_endpoint[\"default\"], [_this, modules, _set3[\"default\"], _objectSpread({\n          type: 'set'\n        }, parameters)].concat(rest));\n      },\n      removeChannelMembers: function removeChannelMembers(parameters) {\n        for (var _len2 = arguments.length, rest = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n          rest[_key2 - 1] = arguments[_key2];\n        }\n\n        return _endpoint[\"default\"].call.apply(_endpoint[\"default\"], [_this, modules, _set3[\"default\"], _objectSpread({\n          type: 'delete'\n        }, parameters)].concat(rest));\n      },\n      getMemberships: _endpoint[\"default\"].bind(this, modules, _get4[\"default\"]),\n      setMemberships: function setMemberships(parameters) {\n        for (var _len3 = arguments.length, rest = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n          rest[_key3 - 1] = arguments[_key3];\n        }\n\n        return _endpoint[\"default\"].call.apply(_endpoint[\"default\"], [_this, modules, _set4[\"default\"], _objectSpread({\n          type: 'set'\n        }, parameters)].concat(rest));\n      },\n      removeMemberships: function removeMemberships(parameters) {\n        for (var _len4 = arguments.length, rest = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n          rest[_key4 - 1] = arguments[_key4];\n        }\n\n        return _endpoint[\"default\"].call.apply(_endpoint[\"default\"], [_this, modules, _set4[\"default\"], _objectSpread({\n          type: 'delete'\n        }, parameters)].concat(rest));\n      }\n    };\n    this.createUser = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, createUserEndpointConfig));\n    this.updateUser = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, updateUserEndpointConfig));\n    this.deleteUser = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, deleteUserEndpointConfig));\n    this.getUser = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, getUserEndpointConfig));\n    this.getUsers = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, getUsersEndpointConfig));\n    this.createSpace = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, createSpaceEndpointConfig));\n    this.updateSpace = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, updateSpaceEndpointConfig));\n    this.deleteSpace = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, deleteSpaceEndpointConfig));\n    this.getSpaces = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, getSpacesEndpointConfig));\n    this.getSpace = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, getSpaceEndpointConfig));\n    this.addMembers = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, addMembersEndpointConfig));\n    this.updateMembers = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, updateMembersEndpointConfig));\n    this.removeMembers = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, removeMembersEndpointConfig));\n    this.getMembers = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, getMembersEndpointConfig));\n    this.getMemberships = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, getMembershipsEndpointConfig));\n    this.joinSpaces = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, joinSpacesEndpointConfig));\n    this.updateMemberships = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, updateMembershipsEndpointConfig));\n    this.leaveSpaces = (0, _utils.deprecated)(_endpoint[\"default\"].bind(this, modules, leaveSpacesEndpointConfig));\n    this.time = timeEndpoint;\n    this.subscribe = subscriptionManager.adaptSubscribeChange.bind(subscriptionManager);\n    this.presence = subscriptionManager.adaptPresenceChange.bind(subscriptionManager);\n    this.unsubscribe = subscriptionManager.adaptUnsubscribeChange.bind(subscriptionManager);\n    this.disconnect = subscriptionManager.disconnect.bind(subscriptionManager);\n    this.reconnect = subscriptionManager.reconnect.bind(subscriptionManager);\n\n    this.destroy = function (isOffline) {\n      subscriptionManager.unsubscribeAll(isOffline);\n      subscriptionManager.disconnect();\n    };\n\n    this.stop = this.destroy;\n    this.unsubscribeAll = subscriptionManager.unsubscribeAll.bind(subscriptionManager);\n    this.getSubscribedChannels = subscriptionManager.getSubscribedChannels.bind(subscriptionManager);\n    this.getSubscribedChannelGroups = subscriptionManager.getSubscribedChannelGroups.bind(subscriptionManager);\n    this.encrypt = crypto.encrypt.bind(crypto);\n    this.decrypt = crypto.decrypt.bind(crypto);\n    this.getAuthKey = modules.config.getAuthKey.bind(modules.config);\n    this.setAuthKey = modules.config.setAuthKey.bind(modules.config);\n    this.setCipherKey = modules.config.setCipherKey.bind(modules.config);\n    this.getUUID = modules.config.getUUID.bind(modules.config);\n    this.setUUID = modules.config.setUUID.bind(modules.config);\n    this.getFilterExpression = modules.config.getFilterExpression.bind(modules.config);\n    this.setFilterExpression = modules.config.setFilterExpression.bind(modules.config);\n    this.setHeartbeatInterval = modules.config.setHeartbeatInterval.bind(modules.config);\n\n    if (networking.hasModule('proxy')) {\n      this.setProxy = function (proxy) {\n        modules.config.setProxy(proxy);\n\n        _this.reconnect();\n      };\n    }\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"getVersion\",\n    value: function getVersion() {\n      return this._config.getVersion();\n    }\n  }, {\n    key: \"_addPnsdkSuffix\",\n    value: function _addPnsdkSuffix(name, suffix) {\n      this._config._addPnsdkSuffix(name, suffix);\n    }\n  }, {\n    key: \"networkDownDetected\",\n    value: function networkDownDetected() {\n      this._listenerManager.announceNetworkDown();\n\n      if (this._config.restore) {\n        this.disconnect();\n      } else {\n        this.destroy(true);\n      }\n    }\n  }, {\n    key: \"networkUpDetected\",\n    value: function networkUpDetected() {\n      this._listenerManager.announceNetworkUp();\n\n      this.reconnect();\n    }\n  }], [{\n    key: \"notificationPayload\",\n    value: function notificationPayload(title, body) {\n      return new _push_payload[\"default\"](title, body);\n    }\n  }, {\n    key: \"generateUUID\",\n    value: function generateUUID() {\n      return _uuid[\"default\"].createUUID();\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\n(0, _defineProperty2[\"default\"])(_default, \"OPERATIONS\", _operations[\"default\"]);\n(0, _defineProperty2[\"default\"])(_default, \"CATEGORIES\", _categories[\"default\"]);\nmodule.exports = exports.default;"},{"id":32,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/webpack/buildin/global.js","name":"(webpack)/buildin/global.js","index":20,"index2":16,"size":472,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/node-libs-browser/node_modules/buffer/index.js","issuerId":21,"issuerName":"./node_modules/node-libs-browser/node_modules/buffer/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":131,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/crypto/modules/web.js","name":"./src/crypto/modules/web.js","profile":{"factory":905,"building":85,"dependencies":2695}},{"id":21,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/node-libs-browser/node_modules/buffer/index.js","name":"./node_modules/node-libs-browser/node_modules/buffer/index.js","profile":{"factory":2710,"building":62}}],"profile":{"factory":96,"building":29},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":21,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/node-libs-browser/node_modules/buffer/index.js","module":"./node_modules/node-libs-browser/node_modules/buffer/index.js","moduleName":"./node_modules/node-libs-browser/node_modules/buffer/index.js","type":"cjs require","userRequest":"global","loc":"1:0-47"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":3,"source":"var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n"},{"id":36,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","name":"./src/core/components/subscription_manager.js","index":25,"index2":31,"size":26854,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/subscription_manager","loc":"22:51-95"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime/helpers/typeof\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _cryptography = _interopRequireDefault(require(\"../components/cryptography\"));\n\nvar _config = _interopRequireDefault(require(\"../components/config\"));\n\nvar _listener_manager = _interopRequireDefault(require(\"../components/listener_manager\"));\n\nvar _reconnection_manager = _interopRequireDefault(require(\"../components/reconnection_manager\"));\n\nvar _deduping_manager = _interopRequireDefault(require(\"../components/deduping_manager\"));\n\nvar _utils = _interopRequireDefault(require(\"../utils\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _categories = _interopRequireDefault(require(\"../constants/categories\"));\n\nvar _default = function () {\n  function _default(_ref) {\n    var subscribeEndpoint = _ref.subscribeEndpoint,\n        leaveEndpoint = _ref.leaveEndpoint,\n        heartbeatEndpoint = _ref.heartbeatEndpoint,\n        setStateEndpoint = _ref.setStateEndpoint,\n        timeEndpoint = _ref.timeEndpoint,\n        getFileUrl = _ref.getFileUrl,\n        config = _ref.config,\n        crypto = _ref.crypto,\n        listenerManager = _ref.listenerManager;\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_crypto\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_config\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_listenerManager\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_reconnectionManager\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_leaveEndpoint\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_heartbeatEndpoint\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_setStateEndpoint\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_subscribeEndpoint\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_getFileUrl\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_channels\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_presenceChannels\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_heartbeatChannels\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_heartbeatChannelGroups\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_channelGroups\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_presenceChannelGroups\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_currentTimetoken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_lastTimetoken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_storedTimetoken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_region\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_subscribeCall\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_heartbeatTimer\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_subscriptionStatusAnnounced\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_autoNetworkDetection\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_isOnline\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_pendingChannelSubscriptions\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_pendingChannelGroupSubscriptions\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_dedupingManager\", void 0);\n    this._listenerManager = listenerManager;\n    this._config = config;\n    this._leaveEndpoint = leaveEndpoint;\n    this._heartbeatEndpoint = heartbeatEndpoint;\n    this._setStateEndpoint = setStateEndpoint;\n    this._subscribeEndpoint = subscribeEndpoint;\n    this._getFileUrl = getFileUrl;\n    this._crypto = crypto;\n    this._channels = {};\n    this._presenceChannels = {};\n    this._heartbeatChannels = {};\n    this._heartbeatChannelGroups = {};\n    this._channelGroups = {};\n    this._presenceChannelGroups = {};\n    this._pendingChannelSubscriptions = [];\n    this._pendingChannelGroupSubscriptions = [];\n    this._currentTimetoken = 0;\n    this._lastTimetoken = 0;\n    this._storedTimetoken = null;\n    this._subscriptionStatusAnnounced = false;\n    this._isOnline = true;\n    this._reconnectionManager = new _reconnection_manager[\"default\"]({\n      timeEndpoint: timeEndpoint\n    });\n    this._dedupingManager = new _deduping_manager[\"default\"]({\n      config: config\n    });\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"adaptStateChange\",\n    value: function adaptStateChange(args, callback) {\n      var _this = this;\n\n      var state = args.state,\n          _args$channels = args.channels,\n          channels = _args$channels === void 0 ? [] : _args$channels,\n          _args$channelGroups = args.channelGroups,\n          channelGroups = _args$channelGroups === void 0 ? [] : _args$channelGroups;\n      channels.forEach(function (channel) {\n        if (channel in _this._channels) _this._channels[channel].state = state;\n      });\n      channelGroups.forEach(function (channelGroup) {\n        if (channelGroup in _this._channelGroups) {\n          _this._channelGroups[channelGroup].state = state;\n        }\n      });\n      return this._setStateEndpoint({\n        state: state,\n        channels: channels,\n        channelGroups: channelGroups\n      }, callback);\n    }\n  }, {\n    key: \"adaptPresenceChange\",\n    value: function adaptPresenceChange(args) {\n      var _this2 = this;\n\n      var connected = args.connected,\n          _args$channels2 = args.channels,\n          channels = _args$channels2 === void 0 ? [] : _args$channels2,\n          _args$channelGroups2 = args.channelGroups,\n          channelGroups = _args$channelGroups2 === void 0 ? [] : _args$channelGroups2;\n\n      if (connected) {\n        channels.forEach(function (channel) {\n          _this2._heartbeatChannels[channel] = {\n            state: {}\n          };\n        });\n        channelGroups.forEach(function (channelGroup) {\n          _this2._heartbeatChannelGroups[channelGroup] = {\n            state: {}\n          };\n        });\n      } else {\n        channels.forEach(function (channel) {\n          if (channel in _this2._heartbeatChannels) {\n            delete _this2._heartbeatChannels[channel];\n          }\n        });\n        channelGroups.forEach(function (channelGroup) {\n          if (channelGroup in _this2._heartbeatChannelGroups) {\n            delete _this2._heartbeatChannelGroups[channelGroup];\n          }\n        });\n\n        if (this._config.suppressLeaveEvents === false) {\n          this._leaveEndpoint({\n            channels: channels,\n            channelGroups: channelGroups\n          }, function (status) {\n            _this2._listenerManager.announceStatus(status);\n          });\n        }\n      }\n\n      this.reconnect();\n    }\n  }, {\n    key: \"adaptSubscribeChange\",\n    value: function adaptSubscribeChange(args) {\n      var _this3 = this;\n\n      var timetoken = args.timetoken,\n          _args$channels3 = args.channels,\n          channels = _args$channels3 === void 0 ? [] : _args$channels3,\n          _args$channelGroups3 = args.channelGroups,\n          channelGroups = _args$channelGroups3 === void 0 ? [] : _args$channelGroups3,\n          _args$withPresence = args.withPresence,\n          withPresence = _args$withPresence === void 0 ? false : _args$withPresence,\n          _args$withHeartbeats = args.withHeartbeats,\n          withHeartbeats = _args$withHeartbeats === void 0 ? false : _args$withHeartbeats;\n\n      if (!this._config.subscribeKey || this._config.subscribeKey === '') {\n        if (console && console.log) {\n          console.log('subscribe key missing; aborting subscribe');\n        }\n\n        return;\n      }\n\n      if (timetoken) {\n        this._lastTimetoken = this._currentTimetoken;\n        this._currentTimetoken = timetoken;\n      }\n\n      if (this._currentTimetoken !== '0' && this._currentTimetoken !== 0) {\n        this._storedTimetoken = this._currentTimetoken;\n        this._currentTimetoken = 0;\n      }\n\n      channels.forEach(function (channel) {\n        _this3._channels[channel] = {\n          state: {}\n        };\n        if (withPresence) _this3._presenceChannels[channel] = {};\n        if (withHeartbeats || _this3._config.getHeartbeatInterval()) _this3._heartbeatChannels[channel] = {};\n\n        _this3._pendingChannelSubscriptions.push(channel);\n      });\n      channelGroups.forEach(function (channelGroup) {\n        _this3._channelGroups[channelGroup] = {\n          state: {}\n        };\n        if (withPresence) _this3._presenceChannelGroups[channelGroup] = {};\n        if (withHeartbeats || _this3._config.getHeartbeatInterval()) _this3._heartbeatChannelGroups[channelGroup] = {};\n\n        _this3._pendingChannelGroupSubscriptions.push(channelGroup);\n      });\n      this._subscriptionStatusAnnounced = false;\n      this.reconnect();\n    }\n  }, {\n    key: \"adaptUnsubscribeChange\",\n    value: function adaptUnsubscribeChange(args, isOffline) {\n      var _this4 = this;\n\n      var _args$channels4 = args.channels,\n          channels = _args$channels4 === void 0 ? [] : _args$channels4,\n          _args$channelGroups4 = args.channelGroups,\n          channelGroups = _args$channelGroups4 === void 0 ? [] : _args$channelGroups4;\n      var actualChannels = [];\n      var actualChannelGroups = [];\n      channels.forEach(function (channel) {\n        if (channel in _this4._channels) {\n          delete _this4._channels[channel];\n          actualChannels.push(channel);\n\n          if (channel in _this4._heartbeatChannels) {\n            delete _this4._heartbeatChannels[channel];\n          }\n        }\n\n        if (channel in _this4._presenceChannels) {\n          delete _this4._presenceChannels[channel];\n          actualChannels.push(channel);\n        }\n      });\n      channelGroups.forEach(function (channelGroup) {\n        if (channelGroup in _this4._channelGroups) {\n          delete _this4._channelGroups[channelGroup];\n          actualChannelGroups.push(channelGroup);\n\n          if (channelGroup in _this4._heartbeatChannelGroups) {\n            delete _this4._heartbeatChannelGroups[channelGroup];\n          }\n        }\n\n        if (channelGroup in _this4._presenceChannelGroups) {\n          delete _this4._channelGroups[channelGroup];\n          actualChannelGroups.push(channelGroup);\n        }\n      });\n\n      if (actualChannels.length === 0 && actualChannelGroups.length === 0) {\n        return;\n      }\n\n      if (this._config.suppressLeaveEvents === false && !isOffline) {\n        this._leaveEndpoint({\n          channels: actualChannels,\n          channelGroups: actualChannelGroups\n        }, function (status) {\n          status.affectedChannels = actualChannels;\n          status.affectedChannelGroups = actualChannelGroups;\n          status.currentTimetoken = _this4._currentTimetoken;\n          status.lastTimetoken = _this4._lastTimetoken;\n\n          _this4._listenerManager.announceStatus(status);\n        });\n      }\n\n      if (Object.keys(this._channels).length === 0 && Object.keys(this._presenceChannels).length === 0 && Object.keys(this._channelGroups).length === 0 && Object.keys(this._presenceChannelGroups).length === 0) {\n        this._lastTimetoken = 0;\n        this._currentTimetoken = 0;\n        this._storedTimetoken = null;\n        this._region = null;\n\n        this._reconnectionManager.stopPolling();\n      }\n\n      this.reconnect();\n    }\n  }, {\n    key: \"unsubscribeAll\",\n    value: function unsubscribeAll(isOffline) {\n      this.adaptUnsubscribeChange({\n        channels: this.getSubscribedChannels(),\n        channelGroups: this.getSubscribedChannelGroups()\n      }, isOffline);\n    }\n  }, {\n    key: \"getHeartbeatChannels\",\n    value: function getHeartbeatChannels() {\n      return Object.keys(this._heartbeatChannels);\n    }\n  }, {\n    key: \"getHeartbeatChannelGroups\",\n    value: function getHeartbeatChannelGroups() {\n      return Object.keys(this._heartbeatChannelGroups);\n    }\n  }, {\n    key: \"getSubscribedChannels\",\n    value: function getSubscribedChannels() {\n      return Object.keys(this._channels);\n    }\n  }, {\n    key: \"getSubscribedChannelGroups\",\n    value: function getSubscribedChannelGroups() {\n      return Object.keys(this._channelGroups);\n    }\n  }, {\n    key: \"reconnect\",\n    value: function reconnect() {\n      this._startSubscribeLoop();\n\n      this._registerHeartbeatTimer();\n    }\n  }, {\n    key: \"disconnect\",\n    value: function disconnect() {\n      this._stopSubscribeLoop();\n\n      this._stopHeartbeatTimer();\n\n      this._reconnectionManager.stopPolling();\n    }\n  }, {\n    key: \"_registerHeartbeatTimer\",\n    value: function _registerHeartbeatTimer() {\n      this._stopHeartbeatTimer();\n\n      if (this._config.getHeartbeatInterval() === 0 || this._config.getHeartbeatInterval() === undefined) {\n        return;\n      }\n\n      this._performHeartbeatLoop();\n\n      this._heartbeatTimer = setInterval(this._performHeartbeatLoop.bind(this), this._config.getHeartbeatInterval() * 1000);\n    }\n  }, {\n    key: \"_stopHeartbeatTimer\",\n    value: function _stopHeartbeatTimer() {\n      if (this._heartbeatTimer) {\n        clearInterval(this._heartbeatTimer);\n        this._heartbeatTimer = null;\n      }\n    }\n  }, {\n    key: \"_performHeartbeatLoop\",\n    value: function _performHeartbeatLoop() {\n      var _this5 = this;\n\n      var heartbeatChannels = this.getHeartbeatChannels();\n      var heartbeatChannelGroups = this.getHeartbeatChannelGroups();\n      var presenceState = {};\n\n      if (heartbeatChannels.length === 0 && heartbeatChannelGroups.length === 0) {\n        return;\n      }\n\n      this.getSubscribedChannels().forEach(function (channel) {\n        var channelState = _this5._channels[channel].state;\n\n        if (Object.keys(channelState).length) {\n          presenceState[channel] = channelState;\n        }\n      });\n      this.getSubscribedChannelGroups().forEach(function (channelGroup) {\n        var channelGroupState = _this5._channelGroups[channelGroup].state;\n\n        if (Object.keys(channelGroupState).length) {\n          presenceState[channelGroup] = channelGroupState;\n        }\n      });\n\n      var onHeartbeat = function onHeartbeat(status) {\n        if (status.error && _this5._config.announceFailedHeartbeats) {\n          _this5._listenerManager.announceStatus(status);\n        }\n\n        if (status.error && _this5._config.autoNetworkDetection && _this5._isOnline) {\n          _this5._isOnline = false;\n\n          _this5.disconnect();\n\n          _this5._listenerManager.announceNetworkDown();\n\n          _this5.reconnect();\n        }\n\n        if (!status.error && _this5._config.announceSuccessfulHeartbeats) {\n          _this5._listenerManager.announceStatus(status);\n        }\n      };\n\n      this._heartbeatEndpoint({\n        channels: heartbeatChannels,\n        channelGroups: heartbeatChannelGroups,\n        state: presenceState\n      }, onHeartbeat.bind(this));\n    }\n  }, {\n    key: \"_startSubscribeLoop\",\n    value: function _startSubscribeLoop() {\n      var _this6 = this;\n\n      this._stopSubscribeLoop();\n\n      var presenceState = {};\n      var channels = [];\n      var channelGroups = [];\n      Object.keys(this._channels).forEach(function (channel) {\n        var channelState = _this6._channels[channel].state;\n\n        if (Object.keys(channelState).length) {\n          presenceState[channel] = channelState;\n        }\n\n        channels.push(channel);\n      });\n      Object.keys(this._presenceChannels).forEach(function (channel) {\n        channels.push(\"\".concat(channel, \"-pnpres\"));\n      });\n      Object.keys(this._channelGroups).forEach(function (channelGroup) {\n        var channelGroupState = _this6._channelGroups[channelGroup].state;\n\n        if (Object.keys(channelGroupState).length) {\n          presenceState[channelGroup] = channelGroupState;\n        }\n\n        channelGroups.push(channelGroup);\n      });\n      Object.keys(this._presenceChannelGroups).forEach(function (channelGroup) {\n        channelGroups.push(\"\".concat(channelGroup, \"-pnpres\"));\n      });\n\n      if (channels.length === 0 && channelGroups.length === 0) {\n        return;\n      }\n\n      var subscribeArgs = {\n        channels: channels,\n        channelGroups: channelGroups,\n        state: presenceState,\n        timetoken: this._currentTimetoken,\n        filterExpression: this._config.filterExpression,\n        region: this._region\n      };\n      this._subscribeCall = this._subscribeEndpoint(subscribeArgs, this._processSubscribeResponse.bind(this));\n    }\n  }, {\n    key: \"_processSubscribeResponse\",\n    value: function _processSubscribeResponse(status, payload) {\n      var _this7 = this;\n\n      if (status.error) {\n        if (status.category === _categories[\"default\"].PNTimeoutCategory) {\n          this._startSubscribeLoop();\n        } else if (status.category === _categories[\"default\"].PNNetworkIssuesCategory) {\n          this.disconnect();\n\n          if (status.error && this._config.autoNetworkDetection && this._isOnline) {\n            this._isOnline = false;\n\n            this._listenerManager.announceNetworkDown();\n          }\n\n          this._reconnectionManager.onReconnection(function () {\n            if (_this7._config.autoNetworkDetection && !_this7._isOnline) {\n              _this7._isOnline = true;\n\n              _this7._listenerManager.announceNetworkUp();\n            }\n\n            _this7.reconnect();\n\n            _this7._subscriptionStatusAnnounced = true;\n            var reconnectedAnnounce = {\n              category: _categories[\"default\"].PNReconnectedCategory,\n              operation: status.operation,\n              lastTimetoken: _this7._lastTimetoken,\n              currentTimetoken: _this7._currentTimetoken\n            };\n\n            _this7._listenerManager.announceStatus(reconnectedAnnounce);\n          });\n\n          this._reconnectionManager.startPolling();\n\n          this._listenerManager.announceStatus(status);\n        } else if (status.category === _categories[\"default\"].PNBadRequestCategory) {\n          this._stopHeartbeatTimer();\n\n          this._listenerManager.announceStatus(status);\n        } else {\n          this._listenerManager.announceStatus(status);\n        }\n\n        return;\n      }\n\n      if (this._storedTimetoken) {\n        this._currentTimetoken = this._storedTimetoken;\n        this._storedTimetoken = null;\n      } else {\n        this._lastTimetoken = this._currentTimetoken;\n        this._currentTimetoken = payload.metadata.timetoken;\n      }\n\n      if (!this._subscriptionStatusAnnounced) {\n        var connectedAnnounce = {};\n        connectedAnnounce.category = _categories[\"default\"].PNConnectedCategory;\n        connectedAnnounce.operation = status.operation;\n        connectedAnnounce.affectedChannels = this._pendingChannelSubscriptions;\n        connectedAnnounce.subscribedChannels = this.getSubscribedChannels();\n        connectedAnnounce.affectedChannelGroups = this._pendingChannelGroupSubscriptions;\n        connectedAnnounce.lastTimetoken = this._lastTimetoken;\n        connectedAnnounce.currentTimetoken = this._currentTimetoken;\n        this._subscriptionStatusAnnounced = true;\n\n        this._listenerManager.announceStatus(connectedAnnounce);\n\n        this._pendingChannelSubscriptions = [];\n        this._pendingChannelGroupSubscriptions = [];\n      }\n\n      var messages = payload.messages || [];\n      var _this$_config = this._config,\n          requestMessageCountThreshold = _this$_config.requestMessageCountThreshold,\n          dedupeOnSubscribe = _this$_config.dedupeOnSubscribe;\n\n      if (requestMessageCountThreshold && messages.length >= requestMessageCountThreshold) {\n        var countAnnouncement = {};\n        countAnnouncement.category = _categories[\"default\"].PNRequestMessageCountExceededCategory;\n        countAnnouncement.operation = status.operation;\n\n        this._listenerManager.announceStatus(countAnnouncement);\n      }\n\n      messages.forEach(function (message) {\n        var channel = message.channel;\n        var subscriptionMatch = message.subscriptionMatch;\n        var publishMetaData = message.publishMetaData;\n\n        if (channel === subscriptionMatch) {\n          subscriptionMatch = null;\n        }\n\n        if (dedupeOnSubscribe) {\n          if (_this7._dedupingManager.isDuplicate(message)) {\n            return;\n          } else {\n            _this7._dedupingManager.addEntry(message);\n          }\n        }\n\n        if (_utils[\"default\"].endsWith(message.channel, '-pnpres')) {\n          var announce = {};\n          announce.channel = null;\n          announce.subscription = null;\n          announce.actualChannel = subscriptionMatch != null ? channel : null;\n          announce.subscribedChannel = subscriptionMatch != null ? subscriptionMatch : channel;\n\n          if (channel) {\n            announce.channel = channel.substring(0, channel.lastIndexOf('-pnpres'));\n          }\n\n          if (subscriptionMatch) {\n            announce.subscription = subscriptionMatch.substring(0, subscriptionMatch.lastIndexOf('-pnpres'));\n          }\n\n          announce.action = message.payload.action;\n          announce.state = message.payload.data;\n          announce.timetoken = publishMetaData.publishTimetoken;\n          announce.occupancy = message.payload.occupancy;\n          announce.uuid = message.payload.uuid;\n          announce.timestamp = message.payload.timestamp;\n\n          if (message.payload.join) {\n            announce.join = message.payload.join;\n          }\n\n          if (message.payload.leave) {\n            announce.leave = message.payload.leave;\n          }\n\n          if (message.payload.timeout) {\n            announce.timeout = message.payload.timeout;\n          }\n\n          _this7._listenerManager.announcePresence(announce);\n        } else if (message.messageType === 1) {\n          var _announce = {};\n          _announce.channel = null;\n          _announce.subscription = null;\n          _announce.channel = channel;\n          _announce.subscription = subscriptionMatch;\n          _announce.timetoken = publishMetaData.publishTimetoken;\n          _announce.publisher = message.issuingClientId;\n\n          if (message.userMetadata) {\n            _announce.userMetadata = message.userMetadata;\n          }\n\n          _announce.message = message.payload;\n\n          _this7._listenerManager.announceSignal(_announce);\n        } else if (message.messageType === 2) {\n          var _announce2 = {};\n          _announce2.channel = null;\n          _announce2.subscription = null;\n          _announce2.channel = channel;\n          _announce2.subscription = subscriptionMatch;\n          _announce2.timetoken = publishMetaData.publishTimetoken;\n          _announce2.publisher = message.issuingClientId;\n\n          if (message.userMetadata) {\n            _announce2.userMetadata = message.userMetadata;\n          }\n\n          _announce2.message = {\n            event: message.payload.event,\n            type: message.payload.type,\n            data: message.payload.data\n          };\n\n          _this7._listenerManager.announceObjects(_announce2);\n\n          if (message.payload.type === 'user') {\n            _this7._listenerManager.announceUser(_announce2);\n          } else if (message.payload.type === 'space') {\n            _this7._listenerManager.announceSpace(_announce2);\n          } else if (message.payload.type === 'membership') {\n            _this7._listenerManager.announceMembership(_announce2);\n          }\n        } else if (message.messageType === 3) {\n          var _announce3 = {};\n          _announce3.channel = channel;\n          _announce3.subscription = subscriptionMatch;\n          _announce3.timetoken = publishMetaData.publishTimetoken;\n          _announce3.publisher = message.issuingClientId;\n          _announce3.data = {\n            messageTimetoken: message.payload.data.messageTimetoken,\n            actionTimetoken: message.payload.data.actionTimetoken,\n            type: message.payload.data.type,\n            uuid: message.issuingClientId,\n            value: message.payload.data.value\n          };\n          _announce3.event = message.payload.event;\n\n          _this7._listenerManager.announceMessageAction(_announce3);\n        } else if (message.messageType === 4) {\n          var _announce4 = {};\n          _announce4.channel = channel;\n          _announce4.subscription = subscriptionMatch;\n          _announce4.timetoken = publishMetaData.publishTimetoken;\n          _announce4.publisher = message.issuingClientId;\n          var msgPayload = message.payload;\n\n          if (_this7._config.cipherKey) {\n            var decryptedPayload = _this7._crypto.decrypt(message.payload);\n\n            if ((0, _typeof2[\"default\"])(decryptedPayload) === 'object' && decryptedPayload !== null) {\n              msgPayload = decryptedPayload;\n            }\n          }\n\n          if (message.userMetadata) {\n            _announce4.userMetadata = message.userMetadata;\n          }\n\n          _announce4.message = msgPayload.message;\n          _announce4.file = {\n            id: msgPayload.file.id,\n            name: msgPayload.file.name,\n            url: _this7._getFileUrl({\n              id: msgPayload.file.id,\n              name: msgPayload.file.name,\n              channel: channel\n            })\n          };\n\n          _this7._listenerManager.announceFile(_announce4);\n        } else {\n          var _announce5 = {};\n          _announce5.channel = null;\n          _announce5.subscription = null;\n          _announce5.actualChannel = subscriptionMatch != null ? channel : null;\n          _announce5.subscribedChannel = subscriptionMatch != null ? subscriptionMatch : channel;\n          _announce5.channel = channel;\n          _announce5.subscription = subscriptionMatch;\n          _announce5.timetoken = publishMetaData.publishTimetoken;\n          _announce5.publisher = message.issuingClientId;\n\n          if (message.userMetadata) {\n            _announce5.userMetadata = message.userMetadata;\n          }\n\n          if (_this7._config.cipherKey) {\n            _announce5.message = _this7._crypto.decrypt(message.payload);\n          } else {\n            _announce5.message = message.payload;\n          }\n\n          _this7._listenerManager.announceMessage(_announce5);\n        }\n      });\n      this._region = payload.metadata.region;\n\n      this._startSubscribeLoop();\n    }\n  }, {\n    key: \"_stopSubscribeLoop\",\n    value: function _stopSubscribeLoop() {\n      if (this._subscribeCall) {\n        if (typeof this._subscribeCall.abort === 'function') {\n          this._subscribeCall.abort();\n        }\n\n        this._subscribeCall = null;\n      }\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":37,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/reconnection_manager.js","name":"./src/core/components/reconnection_manager.js","index":28,"index2":27,"size":1856,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","issuerId":36,"issuerName":"./src/core/components/subscription_manager.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}},{"id":36,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","name":"./src/core/components/subscription_manager.js","profile":{"factory":695,"building":2433,"dependencies":2167}}],"profile":{"factory":2167,"building":56,"dependencies":2},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../components/reconnection_manager","loc":"24:51-96"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":3,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _time = _interopRequireDefault(require(\"../endpoints/time\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _default = function () {\n  function _default(_ref) {\n    var timeEndpoint = _ref.timeEndpoint;\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_reconnectionCallback\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_timeEndpoint\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_timeTimer\", void 0);\n    this._timeEndpoint = timeEndpoint;\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"onReconnection\",\n    value: function onReconnection(reconnectionCallback) {\n      this._reconnectionCallback = reconnectionCallback;\n    }\n  }, {\n    key: \"startPolling\",\n    value: function startPolling() {\n      this._timeTimer = setInterval(this._performTimeLoop.bind(this), 3000);\n    }\n  }, {\n    key: \"stopPolling\",\n    value: function stopPolling() {\n      clearInterval(this._timeTimer);\n    }\n  }, {\n    key: \"_performTimeLoop\",\n    value: function _performTimeLoop() {\n      var _this = this;\n\n      this._timeEndpoint(function (status) {\n        if (!status.error) {\n          clearInterval(_this._timeTimer);\n\n          _this._reconnectionCallback();\n        }\n      });\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":38,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/deduping_manager.js","name":"./src/core/components/deduping_manager.js","index":31,"index2":28,"size":2120,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","issuerId":36,"issuerName":"./src/core/components/subscription_manager.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}},{"id":36,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","name":"./src/core/components/subscription_manager.js","profile":{"factory":695,"building":2433,"dependencies":2167}}],"profile":{"factory":2167,"building":56,"dependencies":2},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":36,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/subscription_manager.js","module":"./src/core/components/subscription_manager.js","moduleName":"./src/core/components/subscription_manager.js","type":"cjs require","userRequest":"../components/deduping_manager","loc":"26:47-88"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":3,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _config = _interopRequireDefault(require(\"../components/config\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar hashCode = function hashCode(payload) {\n  var hash = 0;\n  if (payload.length === 0) return hash;\n\n  for (var i = 0; i < payload.length; i += 1) {\n    var character = payload.charCodeAt(i);\n    hash = (hash << 5) - hash + character;\n    hash = hash & hash;\n  }\n\n  return hash;\n};\n\nvar _default = function () {\n  function _default(_ref) {\n    var config = _ref.config;\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_config\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"hashHistory\", void 0);\n    this.hashHistory = [];\n    this._config = config;\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"getKey\",\n    value: function getKey(message) {\n      var hashedPayload = hashCode(JSON.stringify(message.payload)).toString();\n      var timetoken = message.publishMetaData.publishTimetoken;\n      return \"\".concat(timetoken, \"-\").concat(hashedPayload);\n    }\n  }, {\n    key: \"isDuplicate\",\n    value: function isDuplicate(message) {\n      return this.hashHistory.includes(this.getKey(message));\n    }\n  }, {\n    key: \"addEntry\",\n    value: function addEntry(message) {\n      if (this.hashHistory.length >= this._config.maximumCacheSize) {\n        this.hashHistory.shift();\n      }\n\n      this.hashHistory.push(this.getKey(message));\n    }\n  }, {\n    key: \"clearHistory\",\n    value: function clearHistory() {\n      this.hashHistory = [];\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":40,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/telemetry_manager.js","name":"./src/core/components/telemetry_manager.js","index":34,"index2":32,"size":6101,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/telemetry_manager","loc":"24:48-89"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nvar _default = function () {\n  function _default(configuration) {\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_maximumSamplesCount\", 100);\n    (0, _defineProperty2[\"default\"])(this, \"_trackedLatencies\", {});\n    (0, _defineProperty2[\"default\"])(this, \"_latencies\", {});\n    this._maximumSamplesCount = configuration.maximumSamplesCount || this._maximumSamplesCount;\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"operationsLatencyForRequest\",\n    value: function operationsLatencyForRequest() {\n      var _this = this;\n\n      var latencies = {};\n      Object.keys(this._latencies).forEach(function (endpointName) {\n        var operationLatencies = _this._latencies[endpointName];\n\n        var averageLatency = _this._averageLatency(operationLatencies);\n\n        if (averageLatency > 0) {\n          latencies[\"l_\".concat(endpointName)] = averageLatency;\n        }\n      });\n      return latencies;\n    }\n  }, {\n    key: \"startLatencyMeasure\",\n    value: function startLatencyMeasure(operationType, identifier) {\n      if (operationType === _operations[\"default\"].PNSubscribeOperation || !identifier) {\n        return;\n      }\n\n      this._trackedLatencies[identifier] = Date.now();\n    }\n  }, {\n    key: \"stopLatencyMeasure\",\n    value: function stopLatencyMeasure(operationType, identifier) {\n      if (operationType === _operations[\"default\"].PNSubscribeOperation || !identifier) {\n        return;\n      }\n\n      var endpointName = this._endpointName(operationType);\n\n      var endpointLatencies = this._latencies[endpointName];\n      var startDate = this._trackedLatencies[identifier];\n\n      if (!endpointLatencies) {\n        endpointLatencies = this._latencies[endpointName] = [];\n      }\n\n      endpointLatencies.push(Date.now() - startDate);\n\n      if (endpointLatencies.length > this._maximumSamplesCount) {\n        endpointLatencies.splice(0, endpointLatencies.length - this._maximumSamplesCount);\n      }\n\n      delete this._trackedLatencies[identifier];\n    }\n  }, {\n    key: \"_averageLatency\",\n    value: function _averageLatency(latencies) {\n      var arrayReduce = function arrayReduce(accumulatedLatency, latency) {\n        return accumulatedLatency + latency;\n      };\n\n      return Math.floor(latencies.reduce(arrayReduce, 0) / latencies.length);\n    }\n  }, {\n    key: \"_endpointName\",\n    value: function _endpointName(operationType) {\n      var operation = null;\n\n      switch (operationType) {\n        case _operations[\"default\"].PNPublishOperation:\n          operation = 'pub';\n          break;\n\n        case _operations[\"default\"].PNSignalOperation:\n          operation = 'sig';\n          break;\n\n        case _operations[\"default\"].PNHistoryOperation:\n        case _operations[\"default\"].PNFetchMessagesOperation:\n        case _operations[\"default\"].PNDeleteMessagesOperation:\n        case _operations[\"default\"].PNMessageCounts:\n          operation = 'hist';\n          break;\n\n        case _operations[\"default\"].PNUnsubscribeOperation:\n        case _operations[\"default\"].PNWhereNowOperation:\n        case _operations[\"default\"].PNHereNowOperation:\n        case _operations[\"default\"].PNHeartbeatOperation:\n        case _operations[\"default\"].PNSetStateOperation:\n        case _operations[\"default\"].PNGetStateOperation:\n          operation = 'pres';\n          break;\n\n        case _operations[\"default\"].PNAddChannelsToGroupOperation:\n        case _operations[\"default\"].PNRemoveChannelsFromGroupOperation:\n        case _operations[\"default\"].PNChannelGroupsOperation:\n        case _operations[\"default\"].PNRemoveGroupOperation:\n        case _operations[\"default\"].PNChannelsForGroupOperation:\n          operation = 'cg';\n          break;\n\n        case _operations[\"default\"].PNPushNotificationEnabledChannelsOperation:\n        case _operations[\"default\"].PNRemoveAllPushNotificationsOperation:\n          operation = 'push';\n          break;\n\n        case _operations[\"default\"].PNCreateUserOperation:\n        case _operations[\"default\"].PNUpdateUserOperation:\n        case _operations[\"default\"].PNDeleteUserOperation:\n        case _operations[\"default\"].PNGetUserOperation:\n        case _operations[\"default\"].PNGetUsersOperation:\n        case _operations[\"default\"].PNCreateSpaceOperation:\n        case _operations[\"default\"].PNUpdateSpaceOperation:\n        case _operations[\"default\"].PNDeleteSpaceOperation:\n        case _operations[\"default\"].PNGetSpaceOperation:\n        case _operations[\"default\"].PNGetSpacesOperation:\n        case _operations[\"default\"].PNGetMembersOperation:\n        case _operations[\"default\"].PNUpdateMembersOperation:\n        case _operations[\"default\"].PNGetMembershipsOperation:\n        case _operations[\"default\"].PNUpdateMembershipsOperation:\n          operation = 'obj';\n          break;\n\n        case _operations[\"default\"].PNAddMessageActionOperation:\n        case _operations[\"default\"].PNRemoveMessageActionOperation:\n        case _operations[\"default\"].PNGetMessageActionsOperation:\n          operation = 'msga';\n          break;\n\n        case _operations[\"default\"].PNAccessManagerGrant:\n        case _operations[\"default\"].PNAccessManagerAudit:\n          operation = 'pam';\n          break;\n\n        case _operations[\"default\"].PNAccessManagerGrantToken:\n          operation = 'pam3';\n          break;\n\n        default:\n          operation = 'time';\n          break;\n      }\n\n      return operation;\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":41,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/push_payload.js","name":"./src/core/components/push_payload.js","index":35,"index2":35,"size":19951,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/push_payload","loc":"26:43-79"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = exports.FCMNotificationPayload = exports.MPNSNotificationPayload = exports.APNSNotificationPayload = void 0;\n\nvar _objectWithoutProperties2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutProperties\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inherits2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inherits\"));\n\nvar _possibleConstructorReturn2 = _interopRequireDefault(require(\"@babel/runtime/helpers/possibleConstructorReturn\"));\n\nvar _getPrototypeOf2 = _interopRequireDefault(require(\"@babel/runtime/helpers/getPrototypeOf\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2[\"default\"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2[\"default\"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2[\"default\"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2[\"default\"])(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nvar BaseNotificationPayload = function () {\n  (0, _createClass2[\"default\"])(BaseNotificationPayload, [{\n    key: \"payload\",\n    get: function get() {\n      return this._payload;\n    }\n  }, {\n    key: \"title\",\n    set: function set(value) {\n      this._title = value;\n    }\n  }, {\n    key: \"subtitle\",\n    set: function set(value) {\n      this._subtitle = value;\n    }\n  }, {\n    key: \"body\",\n    set: function set(value) {\n      this._body = value;\n    }\n  }, {\n    key: \"badge\",\n    set: function set(value) {\n      this._badge = value;\n    }\n  }, {\n    key: \"sound\",\n    set: function set(value) {\n      this._sound = value;\n    }\n  }]);\n\n  function BaseNotificationPayload(payload, title, body) {\n    (0, _classCallCheck2[\"default\"])(this, BaseNotificationPayload);\n    (0, _defineProperty2[\"default\"])(this, \"_subtitle\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_payload\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_badge\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_sound\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_title\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_body\", void 0);\n    this._payload = payload;\n\n    this._setDefaultPayloadStructure();\n\n    this.title = title;\n    this.body = body;\n  }\n\n  (0, _createClass2[\"default\"])(BaseNotificationPayload, [{\n    key: \"_setDefaultPayloadStructure\",\n    value: function _setDefaultPayloadStructure() {}\n  }, {\n    key: \"toObject\",\n    value: function toObject() {\n      return {};\n    }\n  }]);\n  return BaseNotificationPayload;\n}();\n\nvar APNSNotificationPayload = function (_BaseNotificationPayl) {\n  (0, _inherits2[\"default\"])(APNSNotificationPayload, _BaseNotificationPayl);\n\n  var _super = _createSuper(APNSNotificationPayload);\n\n  function APNSNotificationPayload() {\n    var _this;\n\n    (0, _classCallCheck2[\"default\"])(this, APNSNotificationPayload);\n\n    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    _this = _super.call.apply(_super, [this].concat(args));\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this), \"_configurations\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this), \"_apnsPushType\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this), \"_isSilent\", void 0);\n    return _this;\n  }\n\n  (0, _createClass2[\"default\"])(APNSNotificationPayload, [{\n    key: \"_setDefaultPayloadStructure\",\n    value: function _setDefaultPayloadStructure() {\n      this._payload.aps = {\n        alert: {}\n      };\n    }\n  }, {\n    key: \"toObject\",\n    value: function toObject() {\n      var _this2 = this;\n\n      var payload = _objectSpread({}, this._payload);\n\n      var aps = payload.aps;\n      var alert = aps.alert;\n\n      if (this._isSilent) {\n        aps['content-available'] = 1;\n      }\n\n      if (this._apnsPushType === 'apns2') {\n        if (!this._configurations || !this._configurations.length) {\n          throw new ReferenceError('APNS2 configuration is missing');\n        }\n\n        var configurations = [];\n\n        this._configurations.forEach(function (configuration) {\n          configurations.push(_this2._objectFromAPNS2Configuration(configuration));\n        });\n\n        if (configurations.length) {\n          payload.pn_push = configurations;\n        }\n      }\n\n      if (!alert || !Object.keys(alert).length) {\n        delete aps.alert;\n      }\n\n      if (this._isSilent) {\n        delete aps.alert;\n        delete aps.badge;\n        delete aps.sound;\n        alert = {};\n      }\n\n      return this._isSilent || Object.keys(alert).length ? payload : null;\n    }\n  }, {\n    key: \"_objectFromAPNS2Configuration\",\n    value: function _objectFromAPNS2Configuration(configuration) {\n      var _this3 = this;\n\n      if (!configuration.targets || !configuration.targets.length) {\n        throw new ReferenceError('At least one APNS2 target should be provided');\n      }\n\n      var targets = [];\n      configuration.targets.forEach(function (target) {\n        targets.push(_this3._objectFromAPNSTarget(target));\n      });\n      var collapseId = configuration.collapseId,\n          expirationDate = configuration.expirationDate;\n      var objectifiedConfiguration = {\n        auth_method: 'token',\n        targets: targets,\n        version: 'v2'\n      };\n\n      if (collapseId && collapseId.length) {\n        objectifiedConfiguration.collapse_id = collapseId;\n      }\n\n      if (expirationDate) {\n        objectifiedConfiguration.expiration = expirationDate.toISOString();\n      }\n\n      return objectifiedConfiguration;\n    }\n  }, {\n    key: \"_objectFromAPNSTarget\",\n    value: function _objectFromAPNSTarget(target) {\n      if (!target.topic || !target.topic.length) {\n        throw new TypeError('Target \\'topic\\' undefined.');\n      }\n\n      var topic = target.topic,\n          _target$environment = target.environment,\n          environment = _target$environment === void 0 ? 'development' : _target$environment,\n          _target$excludedDevic = target.excludedDevices,\n          excludedDevices = _target$excludedDevic === void 0 ? [] : _target$excludedDevic;\n      var objectifiedTarget = {\n        topic: topic,\n        environment: environment\n      };\n\n      if (excludedDevices.length) {\n        objectifiedTarget.excluded_devices = excludedDevices;\n      }\n\n      return objectifiedTarget;\n    }\n  }, {\n    key: \"configurations\",\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._configurations = value;\n    }\n  }, {\n    key: \"notification\",\n    get: function get() {\n      return this._payload.aps;\n    }\n  }, {\n    key: \"title\",\n    get: function get() {\n      return this._title;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.aps.alert.title = value;\n      this._title = value;\n    }\n  }, {\n    key: \"subtitle\",\n    get: function get() {\n      return this._subtitle;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.aps.alert.subtitle = value;\n      this._subtitle = value;\n    }\n  }, {\n    key: \"body\",\n    get: function get() {\n      return this._body;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.aps.alert.body = value;\n      this._body = value;\n    }\n  }, {\n    key: \"badge\",\n    get: function get() {\n      return this._badge;\n    },\n    set: function set(value) {\n      if (value === undefined || value === null) return;\n      this._payload.aps.badge = value;\n      this._badge = value;\n    }\n  }, {\n    key: \"sound\",\n    get: function get() {\n      return this._sound;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.aps.sound = value;\n      this._sound = value;\n    }\n  }, {\n    key: \"silent\",\n    set: function set(value) {\n      this._isSilent = value;\n    }\n  }]);\n  return APNSNotificationPayload;\n}(BaseNotificationPayload);\n\nexports.APNSNotificationPayload = APNSNotificationPayload;\n\nvar MPNSNotificationPayload = function (_BaseNotificationPayl2) {\n  (0, _inherits2[\"default\"])(MPNSNotificationPayload, _BaseNotificationPayl2);\n\n  var _super2 = _createSuper(MPNSNotificationPayload);\n\n  function MPNSNotificationPayload() {\n    var _this4;\n\n    (0, _classCallCheck2[\"default\"])(this, MPNSNotificationPayload);\n\n    for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n      args[_key2] = arguments[_key2];\n    }\n\n    _this4 = _super2.call.apply(_super2, [this].concat(args));\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this4), \"_backContent\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this4), \"_backTitle\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this4), \"_count\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this4), \"_type\", void 0);\n    return _this4;\n  }\n\n  (0, _createClass2[\"default\"])(MPNSNotificationPayload, [{\n    key: \"toObject\",\n    value: function toObject() {\n      return Object.keys(this._payload).length ? _objectSpread({}, this._payload) : null;\n    }\n  }, {\n    key: \"backContent\",\n    get: function get() {\n      return this._backContent;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.back_content = value;\n      this._backContent = value;\n    }\n  }, {\n    key: \"backTitle\",\n    get: function get() {\n      return this._backTitle;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.back_title = value;\n      this._backTitle = value;\n    }\n  }, {\n    key: \"count\",\n    get: function get() {\n      return this._count;\n    },\n    set: function set(value) {\n      if (value === undefined || value === null) return;\n      this._payload.count = value;\n      this._count = value;\n    }\n  }, {\n    key: \"title\",\n    get: function get() {\n      return this._title;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.title = value;\n      this._title = value;\n    }\n  }, {\n    key: \"type\",\n    get: function get() {\n      return this._type;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.type = value;\n      this._type = value;\n    }\n  }, {\n    key: \"subtitle\",\n    get: function get() {\n      return this.backTitle;\n    },\n    set: function set(value) {\n      this.backTitle = value;\n    }\n  }, {\n    key: \"body\",\n    get: function get() {\n      return this.backContent;\n    },\n    set: function set(value) {\n      this.backContent = value;\n    }\n  }, {\n    key: \"badge\",\n    get: function get() {\n      return this.count;\n    },\n    set: function set(value) {\n      this.count = value;\n    }\n  }]);\n  return MPNSNotificationPayload;\n}(BaseNotificationPayload);\n\nexports.MPNSNotificationPayload = MPNSNotificationPayload;\n\nvar FCMNotificationPayload = function (_BaseNotificationPayl3) {\n  (0, _inherits2[\"default\"])(FCMNotificationPayload, _BaseNotificationPayl3);\n\n  var _super3 = _createSuper(FCMNotificationPayload);\n\n  function FCMNotificationPayload() {\n    var _this5;\n\n    (0, _classCallCheck2[\"default\"])(this, FCMNotificationPayload);\n\n    for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n      args[_key3] = arguments[_key3];\n    }\n\n    _this5 = _super3.call.apply(_super3, [this].concat(args));\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this5), \"_isSilent\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this5), \"_icon\", void 0);\n    (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this5), \"_tag\", void 0);\n    return _this5;\n  }\n\n  (0, _createClass2[\"default\"])(FCMNotificationPayload, [{\n    key: \"_setDefaultPayloadStructure\",\n    value: function _setDefaultPayloadStructure() {\n      this._payload.notification = {};\n      this._payload.data = {};\n    }\n  }, {\n    key: \"toObject\",\n    value: function toObject() {\n      var data = _objectSpread({}, this._payload.data);\n\n      var notification = null;\n      var payload = {};\n\n      if (Object.keys(this._payload).length > 2) {\n        var _this$_payload = this._payload,\n            initialNotification = _this$_payload.notification,\n            initialData = _this$_payload.data,\n            additionalData = (0, _objectWithoutProperties2[\"default\"])(_this$_payload, [\"notification\", \"data\"]);\n        data = _objectSpread(_objectSpread({}, data), additionalData);\n      }\n\n      if (this._isSilent) {\n        data.notification = this._payload.notification;\n      } else {\n        notification = this._payload.notification;\n      }\n\n      if (Object.keys(data).length) {\n        payload.data = data;\n      }\n\n      if (notification && Object.keys(notification).length) {\n        payload.notification = notification;\n      }\n\n      return Object.keys(payload).length ? payload : null;\n    }\n  }, {\n    key: \"notification\",\n    get: function get() {\n      return this._payload.notification;\n    }\n  }, {\n    key: \"data\",\n    get: function get() {\n      return this._payload.data;\n    }\n  }, {\n    key: \"title\",\n    get: function get() {\n      return this._title;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.notification.title = value;\n      this._title = value;\n    }\n  }, {\n    key: \"body\",\n    get: function get() {\n      return this._body;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.notification.body = value;\n      this._body = value;\n    }\n  }, {\n    key: \"sound\",\n    get: function get() {\n      return this._sound;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.notification.sound = value;\n      this._sound = value;\n    }\n  }, {\n    key: \"icon\",\n    get: function get() {\n      return this._icon;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.notification.icon = value;\n      this._icon = value;\n    }\n  }, {\n    key: \"tag\",\n    get: function get() {\n      return this._tag;\n    },\n    set: function set(value) {\n      if (!value || !value.length) return;\n      this._payload.notification.tag = value;\n      this._tag = value;\n    }\n  }, {\n    key: \"silent\",\n    set: function set(value) {\n      this._isSilent = value;\n    }\n  }]);\n  return FCMNotificationPayload;\n}(BaseNotificationPayload);\n\nexports.FCMNotificationPayload = FCMNotificationPayload;\n\nvar NotificationsPayload = function () {\n  (0, _createClass2[\"default\"])(NotificationsPayload, [{\n    key: \"debugging\",\n    set: function set(value) {\n      this._debugging = value;\n    }\n  }, {\n    key: \"title\",\n    get: function get() {\n      return this._title;\n    }\n  }, {\n    key: \"body\",\n    get: function get() {\n      return this._body;\n    }\n  }, {\n    key: \"subtitle\",\n    get: function get() {\n      return this._subtitle;\n    },\n    set: function set(value) {\n      this._subtitle = value;\n      this.apns.subtitle = value;\n      this.mpns.subtitle = value;\n      this.fcm.subtitle = value;\n    }\n  }, {\n    key: \"badge\",\n    get: function get() {\n      return this._badge;\n    },\n    set: function set(value) {\n      this._badge = value;\n      this.apns.badge = value;\n      this.mpns.badge = value;\n      this.fcm.badge = value;\n    }\n  }, {\n    key: \"sound\",\n    get: function get() {\n      return this._sound;\n    },\n    set: function set(value) {\n      this._sound = value;\n      this.apns.sound = value;\n      this.mpns.sound = value;\n      this.fcm.sound = value;\n    }\n  }]);\n\n  function NotificationsPayload(title, body) {\n    (0, _classCallCheck2[\"default\"])(this, NotificationsPayload);\n    (0, _defineProperty2[\"default\"])(this, \"_payload\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_debugging\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_subtitle\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_badge\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_sound\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_title\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_body\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"apns\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"mpns\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"fcm\", void 0);\n    this._payload = {\n      apns: {},\n      mpns: {},\n      fcm: {}\n    };\n    this._title = title;\n    this._body = body;\n    this.apns = new APNSNotificationPayload(this._payload.apns, title, body);\n    this.mpns = new MPNSNotificationPayload(this._payload.mpns, title, body);\n    this.fcm = new FCMNotificationPayload(this._payload.fcm, title, body);\n  }\n\n  (0, _createClass2[\"default\"])(NotificationsPayload, [{\n    key: \"buildPayload\",\n    value: function buildPayload(platforms) {\n      var payload = {};\n\n      if (platforms.includes('apns') || platforms.includes('apns2')) {\n        this.apns._apnsPushType = platforms.includes('apns') ? 'apns' : 'apns2';\n        var apnsPayload = this.apns.toObject();\n\n        if (apnsPayload && Object.keys(apnsPayload).length) {\n          payload.pn_apns = apnsPayload;\n        }\n      }\n\n      if (platforms.includes('mpns')) {\n        var mpnsPayload = this.mpns.toObject();\n\n        if (mpnsPayload && Object.keys(mpnsPayload).length) {\n          payload.pn_mpns = mpnsPayload;\n        }\n      }\n\n      if (platforms.includes('fcm')) {\n        var fcmPayload = this.fcm.toObject();\n\n        if (fcmPayload && Object.keys(fcmPayload).length) {\n          payload.pn_gcm = fcmPayload;\n        }\n      }\n\n      if (Object.keys(payload).length && this._debugging) {\n        payload.pn_debug = true;\n      }\n\n      return payload;\n    }\n  }]);\n  return NotificationsPayload;\n}();\n\nvar _default = NotificationsPayload;\nexports[\"default\"] = _default;"},{"id":44,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/components/token_manager.js","name":"./src/core/components/token_manager.js","index":38,"index2":36,"size":9323,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./components/token_manager","loc":"30:44-81"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime/helpers/typeof\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _config = _interopRequireDefault(require(\"./config\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _default = function () {\n  function _default(config, cbor) {\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_config\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_cbor\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_userTokens\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_spaceTokens\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_userToken\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_spaceToken\", void 0);\n    this._config = config;\n    this._cbor = cbor;\n\n    this._initializeTokens();\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"_initializeTokens\",\n    value: function _initializeTokens() {\n      this._userTokens = {};\n      this._spaceTokens = {};\n      this._userToken = undefined;\n      this._spaceToken = undefined;\n    }\n  }, {\n    key: \"_setToken\",\n    value: function _setToken(token) {\n      var _this = this;\n\n      var tokenObject = this.parseToken(token);\n\n      if (tokenObject && tokenObject.resources) {\n        if (tokenObject.resources.users) {\n          Object.keys(tokenObject.resources.users).forEach(function (id) {\n            _this._userTokens[id] = token;\n          });\n        }\n\n        if (tokenObject.resources.spaces) {\n          Object.keys(tokenObject.resources.spaces).forEach(function (id) {\n            _this._spaceTokens[id] = token;\n          });\n        }\n      }\n\n      if (tokenObject && tokenObject.patterns) {\n        if (tokenObject.patterns.users && Object.keys(tokenObject.patterns.users).length > 0) {\n          this._userToken = token;\n        }\n\n        if (tokenObject.patterns.spaces && Object.keys(tokenObject.patterns.spaces).length > 0) {\n          this._spaceToken = token;\n        }\n      }\n    }\n  }, {\n    key: \"setToken\",\n    value: function setToken(token) {\n      if (token && token.length > 0) {\n        this._setToken(token);\n      }\n    }\n  }, {\n    key: \"setTokens\",\n    value: function setTokens(tokens) {\n      var _this2 = this;\n\n      if (tokens && tokens.length && (0, _typeof2[\"default\"])(tokens) === 'object') {\n        tokens.forEach(function (token) {\n          _this2.setToken(token);\n        });\n      }\n    }\n  }, {\n    key: \"getTokens\",\n    value: function getTokens(tokenDef) {\n      var _this3 = this;\n\n      var result = {\n        users: {},\n        spaces: {}\n      };\n\n      if (tokenDef) {\n        if (tokenDef.user) {\n          result.user = this._userToken;\n        }\n\n        if (tokenDef.space) {\n          result.space = this._spaceToken;\n        }\n\n        if (tokenDef.users) {\n          tokenDef.users.forEach(function (user) {\n            result.users[user] = _this3._userTokens[user];\n          });\n        }\n\n        if (tokenDef.space) {\n          tokenDef.spaces.forEach(function (space) {\n            result.spaces[space] = _this3._spaceTokens[space];\n          });\n        }\n      } else {\n        if (this._userToken) {\n          result.user = this._userToken;\n        }\n\n        if (this._spaceToken) {\n          result.space = this._spaceToken;\n        }\n\n        Object.keys(this._userTokens).forEach(function (user) {\n          result.users[user] = _this3._userTokens[user];\n        });\n        Object.keys(this._spaceTokens).forEach(function (space) {\n          result.spaces[space] = _this3._spaceTokens[space];\n        });\n      }\n\n      return result;\n    }\n  }, {\n    key: \"getToken\",\n    value: function getToken(type, id) {\n      var result;\n\n      if (id) {\n        if (type === 'user') {\n          result = this._userTokens[id];\n        } else if (type === 'space') {\n          result = this._spaceTokens[id];\n        }\n      } else if (type === 'user') {\n        result = this._userToken;\n      } else if (type === 'space') {\n        result = this._spaceToken;\n      }\n\n      return result;\n    }\n  }, {\n    key: \"extractPermissions\",\n    value: function extractPermissions(permissions) {\n      var permissionsResult = {\n        create: false,\n        read: false,\n        write: false,\n        manage: false,\n        \"delete\": false\n      };\n\n      if ((permissions & 16) === 16) {\n        permissionsResult.create = true;\n      }\n\n      if ((permissions & 8) === 8) {\n        permissionsResult[\"delete\"] = true;\n      }\n\n      if ((permissions & 4) === 4) {\n        permissionsResult.manage = true;\n      }\n\n      if ((permissions & 2) === 2) {\n        permissionsResult.write = true;\n      }\n\n      if ((permissions & 1) === 1) {\n        permissionsResult.read = true;\n      }\n\n      return permissionsResult;\n    }\n  }, {\n    key: \"parseToken\",\n    value: function parseToken(tokenString) {\n      var _this4 = this;\n\n      var parsed = this._cbor.decodeToken(tokenString);\n\n      if (parsed !== undefined) {\n        var userResourcePermissions = Object.keys(parsed.res.usr);\n        var spaceResourcePermissions = Object.keys(parsed.res.spc);\n        var channelResourcePermissions = Object.keys(parsed.res.chan);\n        var groupResourcePermissions = Object.keys(parsed.res.grp);\n        var userPatternPermissions = Object.keys(parsed.pat.usr);\n        var spacePatternPermissions = Object.keys(parsed.pat.spc);\n        var channelPatternPermissions = Object.keys(parsed.pat.chan);\n        var groupPatternPermissions = Object.keys(parsed.pat.grp);\n        var result = {\n          version: parsed.v,\n          timestamp: parsed.t,\n          ttl: parsed.ttl\n        };\n        var userResources = userResourcePermissions.length > 0;\n        var spaceResources = spaceResourcePermissions.length > 0;\n        var channelResources = channelResourcePermissions.length > 0;\n        var groupResources = groupResourcePermissions.length > 0;\n\n        if (userResources || spaceResources || channelResources || groupResources) {\n          result.resources = {};\n\n          if (userResources) {\n            result.resources.users = {};\n            userResourcePermissions.forEach(function (id) {\n              result.resources.users[id] = _this4.extractPermissions(parsed.res.usr[id]);\n            });\n          }\n\n          if (spaceResources) {\n            result.resources.spaces = {};\n            spaceResourcePermissions.forEach(function (id) {\n              result.resources.spaces[id] = _this4.extractPermissions(parsed.res.spc[id]);\n            });\n          }\n\n          if (channelResources) {\n            result.resources.channels = {};\n            channelResourcePermissions.forEach(function (id) {\n              result.resources.channels[id] = _this4.extractPermissions(parsed.res.chan[id]);\n            });\n          }\n\n          if (groupResources) {\n            result.resources.groups = {};\n            groupResourcePermissions.forEach(function (id) {\n              result.resources.groups[id] = _this4.extractPermissions(parsed.res.grp[id]);\n            });\n          }\n        }\n\n        var userPatterns = userPatternPermissions.length > 0;\n        var spacePatterns = spacePatternPermissions.length > 0;\n        var channelPatterns = channelPatternPermissions.length > 0;\n        var groupPatterns = groupPatternPermissions.length > 0;\n\n        if (userPatterns || spacePatterns || channelPatterns || groupPatterns) {\n          result.patterns = {};\n\n          if (userPatterns) {\n            result.patterns.users = {};\n            userPatternPermissions.forEach(function (id) {\n              result.patterns.users[id] = _this4.extractPermissions(parsed.pat.usr[id]);\n            });\n          }\n\n          if (spacePatterns) {\n            result.patterns.spaces = {};\n            spacePatternPermissions.forEach(function (id) {\n              result.patterns.spaces[id] = _this4.extractPermissions(parsed.pat.spc[id]);\n            });\n          }\n\n          if (channelPatterns) {\n            result.patterns.channels = {};\n            channelPatternPermissions.forEach(function (id) {\n              result.patterns.channels[id] = _this4.extractPermissions(parsed.pat.chan[id]);\n            });\n          }\n\n          if (groupPatterns) {\n            result.patterns.groups = {};\n            groupPatternPermissions.forEach(function (id) {\n              result.patterns.groups[id] = _this4.extractPermissions(parsed.pat.grp[id]);\n            });\n          }\n        }\n\n        if (Object.keys(parsed.meta).length > 0) {\n          result.meta = parsed.meta;\n        }\n\n        result.signature = parsed.sig;\n        return result;\n      } else {\n        return undefined;\n      }\n    }\n  }, {\n    key: \"clearTokens\",\n    value: function clearTokens() {\n      this._initializeTokens();\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":49,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/add_channels.js","name":"./src/core/endpoints/channel_groups/add_channels.js","index":44,"index2":42,"size":1795,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/channel_groups/add_channels","loc":"36:60-110"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNAddChannelsToGroupOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channels = incomingParams.channels,\n      channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  if (!channelGroup) return 'Missing Channel Group';\n  if (!channels || channels.length === 0) return 'Missing Channels';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  return \"/v1/channel-registration/sub-key/\".concat(config.subscribeKey, \"/channel-group/\").concat(_utils[\"default\"].encodeString(channelGroup));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann;\n  return {\n    add: channels.join(',')\n  };\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":50,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/remove_channels.js","name":"./src/core/endpoints/channel_groups/remove_channels.js","index":45,"index2":43,"size":1803,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/channel_groups/remove_channels","loc":"38:63-116"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNRemoveChannelsFromGroupOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channels = incomingParams.channels,\n      channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  if (!channelGroup) return 'Missing Channel Group';\n  if (!channels || channels.length === 0) return 'Missing Channels';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  return \"/v1/channel-registration/sub-key/\".concat(config.subscribeKey, \"/channel-group/\").concat(_utils[\"default\"].encodeString(channelGroup));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann;\n  return {\n    remove: channels.join(',')\n  };\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":51,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/delete_group.js","name":"./src/core/endpoints/channel_groups/delete_group.js","index":46,"index2":44,"size":1499,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/channel_groups/delete_group","loc":"40:55-105"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.isAuthSupported = isAuthSupported;\nexports.getRequestTimeout = getRequestTimeout;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNRemoveGroupOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  if (!channelGroup) return 'Missing Channel Group';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  return \"/v1/channel-registration/sub-key/\".concat(config.subscribeKey, \"/channel-group/\").concat(_utils[\"default\"].encodeString(channelGroup), \"/remove\");\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":52,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_groups.js","name":"./src/core/endpoints/channel_groups/list_groups.js","index":47,"index2":45,"size":1257,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/channel_groups/list_groups","loc":"42:54-103"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNChannelGroupsOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v1/channel-registration/sub-key/\".concat(config.subscribeKey, \"/channel-group\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    groups: serverResponse.payload.groups\n  };\n}"},{"id":53,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/channel_groups/list_channels.js","name":"./src/core/endpoints/channel_groups/list_channels.js","index":48,"index2":46,"size":1565,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/channel_groups/list_channels","loc":"44:63-114"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNChannelsForGroupOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  if (!channelGroup) return 'Missing Channel Group';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var channelGroup = incomingParams.channelGroup;\n  var config = modules.config;\n  return \"/v1/channel-registration/sub-key/\".concat(config.subscribeKey, \"/channel-group/\").concat(_utils[\"default\"].encodeString(channelGroup));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    channels: serverResponse.payload.channels\n  };\n}"},{"id":54,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/add_push_channels.js","name":"./src/core/endpoints/push/add_push_channels.js","index":49,"index2":47,"size":2542,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/push/add_push_channels","loc":"46:52-97"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNPushNotificationEnabledChannelsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway,\n      channels = incomingParams.channels,\n      topic = incomingParams.topic;\n  var config = modules.config;\n  if (!device) return 'Missing Device ID (device)';\n  if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n  if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n  if (!channels || channels.length === 0) return 'Missing Channels';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway;\n  var config = modules.config;\n\n  if (pushGateway === 'apns2') {\n    return \"/v2/push/sub-key/\".concat(config.subscribeKey, \"/devices-apns2/\").concat(device);\n  }\n\n  return \"/v1/push/sub-key/\".concat(config.subscribeKey, \"/devices/\").concat(device);\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var pushGateway = incomingParams.pushGateway,\n      _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann,\n      _incomingParams$envir = incomingParams.environment,\n      environment = _incomingParams$envir === void 0 ? 'development' : _incomingParams$envir,\n      topic = incomingParams.topic;\n  var parameters = {\n    type: pushGateway,\n    add: channels.join(',')\n  };\n\n  if (pushGateway === 'apns2') {\n    parameters = Object.assign({}, parameters, {\n      environment: environment,\n      topic: topic\n    });\n    delete parameters.type;\n  }\n\n  return parameters;\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":55,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/remove_push_channels.js","name":"./src/core/endpoints/push/remove_push_channels.js","index":50,"index2":48,"size":2545,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/push/remove_push_channels","loc":"48:55-103"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNPushNotificationEnabledChannelsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway,\n      channels = incomingParams.channels,\n      topic = incomingParams.topic;\n  var config = modules.config;\n  if (!device) return 'Missing Device ID (device)';\n  if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n  if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n  if (!channels || channels.length === 0) return 'Missing Channels';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway;\n  var config = modules.config;\n\n  if (pushGateway === 'apns2') {\n    return \"/v2/push/sub-key/\".concat(config.subscribeKey, \"/devices-apns2/\").concat(device);\n  }\n\n  return \"/v1/push/sub-key/\".concat(config.subscribeKey, \"/devices/\").concat(device);\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var pushGateway = incomingParams.pushGateway,\n      _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann,\n      _incomingParams$envir = incomingParams.environment,\n      environment = _incomingParams$envir === void 0 ? 'development' : _incomingParams$envir,\n      topic = incomingParams.topic;\n  var parameters = {\n    type: pushGateway,\n    remove: channels.join(',')\n  };\n\n  if (pushGateway === 'apns2') {\n    parameters = Object.assign({}, parameters, {\n      environment: environment,\n      topic: topic\n    });\n    delete parameters.type;\n  }\n\n  return parameters;\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":56,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/list_push_channels.js","name":"./src/core/endpoints/push/list_push_channels.js","index":51,"index2":49,"size":2322,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/push/list_push_channels","loc":"50:53-99"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNPushNotificationEnabledChannelsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway,\n      topic = incomingParams.topic;\n  var config = modules.config;\n  if (!device) return 'Missing Device ID (device)';\n  if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n  if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway;\n  var config = modules.config;\n\n  if (pushGateway === 'apns2') {\n    return \"/v2/push/sub-key/\".concat(config.subscribeKey, \"/devices-apns2/\").concat(device);\n  }\n\n  return \"/v1/push/sub-key/\".concat(config.subscribeKey, \"/devices/\").concat(device);\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var pushGateway = incomingParams.pushGateway,\n      _incomingParams$envir = incomingParams.environment,\n      environment = _incomingParams$envir === void 0 ? 'development' : _incomingParams$envir,\n      topic = incomingParams.topic;\n  var parameters = {\n    type: pushGateway\n  };\n\n  if (pushGateway === 'apns2') {\n    parameters = Object.assign({}, parameters, {\n      environment: environment,\n      topic: topic\n    });\n    delete parameters.type;\n  }\n\n  return parameters;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    channels: serverResponse\n  };\n}"},{"id":57,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/push/remove_device.js","name":"./src/core/endpoints/push/remove_device.js","index":52,"index2":50,"size":2284,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/push/remove_device","loc":"52:53-94"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNRemoveAllPushNotificationsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway,\n      topic = incomingParams.topic;\n  var config = modules.config;\n  if (!device) return 'Missing Device ID (device)';\n  if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n  if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var device = incomingParams.device,\n      pushGateway = incomingParams.pushGateway;\n  var config = modules.config;\n\n  if (pushGateway === 'apns2') {\n    return \"/v2/push/sub-key/\".concat(config.subscribeKey, \"/devices-apns2/\").concat(device, \"/remove\");\n  }\n\n  return \"/v1/push/sub-key/\".concat(config.subscribeKey, \"/devices/\").concat(device, \"/remove\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var pushGateway = incomingParams.pushGateway,\n      _incomingParams$envir = incomingParams.environment,\n      environment = _incomingParams$envir === void 0 ? 'development' : _incomingParams$envir,\n      topic = incomingParams.topic;\n  var parameters = {\n    type: pushGateway\n  };\n\n  if (pushGateway === 'apns2') {\n    parameters = Object.assign({}, parameters, {\n      environment: environment,\n      topic: topic\n    });\n    delete parameters.type;\n  }\n\n  return parameters;\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":58,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/leave.js","name":"./src/core/endpoints/presence/leave.js","index":53,"index2":51,"size":1818,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/presence/leave","loc":"54:58-95"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUnsubscribeOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann;\n  var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n  return \"/v2/presence/sub-key/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(stringifiedChannels), \"/leave\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2;\n  var params = {};\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  return params;\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":59,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/where_now.js","name":"./src/core/endpoints/presence/where_now.js","index":54,"index2":52,"size":1569,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/presence/where_now","loc":"56:61-102"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNWhereNowOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$uuid = incomingParams.uuid,\n      uuid = _incomingParams$uuid === void 0 ? config.UUID : _incomingParams$uuid;\n  return \"/v2/presence/sub-key/\".concat(config.subscribeKey, \"/uuid/\").concat(_utils[\"default\"].encodeString(uuid));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse(modules, serverResponse) {\n  if (!serverResponse.payload) {\n    return {\n      channels: []\n    };\n  }\n\n  return {\n    channels: serverResponse.payload.channels\n  };\n}"},{"id":60,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/heartbeat.js","name":"./src/core/endpoints/presence/heartbeat.js","index":55,"index2":53,"size":2070,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/presence/heartbeat","loc":"58:62-103"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.isAuthSupported = isAuthSupported;\nexports.getRequestTimeout = getRequestTimeout;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNHeartbeatOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann;\n  var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n  return \"/v2/presence/sub-key/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(stringifiedChannels), \"/heartbeat\");\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2,\n      _incomingParams$state = incomingParams.state,\n      state = _incomingParams$state === void 0 ? {} : _incomingParams$state;\n  var config = modules.config;\n  var params = {};\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  params.state = JSON.stringify(state);\n  params.heartbeat = config.getPresenceTimeout();\n  return params;\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":61,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/get_state.js","name":"./src/core/endpoints/presence/get_state.js","index":56,"index2":54,"size":2534,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/presence/get_state","loc":"60:53-94"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetStateOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$uuid = incomingParams.uuid,\n      uuid = _incomingParams$uuid === void 0 ? config.UUID : _incomingParams$uuid,\n      _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann;\n  var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n  return \"/v2/presence/sub-key/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(stringifiedChannels), \"/uuid/\").concat(uuid);\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2;\n  var params = {};\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse, incomingParams) {\n  var _incomingParams$chann3 = incomingParams.channels,\n      channels = _incomingParams$chann3 === void 0 ? [] : _incomingParams$chann3,\n      _incomingParams$chann4 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann4 === void 0 ? [] : _incomingParams$chann4;\n  var channelsResponse = {};\n\n  if (channels.length === 1 && channelGroups.length === 0) {\n    channelsResponse[channels[0]] = serverResponse.payload;\n  } else {\n    channelsResponse = serverResponse.payload;\n  }\n\n  return {\n    channels: channelsResponse\n  };\n}"},{"id":62,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/set_state.js","name":"./src/core/endpoints/presence/set_state.js","index":57,"index2":55,"size":2513,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/presence/set_state","loc":"62:53-94"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNSetStateOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var config = modules.config;\n  var state = incomingParams.state,\n      _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann,\n      _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2;\n  if (!state) return 'Missing State';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n  if (channels.length === 0 && channelGroups.length === 0) return 'Please provide a list of channels and/or channel-groups';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$chann3 = incomingParams.channels,\n      channels = _incomingParams$chann3 === void 0 ? [] : _incomingParams$chann3;\n  var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n  return \"/v2/presence/sub-key/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(stringifiedChannels), \"/uuid/\").concat(_utils[\"default\"].encodeString(config.UUID), \"/data\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var state = incomingParams.state,\n      _incomingParams$chann4 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann4 === void 0 ? [] : _incomingParams$chann4;\n  var params = {};\n  params.state = JSON.stringify(state);\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    state: serverResponse.payload\n  };\n}"},{"id":63,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/presence/here_now.js","name":"./src/core/endpoints/presence/here_now.js","index":58,"index2":56,"size":6744,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/presence/here_now","loc":"64:52-92"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\nexports.handleError = handleError;\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2[\"default\"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction getOperation() {\n  return _operations[\"default\"].PNHereNowOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann,\n      _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2;\n  var baseURL = \"/v2/presence/sub-key/\".concat(config.subscribeKey);\n\n  if (channels.length > 0 || channelGroups.length > 0) {\n    var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n    baseURL += \"/channel/\".concat(_utils[\"default\"].encodeString(stringifiedChannels));\n  }\n\n  return baseURL;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann3 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann3 === void 0 ? [] : _incomingParams$chann3,\n      _incomingParams$inclu = incomingParams.includeUUIDs,\n      includeUUIDs = _incomingParams$inclu === void 0 ? true : _incomingParams$inclu,\n      _incomingParams$inclu2 = incomingParams.includeState,\n      includeState = _incomingParams$inclu2 === void 0 ? false : _incomingParams$inclu2,\n      _incomingParams$query = incomingParams.queryParameters,\n      queryParameters = _incomingParams$query === void 0 ? {} : _incomingParams$query;\n  var params = {};\n  if (!includeUUIDs) params.disable_uuids = 1;\n  if (includeState) params.state = 1;\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  params = _objectSpread(_objectSpread({}, params), queryParameters);\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse, incomingParams) {\n  var _incomingParams$chann4 = incomingParams.channels,\n      channels = _incomingParams$chann4 === void 0 ? [] : _incomingParams$chann4,\n      _incomingParams$chann5 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann5 === void 0 ? [] : _incomingParams$chann5,\n      _incomingParams$inclu3 = incomingParams.includeUUIDs,\n      includeUUIDs = _incomingParams$inclu3 === void 0 ? true : _incomingParams$inclu3,\n      _incomingParams$inclu4 = incomingParams.includeState,\n      includeState = _incomingParams$inclu4 === void 0 ? false : _incomingParams$inclu4;\n\n  var prepareSingularChannel = function prepareSingularChannel() {\n    var response = {};\n    var occupantsList = [];\n    response.totalChannels = 1;\n    response.totalOccupancy = serverResponse.occupancy;\n    response.channels = {};\n    response.channels[channels[0]] = {\n      occupants: occupantsList,\n      name: channels[0],\n      occupancy: serverResponse.occupancy\n    };\n\n    if (includeUUIDs && serverResponse.uuids) {\n      serverResponse.uuids.forEach(function (uuidEntry) {\n        if (includeState) {\n          occupantsList.push({\n            state: uuidEntry.state,\n            uuid: uuidEntry.uuid\n          });\n        } else {\n          occupantsList.push({\n            state: null,\n            uuid: uuidEntry\n          });\n        }\n      });\n    }\n\n    return response;\n  };\n\n  var prepareMultipleChannel = function prepareMultipleChannel() {\n    var response = {};\n    response.totalChannels = serverResponse.payload.total_channels;\n    response.totalOccupancy = serverResponse.payload.total_occupancy;\n    response.channels = {};\n    Object.keys(serverResponse.payload.channels).forEach(function (channelName) {\n      var channelEntry = serverResponse.payload.channels[channelName];\n      var occupantsList = [];\n      response.channels[channelName] = {\n        occupants: occupantsList,\n        name: channelName,\n        occupancy: channelEntry.occupancy\n      };\n\n      if (includeUUIDs) {\n        channelEntry.uuids.forEach(function (uuidEntry) {\n          if (includeState) {\n            occupantsList.push({\n              state: uuidEntry.state,\n              uuid: uuidEntry.uuid\n            });\n          } else {\n            occupantsList.push({\n              state: null,\n              uuid: uuidEntry\n            });\n          }\n        });\n      }\n\n      return response;\n    });\n    return response;\n  };\n\n  var response;\n\n  if (channels.length > 1 || channelGroups.length > 0 || channelGroups.length === 0 && channels.length === 0) {\n    response = prepareMultipleChannel();\n  } else {\n    response = prepareSingularChannel();\n  }\n\n  return response;\n}\n\nfunction handleError(modules, params, status) {\n  if (status.statusCode === 402 && !this.getURL(modules, params).includes('channel')) {\n    status.errorData.message = 'You have tried to perform a Global Here Now operation, your keyset configuration does not support that. Please provide a channel, or enable the Global Here Now feature from the Portal.';\n  }\n}"},{"id":64,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/add_message_action.js","name":"./src/core/endpoints/actions/add_message_action.js","index":59,"index2":57,"size":2319,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/actions/add_message_action","loc":"66:61-110"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.usePost = usePost;\nexports.postURL = postURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.getRequestHeaders = getRequestHeaders;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.postPayload = postPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNAddMessageActionOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var action = incomingParams.action,\n      channel = incomingParams.channel,\n      messageTimetoken = incomingParams.messageTimetoken;\n  if (!messageTimetoken) return 'Missing message timetoken';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n  if (!channel) return 'Missing message channel';\n  if (!action) return 'Missing Action';\n  if (!action.value) return 'Missing Action.value';\n  if (!action.type) return 'Missing Action.type';\n  if (action.type.length > 15) return 'Action.type value exceed maximum length of 15';\n}\n\nfunction usePost() {\n  return true;\n}\n\nfunction postURL(_ref2, incomingParams) {\n  var config = _ref2.config;\n  var channel = incomingParams.channel,\n      messageTimetoken = incomingParams.messageTimetoken;\n  return \"/v1/message-actions/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(channel), \"/message/\").concat(messageTimetoken);\n}\n\nfunction getRequestTimeout(_ref3) {\n  var config = _ref3.config;\n  return config.getTransactionTimeout();\n}\n\nfunction getRequestHeaders() {\n  return {\n    'Content-Type': 'application/json'\n  };\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction postPayload(modules, incomingParams) {\n  return incomingParams.action;\n}\n\nfunction handleResponse(modules, addMessageActionResponse) {\n  return {\n    data: addMessageActionResponse.data\n  };\n}"},{"id":65,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/remove_message_action.js","name":"./src/core/endpoints/actions/remove_message_action.js","index":60,"index2":58,"size":2017,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/actions/remove_message_action","loc":"68:64-116"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.useDelete = useDelete;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNRemoveMessageActionOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var channel = incomingParams.channel,\n      actionTimetoken = incomingParams.actionTimetoken,\n      messageTimetoken = incomingParams.messageTimetoken;\n  if (!messageTimetoken) return 'Missing message timetoken';\n  if (!actionTimetoken) return 'Missing action timetoken';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n  if (!channel) return 'Missing message channel';\n}\n\nfunction useDelete() {\n  return true;\n}\n\nfunction getURL(_ref2, incomingParams) {\n  var config = _ref2.config;\n  var channel = incomingParams.channel,\n      actionTimetoken = incomingParams.actionTimetoken,\n      messageTimetoken = incomingParams.messageTimetoken;\n  return \"/v1/message-actions/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(channel), \"/message/\").concat(messageTimetoken, \"/action/\").concat(actionTimetoken);\n}\n\nfunction getRequestTimeout(_ref3) {\n  var config = _ref3.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse(modules, removeMessageActionResponse) {\n  return {\n    data: removeMessageActionResponse.data\n  };\n}"},{"id":66,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/actions/get_message_actions.js","name":"./src/core/endpoints/actions/get_message_actions.js","index":61,"index2":59,"size":2032,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/actions/get_message_actions","loc":"70:61-111"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetMessageActionsOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var channel = incomingParams.channel;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n  if (!channel) return 'Missing message channel';\n}\n\nfunction getURL(_ref2, incomingParams) {\n  var config = _ref2.config;\n  var channel = incomingParams.channel;\n  return \"/v1/message-actions/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(channel));\n}\n\nfunction getRequestTimeout(_ref3) {\n  var config = _ref3.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var limit = incomingParams.limit,\n      start = incomingParams.start,\n      end = incomingParams.end;\n  var outgoingParams = {};\n  if (limit) outgoingParams.limit = limit;\n  if (start) outgoingParams.start = start;\n  if (end) outgoingParams.end = end;\n  return outgoingParams;\n}\n\nfunction handleResponse(modules, getMessageActionsResponse) {\n  var response = {\n    data: getMessageActionsResponse.data,\n    start: null,\n    end: null\n  };\n\n  if (response.data.length) {\n    response.end = response.data[response.data.length - 1].actionTimetoken;\n    response.start = response.data[0].actionTimetoken;\n  }\n\n  return response;\n}"},{"id":67,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/types.js","name":"./src/core/endpoints/file_upload/types.js","index":63,"index2":61,"size":13,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/types","loc":"74:46-86"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";"},{"id":68,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/list_files.js","name":"./src/core/endpoints/file_upload/list_files.js","index":64,"index2":62,"size":1728,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/list_files","loc":"76:41-86"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNListFilesOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'channel can\\'t be empty';\n    }\n  },\n  getURL: function getURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v1/files/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel), \"/files\");\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('fileUpload');\n  },\n  prepareParams: function prepareParams(_, params) {\n    var outParams = {};\n\n    if (params.limit) {\n      outParams.limit = params.limit;\n    }\n\n    if (params.next) {\n      outParams.next = params.next;\n    }\n\n    return outParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      next: response.next,\n      count: response.count\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":69,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/generate_upload_url.js","name":"./src/core/endpoints/file_upload/generate_upload_url.js","index":65,"index2":63,"size":1847,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/generate_upload_url","loc":"78:50-104"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGenerateUploadUrlOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'channel can\\'t be empty';\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.name)) {\n      return 'name can\\'t be empty';\n    }\n  },\n  usePost: function usePost() {\n    return true;\n  },\n  postURL: function postURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v1/files/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel), \"/generate-upload-url\");\n  },\n  postPayload: function postPayload(_, params) {\n    return {\n      name: params.name\n    };\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('fileUpload');\n  },\n  prepareParams: function prepareParams() {\n    return {};\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      file_upload_request: response.file_upload_request\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":70,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/publish_file.js","name":"./src/core/endpoints/file_upload/publish_file.js","index":66,"index2":64,"size":2891,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/publish_file","loc":"80:43-90"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime/helpers/typeof\"));\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nvar preparePayload = function preparePayload(_ref, payload) {\n  var crypto = _ref.crypto,\n      config = _ref.config;\n  var stringifiedPayload = JSON.stringify(payload);\n\n  if (config.cipherKey) {\n    stringifiedPayload = crypto.encrypt(stringifiedPayload);\n    stringifiedPayload = JSON.stringify(stringifiedPayload);\n  }\n\n  return stringifiedPayload || '';\n};\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNPublishFileOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return \"channel can't be empty\";\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.fileId)) {\n      return \"file id can't be empty\";\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.fileName)) {\n      return \"file name can't be empty\";\n    }\n  },\n  getURL: function getURL(modules, params) {\n    var _modules$config = modules.config,\n        publishKey = _modules$config.publishKey,\n        subscribeKey = _modules$config.subscribeKey;\n    var message = {\n      message: params.message,\n      file: {\n        name: params.fileName,\n        id: params.fileId\n      }\n    };\n    var payload = preparePayload(modules, message);\n    return \"/v1/files/publish-file/\".concat(publishKey, \"/\").concat(subscribeKey, \"/0/\").concat(_utils[\"default\"].encodeString(params.channel), \"/0/\").concat(_utils[\"default\"].encodeString(payload));\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('fileUpload');\n  },\n  prepareParams: function prepareParams(_, params) {\n    var outParams = {};\n\n    if (params.ttl) {\n      outParams.ttl = params.ttl;\n    }\n\n    if (params.storeInHistory !== undefined) {\n      outParams.store = params.storeInHistory ? '1' : '0';\n    }\n\n    if (params.meta && (0, _typeof2[\"default\"])(params.meta) === 'object') {\n      outParams.meta = JSON.stringify(params.meta);\n    }\n\n    return outParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      timetoken: response['2']\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":71,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/send_file.js","name":"./src/core/endpoints/file_upload/send_file.js","index":67,"index2":68,"size":9714,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/send_file","loc":"82:40-84"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime/helpers/asyncToGenerator\"));\n\nvar _endpoint = require(\"../../components/endpoint\");\n\nvar getErrorFromResponse = function getErrorFromResponse(response) {\n  return new Promise(function (resolve) {\n    var result = '';\n    response.on('data', function (data) {\n      result += data.toString('utf8');\n    });\n    response.on('end', function () {\n      resolve(result);\n    });\n  });\n};\n\nvar sendFile = function sendFile(_ref) {\n  var generateUploadUrl = _ref.generateUploadUrl,\n      publishFile = _ref.publishFile,\n      _ref$modules = _ref.modules,\n      PubNubFile = _ref$modules.PubNubFile,\n      config = _ref$modules.config,\n      cryptography = _ref$modules.cryptography,\n      networking = _ref$modules.networking;\n  return function () {\n    var _ref3 = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee(_ref2) {\n      var channel, input, message, cipherKey, meta, ttl, storeInHistory, file, _yield$generateUpload, _yield$generateUpload2, url, formFields, _yield$generateUpload3, id, name, formFieldsWithMimeType, result, errorBody, reason, retries, wasSuccessful, publishResult;\n\n      return _regenerator[\"default\"].wrap(function _callee$(_context) {\n        while (1) {\n          switch (_context.prev = _context.next) {\n            case 0:\n              channel = _ref2.channel, input = _ref2.file, message = _ref2.message, cipherKey = _ref2.cipherKey, meta = _ref2.meta, ttl = _ref2.ttl, storeInHistory = _ref2.storeInHistory;\n\n              if (channel) {\n                _context.next = 3;\n                break;\n              }\n\n              throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)(\"channel can't be empty\"));\n\n            case 3:\n              if (input) {\n                _context.next = 5;\n                break;\n              }\n\n              throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)(\"file can't be empty\"));\n\n            case 5:\n              file = PubNubFile.create(input);\n              _context.next = 8;\n              return generateUploadUrl({\n                channel: channel,\n                name: file.name\n              });\n\n            case 8:\n              _yield$generateUpload = _context.sent;\n              _yield$generateUpload2 = _yield$generateUpload.file_upload_request;\n              url = _yield$generateUpload2.url;\n              formFields = _yield$generateUpload2.form_fields;\n              _yield$generateUpload3 = _yield$generateUpload.data;\n              id = _yield$generateUpload3.id;\n              name = _yield$generateUpload3.name;\n\n              if (!(PubNubFile.supportsEncryptFile && (cipherKey !== null && cipherKey !== void 0 ? cipherKey : config.cipherKey))) {\n                _context.next = 19;\n                break;\n              }\n\n              _context.next = 18;\n              return cryptography.encryptFile(cipherKey !== null && cipherKey !== void 0 ? cipherKey : config.cipherKey, file, PubNubFile);\n\n            case 18:\n              file = _context.sent;\n\n            case 19:\n              formFieldsWithMimeType = formFields;\n\n              if (file.mimeType) {\n                formFieldsWithMimeType = formFields.map(function (entry) {\n                  if (entry.key === 'Content-Type') return {\n                    key: entry.key,\n                    value: file.mimeType\n                  };else return entry;\n                });\n              }\n\n              _context.prev = 21;\n\n              if (!(PubNubFile.supportsFileUri && input.uri)) {\n                _context.next = 34;\n                break;\n              }\n\n              _context.t0 = networking;\n              _context.t1 = url;\n              _context.t2 = formFieldsWithMimeType;\n              _context.next = 28;\n              return file.toFileUri();\n\n            case 28:\n              _context.t3 = _context.sent;\n              _context.next = 31;\n              return _context.t0.POSTFILE.call(_context.t0, _context.t1, _context.t2, _context.t3);\n\n            case 31:\n              result = _context.sent;\n              _context.next = 71;\n              break;\n\n            case 34:\n              if (!PubNubFile.supportsFile) {\n                _context.next = 46;\n                break;\n              }\n\n              _context.t4 = networking;\n              _context.t5 = url;\n              _context.t6 = formFieldsWithMimeType;\n              _context.next = 40;\n              return file.toFile();\n\n            case 40:\n              _context.t7 = _context.sent;\n              _context.next = 43;\n              return _context.t4.POSTFILE.call(_context.t4, _context.t5, _context.t6, _context.t7);\n\n            case 43:\n              result = _context.sent;\n              _context.next = 71;\n              break;\n\n            case 46:\n              if (!PubNubFile.supportsBuffer) {\n                _context.next = 58;\n                break;\n              }\n\n              _context.t8 = networking;\n              _context.t9 = url;\n              _context.t10 = formFieldsWithMimeType;\n              _context.next = 52;\n              return file.toBuffer();\n\n            case 52:\n              _context.t11 = _context.sent;\n              _context.next = 55;\n              return _context.t8.POSTFILE.call(_context.t8, _context.t9, _context.t10, _context.t11);\n\n            case 55:\n              result = _context.sent;\n              _context.next = 71;\n              break;\n\n            case 58:\n              if (!PubNubFile.supportsBlob) {\n                _context.next = 70;\n                break;\n              }\n\n              _context.t12 = networking;\n              _context.t13 = url;\n              _context.t14 = formFieldsWithMimeType;\n              _context.next = 64;\n              return file.toBlob();\n\n            case 64:\n              _context.t15 = _context.sent;\n              _context.next = 67;\n              return _context.t12.POSTFILE.call(_context.t12, _context.t13, _context.t14, _context.t15);\n\n            case 67:\n              result = _context.sent;\n              _context.next = 71;\n              break;\n\n            case 70:\n              throw new Error('Unsupported environment');\n\n            case 71:\n              _context.next = 80;\n              break;\n\n            case 73:\n              _context.prev = 73;\n              _context.t16 = _context[\"catch\"](21);\n              _context.next = 77;\n              return getErrorFromResponse(_context.t16.response);\n\n            case 77:\n              errorBody = _context.sent;\n              reason = /<Message>(.*)<\\/Message>/gi.exec(errorBody);\n              throw new _endpoint.PubNubError(reason ? \"Upload to bucket failed: \".concat(reason[1]) : 'Upload to bucket failed.', _context.t16);\n\n            case 80:\n              if (!(result.status !== 204)) {\n                _context.next = 82;\n                break;\n              }\n\n              throw new _endpoint.PubNubError('Upload to bucket was unsuccessful', result);\n\n            case 82:\n              retries = 5;\n              wasSuccessful = false;\n              publishResult = {\n                timetoken: '0'\n              };\n\n            case 85:\n              if (!(!wasSuccessful && retries > 0)) {\n                _context.next = 98;\n                break;\n              }\n\n              _context.prev = 86;\n              _context.next = 89;\n              return publishFile({\n                channel: channel,\n                message: message,\n                fileId: id,\n                fileName: name,\n                meta: meta,\n                storeInHistory: storeInHistory,\n                ttl: ttl\n              });\n\n            case 89:\n              publishResult = _context.sent;\n              wasSuccessful = true;\n              _context.next = 96;\n              break;\n\n            case 93:\n              _context.prev = 93;\n              _context.t17 = _context[\"catch\"](86);\n              retries -= 1;\n\n            case 96:\n              _context.next = 85;\n              break;\n\n            case 98:\n              if (wasSuccessful) {\n                _context.next = 102;\n                break;\n              }\n\n              throw new _endpoint.PubNubError('Publish failed. You may want to execute that operation manually using pubnub.publishFile', {\n                channel: channel,\n                id: id,\n                name: name\n              });\n\n            case 102:\n              return _context.abrupt(\"return\", {\n                timetoken: publishResult.timetoken,\n                id: id,\n                name: name\n              });\n\n            case 103:\n            case \"end\":\n              return _context.stop();\n          }\n        }\n      }, _callee, null, [[21, 73], [86, 93]]);\n    }));\n\n    return function (_x) {\n      return _ref3.apply(this, arguments);\n    };\n  }();\n};\n\nvar _default = function _default(deps) {\n  var f = sendFile(deps);\n  return function (params, cb) {\n    var resultP = f(params);\n\n    if (typeof cb === 'function') {\n      resultP.then(function (result) {\n        return cb(null, result);\n      })[\"catch\"](function (error) {\n        return cb(error, null);\n      });\n      return resultP;\n    } else {\n      return resultP;\n    }\n  };\n};\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":73,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/get_file_url.js","name":"./src/core/endpoints/file_upload/get_file_url.js","index":71,"index2":69,"size":1919,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/get_file_url","loc":"84:43-90"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _endpoint = require(\"../../components/endpoint\");\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nvar _default = function _default(modules, _ref) {\n  var channel = _ref.channel,\n      id = _ref.id,\n      name = _ref.name;\n  var config = modules.config;\n\n  if (!channel) {\n    throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)(\"channel can't be empty\"));\n  }\n\n  if (!id) {\n    throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)(\"file id can't be empty\"));\n  }\n\n  if (!name) {\n    throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)(\"file name can't be empty\"));\n  }\n\n  var url = \"/v1/files/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(channel), \"/files/\").concat(id, \"/\").concat(name);\n  var params = {};\n  params.uuid = config.getUUID();\n  params.pnsdk = (0, _endpoint.generatePNSDK)(config);\n\n  if (config.getAuthKey()) {\n    params.auth = config.getAuthKey();\n  }\n\n  if (config.secretKey) {\n    (0, _endpoint.signRequest)(modules, url, params, {}, {\n      getOperation: function getOperation() {\n        return 'PubNubGetFileUrlOperation';\n      }\n    });\n  }\n\n  var queryParams = Object.keys(params).map(function (key) {\n    return \"\".concat(encodeURIComponent(key), \"=\").concat(encodeURIComponent(params[key]));\n  }).join('&');\n\n  if (queryParams !== '') {\n    return \"https://\".concat(config.origin).concat(url, \"?\").concat(queryParams);\n  }\n\n  return \"https://\".concat(config.origin).concat(url);\n};\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":74,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/download_file.js","name":"./src/core/endpoints/file_upload/download_file.js","index":72,"index2":70,"size":3439,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/download_file","loc":"86:44-92"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime/helpers/asyncToGenerator\"));\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNDownloadFileOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return \"channel can't be empty\";\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.name)) {\n      return \"name can't be empty\";\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.id)) {\n      return \"id can't be empty\";\n    }\n  },\n  useGetFile: function useGetFile() {\n    return true;\n  },\n  getFileURL: function getFileURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v1/files/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel), \"/files/\").concat(params.id, \"/\").concat(params.name);\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  ignoreBody: function ignoreBody() {\n    return true;\n  },\n  forceBuffered: function forceBuffered() {\n    return true;\n  },\n  prepareParams: function prepareParams() {\n    return {};\n  },\n  handleResponse: function () {\n    var _handleResponse = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee(_ref3, res, params) {\n      var _res$response$name;\n\n      var PubNubFile, config, cryptography, body, _params$cipherKey;\n\n      return _regenerator[\"default\"].wrap(function _callee$(_context) {\n        while (1) {\n          switch (_context.prev = _context.next) {\n            case 0:\n              PubNubFile = _ref3.PubNubFile, config = _ref3.config, cryptography = _ref3.cryptography;\n              body = res.response.body;\n\n              if (!(PubNubFile.supportsEncryptFile && config.cipherKey)) {\n                _context.next = 6;\n                break;\n              }\n\n              _context.next = 5;\n              return cryptography.decrypt((_params$cipherKey = params.cipherKey) !== null && _params$cipherKey !== void 0 ? _params$cipherKey : config.cipherKey, body);\n\n            case 5:\n              body = _context.sent;\n\n            case 6:\n              return _context.abrupt(\"return\", PubNubFile.create({\n                data: body,\n                name: (_res$response$name = res.response.name) !== null && _res$response$name !== void 0 ? _res$response$name : params.name,\n                mimeType: res.response.type\n              }));\n\n            case 7:\n            case \"end\":\n              return _context.stop();\n          }\n        }\n      }, _callee);\n    }));\n\n    function handleResponse(_x, _x2, _x3) {\n      return _handleResponse.apply(this, arguments);\n    }\n\n    return handleResponse;\n  }()\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":75,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/file_upload/delete_file.js","name":"./src/core/endpoints/file_upload/delete_file.js","index":73,"index2":71,"size":1810,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/file_upload/delete_file","loc":"88:42-88"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNListFilesOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return \"channel can't be empty\";\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.id)) {\n      return \"file id can't be empty\";\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.name)) {\n      return \"file name can't be empty\";\n    }\n  },\n  useDelete: function useDelete() {\n    return true;\n  },\n  getURL: function getURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v1/files/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel), \"/files/\").concat(params.id, \"/\").concat(params.name);\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('fileUpload');\n  },\n  prepareParams: function prepareParams() {\n    return {};\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":76,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/get_all.js","name":"./src/core/endpoints/objects/uuid/get_all.js","index":74,"index2":78,"size":3572,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/uuid/get_all","loc":"90:38-81"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGetAllUUIDMetadataOperation;\n  },\n  validateParams: function validateParams() {},\n  getURL: function getURL(_ref) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/uuids\");\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('user');\n  },\n  prepareParams: function prepareParams(_modules, params) {\n    var _params$include, _params$include2, _params$page, _params$page3, _params$limit;\n\n    var queryParams = {};\n\n    if (params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) {\n      queryParams.include = 'custom';\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.totalCount) {\n      var _params$include3;\n\n      queryParams.count = (_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.totalCount;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) {\n      var _params$page2;\n\n      queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) {\n      var _params$page4;\n\n      queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.filter) {\n      queryParams.filter = params.filter;\n    }\n\n    queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100;\n\n    if (params === null || params === void 0 ? void 0 : params.sort) {\n      var _params$sort;\n\n      queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) {\n        var _ref5 = (0, _slicedToArray2[\"default\"])(_ref4, 2),\n            key = _ref5[0],\n            value = _ref5[1];\n\n        if (value === 'asc' || value === 'desc') {\n          return \"\".concat(key, \":\").concat(value);\n        } else {\n          return key;\n        }\n      });\n    }\n\n    return queryParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      totalCount: response.totalCount,\n      next: response.next,\n      prev: response.prev\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":82,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/get.js","name":"./src/core/endpoints/objects/uuid/get.js","index":81,"index2":79,"size":2080,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/uuid/get","loc":"92:34-73"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGetUUIDMetadataOperation;\n  },\n  validateParams: function validateParams() {},\n  getURL: function getURL(_ref, params) {\n    var _params$uuid;\n\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/uuids/\").concat(_utils[\"default\"].encodeString((_params$uuid = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid !== void 0 ? _params$uuid : config.getUUID()));\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('user');\n  },\n  prepareParams: function prepareParams(_ref4, params) {\n    var _params$uuid2, _params$include$custo, _params$include;\n\n    var config = _ref4.config;\n    return {\n      uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID(),\n      include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom'\n    };\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":83,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/set.js","name":"./src/core/endpoints/objects/uuid/set.js","index":82,"index2":80,"size":2301,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/uuid/set","loc":"94:34-73"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNSetUUIDMetadataOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.data)) {\n      return 'Data cannot be empty';\n    }\n  },\n  usePatch: function usePatch() {\n    return true;\n  },\n  patchURL: function patchURL(_ref, params) {\n    var _params$uuid;\n\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/uuids/\").concat(_utils[\"default\"].encodeString((_params$uuid = params.uuid) !== null && _params$uuid !== void 0 ? _params$uuid : config.getUUID()));\n  },\n  patchPayload: function patchPayload(_, params) {\n    return params.data;\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('user');\n  },\n  prepareParams: function prepareParams(_ref4, params) {\n    var _params$uuid2, _params$include$custo, _params$include;\n\n    var config = _ref4.config;\n    return {\n      uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID(),\n      include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom'\n    };\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":84,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/uuid/remove.js","name":"./src/core/endpoints/objects/uuid/remove.js","index":83,"index2":81,"size":1807,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/uuid/remove","loc":"96:37-79"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNRemoveUUIDMetadataOperation;\n  },\n  validateParams: function validateParams() {},\n  getURL: function getURL(_ref, params) {\n    var _params$uuid;\n\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/uuids/\").concat(_utils[\"default\"].encodeString((_params$uuid = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid !== void 0 ? _params$uuid : config.getUUID()));\n  },\n  useDelete: function useDelete() {\n    return true;\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('user');\n  },\n  prepareParams: function prepareParams(_ref4, params) {\n    var _params$uuid2;\n\n    var config = _ref4.config;\n    return {\n      uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID()\n    };\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":85,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/get_all.js","name":"./src/core/endpoints/objects/channel/get_all.js","index":84,"index2":82,"size":3581,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/channel/get_all","loc":"98:39-85"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGetAllChannelMetadataOperation;\n  },\n  validateParams: function validateParams() {},\n  getURL: function getURL(_ref) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/channels\");\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('channel');\n  },\n  prepareParams: function prepareParams(_modules, params) {\n    var _params$include, _params$include2, _params$page, _params$page3, _params$limit;\n\n    var queryParams = {};\n\n    if (params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) {\n      queryParams.include = 'custom';\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.totalCount) {\n      var _params$include3;\n\n      queryParams.count = (_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.totalCount;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) {\n      var _params$page2;\n\n      queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) {\n      var _params$page4;\n\n      queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.filter) {\n      queryParams.filter = params.filter;\n    }\n\n    queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100;\n\n    if (params === null || params === void 0 ? void 0 : params.sort) {\n      var _params$sort;\n\n      queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) {\n        var _ref5 = (0, _slicedToArray2[\"default\"])(_ref4, 2),\n            key = _ref5[0],\n            value = _ref5[1];\n\n        if (value === 'asc' || value === 'desc') {\n          return \"\".concat(key, \":\").concat(value);\n        } else {\n          return key;\n        }\n      });\n    }\n\n    return queryParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      totalCount: response.totalCount,\n      prev: response.prev,\n      next: response.next\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":86,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/get.js","name":"./src/core/endpoints/objects/channel/get.js","index":85,"index2":83,"size":1856,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/channel/get","loc":"100:35-77"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGetChannelMetadataOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'Channel cannot be empty';\n    }\n  },\n  getURL: function getURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel));\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('channel');\n  },\n  prepareParams: function prepareParams(_, params) {\n    var _params$include$custo, _params$include;\n\n    return {\n      include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom'\n    };\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":87,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/set.js","name":"./src/core/endpoints/objects/channel/set.js","index":86,"index2":84,"size":2114,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/channel/set","loc":"102:35-77"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNSetChannelMetadataOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'Channel cannot be empty';\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.data)) {\n      return 'Data cannot be empty';\n    }\n  },\n  usePatch: function usePatch() {\n    return true;\n  },\n  patchURL: function patchURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel));\n  },\n  patchPayload: function patchPayload(_, params) {\n    return params.data;\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('channel');\n  },\n  prepareParams: function prepareParams(_, params) {\n    var _params$include$custo, _params$include;\n\n    return {\n      include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom'\n    };\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":88,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/channel/remove.js","name":"./src/core/endpoints/objects/channel/remove.js","index":87,"index2":85,"size":1561,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/channel/remove","loc":"104:38-83"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNRemoveChannelMetadataOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'Channel cannot be empty';\n    }\n  },\n  getURL: function getURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel));\n  },\n  useDelete: function useDelete() {\n    return true;\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('channel');\n  },\n  prepareParams: function prepareParams() {\n    return {};\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":89,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/member/get.js","name":"./src/core/endpoints/objects/member/get.js","index":88,"index2":86,"size":4518,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/member/get","loc":"106:35-76"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGetMembersOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'UUID cannot be empty';\n    }\n  },\n  getURL: function getURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel), \"/uuids\");\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('member');\n  },\n  prepareParams: function prepareParams(_modules, params) {\n    var _params$include4, _params$page, _params$page3, _params$limit;\n\n    var queryParams = {};\n\n    if (params === null || params === void 0 ? void 0 : params.include) {\n      var _params$include, _params$include2, _params$include$UUIDF, _params$include3;\n\n      queryParams.include = [];\n\n      if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) {\n        queryParams.include.push('custom');\n      }\n\n      if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customUUIDFields) {\n        queryParams.include.push('uuid.custom');\n      }\n\n      if ((_params$include$UUIDF = (_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.UUIDFields) !== null && _params$include$UUIDF !== void 0 ? _params$include$UUIDF : true) {\n        queryParams.include.push('uuid');\n      }\n\n      queryParams.include = queryParams.include.join(',');\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) {\n      var _params$include5;\n\n      queryParams.count = (_params$include5 = params.include) === null || _params$include5 === void 0 ? void 0 : _params$include5.totalCount;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) {\n      var _params$page2;\n\n      queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) {\n      var _params$page4;\n\n      queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.filter) {\n      queryParams.filter = params.filter;\n    }\n\n    queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100;\n\n    if (params === null || params === void 0 ? void 0 : params.sort) {\n      var _params$sort;\n\n      queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) {\n        var _ref5 = (0, _slicedToArray2[\"default\"])(_ref4, 2),\n            key = _ref5[0],\n            value = _ref5[1];\n\n        if (value === 'asc' || value === 'desc') {\n          return \"\".concat(key, \":\").concat(value);\n        } else {\n          return key;\n        }\n      });\n    }\n\n    return queryParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      totalCount: response.totalCount,\n      prev: response.prev,\n      next: response.next\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":90,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/member/set.js","name":"./src/core/endpoints/objects/member/set.js","index":89,"index2":87,"size":5005,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/member/set","loc":"108:35-76"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNSetMembersOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channel)) {\n      return 'Channel cannot be empty';\n    }\n\n    if (!(params === null || params === void 0 ? void 0 : params.uuids) || (params === null || params === void 0 ? void 0 : params.uuids.length) === 0) {\n      return 'UUIDs cannot be empty';\n    }\n  },\n  usePatch: function usePatch() {\n    return true;\n  },\n  patchURL: function patchURL(_ref, params) {\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/channels/\").concat(_utils[\"default\"].encodeString(params.channel), \"/uuids\");\n  },\n  patchPayload: function patchPayload(_, params) {\n    return (0, _defineProperty2[\"default\"])({\n      set: [],\n      remove: []\n    }, params.type, params.uuids.map(function (uuid) {\n      if (typeof uuid === 'string') {\n        return {\n          uuid: {\n            id: uuid\n          }\n        };\n      } else {\n        return {\n          uuid: {\n            id: uuid.id\n          },\n          custom: uuid.custom\n        };\n      }\n    }));\n  },\n  getRequestTimeout: function getRequestTimeout(_ref3) {\n    var config = _ref3.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref4) {\n    var tokenManager = _ref4.tokenManager;\n    return tokenManager.getToken('member');\n  },\n  prepareParams: function prepareParams(_modules, params) {\n    var _params$include4, _params$page, _params$page3;\n\n    var queryParams = {};\n\n    if (params === null || params === void 0 ? void 0 : params.include) {\n      var _params$include, _params$include2, _params$include3;\n\n      queryParams.include = [];\n\n      if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) {\n        queryParams.include.push('custom');\n      }\n\n      if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customUUIDFields) {\n        queryParams.include.push('uuid.custom');\n      }\n\n      if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.UUIDFields) {\n        queryParams.include.push('uuid');\n      }\n\n      queryParams.include = queryParams.include.join(',');\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) {\n      queryParams.count = true;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) {\n      var _params$page2;\n\n      queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) {\n      var _params$page4;\n\n      queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.filter) {\n      queryParams.filter = params.filter;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.limit) {\n      queryParams.limit = params.limit;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.sort) {\n      var _params$sort;\n\n      queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref5) {\n        var _ref6 = (0, _slicedToArray2[\"default\"])(_ref5, 2),\n            key = _ref6[0],\n            value = _ref6[1];\n\n        if (value === 'asc' || value === 'desc') {\n          return \"\".concat(key, \":\").concat(value);\n        } else {\n          return key;\n        }\n      });\n    }\n\n    return queryParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      totalCount: response.totalCount,\n      prev: response.prev,\n      next: response.next\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":91,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/membership/get.js","name":"./src/core/endpoints/objects/membership/get.js","index":90,"index2":88,"size":4436,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/membership/get","loc":"110:35-80"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNGetMembershipsOperation;\n  },\n  validateParams: function validateParams() {},\n  getURL: function getURL(_ref, params) {\n    var _params$uuid;\n\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/uuids/\").concat(_utils[\"default\"].encodeString((_params$uuid = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid !== void 0 ? _params$uuid : config.getUUID()), \"/channels\");\n  },\n  getRequestTimeout: function getRequestTimeout(_ref2) {\n    var config = _ref2.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref3) {\n    var tokenManager = _ref3.tokenManager;\n    return tokenManager.getToken('membership');\n  },\n  prepareParams: function prepareParams(_modules, params) {\n    var _params$include4, _params$page, _params$page3, _params$limit;\n\n    var queryParams = {};\n\n    if (params === null || params === void 0 ? void 0 : params.include) {\n      var _params$include, _params$include2, _params$include3;\n\n      queryParams.include = [];\n\n      if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) {\n        queryParams.include.push('custom');\n      }\n\n      if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customChannelFields) {\n        queryParams.include.push('channel.custom');\n      }\n\n      if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.channelFields) {\n        queryParams.include.push('channel');\n      }\n\n      queryParams.include = queryParams.include.join(',');\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) {\n      var _params$include5;\n\n      queryParams.count = (_params$include5 = params.include) === null || _params$include5 === void 0 ? void 0 : _params$include5.totalCount;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) {\n      var _params$page2;\n\n      queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) {\n      var _params$page4;\n\n      queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.filter) {\n      queryParams.filter = params.filter;\n    }\n\n    queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100;\n\n    if (params === null || params === void 0 ? void 0 : params.sort) {\n      var _params$sort;\n\n      queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) {\n        var _ref5 = (0, _slicedToArray2[\"default\"])(_ref4, 2),\n            key = _ref5[0],\n            value = _ref5[1];\n\n        if (value === 'asc' || value === 'desc') {\n          return \"\".concat(key, \":\").concat(value);\n        } else {\n          return key;\n        }\n      });\n    }\n\n    return queryParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      totalCount: response.totalCount,\n      prev: response.prev,\n      next: response.next\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":92,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/objects/membership/set.js","name":"./src/core/endpoints/objects/membership/set.js","index":91,"index2":89,"size":5041,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/objects/membership/set","loc":"112:35-80"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _operations = _interopRequireDefault(require(\"../../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../../utils\"));\n\nvar endpoint = {\n  getOperation: function getOperation() {\n    return _operations[\"default\"].PNSetMembershipsOperation;\n  },\n  validateParams: function validateParams(_, params) {\n    if (!(params === null || params === void 0 ? void 0 : params.channels) || (params === null || params === void 0 ? void 0 : params.channels.length) === 0) {\n      return 'Channels cannot be empty';\n    }\n  },\n  usePatch: function usePatch() {\n    return true;\n  },\n  patchURL: function patchURL(_ref, params) {\n    var _params$uuid;\n\n    var config = _ref.config;\n    return \"/v2/objects/\".concat(config.subscribeKey, \"/uuids/\").concat(_utils[\"default\"].encodeString((_params$uuid = params.uuid) !== null && _params$uuid !== void 0 ? _params$uuid : config.getUUID()), \"/channels\");\n  },\n  patchPayload: function patchPayload(_, params) {\n    return (0, _defineProperty2[\"default\"])({\n      set: [],\n      remove: []\n    }, params.type, params.channels.map(function (channel) {\n      if (typeof channel === 'string') {\n        return {\n          channel: {\n            id: channel\n          }\n        };\n      } else {\n        return {\n          channel: {\n            id: channel.id\n          },\n          custom: channel.custom\n        };\n      }\n    }));\n  },\n  getRequestTimeout: function getRequestTimeout(_ref3) {\n    var config = _ref3.config;\n    return config.getTransactionTimeout();\n  },\n  isAuthSupported: function isAuthSupported() {\n    return true;\n  },\n  getAuthToken: function getAuthToken(_ref4) {\n    var tokenManager = _ref4.tokenManager;\n    return tokenManager.getToken('membership');\n  },\n  prepareParams: function prepareParams(_modules, params) {\n    var _params$include4, _params$page, _params$page3;\n\n    var queryParams = {};\n\n    if (params === null || params === void 0 ? void 0 : params.include) {\n      var _params$include, _params$include2, _params$include3;\n\n      queryParams.include = [];\n\n      if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) {\n        queryParams.include.push('custom');\n      }\n\n      if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customChannelFields) {\n        queryParams.include.push('channel.custom');\n      }\n\n      if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.channelFields) {\n        queryParams.include.push('channel');\n      }\n\n      queryParams.include = queryParams.include.join(',');\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) {\n      queryParams.count = true;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) {\n      var _params$page2;\n\n      queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next;\n    }\n\n    if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) {\n      var _params$page4;\n\n      queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.filter) {\n      queryParams.filter = params.filter;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.limit) {\n      queryParams.limit = params.limit;\n    }\n\n    if (params === null || params === void 0 ? void 0 : params.sort) {\n      var _params$sort;\n\n      queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref5) {\n        var _ref6 = (0, _slicedToArray2[\"default\"])(_ref5, 2),\n            key = _ref6[0],\n            value = _ref6[1];\n\n        if (value === 'asc' || value === 'desc') {\n          return \"\".concat(key, \":\").concat(value);\n        } else {\n          return key;\n        }\n      });\n    }\n\n    return queryParams;\n  },\n  handleResponse: function handleResponse(_, response) {\n    return {\n      status: response.status,\n      data: response.data,\n      totalCount: response.totalCount,\n      prev: response.prev,\n      next: response.next\n    };\n  }\n};\nvar _default = endpoint;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":93,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/create_user.js","name":"./src/core/endpoints/users/create_user.js","index":92,"index2":90,"size":2814,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/users/create_user","loc":"114:55-95"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.usePost = usePost;\nexports.getURL = getURL;\nexports.postURL = postURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.postPayload = postPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  return incomingParams;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNCreateUserOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var id = incomingParams.id,\n      name = incomingParams.name,\n      custom = incomingParams.custom;\n  if (!id) return 'Missing User.id';\n  if (!name) return 'Missing User.name';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n  if (custom) {\n    if (!Object.values(custom).every(function (value) {\n      return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';\n    })) {\n      return 'Invalid custom type, only string, number and boolean values are allowed.';\n    }\n  }\n}\n\nfunction usePost() {\n  return true;\n}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users\");\n}\n\nfunction postURL(modules) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users\");\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.id) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include;\n  var params = {};\n\n  if (!include) {\n    include = {\n      customFields: true\n    };\n  } else if (include.customFields === undefined) {\n    include.customFields = true;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  return params;\n}\n\nfunction postPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, usersResponse) {\n  return usersResponse;\n}"},{"id":94,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/update_user.js","name":"./src/core/endpoints/users/update_user.js","index":93,"index2":91,"size":3065,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/users/update_user","loc":"116:55-95"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.usePatch = usePatch;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  return incomingParams;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateUserOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var id = incomingParams.id,\n      name = incomingParams.name,\n      custom = incomingParams.custom;\n  if (!id) return 'Missing User.id';\n  if (!name) return 'Missing User.name';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n  if (custom) {\n    if (!Object.values(custom).every(function (value) {\n      return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';\n    })) {\n      return 'Invalid custom type, only string, number and boolean values are allowed.';\n    }\n  }\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var id = incomingParams.id;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(id));\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  var id = incomingParams.id;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(id));\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.id) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include;\n  var params = {};\n\n  if (!include) {\n    include = {\n      customFields: true\n    };\n  } else if (include.customFields === undefined) {\n    include.customFields = true;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, usersResponse) {\n  return usersResponse;\n}"},{"id":95,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/delete_user.js","name":"./src/core/endpoints/users/delete_user.js","index":94,"index2":92,"size":1623,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/users/delete_user","loc":"118:55-95"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.useDelete = useDelete;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNDeleteUserOperation;\n}\n\nfunction validateParams(_ref, userId) {\n  var config = _ref.config;\n  if (!userId) return 'Missing UserId';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction useDelete() {\n  return true;\n}\n\nfunction getURL(modules, userId) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(userId));\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, userId) {\n  var token = modules.tokenManager.getToken('user', userId) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse(modules, usersResponse) {\n  return usersResponse;\n}"},{"id":96,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_user.js","name":"./src/core/endpoints/users/get_user.js","index":95,"index2":93,"size":2039,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/users/get_user","loc":"120:52-89"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetUserOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var userId = incomingParams.userId;\n  if (!userId) return 'Missing userId';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include;\n  var params = {};\n\n  if (!include) {\n    include = {\n      customFields: true\n    };\n  } else if (include.customFields === undefined) {\n    include.customFields = true;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, usersResponse) {\n  return usersResponse;\n}"},{"id":97,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/users/get_users.js","name":"./src/core/endpoints/users/get_users.js","index":96,"index2":94,"size":1965,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/users/get_users","loc":"122:53-91"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetUsersOperation;\n}\n\nfunction validateParams() {}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules) {\n  var token = modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page,\n      filter = incomingParams.filter;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  if (filter) {\n    params.filter = filter;\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, usersResponse) {\n  return usersResponse;\n}"},{"id":98,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/create_space.js","name":"./src/core/endpoints/spaces/create_space.js","index":97,"index2":95,"size":2823,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/spaces/create_space","loc":"124:56-98"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.usePost = usePost;\nexports.getURL = getURL;\nexports.postURL = postURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.postPayload = postPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  return incomingParams;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNCreateSpaceOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var id = incomingParams.id,\n      name = incomingParams.name,\n      custom = incomingParams.custom;\n  if (!id) return 'Missing Space.id';\n  if (!name) return 'Missing Space.name';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n  if (custom) {\n    if (!Object.values(custom).every(function (value) {\n      return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';\n    })) {\n      return 'Invalid custom type, only string, number and boolean values are allowed.';\n    }\n  }\n}\n\nfunction usePost() {\n  return true;\n}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces\");\n}\n\nfunction postURL(modules) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces\");\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.id) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include;\n  var params = {};\n\n  if (!include) {\n    include = {\n      customFields: true\n    };\n  } else if (include.customFields === undefined) {\n    include.customFields = true;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  return params;\n}\n\nfunction postPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, spacesResponse) {\n  return spacesResponse;\n}"},{"id":99,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/update_space.js","name":"./src/core/endpoints/spaces/update_space.js","index":98,"index2":96,"size":3074,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/spaces/update_space","loc":"126:56-98"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.usePatch = usePatch;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  return incomingParams;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateSpaceOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var id = incomingParams.id,\n      name = incomingParams.name,\n      custom = incomingParams.custom;\n  if (!id) return 'Missing Space.id';\n  if (!name) return 'Missing Space.name';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n  if (custom) {\n    if (!Object.values(custom).every(function (value) {\n      return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';\n    })) {\n      return 'Invalid custom type, only string, number and boolean values are allowed.';\n    }\n  }\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var id = incomingParams.id;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(id));\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  var id = incomingParams.id;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(id));\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.id) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include;\n  var params = {};\n\n  if (!include) {\n    include = {\n      customFields: true\n    };\n  } else if (include.customFields === undefined) {\n    include.customFields = true;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, spacesResponse) {\n  return spacesResponse;\n}"},{"id":100,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/delete_space.js","name":"./src/core/endpoints/spaces/delete_space.js","index":99,"index2":97,"size":1636,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/spaces/delete_space","loc":"128:56-98"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.useDelete = useDelete;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNDeleteSpaceOperation;\n}\n\nfunction validateParams(_ref, spaceId) {\n  var config = _ref.config;\n  if (!spaceId) return 'Missing SpaceId';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction useDelete() {\n  return true;\n}\n\nfunction getURL(modules, spaceId) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(spaceId));\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, spaceId) {\n  var token = modules.tokenManager.getToken('space', spaceId) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction handleResponse(modules, spacesResponse) {\n  return spacesResponse;\n}"},{"id":101,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_spaces.js","name":"./src/core/endpoints/spaces/get_spaces.js","index":100,"index2":98,"size":1970,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/spaces/get_spaces","loc":"130:54-94"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetSpacesOperation;\n}\n\nfunction validateParams() {}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules) {\n  var token = modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page,\n      filter = incomingParams.filter;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  if (filter) {\n    params.filter = filter;\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, spacesResponse) {\n  return spacesResponse;\n}"},{"id":102,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/spaces/get_space.js","name":"./src/core/endpoints/spaces/get_space.js","index":101,"index2":99,"size":2051,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/spaces/get_space","loc":"132:53-92"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetSpaceOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var spaceId = incomingParams.spaceId;\n  if (!spaceId) return 'Missing spaceId';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include;\n  var params = {};\n\n  if (!include) {\n    include = {\n      customFields: true\n    };\n  } else if (include.customFields === undefined) {\n    include.customFields = true;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, spacesResponse) {\n  return spacesResponse;\n}"},{"id":103,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_members.js","name":"./src/core/endpoints/memberships/get_members.js","index":102,"index2":100,"size":2458,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/get_members","loc":"134:55-101"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetMembersOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var spaceId = incomingParams.spaceId;\n  if (!spaceId) return 'Missing spaceId';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page,\n      filter = incomingParams.filter;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.userFields) {\n      includes.push('user');\n    }\n\n    if (include.customUserFields) {\n      includes.push('user.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  if (filter) {\n    params.filter = filter;\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, membersResponse) {\n  return membersResponse;\n}"},{"id":104,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/add_members.js","name":"./src/core/endpoints/memberships/add_members.js","index":103,"index2":101,"size":3341,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/add_members","loc":"136:55-101"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.usePatch = usePatch;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var users = incomingParams.users;\n  var payload = {};\n\n  if (users && users.length > 0) {\n    payload.add = [];\n    users.forEach(function (addMember) {\n      var currentAdd = {\n        id: addMember.id\n      };\n\n      if (addMember.custom) {\n        currentAdd.custom = addMember.custom;\n      }\n\n      payload.add.push(currentAdd);\n    });\n  }\n\n  return payload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateMembersOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var spaceId = incomingParams.spaceId,\n      users = incomingParams.users;\n  if (!spaceId) return 'Missing spaceId';\n  if (!users) return 'Missing users';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, membersResponse) {\n  return membersResponse;\n}"},{"id":105,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_members.js","name":"./src/core/endpoints/memberships/update_members.js","index":104,"index2":102,"size":4394,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/update_members","loc":"138:58-107"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.usePatch = usePatch;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var addMembers = incomingParams.addMembers,\n      updateMembers = incomingParams.updateMembers,\n      removeMembers = incomingParams.removeMembers,\n      users = incomingParams.users;\n  var payload = {};\n\n  if (addMembers && addMembers.length > 0) {\n    payload.add = [];\n    addMembers.forEach(function (addMember) {\n      var currentAdd = {\n        id: addMember.id\n      };\n\n      if (addMember.custom) {\n        currentAdd.custom = addMember.custom;\n      }\n\n      payload.add.push(currentAdd);\n    });\n  }\n\n  if (updateMembers && updateMembers.length > 0) {\n    payload.update = [];\n    updateMembers.forEach(function (updateMember) {\n      var currentUpdate = {\n        id: updateMember.id\n      };\n\n      if (updateMember.custom) {\n        currentUpdate.custom = updateMember.custom;\n      }\n\n      payload.update.push(currentUpdate);\n    });\n  }\n\n  if (users && users.length > 0) {\n    payload.update = payload.update || [];\n    users.forEach(function (updateMember) {\n      var currentUpdate = {\n        id: updateMember.id\n      };\n\n      if (updateMember.custom) {\n        currentUpdate.custom = updateMember.custom;\n      }\n\n      payload.update.push(currentUpdate);\n    });\n  }\n\n  if (removeMembers && removeMembers.length > 0) {\n    payload.remove = [];\n    removeMembers.forEach(function (removeMemberId) {\n      payload.remove.push({\n        id: removeMemberId\n      });\n    });\n  }\n\n  return payload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateMembersOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var spaceId = incomingParams.spaceId,\n      users = incomingParams.users;\n  if (!spaceId) return 'Missing spaceId';\n  if (!users) return 'Missing users';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, membersResponse) {\n  return membersResponse;\n}"},{"id":106,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/remove_members.js","name":"./src/core/endpoints/memberships/remove_members.js","index":105,"index2":103,"size":3233,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/remove_members","loc":"140:58-107"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.usePatch = usePatch;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var users = incomingParams.users;\n  var payload = {};\n\n  if (users && users.length > 0) {\n    payload.remove = [];\n    users.forEach(function (removeMemberId) {\n      payload.remove.push({\n        id: removeMemberId\n      });\n    });\n  }\n\n  return payload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateMembersOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var spaceId = incomingParams.spaceId,\n      users = incomingParams.users;\n  if (!spaceId) return 'Missing spaceId';\n  if (!users) return 'Missing users';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/spaces/\").concat(_utils[\"default\"].encodeString(incomingParams.spaceId), \"/users\");\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, membersResponse) {\n  return membersResponse;\n}"},{"id":107,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/get_memberships.js","name":"./src/core/endpoints/memberships/get_memberships.js","index":106,"index2":104,"size":2466,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/get_memberships","loc":"142:59-109"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNGetMembershipsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var userId = incomingParams.userId;\n  if (!userId) return 'Missing userId';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page,\n      filter = incomingParams.filter;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  if (filter) {\n    params.filter = filter;\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, membershipsResponse) {\n  return membershipsResponse;\n}"},{"id":108,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/update_memberships.js","name":"./src/core/endpoints/memberships/update_memberships.js","index":107,"index2":105,"size":4522,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/update_memberships","loc":"144:62-115"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.usePatch = usePatch;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var addMemberships = incomingParams.addMemberships,\n      updateMemberships = incomingParams.updateMemberships,\n      removeMemberships = incomingParams.removeMemberships,\n      spaces = incomingParams.spaces;\n  var payload = {};\n\n  if (addMemberships && addMemberships.length > 0) {\n    payload.add = [];\n    addMemberships.forEach(function (addMembership) {\n      var currentAdd = {\n        id: addMembership.id\n      };\n\n      if (addMembership.custom) {\n        currentAdd.custom = addMembership.custom;\n      }\n\n      payload.add.push(currentAdd);\n    });\n  }\n\n  if (updateMemberships && updateMemberships.length > 0) {\n    payload.update = [];\n    updateMemberships.forEach(function (updateMembership) {\n      var currentUpdate = {\n        id: updateMembership.id\n      };\n\n      if (updateMembership.custom) {\n        currentUpdate.custom = updateMembership.custom;\n      }\n\n      payload.update.push(currentUpdate);\n    });\n  }\n\n  if (spaces && spaces.length > 0) {\n    payload.update = payload.update || [];\n    spaces.forEach(function (updateMembership) {\n      var currentUpdate = {\n        id: updateMembership.id\n      };\n\n      if (updateMembership.custom) {\n        currentUpdate.custom = updateMembership.custom;\n      }\n\n      payload.update.push(currentUpdate);\n    });\n  }\n\n  if (removeMemberships && removeMemberships.length > 0) {\n    payload.remove = [];\n    removeMemberships.forEach(function (removeMembershipId) {\n      payload.remove.push({\n        id: removeMembershipId\n      });\n    });\n  }\n\n  return payload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateMembershipsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var userId = incomingParams.userId,\n      spaces = incomingParams.spaces;\n  if (!userId) return 'Missing userId';\n  if (!spaces) return 'Missing spaces';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, membershipsResponse) {\n  return membershipsResponse;\n}"},{"id":109,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/join_spaces.js","name":"./src/core/endpoints/memberships/join_spaces.js","index":108,"index2":106,"size":3369,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/join_spaces","loc":"146:55-101"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.usePatch = usePatch;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var spaces = incomingParams.spaces;\n  var payload = {};\n\n  if (spaces && spaces.length > 0) {\n    payload.add = [];\n    spaces.forEach(function (addMembership) {\n      var currentAdd = {\n        id: addMembership.id\n      };\n\n      if (addMembership.custom) {\n        currentAdd.custom = addMembership.custom;\n      }\n\n      payload.add.push(currentAdd);\n    });\n  }\n\n  return payload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateMembershipsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var userId = incomingParams.userId,\n      spaces = incomingParams.spaces;\n  if (!userId) return 'Missing userId';\n  if (!spaces) return 'Missing spaces';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, membershipsResponse) {\n  return membershipsResponse;\n}"},{"id":110,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/memberships/leave_spaces.js","name":"./src/core/endpoints/memberships/leave_spaces.js","index":109,"index2":107,"size":3253,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/memberships/leave_spaces","loc":"148:56-103"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.patchURL = patchURL;\nexports.usePatch = usePatch;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.getAuthToken = getAuthToken;\nexports.prepareParams = prepareParams;\nexports.patchPayload = patchPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var spaces = incomingParams.spaces;\n  var payload = {};\n\n  if (spaces && spaces.length > 0) {\n    payload.remove = [];\n    spaces.forEach(function (removeMembershipId) {\n      payload.remove.push({\n        id: removeMembershipId\n      });\n    });\n  }\n\n  return payload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNUpdateMembershipsOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var userId = incomingParams.userId,\n      spaces = incomingParams.spaces;\n  if (!userId) return 'Missing userId';\n  if (!spaces) return 'Missing spaces';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction patchURL(modules, incomingParams) {\n  var config = modules.config;\n  return \"/v1/objects/\".concat(config.subscribeKey, \"/users/\").concat(_utils[\"default\"].encodeString(incomingParams.userId), \"/spaces\");\n}\n\nfunction usePatch() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction getAuthToken(modules, incomingParams) {\n  var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user');\n  return token;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var include = incomingParams.include,\n      limit = incomingParams.limit,\n      page = incomingParams.page;\n  var params = {};\n\n  if (limit) {\n    params.limit = limit;\n  }\n\n  if (include) {\n    var includes = [];\n\n    if (include.totalCount) {\n      params.count = true;\n    }\n\n    if (include.customFields) {\n      includes.push('custom');\n    }\n\n    if (include.spaceFields) {\n      includes.push('space');\n    }\n\n    if (include.customSpaceFields) {\n      includes.push('space.custom');\n    }\n\n    var includesString = includes.join(',');\n\n    if (includesString.length > 0) {\n      params.include = includesString;\n    }\n  }\n\n  if (page) {\n    if (page.next) {\n      params.start = page.next;\n    }\n\n    if (page.prev) {\n      params.end = page.prev;\n    }\n  }\n\n  return params;\n}\n\nfunction patchPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, membershipsResponse) {\n  return membershipsResponse;\n}"},{"id":111,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/audit.js","name":"./src/core/endpoints/access_manager/audit.js","index":110,"index2":108,"size":1668,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/access_manager/audit","loc":"150:50-93"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNAccessManagerAudit;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v2/auth/audit/sub-key/\".concat(config.subscribeKey);\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return false;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var channel = incomingParams.channel,\n      channelGroup = incomingParams.channelGroup,\n      _incomingParams$authK = incomingParams.authKeys,\n      authKeys = _incomingParams$authK === void 0 ? [] : _incomingParams$authK;\n  var params = {};\n\n  if (channel) {\n    params.channel = channel;\n  }\n\n  if (channelGroup) {\n    params['channel-group'] = channelGroup;\n  }\n\n  if (authKeys.length > 0) {\n    params.auth = authKeys.join(',');\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return serverResponse.payload;\n}"},{"id":112,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/grant.js","name":"./src/core/endpoints/access_manager/grant.js","index":111,"index2":109,"size":3668,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/access_manager/grant","loc":"152:50-93"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNAccessManagerGrant;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n  if (!config.publishKey) return 'Missing Publish Key';\n  if (!config.secretKey) return 'Missing Secret Key';\n\n  if (incomingParams.uuids != null && !incomingParams.authKeys) {\n    return 'authKeys are required for grant request on uuids';\n  }\n\n  if (incomingParams.uuids != null && (incomingParams.channels != null || incomingParams.channelGroups != null)) {\n    return 'Both channel/channelgroup and uuid cannot be used in the same request';\n  }\n}\n\nfunction getURL(modules) {\n  var config = modules.config;\n  return \"/v2/auth/grant/sub-key/\".concat(config.subscribeKey);\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return false;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann,\n      _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2,\n      _incomingParams$uuids = incomingParams.uuids,\n      uuids = _incomingParams$uuids === void 0 ? [] : _incomingParams$uuids,\n      ttl = incomingParams.ttl,\n      _incomingParams$read = incomingParams.read,\n      read = _incomingParams$read === void 0 ? false : _incomingParams$read,\n      _incomingParams$write = incomingParams.write,\n      write = _incomingParams$write === void 0 ? false : _incomingParams$write,\n      _incomingParams$manag = incomingParams.manage,\n      manage = _incomingParams$manag === void 0 ? false : _incomingParams$manag,\n      _incomingParams$get = incomingParams.get,\n      get = _incomingParams$get === void 0 ? false : _incomingParams$get,\n      _incomingParams$join = incomingParams.join,\n      join = _incomingParams$join === void 0 ? false : _incomingParams$join,\n      _incomingParams$updat = incomingParams.update,\n      update = _incomingParams$updat === void 0 ? false : _incomingParams$updat,\n      _incomingParams$authK = incomingParams.authKeys,\n      authKeys = _incomingParams$authK === void 0 ? [] : _incomingParams$authK;\n  var deleteParam = incomingParams[\"delete\"];\n  var params = {};\n  params.r = read ? '1' : '0';\n  params.w = write ? '1' : '0';\n  params.m = manage ? '1' : '0';\n  params.d = deleteParam ? '1' : '0';\n  params.g = get ? '1' : '0';\n  params.j = join ? '1' : '0';\n  params.u = update ? '1' : '0';\n\n  if (channels.length > 0) {\n    params.channel = channels.join(',');\n  }\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  if (authKeys.length > 0) {\n    params.auth = authKeys.join(',');\n  }\n\n  if (uuids.length > 0) {\n    params['target-uuid'] = uuids.join(',');\n  }\n\n  if (ttl || ttl === 0) {\n    params.ttl = ttl;\n  }\n\n  return params;\n}\n\nfunction handleResponse() {\n  return {};\n}"},{"id":113,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/access_manager/grant_token.js","name":"./src/core/endpoints/access_manager/grant_token.js","index":112,"index2":110,"size":5425,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/access_manager/grant_token","loc":"154:55-104"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.extractPermissions = extractPermissions;\nexports.validateParams = validateParams;\nexports.postURL = postURL;\nexports.usePost = usePost;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.postPayload = postPayload;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNAccessManagerGrantToken;\n}\n\nfunction extractPermissions(permissions) {\n  var permissionsResult = 0;\n\n  if (permissions.create) {\n    permissionsResult |= 16;\n  }\n\n  if (permissions[\"delete\"]) {\n    permissionsResult |= 8;\n  }\n\n  if (permissions.manage) {\n    permissionsResult |= 4;\n  }\n\n  if (permissions.write) {\n    permissionsResult |= 2;\n  }\n\n  if (permissions.read) {\n    permissionsResult |= 1;\n  }\n\n  return permissionsResult;\n}\n\nfunction prepareMessagePayload(modules, incomingParams) {\n  var ttl = incomingParams.ttl,\n      resources = incomingParams.resources,\n      patterns = incomingParams.patterns,\n      meta = incomingParams.meta;\n  var params = {\n    ttl: 0,\n    permissions: {\n      resources: {\n        channels: {},\n        groups: {},\n        users: {},\n        spaces: {}\n      },\n      patterns: {\n        channels: {},\n        groups: {},\n        users: {},\n        spaces: {}\n      },\n      meta: {}\n    }\n  };\n\n  if (resources) {\n    var users = resources.users,\n        spaces = resources.spaces,\n        channels = resources.channels,\n        groups = resources.groups;\n\n    if (users) {\n      Object.keys(users).forEach(function (user) {\n        params.permissions.resources.users[user] = extractPermissions(users[user]);\n      });\n    }\n\n    if (spaces) {\n      Object.keys(spaces).forEach(function (space) {\n        params.permissions.resources.spaces[space] = extractPermissions(spaces[space]);\n      });\n    }\n\n    if (channels) {\n      Object.keys(channels).forEach(function (channel) {\n        params.permissions.resources.channels[channel] = extractPermissions(channels[channel]);\n      });\n    }\n\n    if (groups) {\n      Object.keys(groups).forEach(function (group) {\n        params.permissions.resources.groups[group] = extractPermissions(groups[group]);\n      });\n    }\n  }\n\n  if (patterns) {\n    var _users = patterns.users,\n        _spaces = patterns.spaces,\n        _channels = patterns.channels,\n        _groups = patterns.groups;\n\n    if (_users) {\n      Object.keys(_users).forEach(function (user) {\n        params.permissions.patterns.users[user] = extractPermissions(_users[user]);\n      });\n    }\n\n    if (_spaces) {\n      Object.keys(_spaces).forEach(function (space) {\n        params.permissions.patterns.spaces[space] = extractPermissions(_spaces[space]);\n      });\n    }\n\n    if (_channels) {\n      Object.keys(_channels).forEach(function (channel) {\n        params.permissions.patterns.channels[channel] = extractPermissions(_channels[channel]);\n      });\n    }\n\n    if (_groups) {\n      Object.keys(_groups).forEach(function (group) {\n        params.permissions.patterns.groups[group] = extractPermissions(_groups[group]);\n      });\n    }\n  }\n\n  if (ttl || ttl === 0) {\n    params.ttl = ttl;\n  }\n\n  if (meta) {\n    params.permissions.meta = meta;\n  }\n\n  return params;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n  if (!config.publishKey) return 'Missing Publish Key';\n  if (!config.secretKey) return 'Missing Secret Key';\n  if (!incomingParams.resources && !incomingParams.patterns) return 'Missing either Resources or Patterns.';\n\n  if (incomingParams.resources && (!incomingParams.resources.users || Object.keys(incomingParams.resources.users).length === 0) && (!incomingParams.resources.spaces || Object.keys(incomingParams.resources.spaces).length === 0) && (!incomingParams.resources.channels || Object.keys(incomingParams.resources.channels).length === 0) && (!incomingParams.resources.groups || Object.keys(incomingParams.resources.groups).length === 0) || incomingParams.patterns && (!incomingParams.patterns.users || Object.keys(incomingParams.patterns.users).length === 0) && (!incomingParams.patterns.spaces || Object.keys(incomingParams.patterns.spaces).length === 0) && (!incomingParams.patterns.channels || Object.keys(incomingParams.patterns.channels).length === 0) && (!incomingParams.patterns.groups || Object.keys(incomingParams.patterns.groups).length === 0)) {\n    return 'Missing values for either Resources or Patterns.';\n  }\n}\n\nfunction postURL(modules) {\n  var config = modules.config;\n  return \"/v3/pam/\".concat(config.subscribeKey, \"/grant\");\n}\n\nfunction usePost() {\n  return true;\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return false;\n}\n\nfunction prepareParams() {\n  return {};\n}\n\nfunction postPayload(modules, incomingParams) {\n  return prepareMessagePayload(modules, incomingParams);\n}\n\nfunction handleResponse(modules, response) {\n  var token = response.data.token;\n  return token;\n}"},{"id":114,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/publish.js","name":"./src/core/endpoints/publish.js","index":113,"index2":111,"size":3539,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/publish","loc":"156:52-82"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.usePost = usePost;\nexports.getURL = getURL;\nexports.postURL = postURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.postPayload = postPayload;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime/helpers/typeof\"));\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../utils\"));\n\nfunction prepareMessagePayload(modules, messagePayload) {\n  var crypto = modules.crypto,\n      config = modules.config;\n  var stringifiedPayload = JSON.stringify(messagePayload);\n\n  if (config.cipherKey) {\n    stringifiedPayload = crypto.encrypt(stringifiedPayload);\n    stringifiedPayload = JSON.stringify(stringifiedPayload);\n  }\n\n  return stringifiedPayload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNPublishOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var message = incomingParams.message,\n      channel = incomingParams.channel;\n  if (!channel) return 'Missing Channel';\n  if (!message) return 'Missing Message';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction usePost(modules, incomingParams) {\n  var _incomingParams$sendB = incomingParams.sendByPost,\n      sendByPost = _incomingParams$sendB === void 0 ? false : _incomingParams$sendB;\n  return sendByPost;\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var channel = incomingParams.channel,\n      message = incomingParams.message;\n  var stringifiedPayload = prepareMessagePayload(modules, message);\n  return \"/publish/\".concat(config.publishKey, \"/\").concat(config.subscribeKey, \"/0/\").concat(_utils[\"default\"].encodeString(channel), \"/0/\").concat(_utils[\"default\"].encodeString(stringifiedPayload));\n}\n\nfunction postURL(modules, incomingParams) {\n  var config = modules.config;\n  var channel = incomingParams.channel;\n  return \"/publish/\".concat(config.publishKey, \"/\").concat(config.subscribeKey, \"/0/\").concat(_utils[\"default\"].encodeString(channel), \"/0\");\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction postPayload(modules, incomingParams) {\n  var message = incomingParams.message;\n  return prepareMessagePayload(modules, message);\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var meta = incomingParams.meta,\n      _incomingParams$repli = incomingParams.replicate,\n      replicate = _incomingParams$repli === void 0 ? true : _incomingParams$repli,\n      storeInHistory = incomingParams.storeInHistory,\n      ttl = incomingParams.ttl;\n  var params = {};\n\n  if (storeInHistory != null) {\n    if (storeInHistory) {\n      params.store = '1';\n    } else {\n      params.store = '0';\n    }\n  }\n\n  if (ttl) {\n    params.ttl = ttl;\n  }\n\n  if (replicate === false) {\n    params.norep = 'true';\n  }\n\n  if (meta && (0, _typeof2[\"default\"])(meta) === 'object') {\n    params.meta = JSON.stringify(meta);\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    timetoken: serverResponse[2]\n  };\n}"},{"id":115,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/signal.js","name":"./src/core/endpoints/signal.js","index":114,"index2":112,"size":1915,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/signal","loc":"158:51-80"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../utils\"));\n\nfunction prepareMessagePayload(modules, messagePayload) {\n  var stringifiedPayload = JSON.stringify(messagePayload);\n  return stringifiedPayload;\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNSignalOperation;\n}\n\nfunction validateParams(_ref, incomingParams) {\n  var config = _ref.config;\n  var message = incomingParams.message,\n      channel = incomingParams.channel;\n  if (!channel) return 'Missing Channel';\n  if (!message) return 'Missing Message';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var channel = incomingParams.channel,\n      message = incomingParams.message;\n  var stringifiedPayload = prepareMessagePayload(modules, message);\n  return \"/signal/\".concat(config.publishKey, \"/\").concat(config.subscribeKey, \"/0/\").concat(_utils[\"default\"].encodeString(channel), \"/0/\").concat(_utils[\"default\"].encodeString(stringifiedPayload));\n}\n\nfunction getRequestTimeout(_ref2) {\n  var config = _ref2.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams() {\n  var params = {};\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    timetoken: serverResponse[2]\n  };\n}"},{"id":116,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/get_history.js","name":"./src/core/endpoints/history/get_history.js","index":115,"index2":113,"size":3145,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/history/get_history","loc":"160:52-94"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction __processMessage(modules, message) {\n  var config = modules.config,\n      crypto = modules.crypto;\n  if (!config.cipherKey) return message;\n\n  try {\n    return crypto.decrypt(message);\n  } catch (e) {\n    return message;\n  }\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNHistoryOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channel = incomingParams.channel;\n  var config = modules.config;\n  if (!channel) return 'Missing channel';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var channel = incomingParams.channel;\n  var config = modules.config;\n  return \"/v2/history/sub-key/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(channel));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var start = incomingParams.start,\n      end = incomingParams.end,\n      reverse = incomingParams.reverse,\n      _incomingParams$count = incomingParams.count,\n      count = _incomingParams$count === void 0 ? 100 : _incomingParams$count,\n      _incomingParams$strin = incomingParams.stringifiedTimeToken,\n      stringifiedTimeToken = _incomingParams$strin === void 0 ? false : _incomingParams$strin,\n      _incomingParams$inclu = incomingParams.includeMeta,\n      includeMeta = _incomingParams$inclu === void 0 ? false : _incomingParams$inclu;\n  var outgoingParams = {\n    include_token: 'true'\n  };\n  outgoingParams.count = count;\n  if (start) outgoingParams.start = start;\n  if (end) outgoingParams.end = end;\n  if (stringifiedTimeToken) outgoingParams.string_message_token = 'true';\n  if (reverse != null) outgoingParams.reverse = reverse.toString();\n  if (includeMeta) outgoingParams.include_meta = 'true';\n  return outgoingParams;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  var response = {\n    messages: [],\n    startTimeToken: serverResponse[1],\n    endTimeToken: serverResponse[2]\n  };\n\n  if (Array.isArray(serverResponse[0])) {\n    serverResponse[0].forEach(function (serverHistoryItem) {\n      var item = {\n        timetoken: serverHistoryItem.timetoken,\n        entry: __processMessage(modules, serverHistoryItem.message)\n      };\n\n      if (serverHistoryItem.meta) {\n        item.meta = serverHistoryItem.meta;\n      }\n\n      response.messages.push(item);\n    });\n  }\n\n  return response;\n}"},{"id":117,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/delete_messages.js","name":"./src/core/endpoints/history/delete_messages.js","index":116,"index2":114,"size":1761,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/history/delete_messages","loc":"162:59-105"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.useDelete = useDelete;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNDeleteMessagesOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channel = incomingParams.channel;\n  var config = modules.config;\n  if (!channel) return 'Missing channel';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction useDelete() {\n  return true;\n}\n\nfunction getURL(modules, incomingParams) {\n  var channel = incomingParams.channel;\n  var config = modules.config;\n  return \"/v3/history/sub-key/\".concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(channel));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var start = incomingParams.start,\n      end = incomingParams.end;\n  var outgoingParams = {};\n  if (start) outgoingParams.start = start;\n  if (end) outgoingParams.end = end;\n  return outgoingParams;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return serverResponse.payload;\n}"},{"id":118,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/history/message_counts.js","name":"./src/core/endpoints/history/message_counts.js","index":117,"index2":115,"size":2551,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/history/message_counts","loc":"164:58-103"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime/helpers/slicedToArray\"));\n\nvar _operations = _interopRequireDefault(require(\"../../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNMessageCounts;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channels = incomingParams.channels,\n      timetoken = incomingParams.timetoken,\n      channelTimetokens = incomingParams.channelTimetokens;\n  var config = modules.config;\n  if (!channels) return 'Missing channel';\n  if (timetoken && channelTimetokens) return 'timetoken and channelTimetokens are incompatible together';\n  if (timetoken && channelTimetokens && channelTimetokens.length > 1 && channels.length !== channelTimetokens.length) return 'Length of channelTimetokens and channels do not match';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var channels = incomingParams.channels;\n  var config = modules.config;\n  var stringifiedChannels = channels.join(',');\n  return \"/v3/history/sub-key/\".concat(config.subscribeKey, \"/message-counts/\").concat(_utils[\"default\"].encodeString(stringifiedChannels));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var timetoken = incomingParams.timetoken,\n      channelTimetokens = incomingParams.channelTimetokens;\n  var outgoingParams = {};\n\n  if (channelTimetokens && channelTimetokens.length === 1) {\n    var _channelTimetokens = (0, _slicedToArray2[\"default\"])(channelTimetokens, 1),\n        tt = _channelTimetokens[0];\n\n    outgoingParams.timetoken = tt;\n  } else if (channelTimetokens) {\n    outgoingParams.channelsTimetoken = channelTimetokens.join(',');\n  } else if (timetoken) {\n    outgoingParams.timetoken = timetoken;\n  }\n\n  return outgoingParams;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  return {\n    channels: serverResponse.channels\n  };\n}"},{"id":119,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/fetch_messages.js","name":"./src/core/endpoints/fetch_messages.js","index":118,"index2":116,"size":4927,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/fetch_messages","loc":"166:58-95"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../utils\"));\n\nfunction __processMessage(modules, message) {\n  var config = modules.config,\n      crypto = modules.crypto;\n  if (!config.cipherKey) return message;\n\n  try {\n    return crypto.decrypt(message);\n  } catch (e) {\n    return message;\n  }\n}\n\nfunction getOperation() {\n  return _operations[\"default\"].PNFetchMessagesOperation;\n}\n\nfunction validateParams(modules, incomingParams) {\n  var channels = incomingParams.channels,\n      _incomingParams$inclu = incomingParams.includeMessageActions,\n      includeMessageActions = _incomingParams$inclu === void 0 ? false : _incomingParams$inclu;\n  var config = modules.config;\n  if (!channels || channels.length === 0) return 'Missing channels';\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n  if (includeMessageActions && channels.length > 1) {\n    throw new TypeError('History can return actions data for a single channel only. Either pass a single channel or disable the includeMessageActions flag.');\n  }\n}\n\nfunction getURL(modules, incomingParams) {\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann,\n      _incomingParams$inclu2 = incomingParams.includeMessageActions,\n      includeMessageActions = _incomingParams$inclu2 === void 0 ? false : _incomingParams$inclu2;\n  var config = modules.config;\n  var endpoint = !includeMessageActions ? 'history' : 'history-with-actions';\n  var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n  return \"/v3/\".concat(endpoint, \"/sub-key/\").concat(config.subscribeKey, \"/channel/\").concat(_utils[\"default\"].encodeString(stringifiedChannels));\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getTransactionTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(modules, incomingParams) {\n  var channels = incomingParams.channels,\n      start = incomingParams.start,\n      end = incomingParams.end,\n      includeMessageActions = incomingParams.includeMessageActions,\n      count = incomingParams.count,\n      _incomingParams$strin = incomingParams.stringifiedTimeToken,\n      stringifiedTimeToken = _incomingParams$strin === void 0 ? false : _incomingParams$strin,\n      _incomingParams$inclu3 = incomingParams.includeMeta,\n      includeMeta = _incomingParams$inclu3 === void 0 ? false : _incomingParams$inclu3,\n      includeUuid = incomingParams.includeUuid,\n      _incomingParams$inclu4 = incomingParams.includeUUID,\n      includeUUID = _incomingParams$inclu4 === void 0 ? true : _incomingParams$inclu4,\n      _incomingParams$inclu5 = incomingParams.includeMessageType,\n      includeMessageType = _incomingParams$inclu5 === void 0 ? true : _incomingParams$inclu5;\n  var outgoingParams = {};\n\n  if (count) {\n    outgoingParams.max = count;\n  } else {\n    outgoingParams.max = channels.length > 1 || includeMessageActions === true ? 25 : 100;\n  }\n\n  if (start) outgoingParams.start = start;\n  if (end) outgoingParams.end = end;\n  if (stringifiedTimeToken) outgoingParams.string_message_token = 'true';\n  if (includeMeta) outgoingParams.include_meta = 'true';\n  if (includeUUID && includeUuid !== false) outgoingParams.include_uuid = 'true';\n  if (includeMessageType) outgoingParams.include_message_type = 'true';\n  return outgoingParams;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  var response = {\n    channels: {}\n  };\n  Object.keys(serverResponse.channels || {}).forEach(function (channelName) {\n    response.channels[channelName] = [];\n    (serverResponse.channels[channelName] || []).forEach(function (messageEnvelope) {\n      var announce = {};\n      announce.channel = channelName;\n      announce.timetoken = messageEnvelope.timetoken;\n      announce.message = __processMessage(modules, messageEnvelope.message);\n      announce.messageType = messageEnvelope.message_type;\n      announce.uuid = messageEnvelope.uuid;\n\n      if (messageEnvelope.actions) {\n        announce.actions = messageEnvelope.actions;\n        announce.data = messageEnvelope.actions;\n      }\n\n      if (messageEnvelope.meta) {\n        announce.meta = messageEnvelope.meta;\n      }\n\n      response.channels[channelName].push(announce);\n    });\n  });\n\n  if (serverResponse.more) {\n    response.more = serverResponse.more;\n  }\n\n  return response;\n}"},{"id":120,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/endpoints/subscribe.js","name":"./src/core/endpoints/subscribe.js","index":119,"index2":117,"size":3117,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","issuerId":29,"issuerName":"./src/core/pubnub-common.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}},{"id":29,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","name":"./src/core/pubnub-common.js","profile":{"factory":905,"building":85,"dependencies":2695}}],"profile":{"factory":695,"building":2433,"dependencies":2167},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":29,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/core/pubnub-common.js","module":"./src/core/pubnub-common.js","moduleName":"./src/core/pubnub-common.js","type":"cjs require","userRequest":"./endpoints/subscribe","loc":"170:54-86"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":2,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.getOperation = getOperation;\nexports.validateParams = validateParams;\nexports.getURL = getURL;\nexports.getRequestTimeout = getRequestTimeout;\nexports.isAuthSupported = isAuthSupported;\nexports.prepareParams = prepareParams;\nexports.handleResponse = handleResponse;\n\nvar _flow_interfaces = require(\"../flow_interfaces\");\n\nvar _operations = _interopRequireDefault(require(\"../constants/operations\"));\n\nvar _utils = _interopRequireDefault(require(\"../utils\"));\n\nfunction getOperation() {\n  return _operations[\"default\"].PNSubscribeOperation;\n}\n\nfunction validateParams(modules) {\n  var config = modules.config;\n  if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nfunction getURL(modules, incomingParams) {\n  var config = modules.config;\n  var _incomingParams$chann = incomingParams.channels,\n      channels = _incomingParams$chann === void 0 ? [] : _incomingParams$chann;\n  var stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n  return \"/v2/subscribe/\".concat(config.subscribeKey, \"/\").concat(_utils[\"default\"].encodeString(stringifiedChannels), \"/0\");\n}\n\nfunction getRequestTimeout(_ref) {\n  var config = _ref.config;\n  return config.getSubscribeTimeout();\n}\n\nfunction isAuthSupported() {\n  return true;\n}\n\nfunction prepareParams(_ref2, incomingParams) {\n  var config = _ref2.config;\n  var state = incomingParams.state,\n      _incomingParams$chann2 = incomingParams.channelGroups,\n      channelGroups = _incomingParams$chann2 === void 0 ? [] : _incomingParams$chann2,\n      timetoken = incomingParams.timetoken,\n      filterExpression = incomingParams.filterExpression,\n      region = incomingParams.region;\n  var params = {\n    heartbeat: config.getPresenceTimeout()\n  };\n\n  if (channelGroups.length > 0) {\n    params['channel-group'] = channelGroups.join(',');\n  }\n\n  if (filterExpression && filterExpression.length > 0) {\n    params['filter-expr'] = filterExpression;\n  }\n\n  if (Object.keys(state).length) {\n    params.state = JSON.stringify(state);\n  }\n\n  if (timetoken) {\n    params.tt = timetoken;\n  }\n\n  if (region) {\n    params.tr = region;\n  }\n\n  return params;\n}\n\nfunction handleResponse(modules, serverResponse) {\n  var messages = [];\n  serverResponse.m.forEach(function (rawMessage) {\n    var publishMetaData = {\n      publishTimetoken: rawMessage.p.t,\n      region: rawMessage.p.r\n    };\n    var parsedMessage = {\n      shard: parseInt(rawMessage.a, 10),\n      subscriptionMatch: rawMessage.b,\n      channel: rawMessage.c,\n      messageType: rawMessage.e,\n      payload: rawMessage.d,\n      flags: rawMessage.f,\n      issuingClientId: rawMessage.i,\n      subscribeKey: rawMessage.k,\n      originationTimetoken: rawMessage.o,\n      userMetadata: rawMessage.u,\n      publishMetaData: publishMetaData\n    };\n    messages.push(parsedMessage);\n  });\n  var metadata = {\n    timetoken: serverResponse.t.t,\n    region: serverResponse.t.r\n  };\n  return {\n    messages: messages,\n    metadata: metadata\n  };\n}"},{"id":121,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/networking/index.js","name":"./src/networking/index.js","index":120,"index2":119,"size":5105,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../networking","loc":"24:41-65"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _config = _interopRequireDefault(require(\"../core/components/config\"));\n\nvar _categories = _interopRequireDefault(require(\"../core/constants/categories\"));\n\nvar _flow_interfaces = require(\"../core/flow_interfaces\");\n\nvar _default = function () {\n  function _default(modules) {\n    var _this = this;\n\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_modules\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_config\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_maxSubDomain\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_currentSubDomain\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_standardOrigin\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_subscribeOrigin\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_providedFQDN\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_requestTimeout\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_coreParams\", void 0);\n    this._modules = {};\n    Object.keys(modules).forEach(function (key) {\n      _this._modules[key] = modules[key].bind(_this);\n    });\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"init\",\n    value: function init(config) {\n      this._config = config;\n      this._maxSubDomain = 20;\n      this._currentSubDomain = Math.floor(Math.random() * this._maxSubDomain);\n      this._providedFQDN = (this._config.secure ? 'https://' : 'http://') + this._config.origin;\n      this._coreParams = {};\n      this.shiftStandardOrigin();\n    }\n  }, {\n    key: \"nextOrigin\",\n    value: function nextOrigin() {\n      if (!this._providedFQDN.match(/ps\\.pndsn\\.com$/i)) {\n        return this._providedFQDN;\n      }\n\n      var newSubDomain;\n      this._currentSubDomain += 1;\n\n      if (this._currentSubDomain >= this._maxSubDomain) {\n        this._currentSubDomain = 1;\n      }\n\n      newSubDomain = this._currentSubDomain.toString();\n      return this._providedFQDN.replace('ps.pndsn.com', \"ps\".concat(newSubDomain, \".pndsn.com\"));\n    }\n  }, {\n    key: \"hasModule\",\n    value: function hasModule(name) {\n      return name in this._modules;\n    }\n  }, {\n    key: \"shiftStandardOrigin\",\n    value: function shiftStandardOrigin() {\n      this._standardOrigin = this.nextOrigin();\n      return this._standardOrigin;\n    }\n  }, {\n    key: \"getStandardOrigin\",\n    value: function getStandardOrigin() {\n      return this._standardOrigin;\n    }\n  }, {\n    key: \"POSTFILE\",\n    value: function POSTFILE(url, fields, file) {\n      return this._modules.postfile(url, fields, file);\n    }\n  }, {\n    key: \"GETFILE\",\n    value: function GETFILE(params, endpoint, callback) {\n      return this._modules.getfile(params, endpoint, callback);\n    }\n  }, {\n    key: \"POST\",\n    value: function POST(params, body, endpoint, callback) {\n      return this._modules.post(params, body, endpoint, callback);\n    }\n  }, {\n    key: \"PATCH\",\n    value: function PATCH(params, body, endpoint, callback) {\n      return this._modules.patch(params, body, endpoint, callback);\n    }\n  }, {\n    key: \"GET\",\n    value: function GET(params, endpoint, callback) {\n      return this._modules.get(params, endpoint, callback);\n    }\n  }, {\n    key: \"DELETE\",\n    value: function DELETE(params, endpoint, callback) {\n      return this._modules.del(params, endpoint, callback);\n    }\n  }, {\n    key: \"_detectErrorCategory\",\n    value: function _detectErrorCategory(err) {\n      if (err.code === 'ENOTFOUND') {\n        return _categories[\"default\"].PNNetworkIssuesCategory;\n      }\n\n      if (err.code === 'ECONNREFUSED') {\n        return _categories[\"default\"].PNNetworkIssuesCategory;\n      }\n\n      if (err.code === 'ECONNRESET') {\n        return _categories[\"default\"].PNNetworkIssuesCategory;\n      }\n\n      if (err.code === 'EAI_AGAIN') {\n        return _categories[\"default\"].PNNetworkIssuesCategory;\n      }\n\n      if (err.status === 0 || err.hasOwnProperty('status') && typeof err.status === 'undefined') {\n        return _categories[\"default\"].PNNetworkIssuesCategory;\n      }\n\n      if (err.timeout) return _categories[\"default\"].PNTimeoutCategory;\n\n      if (err.code === 'ETIMEDOUT') {\n        return _categories[\"default\"].PNNetworkIssuesCategory;\n      }\n\n      if (err.response) {\n        if (err.response.badRequest) {\n          return _categories[\"default\"].PNBadRequestCategory;\n        }\n\n        if (err.response.forbidden) {\n          return _categories[\"default\"].PNAccessDeniedCategory;\n        }\n      }\n\n      return _categories[\"default\"].PNUnknownCategory;\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":122,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/db/web.js","name":"./src/db/web.js","index":121,"index2":120,"size":454,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../db/web","loc":"28:34-54"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\nvar _default = {\n  get: function get(key) {\n    try {\n      return localStorage.getItem(key);\n    } catch (e) {\n      return null;\n    }\n  },\n  set: function set(key, data) {\n    try {\n      return localStorage.setItem(key, data);\n    } catch (e) {\n      return null;\n    }\n  }\n};\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":123,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/cbor/common.js","name":"./src/cbor/common.js","index":122,"index2":121,"size":1563,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../cbor/common","loc":"30:37-62"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime/helpers/typeof\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _default = function () {\n  function _default(decode, base64ToBinary) {\n    (0, _classCallCheck2[\"default\"])(this, _default);\n    (0, _defineProperty2[\"default\"])(this, \"_base64ToBinary\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"_cborReader\", void 0);\n    this._base64ToBinary = base64ToBinary;\n    this._decode = decode;\n  }\n\n  (0, _createClass2[\"default\"])(_default, [{\n    key: \"decodeToken\",\n    value: function decodeToken(tokenString) {\n      var padding = '';\n\n      if (tokenString.length % 4 === 3) {\n        padding = '=';\n      } else if (tokenString.length % 4 === 2) {\n        padding = '==';\n      }\n\n      var cleaned = tokenString.replace(/-/gi, '+').replace(/_/gi, '/') + padding;\n\n      var result = this._decode(this._base64ToBinary(cleaned));\n\n      if ((0, _typeof2[\"default\"])(result) === 'object') {\n        return result;\n      }\n\n      return undefined;\n    }\n  }]);\n  return _default;\n}();\n\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":124,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/networking/modules/web-node.js","name":"./src/networking/modules/web-node.js","index":123,"index2":129,"size":6060,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../networking/modules/web-node","loc":"32:15-56"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.postfile = postfile;\nexports.getfile = getfile;\nexports.get = get;\nexports.post = post;\nexports.patch = patch;\nexports.del = del;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime/helpers/asyncToGenerator\"));\n\nvar _superagent = _interopRequireDefault(require(\"superagent\"));\n\nvar _flow_interfaces = require(\"../../core/flow_interfaces\");\n\nfunction log(req) {\n  var _pickLogger = function _pickLogger() {\n    if (console && console.log) return console;\n    if (window && window.console && window.console.log) return window.console;\n    return console;\n  };\n\n  var start = new Date().getTime();\n  var timestamp = new Date().toISOString();\n\n  var logger = _pickLogger();\n\n  logger.log('<<<<<');\n  logger.log(\"[\".concat(timestamp, \"]\"), '\\n', req.url, '\\n', req.qs);\n  logger.log('-----');\n  req.on('response', function (res) {\n    var now = new Date().getTime();\n    var elapsed = now - start;\n    var timestampDone = new Date().toISOString();\n    logger.log('>>>>>>');\n    logger.log(\"[\".concat(timestampDone, \" / \").concat(elapsed, \"]\"), '\\n', req.url, '\\n', req.qs, '\\n', res.text);\n    logger.log('-----');\n  });\n}\n\nfunction xdr(superagentConstruct, endpoint, callback) {\n  var _this = this;\n\n  if (this._config.logVerbosity) {\n    superagentConstruct = superagentConstruct.use(log);\n  }\n\n  if (this._config.proxy && this._modules.proxy) {\n    superagentConstruct = this._modules.proxy.call(this, superagentConstruct);\n  }\n\n  if (this._config.keepAlive && this._modules.keepAlive) {\n    superagentConstruct = this._modules.keepAlive(superagentConstruct);\n  }\n\n  var sc = superagentConstruct;\n\n  if (endpoint.forceBuffered === true) {\n    if (typeof Blob === 'undefined') {\n      sc = sc.buffer().responseType('arraybuffer');\n    } else {\n      sc = sc.responseType('arraybuffer');\n    }\n  } else if (endpoint.forceBuffered === false) {\n    sc = sc.buffer(false);\n  }\n\n  return sc.timeout(endpoint.timeout).end(function (err, resp) {\n    var parsedResponse;\n    var status = {};\n    status.error = err !== null;\n    status.operation = endpoint.operation;\n\n    if (resp && resp.status) {\n      status.statusCode = resp.status;\n    }\n\n    if (err) {\n      if (err.response && err.response.text && !_this._config.logVerbosity) {\n        try {\n          status.errorData = JSON.parse(err.response.text);\n        } catch (e) {\n          status.errorData = err;\n        }\n      } else {\n        status.errorData = err;\n      }\n\n      status.category = _this._detectErrorCategory(err);\n      return callback(status, null);\n    }\n\n    if (endpoint.ignoreBody) {\n      parsedResponse = {\n        headers: resp.headers,\n        redirects: resp.redirects,\n        response: resp\n      };\n    } else {\n      try {\n        parsedResponse = JSON.parse(resp.text);\n      } catch (e) {\n        status.errorData = resp;\n        status.error = true;\n        return callback(status, null);\n      }\n    }\n\n    if (parsedResponse.error && parsedResponse.error === 1 && parsedResponse.status && parsedResponse.message && parsedResponse.service) {\n      status.errorData = parsedResponse;\n      status.statusCode = parsedResponse.status;\n      status.error = true;\n      status.category = _this._detectErrorCategory(status);\n      return callback(status, null);\n    } else if (parsedResponse.error && parsedResponse.error.message) {\n      status.errorData = parsedResponse.error;\n    }\n\n    return callback(status, parsedResponse);\n  });\n}\n\nfunction postfile(_x, _x2, _x3) {\n  return _postfile.apply(this, arguments);\n}\n\nfunction _postfile() {\n  _postfile = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee(url, fields, fileInput) {\n    var agent, result;\n    return _regenerator[\"default\"].wrap(function _callee$(_context) {\n      while (1) {\n        switch (_context.prev = _context.next) {\n          case 0:\n            agent = _superagent[\"default\"].post(url);\n            fields.forEach(function (_ref) {\n              var key = _ref.key,\n                  value = _ref.value;\n              agent = agent.field(key, value);\n            });\n            agent.attach('file', fileInput, {\n              contentType: 'application/octet-stream'\n            });\n            _context.next = 5;\n            return agent;\n\n          case 5:\n            result = _context.sent;\n            return _context.abrupt(\"return\", result);\n\n          case 7:\n          case \"end\":\n            return _context.stop();\n        }\n      }\n    }, _callee);\n  }));\n  return _postfile.apply(this, arguments);\n}\n\nfunction getfile(params, endpoint, callback) {\n  var superagentConstruct = _superagent[\"default\"].get(this.getStandardOrigin() + endpoint.url).set(endpoint.headers).query(params);\n\n  return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nfunction get(params, endpoint, callback) {\n  var superagentConstruct = _superagent[\"default\"].get(this.getStandardOrigin() + endpoint.url).set(endpoint.headers).query(params);\n\n  return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nfunction post(params, body, endpoint, callback) {\n  var superagentConstruct = _superagent[\"default\"].post(this.getStandardOrigin() + endpoint.url).query(params).set(endpoint.headers).send(body);\n\n  return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nfunction patch(params, body, endpoint, callback) {\n  var superagentConstruct = _superagent[\"default\"].patch(this.getStandardOrigin() + endpoint.url).query(params).set(endpoint.headers).send(body);\n\n  return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nfunction del(params, endpoint, callback) {\n  var superagentConstruct = _superagent[\"default\"][\"delete\"](this.getStandardOrigin() + endpoint.url).set(endpoint.headers).query(params);\n\n  return xdr.call(this, superagentConstruct, endpoint, callback);\n}"},{"id":131,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/crypto/modules/web.js","name":"./src/crypto/modules/web.js","index":131,"index2":132,"size":13041,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../crypto/modules/web","loc":"36:35-67"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime/helpers/asyncToGenerator\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _isomorphicWebcrypto = _interopRequireDefault(require(\"isomorphic-webcrypto\"));\n\nfunction concatArrayBuffer(ab1, ab2) {\n  var tmp = new Uint8Array(ab1.byteLength + ab2.byteLength);\n  tmp.set(new Uint8Array(ab1), 0);\n  tmp.set(new Uint8Array(ab2), ab1.byteLength);\n  return tmp.buffer;\n}\n\nvar WebCryptography = function () {\n  function WebCryptography() {\n    (0, _classCallCheck2[\"default\"])(this, WebCryptography);\n  }\n\n  (0, _createClass2[\"default\"])(WebCryptography, [{\n    key: \"encrypt\",\n    value: function () {\n      var _encrypt = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee(key, input) {\n        var cKey;\n        return _regenerator[\"default\"].wrap(function _callee$(_context) {\n          while (1) {\n            switch (_context.prev = _context.next) {\n              case 0:\n                _context.next = 2;\n                return this.getKey(key);\n\n              case 2:\n                cKey = _context.sent;\n\n                if (!(input instanceof ArrayBuffer)) {\n                  _context.next = 7;\n                  break;\n                }\n\n                return _context.abrupt(\"return\", this.encryptArrayBuffer(cKey, input));\n\n              case 7:\n                if (!(typeof input === 'string')) {\n                  _context.next = 11;\n                  break;\n                }\n\n                return _context.abrupt(\"return\", this.encryptString(cKey, input));\n\n              case 11:\n                throw new Error('Cannot encrypt this file. In browsers file encryption supports only string or ArrayBuffer');\n\n              case 12:\n              case \"end\":\n                return _context.stop();\n            }\n          }\n        }, _callee, this);\n      }));\n\n      function encrypt(_x, _x2) {\n        return _encrypt.apply(this, arguments);\n      }\n\n      return encrypt;\n    }()\n  }, {\n    key: \"decrypt\",\n    value: function () {\n      var _decrypt = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee2(key, input) {\n        var cKey;\n        return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n          while (1) {\n            switch (_context2.prev = _context2.next) {\n              case 0:\n                _context2.next = 2;\n                return this.getKey(key);\n\n              case 2:\n                cKey = _context2.sent;\n\n                if (!(input instanceof ArrayBuffer)) {\n                  _context2.next = 7;\n                  break;\n                }\n\n                return _context2.abrupt(\"return\", this.decryptArrayBuffer(cKey, input));\n\n              case 7:\n                if (!(typeof input === 'string')) {\n                  _context2.next = 11;\n                  break;\n                }\n\n                return _context2.abrupt(\"return\", this.decryptString(cKey, input));\n\n              case 11:\n                throw new Error('Cannot decrypt this file. In browsers file decryption supports only string or ArrayBuffer');\n\n              case 12:\n              case \"end\":\n                return _context2.stop();\n            }\n          }\n        }, _callee2, this);\n      }));\n\n      function decrypt(_x3, _x4) {\n        return _decrypt.apply(this, arguments);\n      }\n\n      return decrypt;\n    }()\n  }, {\n    key: \"encryptFile\",\n    value: function () {\n      var _encryptFile = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee3(key, file, File) {\n        var bKey, abPlaindata, abCipherdata;\n        return _regenerator[\"default\"].wrap(function _callee3$(_context3) {\n          while (1) {\n            switch (_context3.prev = _context3.next) {\n              case 0:\n                _context3.next = 2;\n                return this.getKey(key);\n\n              case 2:\n                bKey = _context3.sent;\n                _context3.next = 5;\n                return file.toArrayBuffer();\n\n              case 5:\n                abPlaindata = _context3.sent;\n                _context3.next = 8;\n                return this.encryptArrayBuffer(bKey, abPlaindata);\n\n              case 8:\n                abCipherdata = _context3.sent;\n                return _context3.abrupt(\"return\", File.create({\n                  name: file.name,\n                  mimeType: 'application/octet-stream',\n                  data: abCipherdata\n                }));\n\n              case 10:\n              case \"end\":\n                return _context3.stop();\n            }\n          }\n        }, _callee3, this);\n      }));\n\n      function encryptFile(_x5, _x6, _x7) {\n        return _encryptFile.apply(this, arguments);\n      }\n\n      return encryptFile;\n    }()\n  }, {\n    key: \"decryptFile\",\n    value: function () {\n      var _decryptFile = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee4(key, file, File) {\n        var bKey, abCipherdata, abPlaindata;\n        return _regenerator[\"default\"].wrap(function _callee4$(_context4) {\n          while (1) {\n            switch (_context4.prev = _context4.next) {\n              case 0:\n                _context4.next = 2;\n                return this.getKey(key);\n\n              case 2:\n                bKey = _context4.sent;\n                _context4.next = 5;\n                return file.toArrayBuffer();\n\n              case 5:\n                abCipherdata = _context4.sent;\n                _context4.next = 8;\n                return this.decryptArrayBuffer(bKey, abCipherdata);\n\n              case 8:\n                abPlaindata = _context4.sent;\n\n                if (!(file.data instanceof ArrayBuffer)) {\n                  _context4.next = 13;\n                  break;\n                }\n\n                return _context4.abrupt(\"return\", File.create({\n                  name: file.name,\n                  data: abPlaindata\n                }));\n\n              case 13:\n                throw new Error('Cannot decrypt this file. In browser environment file decryption supports only ArrayBuffer.');\n\n              case 14:\n              case \"end\":\n                return _context4.stop();\n            }\n          }\n        }, _callee4, this);\n      }));\n\n      function decryptFile(_x8, _x9, _x10) {\n        return _decryptFile.apply(this, arguments);\n      }\n\n      return decryptFile;\n    }()\n  }, {\n    key: \"getKey\",\n    value: function () {\n      var _getKey = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee5(key) {\n        var bKey, abHash, abKey;\n        return _regenerator[\"default\"].wrap(function _callee5$(_context5) {\n          while (1) {\n            switch (_context5.prev = _context5.next) {\n              case 0:\n                bKey = Buffer.from(key);\n                _context5.next = 3;\n                return _isomorphicWebcrypto[\"default\"].subtle.digest('SHA-256', bKey.buffer);\n\n              case 3:\n                abHash = _context5.sent;\n                abKey = Buffer.from(Buffer.from(abHash).toString('hex').slice(0, 32), 'utf8').buffer;\n                return _context5.abrupt(\"return\", _isomorphicWebcrypto[\"default\"].subtle.importKey('raw', abKey, 'AES-CBC', true, ['encrypt', 'decrypt']));\n\n              case 6:\n              case \"end\":\n                return _context5.stop();\n            }\n          }\n        }, _callee5);\n      }));\n\n      function getKey(_x11) {\n        return _getKey.apply(this, arguments);\n      }\n\n      return getKey;\n    }()\n  }, {\n    key: \"encryptArrayBuffer\",\n    value: function () {\n      var _encryptArrayBuffer = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee6(key, plaintext) {\n        var abIv;\n        return _regenerator[\"default\"].wrap(function _callee6$(_context6) {\n          while (1) {\n            switch (_context6.prev = _context6.next) {\n              case 0:\n                abIv = _isomorphicWebcrypto[\"default\"].getRandomValues(new Uint8Array(16));\n                _context6.t0 = concatArrayBuffer;\n                _context6.t1 = abIv.buffer;\n                _context6.next = 5;\n                return _isomorphicWebcrypto[\"default\"].subtle.encrypt({\n                  name: 'AES-CBC',\n                  iv: abIv\n                }, key, plaintext);\n\n              case 5:\n                _context6.t2 = _context6.sent;\n                return _context6.abrupt(\"return\", (0, _context6.t0)(_context6.t1, _context6.t2));\n\n              case 7:\n              case \"end\":\n                return _context6.stop();\n            }\n          }\n        }, _callee6);\n      }));\n\n      function encryptArrayBuffer(_x12, _x13) {\n        return _encryptArrayBuffer.apply(this, arguments);\n      }\n\n      return encryptArrayBuffer;\n    }()\n  }, {\n    key: \"decryptArrayBuffer\",\n    value: function () {\n      var _decryptArrayBuffer = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee7(key, ciphertext) {\n        var abIv;\n        return _regenerator[\"default\"].wrap(function _callee7$(_context7) {\n          while (1) {\n            switch (_context7.prev = _context7.next) {\n              case 0:\n                abIv = ciphertext.slice(0, 16);\n                return _context7.abrupt(\"return\", _isomorphicWebcrypto[\"default\"].subtle.decrypt({\n                  name: 'AES-CBC',\n                  iv: abIv\n                }, key, ciphertext.slice(16)));\n\n              case 2:\n              case \"end\":\n                return _context7.stop();\n            }\n          }\n        }, _callee7);\n      }));\n\n      function decryptArrayBuffer(_x14, _x15) {\n        return _decryptArrayBuffer.apply(this, arguments);\n      }\n\n      return decryptArrayBuffer;\n    }()\n  }, {\n    key: \"encryptString\",\n    value: function () {\n      var _encryptString = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee8(key, plaintext) {\n        var abIv, abPlaintext, abPayload, ciphertext;\n        return _regenerator[\"default\"].wrap(function _callee8$(_context8) {\n          while (1) {\n            switch (_context8.prev = _context8.next) {\n              case 0:\n                abIv = _isomorphicWebcrypto[\"default\"].getRandomValues(new Uint8Array(16));\n                abPlaintext = Buffer.from(plaintext).buffer;\n                _context8.next = 4;\n                return _isomorphicWebcrypto[\"default\"].subtle.encrypt({\n                  name: 'AES-CBC',\n                  iv: abIv\n                }, key, abPlaintext);\n\n              case 4:\n                abPayload = _context8.sent;\n                ciphertext = concatArrayBuffer(abIv.buffer, abPayload);\n                return _context8.abrupt(\"return\", Buffer.from(ciphertext).toString('utf8'));\n\n              case 7:\n              case \"end\":\n                return _context8.stop();\n            }\n          }\n        }, _callee8);\n      }));\n\n      function encryptString(_x16, _x17) {\n        return _encryptString.apply(this, arguments);\n      }\n\n      return encryptString;\n    }()\n  }, {\n    key: \"decryptString\",\n    value: function () {\n      var _decryptString = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee9(key, ciphertext) {\n        var abCiphertext, abIv, abPayload, abPlaintext;\n        return _regenerator[\"default\"].wrap(function _callee9$(_context9) {\n          while (1) {\n            switch (_context9.prev = _context9.next) {\n              case 0:\n                abCiphertext = Buffer.from(ciphertext);\n                abIv = abCiphertext.slice(0, 16);\n                abPayload = abCiphertext.slice(16);\n                _context9.next = 5;\n                return _isomorphicWebcrypto[\"default\"].subtle.decrypt({\n                  name: 'AES-CBC',\n                  iv: abIv\n                }, key, abPayload);\n\n              case 5:\n                abPlaintext = _context9.sent;\n                return _context9.abrupt(\"return\", Buffer.from(abPlaintext).toString('utf8'));\n\n              case 7:\n              case \"end\":\n                return _context9.stop();\n            }\n          }\n        }, _callee9);\n      }));\n\n      function decryptString(_x18, _x19) {\n        return _decryptString.apply(this, arguments);\n      }\n\n      return decryptString;\n    }()\n  }, {\n    key: \"algo\",\n    get: function get() {\n      return 'aes-256-cbc';\n    }\n  }]);\n  return WebCryptography;\n}();\n\nexports[\"default\"] = WebCryptography;\n(0, _defineProperty2[\"default\"])(WebCryptography, \"IV_LENGTH\", 16);\nmodule.exports = exports.default;"},{"id":132,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/file/modules/web.js","name":"./src/file/modules/web.js","index":134,"index2":133,"size":8476,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","issuerId":27,"issuerName":"./src/web/index.js","issuerPath":[{"id":27,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","name":"./src/web/index.js","profile":{"factory":20,"building":129}}],"profile":{"factory":905,"building":85,"dependencies":2695},"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":27,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/web/index.js","module":"./src/web/index.js","moduleName":"./src/web/index.js","type":"cjs require","userRequest":"../file/modules/web","loc":"38:35-65"}],"usedExports":true,"providedExports":null,"optimizationBailout":["ModuleConcatenation bailout: Module is not an ECMAScript module"],"depth":1,"source":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports[\"default\"] = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime/helpers/asyncToGenerator\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _ = require(\"../\");\n\nvar _class, _temp;\n\nvar PubNubFile = (_temp = _class = function () {\n  (0, _createClass2[\"default\"])(PubNubFile, null, [{\n    key: \"create\",\n    value: function create(config) {\n      return new this(config);\n    }\n  }]);\n\n  function PubNubFile(config) {\n    (0, _classCallCheck2[\"default\"])(this, PubNubFile);\n    (0, _defineProperty2[\"default\"])(this, \"data\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"name\", void 0);\n    (0, _defineProperty2[\"default\"])(this, \"mimeType\", void 0);\n\n    if (config instanceof File) {\n      this.data = config;\n      this.name = this.data.name;\n      this.mimeType = this.data.type;\n    } else if (config.data) {\n      var contents = config.data;\n      this.data = new File([contents], config.name, {\n        type: config.mimeType\n      });\n      this.name = config.name;\n\n      if (config.mimeType) {\n        this.mimeType = config.mimeType;\n      }\n    }\n\n    if (this.data === undefined) {\n      throw new Error(\"Couldn't construct a file out of supplied options.\");\n    }\n\n    if (this.name === undefined) {\n      throw new Error(\"Couldn't guess filename out of the options. Please provide one.\");\n    }\n  }\n\n  (0, _createClass2[\"default\"])(PubNubFile, [{\n    key: \"toBuffer\",\n    value: function () {\n      var _toBuffer = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee() {\n        return _regenerator[\"default\"].wrap(function _callee$(_context) {\n          while (1) {\n            switch (_context.prev = _context.next) {\n              case 0:\n                throw new Error('This feature is only supported in Node.js environments.');\n\n              case 1:\n              case \"end\":\n                return _context.stop();\n            }\n          }\n        }, _callee);\n      }));\n\n      function toBuffer() {\n        return _toBuffer.apply(this, arguments);\n      }\n\n      return toBuffer;\n    }()\n  }, {\n    key: \"toStream\",\n    value: function () {\n      var _toStream = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee2() {\n        return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n          while (1) {\n            switch (_context2.prev = _context2.next) {\n              case 0:\n                throw new Error('This feature is only supported in Node.js environments.');\n\n              case 1:\n              case \"end\":\n                return _context2.stop();\n            }\n          }\n        }, _callee2);\n      }));\n\n      function toStream() {\n        return _toStream.apply(this, arguments);\n      }\n\n      return toStream;\n    }()\n  }, {\n    key: \"toFileUri\",\n    value: function () {\n      var _toFileUri = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee3() {\n        return _regenerator[\"default\"].wrap(function _callee3$(_context3) {\n          while (1) {\n            switch (_context3.prev = _context3.next) {\n              case 0:\n                throw new Error('This feature is only supported in react native environments.');\n\n              case 1:\n              case \"end\":\n                return _context3.stop();\n            }\n          }\n        }, _callee3);\n      }));\n\n      function toFileUri() {\n        return _toFileUri.apply(this, arguments);\n      }\n\n      return toFileUri;\n    }()\n  }, {\n    key: \"toBlob\",\n    value: function () {\n      var _toBlob = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee4() {\n        return _regenerator[\"default\"].wrap(function _callee4$(_context4) {\n          while (1) {\n            switch (_context4.prev = _context4.next) {\n              case 0:\n                return _context4.abrupt(\"return\", this.data);\n\n              case 1:\n              case \"end\":\n                return _context4.stop();\n            }\n          }\n        }, _callee4, this);\n      }));\n\n      function toBlob() {\n        return _toBlob.apply(this, arguments);\n      }\n\n      return toBlob;\n    }()\n  }, {\n    key: \"toArrayBuffer\",\n    value: function () {\n      var _toArrayBuffer = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee5() {\n        var _this = this;\n\n        return _regenerator[\"default\"].wrap(function _callee5$(_context5) {\n          while (1) {\n            switch (_context5.prev = _context5.next) {\n              case 0:\n                return _context5.abrupt(\"return\", new Promise(function (resolve, reject) {\n                  var reader = new FileReader();\n                  reader.addEventListener('load', function () {\n                    if (reader.result instanceof ArrayBuffer) {\n                      return resolve(reader.result);\n                    }\n                  });\n                  reader.addEventListener('error', function () {\n                    reject(reader.error);\n                  });\n                  reader.readAsArrayBuffer(_this.data);\n                }));\n\n              case 1:\n              case \"end\":\n                return _context5.stop();\n            }\n          }\n        }, _callee5);\n      }));\n\n      function toArrayBuffer() {\n        return _toArrayBuffer.apply(this, arguments);\n      }\n\n      return toArrayBuffer;\n    }()\n  }, {\n    key: \"toString\",\n    value: function () {\n      var _toString = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee6() {\n        var _this2 = this;\n\n        return _regenerator[\"default\"].wrap(function _callee6$(_context6) {\n          while (1) {\n            switch (_context6.prev = _context6.next) {\n              case 0:\n                return _context6.abrupt(\"return\", new Promise(function (resolve, reject) {\n                  var reader = new FileReader();\n                  reader.addEventListener('load', function () {\n                    if (typeof reader.result === 'string') {\n                      return resolve(reader.result);\n                    }\n                  });\n                  reader.addEventListener('error', function () {\n                    reject(reader.error);\n                  });\n                  reader.readAsBinaryString(_this2.data);\n                }));\n\n              case 1:\n              case \"end\":\n                return _context6.stop();\n            }\n          }\n        }, _callee6);\n      }));\n\n      function toString() {\n        return _toString.apply(this, arguments);\n      }\n\n      return toString;\n    }()\n  }, {\n    key: \"toFile\",\n    value: function () {\n      var _toFile = (0, _asyncToGenerator2[\"default\"])(_regenerator[\"default\"].mark(function _callee7() {\n        return _regenerator[\"default\"].wrap(function _callee7$(_context7) {\n          while (1) {\n            switch (_context7.prev = _context7.next) {\n              case 0:\n                return _context7.abrupt(\"return\", this.data);\n\n              case 1:\n              case \"end\":\n                return _context7.stop();\n            }\n          }\n        }, _callee7, this);\n      }));\n\n      function toFile() {\n        return _toFile.apply(this, arguments);\n      }\n\n      return toFile;\n    }()\n  }]);\n  return PubNubFile;\n}(), (0, _defineProperty2[\"default\"])(_class, \"supportsFile\", typeof File !== 'undefined'), (0, _defineProperty2[\"default\"])(_class, \"supportsBlob\", typeof Blob !== 'undefined'), (0, _defineProperty2[\"default\"])(_class, \"supportsArrayBuffer\", typeof ArrayBuffer !== 'undefined'), (0, _defineProperty2[\"default\"])(_class, \"supportsBuffer\", false), (0, _defineProperty2[\"default\"])(_class, \"supportsStream\", false), (0, _defineProperty2[\"default\"])(_class, \"supportsString\", true), (0, _defineProperty2[\"default\"])(_class, \"supportsEncryptFile\", true), (0, _defineProperty2[\"default\"])(_class, \"supportsFileUri\", false), _temp);\nvar _default = PubNubFile;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;"},{"id":133,"identifier":"/home/travis/build/pubnub/target-repository/node_modules/isomorphic-webcrypto/src/browser.mjs e9ef07f88f941362430dae814d88de4d","name":"./node_modules/isomorphic-webcrypto/src/browser.mjs + 1 modules","index":132,"index2":131,"size":23428,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"issuer":null,"issuerId":null,"issuerName":null,"issuerPath":null,"failed":false,"errors":0,"warnings":0,"assets":[],"reasons":[{"moduleId":131,"moduleIdentifier":"/home/travis/build/pubnub/target-repository/node_modules/babel-loader/lib/index.js??ref--4!/home/travis/build/pubnub/target-repository/src/crypto/modules/web.js","module":"./src/crypto/modules/web.js","moduleName":"./src/crypto/modules/web.js","type":"cjs require","userRequest":"isomorphic-webcrypto","loc":"20:50-81"}],"usedExports":true,"providedExports":["default"],"optimizationBailout":[],"depth":2,"modules":[],"filteredModules":2}],"filteredModules":40,"logging":{"webpack.buildChunkGraph.visitModules":{"entries":[],"filteredEntries":2,"debug":false}},"children":[]}