@100mslive/roomkit-react 0.3.39 → 0.3.40-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs.js CHANGED
@@ -35,8 +35,8 @@ var __objRest = (source, exclude) => {
35
35
  }
36
36
  return target;
37
37
  };
38
- var __esm = (fn, res) => function __init() {
39
- return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
38
+ var __esm = (fn2, res) => function __init() {
39
+ return fn2 && (res = (0, fn2[__getOwnPropNames(fn2)[0]])(fn2 = 0)), res;
40
40
  };
41
41
  var __commonJS = (cb, mod) => function __require() {
42
42
  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
@@ -100,7 +100,7 @@ var __async = (__this, __arguments, generator) => {
100
100
  reject(e);
101
101
  }
102
102
  };
103
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
103
+ var step = (x2) => x2.done ? resolve(x2.value) : Promise.resolve(x2.value).then(fulfilled, rejected);
104
104
  step((generator = generator.apply(__this, __arguments)).next());
105
105
  });
106
106
  };
@@ -109,7 +109,7 @@ var __async = (__this, __arguments, generator) => {
109
109
  var define_process_env_default;
110
110
  var init_define_process_env = __esm({
111
111
  "<define:process.env>"() {
112
- define_process_env_default = { GITHUB_STATE: "/home/runner/work/_temp/_runner_file_commands/save_state_d1b8aae5-fafa-4266-96da-0e43c423c6ab", npm_package_devDependencies_ts_node: "^10.4.0", npm_package_devDependencies__types_node: "^16.11.17", npm_package_exports___index_css: "./dist/index.css", npm_package_exports___require: "./dist/index.cjs.js", DOTNET_NOLOGO: "1", npm_package_dependencies_screenfull: "^5.1.0", npm_package_dependencies_react_draggable: "^4.4.5", npm_package_dependencies__radix_ui_react_switch: "1.0.0", npm_package_dependencies__100mslive_hms_whiteboard: "0.0.29", USER: "runner", npm_package_devDependencies_jest: "^29.7.0", npm_config_version_commit_hooks: "true", npm_config_user_agent: "yarn/1.22.22 npm/? node/v18.20.8 linux x64", npm_config_always_auth: "", NX_WORKSPACE_ROOT: "/home/runner/work/web-sdks/web-sdks", npm_package_scripts_babel: "npx storybook@latest babelrc", CI: "true", npm_package_devDependencies__size_limit_file: "^5.0.3", npm_config_bin_links: "true", npm_config_wrap_output: "", npm_package_dependencies__radix_ui_react_tabs: "1.0.0", npm_package_dependencies__100mslive_react_sdk: "0.10.39", RUNNER_ENVIRONMENT: "github-hosted", GITHUB_ENV: "/home/runner/work/_temp/_runner_file_commands/set_env_d1b8aae5-fafa-4266-96da-0e43c423c6ab", PIPX_HOME: "/opt/pipx", npm_node_execpath: "/opt/hostedtoolcache/node/18.20.8/x64/bin/node", npm_config_init_version: "1.0.0", npm_package_dependencies__emoji_mart_react: "^1.0.1", npm_package_dependencies__emoji_mart_data: "^1.0.6", npm_package_dependencies__100mslive_hms_virtual_background: "1.13.39", JAVA_HOME_8_X64: "/usr/lib/jvm/temurin-8-jdk-amd64", NODE_AUTH_TOKEN: "XXXXX-XXXXX-XXXXX-XXXXX", SHLVL: "1", npm_package_dependencies__radix_ui_react_tooltip: "1.0.6", npm_package_dependencies__radix_ui_react_popover: "1.0.6", npm_package_dependencies__100mslive_types_prebuilt: "0.12.12", npm_package_peerDependencies_react: ">=17.0.2 <19.0.0", npm_package_devDependencies__storybook_addon_links: "^7.0.27", npm_package_files_0: "dist", HOME: "/home/runner", npm_package_devDependencies__typescript_eslint_parser: "^5.4.0", npm_package_dependencies__radix_ui_react_dialog: "1.0.4", npm_package_devDependencies__types_react_window: "^1.8.5", npm_package_files_1: "src", npm_package_repository_directory: "packages/roomkit-react", RUNNER_TEMP: "/home/runner/work/_temp", GITHUB_EVENT_PATH: "/home/runner/work/_temp/_github_workflow/event.json", npm_package_scripts_controller: "cd packages/hls-controller && yarn start", npm_package_dependencies__stitches_react: "1.3.1-1", JAVA_HOME_11_X64: "/usr/lib/jvm/temurin-11-jdk-amd64", PIPX_BIN_DIR: "/opt/pipx_bin", GITHUB_REPOSITORY_OWNER: "100mslive", npm_package_engines_node: ">=16", npm_package_devDependencies_typedoc_plugin_markdown: "^3.14.0", npm_config_init_license: "MIT", GRADLE_HOME: "/usr/share/gradle-9.0.0", ANDROID_NDK_LATEST_HOME: "/usr/local/lib/android/sdk/ndk/28.2.13676358", JAVA_HOME_21_X64: "/usr/lib/jvm/temurin-21-jdk-amd64", GITHUB_RETENTION_DAYS: "90", YARN_WRAP_OUTPUT: "false", npm_config_version_tag_prefix: "v", GITHUB_REPOSITORY_OWNER_ID: "73883131", POWERSHELL_DISTRIBUTION_CHANNEL: "GitHub-Actions-ubuntu24", AZURE_EXTENSION_DIR: "/opt/az/azcliextensions", GITHUB_HEAD_REF: "", npm_package_scripts_lint_fix: "yarn lint --fix", npm_config_userconfig: "/home/runner/work/_temp/.npmrc", npm_package_devDependencies__storybook_addon_a11y: "^7.0.27", SYSTEMD_EXEC_PID: "1875", npm_package_scripts_postinstall: "husky install", npm_package_devDependencies_husky: "^6.0.0", npm_package_dependencies_recordrtc: "^5.6.2", npm_package_dependencies_eventemitter2: "^6.4.9", npm_package_dependencies__radix_ui_react_label: "1.0.0", npm_package_dependencies__radix_ui_react_dropdown_menu: "2.0.5", npm_package_keywords_0: "100mslive", GITHUB_GRAPHQL_URL: "https://api.github.com/graphql", npm_package_description: "100ms Room Kit provides simple & easy to use UI components to build Live Streaming & Video Conferencing experiences in your apps.", npm_package_devDependencies_typescript: "~4.7.4", npm_package_devDependencies_typedoc: "^0.24.8", npm_package_devDependencies_babel_loader: "^8.2.5", npm_package_keywords_1: "react", NVM_DIR: "/home/runner/.nvm", npm_package_readmeFilename: "README.md", npm_package_devDependencies_react: "^18.1.0", npm_package_devDependencies__babel_preset_env: "^7.22.5", npm_package_keywords_2: "prebuilt", DOTNET_SKIP_FIRST_TIME_EXPERIENCE: "1", JAVA_HOME_17_X64: "/usr/lib/jvm/temurin-17-jdk-amd64", ImageVersion: "20250915.37.1", npm_package_devDependencies_prettier: "^2.4.1", npm_package_devDependencies_babel_jest: "^29.7.0", npm_package_scripts_dev: "node ../../scripts/dev", npm_package_keywords_3: "roomkit", LOGNAME: "runner", RUNNER_OS: "Linux", GITHUB_API_URL: "https://api.github.com", GOROOT_1_22_X64: "/opt/hostedtoolcache/go/1.22.12/x64", SWIFT_PATH: "/usr/share/swift/usr/bin", FORCE_COLOR: "true", npm_package_dependencies__radix_ui_react_toast: "1.0.0", npm_package_dependencies__radix_ui_react_radio_group: "1.0.0", npm_package_dependencies__100mslive_hms_noise_cancellation: "0.0.1", npm_package_devDependencies__babel_preset_typescript: "^7.22.5", npm_package_exports___default: "./dist/index.js", CHROMEWEBDRIVER: "/usr/local/share/chromedriver-linux64", GOROOT_1_23_X64: "/opt/hostedtoolcache/go/1.23.12/x64", JOURNAL_STREAM: "9:11660", GITHUB_WORKFLOW: "Publish Packages", _: "/usr/local/bin/yarn", npm_package_devDependencies_ts_jest: "^29.1.1", npm_package_devDependencies_lerna: "^5.6.2", npm_package_devDependencies__types_jest: "^27.0.3", npm_package_devDependencies__commitlint_config_conventional: "^19.6.0", npm_package_private: "true", npm_package_dependencies__radix_ui_react_accordion: "1.0.0", npm_package_devDependencies__babel_preset_react: "^7.22.5", npm_package_module: "dist/index.js", MEMORY_PRESSURE_WATCH: "/sys/fs/cgroup/system.slice/hosted-compute-agent.service/memory.pressure", GOROOT_1_24_X64: "/opt/hostedtoolcache/go/1.24.7/x64", npm_package_scripts_lint: "eslint -c .eslintrc --no-error-on-unmatched-pattern src --ext .js --ext .jsx --ext .ts --ext .tsx", npm_package_devDependencies__typescript_eslint_eslint_plugin: "^5.4.0", npm_config_registry: "https://registry.yarnpkg.com", npm_package_dependencies_react_window: "^1.8.7", npm_package_dependencies__100mslive_hls_player: "0.3.39", npm_package_devDependencies__types_lodash_merge: "^4.6.6", npm_package_devDependencies__storybook_cli: "^7.0.27", ACTIONS_RUNNER_ACTION_ARCHIVE_CACHE: "/opt/actionarchivecache", GITHUB_RUN_ID: "17789362075", npm_package_workspaces_0: "packages/*", npm_package_scripts_store: "cd packages/hms-video-store && yarn start", npm_package_devDependencies__babel_core: "^7.18.2", npm_package_dependencies_ts_pattern: "4.3.0", npm_package_devDependencies__storybook_addon_interactions: "^7.0.27", npm_package_devDependencies__storybook_addon_actions: "^7.0.27", GITHUB_REF_TYPE: "branch", BOOTSTRAP_HASKELL_NONINTERACTIVE: "1", GITHUB_WORKFLOW_SHA: "42f8cd96ebaaca99872c8dae510b747e6ccd02fb", GITHUB_BASE_REF: "", ImageOS: "ubuntu24", npm_package_workspaces_1: "examples/*", npm_package_scripts_start: 'concurrently "yarn dev" "yarn types"', npm_config_ignore_scripts: "", NX_TASK_HASH: "bdb33d54fdac620981f021cb63bb43b5371b9101b281f828c42dc7f45b7a6a01", npm_package_exports___import: "./dist/index.js", GITHUB_WORKFLOW_REF: "100mslive/web-sdks/.github/workflows/publish.yml@refs/heads/main", GITHUB_ACTION_REPOSITORY: "", ENABLE_RUNNER_TRACING: "true", npm_package_scripts_prebuilt: "cd packages/roomkit-react && yarn start", npm_package_devDependencies_postcss_loader: "^6.2.1", npm_package_devDependencies_esbuild_loader: "^4.0.2", PATH: "/tmp/yarn--1758092231516-0.5535623433330032:/home/runner/work/web-sdks/web-sdks/packages/roomkit-react/node_modules/.bin:/home/runner/.config/yarn/link/node_modules/.bin:/home/runner/work/web-sdks/web-sdks/node_modules/.bin:/opt/hostedtoolcache/node/18.20.8/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.8/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.8/x64/bin/node_modules/npm/bin/node-gyp-bin:/tmp/yarn--1758092231323-0.14164655836774864:/home/runner/work/web-sdks/web-sdks/packages/roomkit-react/node_modules/.bin:/home/runner/.config/yarn/link/node_modules/.bin:/home/runner/work/web-sdks/web-sdks/node_modules/.bin:/opt/hostedtoolcache/node/18.20.8/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.8/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.8/x64/bin/node_modules/npm/bin/node-gyp-bin:/tmp/yarn--1758092205292-0.31607679605871053:/home/runner/work/web-sdks/web-sdks/node_modules/.bin:/home/runner/.config/yarn/link/node_modules/.bin:/home/runner/work/web-sdks/web-sdks/node_modules/.bin:/opt/hostedtoolcache/node/18.20.8/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.8/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.8/x64/bin/node_modules/npm/bin/node-gyp-bin:/tmp/yarn--1758092205120-0.24175984671023176:/home/runner/work/web-sdks/web-sdks/node_modules/.bin:/home/runner/.config/yarn/link/node_modules/.bin:/home/runner/work/web-sdks/web-sdks/node_modules/.bin:/opt/hostedtoolcache/node/18.20.8/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.8/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.8/x64/bin/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.8/x64/bin:/snap/bin:/home/runner/.local/bin:/opt/pipx_bin:/home/runner/.cargo/bin:/home/runner/.config/composer/vendor/bin:/usr/local/.ghcup/bin:/home/runner/.dotnet/tools:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin", NODE: "/opt/hostedtoolcache/node/18.20.8/x64/bin/node", ANT_HOME: "/usr/share/ant", DOTNET_MULTILEVEL_LOOKUP: "0", RUNNER_TRACKING_ID: "github_ee799690-24c7-4e9a-9ded-2277c3280fde", INVOCATION_ID: "ebf4189ba53f4bdaa4eacbe918fac09d", NPM_CONFIG_USERCONFIG: "/home/runner/work/_temp/.npmrc", RUNNER_TOOL_CACHE: "/opt/hostedtoolcache", npm_package_scripts_size: "size-limit", npm_package_devDependencies_size_limit: "^5.0.3", npm_package_name: "@100mslive/roomkit-react", npm_package_devDependencies__storybook_react_webpack5: "^7.0.27", npm_package_repository_type: "git", GITHUB_ACTION: "__run_3", GITHUB_RUN_NUMBER: "764", GITHUB_TRIGGERING_ACTOR: "raviteja83", RUNNER_ARCH: "X64", XDG_RUNTIME_DIR: "/run/user/1001", AGENT_TOOLSDIRECTORY: "/opt/hostedtoolcache", npm_package_lint_staged____js_ts_jsx_tsx_: "eslint", npm_package_devDependencies_babel_plugin_istanbul: "^6.1.1", LERNA_PACKAGE_NAME: "@100mslive/roomkit-react", npm_package_dependencies__radix_ui_react_select: "1.0.0", npm_package_size_limit_0_limit: "20 KB", npm_package_devDependencies__commitlint_cli: "^19.6.0", LANG: "C.UTF-8", VCPKG_INSTALLATION_ROOT: "/usr/local/share/vcpkg", npm_package_size_limit_1_limit: "20 KB", npm_package_devDependencies_eslint_plugin_simple_import_sort: "^8.0.0", npm_package_devDependencies_eslint: "^8.9.0", npm_package_dependencies_react_intersection_observer: "^9.4.3", npm_package_dependencies_react_dom: "^18.2.0", npm_package_devDependencies__types_mdx: "2.0.2", CONDA: "/usr/share/miniconda", RUNNER_NAME: "GitHub Actions 1000045595", XDG_CONFIG_HOME: "/home/runner/.config", GITHUB_REF_NAME: "main", GITHUB_REPOSITORY: "100mslive/web-sdks", npm_lifecycle_script: "rm -rf dist && node ../../scripts/build-webapp", npm_package_size_limit_2_limit: "400 KB", npm_package_resolutions_loader_utils: "^2.0.4", npm_package_devDependencies_dotenv: "^14.2.0", npm_package_dependencies__radix_ui_react_slider: "1.0.0", npm_package_scripts_types_build: "tsc -p tsconfig.json", npm_package_main: "dist/index.cjs.js", ANDROID_NDK_ROOT: "/usr/local/lib/android/sdk/ndk/27.3.13750724", GITHUB_ACTION_REF: "", DEBIAN_FRONTEND: "noninteractive", npm_package_size_limit_3_limit: "20 KB", npm_package_size_limit_0_path: "packages/hms-video-store/dist/index.cjs.js", npm_package_scripts_lerna_publish: "lerna publish from-package --dist-tag $PUBLISH_FLAG --yes --no-verify-access", npm_package_scripts_test: "yarn build --no-private && lerna run test", npm_package_devDependencies_concurrently: "^6.4.0", npm_config_version_git_message: "v%s", npm_package_dependencies__radix_ui_react_checkbox: "1.0.0", npm_package_dependencies__100mslive_react_icons: "0.10.39", npm_package_scripts_types: "tsc -w", SHELL: "/bin/bash", GITHUB_REPOSITORY_ID: "429826515", GITHUB_ACTIONS: "true", npm_lifecycle_event: "build:only", npm_package_version: "0.3.39", npm_package_size_limit_4_limit: "20 KB", npm_package_size_limit_1_path: "packages/hms-video-store/dist/index.js", npm_package_resolutions_axios: "^1.7.4", npm_package_scripts_build_only: "rm -rf dist && node ../../scripts/build-webapp", npm_package_devDependencies_jest_environment_jsdom: "^29.7.0", npm_package_devDependencies__types_react: "^18.1.0", npm_package_sideEffects: "false", npm_package_repository_url: "https://github.com/100mslive/web-sdks.git", npm_package_source: "src/index.ts", GITHUB_REF_PROTECTED: "true", npm_config_argv: '{"remain":[],"cooked":["run","test"],"original":["test"]}', npm_package_size_limit_5_limit: "20 KB", npm_package_size_limit_2_path: "packages/roomkit-react/dist/index.cjs.js", npm_package_scripts_build: "yarn build:only && yarn types:build", npm_package_devDependencies_tslib: "^2.2.0", npm_package_devDependencies_nx: "^14.5.1", npm_package_devDependencies_lint_staged: "^12.0.3", NX_CLI_SET: "true", npm_package_dependencies_uuid: "^8.3.2", npm_package_dependencies_react_virtualized_auto_sizer: "^1.0.7", npm_package_dependencies_lodash_merge: "^4.6.2", npm_package_dependencies_emoji_mart: "^5.2.2", GITHUB_WORKSPACE: "/home/runner/work/web-sdks/web-sdks", ACCEPT_EULA: "Y", GITHUB_JOB: "publish_packages", npm_package_size_limit_6_limit: "150 KB", npm_package_size_limit_3_path: "packages/roomkit-react/dist/index.js", GITHUB_SHA: "42f8cd96ebaaca99872c8dae510b747e6ccd02fb", GITHUB_RUN_ATTEMPT: "1", npm_package_size_limit_7_limit: "100 KB", npm_package_size_limit_4_path: "packages/hms-virtual-background/dist/index.cjs.js", npm_package_resolutions_form_data: "^4.0.4", npm_config_version_git_tag: "true", npm_config_version_git_sign: "", npm_package_dependencies_qrcode_react: "^3.1.0", GITHUB_REF: "refs/heads/main", GITHUB_ACTOR: "raviteja83", ANDROID_SDK_ROOT: "/usr/local/lib/android/sdk", npm_package_license: "MIT", npm_package_size_limit_5_path: "packages/hms-virtual-background/dist/index.js", npm_config_strict_ssl: "true", npm_package_size_limit_6_path: "packages/react-icons/dist/index.cjs.js", npm_package_scripts_format: "prettier -w src/**", npm_package_devDependencies_eslint_plugin_prettier: "^4.0.0", npm_package_devDependencies_eslint_config_react_app: "^7.0.0", NX_TASK_TARGET_PROJECT: "@100mslive/roomkit-react", GITHUB_PATH: "/home/runner/work/_temp/_runner_file_commands/add_path_d1b8aae5-fafa-4266-96da-0e43c423c6ab", JAVA_HOME: "/usr/lib/jvm/temurin-17-jdk-amd64", PWD: "/home/runner/work/web-sdks/web-sdks/packages/roomkit-react", GITHUB_ACTOR_ID: "6763261", RUNNER_WORKSPACE: "/home/runner/work/web-sdks", npm_execpath: "/usr/local/lib/node_modules/yarn/bin/yarn.js", npm_package_size_limit_7_path: "packages/react-icons/dist/index.js", npm_package_scripts_ybys: "yarn && yarn build --no-private && yarn storybook", npm_package_dependencies__radix_ui_react_progress: "1.0.0", HOMEBREW_CLEANUP_PERIODIC_FULL_DAYS: "3650", GITHUB_EVENT_NAME: "workflow_dispatch", HOMEBREW_NO_AUTO_UPDATE: "1", ANDROID_HOME: "/usr/local/lib/android/sdk", GITHUB_SERVER_URL: "https://github.com", GECKOWEBDRIVER: "/usr/local/share/gecko_driver", GHCUP_INSTALL_BASE_PREFIX: "/usr/local", GITHUB_OUTPUT: "/home/runner/work/_temp/_runner_file_commands/set_output_d1b8aae5-fafa-4266-96da-0e43c423c6ab", npm_package_scripts_prestart: "rm -rf dist && yarn types:build", npm_package_author_name: "100ms", EDGEWEBDRIVER: "/usr/local/share/edge_driver", npm_package_scripts_build_storybook: "sb build", npm_package_devDependencies_postcss: "^8.4.5", npm_package_devDependencies_esbuild: "^0.18.13", npm_config_save_prefix: "^", npm_config_ignore_optional: "", npm_package_dependencies_worker_timers: "^7.0.40", npm_package_typings: "dist/index.d.ts", ANDROID_NDK: "/usr/local/lib/android/sdk/ndk/27.3.13750724", SGX_AESM_ADDR: "1", CHROME_BIN: "/usr/bin/google-chrome", npm_package_scripts_storybook: "sb dev -p 6006", npm_package_devDependencies_esbuild_plugin_postcss2: "0.1.1", npm_package_dependencies_react_swipeable: "^7.0.1", npm_package_devDependencies_babel_plugin_react_require: "3.1.3", npm_package_devDependencies__storybook_testing_library: "^0.2.0", npm_package_devDependencies__storybook_addon_essentials: "^7.0.27", SELENIUM_JAR_PATH: "/usr/share/java/selenium-server.jar", MEMORY_PRESSURE_WRITE: "c29tZSAyMDAwMDAgMjAwMDAwMAA=", npm_package_scripts_reactsdk: "cd packages/react-sdk && yarn start", npm_package_dependencies_react_use: "^17.4.0", npm_package_dependencies__radix_ui_react_collapsible: "1.0.0", npm_package_devDependencies_storybook_dark_mode: "^3.0.0", npm_package_devDependencies_knip: "^5.11.0", npm_package_devDependencies__storybook_react: "^7.0.27", INIT_CWD: "/home/runner/work/web-sdks/web-sdks", ANDROID_NDK_HOME: "/usr/local/lib/android/sdk/ndk/27.3.13750724", GITHUB_STEP_SUMMARY: "/home/runner/work/_temp/_runner_file_commands/step_summary_d1b8aae5-fafa-4266-96da-0e43c423c6ab" };
112
+ define_process_env_default = { GITHUB_STATE: "/home/runner/work/_temp/_runner_file_commands/save_state_db56eb4b-af73-4c2c-a8a5-5f693071c2af", npm_package_devDependencies_ts_node: "^10.4.0", npm_package_devDependencies__types_node: "^16.11.17", npm_package_exports___index_css: "./dist/index.css", npm_package_exports___require: "./dist/index.cjs.js", DOTNET_NOLOGO: "1", npm_package_dependencies_screenfull: "^5.1.0", npm_package_dependencies_react_draggable: "^4.4.5", npm_package_dependencies__radix_ui_react_switch: "1.0.0", npm_package_dependencies__100mslive_hms_whiteboard: "0.0.30-alpha.0", USER: "runner", npm_package_resolutions__octokit_request: "^8.4.1", npm_package_devDependencies_jest: "^29.7.0", npm_config_version_commit_hooks: "true", npm_config_user_agent: "yarn/1.22.22 npm/? node/v20.19.5 linux x64", npm_config_always_auth: "", NX_WORKSPACE_ROOT: "/home/runner/work/web-sdks/web-sdks", npm_package_scripts_babel: "npx storybook@latest babelrc", CI: "true", npm_package_devDependencies__size_limit_file: "^5.0.3", npm_config_bin_links: "true", npm_config_wrap_output: "", npm_package_dependencies__radix_ui_react_tabs: "1.0.0", npm_package_dependencies__100mslive_react_sdk: "0.10.40-alpha.0", RUNNER_ENVIRONMENT: "github-hosted", GITHUB_ENV: "/home/runner/work/_temp/_runner_file_commands/set_env_db56eb4b-af73-4c2c-a8a5-5f693071c2af", PIPX_HOME: "/opt/pipx", npm_node_execpath: "/opt/hostedtoolcache/node/20.19.5/x64/bin/node", npm_config_init_version: "1.0.0", npm_package_dependencies__emoji_mart_react: "^1.0.1", npm_package_dependencies__emoji_mart_data: "^1.0.6", npm_package_dependencies__100mslive_hms_virtual_background: "1.13.40-alpha.0", JAVA_HOME_8_X64: "/usr/lib/jvm/temurin-8-jdk-amd64", NODE_AUTH_TOKEN: "XXXXX-XXXXX-XXXXX-XXXXX", SHLVL: "1", npm_package_dependencies__radix_ui_react_tooltip: "1.0.6", npm_package_dependencies__radix_ui_react_popover: "1.0.6", npm_package_dependencies__100mslive_types_prebuilt: "0.12.12", npm_package_peerDependencies_react: ">=17.0.2 <19.0.0", npm_package_devDependencies__storybook_addon_links: "^7.0.27", npm_package_files_0: "dist", HOME: "/home/runner", npm_package_devDependencies__typescript_eslint_parser: "^5.4.0", npm_package_dependencies__radix_ui_react_dialog: "1.0.4", npm_package_devDependencies__types_react_window: "^1.8.5", npm_package_files_1: "src", npm_package_repository_directory: "packages/roomkit-react", RUNNER_TEMP: "/home/runner/work/_temp", GITHUB_EVENT_PATH: "/home/runner/work/_temp/_github_workflow/event.json", npm_package_scripts_controller: "cd packages/hls-controller && yarn start", npm_package_dependencies__stitches_react: "1.3.1-1", JAVA_HOME_11_X64: "/usr/lib/jvm/temurin-11-jdk-amd64", PIPX_BIN_DIR: "/opt/pipx_bin", GITHUB_REPOSITORY_OWNER: "100mslive", npm_package_engines_node: ">=16", npm_package_devDependencies_typedoc_plugin_markdown: "^3.14.0", npm_config_init_license: "MIT", GRADLE_HOME: "/usr/share/gradle-9.2.0", ANDROID_NDK_LATEST_HOME: "/usr/local/lib/android/sdk/ndk/29.0.14206865", JAVA_HOME_21_X64: "/usr/lib/jvm/temurin-21-jdk-amd64", GITHUB_RETENTION_DAYS: "90", YARN_WRAP_OUTPUT: "false", npm_config_version_tag_prefix: "v", GITHUB_REPOSITORY_OWNER_ID: "73883131", POWERSHELL_DISTRIBUTION_CHANNEL: "GitHub-Actions-ubuntu24", AZURE_EXTENSION_DIR: "/opt/az/azcliextensions", GITHUB_HEAD_REF: "", npm_package_scripts_lint_fix: "yarn lint --fix", npm_config_userconfig: "/home/runner/work/_temp/.npmrc", npm_package_devDependencies__storybook_addon_a11y: "^7.0.27", SYSTEMD_EXEC_PID: "1894", npm_package_scripts_postinstall: "husky install", npm_package_devDependencies_husky: "^6.0.0", npm_package_dependencies_recordrtc: "^5.6.2", npm_package_dependencies_eventemitter2: "^6.4.9", npm_package_dependencies__radix_ui_react_label: "1.0.0", npm_package_dependencies__radix_ui_react_dropdown_menu: "2.0.5", npm_package_keywords_0: "100mslive", GITHUB_GRAPHQL_URL: "https://api.github.com/graphql", npm_package_description: "100ms Room Kit provides simple & easy to use UI components to build Live Streaming & Video Conferencing experiences in your apps.", npm_package_devDependencies_typescript: "~4.7.4", npm_package_devDependencies_typedoc: "^0.24.8", npm_package_devDependencies_babel_loader: "^8.2.5", npm_package_keywords_1: "react", JAVA_HOME_25_X64: "/usr/lib/jvm/temurin-25-jdk-amd64", NVM_DIR: "/home/runner/.nvm", npm_package_readmeFilename: "README.md", npm_package_devDependencies_react: "^18.1.0", npm_package_devDependencies__babel_preset_env: "^7.22.5", npm_package_keywords_2: "prebuilt", DOTNET_SKIP_FIRST_TIME_EXPERIENCE: "1", JAVA_HOME_17_X64: "/usr/lib/jvm/temurin-17-jdk-amd64", ImageVersion: "20251112.124.1", npm_package_devDependencies_prettier: "^2.4.1", npm_package_devDependencies_babel_jest: "^29.7.0", npm_package_scripts_dev: "node ../../scripts/dev", npm_package_keywords_3: "roomkit", LOGNAME: "runner", RUNNER_OS: "Linux", GITHUB_API_URL: "https://api.github.com", GOROOT_1_22_X64: "/opt/hostedtoolcache/go/1.22.12/x64", SWIFT_PATH: "/usr/share/swift/usr/bin", FORCE_COLOR: "true", npm_package_dependencies__radix_ui_react_toast: "1.0.0", npm_package_dependencies__radix_ui_react_radio_group: "1.0.0", npm_package_dependencies__100mslive_hms_noise_cancellation: "0.0.1", npm_package_devDependencies__babel_preset_typescript: "^7.22.5", npm_package_exports___default: "./dist/index.js", CHROMEWEBDRIVER: "/usr/local/share/chromedriver-linux64", GOROOT_1_23_X64: "/opt/hostedtoolcache/go/1.23.12/x64", JOURNAL_STREAM: "9:14415", GITHUB_WORKFLOW: "Publish Packages", _: "/usr/local/bin/yarn", npm_package_devDependencies_ts_jest: "^29.1.1", npm_package_devDependencies_lerna: "^5.6.2", npm_package_devDependencies__types_jest: "^27.0.3", npm_package_devDependencies__commitlint_config_conventional: "^19.6.0", npm_package_private: "true", npm_package_dependencies__radix_ui_react_accordion: "1.0.0", npm_package_devDependencies__babel_preset_react: "^7.22.5", npm_package_module: "dist/index.js", MEMORY_PRESSURE_WATCH: "/sys/fs/cgroup/system.slice/hosted-compute-agent.service/memory.pressure", GOROOT_1_24_X64: "/opt/hostedtoolcache/go/1.24.10/x64", npm_package_scripts_lint: "eslint -c .eslintrc --no-error-on-unmatched-pattern src --ext .js --ext .jsx --ext .ts --ext .tsx", npm_package_devDependencies__typescript_eslint_eslint_plugin: "^5.4.0", npm_config_registry: "https://registry.yarnpkg.com", npm_package_dependencies_react_window: "^1.8.7", npm_package_dependencies__100mslive_hls_player: "0.3.40-alpha.0", npm_package_devDependencies__types_lodash_merge: "^4.6.6", npm_package_devDependencies__storybook_cli: "^7.0.27", ACTIONS_RUNNER_ACTION_ARCHIVE_CACHE: "/opt/actionarchivecache", GOROOT_1_25_X64: "/opt/hostedtoolcache/go/1.25.4/x64", GITHUB_RUN_ID: "19351282958", npm_package_workspaces_0: "packages/*", npm_package_scripts_store: "cd packages/hms-video-store && yarn start", npm_package_devDependencies__babel_core: "^7.18.2", npm_package_dependencies_ts_pattern: "4.3.0", npm_package_devDependencies__storybook_addon_interactions: "^7.0.27", npm_package_devDependencies__storybook_addon_actions: "^7.0.27", GITHUB_REF_TYPE: "branch", BOOTSTRAP_HASKELL_NONINTERACTIVE: "1", GITHUB_WORKFLOW_SHA: "13400154c64cb0e7289e8455733131ca0761532c", GITHUB_BASE_REF: "", ImageOS: "ubuntu24", npm_package_workspaces_1: "examples/*", npm_package_scripts_start: 'concurrently "yarn dev" "yarn types"', npm_config_ignore_scripts: "", NX_TASK_HASH: "629e2980e146bf9a42cec315d45f534e859c4f22b896d22257e8d6f76b895be7", npm_package_exports___import: "./dist/index.js", GITHUB_WORKFLOW_REF: "100mslive/web-sdks/.github/workflows/publish.yml@refs/heads/fix/device-change-event", GITHUB_ACTION_REPOSITORY: "", ENABLE_RUNNER_TRACING: "true", npm_package_resolutions_on_headers: "^1.1.0", npm_package_resolutions_semver: "^7.5.2", npm_package_scripts_prebuilt: "cd packages/roomkit-react && yarn start", npm_package_devDependencies_postcss_loader: "^6.2.1", npm_package_devDependencies_esbuild_loader: "^4.0.2", PATH: "/tmp/yarn--1763083779118-0.09929644895887058:/home/runner/work/web-sdks/web-sdks/packages/roomkit-react/node_modules/.bin:/home/runner/.config/yarn/link/node_modules/.bin:/home/runner/work/web-sdks/web-sdks/node_modules/.bin:/opt/hostedtoolcache/node/20.19.5/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/20.19.5/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/20.19.5/x64/bin/node_modules/npm/bin/node-gyp-bin:/tmp/yarn--1763083778946-0.7513423489060367:/home/runner/work/web-sdks/web-sdks/packages/roomkit-react/node_modules/.bin:/home/runner/.config/yarn/link/node_modules/.bin:/home/runner/work/web-sdks/web-sdks/node_modules/.bin:/opt/hostedtoolcache/node/20.19.5/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/20.19.5/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/20.19.5/x64/bin/node_modules/npm/bin/node-gyp-bin:/tmp/yarn--1763083753853-0.7907117933944905:/home/runner/work/web-sdks/web-sdks/node_modules/.bin:/home/runner/.config/yarn/link/node_modules/.bin:/home/runner/work/web-sdks/web-sdks/node_modules/.bin:/opt/hostedtoolcache/node/20.19.5/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/20.19.5/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/20.19.5/x64/bin/node_modules/npm/bin/node-gyp-bin:/tmp/yarn--1763083753692-0.4558616258804573:/home/runner/work/web-sdks/web-sdks/node_modules/.bin:/home/runner/.config/yarn/link/node_modules/.bin:/home/runner/work/web-sdks/web-sdks/node_modules/.bin:/opt/hostedtoolcache/node/20.19.5/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/20.19.5/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/20.19.5/x64/bin/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/20.19.5/x64/bin:/snap/bin:/home/runner/.local/bin:/opt/pipx_bin:/home/runner/.cargo/bin:/home/runner/.config/composer/vendor/bin:/usr/local/.ghcup/bin:/home/runner/.dotnet/tools:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin", NODE: "/opt/hostedtoolcache/node/20.19.5/x64/bin/node", ANT_HOME: "/usr/share/ant", DOTNET_MULTILEVEL_LOOKUP: "0", RUNNER_TRACKING_ID: "github_c6c5511b-78a8-4ff9-aa80-d99177e5aa2a", INVOCATION_ID: "6ac3f0fe55d444a89119e917de8c93e2", NPM_CONFIG_USERCONFIG: "/home/runner/work/_temp/.npmrc", RUNNER_TOOL_CACHE: "/opt/hostedtoolcache", npm_package_scripts_size: "size-limit", npm_package_devDependencies_size_limit: "^5.0.3", npm_package_name: "@100mslive/roomkit-react", npm_package_devDependencies__storybook_react_webpack5: "^7.0.27", npm_package_repository_type: "git", GITHUB_ACTION: "__run_3", GITHUB_RUN_NUMBER: "767", GITHUB_TRIGGERING_ACTOR: "raviteja83", RUNNER_ARCH: "X64", XDG_RUNTIME_DIR: "/run/user/1001", AGENT_TOOLSDIRECTORY: "/opt/hostedtoolcache", npm_package_lint_staged____js_ts_jsx_tsx_: "eslint", npm_package_devDependencies_babel_plugin_istanbul: "^6.1.1", LERNA_PACKAGE_NAME: "@100mslive/roomkit-react", npm_package_dependencies__radix_ui_react_select: "1.0.0", npm_package_size_limit_0_limit: "20 KB", npm_package_devDependencies__commitlint_cli: "^19.6.0", LANG: "C.UTF-8", VCPKG_INSTALLATION_ROOT: "/usr/local/share/vcpkg", npm_package_size_limit_1_limit: "20 KB", npm_package_devDependencies_eslint_plugin_simple_import_sort: "^8.0.0", npm_package_devDependencies_eslint: "^8.9.0", npm_package_dependencies_react_intersection_observer: "^9.4.3", npm_package_dependencies_react_dom: "^18.2.0", npm_package_devDependencies__types_mdx: "2.0.2", CONDA: "/usr/share/miniconda", RUNNER_NAME: "GitHub Actions 1000073733", XDG_CONFIG_HOME: "/home/runner/.config", GITHUB_REF_NAME: "fix/device-change-event", GITHUB_REPOSITORY: "100mslive/web-sdks", npm_lifecycle_script: "rm -rf dist && node ../../scripts/build-webapp", npm_package_size_limit_2_limit: "400 KB", npm_package_resolutions_loader_utils: "^2.0.4", npm_package_devDependencies_dotenv: "^14.2.0", npm_package_dependencies__radix_ui_react_slider: "1.0.0", npm_package_scripts_types_build: "tsc -p tsconfig.json", npm_package_main: "dist/index.cjs.js", ANDROID_NDK_ROOT: "/usr/local/lib/android/sdk/ndk/27.3.13750724", GITHUB_ACTION_REF: "", DEBIAN_FRONTEND: "noninteractive", npm_package_size_limit_3_limit: "20 KB", npm_package_size_limit_0_path: "packages/hms-video-store/dist/index.cjs.js", npm_package_scripts_lerna_publish: "lerna publish from-package --dist-tag $PUBLISH_FLAG --yes --no-verify-access", npm_package_scripts_test: "yarn build --no-private && lerna run test", npm_package_devDependencies_concurrently: "^6.4.0", npm_config_version_git_message: "v%s", npm_package_dependencies__radix_ui_react_checkbox: "1.0.0", npm_package_dependencies__100mslive_react_icons: "0.10.40-alpha.0", npm_package_scripts_types: "tsc -w", SHELL: "/bin/bash", GITHUB_REPOSITORY_ID: "429826515", GITHUB_ACTIONS: "true", npm_lifecycle_event: "build:only", npm_package_version: "0.3.40-alpha.0", npm_package_size_limit_4_limit: "20 KB", npm_package_size_limit_1_path: "packages/hms-video-store/dist/index.js", npm_package_resolutions__octokit_request_error: "^5.1.1", npm_package_resolutions_axios: "^1.7.4", npm_package_scripts_build_only: "rm -rf dist && node ../../scripts/build-webapp", npm_package_devDependencies_jest_environment_jsdom: "^29.7.0", npm_package_devDependencies__types_react: "^18.1.0", npm_package_sideEffects: "false", npm_package_repository_url: "https://github.com/100mslive/web-sdks.git", npm_package_source: "src/index.ts", GITHUB_REF_PROTECTED: "false", npm_config_argv: '{"remain":[],"cooked":["run","test"],"original":["test"]}', npm_package_size_limit_5_limit: "20 KB", npm_package_size_limit_2_path: "packages/roomkit-react/dist/index.cjs.js", npm_package_scripts_build: "yarn build:only && yarn types:build", npm_package_devDependencies_tslib: "^2.2.0", npm_package_devDependencies_nx: "^14.5.1", npm_package_devDependencies_lint_staged: "^12.0.3", NX_CLI_SET: "true", npm_package_dependencies_uuid: "^8.3.2", npm_package_dependencies_react_virtualized_auto_sizer: "^1.0.7", npm_package_dependencies_lodash_merge: "^4.6.2", npm_package_dependencies_emoji_mart: "^5.2.2", GITHUB_WORKSPACE: "/home/runner/work/web-sdks/web-sdks", ACCEPT_EULA: "Y", GITHUB_JOB: "publish_packages", npm_package_size_limit_6_limit: "150 KB", npm_package_size_limit_3_path: "packages/roomkit-react/dist/index.js", GITHUB_SHA: "13400154c64cb0e7289e8455733131ca0761532c", GITHUB_RUN_ATTEMPT: "1", npm_package_size_limit_7_limit: "100 KB", npm_package_size_limit_4_path: "packages/hms-virtual-background/dist/index.cjs.js", npm_package_resolutions_form_data: "^4.0.4", npm_config_version_git_tag: "true", npm_config_version_git_sign: "", npm_package_dependencies_qrcode_react: "^3.1.0", GITHUB_REF: "refs/heads/fix/device-change-event", GITHUB_ACTOR: "raviteja83", ANDROID_SDK_ROOT: "/usr/local/lib/android/sdk", npm_package_license: "MIT", npm_package_size_limit_5_path: "packages/hms-virtual-background/dist/index.js", npm_config_strict_ssl: "true", npm_package_size_limit_6_path: "packages/react-icons/dist/index.cjs.js", npm_package_scripts_format: "prettier -w src/**", npm_package_devDependencies_eslint_plugin_prettier: "^4.0.0", npm_package_devDependencies_eslint_config_react_app: "^7.0.0", NX_TASK_TARGET_PROJECT: "@100mslive/roomkit-react", GITHUB_PATH: "/home/runner/work/_temp/_runner_file_commands/add_path_db56eb4b-af73-4c2c-a8a5-5f693071c2af", JAVA_HOME: "/usr/lib/jvm/temurin-17-jdk-amd64", PWD: "/home/runner/work/web-sdks/web-sdks/packages/roomkit-react", GITHUB_ACTOR_ID: "6763261", RUNNER_WORKSPACE: "/home/runner/work/web-sdks", npm_execpath: "/usr/local/lib/node_modules/yarn/bin/yarn.js", npm_package_size_limit_7_path: "packages/react-icons/dist/index.js", npm_package_scripts_ybys: "yarn && yarn build --no-private && yarn storybook", npm_package_dependencies__radix_ui_react_progress: "1.0.0", HOMEBREW_CLEANUP_PERIODIC_FULL_DAYS: "3650", GITHUB_EVENT_NAME: "workflow_dispatch", HOMEBREW_NO_AUTO_UPDATE: "1", ANDROID_HOME: "/usr/local/lib/android/sdk", GITHUB_SERVER_URL: "https://github.com", GECKOWEBDRIVER: "/usr/local/share/gecko_driver", GHCUP_INSTALL_BASE_PREFIX: "/usr/local", GITHUB_OUTPUT: "/home/runner/work/_temp/_runner_file_commands/set_output_db56eb4b-af73-4c2c-a8a5-5f693071c2af", npm_package_scripts_prestart: "rm -rf dist && yarn types:build", npm_package_author_name: "100ms", EDGEWEBDRIVER: "/usr/local/share/edge_driver", npm_package_scripts_build_storybook: "sb build", npm_package_devDependencies_postcss: "^8.4.5", npm_package_devDependencies_esbuild: "^0.18.13", npm_config_save_prefix: "^", npm_config_ignore_optional: "", npm_package_dependencies_worker_timers: "^7.0.40", npm_package_typings: "dist/index.d.ts", ANDROID_NDK: "/usr/local/lib/android/sdk/ndk/27.3.13750724", SGX_AESM_ADDR: "1", CHROME_BIN: "/usr/bin/google-chrome", npm_package_scripts_storybook: "sb dev -p 6006", npm_package_devDependencies_esbuild_plugin_postcss2: "0.1.1", npm_package_dependencies_react_swipeable: "^7.0.1", npm_package_devDependencies_babel_plugin_react_require: "3.1.3", npm_package_devDependencies__storybook_testing_library: "^0.2.0", npm_package_devDependencies__storybook_addon_essentials: "^7.0.27", SELENIUM_JAR_PATH: "/usr/share/java/selenium-server.jar", MEMORY_PRESSURE_WRITE: "c29tZSAyMDAwMDAgMjAwMDAwMAA=", npm_package_scripts_reactsdk: "cd packages/react-sdk && yarn start", npm_package_dependencies_react_use: "^17.4.0", npm_package_dependencies__radix_ui_react_collapsible: "1.0.0", npm_package_devDependencies_storybook_dark_mode: "^3.0.0", npm_package_devDependencies_knip: "^5.11.0", npm_package_devDependencies__storybook_react: "^7.0.27", INIT_CWD: "/home/runner/work/web-sdks/web-sdks", ANDROID_NDK_HOME: "/usr/local/lib/android/sdk/ndk/27.3.13750724", GITHUB_STEP_SUMMARY: "/home/runner/work/_temp/_runner_file_commands/step_summary_db56eb4b-af73-4c2c-a8a5-5f693071c2af" };
113
113
  }
114
114
  });
115
115
 
@@ -119,7 +119,7 @@ var require_lodash = __commonJS({
119
119
  init_define_process_env();
120
120
  (function() {
121
121
  var undefined2;
122
- var VERSION = "4.17.21";
122
+ var VERSION2 = "4.17.21";
123
123
  var LARGE_ARRAY_SIZE = 200;
124
124
  var CORE_ERROR_TEXT = "Unsupported core-js use. Try https://npms.io/search?q=ponyfill.", FUNC_ERROR_TEXT = "Expected a function", INVALID_TEMPL_VAR_ERROR_TEXT = "Invalid `variable` option passed into `_.template`";
125
125
  var HASH_UNDEFINED = "__lodash_hash_undefined__";
@@ -2288,8 +2288,8 @@ var require_lodash = __commonJS({
2288
2288
  function createBind(func, bitmask, thisArg) {
2289
2289
  var isBind = bitmask & WRAP_BIND_FLAG, Ctor = createCtor(func);
2290
2290
  function wrapper() {
2291
- var fn = this && this !== root && this instanceof wrapper ? Ctor : func;
2292
- return fn.apply(isBind ? thisArg : this, arguments);
2291
+ var fn2 = this && this !== root && this instanceof wrapper ? Ctor : func;
2292
+ return fn2.apply(isBind ? thisArg : this, arguments);
2293
2293
  }
2294
2294
  return wrapper;
2295
2295
  }
@@ -2355,8 +2355,8 @@ var require_lodash = __commonJS({
2355
2355
  arity - length
2356
2356
  );
2357
2357
  }
2358
- var fn = this && this !== root && this instanceof wrapper ? Ctor : func;
2359
- return apply(fn, this, args);
2358
+ var fn2 = this && this !== root && this instanceof wrapper ? Ctor : func;
2359
+ return apply(fn2, this, args);
2360
2360
  }
2361
2361
  return wrapper;
2362
2362
  }
@@ -2444,7 +2444,7 @@ var require_lodash = __commonJS({
2444
2444
  arity - length
2445
2445
  );
2446
2446
  }
2447
- var thisBinding = isBind ? thisArg : this, fn = isBindKey ? thisBinding[func] : func;
2447
+ var thisBinding = isBind ? thisArg : this, fn2 = isBindKey ? thisBinding[func] : func;
2448
2448
  length = args.length;
2449
2449
  if (argPos) {
2450
2450
  args = reorder(args, argPos);
@@ -2455,9 +2455,9 @@ var require_lodash = __commonJS({
2455
2455
  args.length = ary2;
2456
2456
  }
2457
2457
  if (this && this !== root && this instanceof wrapper) {
2458
- fn = Ctor || createCtor(fn);
2458
+ fn2 = Ctor || createCtor(fn2);
2459
2459
  }
2460
- return fn.apply(thisBinding, args);
2460
+ return fn2.apply(thisBinding, args);
2461
2461
  }
2462
2462
  return wrapper;
2463
2463
  }
@@ -2514,14 +2514,14 @@ var require_lodash = __commonJS({
2514
2514
  function createPartial(func, bitmask, thisArg, partials) {
2515
2515
  var isBind = bitmask & WRAP_BIND_FLAG, Ctor = createCtor(func);
2516
2516
  function wrapper() {
2517
- var argsIndex = -1, argsLength = arguments.length, leftIndex = -1, leftLength = partials.length, args = Array2(leftLength + argsLength), fn = this && this !== root && this instanceof wrapper ? Ctor : func;
2517
+ var argsIndex = -1, argsLength = arguments.length, leftIndex = -1, leftLength = partials.length, args = Array2(leftLength + argsLength), fn2 = this && this !== root && this instanceof wrapper ? Ctor : func;
2518
2518
  while (++leftIndex < leftLength) {
2519
2519
  args[leftIndex] = partials[leftIndex];
2520
2520
  }
2521
2521
  while (argsLength--) {
2522
2522
  args[leftIndex++] = arguments[++argsIndex];
2523
2523
  }
2524
- return apply(fn, isBind ? thisArg : this, args);
2524
+ return apply(fn2, isBind ? thisArg : this, args);
2525
2525
  }
2526
2526
  return wrapper;
2527
2527
  }
@@ -3774,7 +3774,7 @@ var require_lodash = __commonJS({
3774
3774
  if (fromIndex < 0) {
3775
3775
  fromIndex = nativeMax(length + fromIndex, 0);
3776
3776
  }
3777
- return isString(collection) ? fromIndex <= length && collection.indexOf(value, fromIndex) > -1 : !!length && baseIndexOf(collection, value, fromIndex) > -1;
3777
+ return isString2(collection) ? fromIndex <= length && collection.indexOf(value, fromIndex) > -1 : !!length && baseIndexOf(collection, value, fromIndex) > -1;
3778
3778
  }
3779
3779
  var invokeMap = baseRest(function(collection, path, args) {
3780
3780
  var index = -1, isFunc = typeof path == "function", result2 = isArrayLike(collection) ? Array2(collection.length) : [];
@@ -3842,7 +3842,7 @@ var require_lodash = __commonJS({
3842
3842
  return 0;
3843
3843
  }
3844
3844
  if (isArrayLike(collection)) {
3845
- return isString(collection) ? stringSize(collection) : collection.length;
3845
+ return isString2(collection) ? stringSize(collection) : collection.length;
3846
3846
  }
3847
3847
  var tag = getTag(collection);
3848
3848
  if (tag == mapTag || tag == setTag) {
@@ -4151,7 +4151,7 @@ var require_lodash = __commonJS({
4151
4151
  function eq(value, other) {
4152
4152
  return value === other || value !== value && other !== other;
4153
4153
  }
4154
- var gt2 = createRelationalOperation(baseGt);
4154
+ var gt = createRelationalOperation(baseGt);
4155
4155
  var gte = createRelationalOperation(function(value, other) {
4156
4156
  return value >= other;
4157
4157
  });
@@ -4277,7 +4277,7 @@ var require_lodash = __commonJS({
4277
4277
  return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER;
4278
4278
  }
4279
4279
  var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;
4280
- function isString(value) {
4280
+ function isString2(value) {
4281
4281
  return typeof value == "string" || !isArray2(value) && isObjectLike(value) && baseGetTag(value) == stringTag;
4282
4282
  }
4283
4283
  function isSymbol(value) {
@@ -4302,7 +4302,7 @@ var require_lodash = __commonJS({
4302
4302
  return [];
4303
4303
  }
4304
4304
  if (isArrayLike(value)) {
4305
- return isString(value) ? stringToArray(value) : copyArray(value);
4305
+ return isString2(value) ? stringToArray(value) : copyArray(value);
4306
4306
  }
4307
4307
  if (symIterator && value[symIterator]) {
4308
4308
  return iteratorToArray(value[symIterator]());
@@ -4435,7 +4435,7 @@ var require_lodash = __commonJS({
4435
4435
  var result2 = object == null ? undefined2 : baseGet(object, path);
4436
4436
  return result2 === undefined2 ? defaultValue : result2;
4437
4437
  }
4438
- function has(object, path) {
4438
+ function has2(object, path) {
4439
4439
  return object != null && hasPath(object, path, baseHas);
4440
4440
  }
4441
4441
  function hasIn(object, path) {
@@ -4808,7 +4808,7 @@ var require_lodash = __commonJS({
4808
4808
  function toUpper(value) {
4809
4809
  return toString(value).toUpperCase();
4810
4810
  }
4811
- function trim(string, chars, guard) {
4811
+ function trim2(string, chars, guard) {
4812
4812
  string = toString(string);
4813
4813
  if (string && (guard || chars === undefined2)) {
4814
4814
  return baseTrim(string);
@@ -5290,9 +5290,9 @@ var require_lodash = __commonJS({
5290
5290
  lodash.forOwn = forOwn;
5291
5291
  lodash.forOwnRight = forOwnRight;
5292
5292
  lodash.get = get;
5293
- lodash.gt = gt2;
5293
+ lodash.gt = gt;
5294
5294
  lodash.gte = gte;
5295
- lodash.has = has;
5295
+ lodash.has = has2;
5296
5296
  lodash.hasIn = hasIn;
5297
5297
  lodash.head = head;
5298
5298
  lodash.identity = identity;
@@ -5331,7 +5331,7 @@ var require_lodash = __commonJS({
5331
5331
  lodash.isRegExp = isRegExp;
5332
5332
  lodash.isSafeInteger = isSafeInteger;
5333
5333
  lodash.isSet = isSet;
5334
- lodash.isString = isString;
5334
+ lodash.isString = isString2;
5335
5335
  lodash.isSymbol = isSymbol;
5336
5336
  lodash.isTypedArray = isTypedArray;
5337
5337
  lodash.isUndefined = isUndefined;
@@ -5398,7 +5398,7 @@ var require_lodash = __commonJS({
5398
5398
  lodash.toSafeInteger = toSafeInteger;
5399
5399
  lodash.toString = toString;
5400
5400
  lodash.toUpper = toUpper;
5401
- lodash.trim = trim;
5401
+ lodash.trim = trim2;
5402
5402
  lodash.trimEnd = trimEnd;
5403
5403
  lodash.trimStart = trimStart;
5404
5404
  lodash.truncate = truncate;
@@ -5418,7 +5418,7 @@ var require_lodash = __commonJS({
5418
5418
  });
5419
5419
  return source;
5420
5420
  }(), { "chain": false });
5421
- lodash.VERSION = VERSION;
5421
+ lodash.VERSION = VERSION2;
5422
5422
  arrayEach(["bind", "bindKey", "curry", "curryRight", "partial", "partialRight"], function(methodName) {
5423
5423
  lodash[methodName].placeholder = lodash;
5424
5424
  });
@@ -5594,1260 +5594,6 @@ var require_lodash = __commonJS({
5594
5594
  }
5595
5595
  });
5596
5596
 
5597
- // ../../node_modules/ua-parser-js/src/ua-parser.js
5598
- var require_ua_parser = __commonJS({
5599
- "../../node_modules/ua-parser-js/src/ua-parser.js"(exports, module2) {
5600
- init_define_process_env();
5601
- (function(window2, undefined2) {
5602
- "use strict";
5603
- var LIBVERSION = "1.0.35", EMPTY = "", UNKNOWN = "?", FUNC_TYPE = "function", UNDEF_TYPE = "undefined", OBJ_TYPE = "object", STR_TYPE = "string", MAJOR = "major", MODEL = "model", NAME = "name", TYPE = "type", VENDOR = "vendor", VERSION = "version", ARCHITECTURE = "architecture", CONSOLE = "console", MOBILE = "mobile", TABLET = "tablet", SMARTTV = "smarttv", WEARABLE = "wearable", EMBEDDED = "embedded", UA_MAX_LENGTH = 350;
5604
- var AMAZON = "Amazon", APPLE = "Apple", ASUS = "ASUS", BLACKBERRY = "BlackBerry", BROWSER = "Browser", CHROME = "Chrome", EDGE = "Edge", FIREFOX = "Firefox", GOOGLE = "Google", HUAWEI = "Huawei", LG = "LG", MICROSOFT = "Microsoft", MOTOROLA = "Motorola", OPERA = "Opera", SAMSUNG = "Samsung", SHARP = "Sharp", SONY = "Sony", VIERA = "Viera", XIAOMI = "Xiaomi", ZEBRA = "Zebra", FACEBOOK = "Facebook", CHROMIUM_OS = "Chromium OS", MAC_OS = "Mac OS";
5605
- var extend = function(regexes2, extensions) {
5606
- var mergedRegexes = {};
5607
- for (var i in regexes2) {
5608
- if (extensions[i] && extensions[i].length % 2 === 0) {
5609
- mergedRegexes[i] = extensions[i].concat(regexes2[i]);
5610
- } else {
5611
- mergedRegexes[i] = regexes2[i];
5612
- }
5613
- }
5614
- return mergedRegexes;
5615
- }, enumerize = function(arr) {
5616
- var enums = {};
5617
- for (var i = 0; i < arr.length; i++) {
5618
- enums[arr[i].toUpperCase()] = arr[i];
5619
- }
5620
- return enums;
5621
- }, has = function(str1, str2) {
5622
- return typeof str1 === STR_TYPE ? lowerize(str2).indexOf(lowerize(str1)) !== -1 : false;
5623
- }, lowerize = function(str) {
5624
- return str.toLowerCase();
5625
- }, majorize = function(version) {
5626
- return typeof version === STR_TYPE ? version.replace(/[^\d\.]/g, EMPTY).split(".")[0] : undefined2;
5627
- }, trim = function(str, len) {
5628
- if (typeof str === STR_TYPE) {
5629
- str = str.replace(/^\s\s*/, EMPTY);
5630
- return typeof len === UNDEF_TYPE ? str : str.substring(0, UA_MAX_LENGTH);
5631
- }
5632
- };
5633
- var rgxMapper = function(ua, arrays) {
5634
- var i = 0, j2, k2, p, q, matches, match18;
5635
- while (i < arrays.length && !matches) {
5636
- var regex = arrays[i], props = arrays[i + 1];
5637
- j2 = k2 = 0;
5638
- while (j2 < regex.length && !matches) {
5639
- if (!regex[j2]) {
5640
- break;
5641
- }
5642
- matches = regex[j2++].exec(ua);
5643
- if (!!matches) {
5644
- for (p = 0; p < props.length; p++) {
5645
- match18 = matches[++k2];
5646
- q = props[p];
5647
- if (typeof q === OBJ_TYPE && q.length > 0) {
5648
- if (q.length === 2) {
5649
- if (typeof q[1] == FUNC_TYPE) {
5650
- this[q[0]] = q[1].call(this, match18);
5651
- } else {
5652
- this[q[0]] = q[1];
5653
- }
5654
- } else if (q.length === 3) {
5655
- if (typeof q[1] === FUNC_TYPE && !(q[1].exec && q[1].test)) {
5656
- this[q[0]] = match18 ? q[1].call(this, match18, q[2]) : undefined2;
5657
- } else {
5658
- this[q[0]] = match18 ? match18.replace(q[1], q[2]) : undefined2;
5659
- }
5660
- } else if (q.length === 4) {
5661
- this[q[0]] = match18 ? q[3].call(this, match18.replace(q[1], q[2])) : undefined2;
5662
- }
5663
- } else {
5664
- this[q] = match18 ? match18 : undefined2;
5665
- }
5666
- }
5667
- }
5668
- }
5669
- i += 2;
5670
- }
5671
- }, strMapper = function(str, map) {
5672
- for (var i in map) {
5673
- if (typeof map[i] === OBJ_TYPE && map[i].length > 0) {
5674
- for (var j2 = 0; j2 < map[i].length; j2++) {
5675
- if (has(map[i][j2], str)) {
5676
- return i === UNKNOWN ? undefined2 : i;
5677
- }
5678
- }
5679
- } else if (has(map[i], str)) {
5680
- return i === UNKNOWN ? undefined2 : i;
5681
- }
5682
- }
5683
- return str;
5684
- };
5685
- var oldSafariMap = {
5686
- "1.0": "/8",
5687
- "1.2": "/1",
5688
- "1.3": "/3",
5689
- "2.0": "/412",
5690
- "2.0.2": "/416",
5691
- "2.0.3": "/417",
5692
- "2.0.4": "/419",
5693
- "?": "/"
5694
- }, windowsVersionMap = {
5695
- "ME": "4.90",
5696
- "NT 3.11": "NT3.51",
5697
- "NT 4.0": "NT4.0",
5698
- "2000": "NT 5.0",
5699
- "XP": ["NT 5.1", "NT 5.2"],
5700
- "Vista": "NT 6.0",
5701
- "7": "NT 6.1",
5702
- "8": "NT 6.2",
5703
- "8.1": "NT 6.3",
5704
- "10": ["NT 6.4", "NT 10.0"],
5705
- "RT": "ARM"
5706
- };
5707
- var regexes = {
5708
- browser: [
5709
- [
5710
- /\b(?:crmo|crios)\/([\w\.]+)/i
5711
- // Chrome for Android/iOS
5712
- ],
5713
- [VERSION, [NAME, "Chrome"]],
5714
- [
5715
- /edg(?:e|ios|a)?\/([\w\.]+)/i
5716
- // Microsoft Edge
5717
- ],
5718
- [VERSION, [NAME, "Edge"]],
5719
- [
5720
- // Presto based
5721
- /(opera mini)\/([-\w\.]+)/i,
5722
- // Opera Mini
5723
- /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,
5724
- // Opera Mobi/Tablet
5725
- /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i
5726
- // Opera
5727
- ],
5728
- [NAME, VERSION],
5729
- [
5730
- /opios[\/ ]+([\w\.]+)/i
5731
- // Opera mini on iphone >= 8.0
5732
- ],
5733
- [VERSION, [NAME, OPERA + " Mini"]],
5734
- [
5735
- /\bopr\/([\w\.]+)/i
5736
- // Opera Webkit
5737
- ],
5738
- [VERSION, [NAME, OPERA]],
5739
- [
5740
- // Mixed
5741
- /(kindle)\/([\w\.]+)/i,
5742
- // Kindle
5743
- /(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,
5744
- // Lunascape/Maxthon/Netfront/Jasmine/Blazer
5745
- // Trident based
5746
- /(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i,
5747
- // Avant/IEMobile/SlimBrowser
5748
- /(ba?idubrowser)[\/ ]?([\w\.]+)/i,
5749
- // Baidu Browser
5750
- /(?:ms|\()(ie) ([\w\.]+)/i,
5751
- // Internet Explorer
5752
- // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon
5753
- /(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,
5754
- // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ
5755
- /(heytap|ovi)browser\/([\d\.]+)/i,
5756
- // Heytap/Ovi
5757
- /(weibo)__([\d\.]+)/i
5758
- // Weibo
5759
- ],
5760
- [NAME, VERSION],
5761
- [
5762
- /(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i
5763
- // UCBrowser
5764
- ],
5765
- [VERSION, [NAME, "UC" + BROWSER]],
5766
- [
5767
- /microm.+\bqbcore\/([\w\.]+)/i,
5768
- // WeChat Desktop for Windows Built-in Browser
5769
- /\bqbcore\/([\w\.]+).+microm/i
5770
- ],
5771
- [VERSION, [NAME, "WeChat(Win) Desktop"]],
5772
- [
5773
- /micromessenger\/([\w\.]+)/i
5774
- // WeChat
5775
- ],
5776
- [VERSION, [NAME, "WeChat"]],
5777
- [
5778
- /konqueror\/([\w\.]+)/i
5779
- // Konqueror
5780
- ],
5781
- [VERSION, [NAME, "Konqueror"]],
5782
- [
5783
- /trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i
5784
- // IE11
5785
- ],
5786
- [VERSION, [NAME, "IE"]],
5787
- [
5788
- /ya(?:search)?browser\/([\w\.]+)/i
5789
- // Yandex
5790
- ],
5791
- [VERSION, [NAME, "Yandex"]],
5792
- [
5793
- /(avast|avg)\/([\w\.]+)/i
5794
- // Avast/AVG Secure Browser
5795
- ],
5796
- [[NAME, /(.+)/, "$1 Secure " + BROWSER], VERSION],
5797
- [
5798
- /\bfocus\/([\w\.]+)/i
5799
- // Firefox Focus
5800
- ],
5801
- [VERSION, [NAME, FIREFOX + " Focus"]],
5802
- [
5803
- /\bopt\/([\w\.]+)/i
5804
- // Opera Touch
5805
- ],
5806
- [VERSION, [NAME, OPERA + " Touch"]],
5807
- [
5808
- /coc_coc\w+\/([\w\.]+)/i
5809
- // Coc Coc Browser
5810
- ],
5811
- [VERSION, [NAME, "Coc Coc"]],
5812
- [
5813
- /dolfin\/([\w\.]+)/i
5814
- // Dolphin
5815
- ],
5816
- [VERSION, [NAME, "Dolphin"]],
5817
- [
5818
- /coast\/([\w\.]+)/i
5819
- // Opera Coast
5820
- ],
5821
- [VERSION, [NAME, OPERA + " Coast"]],
5822
- [
5823
- /miuibrowser\/([\w\.]+)/i
5824
- // MIUI Browser
5825
- ],
5826
- [VERSION, [NAME, "MIUI " + BROWSER]],
5827
- [
5828
- /fxios\/([-\w\.]+)/i
5829
- // Firefox for iOS
5830
- ],
5831
- [VERSION, [NAME, FIREFOX]],
5832
- [
5833
- /\bqihu|(qi?ho?o?|360)browser/i
5834
- // 360
5835
- ],
5836
- [[NAME, "360 " + BROWSER]],
5837
- [
5838
- /(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i
5839
- ],
5840
- [[NAME, /(.+)/, "$1 " + BROWSER], VERSION],
5841
- [
5842
- // Oculus/Samsung/Sailfish/Huawei Browser
5843
- /(comodo_dragon)\/([\w\.]+)/i
5844
- // Comodo Dragon
5845
- ],
5846
- [[NAME, /_/g, " "], VERSION],
5847
- [
5848
- /(electron)\/([\w\.]+) safari/i,
5849
- // Electron-based App
5850
- /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,
5851
- // Tesla
5852
- /m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i
5853
- // QQBrowser/Baidu App/2345 Browser
5854
- ],
5855
- [NAME, VERSION],
5856
- [
5857
- /(metasr)[\/ ]?([\w\.]+)/i,
5858
- // SouGouBrowser
5859
- /(lbbrowser)/i,
5860
- // LieBao Browser
5861
- /\[(linkedin)app\]/i
5862
- // LinkedIn App for iOS & Android
5863
- ],
5864
- [NAME],
5865
- [
5866
- // WebView
5867
- /((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i
5868
- // Facebook App for iOS & Android
5869
- ],
5870
- [[NAME, FACEBOOK], VERSION],
5871
- [
5872
- /(kakao(?:talk|story))[\/ ]([\w\.]+)/i,
5873
- // Kakao App
5874
- /(naver)\(.*?(\d+\.[\w\.]+).*\)/i,
5875
- // Naver InApp
5876
- /safari (line)\/([\w\.]+)/i,
5877
- // Line App for iOS
5878
- /\b(line)\/([\w\.]+)\/iab/i,
5879
- // Line App for Android
5880
- /(chromium|instagram)[\/ ]([-\w\.]+)/i
5881
- // Chromium/Instagram
5882
- ],
5883
- [NAME, VERSION],
5884
- [
5885
- /\bgsa\/([\w\.]+) .*safari\//i
5886
- // Google Search Appliance on iOS
5887
- ],
5888
- [VERSION, [NAME, "GSA"]],
5889
- [
5890
- /musical_ly(?:.+app_?version\/|_)([\w\.]+)/i
5891
- // TikTok
5892
- ],
5893
- [VERSION, [NAME, "TikTok"]],
5894
- [
5895
- /headlesschrome(?:\/([\w\.]+)| )/i
5896
- // Chrome Headless
5897
- ],
5898
- [VERSION, [NAME, CHROME + " Headless"]],
5899
- [
5900
- / wv\).+(chrome)\/([\w\.]+)/i
5901
- // Chrome WebView
5902
- ],
5903
- [[NAME, CHROME + " WebView"], VERSION],
5904
- [
5905
- /droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i
5906
- // Android Browser
5907
- ],
5908
- [VERSION, [NAME, "Android " + BROWSER]],
5909
- [
5910
- /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i
5911
- // Chrome/OmniWeb/Arora/Tizen/Nokia
5912
- ],
5913
- [NAME, VERSION],
5914
- [
5915
- /version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i
5916
- // Mobile Safari
5917
- ],
5918
- [VERSION, [NAME, "Mobile Safari"]],
5919
- [
5920
- /version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i
5921
- // Safari & Safari Mobile
5922
- ],
5923
- [VERSION, NAME],
5924
- [
5925
- /webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i
5926
- // Safari < 3.0
5927
- ],
5928
- [NAME, [VERSION, strMapper, oldSafariMap]],
5929
- [
5930
- /(webkit|khtml)\/([\w\.]+)/i
5931
- ],
5932
- [NAME, VERSION],
5933
- [
5934
- // Gecko based
5935
- /(navigator|netscape\d?)\/([-\w\.]+)/i
5936
- // Netscape
5937
- ],
5938
- [[NAME, "Netscape"], VERSION],
5939
- [
5940
- /mobile vr; rv:([\w\.]+)\).+firefox/i
5941
- // Firefox Reality
5942
- ],
5943
- [VERSION, [NAME, FIREFOX + " Reality"]],
5944
- [
5945
- /ekiohf.+(flow)\/([\w\.]+)/i,
5946
- // Flow
5947
- /(swiftfox)/i,
5948
- // Swiftfox
5949
- /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,
5950
- // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar
5951
- /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,
5952
- // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix
5953
- /(firefox)\/([\w\.]+)/i,
5954
- // Other Firefox-based
5955
- /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,
5956
- // Mozilla
5957
- // Other
5958
- /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,
5959
- // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser
5960
- /(links) \(([\w\.]+)/i,
5961
- // Links
5962
- /panasonic;(viera)/i
5963
- // Panasonic Viera
5964
- ],
5965
- [NAME, VERSION],
5966
- [
5967
- /(cobalt)\/([\w\.]+)/i
5968
- // Cobalt
5969
- ],
5970
- [NAME, [VERSION, /master.|lts./, ""]]
5971
- ],
5972
- cpu: [
5973
- [
5974
- /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i
5975
- // AMD64 (x64)
5976
- ],
5977
- [[ARCHITECTURE, "amd64"]],
5978
- [
5979
- /(ia32(?=;))/i
5980
- // IA32 (quicktime)
5981
- ],
5982
- [[ARCHITECTURE, lowerize]],
5983
- [
5984
- /((?:i[346]|x)86)[;\)]/i
5985
- // IA32 (x86)
5986
- ],
5987
- [[ARCHITECTURE, "ia32"]],
5988
- [
5989
- /\b(aarch64|arm(v?8e?l?|_?64))\b/i
5990
- // ARM64
5991
- ],
5992
- [[ARCHITECTURE, "arm64"]],
5993
- [
5994
- /\b(arm(?:v[67])?ht?n?[fl]p?)\b/i
5995
- // ARMHF
5996
- ],
5997
- [[ARCHITECTURE, "armhf"]],
5998
- [
5999
- // PocketPC mistakenly identified as PowerPC
6000
- /windows (ce|mobile); ppc;/i
6001
- ],
6002
- [[ARCHITECTURE, "arm"]],
6003
- [
6004
- /((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i
6005
- // PowerPC
6006
- ],
6007
- [[ARCHITECTURE, /ower/, EMPTY, lowerize]],
6008
- [
6009
- /(sun4\w)[;\)]/i
6010
- // SPARC
6011
- ],
6012
- [[ARCHITECTURE, "sparc"]],
6013
- [
6014
- /((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i
6015
- // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC
6016
- ],
6017
- [[ARCHITECTURE, lowerize]]
6018
- ],
6019
- device: [
6020
- [
6021
- //////////////////////////
6022
- // MOBILES & TABLETS
6023
- /////////////////////////
6024
- // Samsung
6025
- /\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i
6026
- ],
6027
- [MODEL, [VENDOR, SAMSUNG], [TYPE, TABLET]],
6028
- [
6029
- /\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,
6030
- /samsung[- ]([-\w]+)/i,
6031
- /sec-(sgh\w+)/i
6032
- ],
6033
- [MODEL, [VENDOR, SAMSUNG], [TYPE, MOBILE]],
6034
- [
6035
- // Apple
6036
- /(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i
6037
- // iPod/iPhone
6038
- ],
6039
- [MODEL, [VENDOR, APPLE], [TYPE, MOBILE]],
6040
- [
6041
- /\((ipad);[-\w\),; ]+apple/i,
6042
- // iPad
6043
- /applecoremedia\/[\w\.]+ \((ipad)/i,
6044
- /\b(ipad)\d\d?,\d\d?[;\]].+ios/i
6045
- ],
6046
- [MODEL, [VENDOR, APPLE], [TYPE, TABLET]],
6047
- [
6048
- /(macintosh);/i
6049
- ],
6050
- [MODEL, [VENDOR, APPLE]],
6051
- [
6052
- // Sharp
6053
- /\b(sh-?[altvz]?\d\d[a-ekm]?)/i
6054
- ],
6055
- [MODEL, [VENDOR, SHARP], [TYPE, MOBILE]],
6056
- [
6057
- // Huawei
6058
- /\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i
6059
- ],
6060
- [MODEL, [VENDOR, HUAWEI], [TYPE, TABLET]],
6061
- [
6062
- /(?:huawei|honor)([-\w ]+)[;\)]/i,
6063
- /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i
6064
- ],
6065
- [MODEL, [VENDOR, HUAWEI], [TYPE, MOBILE]],
6066
- [
6067
- // Xiaomi
6068
- /\b(poco[\w ]+)(?: bui|\))/i,
6069
- // Xiaomi POCO
6070
- /\b; (\w+) build\/hm\1/i,
6071
- // Xiaomi Hongmi 'numeric' models
6072
- /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,
6073
- // Xiaomi Hongmi
6074
- /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,
6075
- // Xiaomi Redmi
6076
- /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i
6077
- // Xiaomi Mi
6078
- ],
6079
- [[MODEL, /_/g, " "], [VENDOR, XIAOMI], [TYPE, MOBILE]],
6080
- [
6081
- /\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i
6082
- // Mi Pad tablets
6083
- ],
6084
- [[MODEL, /_/g, " "], [VENDOR, XIAOMI], [TYPE, TABLET]],
6085
- [
6086
- // OPPO
6087
- /; (\w+) bui.+ oppo/i,
6088
- /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i
6089
- ],
6090
- [MODEL, [VENDOR, "OPPO"], [TYPE, MOBILE]],
6091
- [
6092
- // Vivo
6093
- /vivo (\w+)(?: bui|\))/i,
6094
- /\b(v[12]\d{3}\w?[at])(?: bui|;)/i
6095
- ],
6096
- [MODEL, [VENDOR, "Vivo"], [TYPE, MOBILE]],
6097
- [
6098
- // Realme
6099
- /\b(rmx[12]\d{3})(?: bui|;|\))/i
6100
- ],
6101
- [MODEL, [VENDOR, "Realme"], [TYPE, MOBILE]],
6102
- [
6103
- // Motorola
6104
- /\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
6105
- /\bmot(?:orola)?[- ](\w*)/i,
6106
- /((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i
6107
- ],
6108
- [MODEL, [VENDOR, MOTOROLA], [TYPE, MOBILE]],
6109
- [
6110
- /\b(mz60\d|xoom[2 ]{0,2}) build\//i
6111
- ],
6112
- [MODEL, [VENDOR, MOTOROLA], [TYPE, TABLET]],
6113
- [
6114
- // LG
6115
- /((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i
6116
- ],
6117
- [MODEL, [VENDOR, LG], [TYPE, TABLET]],
6118
- [
6119
- /(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
6120
- /\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,
6121
- /\blg-?([\d\w]+) bui/i
6122
- ],
6123
- [MODEL, [VENDOR, LG], [TYPE, MOBILE]],
6124
- [
6125
- // Lenovo
6126
- /(ideatab[-\w ]+)/i,
6127
- /lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i
6128
- ],
6129
- [MODEL, [VENDOR, "Lenovo"], [TYPE, TABLET]],
6130
- [
6131
- // Nokia
6132
- /(?:maemo|nokia).*(n900|lumia \d+)/i,
6133
- /nokia[-_ ]?([-\w\.]*)/i
6134
- ],
6135
- [[MODEL, /_/g, " "], [VENDOR, "Nokia"], [TYPE, MOBILE]],
6136
- [
6137
- // Google
6138
- /(pixel c)\b/i
6139
- // Google Pixel C
6140
- ],
6141
- [MODEL, [VENDOR, GOOGLE], [TYPE, TABLET]],
6142
- [
6143
- /droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i
6144
- // Google Pixel
6145
- ],
6146
- [MODEL, [VENDOR, GOOGLE], [TYPE, MOBILE]],
6147
- [
6148
- // Sony
6149
- /droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i
6150
- ],
6151
- [MODEL, [VENDOR, SONY], [TYPE, MOBILE]],
6152
- [
6153
- /sony tablet [ps]/i,
6154
- /\b(?:sony)?sgp\w+(?: bui|\))/i
6155
- ],
6156
- [[MODEL, "Xperia Tablet"], [VENDOR, SONY], [TYPE, TABLET]],
6157
- [
6158
- // OnePlus
6159
- / (kb2005|in20[12]5|be20[12][59])\b/i,
6160
- /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i
6161
- ],
6162
- [MODEL, [VENDOR, "OnePlus"], [TYPE, MOBILE]],
6163
- [
6164
- // Amazon
6165
- /(alexa)webm/i,
6166
- /(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i,
6167
- // Kindle Fire without Silk / Echo Show
6168
- /(kf[a-z]+)( bui|\)).+silk\//i
6169
- // Kindle Fire HD
6170
- ],
6171
- [MODEL, [VENDOR, AMAZON], [TYPE, TABLET]],
6172
- [
6173
- /((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i
6174
- // Fire Phone
6175
- ],
6176
- [[MODEL, /(.+)/g, "Fire Phone $1"], [VENDOR, AMAZON], [TYPE, MOBILE]],
6177
- [
6178
- // BlackBerry
6179
- /(playbook);[-\w\),; ]+(rim)/i
6180
- // BlackBerry PlayBook
6181
- ],
6182
- [MODEL, VENDOR, [TYPE, TABLET]],
6183
- [
6184
- /\b((?:bb[a-f]|st[hv])100-\d)/i,
6185
- /\(bb10; (\w+)/i
6186
- // BlackBerry 10
6187
- ],
6188
- [MODEL, [VENDOR, BLACKBERRY], [TYPE, MOBILE]],
6189
- [
6190
- // Asus
6191
- /(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
6192
- ],
6193
- [MODEL, [VENDOR, ASUS], [TYPE, TABLET]],
6194
- [
6195
- / (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
6196
- ],
6197
- [MODEL, [VENDOR, ASUS], [TYPE, MOBILE]],
6198
- [
6199
- // HTC
6200
- /(nexus 9)/i
6201
- // HTC Nexus 9
6202
- ],
6203
- [MODEL, [VENDOR, "HTC"], [TYPE, TABLET]],
6204
- [
6205
- /(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,
6206
- // HTC
6207
- // ZTE
6208
- /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,
6209
- /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i
6210
- // Alcatel/GeeksPhone/Nexian/Panasonic/Sony
6211
- ],
6212
- [VENDOR, [MODEL, /_/g, " "], [TYPE, MOBILE]],
6213
- [
6214
- // Acer
6215
- /droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
6216
- ],
6217
- [MODEL, [VENDOR, "Acer"], [TYPE, TABLET]],
6218
- [
6219
- // Meizu
6220
- /droid.+; (m[1-5] note) bui/i,
6221
- /\bmz-([-\w]{2,})/i
6222
- ],
6223
- [MODEL, [VENDOR, "Meizu"], [TYPE, MOBILE]],
6224
- [
6225
- // MIXED
6226
- /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i,
6227
- // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron
6228
- /(hp) ([\w ]+\w)/i,
6229
- // HP iPAQ
6230
- /(asus)-?(\w+)/i,
6231
- // Asus
6232
- /(microsoft); (lumia[\w ]+)/i,
6233
- // Microsoft Lumia
6234
- /(lenovo)[-_ ]?([-\w]+)/i,
6235
- // Lenovo
6236
- /(jolla)/i,
6237
- // Jolla
6238
- /(oppo) ?([\w ]+) bui/i
6239
- // OPPO
6240
- ],
6241
- [VENDOR, MODEL, [TYPE, MOBILE]],
6242
- [
6243
- /(kobo)\s(ereader|touch)/i,
6244
- // Kobo
6245
- /(archos) (gamepad2?)/i,
6246
- // Archos
6247
- /(hp).+(touchpad(?!.+tablet)|tablet)/i,
6248
- // HP TouchPad
6249
- /(kindle)\/([\w\.]+)/i,
6250
- // Kindle
6251
- /(nook)[\w ]+build\/(\w+)/i,
6252
- // Nook
6253
- /(dell) (strea[kpr\d ]*[\dko])/i,
6254
- // Dell Streak
6255
- /(le[- ]+pan)[- ]+(\w{1,9}) bui/i,
6256
- // Le Pan Tablets
6257
- /(trinity)[- ]*(t\d{3}) bui/i,
6258
- // Trinity Tablets
6259
- /(gigaset)[- ]+(q\w{1,9}) bui/i,
6260
- // Gigaset Tablets
6261
- /(vodafone) ([\w ]+)(?:\)| bui)/i
6262
- // Vodafone
6263
- ],
6264
- [VENDOR, MODEL, [TYPE, TABLET]],
6265
- [
6266
- /(surface duo)/i
6267
- // Surface Duo
6268
- ],
6269
- [MODEL, [VENDOR, MICROSOFT], [TYPE, TABLET]],
6270
- [
6271
- /droid [\d\.]+; (fp\du?)(?: b|\))/i
6272
- // Fairphone
6273
- ],
6274
- [MODEL, [VENDOR, "Fairphone"], [TYPE, MOBILE]],
6275
- [
6276
- /(u304aa)/i
6277
- // AT&T
6278
- ],
6279
- [MODEL, [VENDOR, "AT&T"], [TYPE, MOBILE]],
6280
- [
6281
- /\bsie-(\w*)/i
6282
- // Siemens
6283
- ],
6284
- [MODEL, [VENDOR, "Siemens"], [TYPE, MOBILE]],
6285
- [
6286
- /\b(rct\w+) b/i
6287
- // RCA Tablets
6288
- ],
6289
- [MODEL, [VENDOR, "RCA"], [TYPE, TABLET]],
6290
- [
6291
- /\b(venue[\d ]{2,7}) b/i
6292
- // Dell Venue Tablets
6293
- ],
6294
- [MODEL, [VENDOR, "Dell"], [TYPE, TABLET]],
6295
- [
6296
- /\b(q(?:mv|ta)\w+) b/i
6297
- // Verizon Tablet
6298
- ],
6299
- [MODEL, [VENDOR, "Verizon"], [TYPE, TABLET]],
6300
- [
6301
- /\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i
6302
- // Barnes & Noble Tablet
6303
- ],
6304
- [MODEL, [VENDOR, "Barnes & Noble"], [TYPE, TABLET]],
6305
- [
6306
- /\b(tm\d{3}\w+) b/i
6307
- ],
6308
- [MODEL, [VENDOR, "NuVision"], [TYPE, TABLET]],
6309
- [
6310
- /\b(k88) b/i
6311
- // ZTE K Series Tablet
6312
- ],
6313
- [MODEL, [VENDOR, "ZTE"], [TYPE, TABLET]],
6314
- [
6315
- /\b(nx\d{3}j) b/i
6316
- // ZTE Nubia
6317
- ],
6318
- [MODEL, [VENDOR, "ZTE"], [TYPE, MOBILE]],
6319
- [
6320
- /\b(gen\d{3}) b.+49h/i
6321
- // Swiss GEN Mobile
6322
- ],
6323
- [MODEL, [VENDOR, "Swiss"], [TYPE, MOBILE]],
6324
- [
6325
- /\b(zur\d{3}) b/i
6326
- // Swiss ZUR Tablet
6327
- ],
6328
- [MODEL, [VENDOR, "Swiss"], [TYPE, TABLET]],
6329
- [
6330
- /\b((zeki)?tb.*\b) b/i
6331
- // Zeki Tablets
6332
- ],
6333
- [MODEL, [VENDOR, "Zeki"], [TYPE, TABLET]],
6334
- [
6335
- /\b([yr]\d{2}) b/i,
6336
- /\b(dragon[- ]+touch |dt)(\w{5}) b/i
6337
- // Dragon Touch Tablet
6338
- ],
6339
- [[VENDOR, "Dragon Touch"], MODEL, [TYPE, TABLET]],
6340
- [
6341
- /\b(ns-?\w{0,9}) b/i
6342
- // Insignia Tablets
6343
- ],
6344
- [MODEL, [VENDOR, "Insignia"], [TYPE, TABLET]],
6345
- [
6346
- /\b((nxa|next)-?\w{0,9}) b/i
6347
- // NextBook Tablets
6348
- ],
6349
- [MODEL, [VENDOR, "NextBook"], [TYPE, TABLET]],
6350
- [
6351
- /\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i
6352
- // Voice Xtreme Phones
6353
- ],
6354
- [[VENDOR, "Voice"], MODEL, [TYPE, MOBILE]],
6355
- [
6356
- /\b(lvtel\-)?(v1[12]) b/i
6357
- // LvTel Phones
6358
- ],
6359
- [[VENDOR, "LvTel"], MODEL, [TYPE, MOBILE]],
6360
- [
6361
- /\b(ph-1) /i
6362
- // Essential PH-1
6363
- ],
6364
- [MODEL, [VENDOR, "Essential"], [TYPE, MOBILE]],
6365
- [
6366
- /\b(v(100md|700na|7011|917g).*\b) b/i
6367
- // Envizen Tablets
6368
- ],
6369
- [MODEL, [VENDOR, "Envizen"], [TYPE, TABLET]],
6370
- [
6371
- /\b(trio[-\w\. ]+) b/i
6372
- // MachSpeed Tablets
6373
- ],
6374
- [MODEL, [VENDOR, "MachSpeed"], [TYPE, TABLET]],
6375
- [
6376
- /\btu_(1491) b/i
6377
- // Rotor Tablets
6378
- ],
6379
- [MODEL, [VENDOR, "Rotor"], [TYPE, TABLET]],
6380
- [
6381
- /(shield[\w ]+) b/i
6382
- // Nvidia Shield Tablets
6383
- ],
6384
- [MODEL, [VENDOR, "Nvidia"], [TYPE, TABLET]],
6385
- [
6386
- /(sprint) (\w+)/i
6387
- // Sprint Phones
6388
- ],
6389
- [VENDOR, MODEL, [TYPE, MOBILE]],
6390
- [
6391
- /(kin\.[onetw]{3})/i
6392
- // Microsoft Kin
6393
- ],
6394
- [[MODEL, /\./g, " "], [VENDOR, MICROSOFT], [TYPE, MOBILE]],
6395
- [
6396
- /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i
6397
- // Zebra
6398
- ],
6399
- [MODEL, [VENDOR, ZEBRA], [TYPE, TABLET]],
6400
- [
6401
- /droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
6402
- ],
6403
- [MODEL, [VENDOR, ZEBRA], [TYPE, MOBILE]],
6404
- [
6405
- ///////////////////
6406
- // SMARTTVS
6407
- ///////////////////
6408
- /smart-tv.+(samsung)/i
6409
- // Samsung
6410
- ],
6411
- [VENDOR, [TYPE, SMARTTV]],
6412
- [
6413
- /hbbtv.+maple;(\d+)/i
6414
- ],
6415
- [[MODEL, /^/, "SmartTV"], [VENDOR, SAMSUNG], [TYPE, SMARTTV]],
6416
- [
6417
- /(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i
6418
- // LG SmartTV
6419
- ],
6420
- [[VENDOR, LG], [TYPE, SMARTTV]],
6421
- [
6422
- /(apple) ?tv/i
6423
- // Apple TV
6424
- ],
6425
- [VENDOR, [MODEL, APPLE + " TV"], [TYPE, SMARTTV]],
6426
- [
6427
- /crkey/i
6428
- // Google Chromecast
6429
- ],
6430
- [[MODEL, CHROME + "cast"], [VENDOR, GOOGLE], [TYPE, SMARTTV]],
6431
- [
6432
- /droid.+aft(\w)( bui|\))/i
6433
- // Fire TV
6434
- ],
6435
- [MODEL, [VENDOR, AMAZON], [TYPE, SMARTTV]],
6436
- [
6437
- /\(dtv[\);].+(aquos)/i,
6438
- /(aquos-tv[\w ]+)\)/i
6439
- // Sharp
6440
- ],
6441
- [MODEL, [VENDOR, SHARP], [TYPE, SMARTTV]],
6442
- [
6443
- /(bravia[\w ]+)( bui|\))/i
6444
- // Sony
6445
- ],
6446
- [MODEL, [VENDOR, SONY], [TYPE, SMARTTV]],
6447
- [
6448
- /(mitv-\w{5}) bui/i
6449
- // Xiaomi
6450
- ],
6451
- [MODEL, [VENDOR, XIAOMI], [TYPE, SMARTTV]],
6452
- [
6453
- /Hbbtv.*(technisat) (.*);/i
6454
- // TechniSAT
6455
- ],
6456
- [VENDOR, MODEL, [TYPE, SMARTTV]],
6457
- [
6458
- /\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,
6459
- // Roku
6460
- /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i
6461
- // HbbTV devices
6462
- ],
6463
- [[VENDOR, trim], [MODEL, trim], [TYPE, SMARTTV]],
6464
- [
6465
- /\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i
6466
- // SmartTV from Unidentified Vendors
6467
- ],
6468
- [[TYPE, SMARTTV]],
6469
- [
6470
- ///////////////////
6471
- // CONSOLES
6472
- ///////////////////
6473
- /(ouya)/i,
6474
- // Ouya
6475
- /(nintendo) ([wids3utch]+)/i
6476
- // Nintendo
6477
- ],
6478
- [VENDOR, MODEL, [TYPE, CONSOLE]],
6479
- [
6480
- /droid.+; (shield) bui/i
6481
- // Nvidia
6482
- ],
6483
- [MODEL, [VENDOR, "Nvidia"], [TYPE, CONSOLE]],
6484
- [
6485
- /(playstation [345portablevi]+)/i
6486
- // Playstation
6487
- ],
6488
- [MODEL, [VENDOR, SONY], [TYPE, CONSOLE]],
6489
- [
6490
- /\b(xbox(?: one)?(?!; xbox))[\); ]/i
6491
- // Microsoft Xbox
6492
- ],
6493
- [MODEL, [VENDOR, MICROSOFT], [TYPE, CONSOLE]],
6494
- [
6495
- ///////////////////
6496
- // WEARABLES
6497
- ///////////////////
6498
- /((pebble))app/i
6499
- // Pebble
6500
- ],
6501
- [VENDOR, MODEL, [TYPE, WEARABLE]],
6502
- [
6503
- /(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i
6504
- // Apple Watch
6505
- ],
6506
- [MODEL, [VENDOR, APPLE], [TYPE, WEARABLE]],
6507
- [
6508
- /droid.+; (glass) \d/i
6509
- // Google Glass
6510
- ],
6511
- [MODEL, [VENDOR, GOOGLE], [TYPE, WEARABLE]],
6512
- [
6513
- /droid.+; (wt63?0{2,3})\)/i
6514
- ],
6515
- [MODEL, [VENDOR, ZEBRA], [TYPE, WEARABLE]],
6516
- [
6517
- /(quest( 2| pro)?)/i
6518
- // Oculus Quest
6519
- ],
6520
- [MODEL, [VENDOR, FACEBOOK], [TYPE, WEARABLE]],
6521
- [
6522
- ///////////////////
6523
- // EMBEDDED
6524
- ///////////////////
6525
- /(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i
6526
- // Tesla
6527
- ],
6528
- [VENDOR, [TYPE, EMBEDDED]],
6529
- [
6530
- /(aeobc)\b/i
6531
- // Echo Dot
6532
- ],
6533
- [MODEL, [VENDOR, AMAZON], [TYPE, EMBEDDED]],
6534
- [
6535
- ////////////////////
6536
- // MIXED (GENERIC)
6537
- ///////////////////
6538
- /droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i
6539
- // Android Phones from Unidentified Vendors
6540
- ],
6541
- [MODEL, [TYPE, MOBILE]],
6542
- [
6543
- /droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i
6544
- // Android Tablets from Unidentified Vendors
6545
- ],
6546
- [MODEL, [TYPE, TABLET]],
6547
- [
6548
- /\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i
6549
- // Unidentifiable Tablet
6550
- ],
6551
- [[TYPE, TABLET]],
6552
- [
6553
- /(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i
6554
- // Unidentifiable Mobile
6555
- ],
6556
- [[TYPE, MOBILE]],
6557
- [
6558
- /(android[-\w\. ]{0,9});.+buil/i
6559
- // Generic Android Device
6560
- ],
6561
- [MODEL, [VENDOR, "Generic"]]
6562
- ],
6563
- engine: [
6564
- [
6565
- /windows.+ edge\/([\w\.]+)/i
6566
- // EdgeHTML
6567
- ],
6568
- [VERSION, [NAME, EDGE + "HTML"]],
6569
- [
6570
- /webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i
6571
- // Blink
6572
- ],
6573
- [VERSION, [NAME, "Blink"]],
6574
- [
6575
- /(presto)\/([\w\.]+)/i,
6576
- // Presto
6577
- /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,
6578
- // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna
6579
- /ekioh(flow)\/([\w\.]+)/i,
6580
- // Flow
6581
- /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,
6582
- // KHTML/Tasman/Links
6583
- /(icab)[\/ ]([23]\.[\d\.]+)/i,
6584
- // iCab
6585
- /\b(libweb)/i
6586
- ],
6587
- [NAME, VERSION],
6588
- [
6589
- /rv\:([\w\.]{1,9})\b.+(gecko)/i
6590
- // Gecko
6591
- ],
6592
- [VERSION, NAME]
6593
- ],
6594
- os: [
6595
- [
6596
- // Windows
6597
- /microsoft (windows) (vista|xp)/i
6598
- // Windows (iTunes)
6599
- ],
6600
- [NAME, VERSION],
6601
- [
6602
- /(windows) nt 6\.2; (arm)/i,
6603
- // Windows RT
6604
- /(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i,
6605
- // Windows Phone
6606
- /(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i
6607
- ],
6608
- [NAME, [VERSION, strMapper, windowsVersionMap]],
6609
- [
6610
- /(win(?=3|9|n)|win 9x )([nt\d\.]+)/i
6611
- ],
6612
- [[NAME, "Windows"], [VERSION, strMapper, windowsVersionMap]],
6613
- [
6614
- // iOS/macOS
6615
- /ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,
6616
- // iOS
6617
- /ios;fbsv\/([\d\.]+)/i,
6618
- /cfnetwork\/.+darwin/i
6619
- ],
6620
- [[VERSION, /_/g, "."], [NAME, "iOS"]],
6621
- [
6622
- /(mac os x) ?([\w\. ]*)/i,
6623
- /(macintosh|mac_powerpc\b)(?!.+haiku)/i
6624
- // Mac OS
6625
- ],
6626
- [[NAME, MAC_OS], [VERSION, /_/g, "."]],
6627
- [
6628
- // Mobile OSes
6629
- /droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i
6630
- // Android-x86/HarmonyOS
6631
- ],
6632
- [VERSION, NAME],
6633
- [
6634
- // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS
6635
- /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,
6636
- /(blackberry)\w*\/([\w\.]*)/i,
6637
- // Blackberry
6638
- /(tizen|kaios)[\/ ]([\w\.]+)/i,
6639
- // Tizen/KaiOS
6640
- /\((series40);/i
6641
- // Series 40
6642
- ],
6643
- [NAME, VERSION],
6644
- [
6645
- /\(bb(10);/i
6646
- // BlackBerry 10
6647
- ],
6648
- [VERSION, [NAME, BLACKBERRY]],
6649
- [
6650
- /(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i
6651
- // Symbian
6652
- ],
6653
- [VERSION, [NAME, "Symbian"]],
6654
- [
6655
- /mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i
6656
- // Firefox OS
6657
- ],
6658
- [VERSION, [NAME, FIREFOX + " OS"]],
6659
- [
6660
- /web0s;.+rt(tv)/i,
6661
- /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i
6662
- // WebOS
6663
- ],
6664
- [VERSION, [NAME, "webOS"]],
6665
- [
6666
- /watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i
6667
- // watchOS
6668
- ],
6669
- [VERSION, [NAME, "watchOS"]],
6670
- [
6671
- // Google Chromecast
6672
- /crkey\/([\d\.]+)/i
6673
- // Google Chromecast
6674
- ],
6675
- [VERSION, [NAME, CHROME + "cast"]],
6676
- [
6677
- /(cros) [\w]+(?:\)| ([\w\.]+)\b)/i
6678
- // Chromium OS
6679
- ],
6680
- [[NAME, CHROMIUM_OS], VERSION],
6681
- [
6682
- // Smart TVs
6683
- /panasonic;(viera)/i,
6684
- // Panasonic Viera
6685
- /(netrange)mmh/i,
6686
- // Netrange
6687
- /(nettv)\/(\d+\.[\w\.]+)/i,
6688
- // NetTV
6689
- // Console
6690
- /(nintendo|playstation) ([wids345portablevuch]+)/i,
6691
- // Nintendo/Playstation
6692
- /(xbox); +xbox ([^\);]+)/i,
6693
- // Microsoft Xbox (360, One, X, S, Series X, Series S)
6694
- // Other
6695
- /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,
6696
- // Joli/Palm
6697
- /(mint)[\/\(\) ]?(\w*)/i,
6698
- // Mint
6699
- /(mageia|vectorlinux)[; ]/i,
6700
- // Mageia/VectorLinux
6701
- /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,
6702
- // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire
6703
- /(hurd|linux) ?([\w\.]*)/i,
6704
- // Hurd/Linux
6705
- /(gnu) ?([\w\.]*)/i,
6706
- // GNU
6707
- /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,
6708
- // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly
6709
- /(haiku) (\w+)/i
6710
- // Haiku
6711
- ],
6712
- [NAME, VERSION],
6713
- [
6714
- /(sunos) ?([\w\.\d]*)/i
6715
- // Solaris
6716
- ],
6717
- [[NAME, "Solaris"], VERSION],
6718
- [
6719
- /((?:open)?solaris)[-\/ ]?([\w\.]*)/i,
6720
- // Solaris
6721
- /(aix) ((\d)(?=\.|\)| )[\w\.])*/i,
6722
- // AIX
6723
- /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,
6724
- // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX/SerenityOS
6725
- /(unix) ?([\w\.]*)/i
6726
- // UNIX
6727
- ],
6728
- [NAME, VERSION]
6729
- ]
6730
- };
6731
- var UAParser = function(ua, extensions) {
6732
- if (typeof ua === OBJ_TYPE) {
6733
- extensions = ua;
6734
- ua = undefined2;
6735
- }
6736
- if (!(this instanceof UAParser)) {
6737
- return new UAParser(ua, extensions).getResult();
6738
- }
6739
- var _navigator = typeof window2 !== UNDEF_TYPE && window2.navigator ? window2.navigator : undefined2;
6740
- var _ua = ua || (_navigator && _navigator.userAgent ? _navigator.userAgent : EMPTY);
6741
- var _uach = _navigator && _navigator.userAgentData ? _navigator.userAgentData : undefined2;
6742
- var _rgxmap = extensions ? extend(regexes, extensions) : regexes;
6743
- var _isSelfNav = _navigator && _navigator.userAgent == _ua;
6744
- this.getBrowser = function() {
6745
- var _browser = {};
6746
- _browser[NAME] = undefined2;
6747
- _browser[VERSION] = undefined2;
6748
- rgxMapper.call(_browser, _ua, _rgxmap.browser);
6749
- _browser[MAJOR] = majorize(_browser[VERSION]);
6750
- if (_isSelfNav && _navigator && _navigator.brave && typeof _navigator.brave.isBrave == FUNC_TYPE) {
6751
- _browser[NAME] = "Brave";
6752
- }
6753
- return _browser;
6754
- };
6755
- this.getCPU = function() {
6756
- var _cpu = {};
6757
- _cpu[ARCHITECTURE] = undefined2;
6758
- rgxMapper.call(_cpu, _ua, _rgxmap.cpu);
6759
- return _cpu;
6760
- };
6761
- this.getDevice = function() {
6762
- var _device = {};
6763
- _device[VENDOR] = undefined2;
6764
- _device[MODEL] = undefined2;
6765
- _device[TYPE] = undefined2;
6766
- rgxMapper.call(_device, _ua, _rgxmap.device);
6767
- if (_isSelfNav && !_device[TYPE] && _uach && _uach.mobile) {
6768
- _device[TYPE] = MOBILE;
6769
- }
6770
- if (_isSelfNav && _device[MODEL] == "Macintosh" && _navigator && typeof _navigator.standalone !== UNDEF_TYPE && _navigator.maxTouchPoints && _navigator.maxTouchPoints > 2) {
6771
- _device[MODEL] = "iPad";
6772
- _device[TYPE] = TABLET;
6773
- }
6774
- return _device;
6775
- };
6776
- this.getEngine = function() {
6777
- var _engine = {};
6778
- _engine[NAME] = undefined2;
6779
- _engine[VERSION] = undefined2;
6780
- rgxMapper.call(_engine, _ua, _rgxmap.engine);
6781
- return _engine;
6782
- };
6783
- this.getOS = function() {
6784
- var _os = {};
6785
- _os[NAME] = undefined2;
6786
- _os[VERSION] = undefined2;
6787
- rgxMapper.call(_os, _ua, _rgxmap.os);
6788
- if (_isSelfNav && !_os[NAME] && _uach && _uach.platform != "Unknown") {
6789
- _os[NAME] = _uach.platform.replace(/chrome os/i, CHROMIUM_OS).replace(/macos/i, MAC_OS);
6790
- }
6791
- return _os;
6792
- };
6793
- this.getResult = function() {
6794
- return {
6795
- ua: this.getUA(),
6796
- browser: this.getBrowser(),
6797
- engine: this.getEngine(),
6798
- os: this.getOS(),
6799
- device: this.getDevice(),
6800
- cpu: this.getCPU()
6801
- };
6802
- };
6803
- this.getUA = function() {
6804
- return _ua;
6805
- };
6806
- this.setUA = function(ua2) {
6807
- _ua = typeof ua2 === STR_TYPE && ua2.length > UA_MAX_LENGTH ? trim(ua2, UA_MAX_LENGTH) : ua2;
6808
- return this;
6809
- };
6810
- this.setUA(_ua);
6811
- return this;
6812
- };
6813
- UAParser.VERSION = LIBVERSION;
6814
- UAParser.BROWSER = enumerize([NAME, VERSION, MAJOR]);
6815
- UAParser.CPU = enumerize([ARCHITECTURE]);
6816
- UAParser.DEVICE = enumerize([MODEL, VENDOR, TYPE, CONSOLE, MOBILE, SMARTTV, TABLET, WEARABLE, EMBEDDED]);
6817
- UAParser.ENGINE = UAParser.OS = enumerize([NAME, VERSION]);
6818
- if (typeof exports !== UNDEF_TYPE) {
6819
- if (typeof module2 !== UNDEF_TYPE && module2.exports) {
6820
- exports = module2.exports = UAParser;
6821
- }
6822
- exports.UAParser = UAParser;
6823
- } else {
6824
- if (typeof define === FUNC_TYPE && define.amd) {
6825
- define(function() {
6826
- return UAParser;
6827
- });
6828
- } else if (typeof window2 !== UNDEF_TYPE) {
6829
- window2.UAParser = UAParser;
6830
- }
6831
- }
6832
- var $ = typeof window2 !== UNDEF_TYPE && (window2.jQuery || window2.Zepto);
6833
- if ($ && !$.ua) {
6834
- var parser = new UAParser();
6835
- $.ua = parser.getResult();
6836
- $.ua.get = function() {
6837
- return parser.getUA();
6838
- };
6839
- $.ua.set = function(ua) {
6840
- parser.setUA(ua);
6841
- var result = parser.getResult();
6842
- for (var prop in result) {
6843
- $.ua[prop] = result[prop];
6844
- }
6845
- };
6846
- }
6847
- })(typeof window === "object" ? window : exports);
6848
- }
6849
- });
6850
-
6851
5597
  // ../../node_modules/lodash.isequal/index.js
6852
5598
  var require_lodash2 = __commonJS({
6853
5599
  "../../node_modules/lodash.isequal/index.js"(exports, module2) {
@@ -8750,13 +7496,13 @@ var require_writer = __commonJS({
8750
7496
  var i = 1;
8751
7497
  var args = arguments;
8752
7498
  var len = args.length;
8753
- return formatStr.replace(formatRegExp, function(x) {
7499
+ return formatStr.replace(formatRegExp, function(x2) {
8754
7500
  if (i >= len) {
8755
- return x;
7501
+ return x2;
8756
7502
  }
8757
7503
  var arg = args[i];
8758
7504
  i += 1;
8759
- switch (x) {
7505
+ switch (x2) {
8760
7506
  case "%%":
8761
7507
  return "%";
8762
7508
  case "%s":
@@ -8886,7 +7632,7 @@ var require_react_is_production_min = __commonJS({
8886
7632
  var t = b2 ? Symbol.for("react.lazy") : 60116;
8887
7633
  var v = b2 ? Symbol.for("react.block") : 60121;
8888
7634
  var w = b2 ? Symbol.for("react.fundamental") : 60117;
8889
- var x = b2 ? Symbol.for("react.responder") : 60118;
7635
+ var x2 = b2 ? Symbol.for("react.responder") : 60118;
8890
7636
  var y2 = b2 ? Symbol.for("react.scope") : 60119;
8891
7637
  function z2(a2) {
8892
7638
  if ("object" === typeof a2 && null !== a2) {
@@ -8972,7 +7718,7 @@ var require_react_is_production_min = __commonJS({
8972
7718
  return z2(a2) === p;
8973
7719
  };
8974
7720
  exports.isValidElementType = function(a2) {
8975
- return "string" === typeof a2 || "function" === typeof a2 || a2 === e || a2 === m2 || a2 === g || a2 === f || a2 === p || a2 === q || "object" === typeof a2 && null !== a2 && (a2.$$typeof === t || a2.$$typeof === r || a2.$$typeof === h || a2.$$typeof === k2 || a2.$$typeof === n || a2.$$typeof === w || a2.$$typeof === x || a2.$$typeof === y2 || a2.$$typeof === v);
7721
+ return "string" === typeof a2 || "function" === typeof a2 || a2 === e || a2 === m2 || a2 === g || a2 === f || a2 === p || a2 === q || "object" === typeof a2 && null !== a2 && (a2.$$typeof === t || a2.$$typeof === r || a2.$$typeof === h || a2.$$typeof === k2 || a2.$$typeof === n || a2.$$typeof === w || a2.$$typeof === x2 || a2.$$typeof === y2 || a2.$$typeof === v);
8976
7722
  };
8977
7723
  exports.typeOf = z2;
8978
7724
  }
@@ -9246,7 +7992,7 @@ var require_checkPropTypes = __commonJS({
9246
7992
  if (define_process_env_default.NODE_ENV !== "production") {
9247
7993
  ReactPropTypesSecret = require_ReactPropTypesSecret();
9248
7994
  loggedTypeFailures = {};
9249
- has = require_has();
7995
+ has2 = require_has();
9250
7996
  printWarning = function(text) {
9251
7997
  var message = "Warning: " + text;
9252
7998
  if (typeof console !== "undefined") {
@@ -9254,17 +8000,17 @@ var require_checkPropTypes = __commonJS({
9254
8000
  }
9255
8001
  try {
9256
8002
  throw new Error(message);
9257
- } catch (x) {
8003
+ } catch (x2) {
9258
8004
  }
9259
8005
  };
9260
8006
  }
9261
8007
  var ReactPropTypesSecret;
9262
8008
  var loggedTypeFailures;
9263
- var has;
8009
+ var has2;
9264
8010
  function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
9265
8011
  if (define_process_env_default.NODE_ENV !== "production") {
9266
8012
  for (var typeSpecName in typeSpecs) {
9267
- if (has(typeSpecs, typeSpecName)) {
8013
+ if (has2(typeSpecs, typeSpecName)) {
9268
8014
  var error;
9269
8015
  try {
9270
8016
  if (typeof typeSpecs[typeSpecName] !== "function") {
@@ -9311,7 +8057,7 @@ var require_factoryWithTypeCheckers = __commonJS({
9311
8057
  var ReactIs = require_react_is();
9312
8058
  var assign = require_object_assign();
9313
8059
  var ReactPropTypesSecret = require_ReactPropTypesSecret();
9314
- var has = require_has();
8060
+ var has2 = require_has();
9315
8061
  var checkPropTypes = require_checkPropTypes();
9316
8062
  var printWarning = function() {
9317
8063
  };
@@ -9323,7 +8069,7 @@ var require_factoryWithTypeCheckers = __commonJS({
9323
8069
  }
9324
8070
  try {
9325
8071
  throw new Error(message);
9326
- } catch (x) {
8072
+ } catch (x2) {
9327
8073
  }
9328
8074
  };
9329
8075
  }
@@ -9361,11 +8107,11 @@ var require_factoryWithTypeCheckers = __commonJS({
9361
8107
  shape: createShapeTypeChecker,
9362
8108
  exact: createStrictShapeTypeChecker
9363
8109
  };
9364
- function is(x, y2) {
9365
- if (x === y2) {
9366
- return x !== 0 || 1 / x === 1 / y2;
8110
+ function is2(x2, y2) {
8111
+ if (x2 === y2) {
8112
+ return x2 !== 0 || 1 / x2 === 1 / y2;
9367
8113
  } else {
9368
- return x !== x && y2 !== y2;
8114
+ return x2 !== x2 && y2 !== y2;
9369
8115
  }
9370
8116
  }
9371
8117
  function PropTypeError(message, data3) {
@@ -9504,7 +8250,7 @@ var require_factoryWithTypeCheckers = __commonJS({
9504
8250
  function validate(props, propName, componentName, location, propFullName) {
9505
8251
  var propValue = props[propName];
9506
8252
  for (var i = 0; i < expectedValues.length; i++) {
9507
- if (is(propValue, expectedValues[i])) {
8253
+ if (is2(propValue, expectedValues[i])) {
9508
8254
  return null;
9509
8255
  }
9510
8256
  }
@@ -9530,7 +8276,7 @@ var require_factoryWithTypeCheckers = __commonJS({
9530
8276
  return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected an object."));
9531
8277
  }
9532
8278
  for (var key in propValue) {
9533
- if (has(propValue, key)) {
8279
+ if (has2(propValue, key)) {
9534
8280
  var error = typeChecker(propValue, key, componentName, location, propFullName + "." + key, ReactPropTypesSecret);
9535
8281
  if (error instanceof Error) {
9536
8282
  return error;
@@ -9563,7 +8309,7 @@ var require_factoryWithTypeCheckers = __commonJS({
9563
8309
  if (checkerResult == null) {
9564
8310
  return null;
9565
8311
  }
9566
- if (checkerResult.data && has(checkerResult.data, "expectedType")) {
8312
+ if (checkerResult.data && has2(checkerResult.data, "expectedType")) {
9567
8313
  expectedTypes.push(checkerResult.data.expectedType);
9568
8314
  }
9569
8315
  }
@@ -9617,7 +8363,7 @@ var require_factoryWithTypeCheckers = __commonJS({
9617
8363
  var allKeys = assign({}, props[propName], shapeTypes);
9618
8364
  for (var key in allKeys) {
9619
8365
  var checker = shapeTypes[key];
9620
- if (has(shapeTypes, key) && typeof checker !== "function") {
8366
+ if (has2(shapeTypes, key) && typeof checker !== "function") {
9621
8367
  return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
9622
8368
  }
9623
8369
  if (!checker) {
@@ -19208,8 +17954,1855 @@ function createSelectorCreator(memoize) {
19208
17954
  }
19209
17955
  var createSelector = createSelectorCreator(defaultMemoize);
19210
17956
 
17957
+ // ../../node_modules/ua-parser-js/src/main/ua-parser.mjs
17958
+ init_define_process_env();
17959
+ var LIBVERSION = "2.0.6";
17960
+ var UA_MAX_LENGTH = 500;
17961
+ var USER_AGENT = "user-agent";
17962
+ var EMPTY = "";
17963
+ var UNKNOWN = "?";
17964
+ var TYPEOF = {
17965
+ FUNCTION: "function",
17966
+ OBJECT: "object",
17967
+ STRING: "string",
17968
+ UNDEFINED: "undefined"
17969
+ };
17970
+ var BROWSER = "browser";
17971
+ var CPU = "cpu";
17972
+ var DEVICE = "device";
17973
+ var ENGINE = "engine";
17974
+ var OS = "os";
17975
+ var RESULT = "result";
17976
+ var NAME = "name";
17977
+ var TYPE = "type";
17978
+ var VENDOR = "vendor";
17979
+ var VERSION = "version";
17980
+ var ARCHITECTURE = "architecture";
17981
+ var MAJOR = "major";
17982
+ var MODEL = "model";
17983
+ var CONSOLE = "console";
17984
+ var MOBILE = "mobile";
17985
+ var TABLET = "tablet";
17986
+ var SMARTTV = "smarttv";
17987
+ var WEARABLE = "wearable";
17988
+ var XR = "xr";
17989
+ var EMBEDDED = "embedded";
17990
+ var INAPP = "inapp";
17991
+ var BRANDS = "brands";
17992
+ var FORMFACTORS = "formFactors";
17993
+ var FULLVERLIST = "fullVersionList";
17994
+ var PLATFORM = "platform";
17995
+ var PLATFORMVER = "platformVersion";
17996
+ var BITNESS = "bitness";
17997
+ var CH = "sec-ch-ua";
17998
+ var CH_FULL_VER_LIST = CH + "-full-version-list";
17999
+ var CH_ARCH = CH + "-arch";
18000
+ var CH_BITNESS = CH + "-" + BITNESS;
18001
+ var CH_FORM_FACTORS = CH + "-form-factors";
18002
+ var CH_MOBILE = CH + "-" + MOBILE;
18003
+ var CH_MODEL = CH + "-" + MODEL;
18004
+ var CH_PLATFORM = CH + "-" + PLATFORM;
18005
+ var CH_PLATFORM_VER = CH_PLATFORM + "-version";
18006
+ var CH_ALL_VALUES = [BRANDS, FULLVERLIST, MOBILE, MODEL, PLATFORM, PLATFORMVER, ARCHITECTURE, FORMFACTORS, BITNESS];
18007
+ var AMAZON = "Amazon";
18008
+ var APPLE = "Apple";
18009
+ var ASUS = "ASUS";
18010
+ var BLACKBERRY = "BlackBerry";
18011
+ var GOOGLE = "Google";
18012
+ var HUAWEI = "Huawei";
18013
+ var LENOVO = "Lenovo";
18014
+ var HONOR = "Honor";
18015
+ var LG = "LG";
18016
+ var MICROSOFT = "Microsoft";
18017
+ var MOTOROLA = "Motorola";
18018
+ var NVIDIA = "Nvidia";
18019
+ var ONEPLUS = "OnePlus";
18020
+ var OPPO = "OPPO";
18021
+ var SAMSUNG = "Samsung";
18022
+ var SHARP = "Sharp";
18023
+ var SONY = "Sony";
18024
+ var XIAOMI = "Xiaomi";
18025
+ var ZEBRA = "Zebra";
18026
+ var CHROME = "Chrome";
18027
+ var CHROMIUM = "Chromium";
18028
+ var CHROMECAST = "Chromecast";
18029
+ var EDGE = "Edge";
18030
+ var FIREFOX = "Firefox";
18031
+ var OPERA = "Opera";
18032
+ var FACEBOOK = "Facebook";
18033
+ var SOGOU = "Sogou";
18034
+ var PREFIX_MOBILE = "Mobile ";
18035
+ var SUFFIX_BROWSER = " Browser";
18036
+ var WINDOWS = "Windows";
18037
+ var isWindow = typeof window !== TYPEOF.UNDEFINED;
18038
+ var NAVIGATOR = isWindow && window.navigator ? window.navigator : void 0;
18039
+ var NAVIGATOR_UADATA = NAVIGATOR && NAVIGATOR.userAgentData ? NAVIGATOR.userAgentData : void 0;
18040
+ var extend = function(defaultRgx, extensions) {
18041
+ var mergedRgx = {};
18042
+ var extraRgx = extensions;
18043
+ if (!isExtensions(extensions)) {
18044
+ extraRgx = {};
18045
+ for (var i in extensions) {
18046
+ for (var j2 in extensions[i]) {
18047
+ extraRgx[j2] = extensions[i][j2].concat(extraRgx[j2] ? extraRgx[j2] : []);
18048
+ }
18049
+ }
18050
+ }
18051
+ for (var k2 in defaultRgx) {
18052
+ mergedRgx[k2] = extraRgx[k2] && extraRgx[k2].length % 2 === 0 ? extraRgx[k2].concat(defaultRgx[k2]) : defaultRgx[k2];
18053
+ }
18054
+ return mergedRgx;
18055
+ };
18056
+ var enumerize = function(arr) {
18057
+ var enums = {};
18058
+ for (var i = 0; i < arr.length; i++) {
18059
+ enums[arr[i].toUpperCase()] = arr[i];
18060
+ }
18061
+ return enums;
18062
+ };
18063
+ var has = function(str1, str2) {
18064
+ if (typeof str1 === TYPEOF.OBJECT && str1.length > 0) {
18065
+ for (var i in str1) {
18066
+ if (lowerize(str2) == lowerize(str1[i]))
18067
+ return true;
18068
+ }
18069
+ return false;
18070
+ }
18071
+ return isString(str1) ? lowerize(str2) == lowerize(str1) : false;
18072
+ };
18073
+ var isExtensions = function(obj, deep) {
18074
+ for (var prop in obj) {
18075
+ return /^(browser|cpu|device|engine|os)$/.test(prop) || (deep ? isExtensions(obj[prop]) : false);
18076
+ }
18077
+ };
18078
+ var isString = function(val) {
18079
+ return typeof val === TYPEOF.STRING;
18080
+ };
18081
+ var itemListToArray = function(header) {
18082
+ if (!header)
18083
+ return void 0;
18084
+ var arr = [];
18085
+ var tokens = strip(/\\?\"/g, header).split(",");
18086
+ for (var i = 0; i < tokens.length; i++) {
18087
+ if (tokens[i].indexOf(";") > -1) {
18088
+ var token = trim(tokens[i]).split(";v=");
18089
+ arr[i] = { brand: token[0], version: token[1] };
18090
+ } else {
18091
+ arr[i] = trim(tokens[i]);
18092
+ }
18093
+ }
18094
+ return arr;
18095
+ };
18096
+ var lowerize = function(str) {
18097
+ return isString(str) ? str.toLowerCase() : str;
18098
+ };
18099
+ var majorize = function(version) {
18100
+ return isString(version) ? strip(/[^\d\.]/g, version).split(".")[0] : void 0;
18101
+ };
18102
+ var setProps = function(arr) {
18103
+ for (var i in arr) {
18104
+ if (!arr.hasOwnProperty(i))
18105
+ continue;
18106
+ var propName = arr[i];
18107
+ if (typeof propName == TYPEOF.OBJECT && propName.length == 2) {
18108
+ this[propName[0]] = propName[1];
18109
+ } else {
18110
+ this[propName] = void 0;
18111
+ }
18112
+ }
18113
+ return this;
18114
+ };
18115
+ var strip = function(pattern, str) {
18116
+ return isString(str) ? str.replace(pattern, EMPTY) : str;
18117
+ };
18118
+ var stripQuotes = function(str) {
18119
+ return strip(/\\?\"/g, str);
18120
+ };
18121
+ var trim = function(str, len) {
18122
+ str = strip(/^\s\s*/, String(str));
18123
+ return typeof len === TYPEOF.UNDEFINED ? str : str.substring(0, len);
18124
+ };
18125
+ var rgxMapper = function(ua, arrays) {
18126
+ if (!ua || !arrays)
18127
+ return;
18128
+ var i = 0, j2, k2, p, q, matches, match18;
18129
+ while (i < arrays.length && !matches) {
18130
+ var regex = arrays[i], props = arrays[i + 1];
18131
+ j2 = k2 = 0;
18132
+ while (j2 < regex.length && !matches) {
18133
+ if (!regex[j2]) {
18134
+ break;
18135
+ }
18136
+ matches = regex[j2++].exec(ua);
18137
+ if (!!matches) {
18138
+ for (p = 0; p < props.length; p++) {
18139
+ match18 = matches[++k2];
18140
+ q = props[p];
18141
+ if (typeof q === TYPEOF.OBJECT && q.length > 0) {
18142
+ if (q.length === 2) {
18143
+ if (typeof q[1] == TYPEOF.FUNCTION) {
18144
+ this[q[0]] = q[1].call(this, match18);
18145
+ } else {
18146
+ this[q[0]] = q[1];
18147
+ }
18148
+ } else if (q.length >= 3) {
18149
+ if (typeof q[1] === TYPEOF.FUNCTION && !(q[1].exec && q[1].test)) {
18150
+ if (q.length > 3) {
18151
+ this[q[0]] = match18 ? q[1].apply(this, q.slice(2)) : void 0;
18152
+ } else {
18153
+ this[q[0]] = match18 ? q[1].call(this, match18, q[2]) : void 0;
18154
+ }
18155
+ } else {
18156
+ if (q.length == 3) {
18157
+ this[q[0]] = match18 ? match18.replace(q[1], q[2]) : void 0;
18158
+ } else if (q.length == 4) {
18159
+ this[q[0]] = match18 ? q[3].call(this, match18.replace(q[1], q[2])) : void 0;
18160
+ } else if (q.length > 4) {
18161
+ this[q[0]] = match18 ? q[3].apply(this, [match18.replace(q[1], q[2])].concat(q.slice(4))) : void 0;
18162
+ }
18163
+ }
18164
+ }
18165
+ } else {
18166
+ this[q] = match18 ? match18 : void 0;
18167
+ }
18168
+ }
18169
+ }
18170
+ }
18171
+ i += 2;
18172
+ }
18173
+ };
18174
+ var strMapper = function(str, map) {
18175
+ for (var i in map) {
18176
+ if (typeof map[i] === TYPEOF.OBJECT && map[i].length > 0) {
18177
+ for (var j2 = 0; j2 < map[i].length; j2++) {
18178
+ if (has(map[i][j2], str)) {
18179
+ return i === UNKNOWN ? void 0 : i;
18180
+ }
18181
+ }
18182
+ } else if (has(map[i], str)) {
18183
+ return i === UNKNOWN ? void 0 : i;
18184
+ }
18185
+ }
18186
+ return map.hasOwnProperty("*") ? map["*"] : str;
18187
+ };
18188
+ var windowsVersionMap = {
18189
+ "ME": "4.90",
18190
+ "NT 3.51": "3.51",
18191
+ "NT 4.0": "4.0",
18192
+ "2000": ["5.0", "5.01"],
18193
+ "XP": ["5.1", "5.2"],
18194
+ "Vista": "6.0",
18195
+ "7": "6.1",
18196
+ "8": "6.2",
18197
+ "8.1": "6.3",
18198
+ "10": ["6.4", "10.0"],
18199
+ "NT": ""
18200
+ };
18201
+ var formFactorsMap = {
18202
+ "embedded": "Automotive",
18203
+ "mobile": "Mobile",
18204
+ "tablet": ["Tablet", "EInk"],
18205
+ "smarttv": "TV",
18206
+ "wearable": "Watch",
18207
+ "xr": ["VR", "XR"],
18208
+ "?": ["Desktop", "Unknown"],
18209
+ "*": void 0
18210
+ };
18211
+ var browserHintsMap = {
18212
+ "Chrome": "Google Chrome",
18213
+ "Edge": "Microsoft Edge",
18214
+ "Edge WebView2": "Microsoft Edge WebView2",
18215
+ "Chrome WebView": "Android WebView",
18216
+ "Chrome Headless": "HeadlessChrome",
18217
+ "Huawei Browser": "HuaweiBrowser",
18218
+ "MIUI Browser": "Miui Browser",
18219
+ "Opera Mobi": "OperaMobile",
18220
+ "Yandex": "YaBrowser"
18221
+ };
18222
+ var defaultRegexes = {
18223
+ browser: [
18224
+ [
18225
+ // Most common regardless engine
18226
+ /\b(?:crmo|crios)\/([\w\.]+)/i
18227
+ // Chrome for Android/iOS
18228
+ ],
18229
+ [VERSION, [NAME, PREFIX_MOBILE + "Chrome"]],
18230
+ [
18231
+ /webview.+edge\/([\w\.]+)/i
18232
+ // Microsoft Edge
18233
+ ],
18234
+ [VERSION, [NAME, EDGE + " WebView"]],
18235
+ [
18236
+ /edg(?:e|ios|a)?\/([\w\.]+)/i
18237
+ ],
18238
+ [VERSION, [NAME, "Edge"]],
18239
+ [
18240
+ // Presto based
18241
+ /(opera mini)\/([-\w\.]+)/i,
18242
+ // Opera Mini
18243
+ /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,
18244
+ // Opera Mobi/Tablet
18245
+ /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i
18246
+ // Opera
18247
+ ],
18248
+ [NAME, VERSION],
18249
+ [
18250
+ /opios[\/ ]+([\w\.]+)/i
18251
+ // Opera mini on iphone >= 8.0
18252
+ ],
18253
+ [VERSION, [NAME, OPERA + " Mini"]],
18254
+ [
18255
+ /\bop(?:rg)?x\/([\w\.]+)/i
18256
+ // Opera GX
18257
+ ],
18258
+ [VERSION, [NAME, OPERA + " GX"]],
18259
+ [
18260
+ /\bopr\/([\w\.]+)/i
18261
+ // Opera Webkit
18262
+ ],
18263
+ [VERSION, [NAME, OPERA]],
18264
+ [
18265
+ // Mixed
18266
+ /\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i
18267
+ // Baidu
18268
+ ],
18269
+ [VERSION, [NAME, "Baidu"]],
18270
+ [
18271
+ /\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i
18272
+ // Maxthon
18273
+ ],
18274
+ [VERSION, [NAME, "Maxthon"]],
18275
+ [
18276
+ /(kindle)\/([\w\.]+)/i,
18277
+ // Kindle
18278
+ /(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,
18279
+ // Lunascape/Maxthon/Netfront/Jasmine/Blazer/Sleipnir
18280
+ // Trident based
18281
+ /(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,
18282
+ // Avant/IEMobile/SlimBrowser/SlimBoat/Slimjet
18283
+ /(?:ms|\()(ie) ([\w\.]+)/i,
18284
+ // Internet Explorer
18285
+ // Blink/Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon/LG Browser/Otter/qutebrowser/Dooble/Palemoon
18286
+ /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon|otter|dooble|(?:lg |qute)browser|palemoon)\/([-\w\.]+)/i,
18287
+ // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ//Vivaldi/DuckDuckGo/Klar/Helio/Dragon
18288
+ /(heytap|ovi|115|surf|qwant)browser\/([\d\.]+)/i,
18289
+ // HeyTap/Ovi/115/Surf
18290
+ /(qwant)(?:ios|mobile)\/([\d\.]+)/i,
18291
+ // Qwant
18292
+ /(ecosia|weibo)(?:__| \w+@)([\d\.]+)/i
18293
+ // Ecosia/Weibo
18294
+ ],
18295
+ [NAME, VERSION],
18296
+ [
18297
+ /quark(?:pc)?\/([-\w\.]+)/i
18298
+ // Quark
18299
+ ],
18300
+ [VERSION, [NAME, "Quark"]],
18301
+ [
18302
+ /\bddg\/([\w\.]+)/i
18303
+ // DuckDuckGo
18304
+ ],
18305
+ [VERSION, [NAME, "DuckDuckGo"]],
18306
+ [
18307
+ /(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i
18308
+ // UCBrowser
18309
+ ],
18310
+ [VERSION, [NAME, "UCBrowser"]],
18311
+ [
18312
+ /microm.+\bqbcore\/([\w\.]+)/i,
18313
+ // WeChat Desktop for Windows Built-in Browser
18314
+ /\bqbcore\/([\w\.]+).+microm/i,
18315
+ /micromessenger\/([\w\.]+)/i
18316
+ // WeChat
18317
+ ],
18318
+ [VERSION, [NAME, "WeChat"]],
18319
+ [
18320
+ /konqueror\/([\w\.]+)/i
18321
+ // Konqueror
18322
+ ],
18323
+ [VERSION, [NAME, "Konqueror"]],
18324
+ [
18325
+ /trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i
18326
+ // IE11
18327
+ ],
18328
+ [VERSION, [NAME, "IE"]],
18329
+ [
18330
+ /ya(?:search)?browser\/([\w\.]+)/i
18331
+ // Yandex
18332
+ ],
18333
+ [VERSION, [NAME, "Yandex"]],
18334
+ [
18335
+ /slbrowser\/([\w\.]+)/i
18336
+ // Smart Lenovo Browser
18337
+ ],
18338
+ [VERSION, [NAME, "Smart " + LENOVO + SUFFIX_BROWSER]],
18339
+ [
18340
+ /(avast|avg)\/([\w\.]+)/i
18341
+ // Avast/AVG Secure Browser
18342
+ ],
18343
+ [[NAME, /(.+)/, "$1 Secure" + SUFFIX_BROWSER], VERSION],
18344
+ [
18345
+ /\bfocus\/([\w\.]+)/i
18346
+ // Firefox Focus
18347
+ ],
18348
+ [VERSION, [NAME, FIREFOX + " Focus"]],
18349
+ [
18350
+ /\bopt\/([\w\.]+)/i
18351
+ // Opera Touch
18352
+ ],
18353
+ [VERSION, [NAME, OPERA + " Touch"]],
18354
+ [
18355
+ /coc_coc\w+\/([\w\.]+)/i
18356
+ // Coc Coc Browser
18357
+ ],
18358
+ [VERSION, [NAME, "Coc Coc"]],
18359
+ [
18360
+ /dolfin\/([\w\.]+)/i
18361
+ // Dolphin
18362
+ ],
18363
+ [VERSION, [NAME, "Dolphin"]],
18364
+ [
18365
+ /coast\/([\w\.]+)/i
18366
+ // Opera Coast
18367
+ ],
18368
+ [VERSION, [NAME, OPERA + " Coast"]],
18369
+ [
18370
+ /miuibrowser\/([\w\.]+)/i
18371
+ // MIUI Browser
18372
+ ],
18373
+ [VERSION, [NAME, "MIUI" + SUFFIX_BROWSER]],
18374
+ [
18375
+ /fxios\/([\w\.-]+)/i
18376
+ // Firefox for iOS
18377
+ ],
18378
+ [VERSION, [NAME, PREFIX_MOBILE + FIREFOX]],
18379
+ [
18380
+ /\bqihoobrowser\/?([\w\.]*)/i
18381
+ // 360
18382
+ ],
18383
+ [VERSION, [NAME, "360"]],
18384
+ [
18385
+ /\b(qq)\/([\w\.]+)/i
18386
+ // QQ
18387
+ ],
18388
+ [[NAME, /(.+)/, "$1Browser"], VERSION],
18389
+ [
18390
+ /(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i
18391
+ ],
18392
+ [[NAME, /(.+)/, "$1" + SUFFIX_BROWSER], VERSION],
18393
+ [
18394
+ // Oculus/Sailfish/HuaweiBrowser/VivoBrowser/PicoBrowser
18395
+ /samsungbrowser\/([\w\.]+)/i
18396
+ // Samsung Internet
18397
+ ],
18398
+ [VERSION, [NAME, SAMSUNG + " Internet"]],
18399
+ [
18400
+ /metasr[\/ ]?([\d\.]+)/i
18401
+ // Sogou Explorer
18402
+ ],
18403
+ [VERSION, [NAME, SOGOU + " Explorer"]],
18404
+ [
18405
+ /(sogou)mo\w+\/([\d\.]+)/i
18406
+ // Sogou Mobile
18407
+ ],
18408
+ [[NAME, SOGOU + " Mobile"], VERSION],
18409
+ [
18410
+ /(electron)\/([\w\.]+) safari/i,
18411
+ // Electron-based App
18412
+ /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,
18413
+ // Tesla
18414
+ /m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i
18415
+ // QQ/2345
18416
+ ],
18417
+ [NAME, VERSION],
18418
+ [
18419
+ /(lbbrowser|rekonq)/i
18420
+ // LieBao Browser/Rekonq
18421
+ ],
18422
+ [NAME],
18423
+ [
18424
+ /ome\/([\w\.]+) \w* ?(iron) saf/i,
18425
+ // Iron
18426
+ /ome\/([\w\.]+).+qihu (360)[es]e/i
18427
+ // 360
18428
+ ],
18429
+ [VERSION, NAME],
18430
+ [
18431
+ // WebView
18432
+ /((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i
18433
+ // Facebook App for iOS & Android
18434
+ ],
18435
+ [[NAME, FACEBOOK], VERSION, [TYPE, INAPP]],
18436
+ [
18437
+ /(kakao(?:talk|story))[\/ ]([\w\.]+)/i,
18438
+ // Kakao App
18439
+ /(naver)\(.*?(\d+\.[\w\.]+).*\)/i,
18440
+ // Naver InApp
18441
+ /(daum)apps[\/ ]([\w\.]+)/i,
18442
+ // Daum App
18443
+ /safari (line)\/([\w\.]+)/i,
18444
+ // Line App for iOS
18445
+ /\b(line)\/([\w\.]+)\/iab/i,
18446
+ // Line App for Android
18447
+ /(alipay)client\/([\w\.]+)/i,
18448
+ // Alipay
18449
+ /(twitter)(?:and| f.+e\/([\w\.]+))/i,
18450
+ // Twitter
18451
+ /(bing)(?:web|sapphire)\/([\w\.]+)/i,
18452
+ // Bing
18453
+ /(instagram|snapchat|klarna)[\/ ]([-\w\.]+)/i
18454
+ // Instagram/Snapchat/Klarna
18455
+ ],
18456
+ [NAME, VERSION, [TYPE, INAPP]],
18457
+ [
18458
+ /\bgsa\/([\w\.]+) .*safari\//i
18459
+ // Google Search Appliance on iOS
18460
+ ],
18461
+ [VERSION, [NAME, "GSA"], [TYPE, INAPP]],
18462
+ [
18463
+ /musical_ly(?:.+app_?version\/|_)([\w\.]+)/i
18464
+ // TikTok
18465
+ ],
18466
+ [VERSION, [NAME, "TikTok"], [TYPE, INAPP]],
18467
+ [
18468
+ /\[(linkedin)app\]/i
18469
+ // LinkedIn App for iOS & Android
18470
+ ],
18471
+ [NAME, [TYPE, INAPP]],
18472
+ [
18473
+ /(zalo(?:app)?)[\/\sa-z]*([\w\.-]+)/i
18474
+ // Zalo
18475
+ ],
18476
+ [[NAME, /(.+)/, "Zalo"], VERSION, [TYPE, INAPP]],
18477
+ [
18478
+ /(chromium)[\/ ]([-\w\.]+)/i
18479
+ // Chromium
18480
+ ],
18481
+ [NAME, VERSION],
18482
+ [
18483
+ /headlesschrome(?:\/([\w\.]+)| )/i
18484
+ // Chrome Headless
18485
+ ],
18486
+ [VERSION, [NAME, CHROME + " Headless"]],
18487
+ [
18488
+ /wv\).+chrome\/([\w\.]+).+edgw\//i
18489
+ // Edge WebView2
18490
+ ],
18491
+ [VERSION, [NAME, EDGE + " WebView2"]],
18492
+ [
18493
+ / wv\).+(chrome)\/([\w\.]+)/i
18494
+ // Chrome WebView
18495
+ ],
18496
+ [[NAME, CHROME + " WebView"], VERSION],
18497
+ [
18498
+ /droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i
18499
+ // Android Browser
18500
+ ],
18501
+ [VERSION, [NAME, "Android" + SUFFIX_BROWSER]],
18502
+ [
18503
+ /chrome\/([\w\.]+) mobile/i
18504
+ // Chrome Mobile
18505
+ ],
18506
+ [VERSION, [NAME, PREFIX_MOBILE + "Chrome"]],
18507
+ [
18508
+ /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i
18509
+ // Chrome/OmniWeb/Arora/Tizen/Nokia
18510
+ ],
18511
+ [NAME, VERSION],
18512
+ [
18513
+ /version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i
18514
+ // Safari Mobile
18515
+ ],
18516
+ [VERSION, [NAME, PREFIX_MOBILE + "Safari"]],
18517
+ [
18518
+ /iphone .*mobile(?:\/\w+ | ?)safari/i
18519
+ ],
18520
+ [[NAME, PREFIX_MOBILE + "Safari"]],
18521
+ [
18522
+ /version\/([\w\.\,]+) .*(safari)/i
18523
+ // Safari
18524
+ ],
18525
+ [VERSION, NAME],
18526
+ [
18527
+ /webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i
18528
+ // Safari < 3.0
18529
+ ],
18530
+ [NAME, [VERSION, "1"]],
18531
+ [
18532
+ /(webkit|khtml)\/([\w\.]+)/i
18533
+ ],
18534
+ [NAME, VERSION],
18535
+ [
18536
+ // Gecko based
18537
+ /(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i
18538
+ // Firefox Mobile
18539
+ ],
18540
+ [[NAME, PREFIX_MOBILE + FIREFOX], VERSION],
18541
+ [
18542
+ /(navigator|netscape\d?)\/([-\w\.]+)/i
18543
+ // Netscape
18544
+ ],
18545
+ [[NAME, "Netscape"], VERSION],
18546
+ [
18547
+ /(wolvic|librewolf)\/([\w\.]+)/i
18548
+ // Wolvic/LibreWolf
18549
+ ],
18550
+ [NAME, VERSION],
18551
+ [
18552
+ /mobile vr; rv:([\w\.]+)\).+firefox/i
18553
+ // Firefox Reality
18554
+ ],
18555
+ [VERSION, [NAME, FIREFOX + " Reality"]],
18556
+ [
18557
+ /ekiohf.+(flow)\/([\w\.]+)/i,
18558
+ // Flow
18559
+ /(swiftfox)/i,
18560
+ // Swiftfox
18561
+ /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,
18562
+ // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror
18563
+ /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|basilisk|waterfox)\/([-\w\.]+)$/i,
18564
+ // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix
18565
+ /(firefox)\/([\w\.]+)/i,
18566
+ // Other Firefox-based
18567
+ /(mozilla)\/([\w\.]+(?= .+rv\:.+gecko\/\d+)|[0-4][\w\.]+(?!.+compatible))/i,
18568
+ // Mozilla
18569
+ // Other
18570
+ /(amaya|dillo|doris|icab|ladybird|lynx|mosaic|netsurf|obigo|polaris|w3m|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,
18571
+ // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Obigo/Mosaic/Go/ICE/UP.Browser/Ladybird
18572
+ /\b(links) \(([\w\.]+)/i
18573
+ // Links
18574
+ ],
18575
+ [NAME, [VERSION, /_/g, "."]],
18576
+ [
18577
+ /(cobalt)\/([\w\.]+)/i
18578
+ // Cobalt
18579
+ ],
18580
+ [NAME, [VERSION, /[^\d\.]+./, EMPTY]]
18581
+ ],
18582
+ cpu: [
18583
+ [
18584
+ /\b((amd|x|x86[-_]?|wow|win)64)\b/i
18585
+ // AMD64 (x64)
18586
+ ],
18587
+ [[ARCHITECTURE, "amd64"]],
18588
+ [
18589
+ /(ia32(?=;))/i,
18590
+ // IA32 (quicktime)
18591
+ /\b((i[346]|x)86)(pc)?\b/i
18592
+ // IA32 (x86)
18593
+ ],
18594
+ [[ARCHITECTURE, "ia32"]],
18595
+ [
18596
+ /\b(aarch64|arm(v?[89]e?l?|_?64))\b/i
18597
+ // ARM64
18598
+ ],
18599
+ [[ARCHITECTURE, "arm64"]],
18600
+ [
18601
+ /\b(arm(v[67])?ht?n?[fl]p?)\b/i
18602
+ // ARMHF
18603
+ ],
18604
+ [[ARCHITECTURE, "armhf"]],
18605
+ [
18606
+ // PocketPC mistakenly identified as PowerPC
18607
+ /( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i
18608
+ ],
18609
+ [[ARCHITECTURE, "arm"]],
18610
+ [
18611
+ / sun4\w[;\)]/i
18612
+ // SPARC
18613
+ ],
18614
+ [[ARCHITECTURE, "sparc"]],
18615
+ [
18616
+ // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC
18617
+ /\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i,
18618
+ /((ppc|powerpc)(64)?)( mac|;|\))/i,
18619
+ // PowerPC
18620
+ /(?:osf1|[freopnt]{3,4}bsd) (alpha)/i
18621
+ // Alpha
18622
+ ],
18623
+ [[ARCHITECTURE, /ower/, EMPTY, lowerize]],
18624
+ [
18625
+ /mc680.0/i
18626
+ ],
18627
+ [[ARCHITECTURE, "68k"]],
18628
+ [
18629
+ /winnt.+\[axp/i
18630
+ ],
18631
+ [[ARCHITECTURE, "alpha"]]
18632
+ ],
18633
+ device: [
18634
+ [
18635
+ //////////////////////////
18636
+ // MOBILES & TABLETS
18637
+ /////////////////////////
18638
+ // Samsung
18639
+ /\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i
18640
+ ],
18641
+ [MODEL, [VENDOR, SAMSUNG], [TYPE, TABLET]],
18642
+ [
18643
+ /\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,
18644
+ /samsung[- ]((?!sm-[lr]|browser)[-\w]+)/i,
18645
+ /sec-(sgh\w+)/i
18646
+ ],
18647
+ [MODEL, [VENDOR, SAMSUNG], [TYPE, MOBILE]],
18648
+ [
18649
+ // Apple
18650
+ /(?:\/|\()(ip(?:hone|od)[\w, ]*)[\/\);]/i
18651
+ // iPod/iPhone
18652
+ ],
18653
+ [MODEL, [VENDOR, APPLE], [TYPE, MOBILE]],
18654
+ [
18655
+ /\b(?:ios|apple\w+)\/.+[\(\/](ipad)/i,
18656
+ // iPad
18657
+ /\b(ipad)[\d,]*[;\] ].+(mac |i(pad)?)os/i
18658
+ ],
18659
+ [MODEL, [VENDOR, APPLE], [TYPE, TABLET]],
18660
+ [
18661
+ /(macintosh);/i
18662
+ ],
18663
+ [MODEL, [VENDOR, APPLE]],
18664
+ [
18665
+ // Sharp
18666
+ /\b(sh-?[altvz]?\d\d[a-ekm]?)/i
18667
+ ],
18668
+ [MODEL, [VENDOR, SHARP], [TYPE, MOBILE]],
18669
+ [
18670
+ // Honor
18671
+ /\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i
18672
+ ],
18673
+ [MODEL, [VENDOR, HONOR], [TYPE, TABLET]],
18674
+ [
18675
+ /honor([-\w ]+)[;\)]/i
18676
+ ],
18677
+ [MODEL, [VENDOR, HONOR], [TYPE, MOBILE]],
18678
+ [
18679
+ // Huawei
18680
+ /\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i
18681
+ ],
18682
+ [MODEL, [VENDOR, HUAWEI], [TYPE, TABLET]],
18683
+ [
18684
+ /(?:huawei) ?([-\w ]+)[;\)]/i,
18685
+ /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][\dc][adnt]?)\b(?!.+d\/s)/i
18686
+ ],
18687
+ [MODEL, [VENDOR, HUAWEI], [TYPE, MOBILE]],
18688
+ [
18689
+ // Xiaomi
18690
+ /oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,
18691
+ /\b(?:xiao)?((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i
18692
+ // Mi Pad tablets
18693
+ ],
18694
+ [[MODEL, /_/g, " "], [VENDOR, XIAOMI], [TYPE, TABLET]],
18695
+ [
18696
+ /\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,
18697
+ // Xiaomi POCO
18698
+ /\b; (\w+) build\/hm\1/i,
18699
+ // Xiaomi Hongmi 'numeric' models
18700
+ /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,
18701
+ // Xiaomi Hongmi
18702
+ /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,
18703
+ // Xiaomi Redmi
18704
+ /oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,
18705
+ // Xiaomi Redmi 'numeric' models
18706
+ /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note|max|cc)?[_ ]?(?:\d{0,2}\w?)[_ ]?(?:plus|se|lite|pro)?( 5g|lte)?)(?: bui|\))/i,
18707
+ // Xiaomi Mi
18708
+ / ([\w ]+) miui\/v?\d/i
18709
+ ],
18710
+ [[MODEL, /_/g, " "], [VENDOR, XIAOMI], [TYPE, MOBILE]],
18711
+ [
18712
+ // OnePlus
18713
+ /droid.+; (cph2[3-6]\d[13579]|((gm|hd)19|(ac|be|in|kb)20|(d[en]|eb|le|mt)21|ne22)[0-2]\d|p[g-k]\w[1m]10)\b/i,
18714
+ /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i
18715
+ ],
18716
+ [MODEL, [VENDOR, ONEPLUS], [TYPE, MOBILE]],
18717
+ [
18718
+ // OPPO
18719
+ /; (\w+) bui.+ oppo/i,
18720
+ /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i
18721
+ ],
18722
+ [MODEL, [VENDOR, OPPO], [TYPE, MOBILE]],
18723
+ [
18724
+ /\b(opd2(\d{3}a?))(?: bui|\))/i
18725
+ ],
18726
+ [MODEL, [VENDOR, strMapper, { "OnePlus": ["203", "304", "403", "404", "413", "415"], "*": OPPO }], [TYPE, TABLET]],
18727
+ [
18728
+ // BLU
18729
+ /(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i
18730
+ // Vivo series
18731
+ ],
18732
+ [MODEL, [VENDOR, "BLU"], [TYPE, MOBILE]],
18733
+ [
18734
+ // Vivo
18735
+ /; vivo (\w+)(?: bui|\))/i,
18736
+ /\b(v[12]\d{3}\w?[at])(?: bui|;)/i
18737
+ ],
18738
+ [MODEL, [VENDOR, "Vivo"], [TYPE, MOBILE]],
18739
+ [
18740
+ // Realme
18741
+ /\b(rmx[1-3]\d{3})(?: bui|;|\))/i
18742
+ ],
18743
+ [MODEL, [VENDOR, "Realme"], [TYPE, MOBILE]],
18744
+ [
18745
+ // Lenovo
18746
+ /(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i,
18747
+ /lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i
18748
+ ],
18749
+ [MODEL, [VENDOR, LENOVO], [TYPE, TABLET]],
18750
+ [
18751
+ /lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i
18752
+ ],
18753
+ [MODEL, [VENDOR, LENOVO], [TYPE, MOBILE]],
18754
+ [
18755
+ // Motorola
18756
+ /\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
18757
+ /\bmot(?:orola)?[- ]([\w\s]+)(\)| bui)/i,
18758
+ /((?:moto(?! 360)[-\w\(\) ]+|xt\d{3,4}[cgkosw\+]?[-\d]*|nexus 6)(?= bui|\)))/i
18759
+ ],
18760
+ [MODEL, [VENDOR, MOTOROLA], [TYPE, MOBILE]],
18761
+ [
18762
+ /\b(mz60\d|xoom[2 ]{0,2}) build\//i
18763
+ ],
18764
+ [MODEL, [VENDOR, MOTOROLA], [TYPE, TABLET]],
18765
+ [
18766
+ // LG
18767
+ /((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i
18768
+ ],
18769
+ [MODEL, [VENDOR, LG], [TYPE, TABLET]],
18770
+ [
18771
+ /(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
18772
+ /\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,
18773
+ /\blg-?([\d\w]+) bui/i
18774
+ ],
18775
+ [MODEL, [VENDOR, LG], [TYPE, MOBILE]],
18776
+ [
18777
+ // Nokia
18778
+ /(nokia) (t[12][01])/i
18779
+ ],
18780
+ [VENDOR, MODEL, [TYPE, TABLET]],
18781
+ [
18782
+ /(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,
18783
+ /nokia[-_ ]?(([-\w\. ]*?))( bui|\)|;|\/)/i
18784
+ ],
18785
+ [[MODEL, /_/g, " "], [TYPE, MOBILE], [VENDOR, "Nokia"]],
18786
+ [
18787
+ // Google
18788
+ /(pixel (c|tablet))\b/i
18789
+ // Google Pixel C/Tablet
18790
+ ],
18791
+ [MODEL, [VENDOR, GOOGLE], [TYPE, TABLET]],
18792
+ [
18793
+ // Google Pixel
18794
+ /droid.+;(?: google)? (g(01[13]a|020[aem]|025[jn]|1b60|1f8f|2ybb|4s1m|576d|5nz6|8hhn|8vou|a02099|c15s|d1yq|e2ae|ec77|gh2x|kv4x|p4bc|pj41|r83y|tt9q|ur25|wvk6)|pixel[\d ]*a?( pro)?( xl)?( fold)?( \(5g\))?)( bui|\))/i
18795
+ ],
18796
+ [MODEL, [VENDOR, GOOGLE], [TYPE, MOBILE]],
18797
+ [
18798
+ /(google) (pixelbook( go)?)/i
18799
+ ],
18800
+ [VENDOR, MODEL],
18801
+ [
18802
+ // Sony
18803
+ /droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-\w\w\d\d)(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i
18804
+ ],
18805
+ [MODEL, [VENDOR, SONY], [TYPE, MOBILE]],
18806
+ [
18807
+ /sony tablet [ps]/i,
18808
+ /\b(?:sony)?sgp\w+(?: bui|\))/i
18809
+ ],
18810
+ [[MODEL, "Xperia Tablet"], [VENDOR, SONY], [TYPE, TABLET]],
18811
+ [
18812
+ // Amazon
18813
+ /(alexa)webm/i,
18814
+ /(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,
18815
+ // Kindle Fire without Silk / Echo Show
18816
+ /(kf[a-z]+)( bui|\)).+silk\//i
18817
+ // Kindle Fire HD
18818
+ ],
18819
+ [MODEL, [VENDOR, AMAZON], [TYPE, TABLET]],
18820
+ [
18821
+ /((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i
18822
+ // Fire Phone
18823
+ ],
18824
+ [[MODEL, /(.+)/g, "Fire Phone $1"], [VENDOR, AMAZON], [TYPE, MOBILE]],
18825
+ [
18826
+ // BlackBerry
18827
+ /(playbook);[-\w\),; ]+(rim)/i
18828
+ // BlackBerry PlayBook
18829
+ ],
18830
+ [MODEL, VENDOR, [TYPE, TABLET]],
18831
+ [
18832
+ /\b((?:bb[a-f]|st[hv])100-\d)/i,
18833
+ /(?:blackberry|\(bb10;) (\w+)/i
18834
+ ],
18835
+ [MODEL, [VENDOR, BLACKBERRY], [TYPE, MOBILE]],
18836
+ [
18837
+ // Asus
18838
+ /(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
18839
+ ],
18840
+ [MODEL, [VENDOR, ASUS], [TYPE, TABLET]],
18841
+ [
18842
+ / (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
18843
+ ],
18844
+ [MODEL, [VENDOR, ASUS], [TYPE, MOBILE]],
18845
+ [
18846
+ // HTC
18847
+ /(nexus 9)/i
18848
+ // HTC Nexus 9
18849
+ ],
18850
+ [MODEL, [VENDOR, "HTC"], [TYPE, TABLET]],
18851
+ [
18852
+ /(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,
18853
+ // HTC
18854
+ // ZTE
18855
+ /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,
18856
+ /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i
18857
+ // Alcatel/GeeksPhone/Nexian/Panasonic/Sony
18858
+ ],
18859
+ [VENDOR, [MODEL, /_/g, " "], [TYPE, MOBILE]],
18860
+ [
18861
+ // TCL
18862
+ /tcl (xess p17aa)/i,
18863
+ /droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])(_\w(\w|\w\w))?(\)| bui)/i
18864
+ ],
18865
+ [MODEL, [VENDOR, "TCL"], [TYPE, TABLET]],
18866
+ [
18867
+ /droid [\w\.]+; (418(?:7d|8v)|5087z|5102l|61(?:02[dh]|25[adfh]|27[ai]|56[dh]|59k|65[ah])|a509dl|t(?:43(?:0w|1[adepqu])|50(?:6d|7[adju])|6(?:09dl|10k|12b|71[efho]|76[hjk])|7(?:66[ahju]|67[hw]|7[045][bh]|71[hk]|73o|76[ho]|79w|81[hks]?|82h|90[bhsy]|99b)|810[hs]))(_\w(\w|\w\w))?(\)| bui)/i
18868
+ ],
18869
+ [MODEL, [VENDOR, "TCL"], [TYPE, MOBILE]],
18870
+ [
18871
+ // itel
18872
+ /(itel) ((\w+))/i
18873
+ ],
18874
+ [[VENDOR, lowerize], MODEL, [TYPE, strMapper, { "tablet": ["p10001l", "w7001"], "*": "mobile" }]],
18875
+ [
18876
+ // Acer
18877
+ /droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
18878
+ ],
18879
+ [MODEL, [VENDOR, "Acer"], [TYPE, TABLET]],
18880
+ [
18881
+ // Meizu
18882
+ /droid.+; (m[1-5] note) bui/i,
18883
+ /\bmz-([-\w]{2,})/i
18884
+ ],
18885
+ [MODEL, [VENDOR, "Meizu"], [TYPE, MOBILE]],
18886
+ [
18887
+ // Ulefone
18888
+ /; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i
18889
+ ],
18890
+ [MODEL, [VENDOR, "Ulefone"], [TYPE, MOBILE]],
18891
+ [
18892
+ // Energizer
18893
+ /; (energy ?\w+)(?: bui|\))/i,
18894
+ /; energizer ([\w ]+)(?: bui|\))/i
18895
+ ],
18896
+ [MODEL, [VENDOR, "Energizer"], [TYPE, MOBILE]],
18897
+ [
18898
+ // Cat
18899
+ /; cat (b35);/i,
18900
+ /; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i
18901
+ ],
18902
+ [MODEL, [VENDOR, "Cat"], [TYPE, MOBILE]],
18903
+ [
18904
+ // Smartfren
18905
+ /((?:new )?andromax[\w- ]+)(?: bui|\))/i
18906
+ ],
18907
+ [MODEL, [VENDOR, "Smartfren"], [TYPE, MOBILE]],
18908
+ [
18909
+ // Nothing
18910
+ /droid.+; (a(in)?(0(15|59|6[35])|142)p?)/i
18911
+ ],
18912
+ [MODEL, [VENDOR, "Nothing"], [TYPE, MOBILE]],
18913
+ [
18914
+ // Archos
18915
+ /; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,
18916
+ /archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i
18917
+ ],
18918
+ [MODEL, [VENDOR, "Archos"], [TYPE, TABLET]],
18919
+ [
18920
+ /archos ([\w ]+)( b|\))/i,
18921
+ /; (ac[3-6]\d\w{2,8})( b|\))/i
18922
+ ],
18923
+ [MODEL, [VENDOR, "Archos"], [TYPE, MOBILE]],
18924
+ [
18925
+ // HMD
18926
+ /; (n159v)/i
18927
+ ],
18928
+ [MODEL, [VENDOR, "HMD"], [TYPE, MOBILE]],
18929
+ [
18930
+ // MIXED
18931
+ /(imo) (tab \w+)/i,
18932
+ // IMO
18933
+ /(infinix|tecno) (x1101b?|p904|dp(7c|8d|10a)( pro)?|p70[1-3]a?|p904|t1101)/i
18934
+ // Infinix XPad / Tecno
18935
+ ],
18936
+ [VENDOR, MODEL, [TYPE, TABLET]],
18937
+ [
18938
+ /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|tecno|micromax|advan)[-_ ]?([-\w]*)/i,
18939
+ // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron/Tecno/Micromax/Advan
18940
+ // BLU/HMD/IMO/Infinix/Lava/OnePlus/TCL/Wiko
18941
+ /; (blu|hmd|imo|infinix|lava|oneplus|tcl|wiko)[_ ]([\w\+ ]+?)(?: bui|\)|; r)/i,
18942
+ /(hp) ([\w ]+\w)/i,
18943
+ // HP iPAQ
18944
+ /(microsoft); (lumia[\w ]+)/i,
18945
+ // Microsoft Lumia
18946
+ /(oppo) ?([\w ]+) bui/i,
18947
+ // OPPO
18948
+ /(hisense) ([ehv][\w ]+)\)/i,
18949
+ // Hisense
18950
+ /droid[^;]+; (philips)[_ ]([sv-x][\d]{3,4}[xz]?)/i
18951
+ // Philips
18952
+ ],
18953
+ [VENDOR, MODEL, [TYPE, MOBILE]],
18954
+ [
18955
+ /(kobo)\s(ereader|touch)/i,
18956
+ // Kobo
18957
+ /(hp).+(touchpad(?!.+tablet)|tablet)/i,
18958
+ // HP TouchPad
18959
+ /(kindle)\/([\w\.]+)/i
18960
+ // Kindle
18961
+ ],
18962
+ [VENDOR, MODEL, [TYPE, TABLET]],
18963
+ [
18964
+ /(surface duo)/i
18965
+ // Surface Duo
18966
+ ],
18967
+ [MODEL, [VENDOR, MICROSOFT], [TYPE, TABLET]],
18968
+ [
18969
+ /droid [\d\.]+; (fp\du?)(?: b|\))/i
18970
+ // Fairphone
18971
+ ],
18972
+ [MODEL, [VENDOR, "Fairphone"], [TYPE, MOBILE]],
18973
+ [
18974
+ /((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i
18975
+ // Nvidia Tablets
18976
+ ],
18977
+ [MODEL, [VENDOR, NVIDIA], [TYPE, TABLET]],
18978
+ [
18979
+ /(sprint) (\w+)/i
18980
+ // Sprint Phones
18981
+ ],
18982
+ [VENDOR, MODEL, [TYPE, MOBILE]],
18983
+ [
18984
+ /(kin\.[onetw]{3})/i
18985
+ // Microsoft Kin
18986
+ ],
18987
+ [[MODEL, /\./g, " "], [VENDOR, MICROSOFT], [TYPE, MOBILE]],
18988
+ [
18989
+ /droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i
18990
+ // Zebra
18991
+ ],
18992
+ [MODEL, [VENDOR, ZEBRA], [TYPE, TABLET]],
18993
+ [
18994
+ /droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
18995
+ ],
18996
+ [MODEL, [VENDOR, ZEBRA], [TYPE, MOBILE]],
18997
+ [
18998
+ ///////////////////
18999
+ // SMARTTVS
19000
+ ///////////////////
19001
+ /(philips)[\w ]+tv/i,
19002
+ // Philips
19003
+ /smart-tv.+(samsung)/i
19004
+ // Samsung
19005
+ ],
19006
+ [VENDOR, [TYPE, SMARTTV]],
19007
+ [
19008
+ /hbbtv.+maple;(\d+)/i
19009
+ ],
19010
+ [[MODEL, /^/, "SmartTV"], [VENDOR, SAMSUNG], [TYPE, SMARTTV]],
19011
+ [
19012
+ /(vizio)(?: |.+model\/)(\w+-\w+)/i,
19013
+ // Vizio
19014
+ /tcast.+(lg)e?. ([-\w]+)/i
19015
+ // LG SmartTV
19016
+ ],
19017
+ [VENDOR, MODEL, [TYPE, SMARTTV]],
19018
+ [
19019
+ /(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i
19020
+ ],
19021
+ [[VENDOR, LG], [TYPE, SMARTTV]],
19022
+ [
19023
+ /(apple) ?tv/i
19024
+ // Apple TV
19025
+ ],
19026
+ [VENDOR, [MODEL, APPLE + " TV"], [TYPE, SMARTTV]],
19027
+ [
19028
+ /crkey.*devicetype\/chromecast/i
19029
+ // Google Chromecast Third Generation
19030
+ ],
19031
+ [[MODEL, CHROMECAST + " Third Generation"], [VENDOR, GOOGLE], [TYPE, SMARTTV]],
19032
+ [
19033
+ /crkey.*devicetype\/([^/]*)/i
19034
+ // Google Chromecast with specific device type
19035
+ ],
19036
+ [[MODEL, /^/, "Chromecast "], [VENDOR, GOOGLE], [TYPE, SMARTTV]],
19037
+ [
19038
+ /fuchsia.*crkey/i
19039
+ // Google Chromecast Nest Hub
19040
+ ],
19041
+ [[MODEL, CHROMECAST + " Nest Hub"], [VENDOR, GOOGLE], [TYPE, SMARTTV]],
19042
+ [
19043
+ /crkey/i
19044
+ // Google Chromecast, Linux-based or unknown
19045
+ ],
19046
+ [[MODEL, CHROMECAST], [VENDOR, GOOGLE], [TYPE, SMARTTV]],
19047
+ [
19048
+ /(portaltv)/i
19049
+ // Facebook Portal TV
19050
+ ],
19051
+ [MODEL, [VENDOR, FACEBOOK], [TYPE, SMARTTV]],
19052
+ [
19053
+ /droid.+aft(\w+)( bui|\))/i
19054
+ // Fire TV
19055
+ ],
19056
+ [MODEL, [VENDOR, AMAZON], [TYPE, SMARTTV]],
19057
+ [
19058
+ /(shield \w+ tv)/i
19059
+ // Nvidia Shield TV
19060
+ ],
19061
+ [MODEL, [VENDOR, NVIDIA], [TYPE, SMARTTV]],
19062
+ [
19063
+ /\(dtv[\);].+(aquos)/i,
19064
+ /(aquos-tv[\w ]+)\)/i
19065
+ // Sharp
19066
+ ],
19067
+ [MODEL, [VENDOR, SHARP], [TYPE, SMARTTV]],
19068
+ [
19069
+ /(bravia[\w ]+)( bui|\))/i
19070
+ // Sony
19071
+ ],
19072
+ [MODEL, [VENDOR, SONY], [TYPE, SMARTTV]],
19073
+ [
19074
+ /(mi(tv|box)-?\w+) bui/i
19075
+ // Xiaomi
19076
+ ],
19077
+ [MODEL, [VENDOR, XIAOMI], [TYPE, SMARTTV]],
19078
+ [
19079
+ /Hbbtv.*(technisat) (.*);/i
19080
+ // TechniSAT
19081
+ ],
19082
+ [VENDOR, MODEL, [TYPE, SMARTTV]],
19083
+ [
19084
+ /\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,
19085
+ // Roku
19086
+ /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i
19087
+ // HbbTV devices
19088
+ ],
19089
+ [[VENDOR, /.+\/(\w+)/, "$1", strMapper, { "LG": "lge" }], [MODEL, trim], [TYPE, SMARTTV]],
19090
+ [
19091
+ ///////////////////
19092
+ // CONSOLES
19093
+ ///////////////////
19094
+ /(playstation \w+)/i
19095
+ // Playstation
19096
+ ],
19097
+ [MODEL, [VENDOR, SONY], [TYPE, CONSOLE]],
19098
+ [
19099
+ /\b(xbox(?: one)?(?!; xbox))[\); ]/i
19100
+ // Microsoft Xbox
19101
+ ],
19102
+ [MODEL, [VENDOR, MICROSOFT], [TYPE, CONSOLE]],
19103
+ [
19104
+ /(ouya)/i,
19105
+ // Ouya
19106
+ /(nintendo) (\w+)/i,
19107
+ // Nintendo
19108
+ /(retroid) (pocket ([^\)]+))/i
19109
+ // Retroid Pocket
19110
+ ],
19111
+ [VENDOR, MODEL, [TYPE, CONSOLE]],
19112
+ [
19113
+ /droid.+; (shield)( bui|\))/i
19114
+ // Nvidia Portable
19115
+ ],
19116
+ [MODEL, [VENDOR, NVIDIA], [TYPE, CONSOLE]],
19117
+ [
19118
+ ///////////////////
19119
+ // WEARABLES
19120
+ ///////////////////
19121
+ /\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i
19122
+ // Samsung Galaxy Watch
19123
+ ],
19124
+ [MODEL, [VENDOR, SAMSUNG], [TYPE, WEARABLE]],
19125
+ [
19126
+ /((pebble))app/i,
19127
+ // Pebble
19128
+ /(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i
19129
+ // Asus ZenWatch / LG Watch / Pixel Watch
19130
+ ],
19131
+ [VENDOR, MODEL, [TYPE, WEARABLE]],
19132
+ [
19133
+ /(ow(?:19|20)?we?[1-3]{1,3})/i
19134
+ // Oppo Watch
19135
+ ],
19136
+ [MODEL, [VENDOR, OPPO], [TYPE, WEARABLE]],
19137
+ [
19138
+ /(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i
19139
+ // Apple Watch
19140
+ ],
19141
+ [MODEL, [VENDOR, APPLE], [TYPE, WEARABLE]],
19142
+ [
19143
+ /(opwwe\d{3})/i
19144
+ // OnePlus Watch
19145
+ ],
19146
+ [MODEL, [VENDOR, ONEPLUS], [TYPE, WEARABLE]],
19147
+ [
19148
+ /(moto 360)/i
19149
+ // Motorola 360
19150
+ ],
19151
+ [MODEL, [VENDOR, MOTOROLA], [TYPE, WEARABLE]],
19152
+ [
19153
+ /(smartwatch 3)/i
19154
+ // Sony SmartWatch
19155
+ ],
19156
+ [MODEL, [VENDOR, SONY], [TYPE, WEARABLE]],
19157
+ [
19158
+ /(g watch r)/i
19159
+ // LG G Watch R
19160
+ ],
19161
+ [MODEL, [VENDOR, LG], [TYPE, WEARABLE]],
19162
+ [
19163
+ /droid.+; (wt63?0{2,3})\)/i
19164
+ ],
19165
+ [MODEL, [VENDOR, ZEBRA], [TYPE, WEARABLE]],
19166
+ [
19167
+ ///////////////////
19168
+ // XR
19169
+ ///////////////////
19170
+ /droid.+; (glass) \d/i
19171
+ // Google Glass
19172
+ ],
19173
+ [MODEL, [VENDOR, GOOGLE], [TYPE, XR]],
19174
+ [
19175
+ /(pico) ([\w ]+) os\d/i
19176
+ // Pico
19177
+ ],
19178
+ [VENDOR, MODEL, [TYPE, XR]],
19179
+ [
19180
+ /(quest( \d| pro)?s?).+vr/i
19181
+ // Meta Quest
19182
+ ],
19183
+ [MODEL, [VENDOR, FACEBOOK], [TYPE, XR]],
19184
+ [
19185
+ /mobile vr; rv.+firefox/i
19186
+ // Unidentifiable VR device using Firefox Reality / Wolvic
19187
+ ],
19188
+ [[TYPE, XR]],
19189
+ [
19190
+ ///////////////////
19191
+ // EMBEDDED
19192
+ ///////////////////
19193
+ /(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i
19194
+ // Tesla
19195
+ ],
19196
+ [VENDOR, [TYPE, EMBEDDED]],
19197
+ [
19198
+ /(aeobc)\b/i
19199
+ // Echo Dot
19200
+ ],
19201
+ [MODEL, [VENDOR, AMAZON], [TYPE, EMBEDDED]],
19202
+ [
19203
+ /(homepod).+mac os/i
19204
+ // Apple HomePod
19205
+ ],
19206
+ [MODEL, [VENDOR, APPLE], [TYPE, EMBEDDED]],
19207
+ [
19208
+ /windows iot/i
19209
+ // Unidentifiable embedded device using Windows IoT
19210
+ ],
19211
+ [[TYPE, EMBEDDED]],
19212
+ [
19213
+ ////////////////////
19214
+ // MIXED (GENERIC)
19215
+ ///////////////////
19216
+ /droid.+; ([\w- ]+) (4k|android|smart|google)[- ]?tv/i
19217
+ // Unidentifiable SmartTV
19218
+ ],
19219
+ [MODEL, [TYPE, SMARTTV]],
19220
+ [
19221
+ /\b((4k|android|smart|opera)[- ]?tv|tv; rv:|large screen[\w ]+safari)\b/i
19222
+ ],
19223
+ [[TYPE, SMARTTV]],
19224
+ [
19225
+ /droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew|; hmsc).+?(mobile|vr|\d) safari/i
19226
+ ],
19227
+ [MODEL, [TYPE, strMapper, { "mobile": "Mobile", "xr": "VR", "*": TABLET }]],
19228
+ [
19229
+ /\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i
19230
+ // Unidentifiable Tablet
19231
+ ],
19232
+ [[TYPE, TABLET]],
19233
+ [
19234
+ /(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i
19235
+ // Unidentifiable Mobile
19236
+ ],
19237
+ [[TYPE, MOBILE]],
19238
+ [
19239
+ /droid .+?; ([\w\. -]+)( bui|\))/i
19240
+ // Generic Android Device
19241
+ ],
19242
+ [MODEL, [VENDOR, "Generic"]]
19243
+ ],
19244
+ engine: [
19245
+ [
19246
+ /windows.+ edge\/([\w\.]+)/i
19247
+ // EdgeHTML
19248
+ ],
19249
+ [VERSION, [NAME, EDGE + "HTML"]],
19250
+ [
19251
+ /(arkweb)\/([\w\.]+)/i
19252
+ // ArkWeb
19253
+ ],
19254
+ [NAME, VERSION],
19255
+ [
19256
+ /webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i
19257
+ // Blink
19258
+ ],
19259
+ [VERSION, [NAME, "Blink"]],
19260
+ [
19261
+ /(presto)\/([\w\.]+)/i,
19262
+ // Presto
19263
+ /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i,
19264
+ // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna/Servo
19265
+ /ekioh(flow)\/([\w\.]+)/i,
19266
+ // Flow
19267
+ /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,
19268
+ // KHTML/Tasman/Links
19269
+ /(icab)[\/ ]([23]\.[\d\.]+)/i,
19270
+ // iCab
19271
+ /\b(libweb)/i
19272
+ // LibWeb
19273
+ ],
19274
+ [NAME, VERSION],
19275
+ [
19276
+ /ladybird\//i
19277
+ ],
19278
+ [[NAME, "LibWeb"]],
19279
+ [
19280
+ /rv\:([\w\.]{1,9})\b.+(gecko)/i
19281
+ // Gecko
19282
+ ],
19283
+ [VERSION, NAME]
19284
+ ],
19285
+ os: [
19286
+ [
19287
+ // Windows
19288
+ /(windows nt) (6\.[23]); arm/i
19289
+ // Windows RT
19290
+ ],
19291
+ [[NAME, /N/, "R"], [VERSION, strMapper, windowsVersionMap]],
19292
+ [
19293
+ /(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,
19294
+ // Windows IoT/Mobile/Phone
19295
+ // Windows NT/3.1/95/98/ME/2000/XP/Vista/7/8/8.1/10/11
19296
+ /(windows)[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i
19297
+ ],
19298
+ [NAME, VERSION],
19299
+ [
19300
+ /windows nt ?([\d\.\)]*)(?!.+xbox)/i,
19301
+ /\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i
19302
+ ],
19303
+ [[VERSION, /(;|\))/g, "", strMapper, windowsVersionMap], [NAME, WINDOWS]],
19304
+ [
19305
+ /(windows ce)\/?([\d\.]*)/i
19306
+ // Windows CE
19307
+ ],
19308
+ [NAME, VERSION],
19309
+ [
19310
+ // iOS/macOS
19311
+ /[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,
19312
+ // iOS
19313
+ /(?:ios;fbsv|ios(?=.+ip(?:ad|hone))|ip(?:ad|hone)(?: |.+i(?:pad)?)os)[\/ ]([\w\.]+)/i,
19314
+ /cfnetwork\/.+darwin/i
19315
+ ],
19316
+ [[VERSION, /_/g, "."], [NAME, "iOS"]],
19317
+ [
19318
+ /(mac os x) ?([\w\. ]*)/i,
19319
+ /(macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i
19320
+ // Mac OS
19321
+ ],
19322
+ [[NAME, "macOS"], [VERSION, /_/g, "."]],
19323
+ [
19324
+ // Google Chromecast
19325
+ /android ([\d\.]+).*crkey/i
19326
+ // Google Chromecast, Android-based
19327
+ ],
19328
+ [VERSION, [NAME, CHROMECAST + " Android"]],
19329
+ [
19330
+ /fuchsia.*crkey\/([\d\.]+)/i
19331
+ // Google Chromecast, Fuchsia-based
19332
+ ],
19333
+ [VERSION, [NAME, CHROMECAST + " Fuchsia"]],
19334
+ [
19335
+ /crkey\/([\d\.]+).*devicetype\/smartspeaker/i
19336
+ // Google Chromecast, Linux-based Smart Speaker
19337
+ ],
19338
+ [VERSION, [NAME, CHROMECAST + " SmartSpeaker"]],
19339
+ [
19340
+ /linux.*crkey\/([\d\.]+)/i
19341
+ // Google Chromecast, Legacy Linux-based
19342
+ ],
19343
+ [VERSION, [NAME, CHROMECAST + " Linux"]],
19344
+ [
19345
+ /crkey\/([\d\.]+)/i
19346
+ // Google Chromecast, unknown
19347
+ ],
19348
+ [VERSION, [NAME, CHROMECAST]],
19349
+ [
19350
+ // Mobile OSes
19351
+ /droid ([\w\.]+)\b.+(android[- ]x86)/i
19352
+ // Android-x86
19353
+ ],
19354
+ [VERSION, NAME],
19355
+ [
19356
+ /(ubuntu) ([\w\.]+) like android/i
19357
+ // Ubuntu Touch
19358
+ ],
19359
+ [[NAME, /(.+)/, "$1 Touch"], VERSION],
19360
+ [
19361
+ /(harmonyos)[\/ ]?([\d\.]*)/i,
19362
+ // HarmonyOS
19363
+ // Android/Blackberry/WebOS/QNX/Bada/RIM/KaiOS/Maemo/MeeGo/S40/Sailfish OS/OpenHarmony/Tizen
19364
+ /(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen)\w*[-\/\.; ]?([\d\.]*)/i
19365
+ ],
19366
+ [NAME, VERSION],
19367
+ [
19368
+ /\(bb(10);/i
19369
+ // BlackBerry 10
19370
+ ],
19371
+ [VERSION, [NAME, BLACKBERRY]],
19372
+ [
19373
+ /(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i
19374
+ // Symbian
19375
+ ],
19376
+ [VERSION, [NAME, "Symbian"]],
19377
+ [
19378
+ /mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i
19379
+ // Firefox OS
19380
+ ],
19381
+ [VERSION, [NAME, FIREFOX + " OS"]],
19382
+ [
19383
+ /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,
19384
+ // WebOS
19385
+ /webos(?:[ \/]?|\.tv-20(?=2[2-9]))(\d[\d\.]*)/i
19386
+ ],
19387
+ [VERSION, [NAME, "webOS"]],
19388
+ [
19389
+ /web0s;.+?(?:chr[o0]me|safari)\/(\d+)/i
19390
+ // https://webostv.developer.lge.com/develop/specifications/web-api-and-web-engine
19391
+ ],
19392
+ [[VERSION, strMapper, { "25": "120", "24": "108", "23": "94", "22": "87", "6": "79", "5": "68", "4": "53", "3": "38", "2": "538", "1": "537", "*": "TV" }], [NAME, "webOS"]],
19393
+ [
19394
+ /watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i
19395
+ // watchOS
19396
+ ],
19397
+ [VERSION, [NAME, "watchOS"]],
19398
+ [
19399
+ // Google ChromeOS
19400
+ /(cros) [\w]+(?:\)| ([\w\.]+)\b)/i
19401
+ // Chromium OS
19402
+ ],
19403
+ [[NAME, "Chrome OS"], VERSION],
19404
+ [
19405
+ // Smart TVs
19406
+ /panasonic;(viera)/i,
19407
+ // Panasonic Viera
19408
+ /(netrange)mmh/i,
19409
+ // Netrange
19410
+ /(nettv)\/(\d+\.[\w\.]+)/i,
19411
+ // NetTV
19412
+ // Console
19413
+ /(nintendo|playstation) (\w+)/i,
19414
+ // Nintendo/Playstation
19415
+ /(xbox); +xbox ([^\);]+)/i,
19416
+ // Microsoft Xbox (360, One, X, S, Series X, Series S)
19417
+ /(pico) .+os([\w\.]+)/i,
19418
+ // Pico
19419
+ // Other
19420
+ /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,
19421
+ // Joli/Palm
19422
+ /linux.+(mint)[\/\(\) ]?([\w\.]*)/i,
19423
+ // Mint
19424
+ /(mageia|vectorlinux|fuchsia|arcaos|arch(?= ?linux))[;l ]([\d\.]*)/i,
19425
+ // Mageia/VectorLinux/Fuchsia/ArcaOS/Arch
19426
+ /([kxln]?ubuntu|debian|suse|opensuse|gentoo|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire|knoppix)(?: gnu[\/ ]linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,
19427
+ // Ubuntu/Debian/SUSE/Gentoo/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire/Knoppix
19428
+ /((?:open)?solaris)[-\/ ]?([\w\.]*)/i,
19429
+ // Solaris
19430
+ /\b(aix)[; ]([1-9\.]{0,4})/i,
19431
+ // AIX
19432
+ /(hurd|linux|morphos)(?: (?:arm|x86|ppc)\w*| ?)([\w\.]*)/i,
19433
+ // Hurd/Linux/MorphOS
19434
+ /(gnu) ?([\w\.]*)/i,
19435
+ // GNU
19436
+ /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,
19437
+ // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly
19438
+ /(haiku) ?(r\d)?/i
19439
+ // Haiku
19440
+ ],
19441
+ [NAME, VERSION],
19442
+ [
19443
+ /(sunos) ?([\d\.]*)/i
19444
+ // Solaris
19445
+ ],
19446
+ [[NAME, "Solaris"], VERSION],
19447
+ [
19448
+ /\b(beos|os\/2|amigaos|openvms|hp-ux|serenityos)/i,
19449
+ // BeOS/OS2/AmigaOS/OpenVMS/HP-UX/SerenityOS
19450
+ /(unix) ?([\w\.]*)/i
19451
+ // UNIX
19452
+ ],
19453
+ [NAME, VERSION]
19454
+ ]
19455
+ };
19456
+ var defaultProps = function() {
19457
+ var props = { init: {}, isIgnore: {}, isIgnoreRgx: {}, toString: {} };
19458
+ setProps.call(props.init, [
19459
+ [BROWSER, [NAME, VERSION, MAJOR, TYPE]],
19460
+ [CPU, [ARCHITECTURE]],
19461
+ [DEVICE, [TYPE, MODEL, VENDOR]],
19462
+ [ENGINE, [NAME, VERSION]],
19463
+ [OS, [NAME, VERSION]]
19464
+ ]);
19465
+ setProps.call(props.isIgnore, [
19466
+ [BROWSER, [VERSION, MAJOR]],
19467
+ [ENGINE, [VERSION]],
19468
+ [OS, [VERSION]]
19469
+ ]);
19470
+ setProps.call(props.isIgnoreRgx, [
19471
+ [BROWSER, / ?browser$/i],
19472
+ [OS, / ?os$/i]
19473
+ ]);
19474
+ setProps.call(props.toString, [
19475
+ [BROWSER, [NAME, VERSION]],
19476
+ [CPU, [ARCHITECTURE]],
19477
+ [DEVICE, [VENDOR, MODEL]],
19478
+ [ENGINE, [NAME, VERSION]],
19479
+ [OS, [NAME, VERSION]]
19480
+ ]);
19481
+ return props;
19482
+ }();
19483
+ var createIData = function(item, itemType) {
19484
+ var init_props = defaultProps.init[itemType], is_ignoreProps = defaultProps.isIgnore[itemType] || 0, is_ignoreRgx = defaultProps.isIgnoreRgx[itemType] || 0, toString_props = defaultProps.toString[itemType] || 0;
19485
+ function IData() {
19486
+ setProps.call(this, init_props);
19487
+ }
19488
+ IData.prototype.getItem = function() {
19489
+ return item;
19490
+ };
19491
+ IData.prototype.withClientHints = function() {
19492
+ if (!NAVIGATOR_UADATA) {
19493
+ return item.parseCH().get();
19494
+ }
19495
+ return NAVIGATOR_UADATA.getHighEntropyValues(CH_ALL_VALUES).then(function(res) {
19496
+ return item.setCH(new UACHData(res, false)).parseCH().get();
19497
+ });
19498
+ };
19499
+ IData.prototype.withFeatureCheck = function() {
19500
+ return item.detectFeature().get();
19501
+ };
19502
+ if (itemType != RESULT) {
19503
+ IData.prototype.is = function(strToCheck) {
19504
+ var is2 = false;
19505
+ for (var i in this) {
19506
+ if (this.hasOwnProperty(i) && !has(is_ignoreProps, i) && lowerize(is_ignoreRgx ? strip(is_ignoreRgx, this[i]) : this[i]) == lowerize(is_ignoreRgx ? strip(is_ignoreRgx, strToCheck) : strToCheck)) {
19507
+ is2 = true;
19508
+ if (strToCheck != TYPEOF.UNDEFINED)
19509
+ break;
19510
+ } else if (strToCheck == TYPEOF.UNDEFINED && is2) {
19511
+ is2 = !is2;
19512
+ break;
19513
+ }
19514
+ }
19515
+ return is2;
19516
+ };
19517
+ IData.prototype.toString = function() {
19518
+ var str = EMPTY;
19519
+ for (var i in toString_props) {
19520
+ if (typeof this[toString_props[i]] !== TYPEOF.UNDEFINED) {
19521
+ str += (str ? " " : EMPTY) + this[toString_props[i]];
19522
+ }
19523
+ }
19524
+ return str || TYPEOF.UNDEFINED;
19525
+ };
19526
+ }
19527
+ if (!NAVIGATOR_UADATA) {
19528
+ IData.prototype.then = function(cb) {
19529
+ var that = this;
19530
+ var IDataResolve = function() {
19531
+ for (var prop in that) {
19532
+ if (that.hasOwnProperty(prop)) {
19533
+ this[prop] = that[prop];
19534
+ }
19535
+ }
19536
+ };
19537
+ IDataResolve.prototype = {
19538
+ is: IData.prototype.is,
19539
+ toString: IData.prototype.toString
19540
+ };
19541
+ var resolveData = new IDataResolve();
19542
+ cb(resolveData);
19543
+ return resolveData;
19544
+ };
19545
+ }
19546
+ return new IData();
19547
+ };
19548
+ function UACHData(uach, isHttpUACH) {
19549
+ uach = uach || {};
19550
+ setProps.call(this, CH_ALL_VALUES);
19551
+ if (isHttpUACH) {
19552
+ setProps.call(this, [
19553
+ [BRANDS, itemListToArray(uach[CH])],
19554
+ [FULLVERLIST, itemListToArray(uach[CH_FULL_VER_LIST])],
19555
+ [MOBILE, /\?1/.test(uach[CH_MOBILE])],
19556
+ [MODEL, stripQuotes(uach[CH_MODEL])],
19557
+ [PLATFORM, stripQuotes(uach[CH_PLATFORM])],
19558
+ [PLATFORMVER, stripQuotes(uach[CH_PLATFORM_VER])],
19559
+ [ARCHITECTURE, stripQuotes(uach[CH_ARCH])],
19560
+ [FORMFACTORS, itemListToArray(uach[CH_FORM_FACTORS])],
19561
+ [BITNESS, stripQuotes(uach[CH_BITNESS])]
19562
+ ]);
19563
+ } else {
19564
+ for (var prop in uach) {
19565
+ if (this.hasOwnProperty(prop) && typeof uach[prop] !== TYPEOF.UNDEFINED)
19566
+ this[prop] = uach[prop];
19567
+ }
19568
+ }
19569
+ }
19570
+ function UAItem(itemType, ua, rgxMap, uaCH) {
19571
+ this.get = function(prop) {
19572
+ if (!prop)
19573
+ return this.data;
19574
+ return this.data.hasOwnProperty(prop) ? this.data[prop] : void 0;
19575
+ };
19576
+ this.set = function(prop, val) {
19577
+ this.data[prop] = val;
19578
+ return this;
19579
+ };
19580
+ this.setCH = function(ch) {
19581
+ this.uaCH = ch;
19582
+ return this;
19583
+ };
19584
+ this.detectFeature = function() {
19585
+ if (NAVIGATOR && NAVIGATOR.userAgent == this.ua) {
19586
+ switch (this.itemType) {
19587
+ case BROWSER:
19588
+ if (NAVIGATOR.brave && typeof NAVIGATOR.brave.isBrave == TYPEOF.FUNCTION) {
19589
+ this.set(NAME, "Brave");
19590
+ }
19591
+ break;
19592
+ case DEVICE:
19593
+ if (!this.get(TYPE) && NAVIGATOR_UADATA && NAVIGATOR_UADATA[MOBILE]) {
19594
+ this.set(TYPE, MOBILE);
19595
+ }
19596
+ if (this.get(MODEL) == "Macintosh" && NAVIGATOR && typeof NAVIGATOR.standalone !== TYPEOF.UNDEFINED && NAVIGATOR.maxTouchPoints && NAVIGATOR.maxTouchPoints > 2) {
19597
+ this.set(MODEL, "iPad").set(TYPE, TABLET);
19598
+ }
19599
+ break;
19600
+ case OS:
19601
+ if (!this.get(NAME) && NAVIGATOR_UADATA && NAVIGATOR_UADATA[PLATFORM]) {
19602
+ this.set(NAME, NAVIGATOR_UADATA[PLATFORM]);
19603
+ }
19604
+ break;
19605
+ case RESULT:
19606
+ var data3 = this.data;
19607
+ var detect = function(itemType2) {
19608
+ return data3[itemType2].getItem().detectFeature().get();
19609
+ };
19610
+ this.set(BROWSER, detect(BROWSER)).set(CPU, detect(CPU)).set(DEVICE, detect(DEVICE)).set(ENGINE, detect(ENGINE)).set(OS, detect(OS));
19611
+ }
19612
+ }
19613
+ return this;
19614
+ };
19615
+ this.parseUA = function() {
19616
+ if (this.itemType != RESULT) {
19617
+ rgxMapper.call(this.data, this.ua, this.rgxMap);
19618
+ }
19619
+ switch (this.itemType) {
19620
+ case BROWSER:
19621
+ this.set(MAJOR, majorize(this.get(VERSION)));
19622
+ break;
19623
+ case OS:
19624
+ if (this.get(NAME) == "iOS" && this.get(VERSION) == "18.6") {
19625
+ var realVersion = /\) Version\/([\d\.]+)/.exec(this.ua);
19626
+ if (realVersion && parseInt(realVersion[1].substring(0, 2), 10) >= 26) {
19627
+ this.set(VERSION, realVersion[1]);
19628
+ }
19629
+ }
19630
+ break;
19631
+ }
19632
+ return this;
19633
+ };
19634
+ this.parseCH = function() {
19635
+ var uaCH2 = this.uaCH, rgxMap2 = this.rgxMap;
19636
+ switch (this.itemType) {
19637
+ case BROWSER:
19638
+ case ENGINE:
19639
+ var brands = uaCH2[FULLVERLIST] || uaCH2[BRANDS], prevName;
19640
+ if (brands) {
19641
+ for (var i = 0; i < brands.length; i++) {
19642
+ var brandName = brands[i].brand || brands[i], brandVersion = brands[i].version;
19643
+ if (this.itemType == BROWSER && !/not.a.brand/i.test(brandName) && (!prevName || /Chrom/.test(prevName) && brandName != CHROMIUM || prevName == EDGE && /WebView2/.test(brandName))) {
19644
+ brandName = strMapper(brandName, browserHintsMap);
19645
+ prevName = this.get(NAME);
19646
+ if (!(prevName && !/Chrom/.test(prevName) && /Chrom/.test(brandName))) {
19647
+ this.set(NAME, brandName).set(VERSION, brandVersion).set(MAJOR, majorize(brandVersion));
19648
+ }
19649
+ prevName = brandName;
19650
+ }
19651
+ if (this.itemType == ENGINE && brandName == CHROMIUM) {
19652
+ this.set(VERSION, brandVersion);
19653
+ }
19654
+ }
19655
+ }
19656
+ break;
19657
+ case CPU:
19658
+ var archName = uaCH2[ARCHITECTURE];
19659
+ if (archName) {
19660
+ if (archName && uaCH2[BITNESS] == "64")
19661
+ archName += "64";
19662
+ rgxMapper.call(this.data, archName + ";", rgxMap2);
19663
+ }
19664
+ break;
19665
+ case DEVICE:
19666
+ if (uaCH2[MOBILE]) {
19667
+ this.set(TYPE, MOBILE);
19668
+ }
19669
+ if (uaCH2[MODEL]) {
19670
+ this.set(MODEL, uaCH2[MODEL]);
19671
+ if (!this.get(TYPE) || !this.get(VENDOR)) {
19672
+ var reParse = {};
19673
+ rgxMapper.call(reParse, "droid 9; " + uaCH2[MODEL] + ")", rgxMap2);
19674
+ if (!this.get(TYPE) && !!reParse.type) {
19675
+ this.set(TYPE, reParse.type);
19676
+ }
19677
+ if (!this.get(VENDOR) && !!reParse.vendor) {
19678
+ this.set(VENDOR, reParse.vendor);
19679
+ }
19680
+ }
19681
+ }
19682
+ if (uaCH2[FORMFACTORS]) {
19683
+ var ff;
19684
+ if (typeof uaCH2[FORMFACTORS] !== "string") {
19685
+ var idx = 0;
19686
+ while (!ff && idx < uaCH2[FORMFACTORS].length) {
19687
+ ff = strMapper(uaCH2[FORMFACTORS][idx++], formFactorsMap);
19688
+ }
19689
+ } else {
19690
+ ff = strMapper(uaCH2[FORMFACTORS], formFactorsMap);
19691
+ }
19692
+ this.set(TYPE, ff);
19693
+ }
19694
+ break;
19695
+ case OS:
19696
+ var osName = uaCH2[PLATFORM];
19697
+ if (osName) {
19698
+ var osVersion = uaCH2[PLATFORMVER];
19699
+ if (osName == WINDOWS)
19700
+ osVersion = parseInt(majorize(osVersion), 10) >= 13 ? "11" : "10";
19701
+ this.set(NAME, osName).set(VERSION, osVersion);
19702
+ }
19703
+ if (this.get(NAME) == WINDOWS && uaCH2[MODEL] == "Xbox") {
19704
+ this.set(NAME, "Xbox").set(VERSION, void 0);
19705
+ }
19706
+ break;
19707
+ case RESULT:
19708
+ var data3 = this.data;
19709
+ var parse2 = function(itemType2) {
19710
+ return data3[itemType2].getItem().setCH(uaCH2).parseCH().get();
19711
+ };
19712
+ this.set(BROWSER, parse2(BROWSER)).set(CPU, parse2(CPU)).set(DEVICE, parse2(DEVICE)).set(ENGINE, parse2(ENGINE)).set(OS, parse2(OS));
19713
+ }
19714
+ return this;
19715
+ };
19716
+ setProps.call(this, [
19717
+ ["itemType", itemType],
19718
+ ["ua", ua],
19719
+ ["uaCH", uaCH],
19720
+ ["rgxMap", rgxMap],
19721
+ ["data", createIData(this, itemType)]
19722
+ ]);
19723
+ return this;
19724
+ }
19725
+ function UAParser(ua, extensions, headers) {
19726
+ if (typeof ua === TYPEOF.OBJECT) {
19727
+ if (isExtensions(ua, true)) {
19728
+ if (typeof extensions === TYPEOF.OBJECT) {
19729
+ headers = extensions;
19730
+ }
19731
+ extensions = ua;
19732
+ } else {
19733
+ headers = ua;
19734
+ extensions = void 0;
19735
+ }
19736
+ ua = void 0;
19737
+ } else if (typeof ua === TYPEOF.STRING && !isExtensions(extensions, true)) {
19738
+ headers = extensions;
19739
+ extensions = void 0;
19740
+ }
19741
+ if (headers) {
19742
+ if (typeof headers.append === TYPEOF.FUNCTION) {
19743
+ var kv = {};
19744
+ headers.forEach(function(v, k2) {
19745
+ kv[String(k2).toLowerCase()] = v;
19746
+ });
19747
+ headers = kv;
19748
+ } else {
19749
+ var normalized = {};
19750
+ for (var header in headers) {
19751
+ if (headers.hasOwnProperty(header)) {
19752
+ normalized[String(header).toLowerCase()] = headers[header];
19753
+ }
19754
+ }
19755
+ headers = normalized;
19756
+ }
19757
+ }
19758
+ if (!(this instanceof UAParser)) {
19759
+ return new UAParser(ua, extensions, headers).getResult();
19760
+ }
19761
+ var userAgent = typeof ua === TYPEOF.STRING ? ua : (
19762
+ // Passed user-agent string
19763
+ headers && headers[USER_AGENT] ? headers[USER_AGENT] : (
19764
+ // User-Agent from passed headers
19765
+ NAVIGATOR && NAVIGATOR.userAgent ? NAVIGATOR.userAgent : (
19766
+ // navigator.userAgent
19767
+ EMPTY
19768
+ )
19769
+ )
19770
+ ), httpUACH = new UACHData(headers, true), regexMap = extensions ? extend(defaultRegexes, extensions) : defaultRegexes, createItemFunc = function(itemType) {
19771
+ if (itemType == RESULT) {
19772
+ return function() {
19773
+ return new UAItem(itemType, userAgent, regexMap, httpUACH).set("ua", userAgent).set(BROWSER, this.getBrowser()).set(CPU, this.getCPU()).set(DEVICE, this.getDevice()).set(ENGINE, this.getEngine()).set(OS, this.getOS()).get();
19774
+ };
19775
+ } else {
19776
+ return function() {
19777
+ return new UAItem(itemType, userAgent, regexMap[itemType], httpUACH).parseUA().get();
19778
+ };
19779
+ }
19780
+ };
19781
+ setProps.call(this, [
19782
+ ["getBrowser", createItemFunc(BROWSER)],
19783
+ ["getCPU", createItemFunc(CPU)],
19784
+ ["getDevice", createItemFunc(DEVICE)],
19785
+ ["getEngine", createItemFunc(ENGINE)],
19786
+ ["getOS", createItemFunc(OS)],
19787
+ ["getResult", createItemFunc(RESULT)],
19788
+ ["getUA", function() {
19789
+ return userAgent;
19790
+ }],
19791
+ ["setUA", function(ua2) {
19792
+ if (isString(ua2))
19793
+ userAgent = trim(ua2, UA_MAX_LENGTH);
19794
+ return this;
19795
+ }]
19796
+ ]).setUA(userAgent);
19797
+ return this;
19798
+ }
19799
+ UAParser.VERSION = LIBVERSION;
19800
+ UAParser.BROWSER = enumerize([NAME, VERSION, MAJOR, TYPE]);
19801
+ UAParser.CPU = enumerize([ARCHITECTURE]);
19802
+ UAParser.DEVICE = enumerize([MODEL, VENDOR, TYPE, CONSOLE, MOBILE, SMARTTV, TABLET, WEARABLE, EMBEDDED]);
19803
+ UAParser.ENGINE = UAParser.OS = enumerize([NAME, VERSION]);
19804
+
19211
19805
  // ../hms-video-store/dist/index.js
19212
- var import_ua_parser_js = __toESM(require_ua_parser());
19213
19806
  var import_uuid3 = require("uuid");
19214
19807
  var import_uuid4 = require("uuid");
19215
19808
  var import_lodash3 = __toESM(require_lodash2());
@@ -19451,7 +20044,7 @@ function shimGetUserMedia(window2, browserDetails) {
19451
20044
  if (typeof c2 !== "object" || c2.mandatory || c2.optional) {
19452
20045
  return c2;
19453
20046
  }
19454
- const cc = {};
20047
+ const cc2 = {};
19455
20048
  Object.keys(c2).forEach((key) => {
19456
20049
  if (key === "require" || key === "advanced" || key === "mediaSource") {
19457
20050
  return;
@@ -19467,35 +20060,35 @@ function shimGetUserMedia(window2, browserDetails) {
19467
20060
  return name === "deviceId" ? "sourceId" : name;
19468
20061
  };
19469
20062
  if (r.ideal !== void 0) {
19470
- cc.optional = cc.optional || [];
19471
- let oc = {};
20063
+ cc2.optional = cc2.optional || [];
20064
+ let oc2 = {};
19472
20065
  if (typeof r.ideal === "number") {
19473
- oc[oldname_("min", key)] = r.ideal;
19474
- cc.optional.push(oc);
19475
- oc = {};
19476
- oc[oldname_("max", key)] = r.ideal;
19477
- cc.optional.push(oc);
20066
+ oc2[oldname_("min", key)] = r.ideal;
20067
+ cc2.optional.push(oc2);
20068
+ oc2 = {};
20069
+ oc2[oldname_("max", key)] = r.ideal;
20070
+ cc2.optional.push(oc2);
19478
20071
  } else {
19479
- oc[oldname_("", key)] = r.ideal;
19480
- cc.optional.push(oc);
20072
+ oc2[oldname_("", key)] = r.ideal;
20073
+ cc2.optional.push(oc2);
19481
20074
  }
19482
20075
  }
19483
20076
  if (r.exact !== void 0 && typeof r.exact !== "number") {
19484
- cc.mandatory = cc.mandatory || {};
19485
- cc.mandatory[oldname_("", key)] = r.exact;
20077
+ cc2.mandatory = cc2.mandatory || {};
20078
+ cc2.mandatory[oldname_("", key)] = r.exact;
19486
20079
  } else {
19487
20080
  ["min", "max"].forEach((mix) => {
19488
20081
  if (r[mix] !== void 0) {
19489
- cc.mandatory = cc.mandatory || {};
19490
- cc.mandatory[oldname_(mix, key)] = r[mix];
20082
+ cc2.mandatory = cc2.mandatory || {};
20083
+ cc2.mandatory[oldname_(mix, key)] = r[mix];
19491
20084
  }
19492
20085
  });
19493
20086
  }
19494
20087
  });
19495
20088
  if (c2.advanced) {
19496
- cc.optional = (cc.optional || []).concat(c2.advanced);
20089
+ cc2.optional = (cc2.optional || []).concat(c2.advanced);
19497
20090
  }
19498
- return cc;
20091
+ return cc2;
19499
20092
  };
19500
20093
  const shimConstraints_ = function(constraints, func) {
19501
20094
  if (browserDetails.version >= 61) {
@@ -21038,15 +21631,15 @@ function shimSendThrowTypeError(window2) {
21038
21631
  if (!(window2.RTCPeerConnection && "createDataChannel" in window2.RTCPeerConnection.prototype)) {
21039
21632
  return;
21040
21633
  }
21041
- function wrapDcSend(dc, pc) {
21042
- const origDataChannelSend = dc.send;
21043
- dc.send = function send() {
21634
+ function wrapDcSend(dc2, pc) {
21635
+ const origDataChannelSend = dc2.send;
21636
+ dc2.send = function send() {
21044
21637
  const data3 = arguments[0];
21045
21638
  const length = data3.length || data3.size || data3.byteLength;
21046
- if (dc.readyState === "open" && pc.sctp && length > pc.sctp.maxMessageSize) {
21639
+ if (dc2.readyState === "open" && pc.sctp && length > pc.sctp.maxMessageSize) {
21047
21640
  throw new TypeError("Message too large (can send a maximum of " + pc.sctp.maxMessageSize + " bytes)");
21048
21641
  }
21049
- return origDataChannelSend.apply(dc, arguments);
21642
+ return origDataChannelSend.apply(dc2, arguments);
21050
21643
  };
21051
21644
  }
21052
21645
  const origCreateDataChannel = window2.RTCPeerConnection.prototype.createDataChannel;
@@ -21316,36 +21909,36 @@ var import_eventemitter2 = require("eventemitter2");
21316
21909
  var import_eventemitter22 = require("eventemitter2");
21317
21910
  var import_uuid8 = require("uuid");
21318
21911
  var import_eventemitter23 = require("eventemitter2");
21319
- var Yt = __toESM(require_lib());
21912
+ var Zt = __toESM(require_lib());
21320
21913
  var import_eventemitter24 = __toESM(require("eventemitter2"));
21321
21914
  var import_uuid9 = require("uuid");
21322
21915
  var import_uuid10 = require("uuid");
21323
- var co = Object.defineProperty;
21324
- var lo = Object.defineProperties;
21325
- var uo = Object.getOwnPropertyDescriptors;
21326
- var ai = Object.getOwnPropertySymbols;
21327
- var gs = Object.prototype.hasOwnProperty;
21328
- var Ts = Object.prototype.propertyIsEnumerable;
21329
- var Ss = (a2, e, t) => e in a2 ? co(a2, e, { enumerable: true, configurable: true, writable: true, value: t }) : a2[e] = t;
21916
+ var go = Object.defineProperty;
21917
+ var To = Object.defineProperties;
21918
+ var fo = Object.getOwnPropertyDescriptors;
21919
+ var ni = Object.getOwnPropertySymbols;
21920
+ var vs = Object.prototype.hasOwnProperty;
21921
+ var Ms = Object.prototype.propertyIsEnumerable;
21922
+ var fs = (a2, e, t) => e in a2 ? go(a2, e, { enumerable: true, configurable: true, writable: true, value: t }) : a2[e] = t;
21330
21923
  var m = (a2, e) => {
21331
21924
  for (var t in e || (e = {}))
21332
- gs.call(e, t) && Ss(a2, t, e[t]);
21333
- if (ai)
21334
- for (var t of ai(e))
21335
- Ts.call(e, t) && Ss(a2, t, e[t]);
21925
+ vs.call(e, t) && fs(a2, t, e[t]);
21926
+ if (ni)
21927
+ for (var t of ni(e))
21928
+ Ms.call(e, t) && fs(a2, t, e[t]);
21336
21929
  return a2;
21337
21930
  };
21338
- var M = (a2, e) => lo(a2, uo(e));
21339
- var kr = (a2, e) => {
21931
+ var M = (a2, e) => To(a2, fo(e));
21932
+ var Er = (a2, e) => {
21340
21933
  var t = {};
21341
21934
  for (var i in a2)
21342
- gs.call(a2, i) && e.indexOf(i) < 0 && (t[i] = a2[i]);
21343
- if (a2 != null && ai)
21344
- for (var i of ai(a2))
21345
- e.indexOf(i) < 0 && Ts.call(a2, i) && (t[i] = a2[i]);
21935
+ vs.call(a2, i) && e.indexOf(i) < 0 && (t[i] = a2[i]);
21936
+ if (a2 != null && ni)
21937
+ for (var i of ni(a2))
21938
+ e.indexOf(i) < 0 && Ms.call(a2, i) && (t[i] = a2[i]);
21346
21939
  return t;
21347
21940
  };
21348
- var mo = (a2, e) => () => (e || a2((e = { exports: {} }).exports, e), e.exports);
21941
+ var yo = (a2, e) => () => (e || a2((e = { exports: {} }).exports, e), e.exports);
21349
21942
  var c = (a2, e, t) => new Promise((i, r) => {
21350
21943
  var s = (d) => {
21351
21944
  try {
@@ -21362,51 +21955,51 @@ var c = (a2, e, t) => new Promise((i, r) => {
21362
21955
  }, n = (d) => d.done ? i(d.value) : Promise.resolve(d.value).then(s, o);
21363
21956
  n((t = t.apply(a2, e)).next());
21364
21957
  });
21365
- var Ir = mo((Jc, Eo) => {
21366
- Eo.exports = { version: "0.12.39", license: "MIT", repository: { type: "git", url: "https://github.com/100mslive/web-sdks.git", directory: "packages/hms-video-store" }, main: "dist/index.cjs.js", module: "dist/index.js", typings: "dist/index.d.ts", files: ["dist", "src"], engines: { node: ">=12" }, exports: { ".": { require: "./dist/index.cjs.js", import: "./dist/index.js", default: "./dist/index.js" } }, sideEffects: false, scripts: { prestart: "rm -rf dist && yarn types:build", start: 'concurrently "yarn dev" "yarn types"', dev: "node ../../scripts/dev", "build:only": "node ../../scripts/build", build: "yarn build:only && yarn types:build", types: "tsc -w", "types:build": "tsc -p tsconfig.json", format: "prettier --write src/**/*.ts", test: "jest --maxWorkers=1", "test:watch": "jest --watch", "test:coverage": "jest --coverage", lint: "eslint -c ../../.eslintrc .", "lint:fix": "yarn lint --fix", prepare: "yarn build", size: "size-limit", analyze: "size-limit --why", docs: "rm -rf ./docs && typedoc && rm -f ./docs/README.md && mkdir ./docs/home &&mv ./docs/modules.md ./docs/home/content.md && node ../../scripts/docs-store && npx prettier --write './docs/**/*'" }, name: "@100mslive/hms-video-store", author: "100ms", dependencies: { eventemitter2: "^6.4.9", immer: "^9.0.6", "lodash.isequal": "^4.5.0", reselect: "4.0.0", "sdp-transform": "^2.14.1", "ua-parser-js": "^1.0.1", uuid: "^8.3.2", "webrtc-adapter": "^8.0.0", zustand: "3.5.7" }, devDependencies: { "@types/dom-screen-wake-lock": "^1.0.1", "@types/lodash.isequal": "^4.5.8", "@types/sdp-transform": "^2.4.4", "@types/ua-parser-js": "^0.7.36", "@types/uuid": "^8.3.0", "jest-canvas-mock": "^2.3.1", "jsdom-worker": "^0.3.0", tslib: "^2.2.0" }, description: "@100mslive Core SDK which abstracts the complexities of webRTC while providing a reactive store for data management with a unidirectional data flow", keywords: ["video", "webrtc", "conferencing", "100ms"] };
21958
+ var Cr = yo((id, Co) => {
21959
+ Co.exports = { version: "0.12.40-alpha.0", license: "MIT", repository: { type: "git", url: "https://github.com/100mslive/web-sdks.git", directory: "packages/hms-video-store" }, main: "dist/index.cjs.js", module: "dist/index.js", typings: "dist/index.d.ts", files: ["dist", "src"], engines: { node: ">=12" }, exports: { ".": { require: "./dist/index.cjs.js", import: "./dist/index.js", default: "./dist/index.js" } }, sideEffects: false, scripts: { prestart: "rm -rf dist && yarn types:build", start: 'concurrently "yarn dev" "yarn types"', dev: "node ../../scripts/dev", "build:only": "node ../../scripts/build", build: "yarn build:only && yarn types:build", types: "tsc -w", "types:build": "tsc -p tsconfig.json", format: "prettier --write src/**/*.ts", test: "jest --maxWorkers=1", "test:watch": "jest --watch", "test:coverage": "jest --coverage", lint: "eslint -c ../../.eslintrc .", "lint:fix": "yarn lint --fix", prepare: "yarn build", size: "size-limit", analyze: "size-limit --why", docs: "rm -rf ./docs && typedoc && rm -f ./docs/README.md && mkdir ./docs/home &&mv ./docs/modules.md ./docs/home/content.md && node ../../scripts/docs-store && npx prettier --write './docs/**/*'" }, name: "@100mslive/hms-video-store", author: "100ms", dependencies: { eventemitter2: "^6.4.9", immer: "^9.0.6", "lodash.isequal": "^4.5.0", reselect: "4.0.0", "sdp-transform": "^2.14.1", "ua-parser-js": "^2.0.6", uuid: "^8.3.2", "webrtc-adapter": "^8.0.0", zustand: "3.5.7" }, devDependencies: { "@types/dom-screen-wake-lock": "^1.0.1", "@types/lodash.isequal": "^4.5.8", "@types/sdp-transform": "^2.4.4", "@types/ua-parser-js": "^0.7.39", "@types/uuid": "^8.3.0", "jest-canvas-mock": "^2.3.1", "jsdom-worker": "^0.3.0", tslib: "^2.2.0" }, description: "@100mslive Core SDK which abstracts the complexities of webRTC while providing a reactive store for data management with a unidirectional data flow", keywords: ["video", "webrtc", "conferencing", "100ms"] };
21367
21960
  });
21368
- var Er = ((n) => (n.Disconnected = "Disconnected", n.Preview = "Preview", n.Connecting = "Connecting", n.Connected = "Connected", n.Reconnecting = "Reconnecting", n.Disconnecting = "Disconnecting", n.Failed = "Failed", n))(Er || {});
21369
- var So = ((e) => (e.CHAT = "chat", e))(So || {});
21370
- var fs = ((t) => (t.INFO = "info", t.ERROR = "error", t))(fs || {});
21371
- var Pr = ((w) => (w.PEER_JOINED = "PEER_JOINED", w.PEER_LEFT = "PEER_LEFT", w.PEER_LIST = "PEER_LIST", w.NEW_MESSAGE = "NEW_MESSAGE", w.ERROR = "ERROR", w.RECONNECTING = "RECONNECTING", w.RECONNECTED = "RECONNECTED", w.TRACK_ADDED = "TRACK_ADDED", w.TRACK_REMOVED = "TRACK_REMOVED", w.TRACK_MUTED = "TRACK_MUTED", w.TRACK_UNMUTED = "TRACK_UNMUTED", w.TRACK_DEGRADED = "TRACK_DEGRADED", w.TRACK_RESTORED = "TRACK_RESTORED", w.TRACK_DESCRIPTION_CHANGED = "TRACK_DESCRIPTION_CHANGED", w.ROLE_UPDATED = "ROLE_UPDATED", w.CHANGE_TRACK_STATE_REQUEST = "CHANGE_TRACK_STATE_REQUEST", w.CHANGE_MULTI_TRACK_STATE_REQUEST = "CHANGE_MULTI_TRACK_STATE_REQUEST", w.ROOM_ENDED = "ROOM_ENDED", w.REMOVED_FROM_ROOM = "REMOVED_FROM_ROOM", w.DEVICE_CHANGE_UPDATE = "DEVICE_CHANGE_UPDATE", w.PLAYLIST_TRACK_ENDED = "PLAYLIST_TRACK_ENDED", w.NAME_UPDATED = "NAME_UPDATED", w.METADATA_UPDATED = "METADATA_UPDATED", w.POLL_CREATED = "POLL_CREATED", w.POLL_STARTED = "POLL_STARTED", w.POLL_STOPPED = "POLL_STOPPED", w.POLL_VOTES_UPDATED = "POLL_VOTES_UPDATED", w.POLLS_LIST = "POLLS_LIST", w.HAND_RAISE_CHANGED = "HAND_RAISE_CHANGED", w.TRANSCRIPTION_STATE_UPDATED = "TRANSCRIPTION_STATE_UPDATED", w))(Pr || {});
21372
- var vs = ((t) => (t.audio = "audio", t.video = "video", t))(vs || {});
21373
- function Fe(a2, e) {
21961
+ var Pr = ((n) => (n.Disconnected = "Disconnected", n.Preview = "Preview", n.Connecting = "Connecting", n.Connected = "Connected", n.Reconnecting = "Reconnecting", n.Disconnecting = "Disconnecting", n.Failed = "Failed", n))(Pr || {});
21962
+ var ko = ((e) => (e.CHAT = "chat", e))(ko || {});
21963
+ var ys = ((t) => (t.INFO = "info", t.ERROR = "error", t))(ys || {});
21964
+ var br = ((w) => (w.PEER_JOINED = "PEER_JOINED", w.PEER_LEFT = "PEER_LEFT", w.PEER_LIST = "PEER_LIST", w.NEW_MESSAGE = "NEW_MESSAGE", w.ERROR = "ERROR", w.RECONNECTING = "RECONNECTING", w.RECONNECTED = "RECONNECTED", w.TRACK_ADDED = "TRACK_ADDED", w.TRACK_REMOVED = "TRACK_REMOVED", w.TRACK_MUTED = "TRACK_MUTED", w.TRACK_UNMUTED = "TRACK_UNMUTED", w.TRACK_DEGRADED = "TRACK_DEGRADED", w.TRACK_RESTORED = "TRACK_RESTORED", w.TRACK_DESCRIPTION_CHANGED = "TRACK_DESCRIPTION_CHANGED", w.ROLE_UPDATED = "ROLE_UPDATED", w.CHANGE_TRACK_STATE_REQUEST = "CHANGE_TRACK_STATE_REQUEST", w.CHANGE_MULTI_TRACK_STATE_REQUEST = "CHANGE_MULTI_TRACK_STATE_REQUEST", w.ROOM_ENDED = "ROOM_ENDED", w.REMOVED_FROM_ROOM = "REMOVED_FROM_ROOM", w.DEVICE_CHANGE_UPDATE = "DEVICE_CHANGE_UPDATE", w.PLAYLIST_TRACK_ENDED = "PLAYLIST_TRACK_ENDED", w.NAME_UPDATED = "NAME_UPDATED", w.METADATA_UPDATED = "METADATA_UPDATED", w.POLL_CREATED = "POLL_CREATED", w.POLL_STARTED = "POLL_STARTED", w.POLL_STOPPED = "POLL_STOPPED", w.POLL_VOTES_UPDATED = "POLL_VOTES_UPDATED", w.POLLS_LIST = "POLLS_LIST", w.HAND_RAISE_CHANGED = "HAND_RAISE_CHANGED", w.TRANSCRIPTION_STATE_UPDATED = "TRANSCRIPTION_STATE_UPDATED", w))(br || {});
21965
+ var ks = ((t) => (t.audio = "audio", t.video = "video", t))(ks || {});
21966
+ function Ge(a2, e) {
21374
21967
  let t, i;
21375
21968
  if (e)
21376
21969
  for (let r of e.auxiliaryTracks) {
21377
21970
  let s = a2[r];
21378
- go(s) && (i = gt(s) ? s : i, t = Tt(s) ? s : t);
21971
+ Eo(s) && (i = Tt(s) ? s : i, t = ft(s) ? s : t);
21379
21972
  }
21380
21973
  return { video: t, audio: i };
21381
21974
  }
21382
- function gt(a2) {
21975
+ function Tt(a2) {
21383
21976
  return a2 && a2.type === "audio";
21384
21977
  }
21385
- function Tt(a2) {
21978
+ function ft(a2) {
21386
21979
  return a2 && a2.type === "video";
21387
21980
  }
21388
- function go(a2) {
21981
+ function Eo(a2) {
21389
21982
  return a2 && a2.source === "screen";
21390
21983
  }
21391
- function ci(a2) {
21984
+ function li(a2) {
21392
21985
  return a2 && a2.source === "audioplaylist";
21393
21986
  }
21394
- function ft(a2) {
21987
+ function vt(a2) {
21395
21988
  return a2 && a2.source === "videoplaylist";
21396
21989
  }
21397
- function Ms(a2) {
21990
+ function Es(a2) {
21398
21991
  return a2 ? !!(a2 != null && a2.degraded) : false;
21399
21992
  }
21400
- function ze(a2, e) {
21993
+ function Ye(a2, e) {
21401
21994
  return e && a2.tracks[e] ? a2.tracks[e].enabled : false;
21402
21995
  }
21403
- function vt(a2) {
21996
+ function Mt(a2) {
21404
21997
  var r;
21405
21998
  let e = false, t = false, i = false;
21406
21999
  return (r = a2 == null ? void 0 : a2.publishParams) != null && r.allowed && (e = a2.publishParams.allowed.includes("video"), t = a2.publishParams.allowed.includes("audio"), i = a2.publishParams.allowed.includes("screen")), { video: e, audio: t, screen: i };
21407
22000
  }
21408
- var ks = ((d) => (d[d.VERBOSE = 0] = "VERBOSE", d[d.DEBUG = 1] = "DEBUG", d[d.INFO = 2] = "INFO", d[d.WARN = 3] = "WARN", d[d.TIME = 4] = "TIME", d[d.TIMEEND = 5] = "TIMEEND", d[d.ERROR = 6] = "ERROR", d[d.NONE = 7] = "NONE", d))(ks || {});
21409
- var To = typeof window != "undefined" && typeof window.expect != "undefined";
22001
+ var bs = ((d) => (d[d.VERBOSE = 0] = "VERBOSE", d[d.DEBUG = 1] = "DEBUG", d[d.INFO = 2] = "INFO", d[d.WARN = 3] = "WARN", d[d.TIME = 4] = "TIME", d[d.TIMEEND = 5] = "TIMEEND", d[d.ERROR = 6] = "ERROR", d[d.NONE = 7] = "NONE", d))(bs || {});
22002
+ var Po = typeof window != "undefined" && typeof window.expect != "undefined";
21410
22003
  var l = class {
21411
22004
  static v(e, ...t) {
21412
22005
  this.log(0, e, ...t);
@@ -21472,28 +22065,46 @@ var l = class {
21472
22065
  }
21473
22066
  }
21474
22067
  };
21475
- l.level = To ? 7 : 0;
21476
- var fe = new import_ua_parser_js.UAParser();
21477
- var U = typeof window != "undefined";
21478
- var Es;
21479
- var Ge = typeof window == "undefined" && !((Es = fe.getBrowser().name) != null && Es.toLowerCase().includes("electron"));
21480
- var vo = () => !Ge;
21481
- var Tc = vo();
21482
- var Ps;
21483
- var bs;
21484
- var Cs = (bs = (Ps = fe.getBrowser()) == null ? void 0 : Ps.name) == null ? void 0 : bs.toLowerCase().includes("safari");
22068
+ l.level = Po ? 7 : 0;
22069
+ var Ar = new UAParser();
22070
+ var yt = null;
22071
+ var Ir = null;
22072
+ var x = typeof window != "undefined";
22073
+ if (x)
22074
+ try {
22075
+ let a2 = Ar.getResult(), e = a2.withClientHints();
22076
+ e && typeof e.then == "function" ? (Ir = e, Ir.then((t) => {
22077
+ yt = t;
22078
+ }).catch(() => {
22079
+ yt = a2;
22080
+ })) : (l.d("UAParser", "Client Hints not supported, using standard UA parsing"), yt = e);
22081
+ } catch (a2) {
22082
+ yt = Ar.getResult();
22083
+ }
22084
+ var De = () => yt || Ar.getResult();
22085
+ var he = { getBrowser: () => De().browser, getOS: () => De().os, getDevice: () => De().device, getCPU: () => De().cpu, getEngine: () => De().engine, getUA: () => De().ua, getResult: De, withClientHints: () => Ir || Promise.resolve(De()) };
21485
22086
  var As;
22087
+ var We = typeof window == "undefined" && !((As = he.getBrowser().name) != null && As.toLowerCase().includes("electron"));
22088
+ var Ao = () => !We;
22089
+ var bc = Ao();
21486
22090
  var Is;
21487
- var di = ((Is = (As = fe.getBrowser()) == null ? void 0 : As.name) == null ? void 0 : Is.toLowerCase()) === "firefox";
21488
- var Ls = ((i) => (i.CUSTOM = "CUSTOM", i.LOCAL = "LOCAL", i.HMS = "HMS", i))(Ls || {});
21489
- function Mo() {
21490
- if (U && window) {
22091
+ var Rs;
22092
+ var Ns = (Rs = (Is = he.getBrowser()) == null ? void 0 : Is.name) == null ? void 0 : Rs.toLowerCase().includes("safari");
22093
+ var Hs;
22094
+ var Cs;
22095
+ var Os = ((Cs = (Hs = he.getBrowser()) == null ? void 0 : Hs.name) == null ? void 0 : Cs.toLowerCase()) === "firefox";
22096
+ var Ls;
22097
+ var Ds;
22098
+ var xs = ((Ds = (Ls = he.getEngine()) == null ? void 0 : Ls.name) == null ? void 0 : Ds.toLowerCase()) === "blink";
22099
+ var Us = ((i) => (i.CUSTOM = "CUSTOM", i.LOCAL = "LOCAL", i.HMS = "HMS", i))(Us || {});
22100
+ function Io() {
22101
+ if (x && window) {
21491
22102
  let a2 = window.location.hostname;
21492
22103
  return a2 === "localhost" || a2 === "127.0.0.1" ? "LOCAL" : a2.includes("app.100ms.live") ? "HMS" : "CUSTOM";
21493
22104
  }
21494
22105
  return "CUSTOM";
21495
22106
  }
21496
- var Xe = Mo();
22107
+ var Ze = Io();
21497
22108
  var k = { WebSocketConnectionErrors: { FAILED_TO_CONNECT: 1e3, WEBSOCKET_CONNECTION_LOST: 1003, ABNORMAL_CLOSE: 1006 }, APIErrors: { SERVER_ERRORS: 2e3, INIT_CONFIG_NOT_AVAILABLE: 2002, ENDPOINT_UNREACHABLE: 2003, INVALID_TOKEN_FORMAT: 2004 }, TracksErrors: { GENERIC_TRACK: 3e3, CANT_ACCESS_CAPTURE_DEVICE: 3001, DEVICE_NOT_AVAILABLE: 3002, DEVICE_IN_USE: 3003, DEVICE_LOST_MIDWAY: 3004, NOTHING_TO_RETURN: 3005, INVALID_VIDEO_SETTINGS: 3006, CODEC_CHANGE_NOT_PERMITTED: 3007, AUTOPLAY_ERROR: 3008, OVER_CONSTRAINED: 3009, NO_AUDIO_DETECTED: 3010, SYSTEM_DENIED_PERMISSION: 3011, CURRENT_TAB_NOT_SHARED: 3012, AUDIO_PLAYBACK_ERROR: 3013, SELECTED_DEVICE_MISSING: 3014, NO_DATA: 3015 }, WebrtcErrors: { CREATE_OFFER_FAILED: 4001, CREATE_ANSWER_FAILED: 4002, SET_LOCAL_DESCRIPTION_FAILED: 4003, SET_REMOTE_DESCRIPTION_FAILED: 4004, ICE_FAILURE: 4005, ICE_DISCONNECTED: 4006, STATS_FAILED: 4007 }, WebsocketMethodErrors: { SERVER_ERRORS: 5e3, ALREADY_JOINED: 5001, CANNOT_JOIN_PREVIEW_IN_PROGRESS: 5002 }, GenericErrors: { NOT_CONNECTED: 6e3, SIGNALLING: 6001, UNKNOWN: 6002, NOT_READY: 6003, JSON_PARSING_FAILED: 6004, TRACK_METADATA_MISSING: 6005, RTC_TRACK_MISSING: 6006, PEER_METADATA_MISSING: 6007, INVALID_ROLE: 6008, PREVIEW_IN_PROGRESS: 6009, MISSING_MEDIADEVICES: 6010, MISSING_RTCPEERCONNECTION: 6011, LOCAL_STORAGE_ACCESS_DENIED: 6012, VALIDATION_FAILED: 6013 }, PlaylistErrors: { NO_ENTRY_TO_PLAY: 8001, NO_ENTRY_IS_PLAYING: 8002 } };
21498
22109
  var E = class a extends Error {
21499
22110
  constructor(t, i, r, s, o, n = false) {
@@ -21550,8 +22161,8 @@ var W = class extends E {
21550
22161
  }`;
21551
22162
  }
21552
22163
  };
21553
- var Ds = ((r) => (r.AUDIO = "audio", r.VIDEO = "video", r.AUDIO_VIDEO = "audio, video", r.SCREEN = "screen", r))(Ds || {});
21554
- var yo = ["join", "offer", "answer", "trickle", "on-error", "JOIN"];
22164
+ var Bs = ((r) => (r.AUDIO = "audio", r.VIDEO = "video", r.AUDIO_VIDEO = "audio, video", r.SCREEN = "screen", r))(Bs || {});
22165
+ var Ro = ["join", "offer", "answer", "trickle", "on-error", "JOIN"];
21555
22166
  var S = { WebSocketConnectionErrors: { FailedToConnect(a2, e = "") {
21556
22167
  return new E(k.WebSocketConnectionErrors.FAILED_TO_CONNECT, "WebsocketFailedToConnect", a2, `[WS]: ${e}`, `[WS]: ${e}`);
21557
22168
  }, WebSocketConnectionLost(a2, e = "") {
@@ -21613,7 +22224,7 @@ var S = { WebSocketConnectionErrors: { FailedToConnect(a2, e = "") {
21613
22224
  }, StatsFailed(a2, e = "") {
21614
22225
  return new E(k.WebrtcErrors.STATS_FAILED, "StatsFailed", a2, `Failed to WebRTC get stats - ${e}`, e);
21615
22226
  } }, WebsocketMethodErrors: { ServerErrors(a2, e, t) {
21616
- return new E(a2, "ServerErrors", e, t, t, yo.includes(e));
22227
+ return new E(a2, "ServerErrors", e, t, t, Ro.includes(e));
21617
22228
  }, AlreadyJoined(a2, e = "") {
21618
22229
  return new E(k.WebsocketMethodErrors.ALREADY_JOINED, "AlreadyJoined", a2, "[JOIN]: You have already joined this room.", e);
21619
22230
  }, CannotJoinPreviewInProgress(a2, e = "") {
@@ -21661,7 +22272,7 @@ var S = { WebSocketConnectionErrors: { FailedToConnect(a2, e = "") {
21661
22272
  }, NoEntryPlaying(a2, e) {
21662
22273
  return new E(k.PlaylistErrors.NO_ENTRY_IS_PLAYING, "NoEntryIsPlaying", a2, "No entry is playing at this time", e);
21663
22274
  } } };
21664
- var Ar = class {
22275
+ var Hr = class {
21665
22276
  constructor() {
21666
22277
  this.valuesMap = /* @__PURE__ */ new Map();
21667
22278
  }
@@ -21686,9 +22297,9 @@ var Ar = class {
21686
22297
  return this.valuesMap.size;
21687
22298
  }
21688
22299
  };
21689
- var ws = () => {
22300
+ var Vs = () => {
21690
22301
  try {
21691
- U && !localStorage && (window.localStorage = new Ar());
22302
+ x && !localStorage && (window.localStorage = new Hr());
21692
22303
  } catch (a2) {
21693
22304
  l.e("Error initialising localStorage", S.GenericErrors.LocalStorageAccessDenied());
21694
22305
  }
@@ -21700,7 +22311,7 @@ var ve = class {
21700
22311
  }
21701
22312
  getStorage() {
21702
22313
  try {
21703
- return U && !this.storage && (ws(), this.storage = window.localStorage), this.storage;
22314
+ return x && !this.storage && (Vs(), this.storage = window.localStorage), this.storage;
21704
22315
  } catch (e) {
21705
22316
  return l.e("Error initialising localStorage", S.GenericErrors.LocalStorageAccessDenied()), null;
21706
22317
  }
@@ -21720,32 +22331,32 @@ var ve = class {
21720
22331
  (e = this.getStorage()) == null || e.removeItem(this.key);
21721
22332
  }
21722
22333
  };
21723
- var li = () => {
22334
+ var ui = () => {
21724
22335
  let a2, e = new ve("hms-analytics-deviceId"), t = e.get();
21725
22336
  return t ? a2 = t : (a2 = (0, import_uuid4.v4)(), e.set(a2)), a2;
21726
22337
  };
21727
- function he(a2) {
22338
+ function me(a2) {
21728
22339
  return a2 != null;
21729
22340
  }
21730
- var Os = Ir().version;
21731
- function Et(a2 = "prod", e) {
21732
- let t = "web", i = Xe !== "LOCAL" && a2 === "prod" ? "prod" : "debug";
21733
- if (Ge)
21734
- return xs({ os: "web_nodejs", os_version: process.version, sdk: t, sdk_version: Os, env: i, domain: Xe, is_prebuilt: !!(e != null && e.isPrebuilt), framework: "node", framework_version: process.version, framework_sdk_version: e == null ? void 0 : e.sdkVersion });
21735
- let r = fe.getOS(), s = fe.getDevice(), o = fe.getBrowser(), n = Rr(`web_${r.name}`), d = r.version || "", u = Rr(`${o.name}_${o.version}`), p = u;
21736
- return s.type && (p = `${Rr(`${s.vendor}_${s.type}`)}/${u}`), xs({ os: n, os_version: d, sdk: t, sdk_version: Os, device_model: p, env: i, domain: Xe, is_prebuilt: !!(e != null && e.isPrebuilt), framework: e == null ? void 0 : e.type, framework_version: e == null ? void 0 : e.version, framework_sdk_version: e == null ? void 0 : e.sdkVersion });
22341
+ var Ws = Cr().version;
22342
+ function bt(a2 = "prod", e) {
22343
+ let t = "web", i = Ze !== "LOCAL" && a2 === "prod" ? "prod" : "debug";
22344
+ if (We)
22345
+ return $s({ os: "web_nodejs", os_version: process.version, sdk: t, sdk_version: Ws, env: i, domain: Ze, is_prebuilt: !!(e != null && e.isPrebuilt), framework: "node", framework_version: process.version, framework_sdk_version: e == null ? void 0 : e.sdkVersion });
22346
+ let r = he.getOS(), s = he.getDevice(), o = he.getBrowser(), n = Lr(`web_${r.name}`), d = r.version || "", u = Lr(`${o.name}_${o.version}`), p = u;
22347
+ return s.type && (p = `${Lr(`${s.vendor}_${s.type}`)}/${u}`), $s({ os: n, os_version: d, sdk: t, sdk_version: Ws, device_model: p, env: i, domain: Ze, is_prebuilt: !!(e != null && e.isPrebuilt), framework: e == null ? void 0 : e.type, framework_version: e == null ? void 0 : e.version, framework_sdk_version: e == null ? void 0 : e.sdkVersion });
21737
22348
  }
21738
- function Rr(a2) {
22349
+ function Lr(a2) {
21739
22350
  return a2.replace(/ /g, "_");
21740
22351
  }
21741
- var xs = (a2, e = ",") => Object.keys(a2).filter((t) => he(a2[t])).map((t) => `${t}:${a2[t]}`).join(e);
22352
+ var $s = (a2, e = ",") => Object.keys(a2).filter((t) => me(a2[t])).map((t) => `${t}:${a2[t]}`).join(e);
21742
22353
  var C = class {
21743
22354
  constructor({ name: e, level: t, properties: i, includesPII: r, timestamp: s }) {
21744
- this.metadata = { peer: {}, userAgent: Et() };
21745
- this.name = e, this.level = t, this.includesPII = r || false, this.properties = i || {}, this.timestamp = s || (/* @__PURE__ */ new Date()).getTime(), this.event_id = (0, import_uuid3.v4)(), this.device_id = li();
22355
+ this.metadata = { peer: {}, userAgent: bt() };
22356
+ this.name = e, this.level = t, this.includesPII = r || false, this.properties = i || {}, this.timestamp = s || (/* @__PURE__ */ new Date()).getTime(), this.event_id = (0, import_uuid3.v4)(), this.device_id = ui();
21746
22357
  }
21747
22358
  toSignalParams() {
21748
- return { name: this.name, info: M(m({}, this.properties), { timestamp: this.timestamp, domain: Xe }), timestamp: (/* @__PURE__ */ new Date()).getTime() };
22359
+ return { name: this.name, info: M(m({}, this.properties), { timestamp: this.timestamp, domain: Ze }), timestamp: (/* @__PURE__ */ new Date()).getTime() };
21749
22360
  }
21750
22361
  };
21751
22362
  var y = class {
@@ -21758,12 +22369,12 @@ var y = class {
21758
22369
  return new C({ name: i, level: r, properties: s });
21759
22370
  }
21760
22371
  static preview(i) {
21761
- var r = i, { error: e } = r, t = kr(r, ["error"]);
22372
+ var r = i, { error: e } = r, t = Er(r, ["error"]);
21762
22373
  let s = this.eventNameFor("preview", e === void 0), o = e ? 2 : 1, n = this.getPropertiesWithError(t, e);
21763
22374
  return new C({ name: s, level: o, properties: n });
21764
22375
  }
21765
22376
  static join(i) {
21766
- var r = i, { error: e } = r, t = kr(r, ["error"]);
22377
+ var r = i, { error: e } = r, t = Er(r, ["error"]);
21767
22378
  let s = this.eventNameFor("join", e === void 0), o = e ? 2 : 1, n = this.getPropertiesWithError(M(m({}, t), { is_preview_called: !!t.is_preview_called }), e);
21768
22379
  return new C({ name: s, level: o, properties: n });
21769
22380
  }
@@ -21854,14 +22465,24 @@ var y = class {
21854
22465
  }
21855
22466
  };
21856
22467
  y.KEY_REQUESTED_AT = "requested_at", y.KEY_RESPONDED_AT = "responded_at";
21857
- var Hr = class {
22468
+ var Dr = class {
21858
22469
  constructor() {
21859
22470
  this.storage = new ve("hms-device-selection");
21860
22471
  this.remember = false;
21861
22472
  this.TAG = "[HMSDeviceStorage]";
21862
22473
  }
21863
22474
  setDevices(e) {
21864
- this.devices = e;
22475
+ var r;
22476
+ if (this.devices = e, !this.remember)
22477
+ return;
22478
+ let t = this.storage.get();
22479
+ if (!t)
22480
+ return;
22481
+ let i = ["audioInput", "videoInput", "audioOutput"];
22482
+ for (let s of i) {
22483
+ let o = t[s];
22484
+ o && ((r = e[s]) != null && r.some((d) => this.isSame(o, d)) || (l.w(this.TAG, `Removing ${s} device from storage as it's no longer available: ${o.deviceId}`), this.removeSelection(s)));
22485
+ }
21865
22486
  }
21866
22487
  rememberDevices(e) {
21867
22488
  this.remember = e;
@@ -21877,6 +22498,10 @@ var Hr = class {
21877
22498
  let s = this.storage.get() || {};
21878
22499
  s[e] = r, this.storage.set(s);
21879
22500
  }
22501
+ removeSelection(e) {
22502
+ let t = this.storage.get() || {};
22503
+ t[e] && (delete t[e], this.storage.set(t));
22504
+ }
21880
22505
  getSelection() {
21881
22506
  if (this.remember)
21882
22507
  return this.storage.get();
@@ -21888,19 +22513,19 @@ var Hr = class {
21888
22513
  return e.deviceId === t.deviceId && (e.groupId === t.groupId || !e.groupId);
21889
22514
  }
21890
22515
  };
21891
- var X = new Hr();
21892
- var Cr = ((t) => (t.TRANSFORM = "TRANSFORM", t.ANALYZE = "ANALYZE", t))(Cr || {});
21893
- var Lr = ((t) => (t.PLATFORM_NOT_SUPPORTED = "PLATFORM_NOT_SUPPORTED", t.DEVICE_NOT_SUPPORTED = "DEVICE_NOT_SUPPORTED", t))(Lr || {});
21894
- var Dr = ((t) => (t.SIP = "sip", t.REGULAR = "regular", t))(Dr || {});
21895
- var Bs = ((n) => (n.NONE = "none", n.INITIALISED = "initialised", n.STARTED = "started", n.PAUSED = "paused", n.RESUMED = "resumed", n.STOPPED = "stopped", n.FAILED = "failed", n))(Bs || {});
21896
- var Vs = ((t) => (t.DVR = "dvr", t.NO_DVR = "no-dvr", t))(Vs || {});
21897
- var Fs = ((i) => (i.REGULAR = "regular", i.SCREEN = "screen", i.COMPOSITE = "composite", i))(Fs || {});
21898
- var Gs = ((r) => (r.INITIALISED = "initialised", r.STARTED = "started", r.STOPPED = "stopped", r.FAILED = "failed", r))(Gs || {});
21899
- var Ws = ((e) => (e.CAPTION = "caption", e))(Ws || {});
21900
- var wr = ((t) => (t.VOICE = "voice", t.MUSIC = "music", t))(wr || {});
21901
- var $s = ((i) => (i.videoInput = "videoInput", i.audioInput = "audioInput", i.audioOutput = "audioOutput", i))($s || {});
21902
- var _r = ((r) => (r.SPEAKERPHONE = "SPEAKERPHONE", r.WIRED = "WIRED", r.BLUETOOTH = "BLUETOOTH", r.EARPIECE = "EARPIECE", r))(_r || {});
21903
- function gi(a2, e = 300) {
22516
+ var X = new Dr();
22517
+ var wr = ((t) => (t.TRANSFORM = "TRANSFORM", t.ANALYZE = "ANALYZE", t))(wr || {});
22518
+ var _r = ((t) => (t.PLATFORM_NOT_SUPPORTED = "PLATFORM_NOT_SUPPORTED", t.DEVICE_NOT_SUPPORTED = "DEVICE_NOT_SUPPORTED", t))(_r || {});
22519
+ var Nr = ((t) => (t.SIP = "sip", t.REGULAR = "regular", t))(Nr || {});
22520
+ var qs = ((n) => (n.NONE = "none", n.INITIALISED = "initialised", n.STARTED = "started", n.PAUSED = "paused", n.RESUMED = "resumed", n.STOPPED = "stopped", n.FAILED = "failed", n))(qs || {});
22521
+ var js = ((t) => (t.DVR = "dvr", t.NO_DVR = "no-dvr", t))(js || {});
22522
+ var Js = ((i) => (i.REGULAR = "regular", i.SCREEN = "screen", i.COMPOSITE = "composite", i))(Js || {});
22523
+ var Qs = ((r) => (r.INITIALISED = "initialised", r.STARTED = "started", r.STOPPED = "stopped", r.FAILED = "failed", r))(Qs || {});
22524
+ var zs = ((e) => (e.CAPTION = "caption", e))(zs || {});
22525
+ var Or = ((t) => (t.VOICE = "voice", t.MUSIC = "music", t))(Or || {});
22526
+ var Ys = ((i) => (i.videoInput = "videoInput", i.audioInput = "audioInput", i.audioOutput = "audioOutput", i))(Ys || {});
22527
+ var xr = ((r) => (r.SPEAKERPHONE = "SPEAKERPHONE", r.WIRED = "WIRED", r.BLUETOOTH = "BLUETOOTH", r.EARPIECE = "EARPIECE", r))(xr || {});
22528
+ function Ti(a2, e = 300) {
21904
22529
  let t;
21905
22530
  return function(...i) {
21906
22531
  clearTimeout(t), t = void 0;
@@ -21910,7 +22535,7 @@ function gi(a2, e = 300) {
21910
22535
  }, e);
21911
22536
  };
21912
22537
  }
21913
- var Vr = class {
22538
+ var Wr = class {
21914
22539
  constructor() {
21915
22540
  this.TAG = "[HMSIntersectionObserverWrapper]";
21916
22541
  this.listeners = /* @__PURE__ */ new WeakMap();
@@ -21933,12 +22558,12 @@ var Vr = class {
21933
22558
  this.createObserver();
21934
22559
  }
21935
22560
  isSupported() {
21936
- let e = U && typeof window.IntersectionObserver != "undefined";
22561
+ let e = x && typeof window.IntersectionObserver != "undefined";
21937
22562
  return e || l.w(this.TAG, "IntersectionObserver is not supported, fallback will be used instead"), e;
21938
22563
  }
21939
22564
  };
21940
- var zs = new Vr();
21941
- var Fr = class {
22565
+ var ra = new Wr();
22566
+ var $r = class {
21942
22567
  constructor() {
21943
22568
  this.TAG = "[HMSResizeObserverWrapper]";
21944
22569
  this.listeners = /* @__PURE__ */ new WeakMap();
@@ -21951,7 +22576,7 @@ var Fr = class {
21951
22576
  (t = this.resizeObserver) == null || t.unobserve(e), this.listeners.delete(e);
21952
22577
  };
21953
22578
  this.createObserver = () => {
21954
- this.isSupported() && !this.resizeObserver && (this.resizeObserver = new ResizeObserver(gi(this.handleResize, 300)));
22579
+ this.isSupported() && !this.resizeObserver && (this.resizeObserver = new ResizeObserver(Ti(this.handleResize, 300)));
21955
22580
  };
21956
22581
  this.handleResize = (e) => {
21957
22582
  var t;
@@ -21961,47 +22586,47 @@ var Fr = class {
21961
22586
  this.createObserver();
21962
22587
  }
21963
22588
  isSupported() {
21964
- let e = U && typeof window.ResizeObserver != "undefined";
22589
+ let e = x && typeof window.ResizeObserver != "undefined";
21965
22590
  return e || l.w(this.TAG, "Resize Observer is not supported"), e;
21966
22591
  }
21967
22592
  };
21968
- var Ys = new Fr();
21969
- var Gr = ((t) => (t.TRANSFORM = "TRANSFORM", t.ANALYZE = "ANALYZE", t))(Gr || {});
21970
- var Wr = ((t) => (t["2D"] = "2d", t.WEBGL = "webgl", t.WEBGL2 = "webgl2", t))(Wr || {});
21971
- var ea = "https://event.100ms.live/v2/client/report";
21972
- var ta = "https://event-nonprod.100ms.live/v2/client/report";
21973
- var Rt = Math.pow(2, 31) - 1;
21974
- var ot = class {
22593
+ var sa = new $r();
22594
+ var Kr = ((t) => (t.TRANSFORM = "TRANSFORM", t.ANALYZE = "ANALYZE", t))(Kr || {});
22595
+ var qr = ((t) => (t["2D"] = "2d", t.WEBGL = "webgl", t.WEBGL2 = "webgl2", t))(qr || {});
22596
+ var na = "https://event.100ms.live/v2/client/report";
22597
+ var ca = "https://event-nonprod.100ms.live/v2/client/report";
22598
+ var Ct = Math.pow(2, 31) - 1;
22599
+ var nt = class {
21975
22600
  };
21976
- ot.makePeerId = () => (0, import_uuid7.v4)();
22601
+ nt.makePeerId = () => (0, import_uuid7.v4)();
21977
22602
  var F = (a2) => a2.room;
21978
- var Go = (a2) => a2.errors;
21979
- var Mm = createSelector(Go, (a2) => a2.length === 0 ? null : a2.at(-1));
21980
- var ym = createSelector(F, (a2) => a2.id);
22603
+ var Qo = (a2) => a2.errors;
22604
+ var Rm = createSelector(Qo, (a2) => a2.length === 0 ? null : a2.at(-1));
22605
+ var Hm = createSelector(F, (a2) => a2.id);
21981
22606
  var z = (a2) => a2.peers;
21982
- var Ai = (a2) => a2.messages.byID;
21983
- var la = (a2) => a2.messages.allIDs;
22607
+ var Ii = (a2) => a2.messages.byID;
22608
+ var Ta = (a2) => a2.messages.allIDs;
21984
22609
  var N = (a2) => a2.tracks;
21985
- var zr = (a2) => a2.appData;
21986
- var Wo = (a2) => a2.speakers;
21987
- var Be = createSelector([F], (a2) => a2 && a2.isConnected);
21988
- var Pm = createSelector([Be, F], (a2, e) => a2 ? e.peerCount !== void 0 ? e.peerCount || 1 : e.peers.length : Math.max(e.peerCount !== void 0 ? e.peerCount : e.peers.length - 1, 0));
21989
- var $o = (a2) => a2.hideLocalPeer;
21990
- var Ee = createSelector([F, z, $o], (a2, e, t) => t ? a2.peers.filter((i) => a2.localPeer !== i).map((i) => e[i]) : a2.peers.map((i) => e[i]));
21991
- var Ko = createSelector(N, (a2) => Object.values(a2));
22610
+ var Zr = (a2) => a2.appData;
22611
+ var zo = (a2) => a2.speakers;
22612
+ var Ve = createSelector([F], (a2) => a2 && a2.isConnected);
22613
+ var Dm = createSelector([Ve, F], (a2, e) => a2 ? e.peerCount !== void 0 ? e.peerCount || 1 : e.peers.length : Math.max(e.peerCount !== void 0 ? e.peerCount : e.peers.length - 1, 0));
22614
+ var Yo = (a2) => a2.hideLocalPeer;
22615
+ var Ee = createSelector([F, z, Yo], (a2, e, t) => t ? a2.peers.filter((i) => a2.localPeer !== i).map((i) => e[i]) : a2.peers.map((i) => e[i]));
22616
+ var Xo = createSelector(N, (a2) => Object.values(a2));
21992
22617
  var re = createSelector(F, z, (a2, e) => e[a2.localPeer]);
21993
22618
  var Ie = createSelector(F, (a2) => a2.localPeer);
21994
- var bm = createSelector(re, (a2) => a2 == null ? void 0 : a2.name);
21995
- var Am = createSelector(re, (a2) => a2 == null ? void 0 : a2.roleName);
22619
+ var wm = createSelector(re, (a2) => a2 == null ? void 0 : a2.name);
22620
+ var _m = createSelector(re, (a2) => a2 == null ? void 0 : a2.roleName);
21996
22621
  var le = createSelector(re, (a2) => a2 == null ? void 0 : a2.audioTrack);
21997
22622
  var Z = createSelector(re, (a2) => a2 == null ? void 0 : a2.videoTrack);
21998
- var qo = createSelector(re, (a2) => a2 == null ? void 0 : a2.auxiliaryTracks);
21999
- var pa = createSelector([le, Z, qo], (a2, e, t) => {
22623
+ var Zo = createSelector(re, (a2) => a2 == null ? void 0 : a2.auxiliaryTracks);
22624
+ var va = createSelector([le, Z, Zo], (a2, e, t) => {
22000
22625
  let i = t ? [...t] : [];
22001
22626
  return a2 && i.unshift(a2), e && i.unshift(e), i;
22002
22627
  });
22003
- var Im = createSelector(Ee, (a2) => a2.filter((e) => !e.isLocal));
22004
- var Rm = createSelector(z, Wo, (a2, e) => {
22628
+ var Nm = createSelector(Ee, (a2) => a2.filter((e) => !e.isLocal));
22629
+ var Om = createSelector(z, zo, (a2, e) => {
22005
22630
  let t = Object.entries(e).sort((i, r) => {
22006
22631
  var n, d;
22007
22632
  let s = ((n = i[1]) == null ? void 0 : n.audioLevel) || 0;
@@ -22014,112 +22639,112 @@ var Rm = createSelector(z, Wo, (a2, e) => {
22014
22639
  }
22015
22640
  return null;
22016
22641
  });
22017
- var Xr = createSelector(re, N, (a2, e) => {
22018
- let { video: t, audio: i } = Fe(e, a2);
22642
+ var ts = createSelector(re, N, (a2, e) => {
22643
+ let { video: t, audio: i } = Ge(e, a2);
22019
22644
  return !!(t || i);
22020
22645
  });
22021
- var jo = createSelector(z, N, (a2, e) => {
22646
+ var en = createSelector(z, N, (a2, e) => {
22022
22647
  let t;
22023
22648
  for (let i in a2) {
22024
- let r = a2[i], { video: s, audio: o } = Fe(e, r);
22649
+ let r = a2[i], { video: s, audio: o } = Ge(e, r);
22025
22650
  if (s)
22026
22651
  return r;
22027
22652
  o && !t && (t = r);
22028
22653
  }
22029
22654
  return t;
22030
22655
  });
22031
- var Cm = createSelector(jo, (a2) => !!a2);
22032
- var Lm = createSelector(z, N, (a2, e) => {
22656
+ var Um = createSelector(en, (a2) => !!a2);
22657
+ var Bm = createSelector(z, N, (a2, e) => {
22033
22658
  for (let t in a2) {
22034
- let i = a2[t], { audio: r, video: s } = Fe(e, i);
22659
+ let i = a2[t], { audio: r, video: s } = Ge(e, i);
22035
22660
  if (!s && r)
22036
22661
  return i;
22037
22662
  }
22038
22663
  });
22039
- var Dm = createSelector(z, N, (a2, e) => {
22664
+ var Vm = createSelector(z, N, (a2, e) => {
22040
22665
  let t = [], i = [];
22041
22666
  for (let r in a2) {
22042
- let s = a2[r], { video: o, audio: n } = Fe(e, s);
22667
+ let s = a2[r], { video: o, audio: n } = Ge(e, s);
22043
22668
  o ? t.push(s) : n && i.push(s);
22044
22669
  }
22045
22670
  return t.concat(i);
22046
22671
  });
22047
- var wm = createSelector(z, N, (a2, e) => {
22672
+ var Fm = createSelector(z, N, (a2, e) => {
22048
22673
  for (let t in e) {
22049
22674
  let i = e[t];
22050
- if (ft(i) && Tt(i) && i.peerId)
22675
+ if (vt(i) && ft(i) && i.peerId)
22051
22676
  return a2[i.peerId];
22052
22677
  }
22053
22678
  });
22054
- var _m = createSelector(z, N, (a2, e) => {
22679
+ var Gm = createSelector(z, N, (a2, e) => {
22055
22680
  for (let t in e) {
22056
22681
  let i = e[t];
22057
- if (ci(i) && i.peerId)
22682
+ if (li(i) && i.peerId)
22058
22683
  return a2[i.peerId];
22059
22684
  }
22060
22685
  });
22061
- var Nm = createSelector(Ko, (a2) => a2.filter(Ms));
22062
- var Om = createSelector(la, (a2) => a2.length);
22063
- var xm = createSelector(Ai, (a2) => Object.values(a2).filter((e) => !e.read).length);
22064
- var Dt = createSelector(la, Ai, (a2, e) => {
22686
+ var Wm = createSelector(Xo, (a2) => a2.filter(Es));
22687
+ var $m = createSelector(Ta, (a2) => a2.length);
22688
+ var Km = createSelector(Ii, (a2) => Object.values(a2).filter((e) => !e.read).length);
22689
+ var _t = createSelector(Ta, Ii, (a2, e) => {
22065
22690
  let t = [];
22066
22691
  return a2.forEach((i) => {
22067
22692
  t.push(e[i]);
22068
22693
  }), t;
22069
22694
  });
22070
- var Jo = createSelector(Dt, (a2) => a2.filter((e) => {
22695
+ var tn = createSelector(_t, (a2) => a2.filter((e) => {
22071
22696
  var t;
22072
22697
  return !e.recipientPeer && !(e.recipientRoles && ((t = e.recipientRoles) == null ? void 0 : t.length) > 0);
22073
22698
  }));
22074
- var Um = createSelector(Jo, (a2) => a2.filter((e) => !e.read).length);
22699
+ var qm = createSelector(tn, (a2) => a2.filter((e) => !e.read).length);
22075
22700
  var se = createSelector([F], (a2) => a2 && a2.roomState);
22076
- var ma = createSelector(se, (a2) => a2 === "Preview");
22077
- var Bm = createSelector(F, (a2) => a2.roomState !== "Disconnected");
22078
- var Vm = createSelector(F, (a2) => !a2.transcriptions || a2.transcriptions.length <= 0 ? false : a2.transcriptions.some((e) => e.mode === "caption" && e.state === "started"));
22701
+ var ya = createSelector(se, (a2) => a2 === "Preview");
22702
+ var jm = createSelector(F, (a2) => a2.roomState !== "Disconnected");
22703
+ var Jm = createSelector(F, (a2) => !a2.transcriptions || a2.transcriptions.length <= 0 ? false : a2.transcriptions.some((e) => e.mode === "caption" && e.state === "started"));
22079
22704
  var Pe = (a2) => a2.roles;
22080
- var Fm = createSelector([Pe], (a2) => Object.keys(a2));
22081
- var ct = createSelector([re, Pe], (a2, e) => a2 != null && a2.roleName ? e[a2.roleName] : null);
22082
- var Qo = (a2) => {
22705
+ var Qm = createSelector([Pe], (a2) => Object.keys(a2));
22706
+ var dt = createSelector([re, Pe], (a2, e) => a2 != null && a2.roleName ? e[a2.roleName] : null);
22707
+ var rn = (a2) => {
22083
22708
  var e;
22084
22709
  return (e = a2.preview) == null ? void 0 : e.asRole;
22085
22710
  };
22086
- var Sa = createSelector([Qo, Pe], (a2, e) => a2 ? e[a2] : null);
22087
- var Gm = createSelector([ct], (a2) => {
22711
+ var ka = createSelector([rn, Pe], (a2, e) => a2 ? e[a2] : null);
22712
+ var zm = createSelector([dt], (a2) => {
22088
22713
  var e;
22089
22714
  return (e = a2 == null ? void 0 : a2.subscribeParams) != null && e.subscribeToRoles ? a2.subscribeParams.subscribeToRoles.length > 0 : false;
22090
22715
  });
22091
- var ga = createSelector(ct, (a2) => a2 == null ? void 0 : a2.permissions);
22092
- var Wm = createSelector(F, (a2) => a2.recording);
22093
- var $m = createSelector(F, (a2) => a2.rtmp);
22094
- var Km = createSelector(F, (a2) => a2.hls);
22095
- var qm = createSelector(F, (a2) => a2.transcriptions);
22096
- var jm = createSelector(F, (a2) => a2.sessionId);
22097
- var Jm = createSelector(F, (a2) => a2.startedAt);
22098
- var Qm = createSelector(F, (a2) => !!a2.isLargeRoom);
22099
- var zm = createSelector(F, (a2) => !!a2.isEffectsEnabled);
22100
- var Ym = createSelector(F, (a2) => !!a2.isVBEnabled);
22101
- var Xm = createSelector(F, (a2) => a2.effectsKey);
22102
- var Ta = (a2) => a2.polls;
22103
- var iS = createSelector(Ee, (a2) => a2.filter((e) => e.isHandRaised));
22104
- var zo = (a2) => a2.whiteboards;
22105
- var rS = createSelector(zo, (a2) => Object.values(a2)[0]);
22106
- var va = (a2 = "audio") => (e) => e.playlist[a2].list;
22107
- var Zr = (a2 = "audio") => (e) => e.playlist[a2].selection;
22108
- var Ma = (a2 = "audio") => (e) => e.playlist[a2].progress;
22109
- var ya = (a2 = "audio") => (e) => e.playlist[a2].currentTime;
22110
- var ka = (a2 = "audio") => (e) => e.playlist[a2].playbackRate;
22111
- var Ea = (a2 = "audio") => (e) => e.playlist[a2].volume;
22112
- var Pa = (a2 = "audio") => createSelector(va(a2), (e) => Object.values(e));
22113
- var ba = (a2 = "audio") => createSelector(va(a2), Zr(a2), (e, t) => {
22716
+ var Ea = createSelector(dt, (a2) => a2 == null ? void 0 : a2.permissions);
22717
+ var Ym = createSelector(F, (a2) => a2.recording);
22718
+ var Xm = createSelector(F, (a2) => a2.rtmp);
22719
+ var Zm = createSelector(F, (a2) => a2.hls);
22720
+ var eS = createSelector(F, (a2) => a2.transcriptions);
22721
+ var tS = createSelector(F, (a2) => a2.sessionId);
22722
+ var iS = createSelector(F, (a2) => a2.startedAt);
22723
+ var rS = createSelector(F, (a2) => !!a2.isLargeRoom);
22724
+ var sS = createSelector(F, (a2) => !!a2.isEffectsEnabled);
22725
+ var aS = createSelector(F, (a2) => !!a2.isVBEnabled);
22726
+ var oS = createSelector(F, (a2) => a2.effectsKey);
22727
+ var Pa = (a2) => a2.polls;
22728
+ var lS = createSelector(Ee, (a2) => a2.filter((e) => e.isHandRaised));
22729
+ var sn = (a2) => a2.whiteboards;
22730
+ var uS = createSelector(sn, (a2) => Object.values(a2)[0]);
22731
+ var Aa = (a2 = "audio") => (e) => e.playlist[a2].list;
22732
+ var is = (a2 = "audio") => (e) => e.playlist[a2].selection;
22733
+ var Ia = (a2 = "audio") => (e) => e.playlist[a2].progress;
22734
+ var Ra = (a2 = "audio") => (e) => e.playlist[a2].currentTime;
22735
+ var Ha = (a2 = "audio") => (e) => e.playlist[a2].playbackRate;
22736
+ var Ca = (a2 = "audio") => (e) => e.playlist[a2].volume;
22737
+ var La = (a2 = "audio") => createSelector(Aa(a2), (e) => Object.values(e));
22738
+ var Da = (a2 = "audio") => createSelector(Aa(a2), is(a2), (e, t) => {
22114
22739
  if (t.id)
22115
22740
  return e[t.id];
22116
22741
  });
22117
- var Aa = { selection: Zr("audio"), progress: Ma("audio"), currentTime: ya("audio"), playbackRate: ka("audio"), volume: Ea("audio"), list: Pa("audio"), selectedItem: ba("audio") };
22118
- var Ia = { selection: Zr("video"), progress: Ma("video"), currentTime: ya("video"), playbackRate: ka("video"), volume: Ea("video"), list: Pa("video"), selectedItem: ba("video") };
22742
+ var wa = { selection: is("audio"), progress: Ia("audio"), currentTime: Ra("audio"), playbackRate: Ha("audio"), volume: Ca("audio"), list: La("audio"), selectedItem: Da("audio") };
22743
+ var _a7 = { selection: is("video"), progress: Ia("video"), currentTime: Ra("video"), playbackRate: Ha("video"), volume: Ca("video"), list: La("video"), selectedItem: Da("video") };
22119
22744
  function H(a2) {
22120
22745
  return (e) => (t) => a2(t, e);
22121
22746
  }
22122
- var wt = "HMS-Store:";
22747
+ var Nt = "HMS-Store:";
22123
22748
  var b = class {
22124
22749
  static v(e, ...t) {
22125
22750
  this.log(0, e, ...t);
@@ -22149,23 +22774,23 @@ var b = class {
22149
22774
  if (!(this.level.valueOf() > e.valueOf()))
22150
22775
  switch (e) {
22151
22776
  case 0: {
22152
- console.log(wt, ...t);
22777
+ console.log(Nt, ...t);
22153
22778
  break;
22154
22779
  }
22155
22780
  case 1: {
22156
- console.debug(wt, ...t);
22781
+ console.debug(Nt, ...t);
22157
22782
  break;
22158
22783
  }
22159
22784
  case 2: {
22160
- console.info(wt, ...t);
22785
+ console.info(Nt, ...t);
22161
22786
  break;
22162
22787
  }
22163
22788
  case 3: {
22164
- console.warn(wt, ...t);
22789
+ console.warn(Nt, ...t);
22165
22790
  break;
22166
22791
  }
22167
22792
  case 6: {
22168
- console.error(wt, ...t);
22793
+ console.error(Nt, ...t);
22169
22794
  break;
22170
22795
  }
22171
22796
  case 4: {
@@ -22186,133 +22811,133 @@ var b = class {
22186
22811
  }
22187
22812
  };
22188
22813
  b.level = 0;
22189
- var es = (a2, e) => e;
22190
- var _t = (a2, e) => e;
22191
- var Ra = (a2, e) => e;
22192
- var Yo = (a2, e) => e;
22193
- var Xo = (a2, e) => e;
22194
- var Y = createSelector([z, es], (a2, e) => e ? a2[e] : null);
22195
- var ts = createSelector([N, _t], (a2, e) => e ? a2[e] : null);
22196
- var Zo = createSelector([N, _t], (a2, e) => {
22814
+ var rs = (a2, e) => e;
22815
+ var Ot = (a2, e) => e;
22816
+ var Na = (a2, e) => e;
22817
+ var an = (a2, e) => e;
22818
+ var on = (a2, e) => e;
22819
+ var Y = createSelector([z, rs], (a2, e) => e ? a2[e] : null);
22820
+ var ss = createSelector([N, Ot], (a2, e) => e ? a2[e] : null);
22821
+ var nn = createSelector([N, Ot], (a2, e) => {
22197
22822
  if (!e)
22198
22823
  return null;
22199
22824
  let t = a2[e];
22200
22825
  return (t == null ? void 0 : t.type) === "video" ? t : null;
22201
22826
  });
22202
- var en = createSelector([N, _t], (a2, e) => {
22827
+ var cn = createSelector([N, Ot], (a2, e) => {
22203
22828
  if (!e)
22204
22829
  return null;
22205
22830
  let t = a2[e];
22206
22831
  return (t == null ? void 0 : t.type) === "audio" ? t : null;
22207
22832
  });
22208
- var tn = createSelector([N, _t], (a2, e) => {
22833
+ var dn = createSelector([N, Ot], (a2, e) => {
22209
22834
  if (!e)
22210
22835
  return null;
22211
22836
  let t = a2[e];
22212
22837
  return (t == null ? void 0 : t.type) === "audio" && (t == null ? void 0 : t.source) === "screen" ? t : null;
22213
22838
  });
22214
- var rn = createSelector([N, _t], (a2, e) => {
22839
+ var ln = createSelector([N, Ot], (a2, e) => {
22215
22840
  if (!e)
22216
22841
  return null;
22217
22842
  let t = a2[e];
22218
22843
  return (t == null ? void 0 : t.type) === "video" && (t == null ? void 0 : t.source) === "screen" ? t : null;
22219
22844
  });
22220
- var sn = createSelector([Ta, Xo], (a2, e) => e ? a2[e] : null);
22845
+ var un = createSelector([Pa, on], (a2, e) => e ? a2[e] : null);
22221
22846
  var ee = H(Y);
22222
- var mS = H(createSelector([zr, Yo], (a2, e) => {
22847
+ var kS = H(createSelector([Zr, an], (a2, e) => {
22223
22848
  if (a2)
22224
22849
  return e ? a2[e] : a2;
22225
22850
  }));
22226
- function SS(a2) {
22851
+ function ES(a2) {
22227
22852
  return (e) => {
22228
22853
  if (e.sessionStore)
22229
22854
  return a2 ? e.sessionStore[a2] : e.sessionStore;
22230
22855
  };
22231
22856
  }
22232
- var TS = H(createSelector(Y, (a2) => a2 == null ? void 0 : a2.name));
22233
- var fS = H(createSelector(Y, (a2) => a2 == null ? void 0 : a2.type));
22234
- var Ii = H(ts);
22235
- var Ha = H(Zo);
22236
- var vS = H(en);
22237
- var MS = H(tn);
22238
- var yS = H(rn);
22239
- var an = H((a2, e) => {
22857
+ var bS = H(createSelector(Y, (a2) => a2 == null ? void 0 : a2.name));
22858
+ var AS = H(createSelector(Y, (a2) => a2 == null ? void 0 : a2.type));
22859
+ var Ri = H(ss);
22860
+ var Oa = H(nn);
22861
+ var IS = H(cn);
22862
+ var RS = H(dn);
22863
+ var HS = H(ln);
22864
+ var pn = H((a2, e) => {
22240
22865
  let t = Y(a2, e);
22241
22866
  if (t && t.videoTrack && t.videoTrack !== "")
22242
22867
  return a2.tracks[t.videoTrack];
22243
22868
  });
22244
- var on = H((a2, e) => {
22869
+ var hn = H((a2, e) => {
22245
22870
  let t = Y(a2, e);
22246
22871
  if (t && t.audioTrack && t.audioTrack !== "")
22247
22872
  return a2.tracks[t.audioTrack];
22248
22873
  });
22249
- var ES = H((a2, e) => {
22874
+ var LS = H((a2, e) => {
22250
22875
  let t = Y(a2, e);
22251
22876
  return (t == null ? void 0 : t.auxiliaryTracks.map((i) => a2.tracks[i])) || [];
22252
22877
  });
22253
- var Ca = (a2, e) => e ? a2.speakers[e] : null;
22254
- var PS = H(createSelector(Ca, (a2) => (a2 == null ? void 0 : a2.audioLevel) || 0));
22255
- var nn = (a2, e) => {
22256
- let t = on(e)(a2);
22257
- return Ca(a2, t == null ? void 0 : t.id);
22258
- };
22259
- var bS = H(createSelector(nn, (a2) => (a2 == null ? void 0 : a2.audioLevel) || 0));
22260
- var AS = H((a2, e) => {
22878
+ var xa = (a2, e) => e ? a2.speakers[e] : null;
22879
+ var DS = H(createSelector(xa, (a2) => (a2 == null ? void 0 : a2.audioLevel) || 0));
22880
+ var mn = (a2, e) => {
22881
+ let t = hn(e)(a2);
22882
+ return xa(a2, t == null ? void 0 : t.id);
22883
+ };
22884
+ var wS = H(createSelector(mn, (a2) => (a2 == null ? void 0 : a2.audioLevel) || 0));
22885
+ var _S = H((a2, e) => {
22261
22886
  if (e)
22262
22887
  return a2.connectionQualities[e];
22263
22888
  });
22264
- var IS = H((a2, e) => {
22889
+ var NS = H((a2, e) => {
22265
22890
  let t = Y(a2, e);
22266
22891
  if (t) {
22267
- let i = t == null ? void 0 : t.auxiliaryTracks.find((r) => gt(a2.tracks[r]));
22892
+ let i = t == null ? void 0 : t.auxiliaryTracks.find((r) => Tt(a2.tracks[r]));
22268
22893
  return i ? a2.tracks[i] : void 0;
22269
22894
  }
22270
22895
  });
22271
- var RS = H(createSelector(N, Y, (a2, e) => {
22896
+ var OS2 = H(createSelector(N, Y, (a2, e) => {
22272
22897
  let t = e == null ? void 0 : e.auxiliaryTracks.find((i) => {
22273
22898
  let r = a2[i];
22274
- return ft(r) && Tt(r);
22899
+ return vt(r) && ft(r);
22275
22900
  });
22276
22901
  return t ? a2[t] : void 0;
22277
22902
  }));
22278
- var HS = H(createSelector(N, Y, (a2, e) => {
22903
+ var xS = H(createSelector(N, Y, (a2, e) => {
22279
22904
  let t = e == null ? void 0 : e.auxiliaryTracks.find((i) => {
22280
22905
  let r = a2[i];
22281
- return ft(r) && gt(r);
22906
+ return vt(r) && Tt(r);
22282
22907
  });
22283
22908
  return t ? a2[t] : void 0;
22284
22909
  }));
22285
- var CS = H(createSelector(N, Y, (a2, e) => {
22910
+ var US = H(createSelector(N, Y, (a2, e) => {
22286
22911
  let t = e == null ? void 0 : e.auxiliaryTracks.find((i) => {
22287
22912
  let r = a2[i];
22288
- return ci(r) && gt(r);
22913
+ return li(r) && Tt(r);
22289
22914
  });
22290
22915
  return t ? a2[t] : void 0;
22291
22916
  }));
22292
- var La = H(createSelector(N, Y, (a2, e) => Fe(a2, e)));
22293
- var Da = (a2) => createSelector(La(a2), (e) => e.audio);
22294
- var DS = H((a2, e) => {
22917
+ var Ua = H(createSelector(N, Y, (a2, e) => Ge(a2, e)));
22918
+ var Ba = (a2) => createSelector(Ua(a2), (e) => e.audio);
22919
+ var VS = H((a2, e) => {
22295
22920
  let t = Y(a2, e);
22296
- return ze(a2, t == null ? void 0 : t.audioTrack);
22921
+ return Ye(a2, t == null ? void 0 : t.audioTrack);
22297
22922
  });
22298
- var wS = H((a2, e) => {
22923
+ var FS = H((a2, e) => {
22299
22924
  let t = Y(a2, e);
22300
- return ze(a2, t == null ? void 0 : t.videoTrack);
22925
+ return Ye(a2, t == null ? void 0 : t.videoTrack);
22301
22926
  });
22302
- var wa = H((a2, e) => {
22927
+ var Va = H((a2, e) => {
22303
22928
  if (e && a2.tracks[e])
22304
22929
  return a2.tracks[e].volume === 0;
22305
22930
  });
22306
- var _S = H((a2, e) => {
22931
+ var GS = H((a2, e) => {
22307
22932
  let t = Y(a2, e);
22308
- return wa(t == null ? void 0 : t.audioTrack)(a2);
22933
+ return Va(t == null ? void 0 : t.audioTrack)(a2);
22309
22934
  });
22310
- var NS = H((a2, e) => {
22311
- let t = Da(e)(a2);
22312
- return wa(t == null ? void 0 : t.id)(a2);
22935
+ var WS = H((a2, e) => {
22936
+ let t = Ba(e)(a2);
22937
+ return Va(t == null ? void 0 : t.id)(a2);
22313
22938
  });
22314
- var _a7 = H((a2, e) => {
22315
- let t = ts(a2, e);
22939
+ var Fa = H((a2, e) => {
22940
+ let t = ss(a2, e);
22316
22941
  if (t) {
22317
22942
  if (t.type !== "audio") {
22318
22943
  b.w("Please pass audio track here");
@@ -22321,16 +22946,16 @@ var _a7 = H((a2, e) => {
22321
22946
  return t.volume;
22322
22947
  }
22323
22948
  });
22324
- var OS = H((a2, e) => {
22949
+ var $S = H((a2, e) => {
22325
22950
  let t = Y(a2, e);
22326
- return _a7(t == null ? void 0 : t.audioTrack)(a2);
22951
+ return Fa(t == null ? void 0 : t.audioTrack)(a2);
22327
22952
  });
22328
- var xS = H((a2, e) => {
22329
- let t = Da(e)(a2);
22330
- return _a7(t == null ? void 0 : t.id)(a2);
22953
+ var KS = H((a2, e) => {
22954
+ let t = Ba(e)(a2);
22955
+ return Fa(t == null ? void 0 : t.id)(a2);
22331
22956
  });
22332
- var US = H((a2, e) => {
22333
- let t = ts(a2, e);
22957
+ var qS = H((a2, e) => {
22958
+ let t = ss(a2, e);
22334
22959
  if (t) {
22335
22960
  if (t.type !== "video") {
22336
22961
  b.w("Please pass video track here");
@@ -22339,50 +22964,50 @@ var US = H((a2, e) => {
22339
22964
  return t.layer;
22340
22965
  }
22341
22966
  });
22342
- var Na = createSelector([Dt, Ie, es], (a2, e, t) => {
22967
+ var Ga = createSelector([_t, Ie, rs], (a2, e, t) => {
22343
22968
  if (t)
22344
22969
  return a2.filter((i) => {
22345
22970
  var r;
22346
22971
  return !i.recipientPeer && !((r = i.recipientRoles) != null && r.length) || i.sender && ![e, t].includes(i.sender) ? false : [e, t].includes(i.recipientPeer);
22347
22972
  });
22348
22973
  });
22349
- var Oa = createSelector([Dt, Ra], (a2, e) => {
22974
+ var Wa = createSelector([_t, Na], (a2, e) => {
22350
22975
  if (e)
22351
22976
  return a2.filter((t) => {
22352
22977
  var i, r;
22353
22978
  return (i = t.recipientRoles) != null && i.length ? (r = t.recipientRoles) == null ? void 0 : r.includes(e) : false;
22354
22979
  });
22355
22980
  });
22356
- var cn = createSelector(Dt, (a2) => a2.filter((e) => {
22981
+ var Sn = createSelector(_t, (a2) => a2.filter((e) => {
22357
22982
  var t;
22358
22983
  return !e.recipientPeer && !((t = e.recipientRoles) != null && t.length);
22359
22984
  }));
22360
- var dn = createSelector([Oa, Ra], (a2) => a2 ? a2.filter((e) => !e.read).length : 0);
22361
- var ln = createSelector([Na, es], (a2) => a2 ? a2.filter((e) => !e.read).length : 0);
22362
- var BS = createSelector(cn, (a2) => a2.filter((e) => !e.read).length);
22363
- var VS = H(Na);
22364
- var FS = H(Oa);
22365
- var GS = H(dn);
22366
- var WS = H(ln);
22367
- var xa = H(sn);
22368
- var tg = createSelector([z, N], (a2, e) => Object.values(a2).map((i) => {
22985
+ var gn = createSelector([Wa, Na], (a2) => a2 ? a2.filter((e) => !e.read).length : 0);
22986
+ var Tn = createSelector([Ga, rs], (a2) => a2 ? a2.filter((e) => !e.read).length : 0);
22987
+ var jS = createSelector(Sn, (a2) => a2.filter((e) => !e.read).length);
22988
+ var JS = H(Ga);
22989
+ var QS = H(Wa);
22990
+ var zS = H(gn);
22991
+ var YS = H(Tn);
22992
+ var $a = H(un);
22993
+ var dg = createSelector([z, N], (a2, e) => Object.values(a2).map((i) => {
22369
22994
  var r;
22370
22995
  return { peer: i, isAudioEnabled: i.audioTrack ? (r = e[i.audioTrack]) == null ? void 0 : r.enabled : false };
22371
22996
  }));
22372
- var un = (a2) => a2.roleChangeRequests[0] || null;
22373
- var ig = createSelector([un, z, Pe], (a2, e, t) => a2 ? { requestedBy: a2.requestedBy ? e[a2.requestedBy] : void 0, role: t[a2.roleName], token: a2.token } : null);
22374
- var rg = createSelector([ct], (a2) => vt(a2));
22375
- var sg = createSelector([Sa], (a2) => vt(a2));
22376
- var hn = createSelector([Z, N], (a2, e) => {
22997
+ var fn = (a2) => a2.roleChangeRequests[0] || null;
22998
+ var lg = createSelector([fn, z, Pe], (a2, e, t) => a2 ? { requestedBy: a2.requestedBy ? e[a2.requestedBy] : void 0, role: t[a2.roleName], token: a2.token } : null);
22999
+ var ug = createSelector([dt], (a2) => Mt(a2));
23000
+ var pg = createSelector([ka], (a2) => Mt(a2));
23001
+ var Mn = createSelector([Z, N], (a2, e) => {
22377
23002
  let t = null;
22378
23003
  return a2 && (t = e[a2]), (t == null ? void 0 : t.plugins) || [];
22379
23004
  });
22380
- var mn = createSelector([le, N], (a2, e) => {
23005
+ var yn = createSelector([le, N], (a2, e) => {
22381
23006
  let t = null;
22382
23007
  return a2 && (t = e[a2]), (t == null ? void 0 : t.plugins) || [];
22383
23008
  });
22384
- var Tn = ((n) => (n[n.STARTING = 0] = "STARTING", n[n.INIT_FETCHED = 1] = "INIT_FETCHED", n[n.SIGNAL_CONNECTED = 2] = "SIGNAL_CONNECTED", n[n.ICE_ESTABLISHED = 3] = "ICE_ESTABLISHED", n[n.MEDIA_CAPTURED = 4] = "MEDIA_CAPTURED", n[n.MEDIA_PUBLISHED = 5] = "MEDIA_PUBLISHED", n[n.COMPLETED = 6] = "COMPLETED", n))(Tn || {});
22385
- var os = class {
23009
+ var Pn = ((n) => (n[n.STARTING = 0] = "STARTING", n[n.INIT_FETCHED = 1] = "INIT_FETCHED", n[n.SIGNAL_CONNECTED = 2] = "SIGNAL_CONNECTED", n[n.ICE_ESTABLISHED = 3] = "ICE_ESTABLISHED", n[n.MEDIA_CAPTURED = 4] = "MEDIA_CAPTURED", n[n.MEDIA_PUBLISHED = 5] = "MEDIA_PUBLISHED", n[n.COMPLETED = 6] = "COMPLETED", n))(Pn || {});
23010
+ var ds = class {
22386
23011
  constructor() {
22387
23012
  this.TAG = "[HTTPAnalyticsTransport]";
22388
23013
  this.failedEvents = new ve("client-events");
@@ -22401,7 +23026,7 @@ var os = class {
22401
23026
  this.addEventToStorage(e);
22402
23027
  return;
22403
23028
  }
22404
- let t = { event: e.name, payload: e.properties, event_id: String(e.timestamp), peer: e.metadata.peer, timestamp: e.timestamp, device_id: e.device_id, cluster: { websocket_url: this.websocketURL } }, i = this.env === "prod" ? ea : ta;
23029
+ let t = { event: e.name, payload: e.properties, event_id: String(e.timestamp), peer: e.metadata.peer, timestamp: e.timestamp, device_id: e.device_id, cluster: { websocket_url: this.websocketURL } }, i = this.env === "prod" ? na : ca;
22405
23030
  fetch(i, { method: "POST", headers: { "Content-Type": "application/json", Authorization: `Bearer ${e.metadata.token}`, user_agent_v2: e.metadata.userAgent }, body: JSON.stringify(t) }).then((r) => {
22406
23031
  if (r.status === 401) {
22407
23032
  this.removeFromStorage(e);
@@ -22427,8 +23052,8 @@ var os = class {
22427
23052
  i > -1 && (t.splice(i, 1), this.failedEvents.set(t));
22428
23053
  }
22429
23054
  };
22430
- var He = new os();
22431
- var $t = class {
23055
+ var He = new ds();
23056
+ var qt = class {
22432
23057
  static handleError(e) {
22433
23058
  if (e.status === 404)
22434
23059
  throw S.APIErrors.EndpointUnreachable("FEEDBACK", e.statusText);
@@ -22454,67 +23079,67 @@ var $t = class {
22454
23079
  });
22455
23080
  }
22456
23081
  };
22457
- $t.TAG = "[FeedbackService]";
22458
- var ns = ((f) => (f.FLAG_SERVER_SUB_DEGRADATION = "subscribeDegradation", f.FLAG_SERVER_SIMULCAST = "simulcast", f.FLAG_NON_WEBRTC_DISABLE_OFFER = "nonWebRTCDisableOffer", f.FLAG_PUBLISH_STATS = "publishStats", f.FLAG_SUBSCRIBE_STATS = "subscribeStats", f.FLAG_ON_DEMAND_TRACKS = "onDemandTracks", f.FLAG_DISABLE_VIDEO_TRACK_AUTO_UNSUBSCRIBE = "disableVideoTrackAutoUnsubscribe", f.FLAG_WHITEBOARD_ENABLED = "whiteboardEnabled", f.FLAG_EFFECTS_SDK_ENABLED = "effectsSDKEnabled", f.FLAG_VB_ENABLED = "vb", f.FLAG_HIPAA_ENABLED = "hipaa", f.FLAG_NOISE_CANCELLATION = "noiseCancellation", f.FLAG_SCALE_SCREENSHARE_BASED_ON_PIXELS = "scaleScreenshareBasedOnPixels", f.FLAG_DISABLE_NONE_LAYER_REQUEST = "disableNoneLayerRequest", f))(ns || {});
23082
+ qt.TAG = "[FeedbackService]";
23083
+ var ls = ((f) => (f.FLAG_SERVER_SUB_DEGRADATION = "subscribeDegradation", f.FLAG_SERVER_SIMULCAST = "simulcast", f.FLAG_NON_WEBRTC_DISABLE_OFFER = "nonWebRTCDisableOffer", f.FLAG_PUBLISH_STATS = "publishStats", f.FLAG_SUBSCRIBE_STATS = "subscribeStats", f.FLAG_ON_DEMAND_TRACKS = "onDemandTracks", f.FLAG_DISABLE_VIDEO_TRACK_AUTO_UNSUBSCRIBE = "disableVideoTrackAutoUnsubscribe", f.FLAG_WHITEBOARD_ENABLED = "whiteboardEnabled", f.FLAG_EFFECTS_SDK_ENABLED = "effectsSDKEnabled", f.FLAG_VB_ENABLED = "vb", f.FLAG_HIPAA_ENABLED = "hipaa", f.FLAG_NOISE_CANCELLATION = "noiseCancellation", f.FLAG_SCALE_SCREENSHARE_BASED_ON_PIXELS = "scaleScreenshareBasedOnPixels", f.FLAG_DISABLE_NONE_LAYER_REQUEST = "disableNoneLayerRequest", f))(ls || {});
22459
23084
  var j = ((s) => (s[s.ConnectFailed = 0] = "ConnectFailed", s[s.SignalDisconnect = 1] = "SignalDisconnect", s[s.JoinWSMessageFailed = 2] = "JoinWSMessageFailed", s[s.PublishIceConnectionFailed = 3] = "PublishIceConnectionFailed", s[s.SubscribeIceConnectionFailed = 4] = "SubscribeIceConnectionFailed", s))(j || {});
22460
- var lr = ((n) => (n.Disconnected = "Disconnected", n.Connecting = "Connecting", n.Joined = "Joined", n.Preview = "Preview", n.Failed = "Failed", n.Reconnecting = "Reconnecting", n.Leaving = "Leaving", n))(lr || {});
22461
- var ht = ((t) => (t[t.Publish = 0] = "Publish", t[t.Subscribe = 1] = "Subscribe", t))(ht || {});
22462
- var Un = (a2) => a2.localPeer.id;
22463
- var Bn = (a2) => a2.localPeer.audioTrack;
22464
- var Vn = (a2) => a2.localPeer.videoTrack;
22465
- var Fn = (a2, e) => e;
22466
- var oo = (a2, e) => e;
22467
- var Gn = (a2) => a2.remoteTrackStats;
22468
- var no = (a2) => a2.peerStats;
22469
- var us = (a2) => a2.localTrackStats;
22470
- var Le = createSelector([no, Un], (a2, e) => a2[e]);
22471
- var Wn = createSelector(Le, (a2) => {
23085
+ var ur = ((n) => (n.Disconnected = "Disconnected", n.Connecting = "Connecting", n.Joined = "Joined", n.Preview = "Preview", n.Failed = "Failed", n.Reconnecting = "Reconnecting", n.Leaving = "Leaving", n))(ur || {});
23086
+ var mt = ((t) => (t[t.Publish = 0] = "Publish", t[t.Subscribe = 1] = "Subscribe", t))(mt || {});
23087
+ var Kn = (a2) => a2.localPeer.id;
23088
+ var qn = (a2) => a2.localPeer.audioTrack;
23089
+ var jn = (a2) => a2.localPeer.videoTrack;
23090
+ var Jn = (a2, e) => e;
23091
+ var mo = (a2, e) => e;
23092
+ var Qn = (a2) => a2.remoteTrackStats;
23093
+ var So = (a2) => a2.peerStats;
23094
+ var ms = (a2) => a2.localTrackStats;
23095
+ var Le = createSelector([So, Kn], (a2, e) => a2[e]);
23096
+ var zn = createSelector(Le, (a2) => {
22472
23097
  var e;
22473
23098
  return (e = a2 == null ? void 0 : a2.subscribe) == null ? void 0 : e.packetsLost;
22474
23099
  });
22475
- var $n = createSelector(Le, (a2) => {
23100
+ var Yn = createSelector(Le, (a2) => {
22476
23101
  var e;
22477
23102
  return (e = a2 == null ? void 0 : a2.subscribe) == null ? void 0 : e.jitter;
22478
23103
  });
22479
- var Kn = createSelector(Le, (a2) => {
23104
+ var Xn = createSelector(Le, (a2) => {
22480
23105
  var e;
22481
23106
  return (e = a2 == null ? void 0 : a2.publish) == null ? void 0 : e.bitrate;
22482
23107
  });
22483
- var qn = createSelector(Le, (a2) => {
23108
+ var Zn = createSelector(Le, (a2) => {
22484
23109
  var e;
22485
23110
  return (e = a2 == null ? void 0 : a2.subscribe) == null ? void 0 : e.bitrate;
22486
23111
  });
22487
- var jn = createSelector(Le, (a2) => {
23112
+ var ec = createSelector(Le, (a2) => {
22488
23113
  var e;
22489
23114
  return (e = a2 == null ? void 0 : a2.publish) == null ? void 0 : e.availableOutgoingBitrate;
22490
23115
  });
22491
- var Jn = createSelector(Le, (a2) => {
23116
+ var tc = createSelector(Le, (a2) => {
22492
23117
  var e;
22493
23118
  return (e = a2 == null ? void 0 : a2.subscribe) == null ? void 0 : e.availableIncomingBitrate;
22494
23119
  });
22495
- var Qn = createSelector(Le, (a2) => {
23120
+ var ic = createSelector(Le, (a2) => {
22496
23121
  var e;
22497
23122
  return (e = a2 == null ? void 0 : a2.publish) == null ? void 0 : e.bytesSent;
22498
23123
  });
22499
- var zn = createSelector(Le, (a2) => {
23124
+ var rc = createSelector(Le, (a2) => {
22500
23125
  var e;
22501
23126
  return (e = a2 == null ? void 0 : a2.subscribe) == null ? void 0 : e.bytesReceived;
22502
23127
  });
22503
- var Yn = createSelector([no, Fn], (a2, e) => e ? a2[e] : void 0);
22504
- var Xn = createSelector([Gn, oo], (a2, e) => e ? a2[e] : void 0);
22505
- var ps = createSelector([us, oo], (a2, e) => e ? a2[e] : void 0);
22506
- var Zn = H(Yn);
22507
- var ec = H(Xn);
22508
- var tc = createSelector([us, Bn], (a2, e) => {
23128
+ var sc = createSelector([So, Jn], (a2, e) => e ? a2[e] : void 0);
23129
+ var ac = createSelector([Qn, mo], (a2, e) => e ? a2[e] : void 0);
23130
+ var Ss = createSelector([ms, mo], (a2, e) => e ? a2[e] : void 0);
23131
+ var oc = H(sc);
23132
+ var nc = H(ac);
23133
+ var cc = createSelector([ms, qn], (a2, e) => {
22509
23134
  var t;
22510
23135
  return e ? (t = a2[e]) == null ? void 0 : t[0] : void 0;
22511
23136
  });
22512
- var ic = H(createSelector(ps, (a2) => a2 == null ? void 0 : a2[0]));
22513
- var rc = createSelector([us, Vn], (a2, e) => {
23137
+ var dc = H(createSelector(Ss, (a2) => a2 == null ? void 0 : a2[0]));
23138
+ var lc = createSelector([ms, jn], (a2, e) => {
22514
23139
  var t;
22515
23140
  return e ? (t = a2[e]) == null ? void 0 : t[0] : void 0;
22516
23141
  });
22517
- var sc = H(createSelector(ps, (a2) => a2));
23142
+ var uc = H(createSelector(Ss, (a2) => a2));
22518
23143
 
22519
23144
  // src/Prebuilt/components/Header/StreamActions.tsx
22520
23145
  var import_react_sdk41 = require("@100mslive/react-sdk");
@@ -22623,7 +23248,7 @@ var RecordingStatus = () => {
22623
23248
  };
22624
23249
  var RecordingPauseStatus = () => {
22625
23250
  const recording = (0, import_react_sdk41.useHMSStore)(import_react_sdk41.selectRecordingState);
22626
- if (recording.hls && recording.hls.state === Bs.PAUSED) {
23251
+ if (recording.hls && recording.hls.state === qs.PAUSED) {
22627
23252
  return /* @__PURE__ */ import_react88.default.createElement(
22628
23253
  Tooltip,
22629
23254
  {
@@ -27384,7 +28009,7 @@ var Chat = () => {
27384
28009
  const listRef = (0, import_react153.useRef)(null);
27385
28010
  const hmsActions = (0, import_react_sdk74.useHMSActions)();
27386
28011
  const vanillaStore = (0, import_react_sdk74.useHMSVanillaStore)();
27387
- const { enabled: isChatEnabled = true } = (0, import_react_sdk74.useHMSStore)(SS("chatState" /* CHAT_STATE */)) || {};
28012
+ const { enabled: isChatEnabled = true } = (0, import_react_sdk74.useHMSStore)(ES("chatState" /* CHAT_STATE */)) || {};
27388
28013
  const isMobile = (0, import_react_use26.useMedia)(config.media.md);
27389
28014
  const isMobileHLSStream = useMobileHLSStream();
27390
28015
  const isLandscapeStream = useLandscapeHLSStream();
@@ -27474,7 +28099,7 @@ var NewMessageIndicator = ({
27474
28099
  scrollToBottom,
27475
28100
  listRef
27476
28101
  }) => {
27477
- const unreadCount = (0, import_react_sdk74.useHMSStore)(xm);
28102
+ const unreadCount = (0, import_react_sdk74.useHMSStore)(Km);
27478
28103
  if (!unreadCount || !listRef.current) {
27479
28104
  return null;
27480
28105
  }
@@ -28431,7 +29056,7 @@ var VBPicker = ({ backgroundMedia = [] }) => {
28431
29056
  const toggleVB = useSidepaneToggle(SIDE_PANE_OPTIONS.VB);
28432
29057
  const hmsActions = (0, import_react_sdk82.useHMSActions)();
28433
29058
  const localPeer = (0, import_react_sdk82.useHMSStore)(import_react_sdk82.selectLocalPeer);
28434
- const role = (0, import_react_sdk82.useHMSStore)(ct);
29059
+ const role = (0, import_react_sdk82.useHMSStore)(dt);
28435
29060
  const isVideoOn = (0, import_react_sdk82.useHMSStore)(import_react_sdk82.selectIsLocalVideoEnabled);
28436
29061
  const mirrorLocalVideo = useUISettings(UI_SETTINGS.mirrorLocalVideo);
28437
29062
  const trackSelector = (0, import_react_sdk82.selectVideoTrackByID)(localPeer == null ? void 0 : localPeer.videoTrack);
@@ -28440,12 +29065,12 @@ var VBPicker = ({ backgroundMedia = [] }) => {
28440
29065
  const roomState = (0, import_react_sdk82.useHMSStore)(import_react_sdk82.selectRoomState);
28441
29066
  const isLargeRoom = (0, import_react_sdk82.useHMSStore)(import_react_sdk82.selectIsLargeRoom);
28442
29067
  const isEffectsSupported = VBHandler.isEffectsSupported();
28443
- const isEffectsEnabled = (0, import_react_sdk82.useHMSStore)(zm);
28444
- const effectsKey = (0, import_react_sdk82.useHMSStore)(Xm);
29068
+ const isEffectsEnabled = (0, import_react_sdk82.useHMSStore)(sS);
29069
+ const effectsKey = (0, import_react_sdk82.useHMSStore)(oS);
28445
29070
  const isMobile = (0, import_react_use32.useMedia)(config.media.md);
28446
29071
  const [loadingEffects, setLoadingEffects] = useSetAppDataByKey(APP_DATA.loadingEffects);
28447
29072
  const isPluginAdded = (0, import_react_sdk82.useHMSStore)((0, import_react_sdk82.selectIsLocalVideoPluginPresent)(((_a8 = VBHandler) == null ? void 0 : _a8.getName()) || ""));
28448
- const background = (0, import_react_sdk82.useHMSStore)(mS(APP_DATA.background));
29073
+ const background = (0, import_react_sdk82.useHMSStore)(kS(APP_DATA.background));
28449
29074
  const mediaList = backgroundMedia.map((media) => media.url || "");
28450
29075
  const pluginLoadingRef = (0, import_react163.useRef)(false);
28451
29076
  const isBlurSupported = (_b7 = VBHandler) == null ? void 0 : _b7.isBlurSupported();
@@ -34188,8 +34813,8 @@ var import_react230 = require("react");
34188
34813
  var import_react_sdk118 = require("@100mslive/react-sdk");
34189
34814
  var MessageNotifications = () => {
34190
34815
  var _a8, _b7;
34191
- const notification = (0, import_react_sdk118.useHMSNotifications)(Pr.NEW_MESSAGE);
34192
- const amIScreenSharing = (0, import_react_sdk118.useHMSStore)(Xr);
34816
+ const notification = (0, import_react_sdk118.useHMSNotifications)(br.NEW_MESSAGE);
34817
+ const amIScreenSharing = (0, import_react_sdk118.useHMSStore)(ts);
34193
34818
  const logoURL = (_b7 = (_a8 = useRoomLayout()) == null ? void 0 : _a8.logo) == null ? void 0 : _b7.url;
34194
34819
  const { pipWindow } = usePIPWindow();
34195
34820
  const { showNotification } = (0, import_react_sdk118.useAwayNotifications)();