@100mslive/roomkit-react 0.3.8-alpha.4 → 0.3.9-alpha.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -8,6 +8,7 @@ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
8
  var __getProtoOf = Object.getPrototypeOf;
9
9
  var __hasOwnProp = Object.prototype.hasOwnProperty;
10
10
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
+ var __pow = Math.pow;
11
12
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
13
  var __spreadValues = (a2, b2) => {
13
14
  for (var prop in b2 || (b2 = {}))
@@ -106,7 +107,7 @@ var __async = (__this, __arguments, generator) => {
106
107
  var define_process_env_default;
107
108
  var init_define_process_env = __esm({
108
109
  "<define:process.env>"() {
109
- define_process_env_default = { GITHUB_STATE: "/home/runner/work/_temp/_runner_file_commands/save_state_99ff87f3-70ec-4a4f-affe-f5887196edd9", npm_package_devDependencies_ts_node: "^10.4.0", npm_package_devDependencies__types_node: "^16.11.17", npm_package_devDependencies_rollup: "^2.70.1", npm_package_exports___require: "./dist/index.cjs.js", STATS_TRP: "true", DEPLOYMENT_BASEPATH: "/opt/runner", 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", USER: "runner", npm_package_devDependencies_jest: "26.6.0", npm_config_version_commit_hooks: "true", npm_config_user_agent: "yarn/1.22.22 npm/? node/v18.20.2 linux x64", npm_config_always_auth: "", NX_WORKSPACE_ROOT: "/home/runner/work/web-sdks/web-sdks", npm_package_devDependencies__rollup_plugin_node_resolve: "^13.1.3", 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.8-alpha.4", RUNNER_ENVIRONMENT: "github-hosted", GITHUB_ENV: "/home/runner/work/_temp/_runner_file_commands/set_env_99ff87f3-70ec-4a4f-affe-f5887196edd9", PIPX_HOME: "/opt/pipx", npm_node_execpath: "/opt/hostedtoolcache/node/18.20.2/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.8-alpha.4", 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.8", 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.2.8", 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-8.7", ANDROID_NDK_LATEST_HOME: "/usr/local/lib/android/sdk/ndk/26.3.11579264", JAVA_HOME_21_X64: "/usr/lib/jvm/temurin-21-jdk-amd64", STATS_RDCL: "true", GITHUB_RETENTION_DAYS: "90", YARN_WRAP_OUTPUT: "false", npm_config_version_tag_prefix: "v", GITHUB_REPOSITORY_OWNER_ID: "73883131", POWERSHELL_DISTRIBUTION_CHANNEL: "GitHub-Actions-ubuntu22", 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: "597", npm_package_scripts_postinstall: "husky install && lerna bootstrap", 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_devDependencies__rollup_plugin_image: "^3.0.2", npm_package_keywords_1: "react", GOROOT_1_20_X64: "/opt/hostedtoolcache/go/1.20.14/x64", 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", GOROOT_1_21_X64: "/opt/hostedtoolcache/go/1.21.9/x64", JAVA_HOME_17_X64: "/usr/lib/jvm/temurin-17-jdk-amd64", ImageVersion: "20240414.1.0", npm_package_devDependencies_prettier: "^2.4.1", npm_package_devDependencies_babel_jest: "^26.6.0", npm_package_scripts_dev: "node ../../scripts/dev", npm_package_keywords_3: "roomkit", RUNNER_OS: "Linux", GITHUB_API_URL: "https://api.github.com", GOROOT_1_22_X64: "/opt/hostedtoolcache/go/1.22.2/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", RUNNER_USER: "runner", STATS_V3PS: "true", CHROMEWEBDRIVER: "/usr/local/share/chromedriver-linux64", JOURNAL_STREAM: "8:17353", GITHUB_WORKFLOW: "Publish Packages", _: "/usr/local/bin/yarn", npm_package_devDependencies_ts_jest: "26.5.6", npm_package_devDependencies_lerna: "^5.6.2", npm_package_devDependencies__types_jest: "^27.0.3", npm_package_devDependencies__commitlint_config_conventional: "^15.0.0", npm_package_private: "true", npm_package_dependencies__radix_ui_react_accordion: "1.0.0", npm_package_devDependencies__rollup_plugin_commonjs: "^21.0.3", npm_package_devDependencies__babel_preset_react: "^7.22.5", npm_package_module: "dist/index.js", 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.8-alpha.4", npm_package_devDependencies__types_lodash_merge: "^4.6.6", npm_package_devDependencies__storybook_cli: "^7.0.27", npm_package_devDependencies__rollup_plugin_json: "^6.0.0", ACTIONS_RUNNER_ACTION_ARCHIVE_CACHE: "/opt/actionarchivecache", STATS_D: "false", GITHUB_RUN_ID: "8749330041", STATS_VMFE: "true", 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: "1ac0f11a034d8e0aed06479e20671c86bffd77f8", GITHUB_BASE_REF: "", ImageOS: "ubuntu22", npm_package_workspaces_1: "examples/*", npm_package_scripts_start: 'concurrently "yarn dev" "yarn types"', npm_config_ignore_scripts: "", NX_TASK_HASH: "fca5e903c9a2399e3cdd373a0e29fd3a22d2c47d2154454f738eee43975db61a", npm_package_exports___import: "./dist/index.js", GITHUB_WORKFLOW_REF: "100mslive/web-sdks/.github/workflows/publish.yml@refs/heads/publish-alpha", PERFLOG_LOCATION_SETTING: "RUNNER_PERFLOG", GITHUB_ACTION_REPOSITORY: "", 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--1713507861459-0.8404529433065979:/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.2/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/bin/node_modules/npm/bin/node-gyp-bin:/tmp/yarn--1713507861261-0.435899755627573:/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.2/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/bin/node_modules/npm/bin/node-gyp-bin:/tmp/yarn--1713507839160-0.06303379929561603:/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.2/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/bin/node_modules/npm/bin/node-gyp-bin:/tmp/yarn--1713507838975-0.7068313429725521:/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.2/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/bin/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/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.2/x64/bin/node", ANT_HOME: "/usr/share/ant", DOTNET_MULTILEVEL_LOOKUP: "0", RUNNER_TRACKING_ID: "github_613f38a3-ba05-4673-afed-2c4e52ebfa99", INVOCATION_ID: "9934528957ed4a47acf8a3a1df0d25e2", 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: "519", GITHUB_TRIGGERING_ACTOR: "github-actions[bot]", 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: "^15.0.0", npm_package_devDependencies__rollup_plugin_typescript: "^8.3.1", 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_devDependencies_rollup_plugin_terser: "^7.0.2", npm_package_devDependencies__types_mdx: "2.0.2", CONDA: "/usr/share/miniconda", RUNNER_NAME: "GitHub Actions 262", XDG_CONFIG_HOME: "/home/runner/.config", STATS_VMD: "true", GITHUB_REF_NAME: "publish-alpha", GITHUB_REPOSITORY: "100mslive/web-sdks", STATS_D_D: "false", 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_devDependencies_rollup_plugin_import_css: "^3.3.1", npm_package_scripts_types_build: "tsc -p tsconfig.json", npm_package_main: "dist/index.cjs.js", STATS_UE: "true", ANDROID_NDK_ROOT: "/usr/local/lib/android/sdk/ndk/25.2.9519653", 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_cypress_open: "cypress open", 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.8-alpha.4", npm_package_scripts_types: "tsc -w", GITHUB_REPOSITORY_ID: "429826515", GITHUB_ACTIONS: "true", npm_lifecycle_event: "build:only", npm_package_version: "0.3.8-alpha.4", npm_package_size_limit_4_limit: "20 KB", npm_package_size_limit_1_path: "packages/hms-video-store/dist/index.js", npm_package_scripts_build_only: "rm -rf dist && node ../../scripts/build-webapp", 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", RUNNER_PERFLOG: "/home/runner/perflog", npm_package_size_limit_6_limit: "150 KB", npm_package_size_limit_3_path: "packages/roomkit-react/dist/index.js", npm_package_devDependencies_cypress: "^9.5.2", npm_package_devDependencies_rollup_plugin_esbuild: "^5.0.0", GITHUB_SHA: "1ac0f11a034d8e0aed06479e20671c86bffd77f8", 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_config_version_git_tag: "true", npm_config_version_git_sign: "", npm_package_dependencies_qrcode_react: "^3.1.0", GITHUB_REF: "refs/heads/publish-alpha", GITHUB_ACTOR: "github-actions[bot]", 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", LEIN_HOME: "/usr/local/lib/lein", 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_99ff87f3-70ec-4a4f-affe-f5887196edd9", JAVA_HOME: "/usr/lib/jvm/temurin-11-jdk-amd64", PWD: "/home/runner/work/web-sdks/web-sdks/packages/roomkit-react", GITHUB_ACTOR_ID: "41898282", 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", STATS_TIS: "mining", 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", LEIN_JAR: "/usr/local/lib/lein/self-installs/leiningen-2.11.2-standalone.jar", GHCUP_INSTALL_BASE_PREFIX: "/usr/local", GITHUB_OUTPUT: "/home/runner/work/_temp/_runner_file_commands/set_output_99ff87f3-70ec-4a4f-affe-f5887196edd9", npm_package_scripts_prestart: "rm -rf dist && yarn types:build", npm_package_author_name: "100ms", EDGEWEBDRIVER: "/usr/local/share/edge_driver", STATS_EXT: "true", 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/25.2.9519653", 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", STATS_EXTP: "https://provjobdsettingscdn.blob.core.windows.net/settings/provjobdsettings-0.5.172+1/provjobd.data", 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__storybook_react: "^7.0.27", INIT_CWD: "/home/runner/work/web-sdks/web-sdks", ANDROID_NDK_HOME: "/usr/local/lib/android/sdk/ndk/25.2.9519653", GITHUB_STEP_SUMMARY: "/home/runner/work/_temp/_runner_file_commands/step_summary_99ff87f3-70ec-4a4f-affe-f5887196edd9" };
110
+ define_process_env_default = { GITHUB_STATE: "/home/runner/work/_temp/_runner_file_commands/save_state_c0d9e187-ac5f-4a2f-88a1-f6d6f26858ad", npm_package_devDependencies_ts_node: "^10.4.0", npm_package_devDependencies__types_node: "^16.11.17", npm_package_devDependencies_rollup: "^2.70.1", npm_package_exports___require: "./dist/index.cjs.js", STATS_TRP: "true", DEPLOYMENT_BASEPATH: "/opt/runner", 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", USER: "runner", npm_package_devDependencies_jest: "26.6.0", npm_config_version_commit_hooks: "true", npm_config_user_agent: "yarn/1.22.22 npm/? node/v18.20.2 linux x64", npm_config_always_auth: "", NX_WORKSPACE_ROOT: "/home/runner/work/web-sdks/web-sdks", npm_package_devDependencies__rollup_plugin_node_resolve: "^13.1.3", 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.9-alpha.0", RUNNER_ENVIRONMENT: "github-hosted", GITHUB_ENV: "/home/runner/work/_temp/_runner_file_commands/set_env_c0d9e187-ac5f-4a2f-88a1-f6d6f26858ad", PIPX_HOME: "/opt/pipx", npm_node_execpath: "/opt/hostedtoolcache/node/18.20.2/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.9-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.8", 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.2.8", 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-8.7", ANDROID_NDK_LATEST_HOME: "/usr/local/lib/android/sdk/ndk/26.3.11579264", JAVA_HOME_21_X64: "/usr/lib/jvm/temurin-21-jdk-amd64", STATS_RDCL: "true", GITHUB_RETENTION_DAYS: "90", YARN_WRAP_OUTPUT: "false", npm_config_version_tag_prefix: "v", GITHUB_REPOSITORY_OWNER_ID: "73883131", POWERSHELL_DISTRIBUTION_CHANNEL: "GitHub-Actions-ubuntu22", 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: "600", npm_package_scripts_postinstall: "husky install && lerna bootstrap", 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_devDependencies__rollup_plugin_image: "^3.0.2", npm_package_keywords_1: "react", GOROOT_1_20_X64: "/opt/hostedtoolcache/go/1.20.14/x64", 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", GOROOT_1_21_X64: "/opt/hostedtoolcache/go/1.21.9/x64", JAVA_HOME_17_X64: "/usr/lib/jvm/temurin-17-jdk-amd64", ImageVersion: "20240414.1.0", npm_package_devDependencies_prettier: "^2.4.1", npm_package_devDependencies_babel_jest: "^26.6.0", npm_package_scripts_dev: "node ../../scripts/dev", npm_package_keywords_3: "roomkit", RUNNER_OS: "Linux", GITHUB_API_URL: "https://api.github.com", GOROOT_1_22_X64: "/opt/hostedtoolcache/go/1.22.2/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", RUNNER_USER: "runner", STATS_V3PS: "true", CHROMEWEBDRIVER: "/usr/local/share/chromedriver-linux64", JOURNAL_STREAM: "8:16204", GITHUB_WORKFLOW: "Publish Packages", _: "/usr/local/bin/yarn", npm_package_devDependencies_ts_jest: "26.5.6", npm_package_devDependencies_lerna: "^5.6.2", npm_package_devDependencies__types_jest: "^27.0.3", npm_package_devDependencies__commitlint_config_conventional: "^15.0.0", npm_package_private: "true", npm_package_dependencies__radix_ui_react_accordion: "1.0.0", npm_package_devDependencies__rollup_plugin_commonjs: "^21.0.3", npm_package_devDependencies__babel_preset_react: "^7.22.5", npm_package_module: "dist/index.js", 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.9-alpha.0", npm_package_devDependencies__types_lodash_merge: "^4.6.6", npm_package_devDependencies__storybook_cli: "^7.0.27", npm_package_devDependencies__rollup_plugin_json: "^6.0.0", ACTIONS_RUNNER_ACTION_ARCHIVE_CACHE: "/opt/actionarchivecache", STATS_D: "false", GITHUB_RUN_ID: "8795813995", STATS_VMFE: "true", 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: "0e749918d6dddfed6208acd8e4dbfed267cc751e", GITHUB_BASE_REF: "", ImageOS: "ubuntu22", npm_package_workspaces_1: "examples/*", npm_package_scripts_start: 'concurrently "yarn dev" "yarn types"', npm_config_ignore_scripts: "", NX_TASK_HASH: "c73f7ad0d8d76d694d83c573acd5cbeb5644d9153d2bffed5630e8b5a3da6760", npm_package_exports___import: "./dist/index.js", STATS_BLT: "true", GITHUB_WORKFLOW_REF: "100mslive/web-sdks/.github/workflows/publish.yml@refs/heads/publish-alpha", PERFLOG_LOCATION_SETTING: "RUNNER_PERFLOG", GITHUB_ACTION_REPOSITORY: "", 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--1713853590495-0.9320070312950524:/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.2/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/bin/node_modules/npm/bin/node-gyp-bin:/tmp/yarn--1713853590298-0.6572167270280693:/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.2/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/bin/node_modules/npm/bin/node-gyp-bin:/tmp/yarn--1713853568287-0.2407608006522226:/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.2/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/bin/node_modules/npm/bin/node-gyp-bin:/tmp/yarn--1713853568112-0.40798663439255645:/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.2/x64/libexec/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/lib/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/x64/bin/node_modules/npm/bin/node-gyp-bin:/opt/hostedtoolcache/node/18.20.2/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.2/x64/bin/node", ANT_HOME: "/usr/share/ant", DOTNET_MULTILEVEL_LOOKUP: "0", RUNNER_TRACKING_ID: "github_de27e526-2315-43bf-9e3a-967b5769c1eb", INVOCATION_ID: "ae9ae8e32e914b8886baff95608745f2", 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: "521", GITHUB_TRIGGERING_ACTOR: "github-actions[bot]", 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: "^15.0.0", npm_package_devDependencies__rollup_plugin_typescript: "^8.3.1", 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_devDependencies_rollup_plugin_terser: "^7.0.2", npm_package_devDependencies__types_mdx: "2.0.2", CONDA: "/usr/share/miniconda", RUNNER_NAME: "GitHub Actions 445", XDG_CONFIG_HOME: "/home/runner/.config", STATS_VMD: "true", GITHUB_REF_NAME: "publish-alpha", GITHUB_REPOSITORY: "100mslive/web-sdks", STATS_D_D: "false", 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_devDependencies_rollup_plugin_import_css: "^3.3.1", npm_package_scripts_types_build: "tsc -p tsconfig.json", npm_package_main: "dist/index.cjs.js", STATS_UE: "true", ANDROID_NDK_ROOT: "/usr/local/lib/android/sdk/ndk/25.2.9519653", 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_cypress_open: "cypress open", 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.9-alpha.0", npm_package_scripts_types: "tsc -w", GITHUB_REPOSITORY_ID: "429826515", GITHUB_ACTIONS: "true", npm_lifecycle_event: "build:only", npm_package_version: "0.3.9-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_scripts_build_only: "rm -rf dist && node ../../scripts/build-webapp", 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", RUNNER_PERFLOG: "/home/runner/perflog", npm_package_size_limit_6_limit: "150 KB", npm_package_size_limit_3_path: "packages/roomkit-react/dist/index.js", npm_package_devDependencies_cypress: "^9.5.2", npm_package_devDependencies_rollup_plugin_esbuild: "^5.0.0", GITHUB_SHA: "0e749918d6dddfed6208acd8e4dbfed267cc751e", 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_config_version_git_tag: "true", npm_config_version_git_sign: "", npm_package_dependencies_qrcode_react: "^3.1.0", GITHUB_REF: "refs/heads/publish-alpha", GITHUB_ACTOR: "github-actions[bot]", 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", LEIN_HOME: "/usr/local/lib/lein", 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_c0d9e187-ac5f-4a2f-88a1-f6d6f26858ad", JAVA_HOME: "/usr/lib/jvm/temurin-11-jdk-amd64", PWD: "/home/runner/work/web-sdks/web-sdks/packages/roomkit-react", GITHUB_ACTOR_ID: "41898282", 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", STATS_TIS: "mining", 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", LEIN_JAR: "/usr/local/lib/lein/self-installs/leiningen-2.11.2-standalone.jar", GHCUP_INSTALL_BASE_PREFIX: "/usr/local", GITHUB_OUTPUT: "/home/runner/work/_temp/_runner_file_commands/set_output_c0d9e187-ac5f-4a2f-88a1-f6d6f26858ad", npm_package_scripts_prestart: "rm -rf dist && yarn types:build", npm_package_author_name: "100ms", EDGEWEBDRIVER: "/usr/local/share/edge_driver", STATS_EXT: "true", 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/25.2.9519653", 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", STATS_EXTP: "https://provjobdsettingscdn.blob.core.windows.net/settings/provjobdsettings-0.5.172+1/provjobd.data", 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__storybook_react: "^7.0.27", INIT_CWD: "/home/runner/work/web-sdks/web-sdks", ANDROID_NDK_HOME: "/usr/local/lib/android/sdk/ndk/25.2.9519653", GITHUB_STEP_SUMMARY: "/home/runner/work/_temp/_runner_file_commands/step_summary_c0d9e187-ac5f-4a2f-88a1-f6d6f26858ad" };
110
111
  }
111
112
  });
112
113
 
@@ -11160,9 +11161,9 @@ init_define_process_env();
11160
11161
  import React15, { Fragment } from "react";
11161
11162
  import {
11162
11163
  selectConnectionQualityByPeerID,
11163
- selectHMSStats,
11164
+ selectHMSStats as selectHMSStats2,
11164
11165
  simulcastMapping,
11165
- useHMSStatsStore,
11166
+ useHMSStatsStore as useHMSStatsStore2,
11166
11167
  useHMSStore
11167
11168
  } from "@100mslive/react-sdk";
11168
11169
 
@@ -11226,16 +11227,54 @@ var Stats = {
11226
11227
  Gap
11227
11228
  };
11228
11229
 
11230
+ // src/Stats/useQoE.ts
11231
+ init_define_process_env();
11232
+ import { useRef as useRef5 } from "react";
11233
+ import { usePrevious } from "react-use";
11234
+ import { selectHMSStats, useHMSStatsStore } from "@100mslive/react-sdk";
11235
+ var EXPECTED_RESOLUTION = 1280 * 720;
11236
+ var clip = (value, min_value, max_value) => {
11237
+ return Math.max(Math.min(value, max_value), min_value);
11238
+ };
11239
+ var useQoE = ({ videoTrackID, audioTrackID, isLocal = false }) => {
11240
+ const audioTrackStats = useHMSStatsStore(selectHMSStats.trackStatsByID(audioTrackID));
11241
+ const videoTrackStats = useHMSStatsStore(selectHMSStats.trackStatsByID(videoTrackID));
11242
+ const prevVideoTrackStats = usePrevious(videoTrackStats);
11243
+ const prevAudioTrackStats = usePrevious(audioTrackStats);
11244
+ const prevJitterBufferDelayMs = useRef5(0);
11245
+ if (isLocal || videoTrackID && !videoTrackStats || audioTrackID && !audioTrackStats) {
11246
+ return;
11247
+ }
11248
+ const resolutionNorm = ((videoTrackStats == null ? void 0 : videoTrackStats.frameWidth) || 0) * ((videoTrackStats == null ? void 0 : videoTrackStats.frameHeight) || 0) / EXPECTED_RESOLUTION;
11249
+ const framesDecodedInLastSec = (videoTrackStats == null ? void 0 : videoTrackStats.framesDecoded) && (prevVideoTrackStats == null ? void 0 : prevVideoTrackStats.framesDecoded) ? videoTrackStats.framesDecoded - prevVideoTrackStats.framesDecoded : 0;
11250
+ let freezeDurationNorm = 1 - (((videoTrackStats == null ? void 0 : videoTrackStats.totalFreezesDuration) || 0) - ((prevVideoTrackStats == null ? void 0 : prevVideoTrackStats.totalFreezesDuration) || 0));
11251
+ freezeDurationNorm = freezeDurationNorm < 0 ? 0.5 : freezeDurationNorm;
11252
+ freezeDurationNorm = framesDecodedInLastSec === 0 ? 0 : freezeDurationNorm;
11253
+ const fpsNorm = framesDecodedInLastSec / 30;
11254
+ const prevJBDelay = (prevVideoTrackStats == null ? void 0 : prevVideoTrackStats.jitterBufferDelay) || 0;
11255
+ const prevJBEmittedCount = (prevVideoTrackStats == null ? void 0 : prevVideoTrackStats.jitterBufferEmittedCount) || 0;
11256
+ const currentJBDelay = ((videoTrackStats == null ? void 0 : videoTrackStats.jitterBufferDelay) || 0) - prevJBDelay;
11257
+ const currentJBEmittedCount = ((videoTrackStats == null ? void 0 : videoTrackStats.jitterBufferEmittedCount) || 0) - prevJBEmittedCount;
11258
+ const jitterBufferDelayMs = currentJBEmittedCount > 0 ? currentJBDelay * 1e3 / currentJBEmittedCount : prevJitterBufferDelayMs.current;
11259
+ prevJitterBufferDelayMs.current = jitterBufferDelayMs;
11260
+ const delayNorm = 1 - Math.min(1, jitterBufferDelayMs / 2e3);
11261
+ const prevConcealedSamples = ((prevAudioTrackStats == null ? void 0 : prevAudioTrackStats.concealedSamples) || 0) - ((prevAudioTrackStats == null ? void 0 : prevAudioTrackStats.silentConcealedSamples) || 0);
11262
+ const currentConcealedSamples = ((audioTrackStats == null ? void 0 : audioTrackStats.concealedSamples) || 0) - ((audioTrackStats == null ? void 0 : audioTrackStats.silentConcealedSamples) || 0) - prevConcealedSamples;
11263
+ const audioConcealedNorm = 1 - currentConcealedSamples / 48e3;
11264
+ return (5 * __pow(clip(freezeDurationNorm, 0, 1), 3) * __pow(clip(resolutionNorm, 0, 1), 0.3) * __pow(clip(fpsNorm, 0, 1), 0.2) * __pow(clip(delayNorm, 0, 1), 0.5) * __pow(clip(audioConcealedNorm, 0, 1), 2)).toFixed(2);
11265
+ };
11266
+
11229
11267
  // src/Stats/Stats.tsx
11230
11268
  function VideoTileStats({ videoTrackID, audioTrackID, peerID, isLocal = false }) {
11231
11269
  var _a8, _b7, _c;
11232
- const audioSelector = isLocal ? selectHMSStats.localAudioTrackStatsByID : selectHMSStats.trackStatsByID;
11233
- const audioTrackStats = useHMSStatsStore(audioSelector(audioTrackID));
11234
- const localVideoTrackStats = useHMSStatsStore(selectHMSStats.localVideoTrackStatsByID(videoTrackID));
11235
- const remoteVideoTrackStats = useHMSStatsStore(selectHMSStats.trackStatsByID(videoTrackID));
11270
+ const audioSelector = isLocal ? selectHMSStats2.localAudioTrackStatsByID : selectHMSStats2.trackStatsByID;
11271
+ const audioTrackStats = useHMSStatsStore2(audioSelector(audioTrackID));
11272
+ const localVideoTrackStats = useHMSStatsStore2(selectHMSStats2.localVideoTrackStatsByID(videoTrackID));
11273
+ const remoteVideoTrackStats = useHMSStatsStore2(selectHMSStats2.trackStatsByID(videoTrackID));
11236
11274
  const videoTrackStats = isLocal ? localVideoTrackStats == null ? void 0 : localVideoTrackStats[0] : remoteVideoTrackStats;
11237
11275
  const downlinkScore = (_a8 = useHMSStore(selectConnectionQualityByPeerID(peerID))) == null ? void 0 : _a8.downlinkQuality;
11238
- const availableOutgoingBitrate = useHMSStatsStore(selectHMSStats.availablePublishBitrate);
11276
+ const availableOutgoingBitrate = useHMSStatsStore2(selectHMSStats2.availablePublishBitrate);
11277
+ const qoe = useQoE({ videoTrackID, audioTrackID, isLocal });
11239
11278
  if (!(audioTrackStats || videoTrackStats)) {
11240
11279
  return null;
11241
11280
  }
@@ -11282,7 +11321,7 @@ function VideoTileStats({ videoTrackID, audioTrackID, peerID, isLocal = false })
11282
11321
  value: formatBytes(stat.bitrate, "b/s")
11283
11322
  }
11284
11323
  ), /* @__PURE__ */ React15.createElement(Stats.Gap, null));
11285
- })) : /* @__PURE__ */ React15.createElement(Fragment, null, /* @__PURE__ */ React15.createElement(
11324
+ })) : /* @__PURE__ */ React15.createElement(Fragment, null, /* @__PURE__ */ React15.createElement(StatsRow, { show: isNotNullish(qoe), label: "QoE", value: qoe }), /* @__PURE__ */ React15.createElement(
11286
11325
  StatsRow,
11287
11326
  {
11288
11327
  show: isNotNullishAndNot0(videoTrackStats == null ? void 0 : videoTrackStats.frameWidth),
@@ -11914,7 +11953,7 @@ var Collapsible = {
11914
11953
 
11915
11954
  // src/Prebuilt/App.tsx
11916
11955
  init_define_process_env();
11917
- import React179, { useEffect as useEffect70, useRef as useRef28 } from "react";
11956
+ import React179, { useEffect as useEffect70, useRef as useRef29 } from "react";
11918
11957
  import { match as match15 } from "ts-pattern";
11919
11958
  import {
11920
11959
  HMSReactiveStore,
@@ -11926,7 +11965,7 @@ import {
11926
11965
 
11927
11966
  // src/Prebuilt/components/AppData/AppData.tsx
11928
11967
  init_define_process_env();
11929
- import React23, { useEffect as useEffect5, useMemo as useMemo4, useRef as useRef6 } from "react";
11968
+ import React23, { useEffect as useEffect5, useMemo as useMemo4, useRef as useRef7 } from "react";
11930
11969
  import {
11931
11970
  HMSRoomState,
11932
11971
  selectFullAppData,
@@ -12263,7 +12302,7 @@ import React22 from "react";
12263
12302
 
12264
12303
  // src/Prebuilt/provider/roomLayoutProvider/hooks/useFetchRoomLayout.ts
12265
12304
  init_define_process_env();
12266
- import { useCallback as useCallback5, useEffect as useEffect4, useRef as useRef5, useState as useState5 } from "react";
12305
+ import { useCallback as useCallback5, useEffect as useEffect4, useRef as useRef6, useState as useState5 } from "react";
12267
12306
 
12268
12307
  // src/Prebuilt/provider/roomLayoutProvider/constants/index.ts
12269
12308
  init_define_process_env();
@@ -12345,8 +12384,8 @@ var useFetchRoomLayout = ({
12345
12384
  authToken = ""
12346
12385
  }) => {
12347
12386
  const [layout, setLayout] = useState5(void 0);
12348
- const layoutResp = useRef5();
12349
- const isFetchInProgress = useRef5(false);
12387
+ const layoutResp = useRef6();
12388
+ const isFetchInProgress = useRef6(false);
12350
12389
  const updateRoomLayoutForRole = useCallback5((role) => {
12351
12390
  var _a8;
12352
12391
  if (!layoutResp.current) {
@@ -12704,7 +12743,7 @@ var AppData = React23.memo(() => {
12704
12743
  const { elements } = useRoomLayoutConferencingScreen();
12705
12744
  const toggleVB = useSidepaneToggle(SIDE_PANE_OPTIONS.VB);
12706
12745
  const { isLocalVideoEnabled } = useAVToggle();
12707
- const sidepaneOpenedRef = useRef6(false);
12746
+ const sidepaneOpenedRef = useRef7(false);
12708
12747
  const defaultMediaURL = useMemo4(() => {
12709
12748
  var _a9;
12710
12749
  const media = ((_a9 = elements == null ? void 0 : elements.virtual_background) == null ? void 0 : _a9.background_media) || [];
@@ -12912,7 +12951,7 @@ var AuthToken_default = AuthToken;
12912
12951
 
12913
12952
  // src/Prebuilt/components/ConferenceScreen.tsx
12914
12953
  init_define_process_env();
12915
- import React157, { useEffect as useEffect51, useRef as useRef26, useState as useState66 } from "react";
12954
+ import React157, { useEffect as useEffect51, useRef as useRef27, useState as useState66 } from "react";
12916
12955
  import { v4 as uuid3 } from "uuid";
12917
12956
  import {
12918
12957
  HMSRoomState as HMSRoomState7,
@@ -13224,7 +13263,7 @@ var Sheet = {
13224
13263
 
13225
13264
  // src/Prebuilt/components/Settings/DeviceSettings.jsx
13226
13265
  init_define_process_env();
13227
- import React29, { Fragment as Fragment2, useEffect as useEffect8, useRef as useRef8, useState as useState8 } from "react";
13266
+ import React29, { Fragment as Fragment2, useEffect as useEffect8, useRef as useRef9, useState as useState8 } from "react";
13228
13267
  import { useMedia } from "react-use";
13229
13268
  import {
13230
13269
  DeviceType,
@@ -13286,9 +13325,9 @@ var DialogDropdownTrigger = React28.forwardRef(({ title, css: css2, open, icon,
13286
13325
 
13287
13326
  // src/Prebuilt/components/hooks/useAudioOutputTest.tsx
13288
13327
  init_define_process_env();
13289
- import { useEffect as useEffect7, useRef as useRef7, useState as useState7 } from "react";
13328
+ import { useEffect as useEffect7, useRef as useRef8, useState as useState7 } from "react";
13290
13329
  var useAudioOutputTest = ({ deviceId }) => {
13291
- const audioRef = useRef7(null);
13330
+ const audioRef = useRef8(null);
13292
13331
  const [playing, setPlaying] = useState7(false);
13293
13332
  useEffect7(() => {
13294
13333
  if (audioRef.current && deviceId) {
@@ -13387,7 +13426,7 @@ var DeviceSelector = ({ title, devices, selection, onChange, icon, children = nu
13387
13426
  var _a8, _b7;
13388
13427
  const [open, setOpen] = useState8(false);
13389
13428
  const selectionBg = useDropdownSelection();
13390
- const ref = useRef8(null);
13429
+ const ref = useRef9(null);
13391
13430
  return /* @__PURE__ */ React29.createElement(Box, { css: { mb: "$10" } }, /* @__PURE__ */ React29.createElement(Text, { css: { mb: "$4" } }, title), /* @__PURE__ */ React29.createElement(
13392
13431
  Flex,
13393
13432
  {
@@ -14112,7 +14151,7 @@ var useDropdownList = ({ name, open }) => {
14112
14151
 
14113
14152
  // src/Prebuilt/common/hooks.ts
14114
14153
  init_define_process_env();
14115
- import { useCallback as useCallback8, useEffect as useEffect12, useRef as useRef9, useState as useState11 } from "react";
14154
+ import { useCallback as useCallback8, useEffect as useEffect12, useRef as useRef10, useState as useState11 } from "react";
14116
14155
  import { useMedia as useMedia3 } from "react-use";
14117
14156
  import { JoinForm_JoinBtnType as JoinForm_JoinBtnType2 } from "@100mslive/types-prebuilt/elements/join_form";
14118
14157
  import {
@@ -15244,7 +15283,7 @@ var PIP = ({ content = null }) => {
15244
15283
 
15245
15284
  // src/Prebuilt/components/RoleChangeModal.jsx
15246
15285
  init_define_process_env();
15247
- import React44, { forwardRef, useRef as useRef10, useState as useState16 } from "react";
15286
+ import React44, { forwardRef, useRef as useRef11, useState as useState16 } from "react";
15248
15287
  import { selectPeerByID, useHMSActions as useHMSActions11, useHMSStore as useHMSStore16 } from "@100mslive/react-sdk";
15249
15288
  import { CheckIcon as CheckIcon2, ChevronDownIcon as ChevronDownIcon3, ChevronUpIcon as ChevronUpIcon3 } from "@100mslive/react-icons";
15250
15289
  var PeerName = forwardRef((_a8, ref) => {
@@ -15274,7 +15313,7 @@ var RoleChangeModal = ({ peerId, onOpenChange }) => {
15274
15313
  const [open, setOpen] = useState16(false);
15275
15314
  const selectionBg = useDropdownSelection();
15276
15315
  const [peerNameRef, setPeerNameRef] = useState16();
15277
- const ref = useRef10();
15316
+ const ref = useRef11();
15278
15317
  if (!peer) {
15279
15318
  return null;
15280
15319
  }
@@ -15388,7 +15427,7 @@ import { InfoIcon } from "@100mslive/react-icons";
15388
15427
 
15389
15428
  // src/Prebuilt/primitives/DialogContent.jsx
15390
15429
  init_define_process_env();
15391
- import React45, { useRef as useRef11 } from "react";
15430
+ import React45, { useRef as useRef12 } from "react";
15392
15431
  import { CheckIcon as CheckIcon3, CloudUploadIcon, CrossIcon as CrossIcon7 } from "@100mslive/react-icons";
15393
15432
  var DialogContent = (_a8) => {
15394
15433
  var _b7 = _a8, { Icon: Icon4, title, closeable = true, children, css: css2, iconCSS = {} } = _b7, props = __objRest(_b7, ["Icon", "title", "closeable", "children", "css", "iconCSS"]);
@@ -15465,7 +15504,7 @@ var DialogSelect = (_a8) => {
15465
15504
  };
15466
15505
  var DialogInputFile = (_a8) => {
15467
15506
  var _b7 = _a8, { value, onChange, placeholder, disabled, type } = _b7, props = __objRest(_b7, ["value", "onChange", "placeholder", "disabled", "type"]);
15468
- const inputRef = useRef11();
15507
+ const inputRef = useRef12();
15469
15508
  return /* @__PURE__ */ React45.createElement(
15470
15509
  DialogCol,
15471
15510
  {
@@ -15676,14 +15715,14 @@ var StartRecording_default = StartRecording;
15676
15715
 
15677
15716
  // src/Prebuilt/components/StatsForNerds.jsx
15678
15717
  init_define_process_env();
15679
- import React48, { useEffect as useEffect14, useMemo as useMemo5, useRef as useRef12, useState as useState19 } from "react";
15718
+ import React48, { useEffect as useEffect14, useMemo as useMemo5, useRef as useRef13, useState as useState19 } from "react";
15680
15719
  import { match as match3, P as P2 } from "ts-pattern";
15681
15720
  import {
15682
- selectHMSStats as selectHMSStats2,
15721
+ selectHMSStats as selectHMSStats3,
15683
15722
  selectLocalPeerID as selectLocalPeerID2,
15684
15723
  selectPeersMap,
15685
15724
  selectTracksMap as selectTracksMap2,
15686
- useHMSStatsStore as useHMSStatsStore2,
15725
+ useHMSStatsStore as useHMSStatsStore3,
15687
15726
  useHMSStore as useHMSStore18
15688
15727
  } from "@100mslive/react-sdk";
15689
15728
  var StatsForNerds = ({ onOpenChange }) => {
@@ -15696,7 +15735,7 @@ var StatsForNerds = ({ onOpenChange }) => {
15696
15735
  const [selectedStat, setSelectedStat] = useState19(statsOptions[0]);
15697
15736
  const [showStatsOnTiles, setShowStatsOnTiles] = useSetUiSettings(UI_SETTINGS.showStatsOnTiles);
15698
15737
  const [open, setOpen] = useState19(false);
15699
- const ref = useRef12();
15738
+ const ref = useRef13();
15700
15739
  const selectionBg = useDropdownSelection();
15701
15740
  useEffect14(() => {
15702
15741
  if (selectedStat.id !== "local-peer" && !tracksWithLabels.find((track) => track.id === selectedStat.id)) {
@@ -15792,7 +15831,7 @@ var useTracksWithLabel = () => {
15792
15831
  };
15793
15832
  var LocalPeerStats = () => {
15794
15833
  var _a8, _b7, _c, _d, _e, _f, _g, _h2, _i;
15795
- const stats = useHMSStatsStore2(selectHMSStats2.localPeerStats);
15834
+ const stats = useHMSStatsStore3(selectHMSStats3.localPeerStats);
15796
15835
  if (!stats) {
15797
15836
  return null;
15798
15837
  }
@@ -15816,9 +15855,9 @@ var TrackStats = ({ trackID, layer, local }) => {
15816
15855
  {
15817
15856
  layer: P2.when((layer2) => !!layer2)
15818
15857
  },
15819
- () => selectHMSStats2.localVideoTrackStatsByLayer(layer)(trackID)
15820
- ).with({ local: P2.when((local2) => !!local2) }, () => selectHMSStats2.localAudioTrackStatsByID(trackID)).otherwise(() => selectHMSStats2.trackStatsByID(trackID));
15821
- const stats = useHMSStatsStore2(selector);
15858
+ () => selectHMSStats3.localVideoTrackStatsByLayer(layer)(trackID)
15859
+ ).with({ local: P2.when((local2) => !!local2) }, () => selectHMSStats3.localAudioTrackStatsByID(trackID)).otherwise(() => selectHMSStats3.trackStatsByID(trackID));
15860
+ const stats = useHMSStatsStore3(selector);
15822
15861
  if (!stats) {
15823
15862
  return null;
15824
15863
  }
@@ -15863,15 +15902,15 @@ var formatBytes2 = (bytes, unit = "B", decimals = 2) => {
15863
15902
 
15864
15903
  // src/Prebuilt/components/MoreSettings/BulkRoleChangeModal.jsx
15865
15904
  init_define_process_env();
15866
- import React49, { useCallback as useCallback11, useRef as useRef13, useState as useState20 } from "react";
15905
+ import React49, { useCallback as useCallback11, useRef as useRef14, useState as useState20 } from "react";
15867
15906
  import { useHMSActions as useHMSActions13 } from "@100mslive/react-sdk";
15868
15907
  import { AlertTriangleIcon as AlertTriangleIcon4, ChangeRoleIcon, CheckIcon as CheckIcon4 } from "@100mslive/react-icons";
15869
15908
  var BulkRoleChangeModal = ({ onOpenChange }) => {
15870
15909
  var _a8, _b7;
15871
15910
  const roles = useFilteredRoles();
15872
15911
  const hmsActions = useHMSActions13();
15873
- const ref = useRef13(null);
15874
- const roleRef = useRef13(null);
15912
+ const ref = useRef14(null);
15913
+ const roleRef = useRef14(null);
15875
15914
  const [selectedBulkRole, setBulkRole] = useState20([]);
15876
15915
  const [selectedRole, setRole] = useState20("");
15877
15916
  const [bulkRoleDialog, setBulkRoleDialog] = useState20(false);
@@ -16307,7 +16346,7 @@ var DesktopOptions = ({
16307
16346
 
16308
16347
  // src/Prebuilt/components/MoreSettings/SplitComponents/MwebOptions.tsx
16309
16348
  init_define_process_env();
16310
- import React59, { useRef as useRef15, useState as useState28 } from "react";
16349
+ import React59, { useRef as useRef16, useState as useState28 } from "react";
16311
16350
  import { useClickAway } from "react-use";
16312
16351
  import { match as match5 } from "ts-pattern";
16313
16352
  import {
@@ -16340,7 +16379,7 @@ import {
16340
16379
 
16341
16380
  // src/Prebuilt/components/Header/StreamActions.tsx
16342
16381
  init_define_process_env();
16343
- import React55, { useCallback as useCallback17, useEffect as useEffect16, useRef as useRef14, useState as useState25 } from "react";
16382
+ import React55, { useCallback as useCallback17, useEffect as useEffect16, useRef as useRef15, useState as useState25 } from "react";
16344
16383
  import { useMedia as useMedia6 } from "react-use";
16345
16384
 
16346
16385
  // ../hms-video-store/dist/index.js
@@ -18528,7 +18567,7 @@ import { v4 as eo } from "uuid";
18528
18567
  import { v4 as so } from "uuid";
18529
18568
  import { v4 as co } from "uuid";
18530
18569
  import { EventEmitter2 as lo } from "eventemitter2";
18531
- var Dt = __toESM(require_lib());
18570
+ var wt = __toESM(require_lib());
18532
18571
  import { EventEmitter2 as xo } from "eventemitter2";
18533
18572
  import { v4 as Vo } from "uuid";
18534
18573
  import { EventEmitter2 as Fo } from "eventemitter2";
@@ -18562,12 +18601,12 @@ var Zi = (a2, e) => {
18562
18601
  };
18563
18602
  var _a7 = (a2, e) => () => (e || a2((e = { exports: {} }).exports, e), e.exports);
18564
18603
  var nr = _a7((yc, Wa) => {
18565
- Wa.exports = { version: "0.12.8-alpha.4", 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"] };
18604
+ Wa.exports = { version: "0.12.9-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": "^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"] };
18566
18605
  });
18567
18606
  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 || {});
18568
18607
  var Na = ((e) => (e.CHAT = "chat", e))(Na || {});
18569
18608
  var jr = ((t) => (t.INFO = "info", t.ERROR = "error", t))(jr || {});
18570
- var tr = ((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))(tr || {});
18609
+ var tr = ((D) => (D.PEER_JOINED = "PEER_JOINED", D.PEER_LEFT = "PEER_LEFT", D.PEER_LIST = "PEER_LIST", D.NEW_MESSAGE = "NEW_MESSAGE", D.ERROR = "ERROR", D.RECONNECTING = "RECONNECTING", D.RECONNECTED = "RECONNECTED", D.TRACK_ADDED = "TRACK_ADDED", D.TRACK_REMOVED = "TRACK_REMOVED", D.TRACK_MUTED = "TRACK_MUTED", D.TRACK_UNMUTED = "TRACK_UNMUTED", D.TRACK_DEGRADED = "TRACK_DEGRADED", D.TRACK_RESTORED = "TRACK_RESTORED", D.TRACK_DESCRIPTION_CHANGED = "TRACK_DESCRIPTION_CHANGED", D.ROLE_UPDATED = "ROLE_UPDATED", D.CHANGE_TRACK_STATE_REQUEST = "CHANGE_TRACK_STATE_REQUEST", D.CHANGE_MULTI_TRACK_STATE_REQUEST = "CHANGE_MULTI_TRACK_STATE_REQUEST", D.ROOM_ENDED = "ROOM_ENDED", D.REMOVED_FROM_ROOM = "REMOVED_FROM_ROOM", D.DEVICE_CHANGE_UPDATE = "DEVICE_CHANGE_UPDATE", D.PLAYLIST_TRACK_ENDED = "PLAYLIST_TRACK_ENDED", D.NAME_UPDATED = "NAME_UPDATED", D.METADATA_UPDATED = "METADATA_UPDATED", D.POLL_CREATED = "POLL_CREATED", D.POLL_STARTED = "POLL_STARTED", D.POLL_STOPPED = "POLL_STOPPED", D.POLL_VOTES_UPDATED = "POLL_VOTES_UPDATED", D.POLLS_LIST = "POLLS_LIST", D.HAND_RAISE_CHANGED = "HAND_RAISE_CHANGED", D))(tr || {});
18571
18610
  var Jr = ((t) => (t.audio = "audio", t.video = "video", t))(Jr || {});
18572
18611
  function He(a2, e) {
18573
18612
  let t, i;
@@ -19131,14 +19170,14 @@ var Eh = createSelector(B, (a2) => a2.id);
19131
19170
  var G = (a2) => a2.peers;
19132
19171
  var ai = (a2) => a2.messages.byID;
19133
19172
  var xs = (a2) => a2.messages.allIDs;
19134
- var D = (a2) => a2.tracks;
19173
+ var w = (a2) => a2.tracks;
19135
19174
  var br = (a2) => a2.appData;
19136
19175
  var po = (a2) => a2.speakers;
19137
19176
  var Re = createSelector([B], (a2) => a2 && a2.isConnected);
19138
19177
  var bh = createSelector([Re, B], (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));
19139
19178
  var ho = (a2) => a2.hideLocalPeer;
19140
19179
  var le = createSelector([B, G, ho], (a2, e, t) => t ? a2.peers.filter((i) => a2.localPeer !== i).map((i) => e[i]) : a2.peers.map((i) => e[i]));
19141
- var mo = createSelector(D, (a2) => Object.values(a2));
19180
+ var mo = createSelector(w, (a2) => Object.values(a2));
19142
19181
  var z = createSelector(B, G, (a2, e) => e[a2.localPeer]);
19143
19182
  var ge = createSelector(B, (a2) => a2.localPeer);
19144
19183
  var Ih = createSelector(z, (a2) => a2 == null ? void 0 : a2.name);
@@ -19164,11 +19203,11 @@ var Ch = createSelector(G, po, (a2, e) => {
19164
19203
  }
19165
19204
  return null;
19166
19205
  });
19167
- var Rr = createSelector(z, D, (a2, e) => {
19206
+ var Rr = createSelector(z, w, (a2, e) => {
19168
19207
  let { video: t, audio: i } = He(e, a2);
19169
19208
  return !!(t || i);
19170
19209
  });
19171
- var go = createSelector(G, D, (a2, e) => {
19210
+ var go = createSelector(G, w, (a2, e) => {
19172
19211
  let t;
19173
19212
  for (let i in a2) {
19174
19213
  let r = a2[i], { video: s, audio: o } = He(e, r);
@@ -19178,15 +19217,15 @@ var go = createSelector(G, D, (a2, e) => {
19178
19217
  }
19179
19218
  return t;
19180
19219
  });
19181
- var wh = createSelector(go, (a2) => !!a2);
19182
- var Dh = createSelector(G, D, (a2, e) => {
19220
+ var Dh = createSelector(go, (a2) => !!a2);
19221
+ var wh = createSelector(G, w, (a2, e) => {
19183
19222
  for (let t in a2) {
19184
19223
  let i = a2[t], { audio: r, video: s } = He(e, i);
19185
19224
  if (!s && r)
19186
19225
  return i;
19187
19226
  }
19188
19227
  });
19189
- var _h = createSelector(G, D, (a2, e) => {
19228
+ var _h = createSelector(G, w, (a2, e) => {
19190
19229
  let t = [], i = [];
19191
19230
  for (let r in a2) {
19192
19231
  let s = a2[r], { video: o, audio: n } = He(e, s);
@@ -19194,14 +19233,14 @@ var _h = createSelector(G, D, (a2, e) => {
19194
19233
  }
19195
19234
  return t.concat(i);
19196
19235
  });
19197
- var Nh = createSelector(G, D, (a2, e) => {
19236
+ var Nh = createSelector(G, w, (a2, e) => {
19198
19237
  for (let t in e) {
19199
19238
  let i = e[t];
19200
19239
  if (rt(i) && it(i) && i.peerId)
19201
19240
  return a2[i.peerId];
19202
19241
  }
19203
19242
  });
19204
- var Oh = createSelector(G, D, (a2, e) => {
19243
+ var Oh = createSelector(G, w, (a2, e) => {
19205
19244
  for (let t in e) {
19206
19245
  let i = e[t];
19207
19246
  if ($t(i) && i.peerId)
@@ -19340,26 +19379,26 @@ var ta = (a2, e) => e;
19340
19379
  var Mo = (a2, e) => e;
19341
19380
  var yo = (a2, e) => e;
19342
19381
  var W = createSelector([G, Cr], (a2, e) => e ? a2[e] : null);
19343
- var Lr = createSelector([D, Tt], (a2, e) => e ? a2[e] : null);
19344
- var ko = createSelector([D, Tt], (a2, e) => {
19382
+ var Lr = createSelector([w, Tt], (a2, e) => e ? a2[e] : null);
19383
+ var ko = createSelector([w, Tt], (a2, e) => {
19345
19384
  if (!e)
19346
19385
  return null;
19347
19386
  let t = a2[e];
19348
19387
  return (t == null ? void 0 : t.type) === "video" ? t : null;
19349
19388
  });
19350
- var Eo = createSelector([D, Tt], (a2, e) => {
19389
+ var Eo = createSelector([w, Tt], (a2, e) => {
19351
19390
  if (!e)
19352
19391
  return null;
19353
19392
  let t = a2[e];
19354
19393
  return (t == null ? void 0 : t.type) === "audio" ? t : null;
19355
19394
  });
19356
- var Po = createSelector([D, Tt], (a2, e) => {
19395
+ var Po = createSelector([w, Tt], (a2, e) => {
19357
19396
  if (!e)
19358
19397
  return null;
19359
19398
  let t = a2[e];
19360
19399
  return (t == null ? void 0 : t.type) === "audio" && (t == null ? void 0 : t.source) === "screen" ? t : null;
19361
19400
  });
19362
- var Ao = createSelector([D, Tt], (a2, e) => {
19401
+ var Ao = createSelector([w, Tt], (a2, e) => {
19363
19402
  if (!e)
19364
19403
  return null;
19365
19404
  let t = a2[e];
@@ -19416,34 +19455,34 @@ var Im = b((a2, e) => {
19416
19455
  return i ? a2.tracks[i] : void 0;
19417
19456
  }
19418
19457
  });
19419
- var Rm = b(createSelector(D, W, (a2, e) => {
19458
+ var Rm = b(createSelector(w, W, (a2, e) => {
19420
19459
  let t = e == null ? void 0 : e.auxiliaryTracks.find((i) => {
19421
19460
  let r = a2[i];
19422
19461
  return rt(r) && it(r);
19423
19462
  });
19424
19463
  return t ? a2[t] : void 0;
19425
19464
  }));
19426
- var Hm = b(createSelector(D, W, (a2, e) => {
19465
+ var Hm = b(createSelector(w, W, (a2, e) => {
19427
19466
  let t = e == null ? void 0 : e.auxiliaryTracks.find((i) => {
19428
19467
  let r = a2[i];
19429
19468
  return rt(r) && tt(r);
19430
19469
  });
19431
19470
  return t ? a2[t] : void 0;
19432
19471
  }));
19433
- var Cm = b(createSelector(D, W, (a2, e) => {
19472
+ var Cm = b(createSelector(w, W, (a2, e) => {
19434
19473
  let t = e == null ? void 0 : e.auxiliaryTracks.find((i) => {
19435
19474
  let r = a2[i];
19436
19475
  return $t(r) && tt(r);
19437
19476
  });
19438
19477
  return t ? a2[t] : void 0;
19439
19478
  }));
19440
- var sa = b(createSelector(D, W, (a2, e) => He(a2, e)));
19479
+ var sa = b(createSelector(w, W, (a2, e) => He(a2, e)));
19441
19480
  var aa = (a2) => createSelector(sa(a2), (e) => e.audio);
19442
- var wm = b((a2, e) => {
19481
+ var Dm = b((a2, e) => {
19443
19482
  let t = W(a2, e);
19444
19483
  return Ue(a2, t == null ? void 0 : t.audioTrack);
19445
19484
  });
19446
- var Dm = b((a2, e) => {
19485
+ var wm = b((a2, e) => {
19447
19486
  let t = W(a2, e);
19448
19487
  return Ue(a2, t == null ? void 0 : t.videoTrack);
19449
19488
  });
@@ -19506,26 +19545,26 @@ var Co = createSelector(St, (a2) => a2.filter((e) => {
19506
19545
  return !e.recipientPeer && !((t = e.recipientRoles) != null && t.length);
19507
19546
  }));
19508
19547
  var Lo = createSelector([da, ta], (a2) => a2 ? a2.filter((e) => !e.read).length : 0);
19509
- var wo = createSelector([ca, Cr], (a2) => a2 ? a2.filter((e) => !e.read).length : 0);
19548
+ var Do = createSelector([ca, Cr], (a2) => a2 ? a2.filter((e) => !e.read).length : 0);
19510
19549
  var Bm = createSelector(Co, (a2) => a2.filter((e) => !e.read).length);
19511
19550
  var Vm = b(ca);
19512
19551
  var Fm = b(da);
19513
19552
  var Gm = b(Lo);
19514
- var Wm = b(wo);
19553
+ var Wm = b(Do);
19515
19554
  var la = b(bo);
19516
- var eS = createSelector([G, D], (a2, e) => Object.values(a2).map((i) => {
19555
+ var eS = createSelector([G, w], (a2, e) => Object.values(a2).map((i) => {
19517
19556
  var r;
19518
19557
  return { peer: i, isAudioEnabled: i.audioTrack ? (r = e[i.audioTrack]) == null ? void 0 : r.enabled : false };
19519
19558
  }));
19520
- var Do = (a2) => a2.roleChangeRequests[0] || null;
19521
- var tS = createSelector([Do, G, ue], (a2, e, t) => a2 ? { requestedBy: a2.requestedBy ? e[a2.requestedBy] : void 0, role: t[a2.roleName], token: a2.token } : null);
19559
+ var wo = (a2) => a2.roleChangeRequests[0] || null;
19560
+ var tS = createSelector([wo, G, ue], (a2, e, t) => a2 ? { requestedBy: a2.requestedBy ? e[a2.requestedBy] : void 0, role: t[a2.roleName], token: a2.token } : null);
19522
19561
  var iS = createSelector([oi], (a2) => st(a2));
19523
19562
  var rS = createSelector([Gs], (a2) => st(a2));
19524
- var No = createSelector([J, D], (a2, e) => {
19563
+ var No = createSelector([J, w], (a2, e) => {
19525
19564
  let t = null;
19526
19565
  return a2 && (t = e[a2]), (t == null ? void 0 : t.plugins) || [];
19527
19566
  });
19528
- var Oo = createSelector([te, D], (a2, e) => {
19567
+ var Oo = createSelector([te, w], (a2, e) => {
19529
19568
  let t = null;
19530
19569
  return a2 && (t = e[a2]), (t == null ? void 0 : t.plugins) || [];
19531
19570
  });
@@ -19824,7 +19863,7 @@ var LiveStatus = () => {
19824
19863
  const { isHLSRunning, isRTMPRunning } = useRecordingStreaming6();
19825
19864
  const hlsState = useHMSStore26(selectHLSState4);
19826
19865
  const isMobile = useMedia6(config.media.md);
19827
- const intervalRef = useRef14(null);
19866
+ const intervalRef = useRef15(null);
19828
19867
  const { screenType } = useRoomLayoutConferencingScreen();
19829
19868
  const [liveTime, setLiveTime] = useState25(0);
19830
19869
  const startTimer = useCallback17(() => {
@@ -20281,7 +20320,7 @@ var MwebOptions = ({
20281
20320
  const { showPolls } = useShowPolls();
20282
20321
  const togglePollView = usePollViewToggle();
20283
20322
  const peerCount = useHMSStore30(selectPeerCount3);
20284
- const emojiCardRef = useRef15(null);
20323
+ const emojiCardRef = useRef16(null);
20285
20324
  const { isBRBOn, toggleBRB, isHandRaised, toggleHandRaise } = useMyMetadata();
20286
20325
  const { unreadPollQuiz, setUnreadPollQuiz } = useUnreadPollQuizPresent();
20287
20326
  const { title, description } = useRoomLayoutHeader();
@@ -22184,7 +22223,7 @@ import React101 from "react";
22184
22223
 
22185
22224
  // src/Prebuilt/components/Polls/CreatePollQuiz/PollsQuizMenu.tsx
22186
22225
  init_define_process_env();
22187
- import React82, { useEffect as useEffect21, useMemo as useMemo6, useRef as useRef16, useState as useState35 } from "react";
22226
+ import React82, { useEffect as useEffect21, useMemo as useMemo6, useRef as useRef17, useState as useState35 } from "react";
22188
22227
  import {
22189
22228
  selectLocalPeerRoleName,
22190
22229
  selectPermissions as selectPermissions15,
@@ -22345,7 +22384,7 @@ var AddMenu = () => {
22345
22384
  const [titleError, setTitleError] = useState35("");
22346
22385
  const { setPollState } = usePollViewState();
22347
22386
  const [interactionType, setInteractionType] = useState35("Poll" /* POLL */);
22348
- const inputRef = useRef16(null);
22387
+ const inputRef = useRef17(null);
22349
22388
  useEffect21(() => {
22350
22389
  if (inputRef.current) {
22351
22390
  inputRef.current.focus();
@@ -22475,7 +22514,7 @@ import { AddCircleIcon as AddCircleIcon2 } from "@100mslive/react-icons";
22475
22514
 
22476
22515
  // src/Prebuilt/components/Polls/CreateQuestions/QuestionForm.tsx
22477
22516
  init_define_process_env();
22478
- import React90, { useCallback as useCallback21, useRef as useRef17, useState as useState36 } from "react";
22517
+ import React90, { useCallback as useCallback21, useRef as useRef18, useState as useState36 } from "react";
22479
22518
  import { AddCircleIcon, TrashIcon as TrashIcon3 } from "@100mslive/react-icons";
22480
22519
 
22481
22520
  // src/Prebuilt/components/Polls/CreateQuestions/DeleteQuestionModal.tsx
@@ -22769,7 +22808,7 @@ var QuestionForm = ({
22769
22808
  isQuiz
22770
22809
  }) => {
22771
22810
  var _a8;
22772
- const ref = useRef17(null);
22811
+ const ref = useRef18(null);
22773
22812
  const selectionBg = useDropdownSelection();
22774
22813
  const [openDelete, setOpenDelete] = useState36(false);
22775
22814
  const [open, setOpen] = useState36(false);
@@ -23367,7 +23406,7 @@ import React98 from "react";
23367
23406
 
23368
23407
  // src/Prebuilt/components/Polls/Voting/QuestionCard.jsx
23369
23408
  init_define_process_env();
23370
- import React97, { useCallback as useCallback22, useMemo as useMemo9, useRef as useRef18, useState as useState40 } from "react";
23409
+ import React97, { useCallback as useCallback22, useMemo as useMemo9, useRef as useRef19, useState as useState40 } from "react";
23371
23410
  import { match as match8 } from "ts-pattern";
23372
23411
  import { selectLocalPeer, selectLocalPeerRoleName as selectLocalPeerRoleName2, useHMSActions as useHMSActions31, useHMSStore as useHMSStore49 } from "@100mslive/react-sdk";
23373
23412
  import { CheckCircleIcon as CheckCircleIcon5, ChevronDownIcon as ChevronDownIcon5, CrossCircleIcon } from "@100mslive/react-icons";
@@ -23402,7 +23441,7 @@ var QuestionCard2 = ({
23402
23441
  const isLive = pollState === "started";
23403
23442
  const pollEnded = pollState === "stopped";
23404
23443
  const canRespond = isLive && !localPeerResponse;
23405
- const startTime = useRef18(Date.now());
23444
+ const startTime = useRef19(Date.now());
23406
23445
  const isCorrectAnswer = checkCorrectAnswer(answer, localPeerResponse, type);
23407
23446
  const [singleOptionAnswer, setSingleOptionAnswer] = useState40();
23408
23447
  const [multipleOptionAnswer, setMultipleOptionAnswer] = useState40(/* @__PURE__ */ new Set());
@@ -23821,7 +23860,7 @@ import { CrossIcon as CrossIcon21 } from "@100mslive/react-icons";
23821
23860
 
23822
23861
  // src/Prebuilt/components/Chat/Chat.tsx
23823
23862
  init_define_process_env();
23824
- import React117, { useCallback as useCallback30, useRef as useRef22 } from "react";
23863
+ import React117, { useCallback as useCallback30, useRef as useRef23 } from "react";
23825
23864
  import { useMedia as useMedia17 } from "react-use";
23826
23865
  import { match as match9 } from "ts-pattern";
23827
23866
  import { selectHMSMessagesCount, useHMSActions as useHMSActions40, useHMSStore as useHMSStore62, useHMSVanillaStore as useHMSVanillaStore10 } from "@100mslive/react-sdk";
@@ -23829,7 +23868,7 @@ import { ChevronDownIcon as ChevronDownIcon8 } from "@100mslive/react-icons";
23829
23868
 
23830
23869
  // src/Prebuilt/components/Chat/ChatBody.tsx
23831
23870
  init_define_process_env();
23832
- import React109, { Fragment as Fragment10, useCallback as useCallback26, useEffect as useEffect26, useLayoutEffect, useMemo as useMemo10, useRef as useRef19, useState as useState46 } from "react";
23871
+ import React109, { Fragment as Fragment10, useCallback as useCallback26, useEffect as useEffect26, useLayoutEffect, useMemo as useMemo10, useRef as useRef20, useState as useState46 } from "react";
23833
23872
  import { useMedia as useMedia12 } from "react-use";
23834
23873
  import AutoSizer from "react-virtualized-auto-sizer";
23835
23874
  import { VariableSizeList } from "react-window";
@@ -24330,7 +24369,7 @@ var ChatMessage = React109.memo(
24330
24369
  ({ index, style = {}, message }) => {
24331
24370
  var _a8, _b7, _c;
24332
24371
  const { elements } = useRoomLayoutConferencingScreen();
24333
- const rowRef = useRef19(null);
24372
+ const rowRef = useRef20(null);
24334
24373
  const isMobile = useMedia12(config.media.md);
24335
24374
  const isPrivateChatEnabled = !!((_a8 = elements == null ? void 0 : elements.chat) == null ? void 0 : _a8.private_chat_enabled);
24336
24375
  const isOverlay = ((_b7 = elements == null ? void 0 : elements.chat) == null ? void 0 : _b7.is_overlay) && isMobile;
@@ -24560,7 +24599,7 @@ var ChatBody = React109.forwardRef(
24560
24599
  return (messages == null ? void 0 : messages.filter((message) => message.type === "chat" && !blacklistedMessageIDSet.has(message.id))) || [];
24561
24600
  }, [blacklistedMessageIDs, messages]);
24562
24601
  const vanillaStore = useHMSVanillaStore9();
24563
- const rerenderOnFirstMount = useRef19(false);
24602
+ const rerenderOnFirstMount = useRef20(false);
24564
24603
  useEffect26(() => {
24565
24604
  const unsubscribe = vanillaStore.subscribe(() => {
24566
24605
  if (!listRef.current) {
@@ -24607,7 +24646,7 @@ var PinnedBy = ({
24607
24646
 
24608
24647
  // src/Prebuilt/components/Chat/ChatFooter.tsx
24609
24648
  init_define_process_env();
24610
- import React112, { useCallback as useCallback28, useEffect as useEffect28, useRef as useRef21, useState as useState49 } from "react";
24649
+ import React112, { useCallback as useCallback28, useEffect as useEffect28, useRef as useRef22, useState as useState49 } from "react";
24611
24650
  import { useMedia as useMedia15 } from "react-use";
24612
24651
  import data2 from "@emoji-mart/data";
24613
24652
  import Picker from "@emoji-mart/react";
@@ -24930,9 +24969,9 @@ var useChatDraftMessage = () => {
24930
24969
 
24931
24970
  // src/Prebuilt/components/Chat/useEmojiPickerStyles.js
24932
24971
  init_define_process_env();
24933
- import { useEffect as useEffect27, useRef as useRef20 } from "react";
24972
+ import { useEffect as useEffect27, useRef as useRef21 } from "react";
24934
24973
  var useEmojiPickerStyles = (showing) => {
24935
- const ref = useRef20(null);
24974
+ const ref = useRef21(null);
24936
24975
  useEffect27(() => {
24937
24976
  if (showing) {
24938
24977
  setTimeout(() => {
@@ -25009,7 +25048,7 @@ function EmojiPicker({ onSelect }) {
25009
25048
  var ChatFooter = ({ onSend, children }) => {
25010
25049
  var _a8, _b7, _c, _d;
25011
25050
  const hmsActions = useHMSActions38();
25012
- const inputRef = useRef21(null);
25051
+ const inputRef = useRef22(null);
25013
25052
  const [draftMessage, setDraftMessage] = useChatDraftMessage();
25014
25053
  const isMobile = useMedia15(config.media.md);
25015
25054
  const { elements, screenType } = useRoomLayoutConferencingScreen();
@@ -25426,7 +25465,7 @@ var PinnedMessage = () => {
25426
25465
  var Chat = () => {
25427
25466
  var _a8, _b7;
25428
25467
  const { elements } = useRoomLayoutConferencingScreen();
25429
- const listRef = useRef22(null);
25468
+ const listRef = useRef23(null);
25430
25469
  const hmsActions = useHMSActions40();
25431
25470
  const vanillaStore = useHMSVanillaStore10();
25432
25471
  const { enabled: isChatEnabled = true } = useHMSStore62(Sm("chatState" /* CHAT_STATE */)) || {};
@@ -27359,7 +27398,7 @@ import { selectLocalPeer as selectLocalPeer9, useHMSStore as useHMSStore75 } fro
27359
27398
 
27360
27399
  // src/Prebuilt/components/InsetTile.tsx
27361
27400
  init_define_process_env();
27362
- import React136, { useEffect as useEffect36, useRef as useRef23 } from "react";
27401
+ import React136, { useEffect as useEffect36, useRef as useRef24 } from "react";
27363
27402
  import Draggable from "react-draggable";
27364
27403
  import { useMedia as useMedia26 } from "react-use";
27365
27404
  import {
@@ -27423,7 +27462,7 @@ var InsetTile = ({ peerId }) => {
27423
27462
  width = 240;
27424
27463
  height = width / aspectRatio;
27425
27464
  }
27426
- const nodeRef = useRef23(null);
27465
+ const nodeRef = useRef24(null);
27427
27466
  useEffect36(() => {
27428
27467
  const node = nodeRef.current;
27429
27468
  if (!node || !window.ResizeObserver) {
@@ -27648,10 +27687,10 @@ var useTileLayout = ({
27648
27687
  tileHeight = maxRowHeight;
27649
27688
  const calcWidths = aspectRatios.map((aR) => tileHeight * aR);
27650
27689
  tileWidth = 0;
27651
- for (const w of calcWidths) {
27652
- if (w < width) {
27653
- if (tileWidth < w) {
27654
- tileWidth = w;
27690
+ for (const w2 of calcWidths) {
27691
+ if (w2 < width) {
27692
+ if (tileWidth < w2) {
27693
+ tileWidth = w2;
27655
27694
  }
27656
27695
  }
27657
27696
  }
@@ -27722,7 +27761,7 @@ import { selectLocalPeer as selectLocalPeer10, useHMSStore as useHMSStore77 } fr
27722
27761
 
27723
27762
  // src/Prebuilt/components/SecondaryTiles.tsx
27724
27763
  init_define_process_env();
27725
- import React141, { useEffect as useEffect40, useRef as useRef24, useState as useState59 } from "react";
27764
+ import React141, { useEffect as useEffect40, useRef as useRef25, useState as useState59 } from "react";
27726
27765
  import { useMedia as useMedia29 } from "react-use";
27727
27766
  import { selectAppData as selectAppData9, selectSessionStore as selectSessionStore11, selectTrackByID as selectTrackByID4, useHMSStore as useHMSStore76 } from "@100mslive/react-sdk";
27728
27767
 
@@ -27815,7 +27854,7 @@ var SecondaryTiles = ({ peers, onPageChange, onPageSize, edgeToEdge, hasSidebar
27815
27854
  const spotlightPeerId = useHMSStore76(selectSessionStore11("spotlight" /* SPOTLIGHT */));
27816
27855
  const activeScreensharePeerId = useHMSStore76(selectAppData9(APP_DATA.activeScreensharePeerId));
27817
27856
  const pinnedPeer = (_a8 = useHMSStore76(selectTrackByID4(pinnedTrackId))) == null ? void 0 : _a8.peerId;
27818
- const pageChangedAfterPinning = useRef24(false);
27857
+ const pageChangedAfterPinning = useRef25(false);
27819
27858
  const pagesWithTiles = usePagesWithTiles({
27820
27859
  peers: spotlightPeerId || pinnedPeer ? [...peers].sort((p1, p2) => {
27821
27860
  if (activeScreensharePeerId === p1.id) {
@@ -27957,7 +27996,7 @@ import { selectPeersScreenSharing, useHMSStore as useHMSStore79 } from "@100msli
27957
27996
 
27958
27997
  // src/Prebuilt/components/ScreenshareTile.tsx
27959
27998
  init_define_process_env();
27960
- import React145, { useRef as useRef25, useState as useState62 } from "react";
27999
+ import React145, { useRef as useRef26, useState as useState62 } from "react";
27961
28000
  import { useFullscreen as useFullscreen2, useMedia as useMedia31 } from "react-use";
27962
28001
  import screenfull2 from "screenfull";
27963
28002
  import {
@@ -28128,7 +28167,7 @@ var Tile2 = ({ peerId, width = "100%", height = "100%" }) => {
28128
28167
  const [isMouseHovered, setIsMouseHovered] = useState62(false);
28129
28168
  const isMobile = useMedia31(config.media.md);
28130
28169
  const showStatsOnTiles = useUISettings(UI_SETTINGS.showStatsOnTiles);
28131
- const fullscreenRef = useRef25(null);
28170
+ const fullscreenRef = useRef26(null);
28132
28171
  const [fullscreen, setFullscreen] = useState62(false);
28133
28172
  const isFullscreen = useFullscreen2(fullscreenRef, fullscreen, {
28134
28173
  onClose: () => setFullscreen(false)
@@ -28953,7 +28992,7 @@ var useCloseScreenshareWhiteboard = () => {
28953
28992
  };
28954
28993
 
28955
28994
  // src/Prebuilt/layouts/VideoStreamingSection.tsx
28956
- var HLSView = React153.lazy(() => import("./HLSView-KESSHZG2.js"));
28995
+ var HLSView = React153.lazy(() => import("./HLSView-SZL2TSWE.js"));
28957
28996
  var VideoStreamingSection = ({
28958
28997
  screenType,
28959
28998
  elements,
@@ -29284,13 +29323,13 @@ var ConferenceScreen = () => {
29284
29323
  const [hideControls, setHideControls] = useState66(false);
29285
29324
  const dropdownList = useHMSStore88(selectAppData11(APP_DATA.dropdownList));
29286
29325
  const authTokenInAppData = useAuthToken();
29287
- const headerRef = useRef26(null);
29288
- const footerRef = useRef26(null);
29326
+ const headerRef = useRef27(null);
29327
+ const footerRef = useRef27(null);
29289
29328
  const isMobileDevice = isAndroid || isIOS || isIPadOS;
29290
- const dropdownListRef = useRef26();
29329
+ const dropdownListRef = useRef27();
29291
29330
  const [isHLSStarted] = useSetAppDataByKey(APP_DATA.hlsStarted);
29292
29331
  const showChat = !!((_a8 = screenProps.elements) == null ? void 0 : _a8.chat);
29293
- const autoRoomJoined = useRef26(isPreviewScreenEnabled);
29332
+ const autoRoomJoined = useRef27(isPreviewScreenEnabled);
29294
29333
  const isMobileHLSStream = useMobileHLSStream();
29295
29334
  const isLandscapeHLSStream = useLandscapeHLSStream();
29296
29335
  const isMwebHLSStream = isMobileHLSStream || isLandscapeHLSStream;
@@ -30919,7 +30958,7 @@ function RemoteStopScreenshare() {
30919
30958
 
30920
30959
  // src/Prebuilt/components/hooks/useAutoStartStreaming.tsx
30921
30960
  init_define_process_env();
30922
- import { useCallback as useCallback39, useEffect as useEffect69, useRef as useRef27 } from "react";
30961
+ import { useCallback as useCallback39, useEffect as useEffect69, useRef as useRef28 } from "react";
30923
30962
  import {
30924
30963
  selectIsConnectedToRoom as selectIsConnectedToRoom12,
30925
30964
  selectPermissions as selectPermissions20,
@@ -30934,7 +30973,7 @@ var useAutoStartStreaming = () => {
30934
30973
  const hmsActions = useHMSActions54();
30935
30974
  const isConnected = useHMSStore98(selectIsConnectedToRoom12);
30936
30975
  const { isHLSRunning, isRTMPRunning, isHLSRecordingOn, isBrowserRecordingOn } = useRecordingStreaming12();
30937
- const streamStartedRef = useRef27(false);
30976
+ const streamStartedRef = useRef28(false);
30938
30977
  const startHLS = useCallback39(() => __async(void 0, null, function* () {
30939
30978
  try {
30940
30979
  if (isHLSStarted || !showStreamingUI || isHLSRunning || isRTMPRunning || isHLSRecordingOn || isBrowserRecordingOn) {
@@ -30986,7 +31025,7 @@ var HMSPrebuilt = React179.forwardRef(
30986
31025
  onJoin
30987
31026
  }, ref) => {
30988
31027
  var _a8, _b7, _c, _d;
30989
- const reactiveStore = useRef28();
31028
+ const reactiveStore = useRef29();
30990
31029
  const [hydrated, setHydrated] = React179.useState(false);
30991
31030
  useEffect70(() => {
30992
31031
  setHydrated(true);
@@ -31298,4 +31337,4 @@ lodash/lodash.js:
31298
31337
  * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
31299
31338
  *)
31300
31339
  */
31301
- //# sourceMappingURL=chunk-KRTJ2T7F.js.map
31340
+ //# sourceMappingURL=chunk-BKAJ6YG4.js.map