@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.js CHANGED
@@ -34,8 +34,8 @@ var __objRest = (source, exclude) => {
34
34
  }
35
35
  return target;
36
36
  };
37
- var __esm = (fn, res) => function __init() {
38
- return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
37
+ var __esm = (fn2, res) => function __init() {
38
+ return fn2 && (res = (0, fn2[__getOwnPropNames(fn2)[0]])(fn2 = 0)), res;
39
39
  };
40
40
  var __commonJS = (cb, mod) => function __require() {
41
41
  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
@@ -98,7 +98,7 @@ var __async = (__this, __arguments, generator) => {
98
98
  reject(e);
99
99
  }
100
100
  };
101
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
101
+ var step = (x2) => x2.done ? resolve(x2.value) : Promise.resolve(x2.value).then(fulfilled, rejected);
102
102
  step((generator = generator.apply(__this, __arguments)).next());
103
103
  });
104
104
  };
@@ -107,7 +107,7 @@ var __async = (__this, __arguments, generator) => {
107
107
  var define_process_env_default;
108
108
  var init_define_process_env = __esm({
109
109
  "<define:process.env>"() {
110
- 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" };
110
+ 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" };
111
111
  }
112
112
  });
113
113
 
@@ -117,7 +117,7 @@ var require_lodash = __commonJS({
117
117
  init_define_process_env();
118
118
  (function() {
119
119
  var undefined2;
120
- var VERSION = "4.17.21";
120
+ var VERSION2 = "4.17.21";
121
121
  var LARGE_ARRAY_SIZE = 200;
122
122
  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`";
123
123
  var HASH_UNDEFINED = "__lodash_hash_undefined__";
@@ -2286,8 +2286,8 @@ var require_lodash = __commonJS({
2286
2286
  function createBind(func, bitmask, thisArg) {
2287
2287
  var isBind = bitmask & WRAP_BIND_FLAG, Ctor = createCtor(func);
2288
2288
  function wrapper() {
2289
- var fn = this && this !== root && this instanceof wrapper ? Ctor : func;
2290
- return fn.apply(isBind ? thisArg : this, arguments);
2289
+ var fn2 = this && this !== root && this instanceof wrapper ? Ctor : func;
2290
+ return fn2.apply(isBind ? thisArg : this, arguments);
2291
2291
  }
2292
2292
  return wrapper;
2293
2293
  }
@@ -2353,8 +2353,8 @@ var require_lodash = __commonJS({
2353
2353
  arity - length
2354
2354
  );
2355
2355
  }
2356
- var fn = this && this !== root && this instanceof wrapper ? Ctor : func;
2357
- return apply(fn, this, args);
2356
+ var fn2 = this && this !== root && this instanceof wrapper ? Ctor : func;
2357
+ return apply(fn2, this, args);
2358
2358
  }
2359
2359
  return wrapper;
2360
2360
  }
@@ -2442,7 +2442,7 @@ var require_lodash = __commonJS({
2442
2442
  arity - length
2443
2443
  );
2444
2444
  }
2445
- var thisBinding = isBind ? thisArg : this, fn = isBindKey ? thisBinding[func] : func;
2445
+ var thisBinding = isBind ? thisArg : this, fn2 = isBindKey ? thisBinding[func] : func;
2446
2446
  length = args.length;
2447
2447
  if (argPos) {
2448
2448
  args = reorder(args, argPos);
@@ -2453,9 +2453,9 @@ var require_lodash = __commonJS({
2453
2453
  args.length = ary2;
2454
2454
  }
2455
2455
  if (this && this !== root && this instanceof wrapper) {
2456
- fn = Ctor || createCtor(fn);
2456
+ fn2 = Ctor || createCtor(fn2);
2457
2457
  }
2458
- return fn.apply(thisBinding, args);
2458
+ return fn2.apply(thisBinding, args);
2459
2459
  }
2460
2460
  return wrapper;
2461
2461
  }
@@ -2512,14 +2512,14 @@ var require_lodash = __commonJS({
2512
2512
  function createPartial(func, bitmask, thisArg, partials) {
2513
2513
  var isBind = bitmask & WRAP_BIND_FLAG, Ctor = createCtor(func);
2514
2514
  function wrapper() {
2515
- var argsIndex = -1, argsLength = arguments.length, leftIndex = -1, leftLength = partials.length, args = Array2(leftLength + argsLength), fn = this && this !== root && this instanceof wrapper ? Ctor : func;
2515
+ var argsIndex = -1, argsLength = arguments.length, leftIndex = -1, leftLength = partials.length, args = Array2(leftLength + argsLength), fn2 = this && this !== root && this instanceof wrapper ? Ctor : func;
2516
2516
  while (++leftIndex < leftLength) {
2517
2517
  args[leftIndex] = partials[leftIndex];
2518
2518
  }
2519
2519
  while (argsLength--) {
2520
2520
  args[leftIndex++] = arguments[++argsIndex];
2521
2521
  }
2522
- return apply(fn, isBind ? thisArg : this, args);
2522
+ return apply(fn2, isBind ? thisArg : this, args);
2523
2523
  }
2524
2524
  return wrapper;
2525
2525
  }
@@ -3772,7 +3772,7 @@ var require_lodash = __commonJS({
3772
3772
  if (fromIndex < 0) {
3773
3773
  fromIndex = nativeMax(length + fromIndex, 0);
3774
3774
  }
3775
- return isString(collection) ? fromIndex <= length && collection.indexOf(value, fromIndex) > -1 : !!length && baseIndexOf(collection, value, fromIndex) > -1;
3775
+ return isString2(collection) ? fromIndex <= length && collection.indexOf(value, fromIndex) > -1 : !!length && baseIndexOf(collection, value, fromIndex) > -1;
3776
3776
  }
3777
3777
  var invokeMap = baseRest(function(collection, path, args) {
3778
3778
  var index = -1, isFunc = typeof path == "function", result2 = isArrayLike(collection) ? Array2(collection.length) : [];
@@ -3840,7 +3840,7 @@ var require_lodash = __commonJS({
3840
3840
  return 0;
3841
3841
  }
3842
3842
  if (isArrayLike(collection)) {
3843
- return isString(collection) ? stringSize(collection) : collection.length;
3843
+ return isString2(collection) ? stringSize(collection) : collection.length;
3844
3844
  }
3845
3845
  var tag = getTag(collection);
3846
3846
  if (tag == mapTag || tag == setTag) {
@@ -4149,7 +4149,7 @@ var require_lodash = __commonJS({
4149
4149
  function eq(value, other) {
4150
4150
  return value === other || value !== value && other !== other;
4151
4151
  }
4152
- var gt2 = createRelationalOperation(baseGt);
4152
+ var gt = createRelationalOperation(baseGt);
4153
4153
  var gte = createRelationalOperation(function(value, other) {
4154
4154
  return value >= other;
4155
4155
  });
@@ -4275,7 +4275,7 @@ var require_lodash = __commonJS({
4275
4275
  return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER;
4276
4276
  }
4277
4277
  var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;
4278
- function isString(value) {
4278
+ function isString2(value) {
4279
4279
  return typeof value == "string" || !isArray2(value) && isObjectLike(value) && baseGetTag(value) == stringTag;
4280
4280
  }
4281
4281
  function isSymbol(value) {
@@ -4300,7 +4300,7 @@ var require_lodash = __commonJS({
4300
4300
  return [];
4301
4301
  }
4302
4302
  if (isArrayLike(value)) {
4303
- return isString(value) ? stringToArray(value) : copyArray(value);
4303
+ return isString2(value) ? stringToArray(value) : copyArray(value);
4304
4304
  }
4305
4305
  if (symIterator && value[symIterator]) {
4306
4306
  return iteratorToArray(value[symIterator]());
@@ -4433,7 +4433,7 @@ var require_lodash = __commonJS({
4433
4433
  var result2 = object == null ? undefined2 : baseGet(object, path);
4434
4434
  return result2 === undefined2 ? defaultValue : result2;
4435
4435
  }
4436
- function has(object, path) {
4436
+ function has2(object, path) {
4437
4437
  return object != null && hasPath(object, path, baseHas);
4438
4438
  }
4439
4439
  function hasIn(object, path) {
@@ -4806,7 +4806,7 @@ var require_lodash = __commonJS({
4806
4806
  function toUpper(value) {
4807
4807
  return toString(value).toUpperCase();
4808
4808
  }
4809
- function trim(string, chars, guard) {
4809
+ function trim2(string, chars, guard) {
4810
4810
  string = toString(string);
4811
4811
  if (string && (guard || chars === undefined2)) {
4812
4812
  return baseTrim(string);
@@ -5288,9 +5288,9 @@ var require_lodash = __commonJS({
5288
5288
  lodash.forOwn = forOwn;
5289
5289
  lodash.forOwnRight = forOwnRight;
5290
5290
  lodash.get = get;
5291
- lodash.gt = gt2;
5291
+ lodash.gt = gt;
5292
5292
  lodash.gte = gte;
5293
- lodash.has = has;
5293
+ lodash.has = has2;
5294
5294
  lodash.hasIn = hasIn;
5295
5295
  lodash.head = head;
5296
5296
  lodash.identity = identity;
@@ -5329,7 +5329,7 @@ var require_lodash = __commonJS({
5329
5329
  lodash.isRegExp = isRegExp;
5330
5330
  lodash.isSafeInteger = isSafeInteger;
5331
5331
  lodash.isSet = isSet;
5332
- lodash.isString = isString;
5332
+ lodash.isString = isString2;
5333
5333
  lodash.isSymbol = isSymbol;
5334
5334
  lodash.isTypedArray = isTypedArray;
5335
5335
  lodash.isUndefined = isUndefined;
@@ -5396,7 +5396,7 @@ var require_lodash = __commonJS({
5396
5396
  lodash.toSafeInteger = toSafeInteger;
5397
5397
  lodash.toString = toString;
5398
5398
  lodash.toUpper = toUpper;
5399
- lodash.trim = trim;
5399
+ lodash.trim = trim2;
5400
5400
  lodash.trimEnd = trimEnd;
5401
5401
  lodash.trimStart = trimStart;
5402
5402
  lodash.truncate = truncate;
@@ -5416,7 +5416,7 @@ var require_lodash = __commonJS({
5416
5416
  });
5417
5417
  return source;
5418
5418
  }(), { "chain": false });
5419
- lodash.VERSION = VERSION;
5419
+ lodash.VERSION = VERSION2;
5420
5420
  arrayEach(["bind", "bindKey", "curry", "curryRight", "partial", "partialRight"], function(methodName) {
5421
5421
  lodash[methodName].placeholder = lodash;
5422
5422
  });
@@ -5592,1260 +5592,6 @@ var require_lodash = __commonJS({
5592
5592
  }
5593
5593
  });
5594
5594
 
5595
- // ../../node_modules/ua-parser-js/src/ua-parser.js
5596
- var require_ua_parser = __commonJS({
5597
- "../../node_modules/ua-parser-js/src/ua-parser.js"(exports, module) {
5598
- init_define_process_env();
5599
- (function(window2, undefined2) {
5600
- "use strict";
5601
- 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;
5602
- 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";
5603
- var extend = function(regexes2, extensions) {
5604
- var mergedRegexes = {};
5605
- for (var i in regexes2) {
5606
- if (extensions[i] && extensions[i].length % 2 === 0) {
5607
- mergedRegexes[i] = extensions[i].concat(regexes2[i]);
5608
- } else {
5609
- mergedRegexes[i] = regexes2[i];
5610
- }
5611
- }
5612
- return mergedRegexes;
5613
- }, enumerize = function(arr) {
5614
- var enums = {};
5615
- for (var i = 0; i < arr.length; i++) {
5616
- enums[arr[i].toUpperCase()] = arr[i];
5617
- }
5618
- return enums;
5619
- }, has = function(str1, str2) {
5620
- return typeof str1 === STR_TYPE ? lowerize(str2).indexOf(lowerize(str1)) !== -1 : false;
5621
- }, lowerize = function(str) {
5622
- return str.toLowerCase();
5623
- }, majorize = function(version) {
5624
- return typeof version === STR_TYPE ? version.replace(/[^\d\.]/g, EMPTY).split(".")[0] : undefined2;
5625
- }, trim = function(str, len) {
5626
- if (typeof str === STR_TYPE) {
5627
- str = str.replace(/^\s\s*/, EMPTY);
5628
- return typeof len === UNDEF_TYPE ? str : str.substring(0, UA_MAX_LENGTH);
5629
- }
5630
- };
5631
- var rgxMapper = function(ua, arrays) {
5632
- var i = 0, j2, k2, p, q, matches, match18;
5633
- while (i < arrays.length && !matches) {
5634
- var regex = arrays[i], props = arrays[i + 1];
5635
- j2 = k2 = 0;
5636
- while (j2 < regex.length && !matches) {
5637
- if (!regex[j2]) {
5638
- break;
5639
- }
5640
- matches = regex[j2++].exec(ua);
5641
- if (!!matches) {
5642
- for (p = 0; p < props.length; p++) {
5643
- match18 = matches[++k2];
5644
- q = props[p];
5645
- if (typeof q === OBJ_TYPE && q.length > 0) {
5646
- if (q.length === 2) {
5647
- if (typeof q[1] == FUNC_TYPE) {
5648
- this[q[0]] = q[1].call(this, match18);
5649
- } else {
5650
- this[q[0]] = q[1];
5651
- }
5652
- } else if (q.length === 3) {
5653
- if (typeof q[1] === FUNC_TYPE && !(q[1].exec && q[1].test)) {
5654
- this[q[0]] = match18 ? q[1].call(this, match18, q[2]) : undefined2;
5655
- } else {
5656
- this[q[0]] = match18 ? match18.replace(q[1], q[2]) : undefined2;
5657
- }
5658
- } else if (q.length === 4) {
5659
- this[q[0]] = match18 ? q[3].call(this, match18.replace(q[1], q[2])) : undefined2;
5660
- }
5661
- } else {
5662
- this[q] = match18 ? match18 : undefined2;
5663
- }
5664
- }
5665
- }
5666
- }
5667
- i += 2;
5668
- }
5669
- }, strMapper = function(str, map) {
5670
- for (var i in map) {
5671
- if (typeof map[i] === OBJ_TYPE && map[i].length > 0) {
5672
- for (var j2 = 0; j2 < map[i].length; j2++) {
5673
- if (has(map[i][j2], str)) {
5674
- return i === UNKNOWN ? undefined2 : i;
5675
- }
5676
- }
5677
- } else if (has(map[i], str)) {
5678
- return i === UNKNOWN ? undefined2 : i;
5679
- }
5680
- }
5681
- return str;
5682
- };
5683
- var oldSafariMap = {
5684
- "1.0": "/8",
5685
- "1.2": "/1",
5686
- "1.3": "/3",
5687
- "2.0": "/412",
5688
- "2.0.2": "/416",
5689
- "2.0.3": "/417",
5690
- "2.0.4": "/419",
5691
- "?": "/"
5692
- }, windowsVersionMap = {
5693
- "ME": "4.90",
5694
- "NT 3.11": "NT3.51",
5695
- "NT 4.0": "NT4.0",
5696
- "2000": "NT 5.0",
5697
- "XP": ["NT 5.1", "NT 5.2"],
5698
- "Vista": "NT 6.0",
5699
- "7": "NT 6.1",
5700
- "8": "NT 6.2",
5701
- "8.1": "NT 6.3",
5702
- "10": ["NT 6.4", "NT 10.0"],
5703
- "RT": "ARM"
5704
- };
5705
- var regexes = {
5706
- browser: [
5707
- [
5708
- /\b(?:crmo|crios)\/([\w\.]+)/i
5709
- // Chrome for Android/iOS
5710
- ],
5711
- [VERSION, [NAME, "Chrome"]],
5712
- [
5713
- /edg(?:e|ios|a)?\/([\w\.]+)/i
5714
- // Microsoft Edge
5715
- ],
5716
- [VERSION, [NAME, "Edge"]],
5717
- [
5718
- // Presto based
5719
- /(opera mini)\/([-\w\.]+)/i,
5720
- // Opera Mini
5721
- /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,
5722
- // Opera Mobi/Tablet
5723
- /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i
5724
- // Opera
5725
- ],
5726
- [NAME, VERSION],
5727
- [
5728
- /opios[\/ ]+([\w\.]+)/i
5729
- // Opera mini on iphone >= 8.0
5730
- ],
5731
- [VERSION, [NAME, OPERA + " Mini"]],
5732
- [
5733
- /\bopr\/([\w\.]+)/i
5734
- // Opera Webkit
5735
- ],
5736
- [VERSION, [NAME, OPERA]],
5737
- [
5738
- // Mixed
5739
- /(kindle)\/([\w\.]+)/i,
5740
- // Kindle
5741
- /(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,
5742
- // Lunascape/Maxthon/Netfront/Jasmine/Blazer
5743
- // Trident based
5744
- /(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i,
5745
- // Avant/IEMobile/SlimBrowser
5746
- /(ba?idubrowser)[\/ ]?([\w\.]+)/i,
5747
- // Baidu Browser
5748
- /(?:ms|\()(ie) ([\w\.]+)/i,
5749
- // Internet Explorer
5750
- // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon
5751
- /(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,
5752
- // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ
5753
- /(heytap|ovi)browser\/([\d\.]+)/i,
5754
- // Heytap/Ovi
5755
- /(weibo)__([\d\.]+)/i
5756
- // Weibo
5757
- ],
5758
- [NAME, VERSION],
5759
- [
5760
- /(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i
5761
- // UCBrowser
5762
- ],
5763
- [VERSION, [NAME, "UC" + BROWSER]],
5764
- [
5765
- /microm.+\bqbcore\/([\w\.]+)/i,
5766
- // WeChat Desktop for Windows Built-in Browser
5767
- /\bqbcore\/([\w\.]+).+microm/i
5768
- ],
5769
- [VERSION, [NAME, "WeChat(Win) Desktop"]],
5770
- [
5771
- /micromessenger\/([\w\.]+)/i
5772
- // WeChat
5773
- ],
5774
- [VERSION, [NAME, "WeChat"]],
5775
- [
5776
- /konqueror\/([\w\.]+)/i
5777
- // Konqueror
5778
- ],
5779
- [VERSION, [NAME, "Konqueror"]],
5780
- [
5781
- /trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i
5782
- // IE11
5783
- ],
5784
- [VERSION, [NAME, "IE"]],
5785
- [
5786
- /ya(?:search)?browser\/([\w\.]+)/i
5787
- // Yandex
5788
- ],
5789
- [VERSION, [NAME, "Yandex"]],
5790
- [
5791
- /(avast|avg)\/([\w\.]+)/i
5792
- // Avast/AVG Secure Browser
5793
- ],
5794
- [[NAME, /(.+)/, "$1 Secure " + BROWSER], VERSION],
5795
- [
5796
- /\bfocus\/([\w\.]+)/i
5797
- // Firefox Focus
5798
- ],
5799
- [VERSION, [NAME, FIREFOX + " Focus"]],
5800
- [
5801
- /\bopt\/([\w\.]+)/i
5802
- // Opera Touch
5803
- ],
5804
- [VERSION, [NAME, OPERA + " Touch"]],
5805
- [
5806
- /coc_coc\w+\/([\w\.]+)/i
5807
- // Coc Coc Browser
5808
- ],
5809
- [VERSION, [NAME, "Coc Coc"]],
5810
- [
5811
- /dolfin\/([\w\.]+)/i
5812
- // Dolphin
5813
- ],
5814
- [VERSION, [NAME, "Dolphin"]],
5815
- [
5816
- /coast\/([\w\.]+)/i
5817
- // Opera Coast
5818
- ],
5819
- [VERSION, [NAME, OPERA + " Coast"]],
5820
- [
5821
- /miuibrowser\/([\w\.]+)/i
5822
- // MIUI Browser
5823
- ],
5824
- [VERSION, [NAME, "MIUI " + BROWSER]],
5825
- [
5826
- /fxios\/([-\w\.]+)/i
5827
- // Firefox for iOS
5828
- ],
5829
- [VERSION, [NAME, FIREFOX]],
5830
- [
5831
- /\bqihu|(qi?ho?o?|360)browser/i
5832
- // 360
5833
- ],
5834
- [[NAME, "360 " + BROWSER]],
5835
- [
5836
- /(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i
5837
- ],
5838
- [[NAME, /(.+)/, "$1 " + BROWSER], VERSION],
5839
- [
5840
- // Oculus/Samsung/Sailfish/Huawei Browser
5841
- /(comodo_dragon)\/([\w\.]+)/i
5842
- // Comodo Dragon
5843
- ],
5844
- [[NAME, /_/g, " "], VERSION],
5845
- [
5846
- /(electron)\/([\w\.]+) safari/i,
5847
- // Electron-based App
5848
- /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,
5849
- // Tesla
5850
- /m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i
5851
- // QQBrowser/Baidu App/2345 Browser
5852
- ],
5853
- [NAME, VERSION],
5854
- [
5855
- /(metasr)[\/ ]?([\w\.]+)/i,
5856
- // SouGouBrowser
5857
- /(lbbrowser)/i,
5858
- // LieBao Browser
5859
- /\[(linkedin)app\]/i
5860
- // LinkedIn App for iOS & Android
5861
- ],
5862
- [NAME],
5863
- [
5864
- // WebView
5865
- /((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i
5866
- // Facebook App for iOS & Android
5867
- ],
5868
- [[NAME, FACEBOOK], VERSION],
5869
- [
5870
- /(kakao(?:talk|story))[\/ ]([\w\.]+)/i,
5871
- // Kakao App
5872
- /(naver)\(.*?(\d+\.[\w\.]+).*\)/i,
5873
- // Naver InApp
5874
- /safari (line)\/([\w\.]+)/i,
5875
- // Line App for iOS
5876
- /\b(line)\/([\w\.]+)\/iab/i,
5877
- // Line App for Android
5878
- /(chromium|instagram)[\/ ]([-\w\.]+)/i
5879
- // Chromium/Instagram
5880
- ],
5881
- [NAME, VERSION],
5882
- [
5883
- /\bgsa\/([\w\.]+) .*safari\//i
5884
- // Google Search Appliance on iOS
5885
- ],
5886
- [VERSION, [NAME, "GSA"]],
5887
- [
5888
- /musical_ly(?:.+app_?version\/|_)([\w\.]+)/i
5889
- // TikTok
5890
- ],
5891
- [VERSION, [NAME, "TikTok"]],
5892
- [
5893
- /headlesschrome(?:\/([\w\.]+)| )/i
5894
- // Chrome Headless
5895
- ],
5896
- [VERSION, [NAME, CHROME + " Headless"]],
5897
- [
5898
- / wv\).+(chrome)\/([\w\.]+)/i
5899
- // Chrome WebView
5900
- ],
5901
- [[NAME, CHROME + " WebView"], VERSION],
5902
- [
5903
- /droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i
5904
- // Android Browser
5905
- ],
5906
- [VERSION, [NAME, "Android " + BROWSER]],
5907
- [
5908
- /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i
5909
- // Chrome/OmniWeb/Arora/Tizen/Nokia
5910
- ],
5911
- [NAME, VERSION],
5912
- [
5913
- /version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i
5914
- // Mobile Safari
5915
- ],
5916
- [VERSION, [NAME, "Mobile Safari"]],
5917
- [
5918
- /version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i
5919
- // Safari & Safari Mobile
5920
- ],
5921
- [VERSION, NAME],
5922
- [
5923
- /webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i
5924
- // Safari < 3.0
5925
- ],
5926
- [NAME, [VERSION, strMapper, oldSafariMap]],
5927
- [
5928
- /(webkit|khtml)\/([\w\.]+)/i
5929
- ],
5930
- [NAME, VERSION],
5931
- [
5932
- // Gecko based
5933
- /(navigator|netscape\d?)\/([-\w\.]+)/i
5934
- // Netscape
5935
- ],
5936
- [[NAME, "Netscape"], VERSION],
5937
- [
5938
- /mobile vr; rv:([\w\.]+)\).+firefox/i
5939
- // Firefox Reality
5940
- ],
5941
- [VERSION, [NAME, FIREFOX + " Reality"]],
5942
- [
5943
- /ekiohf.+(flow)\/([\w\.]+)/i,
5944
- // Flow
5945
- /(swiftfox)/i,
5946
- // Swiftfox
5947
- /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,
5948
- // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar
5949
- /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,
5950
- // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix
5951
- /(firefox)\/([\w\.]+)/i,
5952
- // Other Firefox-based
5953
- /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,
5954
- // Mozilla
5955
- // Other
5956
- /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,
5957
- // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser
5958
- /(links) \(([\w\.]+)/i,
5959
- // Links
5960
- /panasonic;(viera)/i
5961
- // Panasonic Viera
5962
- ],
5963
- [NAME, VERSION],
5964
- [
5965
- /(cobalt)\/([\w\.]+)/i
5966
- // Cobalt
5967
- ],
5968
- [NAME, [VERSION, /master.|lts./, ""]]
5969
- ],
5970
- cpu: [
5971
- [
5972
- /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i
5973
- // AMD64 (x64)
5974
- ],
5975
- [[ARCHITECTURE, "amd64"]],
5976
- [
5977
- /(ia32(?=;))/i
5978
- // IA32 (quicktime)
5979
- ],
5980
- [[ARCHITECTURE, lowerize]],
5981
- [
5982
- /((?:i[346]|x)86)[;\)]/i
5983
- // IA32 (x86)
5984
- ],
5985
- [[ARCHITECTURE, "ia32"]],
5986
- [
5987
- /\b(aarch64|arm(v?8e?l?|_?64))\b/i
5988
- // ARM64
5989
- ],
5990
- [[ARCHITECTURE, "arm64"]],
5991
- [
5992
- /\b(arm(?:v[67])?ht?n?[fl]p?)\b/i
5993
- // ARMHF
5994
- ],
5995
- [[ARCHITECTURE, "armhf"]],
5996
- [
5997
- // PocketPC mistakenly identified as PowerPC
5998
- /windows (ce|mobile); ppc;/i
5999
- ],
6000
- [[ARCHITECTURE, "arm"]],
6001
- [
6002
- /((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i
6003
- // PowerPC
6004
- ],
6005
- [[ARCHITECTURE, /ower/, EMPTY, lowerize]],
6006
- [
6007
- /(sun4\w)[;\)]/i
6008
- // SPARC
6009
- ],
6010
- [[ARCHITECTURE, "sparc"]],
6011
- [
6012
- /((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i
6013
- // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC
6014
- ],
6015
- [[ARCHITECTURE, lowerize]]
6016
- ],
6017
- device: [
6018
- [
6019
- //////////////////////////
6020
- // MOBILES & TABLETS
6021
- /////////////////////////
6022
- // Samsung
6023
- /\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
6024
- ],
6025
- [MODEL, [VENDOR, SAMSUNG], [TYPE, TABLET]],
6026
- [
6027
- /\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,
6028
- /samsung[- ]([-\w]+)/i,
6029
- /sec-(sgh\w+)/i
6030
- ],
6031
- [MODEL, [VENDOR, SAMSUNG], [TYPE, MOBILE]],
6032
- [
6033
- // Apple
6034
- /(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i
6035
- // iPod/iPhone
6036
- ],
6037
- [MODEL, [VENDOR, APPLE], [TYPE, MOBILE]],
6038
- [
6039
- /\((ipad);[-\w\),; ]+apple/i,
6040
- // iPad
6041
- /applecoremedia\/[\w\.]+ \((ipad)/i,
6042
- /\b(ipad)\d\d?,\d\d?[;\]].+ios/i
6043
- ],
6044
- [MODEL, [VENDOR, APPLE], [TYPE, TABLET]],
6045
- [
6046
- /(macintosh);/i
6047
- ],
6048
- [MODEL, [VENDOR, APPLE]],
6049
- [
6050
- // Sharp
6051
- /\b(sh-?[altvz]?\d\d[a-ekm]?)/i
6052
- ],
6053
- [MODEL, [VENDOR, SHARP], [TYPE, MOBILE]],
6054
- [
6055
- // Huawei
6056
- /\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i
6057
- ],
6058
- [MODEL, [VENDOR, HUAWEI], [TYPE, TABLET]],
6059
- [
6060
- /(?:huawei|honor)([-\w ]+)[;\)]/i,
6061
- /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i
6062
- ],
6063
- [MODEL, [VENDOR, HUAWEI], [TYPE, MOBILE]],
6064
- [
6065
- // Xiaomi
6066
- /\b(poco[\w ]+)(?: bui|\))/i,
6067
- // Xiaomi POCO
6068
- /\b; (\w+) build\/hm\1/i,
6069
- // Xiaomi Hongmi 'numeric' models
6070
- /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,
6071
- // Xiaomi Hongmi
6072
- /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,
6073
- // Xiaomi Redmi
6074
- /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i
6075
- // Xiaomi Mi
6076
- ],
6077
- [[MODEL, /_/g, " "], [VENDOR, XIAOMI], [TYPE, MOBILE]],
6078
- [
6079
- /\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i
6080
- // Mi Pad tablets
6081
- ],
6082
- [[MODEL, /_/g, " "], [VENDOR, XIAOMI], [TYPE, TABLET]],
6083
- [
6084
- // OPPO
6085
- /; (\w+) bui.+ oppo/i,
6086
- /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i
6087
- ],
6088
- [MODEL, [VENDOR, "OPPO"], [TYPE, MOBILE]],
6089
- [
6090
- // Vivo
6091
- /vivo (\w+)(?: bui|\))/i,
6092
- /\b(v[12]\d{3}\w?[at])(?: bui|;)/i
6093
- ],
6094
- [MODEL, [VENDOR, "Vivo"], [TYPE, MOBILE]],
6095
- [
6096
- // Realme
6097
- /\b(rmx[12]\d{3})(?: bui|;|\))/i
6098
- ],
6099
- [MODEL, [VENDOR, "Realme"], [TYPE, MOBILE]],
6100
- [
6101
- // Motorola
6102
- /\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
6103
- /\bmot(?:orola)?[- ](\w*)/i,
6104
- /((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i
6105
- ],
6106
- [MODEL, [VENDOR, MOTOROLA], [TYPE, MOBILE]],
6107
- [
6108
- /\b(mz60\d|xoom[2 ]{0,2}) build\//i
6109
- ],
6110
- [MODEL, [VENDOR, MOTOROLA], [TYPE, TABLET]],
6111
- [
6112
- // LG
6113
- /((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i
6114
- ],
6115
- [MODEL, [VENDOR, LG], [TYPE, TABLET]],
6116
- [
6117
- /(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
6118
- /\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,
6119
- /\blg-?([\d\w]+) bui/i
6120
- ],
6121
- [MODEL, [VENDOR, LG], [TYPE, MOBILE]],
6122
- [
6123
- // Lenovo
6124
- /(ideatab[-\w ]+)/i,
6125
- /lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i
6126
- ],
6127
- [MODEL, [VENDOR, "Lenovo"], [TYPE, TABLET]],
6128
- [
6129
- // Nokia
6130
- /(?:maemo|nokia).*(n900|lumia \d+)/i,
6131
- /nokia[-_ ]?([-\w\.]*)/i
6132
- ],
6133
- [[MODEL, /_/g, " "], [VENDOR, "Nokia"], [TYPE, MOBILE]],
6134
- [
6135
- // Google
6136
- /(pixel c)\b/i
6137
- // Google Pixel C
6138
- ],
6139
- [MODEL, [VENDOR, GOOGLE], [TYPE, TABLET]],
6140
- [
6141
- /droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i
6142
- // Google Pixel
6143
- ],
6144
- [MODEL, [VENDOR, GOOGLE], [TYPE, MOBILE]],
6145
- [
6146
- // Sony
6147
- /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
6148
- ],
6149
- [MODEL, [VENDOR, SONY], [TYPE, MOBILE]],
6150
- [
6151
- /sony tablet [ps]/i,
6152
- /\b(?:sony)?sgp\w+(?: bui|\))/i
6153
- ],
6154
- [[MODEL, "Xperia Tablet"], [VENDOR, SONY], [TYPE, TABLET]],
6155
- [
6156
- // OnePlus
6157
- / (kb2005|in20[12]5|be20[12][59])\b/i,
6158
- /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i
6159
- ],
6160
- [MODEL, [VENDOR, "OnePlus"], [TYPE, MOBILE]],
6161
- [
6162
- // Amazon
6163
- /(alexa)webm/i,
6164
- /(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i,
6165
- // Kindle Fire without Silk / Echo Show
6166
- /(kf[a-z]+)( bui|\)).+silk\//i
6167
- // Kindle Fire HD
6168
- ],
6169
- [MODEL, [VENDOR, AMAZON], [TYPE, TABLET]],
6170
- [
6171
- /((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i
6172
- // Fire Phone
6173
- ],
6174
- [[MODEL, /(.+)/g, "Fire Phone $1"], [VENDOR, AMAZON], [TYPE, MOBILE]],
6175
- [
6176
- // BlackBerry
6177
- /(playbook);[-\w\),; ]+(rim)/i
6178
- // BlackBerry PlayBook
6179
- ],
6180
- [MODEL, VENDOR, [TYPE, TABLET]],
6181
- [
6182
- /\b((?:bb[a-f]|st[hv])100-\d)/i,
6183
- /\(bb10; (\w+)/i
6184
- // BlackBerry 10
6185
- ],
6186
- [MODEL, [VENDOR, BLACKBERRY], [TYPE, MOBILE]],
6187
- [
6188
- // Asus
6189
- /(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
6190
- ],
6191
- [MODEL, [VENDOR, ASUS], [TYPE, TABLET]],
6192
- [
6193
- / (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
6194
- ],
6195
- [MODEL, [VENDOR, ASUS], [TYPE, MOBILE]],
6196
- [
6197
- // HTC
6198
- /(nexus 9)/i
6199
- // HTC Nexus 9
6200
- ],
6201
- [MODEL, [VENDOR, "HTC"], [TYPE, TABLET]],
6202
- [
6203
- /(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,
6204
- // HTC
6205
- // ZTE
6206
- /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,
6207
- /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i
6208
- // Alcatel/GeeksPhone/Nexian/Panasonic/Sony
6209
- ],
6210
- [VENDOR, [MODEL, /_/g, " "], [TYPE, MOBILE]],
6211
- [
6212
- // Acer
6213
- /droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
6214
- ],
6215
- [MODEL, [VENDOR, "Acer"], [TYPE, TABLET]],
6216
- [
6217
- // Meizu
6218
- /droid.+; (m[1-5] note) bui/i,
6219
- /\bmz-([-\w]{2,})/i
6220
- ],
6221
- [MODEL, [VENDOR, "Meizu"], [TYPE, MOBILE]],
6222
- [
6223
- // MIXED
6224
- /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i,
6225
- // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron
6226
- /(hp) ([\w ]+\w)/i,
6227
- // HP iPAQ
6228
- /(asus)-?(\w+)/i,
6229
- // Asus
6230
- /(microsoft); (lumia[\w ]+)/i,
6231
- // Microsoft Lumia
6232
- /(lenovo)[-_ ]?([-\w]+)/i,
6233
- // Lenovo
6234
- /(jolla)/i,
6235
- // Jolla
6236
- /(oppo) ?([\w ]+) bui/i
6237
- // OPPO
6238
- ],
6239
- [VENDOR, MODEL, [TYPE, MOBILE]],
6240
- [
6241
- /(kobo)\s(ereader|touch)/i,
6242
- // Kobo
6243
- /(archos) (gamepad2?)/i,
6244
- // Archos
6245
- /(hp).+(touchpad(?!.+tablet)|tablet)/i,
6246
- // HP TouchPad
6247
- /(kindle)\/([\w\.]+)/i,
6248
- // Kindle
6249
- /(nook)[\w ]+build\/(\w+)/i,
6250
- // Nook
6251
- /(dell) (strea[kpr\d ]*[\dko])/i,
6252
- // Dell Streak
6253
- /(le[- ]+pan)[- ]+(\w{1,9}) bui/i,
6254
- // Le Pan Tablets
6255
- /(trinity)[- ]*(t\d{3}) bui/i,
6256
- // Trinity Tablets
6257
- /(gigaset)[- ]+(q\w{1,9}) bui/i,
6258
- // Gigaset Tablets
6259
- /(vodafone) ([\w ]+)(?:\)| bui)/i
6260
- // Vodafone
6261
- ],
6262
- [VENDOR, MODEL, [TYPE, TABLET]],
6263
- [
6264
- /(surface duo)/i
6265
- // Surface Duo
6266
- ],
6267
- [MODEL, [VENDOR, MICROSOFT], [TYPE, TABLET]],
6268
- [
6269
- /droid [\d\.]+; (fp\du?)(?: b|\))/i
6270
- // Fairphone
6271
- ],
6272
- [MODEL, [VENDOR, "Fairphone"], [TYPE, MOBILE]],
6273
- [
6274
- /(u304aa)/i
6275
- // AT&T
6276
- ],
6277
- [MODEL, [VENDOR, "AT&T"], [TYPE, MOBILE]],
6278
- [
6279
- /\bsie-(\w*)/i
6280
- // Siemens
6281
- ],
6282
- [MODEL, [VENDOR, "Siemens"], [TYPE, MOBILE]],
6283
- [
6284
- /\b(rct\w+) b/i
6285
- // RCA Tablets
6286
- ],
6287
- [MODEL, [VENDOR, "RCA"], [TYPE, TABLET]],
6288
- [
6289
- /\b(venue[\d ]{2,7}) b/i
6290
- // Dell Venue Tablets
6291
- ],
6292
- [MODEL, [VENDOR, "Dell"], [TYPE, TABLET]],
6293
- [
6294
- /\b(q(?:mv|ta)\w+) b/i
6295
- // Verizon Tablet
6296
- ],
6297
- [MODEL, [VENDOR, "Verizon"], [TYPE, TABLET]],
6298
- [
6299
- /\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i
6300
- // Barnes & Noble Tablet
6301
- ],
6302
- [MODEL, [VENDOR, "Barnes & Noble"], [TYPE, TABLET]],
6303
- [
6304
- /\b(tm\d{3}\w+) b/i
6305
- ],
6306
- [MODEL, [VENDOR, "NuVision"], [TYPE, TABLET]],
6307
- [
6308
- /\b(k88) b/i
6309
- // ZTE K Series Tablet
6310
- ],
6311
- [MODEL, [VENDOR, "ZTE"], [TYPE, TABLET]],
6312
- [
6313
- /\b(nx\d{3}j) b/i
6314
- // ZTE Nubia
6315
- ],
6316
- [MODEL, [VENDOR, "ZTE"], [TYPE, MOBILE]],
6317
- [
6318
- /\b(gen\d{3}) b.+49h/i
6319
- // Swiss GEN Mobile
6320
- ],
6321
- [MODEL, [VENDOR, "Swiss"], [TYPE, MOBILE]],
6322
- [
6323
- /\b(zur\d{3}) b/i
6324
- // Swiss ZUR Tablet
6325
- ],
6326
- [MODEL, [VENDOR, "Swiss"], [TYPE, TABLET]],
6327
- [
6328
- /\b((zeki)?tb.*\b) b/i
6329
- // Zeki Tablets
6330
- ],
6331
- [MODEL, [VENDOR, "Zeki"], [TYPE, TABLET]],
6332
- [
6333
- /\b([yr]\d{2}) b/i,
6334
- /\b(dragon[- ]+touch |dt)(\w{5}) b/i
6335
- // Dragon Touch Tablet
6336
- ],
6337
- [[VENDOR, "Dragon Touch"], MODEL, [TYPE, TABLET]],
6338
- [
6339
- /\b(ns-?\w{0,9}) b/i
6340
- // Insignia Tablets
6341
- ],
6342
- [MODEL, [VENDOR, "Insignia"], [TYPE, TABLET]],
6343
- [
6344
- /\b((nxa|next)-?\w{0,9}) b/i
6345
- // NextBook Tablets
6346
- ],
6347
- [MODEL, [VENDOR, "NextBook"], [TYPE, TABLET]],
6348
- [
6349
- /\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i
6350
- // Voice Xtreme Phones
6351
- ],
6352
- [[VENDOR, "Voice"], MODEL, [TYPE, MOBILE]],
6353
- [
6354
- /\b(lvtel\-)?(v1[12]) b/i
6355
- // LvTel Phones
6356
- ],
6357
- [[VENDOR, "LvTel"], MODEL, [TYPE, MOBILE]],
6358
- [
6359
- /\b(ph-1) /i
6360
- // Essential PH-1
6361
- ],
6362
- [MODEL, [VENDOR, "Essential"], [TYPE, MOBILE]],
6363
- [
6364
- /\b(v(100md|700na|7011|917g).*\b) b/i
6365
- // Envizen Tablets
6366
- ],
6367
- [MODEL, [VENDOR, "Envizen"], [TYPE, TABLET]],
6368
- [
6369
- /\b(trio[-\w\. ]+) b/i
6370
- // MachSpeed Tablets
6371
- ],
6372
- [MODEL, [VENDOR, "MachSpeed"], [TYPE, TABLET]],
6373
- [
6374
- /\btu_(1491) b/i
6375
- // Rotor Tablets
6376
- ],
6377
- [MODEL, [VENDOR, "Rotor"], [TYPE, TABLET]],
6378
- [
6379
- /(shield[\w ]+) b/i
6380
- // Nvidia Shield Tablets
6381
- ],
6382
- [MODEL, [VENDOR, "Nvidia"], [TYPE, TABLET]],
6383
- [
6384
- /(sprint) (\w+)/i
6385
- // Sprint Phones
6386
- ],
6387
- [VENDOR, MODEL, [TYPE, MOBILE]],
6388
- [
6389
- /(kin\.[onetw]{3})/i
6390
- // Microsoft Kin
6391
- ],
6392
- [[MODEL, /\./g, " "], [VENDOR, MICROSOFT], [TYPE, MOBILE]],
6393
- [
6394
- /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i
6395
- // Zebra
6396
- ],
6397
- [MODEL, [VENDOR, ZEBRA], [TYPE, TABLET]],
6398
- [
6399
- /droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
6400
- ],
6401
- [MODEL, [VENDOR, ZEBRA], [TYPE, MOBILE]],
6402
- [
6403
- ///////////////////
6404
- // SMARTTVS
6405
- ///////////////////
6406
- /smart-tv.+(samsung)/i
6407
- // Samsung
6408
- ],
6409
- [VENDOR, [TYPE, SMARTTV]],
6410
- [
6411
- /hbbtv.+maple;(\d+)/i
6412
- ],
6413
- [[MODEL, /^/, "SmartTV"], [VENDOR, SAMSUNG], [TYPE, SMARTTV]],
6414
- [
6415
- /(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i
6416
- // LG SmartTV
6417
- ],
6418
- [[VENDOR, LG], [TYPE, SMARTTV]],
6419
- [
6420
- /(apple) ?tv/i
6421
- // Apple TV
6422
- ],
6423
- [VENDOR, [MODEL, APPLE + " TV"], [TYPE, SMARTTV]],
6424
- [
6425
- /crkey/i
6426
- // Google Chromecast
6427
- ],
6428
- [[MODEL, CHROME + "cast"], [VENDOR, GOOGLE], [TYPE, SMARTTV]],
6429
- [
6430
- /droid.+aft(\w)( bui|\))/i
6431
- // Fire TV
6432
- ],
6433
- [MODEL, [VENDOR, AMAZON], [TYPE, SMARTTV]],
6434
- [
6435
- /\(dtv[\);].+(aquos)/i,
6436
- /(aquos-tv[\w ]+)\)/i
6437
- // Sharp
6438
- ],
6439
- [MODEL, [VENDOR, SHARP], [TYPE, SMARTTV]],
6440
- [
6441
- /(bravia[\w ]+)( bui|\))/i
6442
- // Sony
6443
- ],
6444
- [MODEL, [VENDOR, SONY], [TYPE, SMARTTV]],
6445
- [
6446
- /(mitv-\w{5}) bui/i
6447
- // Xiaomi
6448
- ],
6449
- [MODEL, [VENDOR, XIAOMI], [TYPE, SMARTTV]],
6450
- [
6451
- /Hbbtv.*(technisat) (.*);/i
6452
- // TechniSAT
6453
- ],
6454
- [VENDOR, MODEL, [TYPE, SMARTTV]],
6455
- [
6456
- /\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,
6457
- // Roku
6458
- /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i
6459
- // HbbTV devices
6460
- ],
6461
- [[VENDOR, trim], [MODEL, trim], [TYPE, SMARTTV]],
6462
- [
6463
- /\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i
6464
- // SmartTV from Unidentified Vendors
6465
- ],
6466
- [[TYPE, SMARTTV]],
6467
- [
6468
- ///////////////////
6469
- // CONSOLES
6470
- ///////////////////
6471
- /(ouya)/i,
6472
- // Ouya
6473
- /(nintendo) ([wids3utch]+)/i
6474
- // Nintendo
6475
- ],
6476
- [VENDOR, MODEL, [TYPE, CONSOLE]],
6477
- [
6478
- /droid.+; (shield) bui/i
6479
- // Nvidia
6480
- ],
6481
- [MODEL, [VENDOR, "Nvidia"], [TYPE, CONSOLE]],
6482
- [
6483
- /(playstation [345portablevi]+)/i
6484
- // Playstation
6485
- ],
6486
- [MODEL, [VENDOR, SONY], [TYPE, CONSOLE]],
6487
- [
6488
- /\b(xbox(?: one)?(?!; xbox))[\); ]/i
6489
- // Microsoft Xbox
6490
- ],
6491
- [MODEL, [VENDOR, MICROSOFT], [TYPE, CONSOLE]],
6492
- [
6493
- ///////////////////
6494
- // WEARABLES
6495
- ///////////////////
6496
- /((pebble))app/i
6497
- // Pebble
6498
- ],
6499
- [VENDOR, MODEL, [TYPE, WEARABLE]],
6500
- [
6501
- /(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i
6502
- // Apple Watch
6503
- ],
6504
- [MODEL, [VENDOR, APPLE], [TYPE, WEARABLE]],
6505
- [
6506
- /droid.+; (glass) \d/i
6507
- // Google Glass
6508
- ],
6509
- [MODEL, [VENDOR, GOOGLE], [TYPE, WEARABLE]],
6510
- [
6511
- /droid.+; (wt63?0{2,3})\)/i
6512
- ],
6513
- [MODEL, [VENDOR, ZEBRA], [TYPE, WEARABLE]],
6514
- [
6515
- /(quest( 2| pro)?)/i
6516
- // Oculus Quest
6517
- ],
6518
- [MODEL, [VENDOR, FACEBOOK], [TYPE, WEARABLE]],
6519
- [
6520
- ///////////////////
6521
- // EMBEDDED
6522
- ///////////////////
6523
- /(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i
6524
- // Tesla
6525
- ],
6526
- [VENDOR, [TYPE, EMBEDDED]],
6527
- [
6528
- /(aeobc)\b/i
6529
- // Echo Dot
6530
- ],
6531
- [MODEL, [VENDOR, AMAZON], [TYPE, EMBEDDED]],
6532
- [
6533
- ////////////////////
6534
- // MIXED (GENERIC)
6535
- ///////////////////
6536
- /droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i
6537
- // Android Phones from Unidentified Vendors
6538
- ],
6539
- [MODEL, [TYPE, MOBILE]],
6540
- [
6541
- /droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i
6542
- // Android Tablets from Unidentified Vendors
6543
- ],
6544
- [MODEL, [TYPE, TABLET]],
6545
- [
6546
- /\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i
6547
- // Unidentifiable Tablet
6548
- ],
6549
- [[TYPE, TABLET]],
6550
- [
6551
- /(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i
6552
- // Unidentifiable Mobile
6553
- ],
6554
- [[TYPE, MOBILE]],
6555
- [
6556
- /(android[-\w\. ]{0,9});.+buil/i
6557
- // Generic Android Device
6558
- ],
6559
- [MODEL, [VENDOR, "Generic"]]
6560
- ],
6561
- engine: [
6562
- [
6563
- /windows.+ edge\/([\w\.]+)/i
6564
- // EdgeHTML
6565
- ],
6566
- [VERSION, [NAME, EDGE + "HTML"]],
6567
- [
6568
- /webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i
6569
- // Blink
6570
- ],
6571
- [VERSION, [NAME, "Blink"]],
6572
- [
6573
- /(presto)\/([\w\.]+)/i,
6574
- // Presto
6575
- /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,
6576
- // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna
6577
- /ekioh(flow)\/([\w\.]+)/i,
6578
- // Flow
6579
- /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,
6580
- // KHTML/Tasman/Links
6581
- /(icab)[\/ ]([23]\.[\d\.]+)/i,
6582
- // iCab
6583
- /\b(libweb)/i
6584
- ],
6585
- [NAME, VERSION],
6586
- [
6587
- /rv\:([\w\.]{1,9})\b.+(gecko)/i
6588
- // Gecko
6589
- ],
6590
- [VERSION, NAME]
6591
- ],
6592
- os: [
6593
- [
6594
- // Windows
6595
- /microsoft (windows) (vista|xp)/i
6596
- // Windows (iTunes)
6597
- ],
6598
- [NAME, VERSION],
6599
- [
6600
- /(windows) nt 6\.2; (arm)/i,
6601
- // Windows RT
6602
- /(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i,
6603
- // Windows Phone
6604
- /(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i
6605
- ],
6606
- [NAME, [VERSION, strMapper, windowsVersionMap]],
6607
- [
6608
- /(win(?=3|9|n)|win 9x )([nt\d\.]+)/i
6609
- ],
6610
- [[NAME, "Windows"], [VERSION, strMapper, windowsVersionMap]],
6611
- [
6612
- // iOS/macOS
6613
- /ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,
6614
- // iOS
6615
- /ios;fbsv\/([\d\.]+)/i,
6616
- /cfnetwork\/.+darwin/i
6617
- ],
6618
- [[VERSION, /_/g, "."], [NAME, "iOS"]],
6619
- [
6620
- /(mac os x) ?([\w\. ]*)/i,
6621
- /(macintosh|mac_powerpc\b)(?!.+haiku)/i
6622
- // Mac OS
6623
- ],
6624
- [[NAME, MAC_OS], [VERSION, /_/g, "."]],
6625
- [
6626
- // Mobile OSes
6627
- /droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i
6628
- // Android-x86/HarmonyOS
6629
- ],
6630
- [VERSION, NAME],
6631
- [
6632
- // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS
6633
- /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,
6634
- /(blackberry)\w*\/([\w\.]*)/i,
6635
- // Blackberry
6636
- /(tizen|kaios)[\/ ]([\w\.]+)/i,
6637
- // Tizen/KaiOS
6638
- /\((series40);/i
6639
- // Series 40
6640
- ],
6641
- [NAME, VERSION],
6642
- [
6643
- /\(bb(10);/i
6644
- // BlackBerry 10
6645
- ],
6646
- [VERSION, [NAME, BLACKBERRY]],
6647
- [
6648
- /(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i
6649
- // Symbian
6650
- ],
6651
- [VERSION, [NAME, "Symbian"]],
6652
- [
6653
- /mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i
6654
- // Firefox OS
6655
- ],
6656
- [VERSION, [NAME, FIREFOX + " OS"]],
6657
- [
6658
- /web0s;.+rt(tv)/i,
6659
- /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i
6660
- // WebOS
6661
- ],
6662
- [VERSION, [NAME, "webOS"]],
6663
- [
6664
- /watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i
6665
- // watchOS
6666
- ],
6667
- [VERSION, [NAME, "watchOS"]],
6668
- [
6669
- // Google Chromecast
6670
- /crkey\/([\d\.]+)/i
6671
- // Google Chromecast
6672
- ],
6673
- [VERSION, [NAME, CHROME + "cast"]],
6674
- [
6675
- /(cros) [\w]+(?:\)| ([\w\.]+)\b)/i
6676
- // Chromium OS
6677
- ],
6678
- [[NAME, CHROMIUM_OS], VERSION],
6679
- [
6680
- // Smart TVs
6681
- /panasonic;(viera)/i,
6682
- // Panasonic Viera
6683
- /(netrange)mmh/i,
6684
- // Netrange
6685
- /(nettv)\/(\d+\.[\w\.]+)/i,
6686
- // NetTV
6687
- // Console
6688
- /(nintendo|playstation) ([wids345portablevuch]+)/i,
6689
- // Nintendo/Playstation
6690
- /(xbox); +xbox ([^\);]+)/i,
6691
- // Microsoft Xbox (360, One, X, S, Series X, Series S)
6692
- // Other
6693
- /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,
6694
- // Joli/Palm
6695
- /(mint)[\/\(\) ]?(\w*)/i,
6696
- // Mint
6697
- /(mageia|vectorlinux)[; ]/i,
6698
- // Mageia/VectorLinux
6699
- /([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,
6700
- // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire
6701
- /(hurd|linux) ?([\w\.]*)/i,
6702
- // Hurd/Linux
6703
- /(gnu) ?([\w\.]*)/i,
6704
- // GNU
6705
- /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,
6706
- // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly
6707
- /(haiku) (\w+)/i
6708
- // Haiku
6709
- ],
6710
- [NAME, VERSION],
6711
- [
6712
- /(sunos) ?([\w\.\d]*)/i
6713
- // Solaris
6714
- ],
6715
- [[NAME, "Solaris"], VERSION],
6716
- [
6717
- /((?:open)?solaris)[-\/ ]?([\w\.]*)/i,
6718
- // Solaris
6719
- /(aix) ((\d)(?=\.|\)| )[\w\.])*/i,
6720
- // AIX
6721
- /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,
6722
- // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX/SerenityOS
6723
- /(unix) ?([\w\.]*)/i
6724
- // UNIX
6725
- ],
6726
- [NAME, VERSION]
6727
- ]
6728
- };
6729
- var UAParser = function(ua, extensions) {
6730
- if (typeof ua === OBJ_TYPE) {
6731
- extensions = ua;
6732
- ua = undefined2;
6733
- }
6734
- if (!(this instanceof UAParser)) {
6735
- return new UAParser(ua, extensions).getResult();
6736
- }
6737
- var _navigator = typeof window2 !== UNDEF_TYPE && window2.navigator ? window2.navigator : undefined2;
6738
- var _ua = ua || (_navigator && _navigator.userAgent ? _navigator.userAgent : EMPTY);
6739
- var _uach = _navigator && _navigator.userAgentData ? _navigator.userAgentData : undefined2;
6740
- var _rgxmap = extensions ? extend(regexes, extensions) : regexes;
6741
- var _isSelfNav = _navigator && _navigator.userAgent == _ua;
6742
- this.getBrowser = function() {
6743
- var _browser = {};
6744
- _browser[NAME] = undefined2;
6745
- _browser[VERSION] = undefined2;
6746
- rgxMapper.call(_browser, _ua, _rgxmap.browser);
6747
- _browser[MAJOR] = majorize(_browser[VERSION]);
6748
- if (_isSelfNav && _navigator && _navigator.brave && typeof _navigator.brave.isBrave == FUNC_TYPE) {
6749
- _browser[NAME] = "Brave";
6750
- }
6751
- return _browser;
6752
- };
6753
- this.getCPU = function() {
6754
- var _cpu = {};
6755
- _cpu[ARCHITECTURE] = undefined2;
6756
- rgxMapper.call(_cpu, _ua, _rgxmap.cpu);
6757
- return _cpu;
6758
- };
6759
- this.getDevice = function() {
6760
- var _device = {};
6761
- _device[VENDOR] = undefined2;
6762
- _device[MODEL] = undefined2;
6763
- _device[TYPE] = undefined2;
6764
- rgxMapper.call(_device, _ua, _rgxmap.device);
6765
- if (_isSelfNav && !_device[TYPE] && _uach && _uach.mobile) {
6766
- _device[TYPE] = MOBILE;
6767
- }
6768
- if (_isSelfNav && _device[MODEL] == "Macintosh" && _navigator && typeof _navigator.standalone !== UNDEF_TYPE && _navigator.maxTouchPoints && _navigator.maxTouchPoints > 2) {
6769
- _device[MODEL] = "iPad";
6770
- _device[TYPE] = TABLET;
6771
- }
6772
- return _device;
6773
- };
6774
- this.getEngine = function() {
6775
- var _engine = {};
6776
- _engine[NAME] = undefined2;
6777
- _engine[VERSION] = undefined2;
6778
- rgxMapper.call(_engine, _ua, _rgxmap.engine);
6779
- return _engine;
6780
- };
6781
- this.getOS = function() {
6782
- var _os = {};
6783
- _os[NAME] = undefined2;
6784
- _os[VERSION] = undefined2;
6785
- rgxMapper.call(_os, _ua, _rgxmap.os);
6786
- if (_isSelfNav && !_os[NAME] && _uach && _uach.platform != "Unknown") {
6787
- _os[NAME] = _uach.platform.replace(/chrome os/i, CHROMIUM_OS).replace(/macos/i, MAC_OS);
6788
- }
6789
- return _os;
6790
- };
6791
- this.getResult = function() {
6792
- return {
6793
- ua: this.getUA(),
6794
- browser: this.getBrowser(),
6795
- engine: this.getEngine(),
6796
- os: this.getOS(),
6797
- device: this.getDevice(),
6798
- cpu: this.getCPU()
6799
- };
6800
- };
6801
- this.getUA = function() {
6802
- return _ua;
6803
- };
6804
- this.setUA = function(ua2) {
6805
- _ua = typeof ua2 === STR_TYPE && ua2.length > UA_MAX_LENGTH ? trim(ua2, UA_MAX_LENGTH) : ua2;
6806
- return this;
6807
- };
6808
- this.setUA(_ua);
6809
- return this;
6810
- };
6811
- UAParser.VERSION = LIBVERSION;
6812
- UAParser.BROWSER = enumerize([NAME, VERSION, MAJOR]);
6813
- UAParser.CPU = enumerize([ARCHITECTURE]);
6814
- UAParser.DEVICE = enumerize([MODEL, VENDOR, TYPE, CONSOLE, MOBILE, SMARTTV, TABLET, WEARABLE, EMBEDDED]);
6815
- UAParser.ENGINE = UAParser.OS = enumerize([NAME, VERSION]);
6816
- if (typeof exports !== UNDEF_TYPE) {
6817
- if (typeof module !== UNDEF_TYPE && module.exports) {
6818
- exports = module.exports = UAParser;
6819
- }
6820
- exports.UAParser = UAParser;
6821
- } else {
6822
- if (typeof define === FUNC_TYPE && define.amd) {
6823
- define(function() {
6824
- return UAParser;
6825
- });
6826
- } else if (typeof window2 !== UNDEF_TYPE) {
6827
- window2.UAParser = UAParser;
6828
- }
6829
- }
6830
- var $ = typeof window2 !== UNDEF_TYPE && (window2.jQuery || window2.Zepto);
6831
- if ($ && !$.ua) {
6832
- var parser = new UAParser();
6833
- $.ua = parser.getResult();
6834
- $.ua.get = function() {
6835
- return parser.getUA();
6836
- };
6837
- $.ua.set = function(ua) {
6838
- parser.setUA(ua);
6839
- var result = parser.getResult();
6840
- for (var prop in result) {
6841
- $.ua[prop] = result[prop];
6842
- }
6843
- };
6844
- }
6845
- })(typeof window === "object" ? window : exports);
6846
- }
6847
- });
6848
-
6849
5595
  // ../../node_modules/lodash.isequal/index.js
6850
5596
  var require_lodash2 = __commonJS({
6851
5597
  "../../node_modules/lodash.isequal/index.js"(exports, module) {
@@ -8748,13 +7494,13 @@ var require_writer = __commonJS({
8748
7494
  var i = 1;
8749
7495
  var args = arguments;
8750
7496
  var len = args.length;
8751
- return formatStr.replace(formatRegExp, function(x) {
7497
+ return formatStr.replace(formatRegExp, function(x2) {
8752
7498
  if (i >= len) {
8753
- return x;
7499
+ return x2;
8754
7500
  }
8755
7501
  var arg = args[i];
8756
7502
  i += 1;
8757
- switch (x) {
7503
+ switch (x2) {
8758
7504
  case "%%":
8759
7505
  return "%";
8760
7506
  case "%s":
@@ -8884,7 +7630,7 @@ var require_react_is_production_min = __commonJS({
8884
7630
  var t = b2 ? Symbol.for("react.lazy") : 60116;
8885
7631
  var v = b2 ? Symbol.for("react.block") : 60121;
8886
7632
  var w = b2 ? Symbol.for("react.fundamental") : 60117;
8887
- var x = b2 ? Symbol.for("react.responder") : 60118;
7633
+ var x2 = b2 ? Symbol.for("react.responder") : 60118;
8888
7634
  var y2 = b2 ? Symbol.for("react.scope") : 60119;
8889
7635
  function z2(a2) {
8890
7636
  if ("object" === typeof a2 && null !== a2) {
@@ -8970,7 +7716,7 @@ var require_react_is_production_min = __commonJS({
8970
7716
  return z2(a2) === p;
8971
7717
  };
8972
7718
  exports.isValidElementType = function(a2) {
8973
- 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);
7719
+ 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);
8974
7720
  };
8975
7721
  exports.typeOf = z2;
8976
7722
  }
@@ -9244,7 +7990,7 @@ var require_checkPropTypes = __commonJS({
9244
7990
  if (define_process_env_default.NODE_ENV !== "production") {
9245
7991
  ReactPropTypesSecret = require_ReactPropTypesSecret();
9246
7992
  loggedTypeFailures = {};
9247
- has = require_has();
7993
+ has2 = require_has();
9248
7994
  printWarning = function(text) {
9249
7995
  var message = "Warning: " + text;
9250
7996
  if (typeof console !== "undefined") {
@@ -9252,17 +7998,17 @@ var require_checkPropTypes = __commonJS({
9252
7998
  }
9253
7999
  try {
9254
8000
  throw new Error(message);
9255
- } catch (x) {
8001
+ } catch (x2) {
9256
8002
  }
9257
8003
  };
9258
8004
  }
9259
8005
  var ReactPropTypesSecret;
9260
8006
  var loggedTypeFailures;
9261
- var has;
8007
+ var has2;
9262
8008
  function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
9263
8009
  if (define_process_env_default.NODE_ENV !== "production") {
9264
8010
  for (var typeSpecName in typeSpecs) {
9265
- if (has(typeSpecs, typeSpecName)) {
8011
+ if (has2(typeSpecs, typeSpecName)) {
9266
8012
  var error;
9267
8013
  try {
9268
8014
  if (typeof typeSpecs[typeSpecName] !== "function") {
@@ -9309,7 +8055,7 @@ var require_factoryWithTypeCheckers = __commonJS({
9309
8055
  var ReactIs = require_react_is();
9310
8056
  var assign = require_object_assign();
9311
8057
  var ReactPropTypesSecret = require_ReactPropTypesSecret();
9312
- var has = require_has();
8058
+ var has2 = require_has();
9313
8059
  var checkPropTypes = require_checkPropTypes();
9314
8060
  var printWarning = function() {
9315
8061
  };
@@ -9321,7 +8067,7 @@ var require_factoryWithTypeCheckers = __commonJS({
9321
8067
  }
9322
8068
  try {
9323
8069
  throw new Error(message);
9324
- } catch (x) {
8070
+ } catch (x2) {
9325
8071
  }
9326
8072
  };
9327
8073
  }
@@ -9359,11 +8105,11 @@ var require_factoryWithTypeCheckers = __commonJS({
9359
8105
  shape: createShapeTypeChecker,
9360
8106
  exact: createStrictShapeTypeChecker
9361
8107
  };
9362
- function is(x, y2) {
9363
- if (x === y2) {
9364
- return x !== 0 || 1 / x === 1 / y2;
8108
+ function is2(x2, y2) {
8109
+ if (x2 === y2) {
8110
+ return x2 !== 0 || 1 / x2 === 1 / y2;
9365
8111
  } else {
9366
- return x !== x && y2 !== y2;
8112
+ return x2 !== x2 && y2 !== y2;
9367
8113
  }
9368
8114
  }
9369
8115
  function PropTypeError(message, data3) {
@@ -9502,7 +8248,7 @@ var require_factoryWithTypeCheckers = __commonJS({
9502
8248
  function validate(props, propName, componentName, location, propFullName) {
9503
8249
  var propValue = props[propName];
9504
8250
  for (var i = 0; i < expectedValues.length; i++) {
9505
- if (is(propValue, expectedValues[i])) {
8251
+ if (is2(propValue, expectedValues[i])) {
9506
8252
  return null;
9507
8253
  }
9508
8254
  }
@@ -9528,7 +8274,7 @@ var require_factoryWithTypeCheckers = __commonJS({
9528
8274
  return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected an object."));
9529
8275
  }
9530
8276
  for (var key in propValue) {
9531
- if (has(propValue, key)) {
8277
+ if (has2(propValue, key)) {
9532
8278
  var error = typeChecker(propValue, key, componentName, location, propFullName + "." + key, ReactPropTypesSecret);
9533
8279
  if (error instanceof Error) {
9534
8280
  return error;
@@ -9561,7 +8307,7 @@ var require_factoryWithTypeCheckers = __commonJS({
9561
8307
  if (checkerResult == null) {
9562
8308
  return null;
9563
8309
  }
9564
- if (checkerResult.data && has(checkerResult.data, "expectedType")) {
8310
+ if (checkerResult.data && has2(checkerResult.data, "expectedType")) {
9565
8311
  expectedTypes.push(checkerResult.data.expectedType);
9566
8312
  }
9567
8313
  }
@@ -9615,7 +8361,7 @@ var require_factoryWithTypeCheckers = __commonJS({
9615
8361
  var allKeys = assign({}, props[propName], shapeTypes);
9616
8362
  for (var key in allKeys) {
9617
8363
  var checker = shapeTypes[key];
9618
- if (has(shapeTypes, key) && typeof checker !== "function") {
8364
+ if (has2(shapeTypes, key) && typeof checker !== "function") {
9619
8365
  return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
9620
8366
  }
9621
8367
  if (!checker) {
@@ -19355,12 +18101,1859 @@ function createSelectorCreator(memoize) {
19355
18101
  }
19356
18102
  var createSelector = createSelectorCreator(defaultMemoize);
19357
18103
 
18104
+ // ../../node_modules/ua-parser-js/src/main/ua-parser.mjs
18105
+ init_define_process_env();
18106
+ var LIBVERSION = "2.0.6";
18107
+ var UA_MAX_LENGTH = 500;
18108
+ var USER_AGENT = "user-agent";
18109
+ var EMPTY = "";
18110
+ var UNKNOWN = "?";
18111
+ var TYPEOF = {
18112
+ FUNCTION: "function",
18113
+ OBJECT: "object",
18114
+ STRING: "string",
18115
+ UNDEFINED: "undefined"
18116
+ };
18117
+ var BROWSER = "browser";
18118
+ var CPU = "cpu";
18119
+ var DEVICE = "device";
18120
+ var ENGINE = "engine";
18121
+ var OS = "os";
18122
+ var RESULT = "result";
18123
+ var NAME = "name";
18124
+ var TYPE = "type";
18125
+ var VENDOR = "vendor";
18126
+ var VERSION = "version";
18127
+ var ARCHITECTURE = "architecture";
18128
+ var MAJOR = "major";
18129
+ var MODEL = "model";
18130
+ var CONSOLE = "console";
18131
+ var MOBILE = "mobile";
18132
+ var TABLET = "tablet";
18133
+ var SMARTTV = "smarttv";
18134
+ var WEARABLE = "wearable";
18135
+ var XR = "xr";
18136
+ var EMBEDDED = "embedded";
18137
+ var INAPP = "inapp";
18138
+ var BRANDS = "brands";
18139
+ var FORMFACTORS = "formFactors";
18140
+ var FULLVERLIST = "fullVersionList";
18141
+ var PLATFORM = "platform";
18142
+ var PLATFORMVER = "platformVersion";
18143
+ var BITNESS = "bitness";
18144
+ var CH = "sec-ch-ua";
18145
+ var CH_FULL_VER_LIST = CH + "-full-version-list";
18146
+ var CH_ARCH = CH + "-arch";
18147
+ var CH_BITNESS = CH + "-" + BITNESS;
18148
+ var CH_FORM_FACTORS = CH + "-form-factors";
18149
+ var CH_MOBILE = CH + "-" + MOBILE;
18150
+ var CH_MODEL = CH + "-" + MODEL;
18151
+ var CH_PLATFORM = CH + "-" + PLATFORM;
18152
+ var CH_PLATFORM_VER = CH_PLATFORM + "-version";
18153
+ var CH_ALL_VALUES = [BRANDS, FULLVERLIST, MOBILE, MODEL, PLATFORM, PLATFORMVER, ARCHITECTURE, FORMFACTORS, BITNESS];
18154
+ var AMAZON = "Amazon";
18155
+ var APPLE = "Apple";
18156
+ var ASUS = "ASUS";
18157
+ var BLACKBERRY = "BlackBerry";
18158
+ var GOOGLE = "Google";
18159
+ var HUAWEI = "Huawei";
18160
+ var LENOVO = "Lenovo";
18161
+ var HONOR = "Honor";
18162
+ var LG = "LG";
18163
+ var MICROSOFT = "Microsoft";
18164
+ var MOTOROLA = "Motorola";
18165
+ var NVIDIA = "Nvidia";
18166
+ var ONEPLUS = "OnePlus";
18167
+ var OPPO = "OPPO";
18168
+ var SAMSUNG = "Samsung";
18169
+ var SHARP = "Sharp";
18170
+ var SONY = "Sony";
18171
+ var XIAOMI = "Xiaomi";
18172
+ var ZEBRA = "Zebra";
18173
+ var CHROME = "Chrome";
18174
+ var CHROMIUM = "Chromium";
18175
+ var CHROMECAST = "Chromecast";
18176
+ var EDGE = "Edge";
18177
+ var FIREFOX = "Firefox";
18178
+ var OPERA = "Opera";
18179
+ var FACEBOOK = "Facebook";
18180
+ var SOGOU = "Sogou";
18181
+ var PREFIX_MOBILE = "Mobile ";
18182
+ var SUFFIX_BROWSER = " Browser";
18183
+ var WINDOWS = "Windows";
18184
+ var isWindow = typeof window !== TYPEOF.UNDEFINED;
18185
+ var NAVIGATOR = isWindow && window.navigator ? window.navigator : void 0;
18186
+ var NAVIGATOR_UADATA = NAVIGATOR && NAVIGATOR.userAgentData ? NAVIGATOR.userAgentData : void 0;
18187
+ var extend = function(defaultRgx, extensions) {
18188
+ var mergedRgx = {};
18189
+ var extraRgx = extensions;
18190
+ if (!isExtensions(extensions)) {
18191
+ extraRgx = {};
18192
+ for (var i in extensions) {
18193
+ for (var j2 in extensions[i]) {
18194
+ extraRgx[j2] = extensions[i][j2].concat(extraRgx[j2] ? extraRgx[j2] : []);
18195
+ }
18196
+ }
18197
+ }
18198
+ for (var k2 in defaultRgx) {
18199
+ mergedRgx[k2] = extraRgx[k2] && extraRgx[k2].length % 2 === 0 ? extraRgx[k2].concat(defaultRgx[k2]) : defaultRgx[k2];
18200
+ }
18201
+ return mergedRgx;
18202
+ };
18203
+ var enumerize = function(arr) {
18204
+ var enums = {};
18205
+ for (var i = 0; i < arr.length; i++) {
18206
+ enums[arr[i].toUpperCase()] = arr[i];
18207
+ }
18208
+ return enums;
18209
+ };
18210
+ var has = function(str1, str2) {
18211
+ if (typeof str1 === TYPEOF.OBJECT && str1.length > 0) {
18212
+ for (var i in str1) {
18213
+ if (lowerize(str2) == lowerize(str1[i]))
18214
+ return true;
18215
+ }
18216
+ return false;
18217
+ }
18218
+ return isString(str1) ? lowerize(str2) == lowerize(str1) : false;
18219
+ };
18220
+ var isExtensions = function(obj, deep) {
18221
+ for (var prop in obj) {
18222
+ return /^(browser|cpu|device|engine|os)$/.test(prop) || (deep ? isExtensions(obj[prop]) : false);
18223
+ }
18224
+ };
18225
+ var isString = function(val) {
18226
+ return typeof val === TYPEOF.STRING;
18227
+ };
18228
+ var itemListToArray = function(header) {
18229
+ if (!header)
18230
+ return void 0;
18231
+ var arr = [];
18232
+ var tokens = strip(/\\?\"/g, header).split(",");
18233
+ for (var i = 0; i < tokens.length; i++) {
18234
+ if (tokens[i].indexOf(";") > -1) {
18235
+ var token = trim(tokens[i]).split(";v=");
18236
+ arr[i] = { brand: token[0], version: token[1] };
18237
+ } else {
18238
+ arr[i] = trim(tokens[i]);
18239
+ }
18240
+ }
18241
+ return arr;
18242
+ };
18243
+ var lowerize = function(str) {
18244
+ return isString(str) ? str.toLowerCase() : str;
18245
+ };
18246
+ var majorize = function(version) {
18247
+ return isString(version) ? strip(/[^\d\.]/g, version).split(".")[0] : void 0;
18248
+ };
18249
+ var setProps = function(arr) {
18250
+ for (var i in arr) {
18251
+ if (!arr.hasOwnProperty(i))
18252
+ continue;
18253
+ var propName = arr[i];
18254
+ if (typeof propName == TYPEOF.OBJECT && propName.length == 2) {
18255
+ this[propName[0]] = propName[1];
18256
+ } else {
18257
+ this[propName] = void 0;
18258
+ }
18259
+ }
18260
+ return this;
18261
+ };
18262
+ var strip = function(pattern, str) {
18263
+ return isString(str) ? str.replace(pattern, EMPTY) : str;
18264
+ };
18265
+ var stripQuotes = function(str) {
18266
+ return strip(/\\?\"/g, str);
18267
+ };
18268
+ var trim = function(str, len) {
18269
+ str = strip(/^\s\s*/, String(str));
18270
+ return typeof len === TYPEOF.UNDEFINED ? str : str.substring(0, len);
18271
+ };
18272
+ var rgxMapper = function(ua, arrays) {
18273
+ if (!ua || !arrays)
18274
+ return;
18275
+ var i = 0, j2, k2, p, q, matches, match18;
18276
+ while (i < arrays.length && !matches) {
18277
+ var regex = arrays[i], props = arrays[i + 1];
18278
+ j2 = k2 = 0;
18279
+ while (j2 < regex.length && !matches) {
18280
+ if (!regex[j2]) {
18281
+ break;
18282
+ }
18283
+ matches = regex[j2++].exec(ua);
18284
+ if (!!matches) {
18285
+ for (p = 0; p < props.length; p++) {
18286
+ match18 = matches[++k2];
18287
+ q = props[p];
18288
+ if (typeof q === TYPEOF.OBJECT && q.length > 0) {
18289
+ if (q.length === 2) {
18290
+ if (typeof q[1] == TYPEOF.FUNCTION) {
18291
+ this[q[0]] = q[1].call(this, match18);
18292
+ } else {
18293
+ this[q[0]] = q[1];
18294
+ }
18295
+ } else if (q.length >= 3) {
18296
+ if (typeof q[1] === TYPEOF.FUNCTION && !(q[1].exec && q[1].test)) {
18297
+ if (q.length > 3) {
18298
+ this[q[0]] = match18 ? q[1].apply(this, q.slice(2)) : void 0;
18299
+ } else {
18300
+ this[q[0]] = match18 ? q[1].call(this, match18, q[2]) : void 0;
18301
+ }
18302
+ } else {
18303
+ if (q.length == 3) {
18304
+ this[q[0]] = match18 ? match18.replace(q[1], q[2]) : void 0;
18305
+ } else if (q.length == 4) {
18306
+ this[q[0]] = match18 ? q[3].call(this, match18.replace(q[1], q[2])) : void 0;
18307
+ } else if (q.length > 4) {
18308
+ this[q[0]] = match18 ? q[3].apply(this, [match18.replace(q[1], q[2])].concat(q.slice(4))) : void 0;
18309
+ }
18310
+ }
18311
+ }
18312
+ } else {
18313
+ this[q] = match18 ? match18 : void 0;
18314
+ }
18315
+ }
18316
+ }
18317
+ }
18318
+ i += 2;
18319
+ }
18320
+ };
18321
+ var strMapper = function(str, map) {
18322
+ for (var i in map) {
18323
+ if (typeof map[i] === TYPEOF.OBJECT && map[i].length > 0) {
18324
+ for (var j2 = 0; j2 < map[i].length; j2++) {
18325
+ if (has(map[i][j2], str)) {
18326
+ return i === UNKNOWN ? void 0 : i;
18327
+ }
18328
+ }
18329
+ } else if (has(map[i], str)) {
18330
+ return i === UNKNOWN ? void 0 : i;
18331
+ }
18332
+ }
18333
+ return map.hasOwnProperty("*") ? map["*"] : str;
18334
+ };
18335
+ var windowsVersionMap = {
18336
+ "ME": "4.90",
18337
+ "NT 3.51": "3.51",
18338
+ "NT 4.0": "4.0",
18339
+ "2000": ["5.0", "5.01"],
18340
+ "XP": ["5.1", "5.2"],
18341
+ "Vista": "6.0",
18342
+ "7": "6.1",
18343
+ "8": "6.2",
18344
+ "8.1": "6.3",
18345
+ "10": ["6.4", "10.0"],
18346
+ "NT": ""
18347
+ };
18348
+ var formFactorsMap = {
18349
+ "embedded": "Automotive",
18350
+ "mobile": "Mobile",
18351
+ "tablet": ["Tablet", "EInk"],
18352
+ "smarttv": "TV",
18353
+ "wearable": "Watch",
18354
+ "xr": ["VR", "XR"],
18355
+ "?": ["Desktop", "Unknown"],
18356
+ "*": void 0
18357
+ };
18358
+ var browserHintsMap = {
18359
+ "Chrome": "Google Chrome",
18360
+ "Edge": "Microsoft Edge",
18361
+ "Edge WebView2": "Microsoft Edge WebView2",
18362
+ "Chrome WebView": "Android WebView",
18363
+ "Chrome Headless": "HeadlessChrome",
18364
+ "Huawei Browser": "HuaweiBrowser",
18365
+ "MIUI Browser": "Miui Browser",
18366
+ "Opera Mobi": "OperaMobile",
18367
+ "Yandex": "YaBrowser"
18368
+ };
18369
+ var defaultRegexes = {
18370
+ browser: [
18371
+ [
18372
+ // Most common regardless engine
18373
+ /\b(?:crmo|crios)\/([\w\.]+)/i
18374
+ // Chrome for Android/iOS
18375
+ ],
18376
+ [VERSION, [NAME, PREFIX_MOBILE + "Chrome"]],
18377
+ [
18378
+ /webview.+edge\/([\w\.]+)/i
18379
+ // Microsoft Edge
18380
+ ],
18381
+ [VERSION, [NAME, EDGE + " WebView"]],
18382
+ [
18383
+ /edg(?:e|ios|a)?\/([\w\.]+)/i
18384
+ ],
18385
+ [VERSION, [NAME, "Edge"]],
18386
+ [
18387
+ // Presto based
18388
+ /(opera mini)\/([-\w\.]+)/i,
18389
+ // Opera Mini
18390
+ /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,
18391
+ // Opera Mobi/Tablet
18392
+ /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i
18393
+ // Opera
18394
+ ],
18395
+ [NAME, VERSION],
18396
+ [
18397
+ /opios[\/ ]+([\w\.]+)/i
18398
+ // Opera mini on iphone >= 8.0
18399
+ ],
18400
+ [VERSION, [NAME, OPERA + " Mini"]],
18401
+ [
18402
+ /\bop(?:rg)?x\/([\w\.]+)/i
18403
+ // Opera GX
18404
+ ],
18405
+ [VERSION, [NAME, OPERA + " GX"]],
18406
+ [
18407
+ /\bopr\/([\w\.]+)/i
18408
+ // Opera Webkit
18409
+ ],
18410
+ [VERSION, [NAME, OPERA]],
18411
+ [
18412
+ // Mixed
18413
+ /\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i
18414
+ // Baidu
18415
+ ],
18416
+ [VERSION, [NAME, "Baidu"]],
18417
+ [
18418
+ /\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i
18419
+ // Maxthon
18420
+ ],
18421
+ [VERSION, [NAME, "Maxthon"]],
18422
+ [
18423
+ /(kindle)\/([\w\.]+)/i,
18424
+ // Kindle
18425
+ /(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,
18426
+ // Lunascape/Maxthon/Netfront/Jasmine/Blazer/Sleipnir
18427
+ // Trident based
18428
+ /(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,
18429
+ // Avant/IEMobile/SlimBrowser/SlimBoat/Slimjet
18430
+ /(?:ms|\()(ie) ([\w\.]+)/i,
18431
+ // Internet Explorer
18432
+ // Blink/Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon/LG Browser/Otter/qutebrowser/Dooble/Palemoon
18433
+ /(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,
18434
+ // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ//Vivaldi/DuckDuckGo/Klar/Helio/Dragon
18435
+ /(heytap|ovi|115|surf|qwant)browser\/([\d\.]+)/i,
18436
+ // HeyTap/Ovi/115/Surf
18437
+ /(qwant)(?:ios|mobile)\/([\d\.]+)/i,
18438
+ // Qwant
18439
+ /(ecosia|weibo)(?:__| \w+@)([\d\.]+)/i
18440
+ // Ecosia/Weibo
18441
+ ],
18442
+ [NAME, VERSION],
18443
+ [
18444
+ /quark(?:pc)?\/([-\w\.]+)/i
18445
+ // Quark
18446
+ ],
18447
+ [VERSION, [NAME, "Quark"]],
18448
+ [
18449
+ /\bddg\/([\w\.]+)/i
18450
+ // DuckDuckGo
18451
+ ],
18452
+ [VERSION, [NAME, "DuckDuckGo"]],
18453
+ [
18454
+ /(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i
18455
+ // UCBrowser
18456
+ ],
18457
+ [VERSION, [NAME, "UCBrowser"]],
18458
+ [
18459
+ /microm.+\bqbcore\/([\w\.]+)/i,
18460
+ // WeChat Desktop for Windows Built-in Browser
18461
+ /\bqbcore\/([\w\.]+).+microm/i,
18462
+ /micromessenger\/([\w\.]+)/i
18463
+ // WeChat
18464
+ ],
18465
+ [VERSION, [NAME, "WeChat"]],
18466
+ [
18467
+ /konqueror\/([\w\.]+)/i
18468
+ // Konqueror
18469
+ ],
18470
+ [VERSION, [NAME, "Konqueror"]],
18471
+ [
18472
+ /trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i
18473
+ // IE11
18474
+ ],
18475
+ [VERSION, [NAME, "IE"]],
18476
+ [
18477
+ /ya(?:search)?browser\/([\w\.]+)/i
18478
+ // Yandex
18479
+ ],
18480
+ [VERSION, [NAME, "Yandex"]],
18481
+ [
18482
+ /slbrowser\/([\w\.]+)/i
18483
+ // Smart Lenovo Browser
18484
+ ],
18485
+ [VERSION, [NAME, "Smart " + LENOVO + SUFFIX_BROWSER]],
18486
+ [
18487
+ /(avast|avg)\/([\w\.]+)/i
18488
+ // Avast/AVG Secure Browser
18489
+ ],
18490
+ [[NAME, /(.+)/, "$1 Secure" + SUFFIX_BROWSER], VERSION],
18491
+ [
18492
+ /\bfocus\/([\w\.]+)/i
18493
+ // Firefox Focus
18494
+ ],
18495
+ [VERSION, [NAME, FIREFOX + " Focus"]],
18496
+ [
18497
+ /\bopt\/([\w\.]+)/i
18498
+ // Opera Touch
18499
+ ],
18500
+ [VERSION, [NAME, OPERA + " Touch"]],
18501
+ [
18502
+ /coc_coc\w+\/([\w\.]+)/i
18503
+ // Coc Coc Browser
18504
+ ],
18505
+ [VERSION, [NAME, "Coc Coc"]],
18506
+ [
18507
+ /dolfin\/([\w\.]+)/i
18508
+ // Dolphin
18509
+ ],
18510
+ [VERSION, [NAME, "Dolphin"]],
18511
+ [
18512
+ /coast\/([\w\.]+)/i
18513
+ // Opera Coast
18514
+ ],
18515
+ [VERSION, [NAME, OPERA + " Coast"]],
18516
+ [
18517
+ /miuibrowser\/([\w\.]+)/i
18518
+ // MIUI Browser
18519
+ ],
18520
+ [VERSION, [NAME, "MIUI" + SUFFIX_BROWSER]],
18521
+ [
18522
+ /fxios\/([\w\.-]+)/i
18523
+ // Firefox for iOS
18524
+ ],
18525
+ [VERSION, [NAME, PREFIX_MOBILE + FIREFOX]],
18526
+ [
18527
+ /\bqihoobrowser\/?([\w\.]*)/i
18528
+ // 360
18529
+ ],
18530
+ [VERSION, [NAME, "360"]],
18531
+ [
18532
+ /\b(qq)\/([\w\.]+)/i
18533
+ // QQ
18534
+ ],
18535
+ [[NAME, /(.+)/, "$1Browser"], VERSION],
18536
+ [
18537
+ /(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i
18538
+ ],
18539
+ [[NAME, /(.+)/, "$1" + SUFFIX_BROWSER], VERSION],
18540
+ [
18541
+ // Oculus/Sailfish/HuaweiBrowser/VivoBrowser/PicoBrowser
18542
+ /samsungbrowser\/([\w\.]+)/i
18543
+ // Samsung Internet
18544
+ ],
18545
+ [VERSION, [NAME, SAMSUNG + " Internet"]],
18546
+ [
18547
+ /metasr[\/ ]?([\d\.]+)/i
18548
+ // Sogou Explorer
18549
+ ],
18550
+ [VERSION, [NAME, SOGOU + " Explorer"]],
18551
+ [
18552
+ /(sogou)mo\w+\/([\d\.]+)/i
18553
+ // Sogou Mobile
18554
+ ],
18555
+ [[NAME, SOGOU + " Mobile"], VERSION],
18556
+ [
18557
+ /(electron)\/([\w\.]+) safari/i,
18558
+ // Electron-based App
18559
+ /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,
18560
+ // Tesla
18561
+ /m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i
18562
+ // QQ/2345
18563
+ ],
18564
+ [NAME, VERSION],
18565
+ [
18566
+ /(lbbrowser|rekonq)/i
18567
+ // LieBao Browser/Rekonq
18568
+ ],
18569
+ [NAME],
18570
+ [
18571
+ /ome\/([\w\.]+) \w* ?(iron) saf/i,
18572
+ // Iron
18573
+ /ome\/([\w\.]+).+qihu (360)[es]e/i
18574
+ // 360
18575
+ ],
18576
+ [VERSION, NAME],
18577
+ [
18578
+ // WebView
18579
+ /((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i
18580
+ // Facebook App for iOS & Android
18581
+ ],
18582
+ [[NAME, FACEBOOK], VERSION, [TYPE, INAPP]],
18583
+ [
18584
+ /(kakao(?:talk|story))[\/ ]([\w\.]+)/i,
18585
+ // Kakao App
18586
+ /(naver)\(.*?(\d+\.[\w\.]+).*\)/i,
18587
+ // Naver InApp
18588
+ /(daum)apps[\/ ]([\w\.]+)/i,
18589
+ // Daum App
18590
+ /safari (line)\/([\w\.]+)/i,
18591
+ // Line App for iOS
18592
+ /\b(line)\/([\w\.]+)\/iab/i,
18593
+ // Line App for Android
18594
+ /(alipay)client\/([\w\.]+)/i,
18595
+ // Alipay
18596
+ /(twitter)(?:and| f.+e\/([\w\.]+))/i,
18597
+ // Twitter
18598
+ /(bing)(?:web|sapphire)\/([\w\.]+)/i,
18599
+ // Bing
18600
+ /(instagram|snapchat|klarna)[\/ ]([-\w\.]+)/i
18601
+ // Instagram/Snapchat/Klarna
18602
+ ],
18603
+ [NAME, VERSION, [TYPE, INAPP]],
18604
+ [
18605
+ /\bgsa\/([\w\.]+) .*safari\//i
18606
+ // Google Search Appliance on iOS
18607
+ ],
18608
+ [VERSION, [NAME, "GSA"], [TYPE, INAPP]],
18609
+ [
18610
+ /musical_ly(?:.+app_?version\/|_)([\w\.]+)/i
18611
+ // TikTok
18612
+ ],
18613
+ [VERSION, [NAME, "TikTok"], [TYPE, INAPP]],
18614
+ [
18615
+ /\[(linkedin)app\]/i
18616
+ // LinkedIn App for iOS & Android
18617
+ ],
18618
+ [NAME, [TYPE, INAPP]],
18619
+ [
18620
+ /(zalo(?:app)?)[\/\sa-z]*([\w\.-]+)/i
18621
+ // Zalo
18622
+ ],
18623
+ [[NAME, /(.+)/, "Zalo"], VERSION, [TYPE, INAPP]],
18624
+ [
18625
+ /(chromium)[\/ ]([-\w\.]+)/i
18626
+ // Chromium
18627
+ ],
18628
+ [NAME, VERSION],
18629
+ [
18630
+ /headlesschrome(?:\/([\w\.]+)| )/i
18631
+ // Chrome Headless
18632
+ ],
18633
+ [VERSION, [NAME, CHROME + " Headless"]],
18634
+ [
18635
+ /wv\).+chrome\/([\w\.]+).+edgw\//i
18636
+ // Edge WebView2
18637
+ ],
18638
+ [VERSION, [NAME, EDGE + " WebView2"]],
18639
+ [
18640
+ / wv\).+(chrome)\/([\w\.]+)/i
18641
+ // Chrome WebView
18642
+ ],
18643
+ [[NAME, CHROME + " WebView"], VERSION],
18644
+ [
18645
+ /droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i
18646
+ // Android Browser
18647
+ ],
18648
+ [VERSION, [NAME, "Android" + SUFFIX_BROWSER]],
18649
+ [
18650
+ /chrome\/([\w\.]+) mobile/i
18651
+ // Chrome Mobile
18652
+ ],
18653
+ [VERSION, [NAME, PREFIX_MOBILE + "Chrome"]],
18654
+ [
18655
+ /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i
18656
+ // Chrome/OmniWeb/Arora/Tizen/Nokia
18657
+ ],
18658
+ [NAME, VERSION],
18659
+ [
18660
+ /version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i
18661
+ // Safari Mobile
18662
+ ],
18663
+ [VERSION, [NAME, PREFIX_MOBILE + "Safari"]],
18664
+ [
18665
+ /iphone .*mobile(?:\/\w+ | ?)safari/i
18666
+ ],
18667
+ [[NAME, PREFIX_MOBILE + "Safari"]],
18668
+ [
18669
+ /version\/([\w\.\,]+) .*(safari)/i
18670
+ // Safari
18671
+ ],
18672
+ [VERSION, NAME],
18673
+ [
18674
+ /webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i
18675
+ // Safari < 3.0
18676
+ ],
18677
+ [NAME, [VERSION, "1"]],
18678
+ [
18679
+ /(webkit|khtml)\/([\w\.]+)/i
18680
+ ],
18681
+ [NAME, VERSION],
18682
+ [
18683
+ // Gecko based
18684
+ /(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i
18685
+ // Firefox Mobile
18686
+ ],
18687
+ [[NAME, PREFIX_MOBILE + FIREFOX], VERSION],
18688
+ [
18689
+ /(navigator|netscape\d?)\/([-\w\.]+)/i
18690
+ // Netscape
18691
+ ],
18692
+ [[NAME, "Netscape"], VERSION],
18693
+ [
18694
+ /(wolvic|librewolf)\/([\w\.]+)/i
18695
+ // Wolvic/LibreWolf
18696
+ ],
18697
+ [NAME, VERSION],
18698
+ [
18699
+ /mobile vr; rv:([\w\.]+)\).+firefox/i
18700
+ // Firefox Reality
18701
+ ],
18702
+ [VERSION, [NAME, FIREFOX + " Reality"]],
18703
+ [
18704
+ /ekiohf.+(flow)\/([\w\.]+)/i,
18705
+ // Flow
18706
+ /(swiftfox)/i,
18707
+ // Swiftfox
18708
+ /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,
18709
+ // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror
18710
+ /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|basilisk|waterfox)\/([-\w\.]+)$/i,
18711
+ // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix
18712
+ /(firefox)\/([\w\.]+)/i,
18713
+ // Other Firefox-based
18714
+ /(mozilla)\/([\w\.]+(?= .+rv\:.+gecko\/\d+)|[0-4][\w\.]+(?!.+compatible))/i,
18715
+ // Mozilla
18716
+ // Other
18717
+ /(amaya|dillo|doris|icab|ladybird|lynx|mosaic|netsurf|obigo|polaris|w3m|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,
18718
+ // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Obigo/Mosaic/Go/ICE/UP.Browser/Ladybird
18719
+ /\b(links) \(([\w\.]+)/i
18720
+ // Links
18721
+ ],
18722
+ [NAME, [VERSION, /_/g, "."]],
18723
+ [
18724
+ /(cobalt)\/([\w\.]+)/i
18725
+ // Cobalt
18726
+ ],
18727
+ [NAME, [VERSION, /[^\d\.]+./, EMPTY]]
18728
+ ],
18729
+ cpu: [
18730
+ [
18731
+ /\b((amd|x|x86[-_]?|wow|win)64)\b/i
18732
+ // AMD64 (x64)
18733
+ ],
18734
+ [[ARCHITECTURE, "amd64"]],
18735
+ [
18736
+ /(ia32(?=;))/i,
18737
+ // IA32 (quicktime)
18738
+ /\b((i[346]|x)86)(pc)?\b/i
18739
+ // IA32 (x86)
18740
+ ],
18741
+ [[ARCHITECTURE, "ia32"]],
18742
+ [
18743
+ /\b(aarch64|arm(v?[89]e?l?|_?64))\b/i
18744
+ // ARM64
18745
+ ],
18746
+ [[ARCHITECTURE, "arm64"]],
18747
+ [
18748
+ /\b(arm(v[67])?ht?n?[fl]p?)\b/i
18749
+ // ARMHF
18750
+ ],
18751
+ [[ARCHITECTURE, "armhf"]],
18752
+ [
18753
+ // PocketPC mistakenly identified as PowerPC
18754
+ /( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i
18755
+ ],
18756
+ [[ARCHITECTURE, "arm"]],
18757
+ [
18758
+ / sun4\w[;\)]/i
18759
+ // SPARC
18760
+ ],
18761
+ [[ARCHITECTURE, "sparc"]],
18762
+ [
18763
+ // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC
18764
+ /\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i,
18765
+ /((ppc|powerpc)(64)?)( mac|;|\))/i,
18766
+ // PowerPC
18767
+ /(?:osf1|[freopnt]{3,4}bsd) (alpha)/i
18768
+ // Alpha
18769
+ ],
18770
+ [[ARCHITECTURE, /ower/, EMPTY, lowerize]],
18771
+ [
18772
+ /mc680.0/i
18773
+ ],
18774
+ [[ARCHITECTURE, "68k"]],
18775
+ [
18776
+ /winnt.+\[axp/i
18777
+ ],
18778
+ [[ARCHITECTURE, "alpha"]]
18779
+ ],
18780
+ device: [
18781
+ [
18782
+ //////////////////////////
18783
+ // MOBILES & TABLETS
18784
+ /////////////////////////
18785
+ // Samsung
18786
+ /\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
18787
+ ],
18788
+ [MODEL, [VENDOR, SAMSUNG], [TYPE, TABLET]],
18789
+ [
18790
+ /\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,
18791
+ /samsung[- ]((?!sm-[lr]|browser)[-\w]+)/i,
18792
+ /sec-(sgh\w+)/i
18793
+ ],
18794
+ [MODEL, [VENDOR, SAMSUNG], [TYPE, MOBILE]],
18795
+ [
18796
+ // Apple
18797
+ /(?:\/|\()(ip(?:hone|od)[\w, ]*)[\/\);]/i
18798
+ // iPod/iPhone
18799
+ ],
18800
+ [MODEL, [VENDOR, APPLE], [TYPE, MOBILE]],
18801
+ [
18802
+ /\b(?:ios|apple\w+)\/.+[\(\/](ipad)/i,
18803
+ // iPad
18804
+ /\b(ipad)[\d,]*[;\] ].+(mac |i(pad)?)os/i
18805
+ ],
18806
+ [MODEL, [VENDOR, APPLE], [TYPE, TABLET]],
18807
+ [
18808
+ /(macintosh);/i
18809
+ ],
18810
+ [MODEL, [VENDOR, APPLE]],
18811
+ [
18812
+ // Sharp
18813
+ /\b(sh-?[altvz]?\d\d[a-ekm]?)/i
18814
+ ],
18815
+ [MODEL, [VENDOR, SHARP], [TYPE, MOBILE]],
18816
+ [
18817
+ // Honor
18818
+ /\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i
18819
+ ],
18820
+ [MODEL, [VENDOR, HONOR], [TYPE, TABLET]],
18821
+ [
18822
+ /honor([-\w ]+)[;\)]/i
18823
+ ],
18824
+ [MODEL, [VENDOR, HONOR], [TYPE, MOBILE]],
18825
+ [
18826
+ // Huawei
18827
+ /\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
18828
+ ],
18829
+ [MODEL, [VENDOR, HUAWEI], [TYPE, TABLET]],
18830
+ [
18831
+ /(?:huawei) ?([-\w ]+)[;\)]/i,
18832
+ /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][\dc][adnt]?)\b(?!.+d\/s)/i
18833
+ ],
18834
+ [MODEL, [VENDOR, HUAWEI], [TYPE, MOBILE]],
18835
+ [
18836
+ // Xiaomi
18837
+ /oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,
18838
+ /\b(?:xiao)?((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i
18839
+ // Mi Pad tablets
18840
+ ],
18841
+ [[MODEL, /_/g, " "], [VENDOR, XIAOMI], [TYPE, TABLET]],
18842
+ [
18843
+ /\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,
18844
+ // Xiaomi POCO
18845
+ /\b; (\w+) build\/hm\1/i,
18846
+ // Xiaomi Hongmi 'numeric' models
18847
+ /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,
18848
+ // Xiaomi Hongmi
18849
+ /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,
18850
+ // Xiaomi Redmi
18851
+ /oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,
18852
+ // Xiaomi Redmi 'numeric' models
18853
+ /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note|max|cc)?[_ ]?(?:\d{0,2}\w?)[_ ]?(?:plus|se|lite|pro)?( 5g|lte)?)(?: bui|\))/i,
18854
+ // Xiaomi Mi
18855
+ / ([\w ]+) miui\/v?\d/i
18856
+ ],
18857
+ [[MODEL, /_/g, " "], [VENDOR, XIAOMI], [TYPE, MOBILE]],
18858
+ [
18859
+ // OnePlus
18860
+ /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,
18861
+ /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i
18862
+ ],
18863
+ [MODEL, [VENDOR, ONEPLUS], [TYPE, MOBILE]],
18864
+ [
18865
+ // OPPO
18866
+ /; (\w+) bui.+ oppo/i,
18867
+ /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i
18868
+ ],
18869
+ [MODEL, [VENDOR, OPPO], [TYPE, MOBILE]],
18870
+ [
18871
+ /\b(opd2(\d{3}a?))(?: bui|\))/i
18872
+ ],
18873
+ [MODEL, [VENDOR, strMapper, { "OnePlus": ["203", "304", "403", "404", "413", "415"], "*": OPPO }], [TYPE, TABLET]],
18874
+ [
18875
+ // BLU
18876
+ /(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i
18877
+ // Vivo series
18878
+ ],
18879
+ [MODEL, [VENDOR, "BLU"], [TYPE, MOBILE]],
18880
+ [
18881
+ // Vivo
18882
+ /; vivo (\w+)(?: bui|\))/i,
18883
+ /\b(v[12]\d{3}\w?[at])(?: bui|;)/i
18884
+ ],
18885
+ [MODEL, [VENDOR, "Vivo"], [TYPE, MOBILE]],
18886
+ [
18887
+ // Realme
18888
+ /\b(rmx[1-3]\d{3})(?: bui|;|\))/i
18889
+ ],
18890
+ [MODEL, [VENDOR, "Realme"], [TYPE, MOBILE]],
18891
+ [
18892
+ // Lenovo
18893
+ /(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,
18894
+ /lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i
18895
+ ],
18896
+ [MODEL, [VENDOR, LENOVO], [TYPE, TABLET]],
18897
+ [
18898
+ /lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i
18899
+ ],
18900
+ [MODEL, [VENDOR, LENOVO], [TYPE, MOBILE]],
18901
+ [
18902
+ // Motorola
18903
+ /\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
18904
+ /\bmot(?:orola)?[- ]([\w\s]+)(\)| bui)/i,
18905
+ /((?:moto(?! 360)[-\w\(\) ]+|xt\d{3,4}[cgkosw\+]?[-\d]*|nexus 6)(?= bui|\)))/i
18906
+ ],
18907
+ [MODEL, [VENDOR, MOTOROLA], [TYPE, MOBILE]],
18908
+ [
18909
+ /\b(mz60\d|xoom[2 ]{0,2}) build\//i
18910
+ ],
18911
+ [MODEL, [VENDOR, MOTOROLA], [TYPE, TABLET]],
18912
+ [
18913
+ // LG
18914
+ /((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i
18915
+ ],
18916
+ [MODEL, [VENDOR, LG], [TYPE, TABLET]],
18917
+ [
18918
+ /(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
18919
+ /\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,
18920
+ /\blg-?([\d\w]+) bui/i
18921
+ ],
18922
+ [MODEL, [VENDOR, LG], [TYPE, MOBILE]],
18923
+ [
18924
+ // Nokia
18925
+ /(nokia) (t[12][01])/i
18926
+ ],
18927
+ [VENDOR, MODEL, [TYPE, TABLET]],
18928
+ [
18929
+ /(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,
18930
+ /nokia[-_ ]?(([-\w\. ]*?))( bui|\)|;|\/)/i
18931
+ ],
18932
+ [[MODEL, /_/g, " "], [TYPE, MOBILE], [VENDOR, "Nokia"]],
18933
+ [
18934
+ // Google
18935
+ /(pixel (c|tablet))\b/i
18936
+ // Google Pixel C/Tablet
18937
+ ],
18938
+ [MODEL, [VENDOR, GOOGLE], [TYPE, TABLET]],
18939
+ [
18940
+ // Google Pixel
18941
+ /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
18942
+ ],
18943
+ [MODEL, [VENDOR, GOOGLE], [TYPE, MOBILE]],
18944
+ [
18945
+ /(google) (pixelbook( go)?)/i
18946
+ ],
18947
+ [VENDOR, MODEL],
18948
+ [
18949
+ // Sony
18950
+ /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
18951
+ ],
18952
+ [MODEL, [VENDOR, SONY], [TYPE, MOBILE]],
18953
+ [
18954
+ /sony tablet [ps]/i,
18955
+ /\b(?:sony)?sgp\w+(?: bui|\))/i
18956
+ ],
18957
+ [[MODEL, "Xperia Tablet"], [VENDOR, SONY], [TYPE, TABLET]],
18958
+ [
18959
+ // Amazon
18960
+ /(alexa)webm/i,
18961
+ /(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,
18962
+ // Kindle Fire without Silk / Echo Show
18963
+ /(kf[a-z]+)( bui|\)).+silk\//i
18964
+ // Kindle Fire HD
18965
+ ],
18966
+ [MODEL, [VENDOR, AMAZON], [TYPE, TABLET]],
18967
+ [
18968
+ /((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i
18969
+ // Fire Phone
18970
+ ],
18971
+ [[MODEL, /(.+)/g, "Fire Phone $1"], [VENDOR, AMAZON], [TYPE, MOBILE]],
18972
+ [
18973
+ // BlackBerry
18974
+ /(playbook);[-\w\),; ]+(rim)/i
18975
+ // BlackBerry PlayBook
18976
+ ],
18977
+ [MODEL, VENDOR, [TYPE, TABLET]],
18978
+ [
18979
+ /\b((?:bb[a-f]|st[hv])100-\d)/i,
18980
+ /(?:blackberry|\(bb10;) (\w+)/i
18981
+ ],
18982
+ [MODEL, [VENDOR, BLACKBERRY], [TYPE, MOBILE]],
18983
+ [
18984
+ // Asus
18985
+ /(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
18986
+ ],
18987
+ [MODEL, [VENDOR, ASUS], [TYPE, TABLET]],
18988
+ [
18989
+ / (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
18990
+ ],
18991
+ [MODEL, [VENDOR, ASUS], [TYPE, MOBILE]],
18992
+ [
18993
+ // HTC
18994
+ /(nexus 9)/i
18995
+ // HTC Nexus 9
18996
+ ],
18997
+ [MODEL, [VENDOR, "HTC"], [TYPE, TABLET]],
18998
+ [
18999
+ /(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,
19000
+ // HTC
19001
+ // ZTE
19002
+ /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,
19003
+ /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i
19004
+ // Alcatel/GeeksPhone/Nexian/Panasonic/Sony
19005
+ ],
19006
+ [VENDOR, [MODEL, /_/g, " "], [TYPE, MOBILE]],
19007
+ [
19008
+ // TCL
19009
+ /tcl (xess p17aa)/i,
19010
+ /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
19011
+ ],
19012
+ [MODEL, [VENDOR, "TCL"], [TYPE, TABLET]],
19013
+ [
19014
+ /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
19015
+ ],
19016
+ [MODEL, [VENDOR, "TCL"], [TYPE, MOBILE]],
19017
+ [
19018
+ // itel
19019
+ /(itel) ((\w+))/i
19020
+ ],
19021
+ [[VENDOR, lowerize], MODEL, [TYPE, strMapper, { "tablet": ["p10001l", "w7001"], "*": "mobile" }]],
19022
+ [
19023
+ // Acer
19024
+ /droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
19025
+ ],
19026
+ [MODEL, [VENDOR, "Acer"], [TYPE, TABLET]],
19027
+ [
19028
+ // Meizu
19029
+ /droid.+; (m[1-5] note) bui/i,
19030
+ /\bmz-([-\w]{2,})/i
19031
+ ],
19032
+ [MODEL, [VENDOR, "Meizu"], [TYPE, MOBILE]],
19033
+ [
19034
+ // Ulefone
19035
+ /; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i
19036
+ ],
19037
+ [MODEL, [VENDOR, "Ulefone"], [TYPE, MOBILE]],
19038
+ [
19039
+ // Energizer
19040
+ /; (energy ?\w+)(?: bui|\))/i,
19041
+ /; energizer ([\w ]+)(?: bui|\))/i
19042
+ ],
19043
+ [MODEL, [VENDOR, "Energizer"], [TYPE, MOBILE]],
19044
+ [
19045
+ // Cat
19046
+ /; cat (b35);/i,
19047
+ /; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i
19048
+ ],
19049
+ [MODEL, [VENDOR, "Cat"], [TYPE, MOBILE]],
19050
+ [
19051
+ // Smartfren
19052
+ /((?:new )?andromax[\w- ]+)(?: bui|\))/i
19053
+ ],
19054
+ [MODEL, [VENDOR, "Smartfren"], [TYPE, MOBILE]],
19055
+ [
19056
+ // Nothing
19057
+ /droid.+; (a(in)?(0(15|59|6[35])|142)p?)/i
19058
+ ],
19059
+ [MODEL, [VENDOR, "Nothing"], [TYPE, MOBILE]],
19060
+ [
19061
+ // Archos
19062
+ /; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,
19063
+ /archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i
19064
+ ],
19065
+ [MODEL, [VENDOR, "Archos"], [TYPE, TABLET]],
19066
+ [
19067
+ /archos ([\w ]+)( b|\))/i,
19068
+ /; (ac[3-6]\d\w{2,8})( b|\))/i
19069
+ ],
19070
+ [MODEL, [VENDOR, "Archos"], [TYPE, MOBILE]],
19071
+ [
19072
+ // HMD
19073
+ /; (n159v)/i
19074
+ ],
19075
+ [MODEL, [VENDOR, "HMD"], [TYPE, MOBILE]],
19076
+ [
19077
+ // MIXED
19078
+ /(imo) (tab \w+)/i,
19079
+ // IMO
19080
+ /(infinix|tecno) (x1101b?|p904|dp(7c|8d|10a)( pro)?|p70[1-3]a?|p904|t1101)/i
19081
+ // Infinix XPad / Tecno
19082
+ ],
19083
+ [VENDOR, MODEL, [TYPE, TABLET]],
19084
+ [
19085
+ /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|tecno|micromax|advan)[-_ ]?([-\w]*)/i,
19086
+ // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron/Tecno/Micromax/Advan
19087
+ // BLU/HMD/IMO/Infinix/Lava/OnePlus/TCL/Wiko
19088
+ /; (blu|hmd|imo|infinix|lava|oneplus|tcl|wiko)[_ ]([\w\+ ]+?)(?: bui|\)|; r)/i,
19089
+ /(hp) ([\w ]+\w)/i,
19090
+ // HP iPAQ
19091
+ /(microsoft); (lumia[\w ]+)/i,
19092
+ // Microsoft Lumia
19093
+ /(oppo) ?([\w ]+) bui/i,
19094
+ // OPPO
19095
+ /(hisense) ([ehv][\w ]+)\)/i,
19096
+ // Hisense
19097
+ /droid[^;]+; (philips)[_ ]([sv-x][\d]{3,4}[xz]?)/i
19098
+ // Philips
19099
+ ],
19100
+ [VENDOR, MODEL, [TYPE, MOBILE]],
19101
+ [
19102
+ /(kobo)\s(ereader|touch)/i,
19103
+ // Kobo
19104
+ /(hp).+(touchpad(?!.+tablet)|tablet)/i,
19105
+ // HP TouchPad
19106
+ /(kindle)\/([\w\.]+)/i
19107
+ // Kindle
19108
+ ],
19109
+ [VENDOR, MODEL, [TYPE, TABLET]],
19110
+ [
19111
+ /(surface duo)/i
19112
+ // Surface Duo
19113
+ ],
19114
+ [MODEL, [VENDOR, MICROSOFT], [TYPE, TABLET]],
19115
+ [
19116
+ /droid [\d\.]+; (fp\du?)(?: b|\))/i
19117
+ // Fairphone
19118
+ ],
19119
+ [MODEL, [VENDOR, "Fairphone"], [TYPE, MOBILE]],
19120
+ [
19121
+ /((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i
19122
+ // Nvidia Tablets
19123
+ ],
19124
+ [MODEL, [VENDOR, NVIDIA], [TYPE, TABLET]],
19125
+ [
19126
+ /(sprint) (\w+)/i
19127
+ // Sprint Phones
19128
+ ],
19129
+ [VENDOR, MODEL, [TYPE, MOBILE]],
19130
+ [
19131
+ /(kin\.[onetw]{3})/i
19132
+ // Microsoft Kin
19133
+ ],
19134
+ [[MODEL, /\./g, " "], [VENDOR, MICROSOFT], [TYPE, MOBILE]],
19135
+ [
19136
+ /droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i
19137
+ // Zebra
19138
+ ],
19139
+ [MODEL, [VENDOR, ZEBRA], [TYPE, TABLET]],
19140
+ [
19141
+ /droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
19142
+ ],
19143
+ [MODEL, [VENDOR, ZEBRA], [TYPE, MOBILE]],
19144
+ [
19145
+ ///////////////////
19146
+ // SMARTTVS
19147
+ ///////////////////
19148
+ /(philips)[\w ]+tv/i,
19149
+ // Philips
19150
+ /smart-tv.+(samsung)/i
19151
+ // Samsung
19152
+ ],
19153
+ [VENDOR, [TYPE, SMARTTV]],
19154
+ [
19155
+ /hbbtv.+maple;(\d+)/i
19156
+ ],
19157
+ [[MODEL, /^/, "SmartTV"], [VENDOR, SAMSUNG], [TYPE, SMARTTV]],
19158
+ [
19159
+ /(vizio)(?: |.+model\/)(\w+-\w+)/i,
19160
+ // Vizio
19161
+ /tcast.+(lg)e?. ([-\w]+)/i
19162
+ // LG SmartTV
19163
+ ],
19164
+ [VENDOR, MODEL, [TYPE, SMARTTV]],
19165
+ [
19166
+ /(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i
19167
+ ],
19168
+ [[VENDOR, LG], [TYPE, SMARTTV]],
19169
+ [
19170
+ /(apple) ?tv/i
19171
+ // Apple TV
19172
+ ],
19173
+ [VENDOR, [MODEL, APPLE + " TV"], [TYPE, SMARTTV]],
19174
+ [
19175
+ /crkey.*devicetype\/chromecast/i
19176
+ // Google Chromecast Third Generation
19177
+ ],
19178
+ [[MODEL, CHROMECAST + " Third Generation"], [VENDOR, GOOGLE], [TYPE, SMARTTV]],
19179
+ [
19180
+ /crkey.*devicetype\/([^/]*)/i
19181
+ // Google Chromecast with specific device type
19182
+ ],
19183
+ [[MODEL, /^/, "Chromecast "], [VENDOR, GOOGLE], [TYPE, SMARTTV]],
19184
+ [
19185
+ /fuchsia.*crkey/i
19186
+ // Google Chromecast Nest Hub
19187
+ ],
19188
+ [[MODEL, CHROMECAST + " Nest Hub"], [VENDOR, GOOGLE], [TYPE, SMARTTV]],
19189
+ [
19190
+ /crkey/i
19191
+ // Google Chromecast, Linux-based or unknown
19192
+ ],
19193
+ [[MODEL, CHROMECAST], [VENDOR, GOOGLE], [TYPE, SMARTTV]],
19194
+ [
19195
+ /(portaltv)/i
19196
+ // Facebook Portal TV
19197
+ ],
19198
+ [MODEL, [VENDOR, FACEBOOK], [TYPE, SMARTTV]],
19199
+ [
19200
+ /droid.+aft(\w+)( bui|\))/i
19201
+ // Fire TV
19202
+ ],
19203
+ [MODEL, [VENDOR, AMAZON], [TYPE, SMARTTV]],
19204
+ [
19205
+ /(shield \w+ tv)/i
19206
+ // Nvidia Shield TV
19207
+ ],
19208
+ [MODEL, [VENDOR, NVIDIA], [TYPE, SMARTTV]],
19209
+ [
19210
+ /\(dtv[\);].+(aquos)/i,
19211
+ /(aquos-tv[\w ]+)\)/i
19212
+ // Sharp
19213
+ ],
19214
+ [MODEL, [VENDOR, SHARP], [TYPE, SMARTTV]],
19215
+ [
19216
+ /(bravia[\w ]+)( bui|\))/i
19217
+ // Sony
19218
+ ],
19219
+ [MODEL, [VENDOR, SONY], [TYPE, SMARTTV]],
19220
+ [
19221
+ /(mi(tv|box)-?\w+) bui/i
19222
+ // Xiaomi
19223
+ ],
19224
+ [MODEL, [VENDOR, XIAOMI], [TYPE, SMARTTV]],
19225
+ [
19226
+ /Hbbtv.*(technisat) (.*);/i
19227
+ // TechniSAT
19228
+ ],
19229
+ [VENDOR, MODEL, [TYPE, SMARTTV]],
19230
+ [
19231
+ /\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,
19232
+ // Roku
19233
+ /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i
19234
+ // HbbTV devices
19235
+ ],
19236
+ [[VENDOR, /.+\/(\w+)/, "$1", strMapper, { "LG": "lge" }], [MODEL, trim], [TYPE, SMARTTV]],
19237
+ [
19238
+ ///////////////////
19239
+ // CONSOLES
19240
+ ///////////////////
19241
+ /(playstation \w+)/i
19242
+ // Playstation
19243
+ ],
19244
+ [MODEL, [VENDOR, SONY], [TYPE, CONSOLE]],
19245
+ [
19246
+ /\b(xbox(?: one)?(?!; xbox))[\); ]/i
19247
+ // Microsoft Xbox
19248
+ ],
19249
+ [MODEL, [VENDOR, MICROSOFT], [TYPE, CONSOLE]],
19250
+ [
19251
+ /(ouya)/i,
19252
+ // Ouya
19253
+ /(nintendo) (\w+)/i,
19254
+ // Nintendo
19255
+ /(retroid) (pocket ([^\)]+))/i
19256
+ // Retroid Pocket
19257
+ ],
19258
+ [VENDOR, MODEL, [TYPE, CONSOLE]],
19259
+ [
19260
+ /droid.+; (shield)( bui|\))/i
19261
+ // Nvidia Portable
19262
+ ],
19263
+ [MODEL, [VENDOR, NVIDIA], [TYPE, CONSOLE]],
19264
+ [
19265
+ ///////////////////
19266
+ // WEARABLES
19267
+ ///////////////////
19268
+ /\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i
19269
+ // Samsung Galaxy Watch
19270
+ ],
19271
+ [MODEL, [VENDOR, SAMSUNG], [TYPE, WEARABLE]],
19272
+ [
19273
+ /((pebble))app/i,
19274
+ // Pebble
19275
+ /(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i
19276
+ // Asus ZenWatch / LG Watch / Pixel Watch
19277
+ ],
19278
+ [VENDOR, MODEL, [TYPE, WEARABLE]],
19279
+ [
19280
+ /(ow(?:19|20)?we?[1-3]{1,3})/i
19281
+ // Oppo Watch
19282
+ ],
19283
+ [MODEL, [VENDOR, OPPO], [TYPE, WEARABLE]],
19284
+ [
19285
+ /(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i
19286
+ // Apple Watch
19287
+ ],
19288
+ [MODEL, [VENDOR, APPLE], [TYPE, WEARABLE]],
19289
+ [
19290
+ /(opwwe\d{3})/i
19291
+ // OnePlus Watch
19292
+ ],
19293
+ [MODEL, [VENDOR, ONEPLUS], [TYPE, WEARABLE]],
19294
+ [
19295
+ /(moto 360)/i
19296
+ // Motorola 360
19297
+ ],
19298
+ [MODEL, [VENDOR, MOTOROLA], [TYPE, WEARABLE]],
19299
+ [
19300
+ /(smartwatch 3)/i
19301
+ // Sony SmartWatch
19302
+ ],
19303
+ [MODEL, [VENDOR, SONY], [TYPE, WEARABLE]],
19304
+ [
19305
+ /(g watch r)/i
19306
+ // LG G Watch R
19307
+ ],
19308
+ [MODEL, [VENDOR, LG], [TYPE, WEARABLE]],
19309
+ [
19310
+ /droid.+; (wt63?0{2,3})\)/i
19311
+ ],
19312
+ [MODEL, [VENDOR, ZEBRA], [TYPE, WEARABLE]],
19313
+ [
19314
+ ///////////////////
19315
+ // XR
19316
+ ///////////////////
19317
+ /droid.+; (glass) \d/i
19318
+ // Google Glass
19319
+ ],
19320
+ [MODEL, [VENDOR, GOOGLE], [TYPE, XR]],
19321
+ [
19322
+ /(pico) ([\w ]+) os\d/i
19323
+ // Pico
19324
+ ],
19325
+ [VENDOR, MODEL, [TYPE, XR]],
19326
+ [
19327
+ /(quest( \d| pro)?s?).+vr/i
19328
+ // Meta Quest
19329
+ ],
19330
+ [MODEL, [VENDOR, FACEBOOK], [TYPE, XR]],
19331
+ [
19332
+ /mobile vr; rv.+firefox/i
19333
+ // Unidentifiable VR device using Firefox Reality / Wolvic
19334
+ ],
19335
+ [[TYPE, XR]],
19336
+ [
19337
+ ///////////////////
19338
+ // EMBEDDED
19339
+ ///////////////////
19340
+ /(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i
19341
+ // Tesla
19342
+ ],
19343
+ [VENDOR, [TYPE, EMBEDDED]],
19344
+ [
19345
+ /(aeobc)\b/i
19346
+ // Echo Dot
19347
+ ],
19348
+ [MODEL, [VENDOR, AMAZON], [TYPE, EMBEDDED]],
19349
+ [
19350
+ /(homepod).+mac os/i
19351
+ // Apple HomePod
19352
+ ],
19353
+ [MODEL, [VENDOR, APPLE], [TYPE, EMBEDDED]],
19354
+ [
19355
+ /windows iot/i
19356
+ // Unidentifiable embedded device using Windows IoT
19357
+ ],
19358
+ [[TYPE, EMBEDDED]],
19359
+ [
19360
+ ////////////////////
19361
+ // MIXED (GENERIC)
19362
+ ///////////////////
19363
+ /droid.+; ([\w- ]+) (4k|android|smart|google)[- ]?tv/i
19364
+ // Unidentifiable SmartTV
19365
+ ],
19366
+ [MODEL, [TYPE, SMARTTV]],
19367
+ [
19368
+ /\b((4k|android|smart|opera)[- ]?tv|tv; rv:|large screen[\w ]+safari)\b/i
19369
+ ],
19370
+ [[TYPE, SMARTTV]],
19371
+ [
19372
+ /droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew|; hmsc).+?(mobile|vr|\d) safari/i
19373
+ ],
19374
+ [MODEL, [TYPE, strMapper, { "mobile": "Mobile", "xr": "VR", "*": TABLET }]],
19375
+ [
19376
+ /\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i
19377
+ // Unidentifiable Tablet
19378
+ ],
19379
+ [[TYPE, TABLET]],
19380
+ [
19381
+ /(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i
19382
+ // Unidentifiable Mobile
19383
+ ],
19384
+ [[TYPE, MOBILE]],
19385
+ [
19386
+ /droid .+?; ([\w\. -]+)( bui|\))/i
19387
+ // Generic Android Device
19388
+ ],
19389
+ [MODEL, [VENDOR, "Generic"]]
19390
+ ],
19391
+ engine: [
19392
+ [
19393
+ /windows.+ edge\/([\w\.]+)/i
19394
+ // EdgeHTML
19395
+ ],
19396
+ [VERSION, [NAME, EDGE + "HTML"]],
19397
+ [
19398
+ /(arkweb)\/([\w\.]+)/i
19399
+ // ArkWeb
19400
+ ],
19401
+ [NAME, VERSION],
19402
+ [
19403
+ /webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i
19404
+ // Blink
19405
+ ],
19406
+ [VERSION, [NAME, "Blink"]],
19407
+ [
19408
+ /(presto)\/([\w\.]+)/i,
19409
+ // Presto
19410
+ /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i,
19411
+ // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna/Servo
19412
+ /ekioh(flow)\/([\w\.]+)/i,
19413
+ // Flow
19414
+ /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,
19415
+ // KHTML/Tasman/Links
19416
+ /(icab)[\/ ]([23]\.[\d\.]+)/i,
19417
+ // iCab
19418
+ /\b(libweb)/i
19419
+ // LibWeb
19420
+ ],
19421
+ [NAME, VERSION],
19422
+ [
19423
+ /ladybird\//i
19424
+ ],
19425
+ [[NAME, "LibWeb"]],
19426
+ [
19427
+ /rv\:([\w\.]{1,9})\b.+(gecko)/i
19428
+ // Gecko
19429
+ ],
19430
+ [VERSION, NAME]
19431
+ ],
19432
+ os: [
19433
+ [
19434
+ // Windows
19435
+ /(windows nt) (6\.[23]); arm/i
19436
+ // Windows RT
19437
+ ],
19438
+ [[NAME, /N/, "R"], [VERSION, strMapper, windowsVersionMap]],
19439
+ [
19440
+ /(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,
19441
+ // Windows IoT/Mobile/Phone
19442
+ // Windows NT/3.1/95/98/ME/2000/XP/Vista/7/8/8.1/10/11
19443
+ /(windows)[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i
19444
+ ],
19445
+ [NAME, VERSION],
19446
+ [
19447
+ /windows nt ?([\d\.\)]*)(?!.+xbox)/i,
19448
+ /\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i
19449
+ ],
19450
+ [[VERSION, /(;|\))/g, "", strMapper, windowsVersionMap], [NAME, WINDOWS]],
19451
+ [
19452
+ /(windows ce)\/?([\d\.]*)/i
19453
+ // Windows CE
19454
+ ],
19455
+ [NAME, VERSION],
19456
+ [
19457
+ // iOS/macOS
19458
+ /[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,
19459
+ // iOS
19460
+ /(?:ios;fbsv|ios(?=.+ip(?:ad|hone))|ip(?:ad|hone)(?: |.+i(?:pad)?)os)[\/ ]([\w\.]+)/i,
19461
+ /cfnetwork\/.+darwin/i
19462
+ ],
19463
+ [[VERSION, /_/g, "."], [NAME, "iOS"]],
19464
+ [
19465
+ /(mac os x) ?([\w\. ]*)/i,
19466
+ /(macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i
19467
+ // Mac OS
19468
+ ],
19469
+ [[NAME, "macOS"], [VERSION, /_/g, "."]],
19470
+ [
19471
+ // Google Chromecast
19472
+ /android ([\d\.]+).*crkey/i
19473
+ // Google Chromecast, Android-based
19474
+ ],
19475
+ [VERSION, [NAME, CHROMECAST + " Android"]],
19476
+ [
19477
+ /fuchsia.*crkey\/([\d\.]+)/i
19478
+ // Google Chromecast, Fuchsia-based
19479
+ ],
19480
+ [VERSION, [NAME, CHROMECAST + " Fuchsia"]],
19481
+ [
19482
+ /crkey\/([\d\.]+).*devicetype\/smartspeaker/i
19483
+ // Google Chromecast, Linux-based Smart Speaker
19484
+ ],
19485
+ [VERSION, [NAME, CHROMECAST + " SmartSpeaker"]],
19486
+ [
19487
+ /linux.*crkey\/([\d\.]+)/i
19488
+ // Google Chromecast, Legacy Linux-based
19489
+ ],
19490
+ [VERSION, [NAME, CHROMECAST + " Linux"]],
19491
+ [
19492
+ /crkey\/([\d\.]+)/i
19493
+ // Google Chromecast, unknown
19494
+ ],
19495
+ [VERSION, [NAME, CHROMECAST]],
19496
+ [
19497
+ // Mobile OSes
19498
+ /droid ([\w\.]+)\b.+(android[- ]x86)/i
19499
+ // Android-x86
19500
+ ],
19501
+ [VERSION, NAME],
19502
+ [
19503
+ /(ubuntu) ([\w\.]+) like android/i
19504
+ // Ubuntu Touch
19505
+ ],
19506
+ [[NAME, /(.+)/, "$1 Touch"], VERSION],
19507
+ [
19508
+ /(harmonyos)[\/ ]?([\d\.]*)/i,
19509
+ // HarmonyOS
19510
+ // Android/Blackberry/WebOS/QNX/Bada/RIM/KaiOS/Maemo/MeeGo/S40/Sailfish OS/OpenHarmony/Tizen
19511
+ /(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen)\w*[-\/\.; ]?([\d\.]*)/i
19512
+ ],
19513
+ [NAME, VERSION],
19514
+ [
19515
+ /\(bb(10);/i
19516
+ // BlackBerry 10
19517
+ ],
19518
+ [VERSION, [NAME, BLACKBERRY]],
19519
+ [
19520
+ /(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i
19521
+ // Symbian
19522
+ ],
19523
+ [VERSION, [NAME, "Symbian"]],
19524
+ [
19525
+ /mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i
19526
+ // Firefox OS
19527
+ ],
19528
+ [VERSION, [NAME, FIREFOX + " OS"]],
19529
+ [
19530
+ /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,
19531
+ // WebOS
19532
+ /webos(?:[ \/]?|\.tv-20(?=2[2-9]))(\d[\d\.]*)/i
19533
+ ],
19534
+ [VERSION, [NAME, "webOS"]],
19535
+ [
19536
+ /web0s;.+?(?:chr[o0]me|safari)\/(\d+)/i
19537
+ // https://webostv.developer.lge.com/develop/specifications/web-api-and-web-engine
19538
+ ],
19539
+ [[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"]],
19540
+ [
19541
+ /watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i
19542
+ // watchOS
19543
+ ],
19544
+ [VERSION, [NAME, "watchOS"]],
19545
+ [
19546
+ // Google ChromeOS
19547
+ /(cros) [\w]+(?:\)| ([\w\.]+)\b)/i
19548
+ // Chromium OS
19549
+ ],
19550
+ [[NAME, "Chrome OS"], VERSION],
19551
+ [
19552
+ // Smart TVs
19553
+ /panasonic;(viera)/i,
19554
+ // Panasonic Viera
19555
+ /(netrange)mmh/i,
19556
+ // Netrange
19557
+ /(nettv)\/(\d+\.[\w\.]+)/i,
19558
+ // NetTV
19559
+ // Console
19560
+ /(nintendo|playstation) (\w+)/i,
19561
+ // Nintendo/Playstation
19562
+ /(xbox); +xbox ([^\);]+)/i,
19563
+ // Microsoft Xbox (360, One, X, S, Series X, Series S)
19564
+ /(pico) .+os([\w\.]+)/i,
19565
+ // Pico
19566
+ // Other
19567
+ /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,
19568
+ // Joli/Palm
19569
+ /linux.+(mint)[\/\(\) ]?([\w\.]*)/i,
19570
+ // Mint
19571
+ /(mageia|vectorlinux|fuchsia|arcaos|arch(?= ?linux))[;l ]([\d\.]*)/i,
19572
+ // Mageia/VectorLinux/Fuchsia/ArcaOS/Arch
19573
+ /([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,
19574
+ // Ubuntu/Debian/SUSE/Gentoo/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire/Knoppix
19575
+ /((?:open)?solaris)[-\/ ]?([\w\.]*)/i,
19576
+ // Solaris
19577
+ /\b(aix)[; ]([1-9\.]{0,4})/i,
19578
+ // AIX
19579
+ /(hurd|linux|morphos)(?: (?:arm|x86|ppc)\w*| ?)([\w\.]*)/i,
19580
+ // Hurd/Linux/MorphOS
19581
+ /(gnu) ?([\w\.]*)/i,
19582
+ // GNU
19583
+ /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,
19584
+ // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly
19585
+ /(haiku) ?(r\d)?/i
19586
+ // Haiku
19587
+ ],
19588
+ [NAME, VERSION],
19589
+ [
19590
+ /(sunos) ?([\d\.]*)/i
19591
+ // Solaris
19592
+ ],
19593
+ [[NAME, "Solaris"], VERSION],
19594
+ [
19595
+ /\b(beos|os\/2|amigaos|openvms|hp-ux|serenityos)/i,
19596
+ // BeOS/OS2/AmigaOS/OpenVMS/HP-UX/SerenityOS
19597
+ /(unix) ?([\w\.]*)/i
19598
+ // UNIX
19599
+ ],
19600
+ [NAME, VERSION]
19601
+ ]
19602
+ };
19603
+ var defaultProps = function() {
19604
+ var props = { init: {}, isIgnore: {}, isIgnoreRgx: {}, toString: {} };
19605
+ setProps.call(props.init, [
19606
+ [BROWSER, [NAME, VERSION, MAJOR, TYPE]],
19607
+ [CPU, [ARCHITECTURE]],
19608
+ [DEVICE, [TYPE, MODEL, VENDOR]],
19609
+ [ENGINE, [NAME, VERSION]],
19610
+ [OS, [NAME, VERSION]]
19611
+ ]);
19612
+ setProps.call(props.isIgnore, [
19613
+ [BROWSER, [VERSION, MAJOR]],
19614
+ [ENGINE, [VERSION]],
19615
+ [OS, [VERSION]]
19616
+ ]);
19617
+ setProps.call(props.isIgnoreRgx, [
19618
+ [BROWSER, / ?browser$/i],
19619
+ [OS, / ?os$/i]
19620
+ ]);
19621
+ setProps.call(props.toString, [
19622
+ [BROWSER, [NAME, VERSION]],
19623
+ [CPU, [ARCHITECTURE]],
19624
+ [DEVICE, [VENDOR, MODEL]],
19625
+ [ENGINE, [NAME, VERSION]],
19626
+ [OS, [NAME, VERSION]]
19627
+ ]);
19628
+ return props;
19629
+ }();
19630
+ var createIData = function(item, itemType) {
19631
+ var init_props = defaultProps.init[itemType], is_ignoreProps = defaultProps.isIgnore[itemType] || 0, is_ignoreRgx = defaultProps.isIgnoreRgx[itemType] || 0, toString_props = defaultProps.toString[itemType] || 0;
19632
+ function IData() {
19633
+ setProps.call(this, init_props);
19634
+ }
19635
+ IData.prototype.getItem = function() {
19636
+ return item;
19637
+ };
19638
+ IData.prototype.withClientHints = function() {
19639
+ if (!NAVIGATOR_UADATA) {
19640
+ return item.parseCH().get();
19641
+ }
19642
+ return NAVIGATOR_UADATA.getHighEntropyValues(CH_ALL_VALUES).then(function(res) {
19643
+ return item.setCH(new UACHData(res, false)).parseCH().get();
19644
+ });
19645
+ };
19646
+ IData.prototype.withFeatureCheck = function() {
19647
+ return item.detectFeature().get();
19648
+ };
19649
+ if (itemType != RESULT) {
19650
+ IData.prototype.is = function(strToCheck) {
19651
+ var is2 = false;
19652
+ for (var i in this) {
19653
+ 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)) {
19654
+ is2 = true;
19655
+ if (strToCheck != TYPEOF.UNDEFINED)
19656
+ break;
19657
+ } else if (strToCheck == TYPEOF.UNDEFINED && is2) {
19658
+ is2 = !is2;
19659
+ break;
19660
+ }
19661
+ }
19662
+ return is2;
19663
+ };
19664
+ IData.prototype.toString = function() {
19665
+ var str = EMPTY;
19666
+ for (var i in toString_props) {
19667
+ if (typeof this[toString_props[i]] !== TYPEOF.UNDEFINED) {
19668
+ str += (str ? " " : EMPTY) + this[toString_props[i]];
19669
+ }
19670
+ }
19671
+ return str || TYPEOF.UNDEFINED;
19672
+ };
19673
+ }
19674
+ if (!NAVIGATOR_UADATA) {
19675
+ IData.prototype.then = function(cb) {
19676
+ var that = this;
19677
+ var IDataResolve = function() {
19678
+ for (var prop in that) {
19679
+ if (that.hasOwnProperty(prop)) {
19680
+ this[prop] = that[prop];
19681
+ }
19682
+ }
19683
+ };
19684
+ IDataResolve.prototype = {
19685
+ is: IData.prototype.is,
19686
+ toString: IData.prototype.toString
19687
+ };
19688
+ var resolveData = new IDataResolve();
19689
+ cb(resolveData);
19690
+ return resolveData;
19691
+ };
19692
+ }
19693
+ return new IData();
19694
+ };
19695
+ function UACHData(uach, isHttpUACH) {
19696
+ uach = uach || {};
19697
+ setProps.call(this, CH_ALL_VALUES);
19698
+ if (isHttpUACH) {
19699
+ setProps.call(this, [
19700
+ [BRANDS, itemListToArray(uach[CH])],
19701
+ [FULLVERLIST, itemListToArray(uach[CH_FULL_VER_LIST])],
19702
+ [MOBILE, /\?1/.test(uach[CH_MOBILE])],
19703
+ [MODEL, stripQuotes(uach[CH_MODEL])],
19704
+ [PLATFORM, stripQuotes(uach[CH_PLATFORM])],
19705
+ [PLATFORMVER, stripQuotes(uach[CH_PLATFORM_VER])],
19706
+ [ARCHITECTURE, stripQuotes(uach[CH_ARCH])],
19707
+ [FORMFACTORS, itemListToArray(uach[CH_FORM_FACTORS])],
19708
+ [BITNESS, stripQuotes(uach[CH_BITNESS])]
19709
+ ]);
19710
+ } else {
19711
+ for (var prop in uach) {
19712
+ if (this.hasOwnProperty(prop) && typeof uach[prop] !== TYPEOF.UNDEFINED)
19713
+ this[prop] = uach[prop];
19714
+ }
19715
+ }
19716
+ }
19717
+ function UAItem(itemType, ua, rgxMap, uaCH) {
19718
+ this.get = function(prop) {
19719
+ if (!prop)
19720
+ return this.data;
19721
+ return this.data.hasOwnProperty(prop) ? this.data[prop] : void 0;
19722
+ };
19723
+ this.set = function(prop, val) {
19724
+ this.data[prop] = val;
19725
+ return this;
19726
+ };
19727
+ this.setCH = function(ch) {
19728
+ this.uaCH = ch;
19729
+ return this;
19730
+ };
19731
+ this.detectFeature = function() {
19732
+ if (NAVIGATOR && NAVIGATOR.userAgent == this.ua) {
19733
+ switch (this.itemType) {
19734
+ case BROWSER:
19735
+ if (NAVIGATOR.brave && typeof NAVIGATOR.brave.isBrave == TYPEOF.FUNCTION) {
19736
+ this.set(NAME, "Brave");
19737
+ }
19738
+ break;
19739
+ case DEVICE:
19740
+ if (!this.get(TYPE) && NAVIGATOR_UADATA && NAVIGATOR_UADATA[MOBILE]) {
19741
+ this.set(TYPE, MOBILE);
19742
+ }
19743
+ if (this.get(MODEL) == "Macintosh" && NAVIGATOR && typeof NAVIGATOR.standalone !== TYPEOF.UNDEFINED && NAVIGATOR.maxTouchPoints && NAVIGATOR.maxTouchPoints > 2) {
19744
+ this.set(MODEL, "iPad").set(TYPE, TABLET);
19745
+ }
19746
+ break;
19747
+ case OS:
19748
+ if (!this.get(NAME) && NAVIGATOR_UADATA && NAVIGATOR_UADATA[PLATFORM]) {
19749
+ this.set(NAME, NAVIGATOR_UADATA[PLATFORM]);
19750
+ }
19751
+ break;
19752
+ case RESULT:
19753
+ var data3 = this.data;
19754
+ var detect = function(itemType2) {
19755
+ return data3[itemType2].getItem().detectFeature().get();
19756
+ };
19757
+ this.set(BROWSER, detect(BROWSER)).set(CPU, detect(CPU)).set(DEVICE, detect(DEVICE)).set(ENGINE, detect(ENGINE)).set(OS, detect(OS));
19758
+ }
19759
+ }
19760
+ return this;
19761
+ };
19762
+ this.parseUA = function() {
19763
+ if (this.itemType != RESULT) {
19764
+ rgxMapper.call(this.data, this.ua, this.rgxMap);
19765
+ }
19766
+ switch (this.itemType) {
19767
+ case BROWSER:
19768
+ this.set(MAJOR, majorize(this.get(VERSION)));
19769
+ break;
19770
+ case OS:
19771
+ if (this.get(NAME) == "iOS" && this.get(VERSION) == "18.6") {
19772
+ var realVersion = /\) Version\/([\d\.]+)/.exec(this.ua);
19773
+ if (realVersion && parseInt(realVersion[1].substring(0, 2), 10) >= 26) {
19774
+ this.set(VERSION, realVersion[1]);
19775
+ }
19776
+ }
19777
+ break;
19778
+ }
19779
+ return this;
19780
+ };
19781
+ this.parseCH = function() {
19782
+ var uaCH2 = this.uaCH, rgxMap2 = this.rgxMap;
19783
+ switch (this.itemType) {
19784
+ case BROWSER:
19785
+ case ENGINE:
19786
+ var brands = uaCH2[FULLVERLIST] || uaCH2[BRANDS], prevName;
19787
+ if (brands) {
19788
+ for (var i = 0; i < brands.length; i++) {
19789
+ var brandName = brands[i].brand || brands[i], brandVersion = brands[i].version;
19790
+ if (this.itemType == BROWSER && !/not.a.brand/i.test(brandName) && (!prevName || /Chrom/.test(prevName) && brandName != CHROMIUM || prevName == EDGE && /WebView2/.test(brandName))) {
19791
+ brandName = strMapper(brandName, browserHintsMap);
19792
+ prevName = this.get(NAME);
19793
+ if (!(prevName && !/Chrom/.test(prevName) && /Chrom/.test(brandName))) {
19794
+ this.set(NAME, brandName).set(VERSION, brandVersion).set(MAJOR, majorize(brandVersion));
19795
+ }
19796
+ prevName = brandName;
19797
+ }
19798
+ if (this.itemType == ENGINE && brandName == CHROMIUM) {
19799
+ this.set(VERSION, brandVersion);
19800
+ }
19801
+ }
19802
+ }
19803
+ break;
19804
+ case CPU:
19805
+ var archName = uaCH2[ARCHITECTURE];
19806
+ if (archName) {
19807
+ if (archName && uaCH2[BITNESS] == "64")
19808
+ archName += "64";
19809
+ rgxMapper.call(this.data, archName + ";", rgxMap2);
19810
+ }
19811
+ break;
19812
+ case DEVICE:
19813
+ if (uaCH2[MOBILE]) {
19814
+ this.set(TYPE, MOBILE);
19815
+ }
19816
+ if (uaCH2[MODEL]) {
19817
+ this.set(MODEL, uaCH2[MODEL]);
19818
+ if (!this.get(TYPE) || !this.get(VENDOR)) {
19819
+ var reParse = {};
19820
+ rgxMapper.call(reParse, "droid 9; " + uaCH2[MODEL] + ")", rgxMap2);
19821
+ if (!this.get(TYPE) && !!reParse.type) {
19822
+ this.set(TYPE, reParse.type);
19823
+ }
19824
+ if (!this.get(VENDOR) && !!reParse.vendor) {
19825
+ this.set(VENDOR, reParse.vendor);
19826
+ }
19827
+ }
19828
+ }
19829
+ if (uaCH2[FORMFACTORS]) {
19830
+ var ff;
19831
+ if (typeof uaCH2[FORMFACTORS] !== "string") {
19832
+ var idx = 0;
19833
+ while (!ff && idx < uaCH2[FORMFACTORS].length) {
19834
+ ff = strMapper(uaCH2[FORMFACTORS][idx++], formFactorsMap);
19835
+ }
19836
+ } else {
19837
+ ff = strMapper(uaCH2[FORMFACTORS], formFactorsMap);
19838
+ }
19839
+ this.set(TYPE, ff);
19840
+ }
19841
+ break;
19842
+ case OS:
19843
+ var osName = uaCH2[PLATFORM];
19844
+ if (osName) {
19845
+ var osVersion = uaCH2[PLATFORMVER];
19846
+ if (osName == WINDOWS)
19847
+ osVersion = parseInt(majorize(osVersion), 10) >= 13 ? "11" : "10";
19848
+ this.set(NAME, osName).set(VERSION, osVersion);
19849
+ }
19850
+ if (this.get(NAME) == WINDOWS && uaCH2[MODEL] == "Xbox") {
19851
+ this.set(NAME, "Xbox").set(VERSION, void 0);
19852
+ }
19853
+ break;
19854
+ case RESULT:
19855
+ var data3 = this.data;
19856
+ var parse2 = function(itemType2) {
19857
+ return data3[itemType2].getItem().setCH(uaCH2).parseCH().get();
19858
+ };
19859
+ this.set(BROWSER, parse2(BROWSER)).set(CPU, parse2(CPU)).set(DEVICE, parse2(DEVICE)).set(ENGINE, parse2(ENGINE)).set(OS, parse2(OS));
19860
+ }
19861
+ return this;
19862
+ };
19863
+ setProps.call(this, [
19864
+ ["itemType", itemType],
19865
+ ["ua", ua],
19866
+ ["uaCH", uaCH],
19867
+ ["rgxMap", rgxMap],
19868
+ ["data", createIData(this, itemType)]
19869
+ ]);
19870
+ return this;
19871
+ }
19872
+ function UAParser(ua, extensions, headers) {
19873
+ if (typeof ua === TYPEOF.OBJECT) {
19874
+ if (isExtensions(ua, true)) {
19875
+ if (typeof extensions === TYPEOF.OBJECT) {
19876
+ headers = extensions;
19877
+ }
19878
+ extensions = ua;
19879
+ } else {
19880
+ headers = ua;
19881
+ extensions = void 0;
19882
+ }
19883
+ ua = void 0;
19884
+ } else if (typeof ua === TYPEOF.STRING && !isExtensions(extensions, true)) {
19885
+ headers = extensions;
19886
+ extensions = void 0;
19887
+ }
19888
+ if (headers) {
19889
+ if (typeof headers.append === TYPEOF.FUNCTION) {
19890
+ var kv = {};
19891
+ headers.forEach(function(v, k2) {
19892
+ kv[String(k2).toLowerCase()] = v;
19893
+ });
19894
+ headers = kv;
19895
+ } else {
19896
+ var normalized = {};
19897
+ for (var header in headers) {
19898
+ if (headers.hasOwnProperty(header)) {
19899
+ normalized[String(header).toLowerCase()] = headers[header];
19900
+ }
19901
+ }
19902
+ headers = normalized;
19903
+ }
19904
+ }
19905
+ if (!(this instanceof UAParser)) {
19906
+ return new UAParser(ua, extensions, headers).getResult();
19907
+ }
19908
+ var userAgent = typeof ua === TYPEOF.STRING ? ua : (
19909
+ // Passed user-agent string
19910
+ headers && headers[USER_AGENT] ? headers[USER_AGENT] : (
19911
+ // User-Agent from passed headers
19912
+ NAVIGATOR && NAVIGATOR.userAgent ? NAVIGATOR.userAgent : (
19913
+ // navigator.userAgent
19914
+ EMPTY
19915
+ )
19916
+ )
19917
+ ), httpUACH = new UACHData(headers, true), regexMap = extensions ? extend(defaultRegexes, extensions) : defaultRegexes, createItemFunc = function(itemType) {
19918
+ if (itemType == RESULT) {
19919
+ return function() {
19920
+ 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();
19921
+ };
19922
+ } else {
19923
+ return function() {
19924
+ return new UAItem(itemType, userAgent, regexMap[itemType], httpUACH).parseUA().get();
19925
+ };
19926
+ }
19927
+ };
19928
+ setProps.call(this, [
19929
+ ["getBrowser", createItemFunc(BROWSER)],
19930
+ ["getCPU", createItemFunc(CPU)],
19931
+ ["getDevice", createItemFunc(DEVICE)],
19932
+ ["getEngine", createItemFunc(ENGINE)],
19933
+ ["getOS", createItemFunc(OS)],
19934
+ ["getResult", createItemFunc(RESULT)],
19935
+ ["getUA", function() {
19936
+ return userAgent;
19937
+ }],
19938
+ ["setUA", function(ua2) {
19939
+ if (isString(ua2))
19940
+ userAgent = trim(ua2, UA_MAX_LENGTH);
19941
+ return this;
19942
+ }]
19943
+ ]).setUA(userAgent);
19944
+ return this;
19945
+ }
19946
+ UAParser.VERSION = LIBVERSION;
19947
+ UAParser.BROWSER = enumerize([NAME, VERSION, MAJOR, TYPE]);
19948
+ UAParser.CPU = enumerize([ARCHITECTURE]);
19949
+ UAParser.DEVICE = enumerize([MODEL, VENDOR, TYPE, CONSOLE, MOBILE, SMARTTV, TABLET, WEARABLE, EMBEDDED]);
19950
+ UAParser.ENGINE = UAParser.OS = enumerize([NAME, VERSION]);
19951
+
19358
19952
  // ../hms-video-store/dist/index.js
19359
- var import_ua_parser_js = __toESM(require_ua_parser());
19360
19953
  var import_lodash3 = __toESM(require_lodash2());
19361
- import { v4 as Po } from "uuid";
19362
- import { v4 as ko } from "uuid";
19954
+ import { v4 as Lo } from "uuid";
19363
19955
  import { v4 as Ho } from "uuid";
19956
+ import { v4 as Oo } from "uuid";
19364
19957
 
19365
19958
  // ../../node_modules/webrtc-adapter/src/js/adapter_core.js
19366
19959
  init_define_process_env();
@@ -19598,7 +20191,7 @@ function shimGetUserMedia(window2, browserDetails) {
19598
20191
  if (typeof c2 !== "object" || c2.mandatory || c2.optional) {
19599
20192
  return c2;
19600
20193
  }
19601
- const cc = {};
20194
+ const cc2 = {};
19602
20195
  Object.keys(c2).forEach((key) => {
19603
20196
  if (key === "require" || key === "advanced" || key === "mediaSource") {
19604
20197
  return;
@@ -19614,35 +20207,35 @@ function shimGetUserMedia(window2, browserDetails) {
19614
20207
  return name === "deviceId" ? "sourceId" : name;
19615
20208
  };
19616
20209
  if (r.ideal !== void 0) {
19617
- cc.optional = cc.optional || [];
19618
- let oc = {};
20210
+ cc2.optional = cc2.optional || [];
20211
+ let oc2 = {};
19619
20212
  if (typeof r.ideal === "number") {
19620
- oc[oldname_("min", key)] = r.ideal;
19621
- cc.optional.push(oc);
19622
- oc = {};
19623
- oc[oldname_("max", key)] = r.ideal;
19624
- cc.optional.push(oc);
20213
+ oc2[oldname_("min", key)] = r.ideal;
20214
+ cc2.optional.push(oc2);
20215
+ oc2 = {};
20216
+ oc2[oldname_("max", key)] = r.ideal;
20217
+ cc2.optional.push(oc2);
19625
20218
  } else {
19626
- oc[oldname_("", key)] = r.ideal;
19627
- cc.optional.push(oc);
20219
+ oc2[oldname_("", key)] = r.ideal;
20220
+ cc2.optional.push(oc2);
19628
20221
  }
19629
20222
  }
19630
20223
  if (r.exact !== void 0 && typeof r.exact !== "number") {
19631
- cc.mandatory = cc.mandatory || {};
19632
- cc.mandatory[oldname_("", key)] = r.exact;
20224
+ cc2.mandatory = cc2.mandatory || {};
20225
+ cc2.mandatory[oldname_("", key)] = r.exact;
19633
20226
  } else {
19634
20227
  ["min", "max"].forEach((mix) => {
19635
20228
  if (r[mix] !== void 0) {
19636
- cc.mandatory = cc.mandatory || {};
19637
- cc.mandatory[oldname_(mix, key)] = r[mix];
20229
+ cc2.mandatory = cc2.mandatory || {};
20230
+ cc2.mandatory[oldname_(mix, key)] = r[mix];
19638
20231
  }
19639
20232
  });
19640
20233
  }
19641
20234
  });
19642
20235
  if (c2.advanced) {
19643
- cc.optional = (cc.optional || []).concat(c2.advanced);
20236
+ cc2.optional = (cc2.optional || []).concat(c2.advanced);
19644
20237
  }
19645
- return cc;
20238
+ return cc2;
19646
20239
  };
19647
20240
  const shimConstraints_ = function(constraints, func) {
19648
20241
  if (browserDetails.version >= 61) {
@@ -21185,15 +21778,15 @@ function shimSendThrowTypeError(window2) {
21185
21778
  if (!(window2.RTCPeerConnection && "createDataChannel" in window2.RTCPeerConnection.prototype)) {
21186
21779
  return;
21187
21780
  }
21188
- function wrapDcSend(dc, pc) {
21189
- const origDataChannelSend = dc.send;
21190
- dc.send = function send() {
21781
+ function wrapDcSend(dc2, pc) {
21782
+ const origDataChannelSend = dc2.send;
21783
+ dc2.send = function send() {
21191
21784
  const data3 = arguments[0];
21192
21785
  const length = data3.length || data3.size || data3.byteLength;
21193
- if (dc.readyState === "open" && pc.sctp && length > pc.sctp.maxMessageSize) {
21786
+ if (dc2.readyState === "open" && pc.sctp && length > pc.sctp.maxMessageSize) {
21194
21787
  throw new TypeError("Message too large (can send a maximum of " + pc.sctp.maxMessageSize + " bytes)");
21195
21788
  }
21196
- return origDataChannelSend.apply(dc, arguments);
21789
+ return origDataChannelSend.apply(dc2, arguments);
21197
21790
  };
21198
21791
  }
21199
21792
  const origCreateDataChannel = window2.RTCPeerConnection.prototype.createDataChannel;
@@ -21457,42 +22050,42 @@ var adapter = adapterFactory({ window: typeof window === "undefined" ? void 0 :
21457
22050
 
21458
22051
  // ../hms-video-store/dist/index.js
21459
22052
  var import_lodash4 = __toESM(require_lodash2());
21460
- import { v4 as _o } from "uuid";
21461
- import { v4 as Vo } from "uuid";
21462
- import { EventEmitter2 as Fo } from "eventemitter2";
21463
- var Yt = __toESM(require_lib());
21464
- import { EventEmitter2 as Sn } from "eventemitter2";
21465
- import { v4 as Mn } from "uuid";
21466
- import { EventEmitter2 as yn } from "eventemitter2";
21467
- import En from "eventemitter2";
21468
- import { v4 as Pn } from "uuid";
22053
+ import { v4 as Fo } from "uuid";
22054
+ import { v4 as jo } from "uuid";
22055
+ import { EventEmitter2 as Jo } from "eventemitter2";
22056
+ var Zt = __toESM(require_lib());
22057
+ import { EventEmitter2 as kn } from "eventemitter2";
21469
22058
  import { v4 as In } from "uuid";
21470
- var co = Object.defineProperty;
21471
- var lo = Object.defineProperties;
21472
- var uo = Object.getOwnPropertyDescriptors;
21473
- var ai = Object.getOwnPropertySymbols;
21474
- var gs = Object.prototype.hasOwnProperty;
21475
- var Ts = Object.prototype.propertyIsEnumerable;
21476
- var Ss = (a2, e, t) => e in a2 ? co(a2, e, { enumerable: true, configurable: true, writable: true, value: t }) : a2[e] = t;
22059
+ import { EventEmitter2 as Rn } from "eventemitter2";
22060
+ import Cn from "eventemitter2";
22061
+ import { v4 as Ln } from "uuid";
22062
+ import { v4 as _n } from "uuid";
22063
+ var go = Object.defineProperty;
22064
+ var To = Object.defineProperties;
22065
+ var fo = Object.getOwnPropertyDescriptors;
22066
+ var ni = Object.getOwnPropertySymbols;
22067
+ var vs = Object.prototype.hasOwnProperty;
22068
+ var Ms = Object.prototype.propertyIsEnumerable;
22069
+ var fs = (a2, e, t) => e in a2 ? go(a2, e, { enumerable: true, configurable: true, writable: true, value: t }) : a2[e] = t;
21477
22070
  var m = (a2, e) => {
21478
22071
  for (var t in e || (e = {}))
21479
- gs.call(e, t) && Ss(a2, t, e[t]);
21480
- if (ai)
21481
- for (var t of ai(e))
21482
- Ts.call(e, t) && Ss(a2, t, e[t]);
22072
+ vs.call(e, t) && fs(a2, t, e[t]);
22073
+ if (ni)
22074
+ for (var t of ni(e))
22075
+ Ms.call(e, t) && fs(a2, t, e[t]);
21483
22076
  return a2;
21484
22077
  };
21485
- var M = (a2, e) => lo(a2, uo(e));
21486
- var kr = (a2, e) => {
22078
+ var M = (a2, e) => To(a2, fo(e));
22079
+ var Er = (a2, e) => {
21487
22080
  var t = {};
21488
22081
  for (var i in a2)
21489
- gs.call(a2, i) && e.indexOf(i) < 0 && (t[i] = a2[i]);
21490
- if (a2 != null && ai)
21491
- for (var i of ai(a2))
21492
- e.indexOf(i) < 0 && Ts.call(a2, i) && (t[i] = a2[i]);
22082
+ vs.call(a2, i) && e.indexOf(i) < 0 && (t[i] = a2[i]);
22083
+ if (a2 != null && ni)
22084
+ for (var i of ni(a2))
22085
+ e.indexOf(i) < 0 && Ms.call(a2, i) && (t[i] = a2[i]);
21493
22086
  return t;
21494
22087
  };
21495
- var mo = (a2, e) => () => (e || a2((e = { exports: {} }).exports, e), e.exports);
22088
+ var yo = (a2, e) => () => (e || a2((e = { exports: {} }).exports, e), e.exports);
21496
22089
  var c = (a2, e, t) => new Promise((i, r) => {
21497
22090
  var s = (d) => {
21498
22091
  try {
@@ -21509,51 +22102,51 @@ var c = (a2, e, t) => new Promise((i, r) => {
21509
22102
  }, n = (d) => d.done ? i(d.value) : Promise.resolve(d.value).then(s, o);
21510
22103
  n((t = t.apply(a2, e)).next());
21511
22104
  });
21512
- var Ir = mo((Jc, Eo) => {
21513
- 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"] };
22105
+ var Cr = yo((id, Co) => {
22106
+ 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"] };
21514
22107
  });
21515
- 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 || {});
21516
- var So = ((e) => (e.CHAT = "chat", e))(So || {});
21517
- var fs = ((t) => (t.INFO = "info", t.ERROR = "error", t))(fs || {});
21518
- 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 || {});
21519
- var vs = ((t) => (t.audio = "audio", t.video = "video", t))(vs || {});
21520
- function Fe(a2, e) {
22108
+ 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 || {});
22109
+ var ko = ((e) => (e.CHAT = "chat", e))(ko || {});
22110
+ var ys = ((t) => (t.INFO = "info", t.ERROR = "error", t))(ys || {});
22111
+ 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 || {});
22112
+ var ks = ((t) => (t.audio = "audio", t.video = "video", t))(ks || {});
22113
+ function Ge(a2, e) {
21521
22114
  let t, i;
21522
22115
  if (e)
21523
22116
  for (let r of e.auxiliaryTracks) {
21524
22117
  let s = a2[r];
21525
- go(s) && (i = gt(s) ? s : i, t = Tt(s) ? s : t);
22118
+ Eo(s) && (i = Tt(s) ? s : i, t = ft(s) ? s : t);
21526
22119
  }
21527
22120
  return { video: t, audio: i };
21528
22121
  }
21529
- function gt(a2) {
22122
+ function Tt(a2) {
21530
22123
  return a2 && a2.type === "audio";
21531
22124
  }
21532
- function Tt(a2) {
22125
+ function ft(a2) {
21533
22126
  return a2 && a2.type === "video";
21534
22127
  }
21535
- function go(a2) {
22128
+ function Eo(a2) {
21536
22129
  return a2 && a2.source === "screen";
21537
22130
  }
21538
- function ci(a2) {
22131
+ function li(a2) {
21539
22132
  return a2 && a2.source === "audioplaylist";
21540
22133
  }
21541
- function ft(a2) {
22134
+ function vt(a2) {
21542
22135
  return a2 && a2.source === "videoplaylist";
21543
22136
  }
21544
- function Ms(a2) {
22137
+ function Es(a2) {
21545
22138
  return a2 ? !!(a2 != null && a2.degraded) : false;
21546
22139
  }
21547
- function ze(a2, e) {
22140
+ function Ye(a2, e) {
21548
22141
  return e && a2.tracks[e] ? a2.tracks[e].enabled : false;
21549
22142
  }
21550
- function vt(a2) {
22143
+ function Mt(a2) {
21551
22144
  var r;
21552
22145
  let e = false, t = false, i = false;
21553
22146
  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 };
21554
22147
  }
21555
- 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 || {});
21556
- var To = typeof window != "undefined" && typeof window.expect != "undefined";
22148
+ 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 || {});
22149
+ var Po = typeof window != "undefined" && typeof window.expect != "undefined";
21557
22150
  var l = class {
21558
22151
  static v(e, ...t) {
21559
22152
  this.log(0, e, ...t);
@@ -21619,28 +22212,46 @@ var l = class {
21619
22212
  }
21620
22213
  }
21621
22214
  };
21622
- l.level = To ? 7 : 0;
21623
- var fe = new import_ua_parser_js.UAParser();
21624
- var U = typeof window != "undefined";
21625
- var Es;
21626
- var Ge = typeof window == "undefined" && !((Es = fe.getBrowser().name) != null && Es.toLowerCase().includes("electron"));
21627
- var vo = () => !Ge;
21628
- var Tc = vo();
21629
- var Ps;
21630
- var bs;
21631
- var Cs = (bs = (Ps = fe.getBrowser()) == null ? void 0 : Ps.name) == null ? void 0 : bs.toLowerCase().includes("safari");
22215
+ l.level = Po ? 7 : 0;
22216
+ var Ar = new UAParser();
22217
+ var yt = null;
22218
+ var Ir = null;
22219
+ var x = typeof window != "undefined";
22220
+ if (x)
22221
+ try {
22222
+ let a2 = Ar.getResult(), e = a2.withClientHints();
22223
+ e && typeof e.then == "function" ? (Ir = e, Ir.then((t) => {
22224
+ yt = t;
22225
+ }).catch(() => {
22226
+ yt = a2;
22227
+ })) : (l.d("UAParser", "Client Hints not supported, using standard UA parsing"), yt = e);
22228
+ } catch (a2) {
22229
+ yt = Ar.getResult();
22230
+ }
22231
+ var De = () => yt || Ar.getResult();
22232
+ 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()) };
21632
22233
  var As;
22234
+ var We = typeof window == "undefined" && !((As = he.getBrowser().name) != null && As.toLowerCase().includes("electron"));
22235
+ var Ao = () => !We;
22236
+ var bc = Ao();
21633
22237
  var Is;
21634
- var di = ((Is = (As = fe.getBrowser()) == null ? void 0 : As.name) == null ? void 0 : Is.toLowerCase()) === "firefox";
21635
- var Ls = ((i) => (i.CUSTOM = "CUSTOM", i.LOCAL = "LOCAL", i.HMS = "HMS", i))(Ls || {});
21636
- function Mo() {
21637
- if (U && window) {
22238
+ var Rs;
22239
+ var Ns = (Rs = (Is = he.getBrowser()) == null ? void 0 : Is.name) == null ? void 0 : Rs.toLowerCase().includes("safari");
22240
+ var Hs;
22241
+ var Cs;
22242
+ var Os = ((Cs = (Hs = he.getBrowser()) == null ? void 0 : Hs.name) == null ? void 0 : Cs.toLowerCase()) === "firefox";
22243
+ var Ls;
22244
+ var Ds;
22245
+ var xs = ((Ds = (Ls = he.getEngine()) == null ? void 0 : Ls.name) == null ? void 0 : Ds.toLowerCase()) === "blink";
22246
+ var Us = ((i) => (i.CUSTOM = "CUSTOM", i.LOCAL = "LOCAL", i.HMS = "HMS", i))(Us || {});
22247
+ function Io() {
22248
+ if (x && window) {
21638
22249
  let a2 = window.location.hostname;
21639
22250
  return a2 === "localhost" || a2 === "127.0.0.1" ? "LOCAL" : a2.includes("app.100ms.live") ? "HMS" : "CUSTOM";
21640
22251
  }
21641
22252
  return "CUSTOM";
21642
22253
  }
21643
- var Xe = Mo();
22254
+ var Ze = Io();
21644
22255
  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 } };
21645
22256
  var E = class a extends Error {
21646
22257
  constructor(t, i, r, s, o, n = false) {
@@ -21697,8 +22308,8 @@ var W = class extends E {
21697
22308
  }`;
21698
22309
  }
21699
22310
  };
21700
- var Ds = ((r) => (r.AUDIO = "audio", r.VIDEO = "video", r.AUDIO_VIDEO = "audio, video", r.SCREEN = "screen", r))(Ds || {});
21701
- var yo = ["join", "offer", "answer", "trickle", "on-error", "JOIN"];
22311
+ var Bs = ((r) => (r.AUDIO = "audio", r.VIDEO = "video", r.AUDIO_VIDEO = "audio, video", r.SCREEN = "screen", r))(Bs || {});
22312
+ var Ro = ["join", "offer", "answer", "trickle", "on-error", "JOIN"];
21702
22313
  var S = { WebSocketConnectionErrors: { FailedToConnect(a2, e = "") {
21703
22314
  return new E(k.WebSocketConnectionErrors.FAILED_TO_CONNECT, "WebsocketFailedToConnect", a2, `[WS]: ${e}`, `[WS]: ${e}`);
21704
22315
  }, WebSocketConnectionLost(a2, e = "") {
@@ -21760,7 +22371,7 @@ var S = { WebSocketConnectionErrors: { FailedToConnect(a2, e = "") {
21760
22371
  }, StatsFailed(a2, e = "") {
21761
22372
  return new E(k.WebrtcErrors.STATS_FAILED, "StatsFailed", a2, `Failed to WebRTC get stats - ${e}`, e);
21762
22373
  } }, WebsocketMethodErrors: { ServerErrors(a2, e, t) {
21763
- return new E(a2, "ServerErrors", e, t, t, yo.includes(e));
22374
+ return new E(a2, "ServerErrors", e, t, t, Ro.includes(e));
21764
22375
  }, AlreadyJoined(a2, e = "") {
21765
22376
  return new E(k.WebsocketMethodErrors.ALREADY_JOINED, "AlreadyJoined", a2, "[JOIN]: You have already joined this room.", e);
21766
22377
  }, CannotJoinPreviewInProgress(a2, e = "") {
@@ -21808,7 +22419,7 @@ var S = { WebSocketConnectionErrors: { FailedToConnect(a2, e = "") {
21808
22419
  }, NoEntryPlaying(a2, e) {
21809
22420
  return new E(k.PlaylistErrors.NO_ENTRY_IS_PLAYING, "NoEntryIsPlaying", a2, "No entry is playing at this time", e);
21810
22421
  } } };
21811
- var Ar = class {
22422
+ var Hr = class {
21812
22423
  constructor() {
21813
22424
  this.valuesMap = /* @__PURE__ */ new Map();
21814
22425
  }
@@ -21833,9 +22444,9 @@ var Ar = class {
21833
22444
  return this.valuesMap.size;
21834
22445
  }
21835
22446
  };
21836
- var ws = () => {
22447
+ var Vs = () => {
21837
22448
  try {
21838
- U && !localStorage && (window.localStorage = new Ar());
22449
+ x && !localStorage && (window.localStorage = new Hr());
21839
22450
  } catch (a2) {
21840
22451
  l.e("Error initialising localStorage", S.GenericErrors.LocalStorageAccessDenied());
21841
22452
  }
@@ -21847,7 +22458,7 @@ var ve = class {
21847
22458
  }
21848
22459
  getStorage() {
21849
22460
  try {
21850
- return U && !this.storage && (ws(), this.storage = window.localStorage), this.storage;
22461
+ return x && !this.storage && (Vs(), this.storage = window.localStorage), this.storage;
21851
22462
  } catch (e) {
21852
22463
  return l.e("Error initialising localStorage", S.GenericErrors.LocalStorageAccessDenied()), null;
21853
22464
  }
@@ -21867,32 +22478,32 @@ var ve = class {
21867
22478
  (e = this.getStorage()) == null || e.removeItem(this.key);
21868
22479
  }
21869
22480
  };
21870
- var li = () => {
22481
+ var ui = () => {
21871
22482
  let a2, e = new ve("hms-analytics-deviceId"), t = e.get();
21872
- return t ? a2 = t : (a2 = ko(), e.set(a2)), a2;
22483
+ return t ? a2 = t : (a2 = Ho(), e.set(a2)), a2;
21873
22484
  };
21874
- function he(a2) {
22485
+ function me(a2) {
21875
22486
  return a2 != null;
21876
22487
  }
21877
- var Os = Ir().version;
21878
- function Et(a2 = "prod", e) {
21879
- let t = "web", i = Xe !== "LOCAL" && a2 === "prod" ? "prod" : "debug";
21880
- if (Ge)
21881
- 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 });
21882
- 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;
21883
- 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 });
22488
+ var Ws = Cr().version;
22489
+ function bt(a2 = "prod", e) {
22490
+ let t = "web", i = Ze !== "LOCAL" && a2 === "prod" ? "prod" : "debug";
22491
+ if (We)
22492
+ 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 });
22493
+ 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;
22494
+ 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 });
21884
22495
  }
21885
- function Rr(a2) {
22496
+ function Lr(a2) {
21886
22497
  return a2.replace(/ /g, "_");
21887
22498
  }
21888
- var xs = (a2, e = ",") => Object.keys(a2).filter((t) => he(a2[t])).map((t) => `${t}:${a2[t]}`).join(e);
22499
+ var $s = (a2, e = ",") => Object.keys(a2).filter((t) => me(a2[t])).map((t) => `${t}:${a2[t]}`).join(e);
21889
22500
  var C = class {
21890
22501
  constructor({ name: e, level: t, properties: i, includesPII: r, timestamp: s }) {
21891
- this.metadata = { peer: {}, userAgent: Et() };
21892
- this.name = e, this.level = t, this.includesPII = r || false, this.properties = i || {}, this.timestamp = s || (/* @__PURE__ */ new Date()).getTime(), this.event_id = Po(), this.device_id = li();
22502
+ this.metadata = { peer: {}, userAgent: bt() };
22503
+ this.name = e, this.level = t, this.includesPII = r || false, this.properties = i || {}, this.timestamp = s || (/* @__PURE__ */ new Date()).getTime(), this.event_id = Lo(), this.device_id = ui();
21893
22504
  }
21894
22505
  toSignalParams() {
21895
- return { name: this.name, info: M(m({}, this.properties), { timestamp: this.timestamp, domain: Xe }), timestamp: (/* @__PURE__ */ new Date()).getTime() };
22506
+ return { name: this.name, info: M(m({}, this.properties), { timestamp: this.timestamp, domain: Ze }), timestamp: (/* @__PURE__ */ new Date()).getTime() };
21896
22507
  }
21897
22508
  };
21898
22509
  var y = class {
@@ -21905,12 +22516,12 @@ var y = class {
21905
22516
  return new C({ name: i, level: r, properties: s });
21906
22517
  }
21907
22518
  static preview(i) {
21908
- var r = i, { error: e } = r, t = kr(r, ["error"]);
22519
+ var r = i, { error: e } = r, t = Er(r, ["error"]);
21909
22520
  let s = this.eventNameFor("preview", e === void 0), o = e ? 2 : 1, n = this.getPropertiesWithError(t, e);
21910
22521
  return new C({ name: s, level: o, properties: n });
21911
22522
  }
21912
22523
  static join(i) {
21913
- var r = i, { error: e } = r, t = kr(r, ["error"]);
22524
+ var r = i, { error: e } = r, t = Er(r, ["error"]);
21914
22525
  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);
21915
22526
  return new C({ name: s, level: o, properties: n });
21916
22527
  }
@@ -22001,14 +22612,24 @@ var y = class {
22001
22612
  }
22002
22613
  };
22003
22614
  y.KEY_REQUESTED_AT = "requested_at", y.KEY_RESPONDED_AT = "responded_at";
22004
- var Hr = class {
22615
+ var Dr = class {
22005
22616
  constructor() {
22006
22617
  this.storage = new ve("hms-device-selection");
22007
22618
  this.remember = false;
22008
22619
  this.TAG = "[HMSDeviceStorage]";
22009
22620
  }
22010
22621
  setDevices(e) {
22011
- this.devices = e;
22622
+ var r;
22623
+ if (this.devices = e, !this.remember)
22624
+ return;
22625
+ let t = this.storage.get();
22626
+ if (!t)
22627
+ return;
22628
+ let i = ["audioInput", "videoInput", "audioOutput"];
22629
+ for (let s of i) {
22630
+ let o = t[s];
22631
+ 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)));
22632
+ }
22012
22633
  }
22013
22634
  rememberDevices(e) {
22014
22635
  this.remember = e;
@@ -22024,6 +22645,10 @@ var Hr = class {
22024
22645
  let s = this.storage.get() || {};
22025
22646
  s[e] = r, this.storage.set(s);
22026
22647
  }
22648
+ removeSelection(e) {
22649
+ let t = this.storage.get() || {};
22650
+ t[e] && (delete t[e], this.storage.set(t));
22651
+ }
22027
22652
  getSelection() {
22028
22653
  if (this.remember)
22029
22654
  return this.storage.get();
@@ -22035,19 +22660,19 @@ var Hr = class {
22035
22660
  return e.deviceId === t.deviceId && (e.groupId === t.groupId || !e.groupId);
22036
22661
  }
22037
22662
  };
22038
- var X = new Hr();
22039
- var Cr = ((t) => (t.TRANSFORM = "TRANSFORM", t.ANALYZE = "ANALYZE", t))(Cr || {});
22040
- var Lr = ((t) => (t.PLATFORM_NOT_SUPPORTED = "PLATFORM_NOT_SUPPORTED", t.DEVICE_NOT_SUPPORTED = "DEVICE_NOT_SUPPORTED", t))(Lr || {});
22041
- var Dr = ((t) => (t.SIP = "sip", t.REGULAR = "regular", t))(Dr || {});
22042
- 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 || {});
22043
- var Vs = ((t) => (t.DVR = "dvr", t.NO_DVR = "no-dvr", t))(Vs || {});
22044
- var Fs = ((i) => (i.REGULAR = "regular", i.SCREEN = "screen", i.COMPOSITE = "composite", i))(Fs || {});
22045
- var Gs = ((r) => (r.INITIALISED = "initialised", r.STARTED = "started", r.STOPPED = "stopped", r.FAILED = "failed", r))(Gs || {});
22046
- var Ws = ((e) => (e.CAPTION = "caption", e))(Ws || {});
22047
- var wr = ((t) => (t.VOICE = "voice", t.MUSIC = "music", t))(wr || {});
22048
- var $s = ((i) => (i.videoInput = "videoInput", i.audioInput = "audioInput", i.audioOutput = "audioOutput", i))($s || {});
22049
- var _r = ((r) => (r.SPEAKERPHONE = "SPEAKERPHONE", r.WIRED = "WIRED", r.BLUETOOTH = "BLUETOOTH", r.EARPIECE = "EARPIECE", r))(_r || {});
22050
- function gi(a2, e = 300) {
22663
+ var X = new Dr();
22664
+ var wr = ((t) => (t.TRANSFORM = "TRANSFORM", t.ANALYZE = "ANALYZE", t))(wr || {});
22665
+ var _r = ((t) => (t.PLATFORM_NOT_SUPPORTED = "PLATFORM_NOT_SUPPORTED", t.DEVICE_NOT_SUPPORTED = "DEVICE_NOT_SUPPORTED", t))(_r || {});
22666
+ var Nr = ((t) => (t.SIP = "sip", t.REGULAR = "regular", t))(Nr || {});
22667
+ 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 || {});
22668
+ var js = ((t) => (t.DVR = "dvr", t.NO_DVR = "no-dvr", t))(js || {});
22669
+ var Js = ((i) => (i.REGULAR = "regular", i.SCREEN = "screen", i.COMPOSITE = "composite", i))(Js || {});
22670
+ var Qs = ((r) => (r.INITIALISED = "initialised", r.STARTED = "started", r.STOPPED = "stopped", r.FAILED = "failed", r))(Qs || {});
22671
+ var zs = ((e) => (e.CAPTION = "caption", e))(zs || {});
22672
+ var Or = ((t) => (t.VOICE = "voice", t.MUSIC = "music", t))(Or || {});
22673
+ var Ys = ((i) => (i.videoInput = "videoInput", i.audioInput = "audioInput", i.audioOutput = "audioOutput", i))(Ys || {});
22674
+ var xr = ((r) => (r.SPEAKERPHONE = "SPEAKERPHONE", r.WIRED = "WIRED", r.BLUETOOTH = "BLUETOOTH", r.EARPIECE = "EARPIECE", r))(xr || {});
22675
+ function Ti(a2, e = 300) {
22051
22676
  let t;
22052
22677
  return function(...i) {
22053
22678
  clearTimeout(t), t = void 0;
@@ -22057,7 +22682,7 @@ function gi(a2, e = 300) {
22057
22682
  }, e);
22058
22683
  };
22059
22684
  }
22060
- var Vr = class {
22685
+ var Wr = class {
22061
22686
  constructor() {
22062
22687
  this.TAG = "[HMSIntersectionObserverWrapper]";
22063
22688
  this.listeners = /* @__PURE__ */ new WeakMap();
@@ -22080,12 +22705,12 @@ var Vr = class {
22080
22705
  this.createObserver();
22081
22706
  }
22082
22707
  isSupported() {
22083
- let e = U && typeof window.IntersectionObserver != "undefined";
22708
+ let e = x && typeof window.IntersectionObserver != "undefined";
22084
22709
  return e || l.w(this.TAG, "IntersectionObserver is not supported, fallback will be used instead"), e;
22085
22710
  }
22086
22711
  };
22087
- var zs = new Vr();
22088
- var Fr = class {
22712
+ var ra = new Wr();
22713
+ var $r = class {
22089
22714
  constructor() {
22090
22715
  this.TAG = "[HMSResizeObserverWrapper]";
22091
22716
  this.listeners = /* @__PURE__ */ new WeakMap();
@@ -22098,7 +22723,7 @@ var Fr = class {
22098
22723
  (t = this.resizeObserver) == null || t.unobserve(e), this.listeners.delete(e);
22099
22724
  };
22100
22725
  this.createObserver = () => {
22101
- this.isSupported() && !this.resizeObserver && (this.resizeObserver = new ResizeObserver(gi(this.handleResize, 300)));
22726
+ this.isSupported() && !this.resizeObserver && (this.resizeObserver = new ResizeObserver(Ti(this.handleResize, 300)));
22102
22727
  };
22103
22728
  this.handleResize = (e) => {
22104
22729
  var t;
@@ -22108,47 +22733,47 @@ var Fr = class {
22108
22733
  this.createObserver();
22109
22734
  }
22110
22735
  isSupported() {
22111
- let e = U && typeof window.ResizeObserver != "undefined";
22736
+ let e = x && typeof window.ResizeObserver != "undefined";
22112
22737
  return e || l.w(this.TAG, "Resize Observer is not supported"), e;
22113
22738
  }
22114
22739
  };
22115
- var Ys = new Fr();
22116
- var Gr = ((t) => (t.TRANSFORM = "TRANSFORM", t.ANALYZE = "ANALYZE", t))(Gr || {});
22117
- var Wr = ((t) => (t["2D"] = "2d", t.WEBGL = "webgl", t.WEBGL2 = "webgl2", t))(Wr || {});
22118
- var ea = "https://event.100ms.live/v2/client/report";
22119
- var ta = "https://event-nonprod.100ms.live/v2/client/report";
22120
- var Rt = Math.pow(2, 31) - 1;
22121
- var ot = class {
22740
+ var sa = new $r();
22741
+ var Kr = ((t) => (t.TRANSFORM = "TRANSFORM", t.ANALYZE = "ANALYZE", t))(Kr || {});
22742
+ var qr = ((t) => (t["2D"] = "2d", t.WEBGL = "webgl", t.WEBGL2 = "webgl2", t))(qr || {});
22743
+ var na = "https://event.100ms.live/v2/client/report";
22744
+ var ca = "https://event-nonprod.100ms.live/v2/client/report";
22745
+ var Ct = Math.pow(2, 31) - 1;
22746
+ var nt = class {
22122
22747
  };
22123
- ot.makePeerId = () => Vo();
22748
+ nt.makePeerId = () => jo();
22124
22749
  var F = (a2) => a2.room;
22125
- var Go = (a2) => a2.errors;
22126
- var Mm = createSelector(Go, (a2) => a2.length === 0 ? null : a2.at(-1));
22127
- var ym = createSelector(F, (a2) => a2.id);
22750
+ var Qo = (a2) => a2.errors;
22751
+ var Rm = createSelector(Qo, (a2) => a2.length === 0 ? null : a2.at(-1));
22752
+ var Hm = createSelector(F, (a2) => a2.id);
22128
22753
  var z = (a2) => a2.peers;
22129
- var Ai = (a2) => a2.messages.byID;
22130
- var la = (a2) => a2.messages.allIDs;
22754
+ var Ii = (a2) => a2.messages.byID;
22755
+ var Ta = (a2) => a2.messages.allIDs;
22131
22756
  var N = (a2) => a2.tracks;
22132
- var zr = (a2) => a2.appData;
22133
- var Wo = (a2) => a2.speakers;
22134
- var Be = createSelector([F], (a2) => a2 && a2.isConnected);
22135
- 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));
22136
- var $o = (a2) => a2.hideLocalPeer;
22137
- 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]));
22138
- var Ko = createSelector(N, (a2) => Object.values(a2));
22757
+ var Zr = (a2) => a2.appData;
22758
+ var zo = (a2) => a2.speakers;
22759
+ var Ve = createSelector([F], (a2) => a2 && a2.isConnected);
22760
+ 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));
22761
+ var Yo = (a2) => a2.hideLocalPeer;
22762
+ 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]));
22763
+ var Xo = createSelector(N, (a2) => Object.values(a2));
22139
22764
  var re = createSelector(F, z, (a2, e) => e[a2.localPeer]);
22140
22765
  var Ie = createSelector(F, (a2) => a2.localPeer);
22141
- var bm = createSelector(re, (a2) => a2 == null ? void 0 : a2.name);
22142
- var Am = createSelector(re, (a2) => a2 == null ? void 0 : a2.roleName);
22766
+ var wm = createSelector(re, (a2) => a2 == null ? void 0 : a2.name);
22767
+ var _m = createSelector(re, (a2) => a2 == null ? void 0 : a2.roleName);
22143
22768
  var le = createSelector(re, (a2) => a2 == null ? void 0 : a2.audioTrack);
22144
22769
  var Z = createSelector(re, (a2) => a2 == null ? void 0 : a2.videoTrack);
22145
- var qo = createSelector(re, (a2) => a2 == null ? void 0 : a2.auxiliaryTracks);
22146
- var pa = createSelector([le, Z, qo], (a2, e, t) => {
22770
+ var Zo = createSelector(re, (a2) => a2 == null ? void 0 : a2.auxiliaryTracks);
22771
+ var va = createSelector([le, Z, Zo], (a2, e, t) => {
22147
22772
  let i = t ? [...t] : [];
22148
22773
  return a2 && i.unshift(a2), e && i.unshift(e), i;
22149
22774
  });
22150
- var Im = createSelector(Ee, (a2) => a2.filter((e) => !e.isLocal));
22151
- var Rm = createSelector(z, Wo, (a2, e) => {
22775
+ var Nm = createSelector(Ee, (a2) => a2.filter((e) => !e.isLocal));
22776
+ var Om = createSelector(z, zo, (a2, e) => {
22152
22777
  let t = Object.entries(e).sort((i, r) => {
22153
22778
  var n, d;
22154
22779
  let s = ((n = i[1]) == null ? void 0 : n.audioLevel) || 0;
@@ -22161,112 +22786,112 @@ var Rm = createSelector(z, Wo, (a2, e) => {
22161
22786
  }
22162
22787
  return null;
22163
22788
  });
22164
- var Xr = createSelector(re, N, (a2, e) => {
22165
- let { video: t, audio: i } = Fe(e, a2);
22789
+ var ts = createSelector(re, N, (a2, e) => {
22790
+ let { video: t, audio: i } = Ge(e, a2);
22166
22791
  return !!(t || i);
22167
22792
  });
22168
- var jo = createSelector(z, N, (a2, e) => {
22793
+ var en = createSelector(z, N, (a2, e) => {
22169
22794
  let t;
22170
22795
  for (let i in a2) {
22171
- let r = a2[i], { video: s, audio: o } = Fe(e, r);
22796
+ let r = a2[i], { video: s, audio: o } = Ge(e, r);
22172
22797
  if (s)
22173
22798
  return r;
22174
22799
  o && !t && (t = r);
22175
22800
  }
22176
22801
  return t;
22177
22802
  });
22178
- var Cm = createSelector(jo, (a2) => !!a2);
22179
- var Lm = createSelector(z, N, (a2, e) => {
22803
+ var Um = createSelector(en, (a2) => !!a2);
22804
+ var Bm = createSelector(z, N, (a2, e) => {
22180
22805
  for (let t in a2) {
22181
- let i = a2[t], { audio: r, video: s } = Fe(e, i);
22806
+ let i = a2[t], { audio: r, video: s } = Ge(e, i);
22182
22807
  if (!s && r)
22183
22808
  return i;
22184
22809
  }
22185
22810
  });
22186
- var Dm = createSelector(z, N, (a2, e) => {
22811
+ var Vm = createSelector(z, N, (a2, e) => {
22187
22812
  let t = [], i = [];
22188
22813
  for (let r in a2) {
22189
- let s = a2[r], { video: o, audio: n } = Fe(e, s);
22814
+ let s = a2[r], { video: o, audio: n } = Ge(e, s);
22190
22815
  o ? t.push(s) : n && i.push(s);
22191
22816
  }
22192
22817
  return t.concat(i);
22193
22818
  });
22194
- var wm = createSelector(z, N, (a2, e) => {
22819
+ var Fm = createSelector(z, N, (a2, e) => {
22195
22820
  for (let t in e) {
22196
22821
  let i = e[t];
22197
- if (ft(i) && Tt(i) && i.peerId)
22822
+ if (vt(i) && ft(i) && i.peerId)
22198
22823
  return a2[i.peerId];
22199
22824
  }
22200
22825
  });
22201
- var _m = createSelector(z, N, (a2, e) => {
22826
+ var Gm = createSelector(z, N, (a2, e) => {
22202
22827
  for (let t in e) {
22203
22828
  let i = e[t];
22204
- if (ci(i) && i.peerId)
22829
+ if (li(i) && i.peerId)
22205
22830
  return a2[i.peerId];
22206
22831
  }
22207
22832
  });
22208
- var Nm = createSelector(Ko, (a2) => a2.filter(Ms));
22209
- var Om = createSelector(la, (a2) => a2.length);
22210
- var xm = createSelector(Ai, (a2) => Object.values(a2).filter((e) => !e.read).length);
22211
- var Dt = createSelector(la, Ai, (a2, e) => {
22833
+ var Wm = createSelector(Xo, (a2) => a2.filter(Es));
22834
+ var $m = createSelector(Ta, (a2) => a2.length);
22835
+ var Km = createSelector(Ii, (a2) => Object.values(a2).filter((e) => !e.read).length);
22836
+ var _t = createSelector(Ta, Ii, (a2, e) => {
22212
22837
  let t = [];
22213
22838
  return a2.forEach((i) => {
22214
22839
  t.push(e[i]);
22215
22840
  }), t;
22216
22841
  });
22217
- var Jo = createSelector(Dt, (a2) => a2.filter((e) => {
22842
+ var tn = createSelector(_t, (a2) => a2.filter((e) => {
22218
22843
  var t;
22219
22844
  return !e.recipientPeer && !(e.recipientRoles && ((t = e.recipientRoles) == null ? void 0 : t.length) > 0);
22220
22845
  }));
22221
- var Um = createSelector(Jo, (a2) => a2.filter((e) => !e.read).length);
22846
+ var qm = createSelector(tn, (a2) => a2.filter((e) => !e.read).length);
22222
22847
  var se = createSelector([F], (a2) => a2 && a2.roomState);
22223
- var ma = createSelector(se, (a2) => a2 === "Preview");
22224
- var Bm = createSelector(F, (a2) => a2.roomState !== "Disconnected");
22225
- var Vm = createSelector(F, (a2) => !a2.transcriptions || a2.transcriptions.length <= 0 ? false : a2.transcriptions.some((e) => e.mode === "caption" && e.state === "started"));
22848
+ var ya = createSelector(se, (a2) => a2 === "Preview");
22849
+ var jm = createSelector(F, (a2) => a2.roomState !== "Disconnected");
22850
+ var Jm = createSelector(F, (a2) => !a2.transcriptions || a2.transcriptions.length <= 0 ? false : a2.transcriptions.some((e) => e.mode === "caption" && e.state === "started"));
22226
22851
  var Pe = (a2) => a2.roles;
22227
- var Fm = createSelector([Pe], (a2) => Object.keys(a2));
22228
- var ct = createSelector([re, Pe], (a2, e) => a2 != null && a2.roleName ? e[a2.roleName] : null);
22229
- var Qo = (a2) => {
22852
+ var Qm = createSelector([Pe], (a2) => Object.keys(a2));
22853
+ var dt = createSelector([re, Pe], (a2, e) => a2 != null && a2.roleName ? e[a2.roleName] : null);
22854
+ var rn = (a2) => {
22230
22855
  var e;
22231
22856
  return (e = a2.preview) == null ? void 0 : e.asRole;
22232
22857
  };
22233
- var Sa = createSelector([Qo, Pe], (a2, e) => a2 ? e[a2] : null);
22234
- var Gm = createSelector([ct], (a2) => {
22858
+ var ka = createSelector([rn, Pe], (a2, e) => a2 ? e[a2] : null);
22859
+ var zm = createSelector([dt], (a2) => {
22235
22860
  var e;
22236
22861
  return (e = a2 == null ? void 0 : a2.subscribeParams) != null && e.subscribeToRoles ? a2.subscribeParams.subscribeToRoles.length > 0 : false;
22237
22862
  });
22238
- var ga = createSelector(ct, (a2) => a2 == null ? void 0 : a2.permissions);
22239
- var Wm = createSelector(F, (a2) => a2.recording);
22240
- var $m = createSelector(F, (a2) => a2.rtmp);
22241
- var Km = createSelector(F, (a2) => a2.hls);
22242
- var qm = createSelector(F, (a2) => a2.transcriptions);
22243
- var jm = createSelector(F, (a2) => a2.sessionId);
22244
- var Jm = createSelector(F, (a2) => a2.startedAt);
22245
- var Qm = createSelector(F, (a2) => !!a2.isLargeRoom);
22246
- var zm = createSelector(F, (a2) => !!a2.isEffectsEnabled);
22247
- var Ym = createSelector(F, (a2) => !!a2.isVBEnabled);
22248
- var Xm = createSelector(F, (a2) => a2.effectsKey);
22249
- var Ta = (a2) => a2.polls;
22250
- var iS = createSelector(Ee, (a2) => a2.filter((e) => e.isHandRaised));
22251
- var zo = (a2) => a2.whiteboards;
22252
- var rS = createSelector(zo, (a2) => Object.values(a2)[0]);
22253
- var va = (a2 = "audio") => (e) => e.playlist[a2].list;
22254
- var Zr = (a2 = "audio") => (e) => e.playlist[a2].selection;
22255
- var Ma = (a2 = "audio") => (e) => e.playlist[a2].progress;
22256
- var ya = (a2 = "audio") => (e) => e.playlist[a2].currentTime;
22257
- var ka = (a2 = "audio") => (e) => e.playlist[a2].playbackRate;
22258
- var Ea = (a2 = "audio") => (e) => e.playlist[a2].volume;
22259
- var Pa = (a2 = "audio") => createSelector(va(a2), (e) => Object.values(e));
22260
- var ba = (a2 = "audio") => createSelector(va(a2), Zr(a2), (e, t) => {
22863
+ var Ea = createSelector(dt, (a2) => a2 == null ? void 0 : a2.permissions);
22864
+ var Ym = createSelector(F, (a2) => a2.recording);
22865
+ var Xm = createSelector(F, (a2) => a2.rtmp);
22866
+ var Zm = createSelector(F, (a2) => a2.hls);
22867
+ var eS = createSelector(F, (a2) => a2.transcriptions);
22868
+ var tS = createSelector(F, (a2) => a2.sessionId);
22869
+ var iS = createSelector(F, (a2) => a2.startedAt);
22870
+ var rS = createSelector(F, (a2) => !!a2.isLargeRoom);
22871
+ var sS = createSelector(F, (a2) => !!a2.isEffectsEnabled);
22872
+ var aS = createSelector(F, (a2) => !!a2.isVBEnabled);
22873
+ var oS = createSelector(F, (a2) => a2.effectsKey);
22874
+ var Pa = (a2) => a2.polls;
22875
+ var lS = createSelector(Ee, (a2) => a2.filter((e) => e.isHandRaised));
22876
+ var sn = (a2) => a2.whiteboards;
22877
+ var uS = createSelector(sn, (a2) => Object.values(a2)[0]);
22878
+ var Aa = (a2 = "audio") => (e) => e.playlist[a2].list;
22879
+ var is = (a2 = "audio") => (e) => e.playlist[a2].selection;
22880
+ var Ia = (a2 = "audio") => (e) => e.playlist[a2].progress;
22881
+ var Ra = (a2 = "audio") => (e) => e.playlist[a2].currentTime;
22882
+ var Ha = (a2 = "audio") => (e) => e.playlist[a2].playbackRate;
22883
+ var Ca = (a2 = "audio") => (e) => e.playlist[a2].volume;
22884
+ var La = (a2 = "audio") => createSelector(Aa(a2), (e) => Object.values(e));
22885
+ var Da = (a2 = "audio") => createSelector(Aa(a2), is(a2), (e, t) => {
22261
22886
  if (t.id)
22262
22887
  return e[t.id];
22263
22888
  });
22264
- var Aa = { selection: Zr("audio"), progress: Ma("audio"), currentTime: ya("audio"), playbackRate: ka("audio"), volume: Ea("audio"), list: Pa("audio"), selectedItem: ba("audio") };
22265
- var Ia = { selection: Zr("video"), progress: Ma("video"), currentTime: ya("video"), playbackRate: ka("video"), volume: Ea("video"), list: Pa("video"), selectedItem: ba("video") };
22889
+ var wa = { selection: is("audio"), progress: Ia("audio"), currentTime: Ra("audio"), playbackRate: Ha("audio"), volume: Ca("audio"), list: La("audio"), selectedItem: Da("audio") };
22890
+ var _a7 = { selection: is("video"), progress: Ia("video"), currentTime: Ra("video"), playbackRate: Ha("video"), volume: Ca("video"), list: La("video"), selectedItem: Da("video") };
22266
22891
  function H(a2) {
22267
22892
  return (e) => (t) => a2(t, e);
22268
22893
  }
22269
- var wt = "HMS-Store:";
22894
+ var Nt = "HMS-Store:";
22270
22895
  var b = class {
22271
22896
  static v(e, ...t) {
22272
22897
  this.log(0, e, ...t);
@@ -22296,23 +22921,23 @@ var b = class {
22296
22921
  if (!(this.level.valueOf() > e.valueOf()))
22297
22922
  switch (e) {
22298
22923
  case 0: {
22299
- console.log(wt, ...t);
22924
+ console.log(Nt, ...t);
22300
22925
  break;
22301
22926
  }
22302
22927
  case 1: {
22303
- console.debug(wt, ...t);
22928
+ console.debug(Nt, ...t);
22304
22929
  break;
22305
22930
  }
22306
22931
  case 2: {
22307
- console.info(wt, ...t);
22932
+ console.info(Nt, ...t);
22308
22933
  break;
22309
22934
  }
22310
22935
  case 3: {
22311
- console.warn(wt, ...t);
22936
+ console.warn(Nt, ...t);
22312
22937
  break;
22313
22938
  }
22314
22939
  case 6: {
22315
- console.error(wt, ...t);
22940
+ console.error(Nt, ...t);
22316
22941
  break;
22317
22942
  }
22318
22943
  case 4: {
@@ -22333,133 +22958,133 @@ var b = class {
22333
22958
  }
22334
22959
  };
22335
22960
  b.level = 0;
22336
- var es = (a2, e) => e;
22337
- var _t = (a2, e) => e;
22338
- var Ra = (a2, e) => e;
22339
- var Yo = (a2, e) => e;
22340
- var Xo = (a2, e) => e;
22341
- var Y = createSelector([z, es], (a2, e) => e ? a2[e] : null);
22342
- var ts = createSelector([N, _t], (a2, e) => e ? a2[e] : null);
22343
- var Zo = createSelector([N, _t], (a2, e) => {
22961
+ var rs = (a2, e) => e;
22962
+ var Ot = (a2, e) => e;
22963
+ var Na = (a2, e) => e;
22964
+ var an = (a2, e) => e;
22965
+ var on = (a2, e) => e;
22966
+ var Y = createSelector([z, rs], (a2, e) => e ? a2[e] : null);
22967
+ var ss = createSelector([N, Ot], (a2, e) => e ? a2[e] : null);
22968
+ var nn = createSelector([N, Ot], (a2, e) => {
22344
22969
  if (!e)
22345
22970
  return null;
22346
22971
  let t = a2[e];
22347
22972
  return (t == null ? void 0 : t.type) === "video" ? t : null;
22348
22973
  });
22349
- var en = createSelector([N, _t], (a2, e) => {
22974
+ var cn = createSelector([N, Ot], (a2, e) => {
22350
22975
  if (!e)
22351
22976
  return null;
22352
22977
  let t = a2[e];
22353
22978
  return (t == null ? void 0 : t.type) === "audio" ? t : null;
22354
22979
  });
22355
- var tn = createSelector([N, _t], (a2, e) => {
22980
+ var dn = createSelector([N, Ot], (a2, e) => {
22356
22981
  if (!e)
22357
22982
  return null;
22358
22983
  let t = a2[e];
22359
22984
  return (t == null ? void 0 : t.type) === "audio" && (t == null ? void 0 : t.source) === "screen" ? t : null;
22360
22985
  });
22361
- var rn = createSelector([N, _t], (a2, e) => {
22986
+ var ln = createSelector([N, Ot], (a2, e) => {
22362
22987
  if (!e)
22363
22988
  return null;
22364
22989
  let t = a2[e];
22365
22990
  return (t == null ? void 0 : t.type) === "video" && (t == null ? void 0 : t.source) === "screen" ? t : null;
22366
22991
  });
22367
- var sn = createSelector([Ta, Xo], (a2, e) => e ? a2[e] : null);
22992
+ var un = createSelector([Pa, on], (a2, e) => e ? a2[e] : null);
22368
22993
  var ee = H(Y);
22369
- var mS = H(createSelector([zr, Yo], (a2, e) => {
22994
+ var kS = H(createSelector([Zr, an], (a2, e) => {
22370
22995
  if (a2)
22371
22996
  return e ? a2[e] : a2;
22372
22997
  }));
22373
- function SS(a2) {
22998
+ function ES(a2) {
22374
22999
  return (e) => {
22375
23000
  if (e.sessionStore)
22376
23001
  return a2 ? e.sessionStore[a2] : e.sessionStore;
22377
23002
  };
22378
23003
  }
22379
- var TS = H(createSelector(Y, (a2) => a2 == null ? void 0 : a2.name));
22380
- var fS = H(createSelector(Y, (a2) => a2 == null ? void 0 : a2.type));
22381
- var Ii = H(ts);
22382
- var Ha = H(Zo);
22383
- var vS = H(en);
22384
- var MS = H(tn);
22385
- var yS = H(rn);
22386
- var an = H((a2, e) => {
23004
+ var bS = H(createSelector(Y, (a2) => a2 == null ? void 0 : a2.name));
23005
+ var AS = H(createSelector(Y, (a2) => a2 == null ? void 0 : a2.type));
23006
+ var Ri = H(ss);
23007
+ var Oa = H(nn);
23008
+ var IS = H(cn);
23009
+ var RS = H(dn);
23010
+ var HS = H(ln);
23011
+ var pn = H((a2, e) => {
22387
23012
  let t = Y(a2, e);
22388
23013
  if (t && t.videoTrack && t.videoTrack !== "")
22389
23014
  return a2.tracks[t.videoTrack];
22390
23015
  });
22391
- var on = H((a2, e) => {
23016
+ var hn = H((a2, e) => {
22392
23017
  let t = Y(a2, e);
22393
23018
  if (t && t.audioTrack && t.audioTrack !== "")
22394
23019
  return a2.tracks[t.audioTrack];
22395
23020
  });
22396
- var ES = H((a2, e) => {
23021
+ var LS = H((a2, e) => {
22397
23022
  let t = Y(a2, e);
22398
23023
  return (t == null ? void 0 : t.auxiliaryTracks.map((i) => a2.tracks[i])) || [];
22399
23024
  });
22400
- var Ca = (a2, e) => e ? a2.speakers[e] : null;
22401
- var PS = H(createSelector(Ca, (a2) => (a2 == null ? void 0 : a2.audioLevel) || 0));
22402
- var nn = (a2, e) => {
22403
- let t = on(e)(a2);
22404
- return Ca(a2, t == null ? void 0 : t.id);
22405
- };
22406
- var bS = H(createSelector(nn, (a2) => (a2 == null ? void 0 : a2.audioLevel) || 0));
22407
- var AS = H((a2, e) => {
23025
+ var xa = (a2, e) => e ? a2.speakers[e] : null;
23026
+ var DS = H(createSelector(xa, (a2) => (a2 == null ? void 0 : a2.audioLevel) || 0));
23027
+ var mn = (a2, e) => {
23028
+ let t = hn(e)(a2);
23029
+ return xa(a2, t == null ? void 0 : t.id);
23030
+ };
23031
+ var wS = H(createSelector(mn, (a2) => (a2 == null ? void 0 : a2.audioLevel) || 0));
23032
+ var _S = H((a2, e) => {
22408
23033
  if (e)
22409
23034
  return a2.connectionQualities[e];
22410
23035
  });
22411
- var IS = H((a2, e) => {
23036
+ var NS = H((a2, e) => {
22412
23037
  let t = Y(a2, e);
22413
23038
  if (t) {
22414
- let i = t == null ? void 0 : t.auxiliaryTracks.find((r) => gt(a2.tracks[r]));
23039
+ let i = t == null ? void 0 : t.auxiliaryTracks.find((r) => Tt(a2.tracks[r]));
22415
23040
  return i ? a2.tracks[i] : void 0;
22416
23041
  }
22417
23042
  });
22418
- var RS = H(createSelector(N, Y, (a2, e) => {
23043
+ var OS2 = H(createSelector(N, Y, (a2, e) => {
22419
23044
  let t = e == null ? void 0 : e.auxiliaryTracks.find((i) => {
22420
23045
  let r = a2[i];
22421
- return ft(r) && Tt(r);
23046
+ return vt(r) && ft(r);
22422
23047
  });
22423
23048
  return t ? a2[t] : void 0;
22424
23049
  }));
22425
- var HS = H(createSelector(N, Y, (a2, e) => {
23050
+ var xS = H(createSelector(N, Y, (a2, e) => {
22426
23051
  let t = e == null ? void 0 : e.auxiliaryTracks.find((i) => {
22427
23052
  let r = a2[i];
22428
- return ft(r) && gt(r);
23053
+ return vt(r) && Tt(r);
22429
23054
  });
22430
23055
  return t ? a2[t] : void 0;
22431
23056
  }));
22432
- var CS = H(createSelector(N, Y, (a2, e) => {
23057
+ var US = H(createSelector(N, Y, (a2, e) => {
22433
23058
  let t = e == null ? void 0 : e.auxiliaryTracks.find((i) => {
22434
23059
  let r = a2[i];
22435
- return ci(r) && gt(r);
23060
+ return li(r) && Tt(r);
22436
23061
  });
22437
23062
  return t ? a2[t] : void 0;
22438
23063
  }));
22439
- var La = H(createSelector(N, Y, (a2, e) => Fe(a2, e)));
22440
- var Da = (a2) => createSelector(La(a2), (e) => e.audio);
22441
- var DS = H((a2, e) => {
23064
+ var Ua = H(createSelector(N, Y, (a2, e) => Ge(a2, e)));
23065
+ var Ba = (a2) => createSelector(Ua(a2), (e) => e.audio);
23066
+ var VS = H((a2, e) => {
22442
23067
  let t = Y(a2, e);
22443
- return ze(a2, t == null ? void 0 : t.audioTrack);
23068
+ return Ye(a2, t == null ? void 0 : t.audioTrack);
22444
23069
  });
22445
- var wS = H((a2, e) => {
23070
+ var FS = H((a2, e) => {
22446
23071
  let t = Y(a2, e);
22447
- return ze(a2, t == null ? void 0 : t.videoTrack);
23072
+ return Ye(a2, t == null ? void 0 : t.videoTrack);
22448
23073
  });
22449
- var wa = H((a2, e) => {
23074
+ var Va = H((a2, e) => {
22450
23075
  if (e && a2.tracks[e])
22451
23076
  return a2.tracks[e].volume === 0;
22452
23077
  });
22453
- var _S = H((a2, e) => {
23078
+ var GS = H((a2, e) => {
22454
23079
  let t = Y(a2, e);
22455
- return wa(t == null ? void 0 : t.audioTrack)(a2);
23080
+ return Va(t == null ? void 0 : t.audioTrack)(a2);
22456
23081
  });
22457
- var NS = H((a2, e) => {
22458
- let t = Da(e)(a2);
22459
- return wa(t == null ? void 0 : t.id)(a2);
23082
+ var WS = H((a2, e) => {
23083
+ let t = Ba(e)(a2);
23084
+ return Va(t == null ? void 0 : t.id)(a2);
22460
23085
  });
22461
- var _a7 = H((a2, e) => {
22462
- let t = ts(a2, e);
23086
+ var Fa = H((a2, e) => {
23087
+ let t = ss(a2, e);
22463
23088
  if (t) {
22464
23089
  if (t.type !== "audio") {
22465
23090
  b.w("Please pass audio track here");
@@ -22468,16 +23093,16 @@ var _a7 = H((a2, e) => {
22468
23093
  return t.volume;
22469
23094
  }
22470
23095
  });
22471
- var OS = H((a2, e) => {
23096
+ var $S = H((a2, e) => {
22472
23097
  let t = Y(a2, e);
22473
- return _a7(t == null ? void 0 : t.audioTrack)(a2);
23098
+ return Fa(t == null ? void 0 : t.audioTrack)(a2);
22474
23099
  });
22475
- var xS = H((a2, e) => {
22476
- let t = Da(e)(a2);
22477
- return _a7(t == null ? void 0 : t.id)(a2);
23100
+ var KS = H((a2, e) => {
23101
+ let t = Ba(e)(a2);
23102
+ return Fa(t == null ? void 0 : t.id)(a2);
22478
23103
  });
22479
- var US = H((a2, e) => {
22480
- let t = ts(a2, e);
23104
+ var qS = H((a2, e) => {
23105
+ let t = ss(a2, e);
22481
23106
  if (t) {
22482
23107
  if (t.type !== "video") {
22483
23108
  b.w("Please pass video track here");
@@ -22486,50 +23111,50 @@ var US = H((a2, e) => {
22486
23111
  return t.layer;
22487
23112
  }
22488
23113
  });
22489
- var Na = createSelector([Dt, Ie, es], (a2, e, t) => {
23114
+ var Ga = createSelector([_t, Ie, rs], (a2, e, t) => {
22490
23115
  if (t)
22491
23116
  return a2.filter((i) => {
22492
23117
  var r;
22493
23118
  return !i.recipientPeer && !((r = i.recipientRoles) != null && r.length) || i.sender && ![e, t].includes(i.sender) ? false : [e, t].includes(i.recipientPeer);
22494
23119
  });
22495
23120
  });
22496
- var Oa = createSelector([Dt, Ra], (a2, e) => {
23121
+ var Wa = createSelector([_t, Na], (a2, e) => {
22497
23122
  if (e)
22498
23123
  return a2.filter((t) => {
22499
23124
  var i, r;
22500
23125
  return (i = t.recipientRoles) != null && i.length ? (r = t.recipientRoles) == null ? void 0 : r.includes(e) : false;
22501
23126
  });
22502
23127
  });
22503
- var cn = createSelector(Dt, (a2) => a2.filter((e) => {
23128
+ var Sn = createSelector(_t, (a2) => a2.filter((e) => {
22504
23129
  var t;
22505
23130
  return !e.recipientPeer && !((t = e.recipientRoles) != null && t.length);
22506
23131
  }));
22507
- var dn = createSelector([Oa, Ra], (a2) => a2 ? a2.filter((e) => !e.read).length : 0);
22508
- var ln = createSelector([Na, es], (a2) => a2 ? a2.filter((e) => !e.read).length : 0);
22509
- var BS = createSelector(cn, (a2) => a2.filter((e) => !e.read).length);
22510
- var VS = H(Na);
22511
- var FS = H(Oa);
22512
- var GS = H(dn);
22513
- var WS = H(ln);
22514
- var xa = H(sn);
22515
- var tg = createSelector([z, N], (a2, e) => Object.values(a2).map((i) => {
23132
+ var gn = createSelector([Wa, Na], (a2) => a2 ? a2.filter((e) => !e.read).length : 0);
23133
+ var Tn = createSelector([Ga, rs], (a2) => a2 ? a2.filter((e) => !e.read).length : 0);
23134
+ var jS = createSelector(Sn, (a2) => a2.filter((e) => !e.read).length);
23135
+ var JS = H(Ga);
23136
+ var QS = H(Wa);
23137
+ var zS = H(gn);
23138
+ var YS = H(Tn);
23139
+ var $a = H(un);
23140
+ var dg = createSelector([z, N], (a2, e) => Object.values(a2).map((i) => {
22516
23141
  var r;
22517
23142
  return { peer: i, isAudioEnabled: i.audioTrack ? (r = e[i.audioTrack]) == null ? void 0 : r.enabled : false };
22518
23143
  }));
22519
- var un = (a2) => a2.roleChangeRequests[0] || null;
22520
- 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);
22521
- var rg = createSelector([ct], (a2) => vt(a2));
22522
- var sg = createSelector([Sa], (a2) => vt(a2));
22523
- var hn = createSelector([Z, N], (a2, e) => {
23144
+ var fn = (a2) => a2.roleChangeRequests[0] || null;
23145
+ 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);
23146
+ var ug = createSelector([dt], (a2) => Mt(a2));
23147
+ var pg = createSelector([ka], (a2) => Mt(a2));
23148
+ var Mn = createSelector([Z, N], (a2, e) => {
22524
23149
  let t = null;
22525
23150
  return a2 && (t = e[a2]), (t == null ? void 0 : t.plugins) || [];
22526
23151
  });
22527
- var mn = createSelector([le, N], (a2, e) => {
23152
+ var yn = createSelector([le, N], (a2, e) => {
22528
23153
  let t = null;
22529
23154
  return a2 && (t = e[a2]), (t == null ? void 0 : t.plugins) || [];
22530
23155
  });
22531
- 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 || {});
22532
- var os = class {
23156
+ 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 || {});
23157
+ var ds = class {
22533
23158
  constructor() {
22534
23159
  this.TAG = "[HTTPAnalyticsTransport]";
22535
23160
  this.failedEvents = new ve("client-events");
@@ -22548,7 +23173,7 @@ var os = class {
22548
23173
  this.addEventToStorage(e);
22549
23174
  return;
22550
23175
  }
22551
- 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;
23176
+ 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;
22552
23177
  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) => {
22553
23178
  if (r.status === 401) {
22554
23179
  this.removeFromStorage(e);
@@ -22574,8 +23199,8 @@ var os = class {
22574
23199
  i > -1 && (t.splice(i, 1), this.failedEvents.set(t));
22575
23200
  }
22576
23201
  };
22577
- var He = new os();
22578
- var $t = class {
23202
+ var He = new ds();
23203
+ var qt = class {
22579
23204
  static handleError(e) {
22580
23205
  if (e.status === 404)
22581
23206
  throw S.APIErrors.EndpointUnreachable("FEEDBACK", e.statusText);
@@ -22601,67 +23226,67 @@ var $t = class {
22601
23226
  });
22602
23227
  }
22603
23228
  };
22604
- $t.TAG = "[FeedbackService]";
22605
- 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 || {});
23229
+ qt.TAG = "[FeedbackService]";
23230
+ 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 || {});
22606
23231
  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 || {});
22607
- 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 || {});
22608
- var ht = ((t) => (t[t.Publish = 0] = "Publish", t[t.Subscribe = 1] = "Subscribe", t))(ht || {});
22609
- var Un = (a2) => a2.localPeer.id;
22610
- var Bn = (a2) => a2.localPeer.audioTrack;
22611
- var Vn = (a2) => a2.localPeer.videoTrack;
22612
- var Fn = (a2, e) => e;
22613
- var oo = (a2, e) => e;
22614
- var Gn = (a2) => a2.remoteTrackStats;
22615
- var no = (a2) => a2.peerStats;
22616
- var us = (a2) => a2.localTrackStats;
22617
- var Le = createSelector([no, Un], (a2, e) => a2[e]);
22618
- var Wn = createSelector(Le, (a2) => {
23232
+ 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 || {});
23233
+ var mt = ((t) => (t[t.Publish = 0] = "Publish", t[t.Subscribe = 1] = "Subscribe", t))(mt || {});
23234
+ var Kn = (a2) => a2.localPeer.id;
23235
+ var qn = (a2) => a2.localPeer.audioTrack;
23236
+ var jn = (a2) => a2.localPeer.videoTrack;
23237
+ var Jn = (a2, e) => e;
23238
+ var mo = (a2, e) => e;
23239
+ var Qn = (a2) => a2.remoteTrackStats;
23240
+ var So = (a2) => a2.peerStats;
23241
+ var ms = (a2) => a2.localTrackStats;
23242
+ var Le = createSelector([So, Kn], (a2, e) => a2[e]);
23243
+ var zn = createSelector(Le, (a2) => {
22619
23244
  var e;
22620
23245
  return (e = a2 == null ? void 0 : a2.subscribe) == null ? void 0 : e.packetsLost;
22621
23246
  });
22622
- var $n = createSelector(Le, (a2) => {
23247
+ var Yn = createSelector(Le, (a2) => {
22623
23248
  var e;
22624
23249
  return (e = a2 == null ? void 0 : a2.subscribe) == null ? void 0 : e.jitter;
22625
23250
  });
22626
- var Kn = createSelector(Le, (a2) => {
23251
+ var Xn = createSelector(Le, (a2) => {
22627
23252
  var e;
22628
23253
  return (e = a2 == null ? void 0 : a2.publish) == null ? void 0 : e.bitrate;
22629
23254
  });
22630
- var qn = createSelector(Le, (a2) => {
23255
+ var Zn = createSelector(Le, (a2) => {
22631
23256
  var e;
22632
23257
  return (e = a2 == null ? void 0 : a2.subscribe) == null ? void 0 : e.bitrate;
22633
23258
  });
22634
- var jn = createSelector(Le, (a2) => {
23259
+ var ec = createSelector(Le, (a2) => {
22635
23260
  var e;
22636
23261
  return (e = a2 == null ? void 0 : a2.publish) == null ? void 0 : e.availableOutgoingBitrate;
22637
23262
  });
22638
- var Jn = createSelector(Le, (a2) => {
23263
+ var tc = createSelector(Le, (a2) => {
22639
23264
  var e;
22640
23265
  return (e = a2 == null ? void 0 : a2.subscribe) == null ? void 0 : e.availableIncomingBitrate;
22641
23266
  });
22642
- var Qn = createSelector(Le, (a2) => {
23267
+ var ic = createSelector(Le, (a2) => {
22643
23268
  var e;
22644
23269
  return (e = a2 == null ? void 0 : a2.publish) == null ? void 0 : e.bytesSent;
22645
23270
  });
22646
- var zn = createSelector(Le, (a2) => {
23271
+ var rc = createSelector(Le, (a2) => {
22647
23272
  var e;
22648
23273
  return (e = a2 == null ? void 0 : a2.subscribe) == null ? void 0 : e.bytesReceived;
22649
23274
  });
22650
- var Yn = createSelector([no, Fn], (a2, e) => e ? a2[e] : void 0);
22651
- var Xn = createSelector([Gn, oo], (a2, e) => e ? a2[e] : void 0);
22652
- var ps = createSelector([us, oo], (a2, e) => e ? a2[e] : void 0);
22653
- var Zn = H(Yn);
22654
- var ec = H(Xn);
22655
- var tc = createSelector([us, Bn], (a2, e) => {
23275
+ var sc = createSelector([So, Jn], (a2, e) => e ? a2[e] : void 0);
23276
+ var ac = createSelector([Qn, mo], (a2, e) => e ? a2[e] : void 0);
23277
+ var Ss = createSelector([ms, mo], (a2, e) => e ? a2[e] : void 0);
23278
+ var oc = H(sc);
23279
+ var nc = H(ac);
23280
+ var cc = createSelector([ms, qn], (a2, e) => {
22656
23281
  var t;
22657
23282
  return e ? (t = a2[e]) == null ? void 0 : t[0] : void 0;
22658
23283
  });
22659
- var ic = H(createSelector(ps, (a2) => a2 == null ? void 0 : a2[0]));
22660
- var rc = createSelector([us, Vn], (a2, e) => {
23284
+ var dc = H(createSelector(Ss, (a2) => a2 == null ? void 0 : a2[0]));
23285
+ var lc = createSelector([ms, jn], (a2, e) => {
22661
23286
  var t;
22662
23287
  return e ? (t = a2[e]) == null ? void 0 : t[0] : void 0;
22663
23288
  });
22664
- var sc = H(createSelector(ps, (a2) => a2));
23289
+ var uc = H(createSelector(Ss, (a2) => a2));
22665
23290
 
22666
23291
  // src/Prebuilt/components/Header/StreamActions.tsx
22667
23292
  import {
@@ -22780,7 +23405,7 @@ var RecordingStatus = () => {
22780
23405
  };
22781
23406
  var RecordingPauseStatus = () => {
22782
23407
  const recording = useHMSStore29(selectRecordingState2);
22783
- if (recording.hls && recording.hls.state === Bs.PAUSED) {
23408
+ if (recording.hls && recording.hls.state === qs.PAUSED) {
22784
23409
  return /* @__PURE__ */ React64.createElement(
22785
23410
  Tooltip,
22786
23411
  {
@@ -27638,7 +28263,7 @@ var Chat = () => {
27638
28263
  const listRef = useRef26(null);
27639
28264
  const hmsActions = useHMSActions42();
27640
28265
  const vanillaStore = useHMSVanillaStore11();
27641
- const { enabled: isChatEnabled = true } = useHMSStore61(SS("chatState" /* CHAT_STATE */)) || {};
28266
+ const { enabled: isChatEnabled = true } = useHMSStore61(ES("chatState" /* CHAT_STATE */)) || {};
27642
28267
  const isMobile = useMedia20(config.media.md);
27643
28268
  const isMobileHLSStream = useMobileHLSStream();
27644
28269
  const isLandscapeStream = useLandscapeHLSStream();
@@ -27728,7 +28353,7 @@ var NewMessageIndicator = ({
27728
28353
  scrollToBottom,
27729
28354
  listRef
27730
28355
  }) => {
27731
- const unreadCount = useHMSStore61(xm);
28356
+ const unreadCount = useHMSStore61(Km);
27732
28357
  if (!unreadCount || !listRef.current) {
27733
28358
  return null;
27734
28359
  }
@@ -28741,7 +29366,7 @@ var VBPicker = ({ backgroundMedia = [] }) => {
28741
29366
  const toggleVB = useSidepaneToggle(SIDE_PANE_OPTIONS.VB);
28742
29367
  const hmsActions = useHMSActions45();
28743
29368
  const localPeer = useHMSStore69(selectLocalPeer8);
28744
- const role = useHMSStore69(ct);
29369
+ const role = useHMSStore69(dt);
28745
29370
  const isVideoOn = useHMSStore69(selectIsLocalVideoEnabled6);
28746
29371
  const mirrorLocalVideo = useUISettings(UI_SETTINGS.mirrorLocalVideo);
28747
29372
  const trackSelector = selectVideoTrackByID4(localPeer == null ? void 0 : localPeer.videoTrack);
@@ -28750,12 +29375,12 @@ var VBPicker = ({ backgroundMedia = [] }) => {
28750
29375
  const roomState = useHMSStore69(selectRoomState6);
28751
29376
  const isLargeRoom = useHMSStore69(selectIsLargeRoom3);
28752
29377
  const isEffectsSupported = VBHandler.isEffectsSupported();
28753
- const isEffectsEnabled = useHMSStore69(zm);
28754
- const effectsKey = useHMSStore69(Xm);
29378
+ const isEffectsEnabled = useHMSStore69(sS);
29379
+ const effectsKey = useHMSStore69(oS);
28755
29380
  const isMobile = useMedia24(config.media.md);
28756
29381
  const [loadingEffects, setLoadingEffects] = useSetAppDataByKey(APP_DATA.loadingEffects);
28757
29382
  const isPluginAdded = useHMSStore69(selectIsLocalVideoPluginPresent(((_a8 = VBHandler) == null ? void 0 : _a8.getName()) || ""));
28758
- const background = useHMSStore69(mS(APP_DATA.background));
29383
+ const background = useHMSStore69(kS(APP_DATA.background));
28759
29384
  const mediaList = backgroundMedia.map((media) => media.url || "");
28760
29385
  const pluginLoadingRef = useRef27(false);
28761
29386
  const isBlurSupported = (_b7 = VBHandler) == null ? void 0 : _b7.isBlurSupported();
@@ -34591,8 +35216,8 @@ import { useEffect as useEffect75 } from "react";
34591
35216
  import { useAwayNotifications as useAwayNotifications5, useHMSNotifications as useHMSNotifications8, useHMSStore as useHMSStore92 } from "@100mslive/react-sdk";
34592
35217
  var MessageNotifications = () => {
34593
35218
  var _a8, _b7;
34594
- const notification = useHMSNotifications8(Pr.NEW_MESSAGE);
34595
- const amIScreenSharing = useHMSStore92(Xr);
35219
+ const notification = useHMSNotifications8(br.NEW_MESSAGE);
35220
+ const amIScreenSharing = useHMSStore92(ts);
34596
35221
  const logoURL = (_b7 = (_a8 = useRoomLayout()) == null ? void 0 : _a8.logo) == null ? void 0 : _b7.url;
34597
35222
  const { pipWindow } = usePIPWindow();
34598
35223
  const { showNotification } = useAwayNotifications5();