{"version":3,"sources":["virtual:metro:__appbundleprelude__","virtual:metro:__rnx_prelude__","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/react.macos.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/react-native.macos.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js","../../../../npm/.store/sdx_incellcontrol/use-sync-external-store@1.4.0-50a46d75a0779998f508/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.native.production.js","../../../../npm/.store/sdx_incellcontrol/use-sync-external-store@1.4.0-50a46d75a0779998f508/node_modules/use-sync-external-store/shim/index.native.js","../../../../npm/.store/sdx_incellcontrol/use-sync-external-store@1.4.0-50a46d75a0779998f508/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js","../../../../npm/.store/sdx_incellcontrol/use-sync-external-store@1.4.0-50a46d75a0779998f508/node_modules/use-sync-external-store/shim/with-selector.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/typeof.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/toPrimitive.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/toPropertyKey.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/defineProperty.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/arrayWithHoles.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/arrayLikeToArray.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/nonIterableRest.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/slicedToArray.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/iterableToArray.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/nonIterableSpread.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/toConsumableArray.js","../../../../npm/.store/sdx_incellcontrol/react-is@16.13.1-5324638670af0eca7a25/node_modules/react-is/cjs/react-is.production.min.js","../../../../npm/.store/sdx_incellcontrol/react-is@16.13.1-5324638670af0eca7a25/node_modules/react-is/index.js","../../../../npm/.store/sdx_incellcontrol/hoist-non-react-statics@3.3.2-2c5f76ff0fb3eca13720/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../../../../npm/.store/sdx_incellcontrol/react-is@18.3.1-4a9ae7c567f3be861fbc/node_modules/react-is/cjs/react-is.production.min.js","../../../../npm/.store/sdx_incellcontrol/react-is@18.3.1-4a9ae7c567f3be861fbc/node_modules/react-is/index.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/asyncToGenerator.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/classCallCheck.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/createClass.js","../excel_incellcontrol/lib/types/index.js","../excel_incellcontrol/lib/richApi/RichApi.js","../excel_incellcontrol/lib/richApi/index.js","../excel_incellcontrol/lib/index.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/assertThisInitialized.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/getPrototypeOf.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/setPrototypeOf.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/inherits.js","../../../../npm/.store/sdx_incellcontrol/invariant@2.2.4-fea6fd5193392204d546/node_modules/invariant/browser.js","../../../../npm/.store/sdx_incellcontrol/assert-never@1.3.0-54d889ef087127c329a8/node_modules/assert-never/index.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/interopRequireDefault.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/react-native/Libraries/Utilities/codegenNativeComponent.macos.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/react-native/Libraries/NativeComponent/NativeComponentRegistry.macos.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-focus-zone@0.19.6-003662c0dafcd0a76eba/node_modules/@fluentui-react-native/focus-zone/lib/FocusZoneNativeComponent.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/react-native-svg.macos.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/react/jsx-runtime.macos.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/@office-iss/sdx-string-resources.macos.js","assets/strings.resjson","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/react-native/Libraries/Utilities/codegenNativeCommands.macos.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/react-native/Libraries/NativeComponent/ViewConfigIgnore.macos.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/react-native/Libraries/ReactNative/RendererProxy.macos.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-callout@0.27.2-b697a12eb0c43d99f0fd/node_modules/@fluentui-react-native/callout/lib/CalloutNativeComponent.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-callout@0.27.2-b697a12eb0c43d99f0fd/node_modules/@fluentui-react-native/callout/lib/MacOSCalloutNativeComponent.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/isObject.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/_freeGlobal.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/_root.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/now.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/_trimmedEndIndex.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/_baseTrim.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/_Symbol.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/_getRawTag.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/_objectToString.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/_baseGetTag.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/isObjectLike.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/isSymbol.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/toNumber.js","../../../../npm/.store/sdx_incellcontrol/lodash@4.17.21-2fba69df93cdd9cc0890/node_modules/lodash/debounce.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/@office-iss/reka.macos.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/pluggableTelemetry/NullTelemetryLogger.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/pluggableTelemetry/PluggableTelemetryLogger.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/pluggableTelemetry/index.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/@ms/oteljs.macos.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/otelTelemetryAdapter/TelemetryHelper.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/otelTelemetryAdapter/TelemetryActivity.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/otelTelemetryAdapter/TelemetryEvent.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/otelTelemetryAdapter/OTelTelemetryLogger.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/otelTelemetryAdapter/index.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/@ms/oteljs-sdx.macos.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/telemetryAPI/TelemetrySink.native.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/telemetryAPI/InitializeTelemetry.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/telemetryAPI/TelemetryLogger.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/telemetryAPI/index.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-excel_telemetry@0.5.7-9f7bc28b2eeb97abae76/node_modules/@office-iss/excel_telemetry/lib/index.js","../../../../npm/.store/sdx_incellcontrol/@office-iss-sdx-platform-bundle-externals@6.1.5-f5f8f8e3dc6fbdcdda75/node_modules/@office-iss/sdx-platform-bundle-externals/lib/redirects/@office-iss/reka-react-native.macos.js","src/index.tsx","src/SdxInCellControl.tsx","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/index.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/utils/reactBatchedUpdates.native.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/utils/batch.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/hooks/useSelector.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/hooks/useReduxContext.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/components/Context.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/utils/useSyncExternalStore.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/esm/extends.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/components/connect.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/connect/selectorFactory.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/utils/bindActionCreators.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/connect/wrapMapToProps.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/connect/invalidArgFactory.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/connect/mapDispatchToProps.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/connect/mapStateToProps.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/connect/mergeProps.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/utils/Subscription.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.native.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/utils/shallowEqual.js","../../../../npm/.store/sdx_incellcontrol/react-redux@8.1.3-bb64576211e8da1048cc/node_modules/react-redux/es/components/Provider.js","src/components/SettingsPane/SettingsPaneApp.tsx","../../../../npm/.store/sdx_incellcontrol/typesafe-actions@2.2.0-9a23607165d935c94a64/node_modules/typesafe-actions/dist/index.esm.js","src/store/AppActions.ts","src/telemetry/InCellControlTelemetryConstants.ts","src/store/AppAsyncActions.ts","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/esm/typeof.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../../../npm/.store/sdx_incellcontrol/@babel-runtime@7.24.8-1cc783020e29ee40db2c/node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../../../../npm/.store/sdx_incellcontrol/redux@4.2.1-c95122f97e893ba77aaa/node_modules/redux/es/redux.js","../../../../npm/.store/sdx_incellcontrol/redux-thunk@2.4.2-2ef460f4cdf954b04ff8/node_modules/redux-thunk/es/index.js","src/types/index.ts","src/store/AppReducer.ts","src/store/Store.ts","src/components/SettingsPane/SettingsPaneUI.tsx","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-focus-zone@0.19.6-003662c0dafcd0a76eba/node_modules/@fluentui-react-native/focus-zone/lib/FocusZone.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/events.types.js","../../../../npm/.store/sdx_incellcontrol/tslib@2.6.3-86667b1b3c37a36dd54d/node_modules/tslib/tslib.es6.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/useAsPressable.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/usePressability.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/Pressability/Pressability.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/Pressability/HoverState.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/Pressability/InternalTypes.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/usePressableState.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/useViewCommandFocus.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/setAndForwardRef.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/useSelectedKey.hooks.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/useAsToggle.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/useAsToggleWithEvent.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/useControllableValue.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/useConst.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/useKeyProps.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-memo-cache@1.3.3-cb3b7db1c429964b2272/node_modules/@fluentui-react-native/memo-cache/lib/getCacheEntry.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-memo-cache@1.3.3-cb3b7db1c429964b2272/node_modules/@fluentui-react-native/memo-cache/lib/getMemoCache.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-memo-cache@1.3.3-cb3b7db1c429964b2272/node_modules/@fluentui-react-native/memo-cache/lib/memoize.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/useOnPressWithFocus.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-immutable-merge@1.2.2-932c57e477d12f9708c0/node_modules/@fluentui-react-native/immutable-merge/lib/Merge.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-merge-props@0.9.1-5f0474e379d3c7716dc2/node_modules/@fluentui-react-native/merge-props/lib/mergeStyles.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-merge-props@0.9.1-5f0474e379d3c7716dc2/node_modules/@fluentui-react-native/merge-props/lib/mergeProps.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tokens@0.23.1-41fa2e3b4354c48f16c7/node_modules/@fluentui-react-native/tokens/lib/color-tokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tokens@0.23.1-41fa2e3b4354c48f16c7/node_modules/@fluentui-react-native/tokens/lib/tokenBuilder.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tokens@0.23.1-41fa2e3b4354c48f16c7/node_modules/@fluentui-react-native/tokens/lib/border-tokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tokens@0.23.1-41fa2e3b4354c48f16c7/node_modules/@fluentui-react-native/tokens/lib/token.function.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tokens@0.23.1-41fa2e3b4354c48f16c7/node_modules/@fluentui-react-native/tokens/lib/text-tokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tokens@0.23.1-41fa2e3b4354c48f16c7/node_modules/@fluentui-react-native/tokens/lib/layout-tokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tokens@0.23.1-41fa2e3b4354c48f16c7/node_modules/@fluentui-react-native/tokens/lib/shadow-tokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-use-slot@0.6.2-07a9afd095e02771ba7d/node_modules/@fluentui-react-native/use-slot/lib/renderSlot.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-use-slot@0.6.2-07a9afd095e02771ba7d/node_modules/@fluentui-react-native/use-slot/lib/stagedComponent.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-use-slot@0.6.2-07a9afd095e02771ba7d/node_modules/@fluentui-react-native/use-slot/lib/useSlot.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-use-slot@0.6.2-07a9afd095e02771ba7d/node_modules/@fluentui-react-native/use-slot/lib/withSlots.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-use-slots@0.10.2-1f53a9e1f7a74cf14236/node_modules/@fluentui-react-native/use-slots/lib/buildUseSlots.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-theme-types@0.39.1-610c6164640df75575f7/node_modules/@fluentui-react-native/theme-types/lib/context.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-use-tokens@0.6.2-3ff14df52bdbc55ee7a1/node_modules/@fluentui-react-native/use-tokens/lib/applyPropsToTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-use-tokens@0.6.2-3ff14df52bdbc55ee7a1/node_modules/@fluentui-react-native/use-tokens/lib/applyTokenLayers.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-use-tokens@0.6.2-3ff14df52bdbc55ee7a1/node_modules/@fluentui-react-native/use-tokens/lib/buildUseTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-use-tokens@0.6.2-3ff14df52bdbc55ee7a1/node_modules/@fluentui-react-native/use-tokens/lib/patchTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-use-styling@0.13.2-fcde4db0501aba87235f/node_modules/@fluentui-react-native/use-styling/lib/buildProps.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-use-styling@0.13.2-fcde4db0501aba87235f/node_modules/@fluentui-react-native/use-styling/lib/buildUseStyling.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-composition@0.11.2-4e22e482d8ec8b4b26a4/node_modules/@fluentui-react-native/composition/lib/composeFactory.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-default-theme@0.26.2-63ab3f527ffef3576d0c/node_modules/@fluentui-react-native/default-theme/lib/defaultTheme.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-theme-tokens@0.27.1-87e11b4b74cecaecd83d/node_modules/@fluentui-react-native/theme-tokens/lib/tokens-global.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-theme-tokens@0.27.1-87e11b4b74cecaecd83d/node_modules/@fluentui-react-native/theme-tokens/lib/getTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-theme-tokens@0.27.1-87e11b4b74cecaecd83d/node_modules/@fluentui-react-native/theme-tokens/lib/highContrast/tokens-alias.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-theming-utils@0.26.1-3d5a151691142943bb2d/node_modules/@fluentui-react-native/theming-utils/lib/getCurrentAppearance.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-theming-utils@0.26.1-3d5a151691142943bb2d/node_modules/@fluentui-react-native/theming-utils/lib/isHighContrast.macos.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-theming-utils@0.26.1-3d5a151691142943bb2d/node_modules/@fluentui-react-native/theming-utils/lib/mapPipelineToTheme.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-theming-utils@0.26.1-3d5a151691142943bb2d/node_modules/@fluentui-react-native/theming-utils/lib/mapPipelineToShadow.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-default-theme@0.26.2-63ab3f527ffef3576d0c/node_modules/@fluentui-react-native/default-theme/lib/createAliasTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-default-theme@0.26.2-63ab3f527ffef3576d0c/node_modules/@fluentui-react-native/default-theme/lib/defaultColors.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-default-theme@0.26.2-63ab3f527ffef3576d0c/node_modules/@fluentui-react-native/default-theme/lib/stockWebPalette.macos.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-default-theme@0.26.2-63ab3f527ffef3576d0c/node_modules/@fluentui-react-native/default-theme/lib/createDefaultTheme.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-theme@0.11.1-e0a88e870ade2b99bf0b/node_modules/@fluentui-react-native/theme/lib/ThemeProvider.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-theme@0.11.1-e0a88e870ade2b99bf0b/node_modules/@fluentui-react-native/theme/lib/mergeTheme.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-theme@0.11.1-e0a88e870ade2b99bf0b/node_modules/@fluentui-react-native/theme/lib/themeReference.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-framework@0.14.2-da261f4afce2c996de74/node_modules/@fluentui-react-native/framework/lib/useFluentTheme.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-framework@0.14.2-da261f4afce2c996de74/node_modules/@fluentui-react-native/framework/lib/themeHelper.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-framework@0.14.2-da261f4afce2c996de74/node_modules/@fluentui-react-native/framework/lib/compose.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-framework@0.14.2-da261f4afce2c996de74/node_modules/@fluentui-react-native/framework/lib/compressible.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-framework@0.14.2-da261f4afce2c996de74/node_modules/@fluentui-react-native/framework/lib/useStyling.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-framework@0.14.2-da261f4afce2c996de74/node_modules/@fluentui-react-native/framework/lib/useTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-interactive-hooks@0.27.4-5c840496c492d347c337/node_modules/@fluentui-react-native/interactive-hooks/lib/getAccessibilityState.js","../../../../npm/.store/sdx_incellcontrol/@uifabricshared-foundation-composable@0.13.1-75b8304ea801b96cb276/node_modules/@uifabricshared/foundation-composable/lib/Composable.slots.js","../../../../npm/.store/sdx_incellcontrol/@uifabricshared-foundation-settings@0.15.1-20ab79ab4edb0b94c64b/node_modules/@uifabricshared/foundation-settings/lib/Settings.js","../../../../npm/.store/sdx_incellcontrol/@uifabricshared-foundation-composable@0.13.1-75b8304ea801b96cb276/node_modules/@uifabricshared/foundation-composable/lib/slots.js","../../../../npm/.store/sdx_incellcontrol/@uifabricshared-foundation-composable@0.13.1-75b8304ea801b96cb276/node_modules/@uifabricshared/foundation-composable/lib/Composable.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/Tab/Tab.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/Tab/Tab.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-icon@0.21.8-5caddd3811bd4008afb9/node_modules/@fluentui-react-native/icon/lib/legacy/Icon.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-text@0.24.6-e69b49294bf115bd8536/node_modules/@fluentui-react-native/text/lib/Text.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-text@0.24.6-e69b49294bf115bd8536/node_modules/@fluentui-react-native/text/lib/Text.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-text@0.24.6-e69b49294bf115bd8536/node_modules/@fluentui-react-native/text/lib/TextTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-text@0.24.6-e69b49294bf115bd8536/node_modules/@fluentui-react-native/text/lib/deprecated/Text.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-text@0.24.6-e69b49294bf115bd8536/node_modules/@fluentui-react-native/text/lib/deprecated/Text.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-adapters@0.13.0-44cb52fedd6226c0fa0f/node_modules/@fluentui-react-native/adapters/lib/adapters.macos.js","../../../../npm/.store/sdx_incellcontrol/@uifabricshared-themed-settings@0.12.1-4189a1f9b004a6f5bd52/node_modules/@uifabricshared/themed-settings/lib/CustomSettings.js","../../../../npm/.store/sdx_incellcontrol/@uifabricshared-theming-ramp@0.20.2-7b3112a0fa9dc070d4bb/node_modules/@uifabricshared/theming-ramp/lib/SettingsWorker.js","../../../../npm/.store/sdx_incellcontrol/@uifabricshared-foundation-tokens@0.15.2-dbc97ae41eb546e6488c/node_modules/@uifabricshared/foundation-tokens/lib/Token.js","../../../../npm/.store/sdx_incellcontrol/@uifabricshared-foundation-tokens@0.15.2-dbc97ae41eb546e6488c/node_modules/@uifabricshared/foundation-tokens/lib/Token.function.js","../../../../npm/.store/sdx_incellcontrol/@uifabricshared-foundation-compose@1.15.2-feb655768f81d4a1cd6c/node_modules/@uifabricshared/foundation-compose/lib/useStyling.js","../../../../npm/.store/sdx_incellcontrol/@uifabricshared-foundation-compose@1.15.2-feb655768f81d4a1cd6c/node_modules/@uifabricshared/foundation-compose/lib/compose.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-text@0.24.6-e69b49294bf115bd8536/node_modules/@fluentui-react-native/text/lib/deprecated/Text.settings.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-icon@0.21.8-5caddd3811bd4008afb9/node_modules/@fluentui-react-native/icon/lib/legacy/useIconProps.hooks.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-icon@0.21.8-5caddd3811bd4008afb9/node_modules/@fluentui-react-native/icon/lib/FontIcon/FontIcon.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-icon@0.21.8-5caddd3811bd4008afb9/node_modules/@fluentui-react-native/icon/lib/SvgIcon/SvgIcon.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-icon@0.21.8-5caddd3811bd4008afb9/node_modules/@fluentui-react-native/icon/lib/Icon.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-icon@0.21.8-5caddd3811bd4008afb9/node_modules/@fluentui-react-native/icon/lib/FontIcon/FontIcon.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-icon@0.21.8-5caddd3811bd4008afb9/node_modules/@fluentui-react-native/icon/lib/FontIcon/useFontIcon.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-icon@0.21.8-5caddd3811bd4008afb9/node_modules/@fluentui-react-native/icon/lib/SvgIcon/SvgIcon.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-icon@0.21.8-5caddd3811bd4008afb9/node_modules/@fluentui-react-native/icon/lib/SvgIcon/useSvgIcon.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/Tab/Tab.styling.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/Tab/TabColorTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/Tab/TabTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/Tab/useTab.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/TabList/TabListContext.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/Tab/useTabAnimation.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/TabList/TabList.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/TabList/TabList.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/TabList/TabListTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/TabList/TabList.styling.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/TabList/useTabList.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/TabListAnimatedIndicator/TabListAnimatedIndicator.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/TabListAnimatedIndicator/TabListAnimatedIndicator.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-tablist@0.7.2-7872f32cc957c501a0cf/node_modules/@fluentui-react-native/tablist/lib/TabListAnimatedIndicator/useAnimatedIndicatorStyles.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/createAliasesFromPalette.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/createBrandedThemeWithAlias.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/getOfficeTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/highContrast/tokens-alias.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/createOfficeAliasTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/paletteFromOfficeColors.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/createPartialOfficeTheme.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/createFontAliasTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/getThemeTypography.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/NativeModule/getThemingModule.native.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/NativeModule/fallbackOfficeModule.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/NativeModule/hostThemeSetting.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-win32-theme@0.34.5-e05b048bf9af597dea7e/node_modules/@fluentui-react-native/win32-theme/lib/createOfficeTheme.js","src/components/SettingsPane/AppearanceSection.tsx","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-radio-group@0.21.14-b0ef6f636c9c1d444210/node_modules/@fluentui-react-native/radio-group/lib/RadioGroup/RadioGroup.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-radio-group@0.21.14-b0ef6f636c9c1d444210/node_modules/@fluentui-react-native/radio-group/lib/RadioGroup/RadioGroup.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-radio-group@0.21.14-b0ef6f636c9c1d444210/node_modules/@fluentui-react-native/radio-group/lib/RadioGroup/RadioGroupTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-radio-group@0.21.14-b0ef6f636c9c1d444210/node_modules/@fluentui-react-native/radio-group/lib/RadioGroup/RadioGroup.styling.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-radio-group@0.21.14-b0ef6f636c9c1d444210/node_modules/@fluentui-react-native/radio-group/lib/RadioGroup/radioGroupContext.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-radio-group@0.21.14-b0ef6f636c9c1d444210/node_modules/@fluentui-react-native/radio-group/lib/RadioGroup/useRadioGroup.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-radio-group@0.21.14-b0ef6f636c9c1d444210/node_modules/@fluentui-react-native/radio-group/lib/RadioGroup/useRadioGroupContextValue.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-radio-group@0.21.14-b0ef6f636c9c1d444210/node_modules/@fluentui-react-native/radio-group/lib/Radio/Radio.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-radio-group@0.21.14-b0ef6f636c9c1d444210/node_modules/@fluentui-react-native/radio-group/lib/Radio/Radio.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-radio-group@0.21.14-b0ef6f636c9c1d444210/node_modules/@fluentui-react-native/radio-group/lib/Radio/RadioTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-radio-group@0.21.14-b0ef6f636c9c1d444210/node_modules/@fluentui-react-native/radio-group/lib/Radio/Radio.styling.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-radio-group@0.21.14-b0ef6f636c9c1d444210/node_modules/@fluentui-react-native/radio-group/lib/Radio/useRadio.js","src/styles/SharedStyles.ts","src/utils/UIConstants.ts","src/components/SettingsPane/ControlSection.tsx","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-button@0.39.4-74b79a956b757bbfe2d0/node_modules/@fluentui-react-native/button/lib/Button.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-button@0.39.4-74b79a956b757bbfe2d0/node_modules/@fluentui-react-native/button/lib/Button.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-experimental-activity-indicator@0.10.3-0f428d04ef0e778c3f4e/node_modules/@fluentui-react-native/experimental-activity-indicator/lib/CoreActivityIndicator.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-experimental-activity-indicator@0.10.3-0f428d04ef0e778c3f4e/node_modules/@fluentui-react-native/experimental-activity-indicator/lib/ActivityIndicator.styling.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-experimental-activity-indicator@0.10.3-0f428d04ef0e778c3f4e/node_modules/@fluentui-react-native/experimental-activity-indicator/lib/ActivityIndicator.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-button@0.39.4-74b79a956b757bbfe2d0/node_modules/@fluentui-react-native/button/lib/Button.styling.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-styling-utils@0.7.0-f2b9fea0a7d8ff0538ae/node_modules/@fluentui-react-native/styling-utils/lib/getMarginAdjustment.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-button@0.39.4-74b79a956b757bbfe2d0/node_modules/@fluentui-react-native/button/lib/ButtonColorTokens.macos.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-button@0.39.4-74b79a956b757bbfe2d0/node_modules/@fluentui-react-native/button/lib/ButtonFontTokens.macos.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-button@0.39.4-74b79a956b757bbfe2d0/node_modules/@fluentui-react-native/button/lib/ButtonTokens.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-button@0.39.4-74b79a956b757bbfe2d0/node_modules/@fluentui-react-native/button/lib/useButton.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/context/menuContext.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/context/menuListContext.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/context/menuTriggerContext.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/Menu/Menu.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/Menu/Menu.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/Menu/renderMenu.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/Menu/useMenu.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/Menu/useMenuContextValue.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuTrigger/MenuTrigger.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuTrigger/MenuTrigger.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuTrigger/useMenuTrigger.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuTrigger/useMergeRefs.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/consts.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuPopover/MenuPopover.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuPopover/MenuPopover.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuPopover/MenuPopoverTokens.macos.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuPopover/useMenuPopover.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuCallout/MenuCallout.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-callout@0.27.2-b697a12eb0c43d99f0fd/node_modules/@fluentui-react-native/callout/lib/Callout.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-callout@0.27.2-b697a12eb0c43d99f0fd/node_modules/@fluentui-react-native/callout/lib/Callout.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-callout@0.27.2-b697a12eb0c43d99f0fd/node_modules/@fluentui-react-native/callout/lib/Callout.settings.macos.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuCallout/MenuCallout.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuItem/MenuItem.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuItem/MenuItem.styling.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuItem/MenuItem.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuItem/MenuItemTokens.macos.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuItem/useMenuItem.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuList/useMenuList.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuList/MenuList.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuList/MenuList.styling.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuList/MenuList.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuList/MenuListTokens.macos.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-menu@1.14.19-a167bc497c4478547952/node_modules/@fluentui-react-native/menu/lib/MenuList/useMenuListContextValue.js","src/components/Icons/ChevronDown16Icon.tsx","src/components/Icons/SettingsIcon.tsx","src/components/SettingsPane/DropdownValuesList.tsx","src/components/Icons/AddIcon.tsx","src/components/Icons/ArrowUpIcon.tsx","src/components/Icons/ArrowDownIcon.tsx","src/components/Icons/ChevronDown12Icon.tsx","src/components/Icons/DeleteIcon.tsx","src/components/SettingsPane/DropdownValuesListStyles.tsx","src/components/Shared/Pill.tsx","src/Helpers.ts","src/components/Shared/Pill.styles.ts","src/components/Shared/PillDefaults.ts","src/components/SettingsPane/ControlSectionStyles.tsx","src/components/SettingsPane/ValidationSection.tsx","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-checkbox@0.23.8-9151a9ec53972e3646c3/node_modules/@fluentui-react-native/checkbox/lib/Checkbox.types.js","../../../../npm/.store/sdx_incellcontrol/@fluentui-react-native-checkbox@0.23.8-9151a9ec53972e3646c3/node_modules/@fluentui-react-native/checkbox/lib/Checkbox.macos.js","src/components/SettingsPane/ValidationSectionStyles.tsx","src/components/SettingsPane/SettingsPaneUI.styles.tsx","src/components/DropdownList/DropdownListApp.tsx","src/components/DropdownList/DropdownList.tsx","src/components/DropdownList/DropdownListItem.tsx","src/components/DropdownList/DropdownListItem.styles.ts","src/components/DropdownList/DropdownListEditButton.tsx","src/components/DropdownList/DropdownListEditButton.styles.tsx","src/Reka/InCellControlDataService.g.ts","src/Reka/RekaService.ts","src/components/DropdownList/DropdownList.styles.ts","src/components/DropdownList/DropdownList.types.ts","src/telemetry/InCellControlTelemetryLogger.ts"],"sourcesContent":["if (this.__platformBundles !== undefined) { var platformBundles = this.__platformBundles.concat(); Reflect.deleteProperty(this, '__platformBundles'); for (var i = 0; i < platformBundles.length; ++i) { console.log('PB start ' + (i + 1) + '/' + platformBundles.length); eval(platformBundles[i]); console.log('PB done ' + (i + 1) + '/' + platformBundles.length); }}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9fYXBwYnVuZGxlcHJlbHVkZV9fIl0sInNvdXJjZXNDb250ZW50IjpbImlmICh0aGlzLl9fcGxhdGZvcm1CdW5kbGVzICE9PSB1bmRlZmluZWQpIHsgdmFyIHBsYXRmb3JtQnVuZGxlcyA9IHRoaXMuX19wbGF0Zm9ybUJ1bmRsZXMuY29uY2F0KCk7IFJlZmxlY3QuZGVsZXRlUHJvcGVydHkodGhpcywgJ19fcGxhdGZvcm1CdW5kbGVzJyk7IGZvciAodmFyIGkgPSAwOyBpIDwgcGxhdGZvcm1CdW5kbGVzLmxlbmd0aDsgKytpKSB7IGNvbnNvbGUubG9nKCdQQiBzdGFydCAnICsgKGkgKyAxKSArICcvJyArIHBsYXRmb3JtQnVuZGxlcy5sZW5ndGgpOyBldmFsKHBsYXRmb3JtQnVuZGxlc1tpXSk7IGNvbnNvbGUubG9nKCdQQiBkb25lICAnICsgKGkgKyAxKSArICcvJyArIHBsYXRmb3JtQnVuZGxlcy5sZW5ndGgpOyAgfX0iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9\n","export var global = new Function(\"return this;\")();\nrequire(\"__appbundleprelude__\");\n","module.exports = OfficePlatformGlobal.React","module.exports = OfficePlatformGlobal.ReactNative.Components","function _objectDestructuringEmpty(t) {\n if (null == t) throw new TypeError(\"Cannot destructure \" + t);\n}\nmodule.exports = _objectDestructuringEmpty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/**\n * @license React\n * use-sync-external-store-shim.native.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\");\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useState = React.useState,\n useEffect = React.useEffect,\n useLayoutEffect = React.useLayoutEffect,\n useDebugValue = React.useDebugValue;\nfunction useSyncExternalStore$1(subscribe, getSnapshot) {\n var value = getSnapshot(),\n _useState = useState({ inst: { value: value, getSnapshot: getSnapshot } }),\n inst = _useState[0].inst,\n forceUpdate = _useState[1];\n useLayoutEffect(\n function () {\n inst.value = value;\n inst.getSnapshot = getSnapshot;\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n },\n [subscribe, value, getSnapshot]\n );\n useEffect(\n function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n return subscribe(function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n });\n },\n [subscribe]\n );\n useDebugValue(value);\n return value;\n}\nfunction checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n inst = inst.value;\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(inst, nextValue);\n } catch (error) {\n return !0;\n }\n}\nexports.useSyncExternalStore =\n void 0 !== React.useSyncExternalStore\n ? React.useSyncExternalStore\n : useSyncExternalStore$1;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim.native.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim.native.development.js');\n}\n","/**\n * @license React\n * use-sync-external-store-shim/with-selector.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\"),\n shim = require(\"use-sync-external-store/shim\");\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useSyncExternalStore = shim.useSyncExternalStore,\n useRef = React.useRef,\n useEffect = React.useEffect,\n useMemo = React.useMemo,\n useDebugValue = React.useDebugValue;\nexports.useSyncExternalStoreWithSelector = function (\n subscribe,\n getSnapshot,\n getServerSnapshot,\n selector,\n isEqual\n) {\n var instRef = useRef(null);\n if (null === instRef.current) {\n var inst = { hasValue: !1, value: null };\n instRef.current = inst;\n } else inst = instRef.current;\n instRef = useMemo(\n function () {\n function memoizedSelector(nextSnapshot) {\n if (!hasMemo) {\n hasMemo = !0;\n memoizedSnapshot = nextSnapshot;\n nextSnapshot = selector(nextSnapshot);\n if (void 0 !== isEqual && inst.hasValue) {\n var currentSelection = inst.value;\n if (isEqual(currentSelection, nextSnapshot))\n return (memoizedSelection = currentSelection);\n }\n return (memoizedSelection = nextSnapshot);\n }\n currentSelection = memoizedSelection;\n if (objectIs(memoizedSnapshot, nextSnapshot)) return currentSelection;\n var nextSelection = selector(nextSnapshot);\n if (void 0 !== isEqual && isEqual(currentSelection, nextSelection))\n return (memoizedSnapshot = nextSnapshot), currentSelection;\n memoizedSnapshot = nextSnapshot;\n return (memoizedSelection = nextSelection);\n }\n var hasMemo = !1,\n memoizedSnapshot,\n memoizedSelection,\n maybeGetServerSnapshot =\n void 0 === getServerSnapshot ? null : getServerSnapshot;\n return [\n function () {\n return memoizedSelector(getSnapshot());\n },\n null === maybeGetServerSnapshot\n ? void 0\n : function () {\n return memoizedSelector(maybeGetServerSnapshot());\n }\n ];\n },\n [getSnapshot, getServerSnapshot, selector, isEqual]\n );\n var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);\n useEffect(\n function () {\n inst.hasValue = !0;\n inst.value = value;\n },\n [value]\n );\n useDebugValue(value);\n return value;\n};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.development.js');\n}\n","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nmodule.exports = toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nmodule.exports = toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayWithHoles(r) {\n if (Array.isArray(r)) return r;\n}\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithHoles = require(\"./arrayWithHoles.js\");\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableRest = require(\"./nonIterableRest.js\");\nfunction _slicedToArray(r, e) {\n return arrayWithHoles(r) || iterableToArrayLimit(r, e) || unsupportedIterableToArray(r, e) || nonIterableRest();\n}\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _arrayWithoutHoles(r) {\n if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nmodule.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArray(r) {\n if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nmodule.exports = _iterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithoutHoles = require(\"./arrayWithoutHoles.js\");\nvar iterableToArray = require(\"./iterableToArray.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableSpread = require(\"./nonIterableSpread.js\");\nfunction _toConsumableArray(r) {\n return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nmodule.exports = _toConsumableArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","/**\n * @license React\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var b=Symbol.for(\"react.element\"),c=Symbol.for(\"react.portal\"),d=Symbol.for(\"react.fragment\"),e=Symbol.for(\"react.strict_mode\"),f=Symbol.for(\"react.profiler\"),g=Symbol.for(\"react.provider\"),h=Symbol.for(\"react.context\"),k=Symbol.for(\"react.server_context\"),l=Symbol.for(\"react.forward_ref\"),m=Symbol.for(\"react.suspense\"),n=Symbol.for(\"react.suspense_list\"),p=Symbol.for(\"react.memo\"),q=Symbol.for(\"react.lazy\"),t=Symbol.for(\"react.offscreen\"),u;u=Symbol.for(\"react.module.reference\");\nfunction v(a){if(\"object\"===typeof a&&null!==a){var r=a.$$typeof;switch(r){case b:switch(a=a.type,a){case d:case f:case e:case m:case n:return a;default:switch(a=a&&a.$$typeof,a){case k:case h:case l:case q:case p:case g:return a;default:return r}}case c:return r}}}exports.ContextConsumer=h;exports.ContextProvider=g;exports.Element=b;exports.ForwardRef=l;exports.Fragment=d;exports.Lazy=q;exports.Memo=p;exports.Portal=c;exports.Profiler=f;exports.StrictMode=e;exports.Suspense=m;\nexports.SuspenseList=n;exports.isAsyncMode=function(){return!1};exports.isConcurrentMode=function(){return!1};exports.isContextConsumer=function(a){return v(a)===h};exports.isContextProvider=function(a){return v(a)===g};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===b};exports.isForwardRef=function(a){return v(a)===l};exports.isFragment=function(a){return v(a)===d};exports.isLazy=function(a){return v(a)===q};exports.isMemo=function(a){return v(a)===p};\nexports.isPortal=function(a){return v(a)===c};exports.isProfiler=function(a){return v(a)===f};exports.isStrictMode=function(a){return v(a)===e};exports.isSuspense=function(a){return v(a)===m};exports.isSuspenseList=function(a){return v(a)===n};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===d||a===f||a===e||a===m||a===n||a===t||\"object\"===typeof a&&null!==a&&(a.$$typeof===q||a.$$typeof===p||a.$$typeof===g||a.$$typeof===h||a.$$typeof===l||a.$$typeof===u||void 0!==a.getModuleId)?!0:!1};exports.typeOf=v;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","function asyncGeneratorStep(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c),\n u = i.value;\n } catch (n) {\n return void e(n);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator(n) {\n return function () {\n var t = this,\n e = arguments;\n return new Promise(function (r, o) {\n var a = n.apply(t, e);\n function _next(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n);\n }\n function _throw(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n);\n }\n _next(void 0);\n });\n };\n}\nmodule.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _classCallCheck(a, n) {\n if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\");\n}\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, \"value\" in o && (o.writable = !0), Object.defineProperty(e, toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, \"prototype\", {\n writable: !1\n }), e;\n}\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.ControlType = void 0;\r\nvar ControlType;\r\n(function (ControlType) {\r\n ControlType[\"blank\"] = \"\";\r\n ControlType[\"empty\"] = \"Empty\";\r\n ControlType[\"checkbox\"] = \"Checkbox\";\r\n ControlType[\"dropdown\"] = \"Dropdown\";\r\n})(ControlType = exports.ControlType || (exports.ControlType = {}));\r\n;\r\n//# sourceMappingURL=index.js.map","\"use strict\";\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.createRichApiDataSource = void 0;\r\n/// \r\n/// \r\n/* tslint:disable:no-any */\r\nconst types_1 = require(\"../types\");\r\nclass RichApi {\r\n constructor(controlId, reloadControlDataCallback) {\r\n this._officeEvents = [];\r\n // Api surface\r\n this.loadControlData = () => __awaiter(this, void 0, void 0, function* () {\r\n const controlData = yield this._loadControlData();\r\n return Promise.resolve(controlData);\r\n });\r\n this.loadDropdownData = () => __awaiter(this, void 0, void 0, function* () {\r\n const controlData = yield this._loadControlData();\r\n if (controlData.type !== types_1.ControlType.dropdown) {\r\n return Promise.reject('Control type is not a dropdown');\r\n }\r\n return Promise.resolve(controlData);\r\n });\r\n this.updateControlData = (controlData) => __awaiter(this, void 0, void 0, function* () {\r\n const promise = yield this._updateControlData(controlData);\r\n return Promise.resolve(promise);\r\n });\r\n this.subscribeToEvents = () => {\r\n return Excel.run(this._createRequestContext(), (context) => {\r\n this._subscribeToEvents(context);\r\n return context.sync();\r\n });\r\n };\r\n this._reloadControlData = () => {\r\n if (this._reloadControlDataCallback) {\r\n this._reloadControlDataCallback();\r\n }\r\n return Promise.resolve();\r\n };\r\n this._controlId = controlId;\r\n this._reloadControlDataCallback = reloadControlDataCallback;\r\n }\r\n _loadControlData() {\r\n return Excel.run(this._createRequestContext(), (context) => __awaiter(this, void 0, void 0, function* () {\r\n const range = context.workbook.getActiveCell();\r\n range.load(\"control\");\r\n return context.sync().then(() => {\r\n // Extract type and properties from the control object\r\n const type = range.control.type;\r\n const properties = range.control.properties;\r\n // Initialize controlData with type & properties\r\n const controlData = { type, properties };\r\n return controlData;\r\n });\r\n }));\r\n }\r\n _updateControlData(controlData) {\r\n return Excel.run(this._createRequestContext(), (context) => __awaiter(this, void 0, void 0, function* () {\r\n try {\r\n const range = context.workbook.getActiveCell();\r\n range.control = controlData;\r\n yield context.sync();\r\n }\r\n catch (error) {\r\n throw error;\r\n }\r\n }));\r\n }\r\n _subscribeToEvents(context) {\r\n if (this._officeEvents.length !== 0) {\r\n return;\r\n }\r\n const sheets = context.workbook.worksheets;\r\n this._officeEvents.push(sheets.onSelectionChanged.add(() => this._reloadControlData()));\r\n this._officeEvents.push(sheets.onActivated.add(() => this._reloadControlData()));\r\n }\r\n // There are multiple workbooks with the task pane opened hence control id is needed to identify the workbook. \r\n // Whereas we do not need that for on-grid popup since it can be opened on one workbook at a time.\r\n _createRequestContext() {\r\n const context = new Excel.RequestContext();\r\n // eslint-disable-next-line eqeqeq -- Bulk disabled to switch to eslint\r\n if (this._controlId != undefined) {\r\n context.requestHeaders[OfficeExtension.Constants.officeControlId] =\r\n this._controlId;\r\n }\r\n return context;\r\n }\r\n}\r\nfunction createRichApiDataSource(controlId, reloadControlDataCallback) {\r\n return new RichApi(controlId, reloadControlDataCallback);\r\n}\r\nexports.createRichApiDataSource = createRichApiDataSource;\r\n//# sourceMappingURL=RichApi.js.map","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.createRichApiDataSource = void 0;\r\nvar RichApi_1 = require(\"./RichApi\");\r\nObject.defineProperty(exports, \"createRichApiDataSource\", { enumerable: true, get: function () { return RichApi_1.createRichApiDataSource; } });\r\n//# sourceMappingURL=index.js.map","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.ControlType = exports.createRichApiDataSource = void 0;\r\nvar richApi_1 = require(\"./richApi\");\r\nObject.defineProperty(exports, \"createRichApiDataSource\", { enumerable: true, get: function () { return richApi_1.createRichApiDataSource; } });\r\nvar types_1 = require(\"./types\");\r\nObject.defineProperty(exports, \"ControlType\", { enumerable: true, get: function () { return types_1.ControlType; } });\r\n//# sourceMappingURL=index.js.map","function _assertThisInitialized(e) {\n if (void 0 === e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return e;\n}\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar assertThisInitialized = require(\"./assertThisInitialized.js\");\nfunction _possibleConstructorReturn(t, e) {\n if (e && (\"object\" == _typeof(e) || \"function\" == typeof e)) return e;\n if (void 0 !== e) throw new TypeError(\"Derived constructors may only return object or undefined\");\n return assertThisInitialized(t);\n}\nmodule.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _getPrototypeOf(t) {\n return (module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) {\n return t.__proto__ || Object.getPrototypeOf(t);\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _getPrototypeOf(t);\n}\nmodule.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(t, e) {\n return (module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _setPrototypeOf(t, e);\n}\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nfunction _inherits(t, e) {\n if (\"function\" != typeof e && null !== e) throw new TypeError(\"Super expression must either be null or a function\");\n t.prototype = Object.create(e && e.prototype, {\n constructor: {\n value: t,\n writable: !0,\n configurable: !0\n }\n }), Object.defineProperty(t, \"prototype\", {\n writable: !1\n }), e && setPrototypeOf(t, e);\n}\nmodule.exports = _inherits, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar invariant = function(condition, format, a, b, c, d, e, f) {\n if (process.env.NODE_ENV !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error(\n 'Minified exception occurred; use the non-minified dev environment ' +\n 'for the full error message and additional helpful warnings.'\n );\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(\n format.replace(/%s/g, function() { return args[argIndex++]; })\n );\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n};\n\nmodule.exports = invariant;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.assertNever = assertNever;\n/**\n * Helper function for exhaustive checks of discriminated unions.\n * https://basarat.gitbooks.io/typescript/docs/types/discriminated-unions.html\n *\n * @example\n *\n * type A = {type: 'a'};\n * type B = {type: 'b'};\n * type Union = A | B;\n *\n * function doSomething(arg: Union) {\n * if (arg.type === 'a') {\n * return something;\n * }\n *\n * if (arg.type === 'b') {\n * return somethingElse;\n * }\n *\n * // TS will error if there are other types in the union\n * // Will throw an Error when called at runtime.\n * // Use `assertNever(arg, true)` instead to fail silently.\n * return assertNever(arg);\n * }\n */\nfunction assertNever(value, errorMessageOrNoThrow) {\n if (typeof errorMessageOrNoThrow === 'string') {\n throw new Error(errorMessageOrNoThrow);\n }\n if (typeof errorMessageOrNoThrow === 'function') {\n throw new Error(errorMessageOrNoThrow(value));\n }\n if (errorMessageOrNoThrow) {\n return value;\n }\n throw new Error(\"Unhandled discriminated union member: \".concat(JSON.stringify(value)));\n}\nexports.default = assertNever;\n","function _interopRequireDefault(e) {\n return e && e.__esModule ? e : {\n \"default\": e\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","module.exports = OfficePlatformGlobal.ReactNative.codegenNativeComponent","module.exports = OfficePlatformGlobal.ReactNative.NativeComponentRegistry","var _interopRequireDefault=require(\"@babel/runtime/helpers/interopRequireDefault\");Object.defineProperty(exports,\"__esModule\",{value:true});exports.default=exports.__INTERNAL_VIEW_CONFIG=void 0;var _codegenNativeComponent=_interopRequireDefault(require(\"react-native/Libraries/Utilities/codegenNativeComponent\"));var NativeComponentRegistry=require('react-native/Libraries/NativeComponent/NativeComponentRegistry');var nativeComponentName='RCTFocusZone';var __INTERNAL_VIEW_CONFIG=exports.__INTERNAL_VIEW_CONFIG={uiViewClassName:'RCTFocusZone',validAttributes:{navigateAtEnd:true,defaultTabbableElement:true,focusZoneDirection:true,use2DNavigation:true,tabKeyNavigation:true,disabled:true,isTabNavigation:true}};var _default=exports.default=NativeComponentRegistry.get(nativeComponentName,function(){return __INTERNAL_VIEW_CONFIG;});","module.exports = OfficePlatformGlobal.SVG","module.exports = OfficePlatformGlobal.ReactJsxRuntime","module.exports = OfficePlatformGlobal.SDX.StringResources","{\r\n \"ControlTabTitle\": \"Control\",\r\n \"_ControlTabTitle.comment\": \"The title of the Control tab\",\r\n\r\n \"AppearanceTabTitle\": \"Appearance\",\r\n \"_AppearanceTabTitle.comment\": \"The title of the Appearance tab\",\r\n \r\n \"ValidationTabTitle\": \"Validation\",\r\n \"_ValidationTabTitle.comment\": \"The title of the Validation tab\",\r\n\r\n \"EditButtonTitle\": \"Edit Dropdown\",\r\n \"_EditButtonTitle.comment\": \"The function of the edit button on the Dropdown list\",\r\n\r\n \"AppearanceSectionDropdownStyleTitle\": \"Dropdown style\",\r\n \"_AppearanceSectionDropdownStyleTitle.comment\": \"The title of the Dropdown style section\",\r\n\r\n \"AppearanceSectionShowDropdownArrowInCellLabel\": \"Show dropdown arrow in cell\",\r\n \"_AppearanceSectionShowDropdownArrowInCellLabel.comment\": \"The label for the show dropdown arrow in cell radio group\",\r\n\r\n \"AppearanceSectionPillRadioButtonLabel\": \"Pill\",\r\n \"_AppearanceSectionPillRadioButtonLabel.comment\": \"The label for the Pill radio button\",\r\n\r\n \"AppearanceSectionTextRadioButtonLabel\": \"Text\",\r\n \"_AppearanceSectionTextRadioButtonLabel.comment\": \"The label for the Text radio button\",\r\n\r\n \"AppearanceSectionAlwaysRadioButtonLabel\": \"Always\",\r\n \"_AppearanceSectionAlwaysRadioButtonLabel.comment\": \"The label for the Always radio button\",\r\n\r\n \"AppearanceSectionWhenCellIsActiveRadioButtonLabel\": \"When cell is active\",\r\n \"_AppearanceSectionWhenCellIsActiveRadioButtonLabel.comment\": \"The label for the When cell is active radio button\",\r\n\r\n \"AppearanceSectionShowDropdownArrowInCellLabel\": \"Show dropdown arrow in cell\",\r\n \"_AppearanceSectionShowDropdownArrowInCellLabel.comment\": \"The label for the show dropdown arrow in cell radio group\",\r\n\r\n \"ControlSectionTypeTitle\": \"Type\",\r\n \"_ControlSectionTypeTitle.comment\": \"The title of the Control Type section\",\r\n\r\n \"ControlSectionItemsListTitle\": \"Items\",\r\n \"_ControlSectionItemsListTitle.comment\": \"The title of the Dropdown list of items\",\r\n\r\n \"ControlSectionControlTypeNone\": \"None\",\r\n \"_ControlSectionControlTypeNone.comment\": \"The control type None\",\r\n\r\n \"ControlSectionControlTypeCheckbox\": \"Checkbox\",\r\n \"_ControlSectionControlTypeCheckbox.comment\": \"The control type Checkbox\",\r\n\r\n \"ControlSectionControlTypeDropdown\": \"Dropdown\",\r\n \"_ControlSectionControlTypeDropdown.comment\": \"The control type Dropdown\",\r\n\r\n \"ControlSectionItemModeSettings\": \"Dropdown Item Mode Settings\",\r\n \"_ControlSectionItemModeSettings.comment\": \"The item mode settings button\",\r\n\r\n \"ControlSectionItemModeEnterItemsManually\": \"Enter items manually\",\r\n \"_ControlSectionItemModeEnterItemsManually.comment\": \"The item mode where users can enter items manually\",\r\n\r\n \"ControlSectionItemModeUseFormulaOrRange\": \"Use a formula or range\",\r\n \"_ControlSectionItemModeUseFormulaOrRange.comment\": \"The item mode where users can use a formula or range\",\r\n\r\n \"ValidationSectionShowTooltipCheckboxLabel\": \"Show tooltip when cell is selected\",\r\n \"_ValidationSectionShowTooltipCheckboxLabel.comment\": \"The label for the Show tooltip checkbox\",\r\n\r\n \"ValidationSectionPreventInvalidEntryCheckboxLabel\": \"Prevent invalid entry\",\r\n \"_ValidationSectionPreventInvalidEntryCheckboxLabel.comment\": \"The label for the Prevent invalid entry checkbox\",\r\n\r\n \"ValidationSectionIgnoreBlankCheckboxLabel\": \"Ignore blank\",\r\n \"_ValidationSectionIgnoreBlankCheckboxLabel.comment\": \"The label for the Ignore blank checkbox\",\r\n\r\n \"ValidationSectionTitleHeader\": \"Title\",\r\n \"_ValidationSectionTitleHeader.comment\": \"The label for the Title header\",\r\n\r\n \"ValidationSectionDescriptionHeader\": \"Description\",\r\n \"_ValidationSectionDescriptionHeader.comment\": \"The label for the Description header\",\r\n\r\n \"ValidationSectionInvalidEntryTitleHeader\": \"Invalid entry title\",\r\n \"_ValidationSectionInvalidEntryTitleHeader.comment\": \"The label for the Invalid entry title header\",\r\n\r\n \"ValidationSectionInvalidEntryDescriptionTitleHeader\": \"Invalid entry description\",\r\n \"_ValidationSectionInvalidEntryDescriptionTitleHeader.comment\": \"The label for the Invalid entry title header\",\r\n\r\n \"DropdownValuesListAddItem\": \"Add item\",\r\n \"_DropdownValuesListAddItem.comment\": \"The label for the Add item button in the dropdown values list\",\r\n\r\n \"DropdownListOpenColorPickerAccessibilityLabel\": \"Color picker\",\r\n \"_DropdownListOpenColorPickerAccessibilityLabel.comment\": \"Button to open the color picker window\",\r\n\r\n \"DropdownListMoveItemUpAccessibilityLabel\": \"Move up\",\r\n \"_DropdownListMoveItemUpAccessibilityLabel.comment\": \"Button to move the current item one position up\",\r\n\r\n \"DropdownListMoveItemDownAccessibilityLabel\": \"Move down\",\r\n \"_DropdownListMoveItemDownAccessibilityLabel.comment\": \"Button to move the current item one position down\",\r\n\r\n \"DropdownListDeleteItemAccessibilityLabel\": \"Delete\",\r\n \"_DropdownListDeleteItemAccessibilityLabel.comment\": \"Button to delete the current item from the Dropdown list\"\r\n}","module.exports = OfficePlatformGlobal.ReactNative.codegenNativeCommands","module.exports = OfficePlatformGlobal.ReactNative.ViewConfigIgnore","module.exports = OfficePlatformGlobal.ReactNative.RendererProxy","var _interopRequireDefault=require(\"@babel/runtime/helpers/interopRequireDefault\");Object.defineProperty(exports,\"__esModule\",{value:true});exports.default=exports.__INTERNAL_VIEW_CONFIG=exports.Commands=void 0;var _codegenNativeCommands=_interopRequireDefault(require(\"react-native/Libraries/Utilities/codegenNativeCommands\"));var _codegenNativeComponent=_interopRequireDefault(require(\"react-native/Libraries/Utilities/codegenNativeComponent\"));var NativeComponentRegistry=require('react-native/Libraries/NativeComponent/NativeComponentRegistry');var _require=require('react-native/Libraries/NativeComponent/ViewConfigIgnore'),ConditionallyIgnoredEventHandlers=_require.ConditionallyIgnoredEventHandlers;var _require2=require(\"react-native/Libraries/ReactNative/RendererProxy\"),dispatchCommand=_require2.dispatchCommand;var nativeComponentName='RCTCallout';var __INTERNAL_VIEW_CONFIG=exports.__INTERNAL_VIEW_CONFIG={uiViewClassName:'RCTCallout',directEventTypes:{topRestoreFocus:{registrationName:'onRestoreFocus'},topDismiss:{registrationName:'onDismiss'},topShow:{registrationName:'onShow'}},validAttributes:Object.assign({accessibilityLabel:true,accessibilityOnShowAnnouncement:true,anchorRect:true,directionalHint:true,dismissBehaviors:true,doNotTakePointerCapture:true,focusable:true,isBeakVisible:true,maxHeight:true,maxWidth:true,setInitialFocus:true,target:true,testID:true},ConditionallyIgnoredEventHandlers({onRestoreFocus:true,onDismiss:true,onShow:true}))};var _default=exports.default=NativeComponentRegistry.get(nativeComponentName,function(){return __INTERNAL_VIEW_CONFIG;});var Commands=exports.Commands={focusWindow:function focusWindow(ref){dispatchCommand(ref,\"focusWindow\",[]);},blurWindow:function blurWindow(ref){dispatchCommand(ref,\"blurWindow\",[]);}};","var _interopRequireDefault=require(\"@babel/runtime/helpers/interopRequireDefault\");Object.defineProperty(exports,\"__esModule\",{value:true});exports.default=exports.__INTERNAL_VIEW_CONFIG=exports.Commands=void 0;var _codegenNativeCommands=_interopRequireDefault(require(\"react-native/Libraries/Utilities/codegenNativeCommands\"));var _codegenNativeComponent=_interopRequireDefault(require(\"react-native/Libraries/Utilities/codegenNativeComponent\"));var NativeComponentRegistry=require('react-native/Libraries/NativeComponent/NativeComponentRegistry');var _require=require('react-native/Libraries/NativeComponent/ViewConfigIgnore'),ConditionallyIgnoredEventHandlers=_require.ConditionallyIgnoredEventHandlers;var _require2=require(\"react-native/Libraries/ReactNative/RendererProxy\"),dispatchCommand=_require2.dispatchCommand;var nativeComponentName='FRNCallout';var __INTERNAL_VIEW_CONFIG=exports.__INTERNAL_VIEW_CONFIG={uiViewClassName:'FRNCallout',directEventTypes:{topRestoreFocus:{registrationName:'onRestoreFocus'},topDismiss:{registrationName:'onDismiss'},topShow:{registrationName:'onShow'}},validAttributes:Object.assign({accessibilityLabel:true,accessibilityOnShowAnnouncement:true,anchorRect:true,directionalHint:true,dismissBehaviors:true,doNotTakePointerCapture:true,focusable:true,isBeakVisible:true,maxHeight:true,maxWidth:true,setInitialFocus:true,target:true,testID:true},ConditionallyIgnoredEventHandlers({onRestoreFocus:true,onDismiss:true,onShow:true}))};var _default=exports.default=NativeComponentRegistry.get(nativeComponentName,function(){return __INTERNAL_VIEW_CONFIG;});var Commands=exports.Commands={focusWindow:function focusWindow(ref){dispatchCommand(ref,\"focusWindow\",[]);},blurWindow:function blurWindow(ref){dispatchCommand(ref,\"blurWindow\",[]);}};","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","var root = require('./_root');\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\nmodule.exports = now;\n","/** Used to match a single whitespace character. */\nvar reWhitespace = /\\s/;\n\n/**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\nfunction trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n}\n\nmodule.exports = trimmedEndIndex;\n","var trimmedEndIndex = require('./_trimmedEndIndex');\n\n/** Used to match leading whitespace. */\nvar reTrimStart = /^\\s+/;\n\n/**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\nfunction baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n}\n\nmodule.exports = baseTrim;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n","var baseTrim = require('./_baseTrim'),\n isObject = require('./isObject'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = toNumber;\n","var isObject = require('./isObject'),\n now = require('./now'),\n toNumber = require('./toNumber');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nmodule.exports = debounce;\n","module.exports = OfficePlatformGlobal.Reka","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.nullTelemetryLogger = void 0;\r\nvar nullTelemetryActivity = {\r\n addData: function () {\r\n /* */\r\n },\r\n send: function () {\r\n /* */\r\n },\r\n};\r\nvar nullTelemetryEvent = {\r\n addData: function () {\r\n /* */\r\n },\r\n send: function () {\r\n /* */\r\n },\r\n};\r\nexports.nullTelemetryLogger = {\r\n createActivity: function () { return nullTelemetryActivity; },\r\n createEvent: function () { return nullTelemetryEvent; },\r\n sendEvent: function () {\r\n /* */\r\n },\r\n};\r\n//# sourceMappingURL=NullTelemetryLogger.js.map","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.PluggableTelemetryLogger = void 0;\r\nvar NullTelemetryLogger_1 = require(\"./NullTelemetryLogger\");\r\n/**\r\n * 'Pluggable' TelemetryLogger. This was added because test code cannot\r\n * use the real OTel telemetry logger.\r\n *\r\n * Initializing the OTel telemetry adapter automatically registers itself\r\n * as the application telemetry logger.\r\n *\r\n * Test code should register a telemetry logger and not rely on the\r\n * default telemetry logger, which throws exceptions.\r\n */\r\nvar PluggableTelemetryLogger = /** @class */ (function () {\r\n function PluggableTelemetryLogger() {\r\n }\r\n /**\r\n * Set the application telemetry logger. Note: OTelTelemetryLogger automatically\r\n * calls this when initialized.\r\n */\r\n PluggableTelemetryLogger.setTelemetryLogger = function (logger) {\r\n PluggableTelemetryLogger.telemetryLogger = logger;\r\n };\r\n /** Set an empty telemetry logger (called by test code) */\r\n PluggableTelemetryLogger.setNullTelemetryLogger = function () {\r\n PluggableTelemetryLogger.telemetryLogger = NullTelemetryLogger_1.nullTelemetryLogger;\r\n };\r\n Object.defineProperty(PluggableTelemetryLogger, \"instance\", {\r\n /** Don't use this. Use TelemetryLogger API defined in '../telemetryAPI' instead. */\r\n get: function () {\r\n return PluggableTelemetryLogger.telemetryLogger;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n PluggableTelemetryLogger.telemetryLogger = NullTelemetryLogger_1.nullTelemetryLogger;\r\n return PluggableTelemetryLogger;\r\n}());\r\nexports.PluggableTelemetryLogger = PluggableTelemetryLogger;\r\n//# sourceMappingURL=PluggableTelemetryLogger.js.map","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.nullTelemetryLogger = exports.PluggableTelemetryLogger = void 0;\r\nvar PluggableTelemetryLogger_1 = require(\"./PluggableTelemetryLogger\");\r\nObject.defineProperty(exports, \"PluggableTelemetryLogger\", { enumerable: true, get: function () { return PluggableTelemetryLogger_1.PluggableTelemetryLogger; } });\r\nvar NullTelemetryLogger_1 = require(\"./NullTelemetryLogger\");\r\nObject.defineProperty(exports, \"nullTelemetryLogger\", { enumerable: true, get: function () { return NullTelemetryLogger_1.nullTelemetryLogger; } });\r\n//# sourceMappingURL=index.js.map","module.exports = OfficePlatformGlobal.Telemetry.OTel","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.transformData = void 0;\r\nvar OTel = require(\"@ms/oteljs\");\r\n/**\r\n * Transforms data into an OTel DataField object.\r\n */\r\nfunction transformData(key, value) {\r\n if (typeof value === \"boolean\") {\r\n return OTel.makeBooleanDataField(key, value);\r\n }\r\n if (typeof value === \"number\") {\r\n return OTel.makeDoubleDataField(key, value);\r\n }\r\n if (typeof value === \"string\") {\r\n return OTel.makeStringDataField(key, value);\r\n }\r\n return undefined;\r\n}\r\nexports.transformData = transformData;\r\n//# sourceMappingURL=TelemetryHelper.js.map","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.TelemetryActivity = void 0;\r\nvar TelemetryHelper_1 = require(\"./TelemetryHelper\");\r\n/**\r\n * @classdesc Encapsulates a telemetry activity.\r\n */\r\nvar TelemetryActivity = /** @class */ (function () {\r\n function TelemetryActivity(otelActivity) {\r\n this.otelActivity = otelActivity;\r\n }\r\n /**\r\n * Adds data payload to the telemetry activity to be sent.\r\n * @param key payload key\r\n * @param value payload value\r\n */\r\n TelemetryActivity.prototype.addData = function (key, value) {\r\n var dataField = (0, TelemetryHelper_1.transformData)(key, value);\r\n if (dataField) {\r\n this.otelActivity.addDataField(dataField);\r\n }\r\n };\r\n /**\r\n * Sends the telemetry activity.\r\n * @param success whether the activity was successful\r\n */\r\n TelemetryActivity.prototype.send = function (success) {\r\n this.otelActivity.setSuccess(success);\r\n this.otelActivity.endNow();\r\n };\r\n return TelemetryActivity;\r\n}());\r\nexports.TelemetryActivity = TelemetryActivity;\r\n//# sourceMappingURL=TelemetryActivity.js.map","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.TelemetryEvent = void 0;\r\n/**\r\n * @classdesc Encapsulates a telemetry event.\r\n */\r\nvar TelemetryEvent = /** @class */ (function () {\r\n function TelemetryEvent(telemetryLogger, eventName) {\r\n this.telemetryLogger = telemetryLogger;\r\n this.eventName = eventName;\r\n this.data = [];\r\n }\r\n /**\r\n * Adds data payload to the telemetry event to be sent.\r\n * @param key payload key\r\n * @param value payload value\r\n */\r\n TelemetryEvent.prototype.addData = function (key, value) {\r\n this.data.push({ key: key, value: value });\r\n };\r\n /**\r\n * Sends the telemetry event.\r\n */\r\n TelemetryEvent.prototype.send = function () {\r\n this.telemetryLogger.sendEvent(this.eventName, this.data);\r\n };\r\n return TelemetryEvent;\r\n}());\r\nexports.TelemetryEvent = TelemetryEvent;\r\n//# sourceMappingURL=TelemetryEvent.js.map","\"use strict\";\r\nvar __assign = (this && this.__assign) || function () {\r\n __assign = Object.assign || function(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.OTelTelemetryLogger = void 0;\r\nvar OTel = require(\"@ms/oteljs\");\r\nvar TelemetryActivity_1 = require(\"./TelemetryActivity\");\r\nvar TelemetryEvent_1 = require(\"./TelemetryEvent\");\r\nvar TelemetryHelper_1 = require(\"./TelemetryHelper\");\r\nvar pluggableTelemetry_1 = require(\"../pluggableTelemetry\");\r\n/**\r\n * References\r\n *\r\n * OTelJS @see [OTelJS]{@link https://aka.ms/oteljs}\r\n * Telemetry @see [Telemetry]{@link https://www.owiki.ms/wiki/Telemetry}\r\n */\r\n/**\r\n * Default event flags for all Telemetry logged unless explicitly overriden.\r\n * @see [DataCategories]{@link https://www.owiki.ms/wiki/Telemetry/Instrumentation/DataCategories}\r\n */\r\nvar defaultEventFlags = {\r\n dataCategories: OTel.DataCategories.ProductServiceUsage,\r\n diagnosticLevel: OTel.DiagnosticLevel.FullEvent,\r\n};\r\n/**\r\n * @classdesc Telemetry logger adapter that wraps OTel.TelemetryLogger.\r\n * Initialize with OTelTelemetryLogger.initialize().\r\n */\r\nvar OTelTelemetryLogger = /** @class */ (function () {\r\n function OTelTelemetryLogger(otelLogger, telemetryNamespace) {\r\n this.otelLogger = otelLogger;\r\n this.telemetryNamespace = telemetryNamespace;\r\n }\r\n /** Creates a TelemetryLogger adapter that wraps OTel.TelemetryLogger */\r\n OTelTelemetryLogger.initialize = function (otelLogger, telemetryNamespace) {\r\n if (OTelTelemetryLogger.isInitialized) {\r\n console.log(\"Telemetry already initialized\");\r\n return;\r\n }\r\n pluggableTelemetry_1.PluggableTelemetryLogger.setTelemetryLogger(new OTelTelemetryLogger(otelLogger, telemetryNamespace));\r\n OTelTelemetryLogger.isInitialized = true;\r\n };\r\n /**\r\n * Creates an Activity object for a telemetry event spanning a set of actions over a range of time.\r\n */\r\n OTelTelemetryLogger.prototype.createActivity = function (activityName) {\r\n var oTelActivity = this.otelLogger.createNewActivity(this.telemetryNamespace + \".\" + activityName);\r\n // Currently, all activities get the same event flags.\r\n oTelActivity.setEventFlags(defaultEventFlags);\r\n return new TelemetryActivity_1.TelemetryActivity(oTelActivity);\r\n };\r\n /**\r\n * Creates an Event object for sending a simple telemetry event.\r\n */\r\n OTelTelemetryLogger.prototype.createEvent = function (eventName) {\r\n var telemetryEvent = new TelemetryEvent_1.TelemetryEvent(this, eventName);\r\n return telemetryEvent;\r\n };\r\n /**\r\n * Sends a telemetry event. Can be used directly or via the Event helper object.\r\n *\r\n * @param {string} eventSourceOrName source or name of event\r\n * @param {ITelemetryData[]} eventData key/value pairs of additional data to send\r\n * @param {OptionalEventFlags} optionalEventFlags additional OTel flags to send\r\n */\r\n OTelTelemetryLogger.prototype.sendEvent = function (eventSourceOrName, eventData, optionalEventFlags) {\r\n var eventName = this.telemetryNamespace + \".\" + eventSourceOrName;\r\n var eventFlags = optionalEventFlags\r\n ? __assign(__assign({}, defaultEventFlags), optionalEventFlags) : defaultEventFlags;\r\n var dataFields = [];\r\n if (eventData && eventData.length) {\r\n dataFields = eventData.map(function (data) {\r\n return (0, TelemetryHelper_1.transformData)(data.key, data.value);\r\n });\r\n }\r\n var telemetryEvent = {\r\n eventName: eventName,\r\n eventFlags: eventFlags,\r\n dataFields: dataFields,\r\n };\r\n this.otelLogger.sendTelemetryEvent(telemetryEvent);\r\n };\r\n OTelTelemetryLogger.isInitialized = false;\r\n return OTelTelemetryLogger;\r\n}());\r\nexports.OTelTelemetryLogger = OTelTelemetryLogger;\r\n//# sourceMappingURL=OTelTelemetryLogger.js.map","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.OTelTelemetryLogger = void 0;\r\nvar OTelTelemetryLogger_1 = require(\"./OTelTelemetryLogger\");\r\nObject.defineProperty(exports, \"OTelTelemetryLogger\", { enumerable: true, get: function () { return OTelTelemetryLogger_1.OTelTelemetryLogger; } });\r\n//# sourceMappingURL=index.js.map","module.exports = OfficePlatformGlobal.Telemetry.OTelSDX","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.createTelemetrySink = void 0;\r\nvar SdxSink = require(\"@ms/oteljs-sdx\");\r\n/**\r\n * Creates a the sink object for the OTel logger to use. The SdxSink sends events back to native\r\n * code via Reka.\r\n */\r\nfunction createTelemetrySink() {\r\n return SdxSink.createOTelSink();\r\n}\r\nexports.createTelemetrySink = createTelemetrySink;\r\n//# sourceMappingURL=TelemetrySink.native.js.map","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.initializeTelemetry = void 0;\r\nvar OTel = require(\"@ms/oteljs\");\r\nvar otelTelemetryAdapter_1 = require(\"../otelTelemetryAdapter\");\r\nvar TelemetrySink_1 = require(\"./TelemetrySink\");\r\nfunction initializeTelemetry(tokenTree, telemetryNameSpace, telemetrySink) {\r\n var otelLogger = new OTel.TelemetryLogger();\r\n /** @see [Telemetry_Event_Sinks]{@link https://www.owiki.ms/wiki/Telemetry/Instrumentation#Telemetry_Event_Sinks} */\r\n // If no sink is provided, default to OfficeJsSink/SdxSink\r\n otelLogger.addSink(telemetrySink !== null && telemetrySink !== void 0 ? telemetrySink : (0, TelemetrySink_1.createTelemetrySink)());\r\n otelLogger.setTenantTokens(tokenTree);\r\n otelTelemetryAdapter_1.OTelTelemetryLogger.initialize(otelLogger, telemetryNameSpace);\r\n}\r\nexports.initializeTelemetry = initializeTelemetry;\r\n//# sourceMappingURL=InitializeTelemetry.js.map","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.TelemetryLogger = void 0;\r\nvar pluggableTelemetry_1 = require(\"../pluggableTelemetry\");\r\n/** Simple API for logging Telemetry */\r\nvar TelemetryLogger = /** @class */ (function () {\r\n function TelemetryLogger() {\r\n }\r\n TelemetryLogger.createActivity = function (activityName) {\r\n return pluggableTelemetry_1.PluggableTelemetryLogger.instance.createActivity(activityName);\r\n };\r\n TelemetryLogger.createEvent = function (eventName) {\r\n return pluggableTelemetry_1.PluggableTelemetryLogger.instance.createEvent(eventName);\r\n };\r\n return TelemetryLogger;\r\n}());\r\nexports.TelemetryLogger = TelemetryLogger;\r\n//# sourceMappingURL=TelemetryLogger.js.map","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.createTelemetrySink = exports.TelemetryLogger = exports.initializeTelemetry = void 0;\r\nvar InitializeTelemetry_1 = require(\"./InitializeTelemetry\");\r\nObject.defineProperty(exports, \"initializeTelemetry\", { enumerable: true, get: function () { return InitializeTelemetry_1.initializeTelemetry; } });\r\nvar TelemetryLogger_1 = require(\"./TelemetryLogger\");\r\nObject.defineProperty(exports, \"TelemetryLogger\", { enumerable: true, get: function () { return TelemetryLogger_1.TelemetryLogger; } });\r\nvar TelemetrySink_1 = require(\"./TelemetrySink\");\r\nObject.defineProperty(exports, \"createTelemetrySink\", { enumerable: true, get: function () { return TelemetrySink_1.createTelemetrySink; } });\r\n//# sourceMappingURL=index.js.map","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.initializeTelemetry = exports.createTelemetrySink = exports.TelemetryLogger = exports.nullTelemetryLogger = exports.PluggableTelemetryLogger = void 0;\r\nvar pluggableTelemetry_1 = require(\"./pluggableTelemetry\");\r\nObject.defineProperty(exports, \"PluggableTelemetryLogger\", { enumerable: true, get: function () { return pluggableTelemetry_1.PluggableTelemetryLogger; } });\r\nObject.defineProperty(exports, \"nullTelemetryLogger\", { enumerable: true, get: function () { return pluggableTelemetry_1.nullTelemetryLogger; } });\r\nvar telemetryAPI_1 = require(\"./telemetryAPI\");\r\nObject.defineProperty(exports, \"TelemetryLogger\", { enumerable: true, get: function () { return telemetryAPI_1.TelemetryLogger; } });\r\nObject.defineProperty(exports, \"createTelemetrySink\", { enumerable: true, get: function () { return telemetryAPI_1.createTelemetrySink; } });\r\nObject.defineProperty(exports, \"initializeTelemetry\", { enumerable: true, get: function () { return telemetryAPI_1.initializeTelemetry; } });\r\n//# sourceMappingURL=index.js.map","module.exports = OfficePlatformGlobal.ReactNativeReka","import * as React from \"react\";\nimport { AppRegistry } from \"react-native\";\nimport type { INativeProps, IComponentProps } from \"./index.types\";\nimport { SdxInCellControl } from \"./SdxInCellControl\";\nimport { ReactNativeComponent } from \"./utils/UIConstants\";\nimport { initReka } from \"@office-iss/reka-react-native\";\nimport { createRichApiDataSource } from \"@ms/office-excel-incellcontrol\";\n\n// Entry component for platform.\nconst InCellControlNativeRoot: React.FC = (\n props\n) => {\n return ;\n};\n\nconst createInCellControlNativeRoot = (componentProps: IComponentProps) => {\n const InCellControlComponent: React.FC = (props) => (\n \n );\n return InCellControlComponent;\n};\n\nAppRegistry.registerComponent(\"settingspane.app\", () =>\n createInCellControlNativeRoot({\n componentName: ReactNativeComponent.settingsPane,\n createDataSource: createRichApiDataSource,\n })\n);\nAppRegistry.registerComponent(\"dropdownlist.app\", () =>\n createInCellControlNativeRoot({\n componentName: ReactNativeComponent.dropdownList,\n createDataSource: createRichApiDataSource,\n })\n);\n\ninitReka();\n","/* eslint-disable @typescript-eslint/no-empty-function */\nimport * as React from \"react\";\nimport type { IInCellControlHostService } from \"./hostService\";\nimport type { INativeProps, IComponentProps } from \"./index.types\";\nimport { SettingsPaneApp } from \"./components/SettingsPane/SettingsPaneApp\";\nimport { ReactNativeComponent } from \"./utils/UIConstants\";\nimport { DropdownListApp } from \"./components/DropdownList/DropdownListApp\";\nimport {\n inCellControlTelemetryNamespace,\n telemetryTokenTree,\n} from \"./telemetry/InCellControlTelemetryConstants\";\nimport type { TelemetryActivityName } from \"./telemetry/InCellControlTelemetryConstants\";\nimport { InCellControlTelemetryLogger } from \"./telemetry/InCellControlTelemetryLogger\";\nimport type { ITelemetryActivity } from \"@office-iss/excel_telemetry\";\nimport { initializeTelemetry } from \"@office-iss/excel_telemetry\";\n\nexport const SdxInCellControl: React.FC = ({\n ...props\n}) => {\n initializeTelemetry(telemetryTokenTree, inCellControlTelemetryNamespace);\n const hostContext = props.hostContext;\n const reloadControlDataCallback = React.useRef<() => void>(() => {});\n const dataSource = props.createDataSource(\n // hostContext is only available in task pane components.\n hostContext ? hostContext.controlId : undefined,\n () => {\n reloadControlDataCallback.current();\n }\n );\n const componentName = props.componentName;\n\n const hostService: IInCellControlHostService = {\n loadControlData: dataSource.loadControlData,\n loadDropdownData: dataSource.loadDropdownData,\n updateControlData: dataSource.updateControlData,\n subscribeToEvents: dataSource.subscribeToEvents,\n setReloadControlDataCallback: (reloadControlData) => {\n if (hostContext) {\n reloadControlDataCallback.current = reloadControlData;\n }\n },\n createTelemetryActivity: function (\n telemetryActivityName: TelemetryActivityName\n ): ITelemetryActivity {\n const activity = InCellControlTelemetryLogger.createActivity(\n telemetryActivityName\n );\n return activity;\n },\n };\n if (componentName === ReactNativeComponent.settingsPane) {\n return ;\n }\n\n if (componentName === ReactNativeComponent.dropdownList) {\n return ;\n }\n\n // TODO: Show error ux if componentName is not recognized.\n return null;\n};\n","// The primary entry point assumes we're working with standard ReactDOM/RN, but\n// older versions that do not include `useSyncExternalStore` (React 16.9 - 17.x).\n// Because of that, the useSyncExternalStore compat shim is needed.\nimport { useSyncExternalStore } from 'use-sync-external-store/shim';\nimport { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector';\nimport { unstable_batchedUpdates as batch } from './utils/reactBatchedUpdates';\nimport { setBatch } from './utils/batch';\nimport { initializeUseSelector } from './hooks/useSelector';\nimport { initializeConnect } from './components/connect';\ninitializeUseSelector(useSyncExternalStoreWithSelector);\ninitializeConnect(useSyncExternalStore); // Enable batched updates in our subscriptions for use\n// with standard React renderers (ReactDOM, React Native)\n\nsetBatch(batch);\nexport { batch };\nexport * from './exports';","/* eslint-disable import/namespace */\n\n/* eslint-disable import/named */\nimport { unstable_batchedUpdates } from 'react-native';\nexport { unstable_batchedUpdates };","// Default to a dummy \"batch\" implementation that just runs the callback\nfunction defaultNoopBatch(callback) {\n callback();\n}\n\nlet batch = defaultNoopBatch; // Allow injecting another batching function later\n\nexport const setBatch = newBatch => batch = newBatch; // Supply a getter just to skip dealing with ESM bindings\n\nexport const getBatch = () => batch;","import { useCallback, useDebugValue, useRef } from 'react';\nimport { createReduxContextHook, useReduxContext as useDefaultReduxContext } from './useReduxContext';\nimport { ReactReduxContext } from '../components/Context';\nimport { notInitialized } from '../utils/useSyncExternalStore';\nlet useSyncExternalStoreWithSelector = notInitialized;\nexport const initializeUseSelector = fn => {\n useSyncExternalStoreWithSelector = fn;\n};\n\nconst refEquality = (a, b) => a === b;\n/**\r\n * Hook factory, which creates a `useSelector` hook bound to a given context.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your ``.\r\n * @returns {Function} A `useSelector` hook bound to the specified context.\r\n */\n\n\nexport function createSelectorHook(context = ReactReduxContext) {\n const useReduxContext = context === ReactReduxContext ? useDefaultReduxContext : createReduxContextHook(context);\n return function useSelector(selector, equalityFnOrOptions = {}) {\n const {\n equalityFn = refEquality,\n stabilityCheck = undefined,\n noopCheck = undefined\n } = typeof equalityFnOrOptions === 'function' ? {\n equalityFn: equalityFnOrOptions\n } : equalityFnOrOptions;\n\n if (process.env.NODE_ENV !== 'production') {\n if (!selector) {\n throw new Error(`You must pass a selector to useSelector`);\n }\n\n if (typeof selector !== 'function') {\n throw new Error(`You must pass a function as a selector to useSelector`);\n }\n\n if (typeof equalityFn !== 'function') {\n throw new Error(`You must pass a function as an equality function to useSelector`);\n }\n }\n\n const {\n store,\n subscription,\n getServerState,\n stabilityCheck: globalStabilityCheck,\n noopCheck: globalNoopCheck\n } = useReduxContext();\n const firstRun = useRef(true);\n const wrappedSelector = useCallback({\n [selector.name](state) {\n const selected = selector(state);\n\n if (process.env.NODE_ENV !== 'production') {\n const finalStabilityCheck = typeof stabilityCheck === 'undefined' ? globalStabilityCheck : stabilityCheck;\n\n if (finalStabilityCheck === 'always' || finalStabilityCheck === 'once' && firstRun.current) {\n const toCompare = selector(state);\n\n if (!equalityFn(selected, toCompare)) {\n let stack = undefined;\n\n try {\n throw new Error();\n } catch (e) {\n ;\n ({\n stack\n } = e);\n }\n\n console.warn('Selector ' + (selector.name || 'unknown') + ' returned a different result when called with the same parameters. This can lead to unnecessary rerenders.' + '\\nSelectors that return a new reference (such as an object or an array) should be memoized: https://redux.js.org/usage/deriving-data-selectors#optimizing-selectors-with-memoization', {\n state,\n selected,\n selected2: toCompare,\n stack\n });\n }\n }\n\n const finalNoopCheck = typeof noopCheck === 'undefined' ? globalNoopCheck : noopCheck;\n\n if (finalNoopCheck === 'always' || finalNoopCheck === 'once' && firstRun.current) {\n // @ts-ignore\n if (selected === state) {\n let stack = undefined;\n\n try {\n throw new Error();\n } catch (e) {\n ;\n ({\n stack\n } = e);\n }\n\n console.warn('Selector ' + (selector.name || 'unknown') + ' returned the root state when called. This can lead to unnecessary rerenders.' + '\\nSelectors that return the entire state are almost certainly a mistake, as they will cause a rerender whenever *anything* in state changes.', {\n stack\n });\n }\n }\n\n if (firstRun.current) firstRun.current = false;\n }\n\n return selected;\n }\n\n }[selector.name], [selector, globalStabilityCheck, stabilityCheck]);\n const selectedState = useSyncExternalStoreWithSelector(subscription.addNestedSub, store.getState, getServerState || store.getState, wrappedSelector, equalityFn);\n useDebugValue(selectedState);\n return selectedState;\n };\n}\n/**\r\n * A hook to access the redux store's state. This hook takes a selector function\r\n * as an argument. The selector is called with the store state.\r\n *\r\n * This hook takes an optional equality comparison function as the second parameter\r\n * that allows you to customize the way the selected state is compared to determine\r\n * whether the component needs to be re-rendered.\r\n *\r\n * @param {Function} selector the selector function\r\n * @param {Function=} equalityFn the function that will be used to determine equality\r\n *\r\n * @returns {any} the selected state\r\n *\r\n * @example\r\n *\r\n * import React from 'react'\r\n * import { useSelector } from 'react-redux'\r\n *\r\n * export const CounterComponent = () => {\r\n * const counter = useSelector(state => state.counter)\r\n * return
{counter}
\r\n * }\r\n */\n\nexport const useSelector = /*#__PURE__*/createSelectorHook();","import { useContext } from 'react';\nimport { ReactReduxContext } from '../components/Context';\n\n/**\r\n * Hook factory, which creates a `useReduxContext` hook bound to a given context. This is a low-level\r\n * hook that you should usually not need to call directly.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your ``.\r\n * @returns {Function} A `useReduxContext` hook bound to the specified context.\r\n */\nexport function createReduxContextHook(context = ReactReduxContext) {\n return function useReduxContext() {\n const contextValue = useContext(context);\n\n if (process.env.NODE_ENV !== 'production' && !contextValue) {\n throw new Error('could not find react-redux context value; please ensure the component is wrapped in a ');\n }\n\n return contextValue;\n };\n}\n/**\r\n * A hook to access the value of the `ReactReduxContext`. This is a low-level\r\n * hook that you should usually not need to call directly.\r\n *\r\n * @returns {any} the value of the `ReactReduxContext`\r\n *\r\n * @example\r\n *\r\n * import React from 'react'\r\n * import { useReduxContext } from 'react-redux'\r\n *\r\n * export const CounterComponent = () => {\r\n * const { store } = useReduxContext()\r\n * return
{store.getState()}
\r\n * }\r\n */\n\nexport const useReduxContext = /*#__PURE__*/createReduxContextHook();","import * as React from 'react';\nconst ContextKey = Symbol.for(`react-redux-context`);\nconst gT = typeof globalThis !== \"undefined\" ? globalThis :\n/* fall back to a per-module scope (pre-8.1 behaviour) if `globalThis` is not available */\n{};\n\nfunction getContext() {\n var _gT$ContextKey;\n\n if (!React.createContext) return {};\n const contextMap = (_gT$ContextKey = gT[ContextKey]) != null ? _gT$ContextKey : gT[ContextKey] = new Map();\n let realContext = contextMap.get(React.createContext);\n\n if (!realContext) {\n realContext = React.createContext(null);\n\n if (process.env.NODE_ENV !== 'production') {\n realContext.displayName = 'ReactRedux';\n }\n\n contextMap.set(React.createContext, realContext);\n }\n\n return realContext;\n}\n\nexport const ReactReduxContext = /*#__PURE__*/getContext();\nexport default ReactReduxContext;","export const notInitialized = () => {\n throw new Error('uSES not initialized!');\n};","function _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nexport { _extends as default };","function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nexport { _objectWithoutPropertiesLoose as default };","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"reactReduxForwardedRef\"];\n\n/* eslint-disable valid-jsdoc, @typescript-eslint/no-unused-vars */\nimport hoistStatics from 'hoist-non-react-statics';\nimport * as React from 'react';\nimport { isValidElementType, isContextConsumer } from 'react-is';\nimport defaultSelectorFactory from '../connect/selectorFactory';\nimport { mapDispatchToPropsFactory } from '../connect/mapDispatchToProps';\nimport { mapStateToPropsFactory } from '../connect/mapStateToProps';\nimport { mergePropsFactory } from '../connect/mergeProps';\nimport { createSubscription } from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\nimport shallowEqual from '../utils/shallowEqual';\nimport warning from '../utils/warning';\nimport { ReactReduxContext } from './Context';\nimport { notInitialized } from '../utils/useSyncExternalStore';\nlet useSyncExternalStore = notInitialized;\nexport const initializeConnect = fn => {\n useSyncExternalStore = fn;\n}; // Define some constant arrays just to avoid re-creating these\n\nconst EMPTY_ARRAY = [null, 0];\nconst NO_SUBSCRIPTION_ARRAY = [null, null]; // Attempts to stringify whatever not-really-a-component value we were given\n// for logging in an error message\n\nconst stringifyComponent = Comp => {\n try {\n return JSON.stringify(Comp);\n } catch (err) {\n return String(Comp);\n }\n};\n\n// This is \"just\" a `useLayoutEffect`, but with two modifications:\n// - we need to fall back to `useEffect` in SSR to avoid annoying warnings\n// - we extract this to a separate function to avoid closing over values\n// and causing memory leaks\nfunction useIsomorphicLayoutEffectWithArgs(effectFunc, effectArgs, dependencies) {\n useIsomorphicLayoutEffect(() => effectFunc(...effectArgs), dependencies);\n} // Effect callback, extracted: assign the latest props values to refs for later usage\n\n\nfunction captureWrapperProps(lastWrapperProps, lastChildProps, renderIsScheduled, wrapperProps, // actualChildProps: unknown,\nchildPropsFromStoreUpdate, notifyNestedSubs) {\n // We want to capture the wrapper props and child props we used for later comparisons\n lastWrapperProps.current = wrapperProps;\n renderIsScheduled.current = false; // If the render was from a store update, clear out that reference and cascade the subscriber update\n\n if (childPropsFromStoreUpdate.current) {\n childPropsFromStoreUpdate.current = null;\n notifyNestedSubs();\n }\n} // Effect callback, extracted: subscribe to the Redux store or nearest connected ancestor,\n// check for updates after dispatched actions, and trigger re-renders.\n\n\nfunction subscribeUpdates(shouldHandleStateChanges, store, subscription, childPropsSelector, lastWrapperProps, lastChildProps, renderIsScheduled, isMounted, childPropsFromStoreUpdate, notifyNestedSubs, // forceComponentUpdateDispatch: React.Dispatch,\nadditionalSubscribeListener) {\n // If we're not subscribed to the store, nothing to do here\n if (!shouldHandleStateChanges) return () => {}; // Capture values for checking if and when this component unmounts\n\n let didUnsubscribe = false;\n let lastThrownError = null; // We'll run this callback every time a store subscription update propagates to this component\n\n const checkForUpdates = () => {\n if (didUnsubscribe || !isMounted.current) {\n // Don't run stale listeners.\n // Redux doesn't guarantee unsubscriptions happen until next dispatch.\n return;\n } // TODO We're currently calling getState ourselves here, rather than letting `uSES` do it\n\n\n const latestStoreState = store.getState();\n let newChildProps, error;\n\n try {\n // Actually run the selector with the most recent store state and wrapper props\n // to determine what the child props should be\n newChildProps = childPropsSelector(latestStoreState, lastWrapperProps.current);\n } catch (e) {\n error = e;\n lastThrownError = e;\n }\n\n if (!error) {\n lastThrownError = null;\n } // If the child props haven't changed, nothing to do here - cascade the subscription update\n\n\n if (newChildProps === lastChildProps.current) {\n if (!renderIsScheduled.current) {\n notifyNestedSubs();\n }\n } else {\n // Save references to the new child props. Note that we track the \"child props from store update\"\n // as a ref instead of a useState/useReducer because we need a way to determine if that value has\n // been processed. If this went into useState/useReducer, we couldn't clear out the value without\n // forcing another re-render, which we don't want.\n lastChildProps.current = newChildProps;\n childPropsFromStoreUpdate.current = newChildProps;\n renderIsScheduled.current = true; // TODO This is hacky and not how `uSES` is meant to be used\n // Trigger the React `useSyncExternalStore` subscriber\n\n additionalSubscribeListener();\n }\n }; // Actually subscribe to the nearest connected ancestor (or store)\n\n\n subscription.onStateChange = checkForUpdates;\n subscription.trySubscribe(); // Pull data from the store after first render in case the store has\n // changed since we began.\n\n checkForUpdates();\n\n const unsubscribeWrapper = () => {\n didUnsubscribe = true;\n subscription.tryUnsubscribe();\n subscription.onStateChange = null;\n\n if (lastThrownError) {\n // It's possible that we caught an error due to a bad mapState function, but the\n // parent re-rendered without this component and we're about to unmount.\n // This shouldn't happen as long as we do top-down subscriptions correctly, but\n // if we ever do those wrong, this throw will surface the error in our tests.\n // In that case, throw the error from here so it doesn't get lost.\n throw lastThrownError;\n }\n };\n\n return unsubscribeWrapper;\n} // Reducer initial state creation for our update reducer\n\n\nconst initStateUpdates = () => EMPTY_ARRAY;\n\nfunction strictEqual(a, b) {\n return a === b;\n}\n/**\r\n * Infers the type of props that a connector will inject into a component.\r\n */\n\n\nlet hasWarnedAboutDeprecatedPureOption = false;\n/**\r\n * Connects a React component to a Redux store.\r\n *\r\n * - Without arguments, just wraps the component, without changing the behavior / props\r\n *\r\n * - If 2 params are passed (3rd param, mergeProps, is skipped), default behavior\r\n * is to override ownProps (as stated in the docs), so what remains is everything that's\r\n * not a state or dispatch prop\r\n *\r\n * - When 3rd param is passed, we don't know if ownProps propagate and whether they\r\n * should be valid component props, because it depends on mergeProps implementation.\r\n * As such, it is the user's responsibility to extend ownProps interface from state or\r\n * dispatch props or both when applicable\r\n *\r\n * @param mapStateToProps A function that extracts values from state\r\n * @param mapDispatchToProps Setup for dispatching actions\r\n * @param mergeProps Optional callback to merge state and dispatch props together\r\n * @param options Options for configuring the connection\r\n *\r\n */\n\nfunction connect(mapStateToProps, mapDispatchToProps, mergeProps, {\n // The `pure` option has been removed, so TS doesn't like us destructuring this to check its existence.\n // @ts-ignore\n pure,\n areStatesEqual = strictEqual,\n areOwnPropsEqual = shallowEqual,\n areStatePropsEqual = shallowEqual,\n areMergedPropsEqual = shallowEqual,\n // use React's forwardRef to expose a ref of the wrapped component\n forwardRef = false,\n // the context consumer to use\n context = ReactReduxContext\n} = {}) {\n if (process.env.NODE_ENV !== 'production') {\n if (pure !== undefined && !hasWarnedAboutDeprecatedPureOption) {\n hasWarnedAboutDeprecatedPureOption = true;\n warning('The `pure` option has been removed. `connect` is now always a \"pure/memoized\" component');\n }\n }\n\n const Context = context;\n const initMapStateToProps = mapStateToPropsFactory(mapStateToProps);\n const initMapDispatchToProps = mapDispatchToPropsFactory(mapDispatchToProps);\n const initMergeProps = mergePropsFactory(mergeProps);\n const shouldHandleStateChanges = Boolean(mapStateToProps);\n\n const wrapWithConnect = WrappedComponent => {\n if (process.env.NODE_ENV !== 'production' && !isValidElementType(WrappedComponent)) {\n throw new Error(`You must pass a component to the function returned by connect. Instead received ${stringifyComponent(WrappedComponent)}`);\n }\n\n const wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || 'Component';\n const displayName = `Connect(${wrappedComponentName})`;\n const selectorFactoryOptions = {\n shouldHandleStateChanges,\n displayName,\n wrappedComponentName,\n WrappedComponent,\n // @ts-ignore\n initMapStateToProps,\n // @ts-ignore\n initMapDispatchToProps,\n initMergeProps,\n areStatesEqual,\n areStatePropsEqual,\n areOwnPropsEqual,\n areMergedPropsEqual\n };\n\n function ConnectFunction(props) {\n const [propsContext, reactReduxForwardedRef, wrapperProps] = React.useMemo(() => {\n // Distinguish between actual \"data\" props that were passed to the wrapper component,\n // and values needed to control behavior (forwarded refs, alternate context instances).\n // To maintain the wrapperProps object reference, memoize this destructuring.\n const {\n reactReduxForwardedRef\n } = props,\n wrapperProps = _objectWithoutPropertiesLoose(props, _excluded);\n\n return [props.context, reactReduxForwardedRef, wrapperProps];\n }, [props]);\n const ContextToUse = React.useMemo(() => {\n // Users may optionally pass in a custom context instance to use instead of our ReactReduxContext.\n // Memoize the check that determines which context instance we should use.\n return propsContext && propsContext.Consumer && // @ts-ignore\n isContextConsumer( /*#__PURE__*/React.createElement(propsContext.Consumer, null)) ? propsContext : Context;\n }, [propsContext, Context]); // Retrieve the store and ancestor subscription via context, if available\n\n const contextValue = React.useContext(ContextToUse); // The store _must_ exist as either a prop or in context.\n // We'll check to see if it _looks_ like a Redux store first.\n // This allows us to pass through a `store` prop that is just a plain value.\n\n const didStoreComeFromProps = Boolean(props.store) && Boolean(props.store.getState) && Boolean(props.store.dispatch);\n const didStoreComeFromContext = Boolean(contextValue) && Boolean(contextValue.store);\n\n if (process.env.NODE_ENV !== 'production' && !didStoreComeFromProps && !didStoreComeFromContext) {\n throw new Error(`Could not find \"store\" in the context of ` + `\"${displayName}\". Either wrap the root component in a , ` + `or pass a custom React context provider to and the corresponding ` + `React context consumer to ${displayName} in connect options.`);\n } // Based on the previous check, one of these must be true\n\n\n const store = didStoreComeFromProps ? props.store : contextValue.store;\n const getServerState = didStoreComeFromContext ? contextValue.getServerState : store.getState;\n const childPropsSelector = React.useMemo(() => {\n // The child props selector needs the store reference as an input.\n // Re-create this selector whenever the store changes.\n return defaultSelectorFactory(store.dispatch, selectorFactoryOptions);\n }, [store]);\n const [subscription, notifyNestedSubs] = React.useMemo(() => {\n if (!shouldHandleStateChanges) return NO_SUBSCRIPTION_ARRAY; // This Subscription's source should match where store came from: props vs. context. A component\n // connected to the store via props shouldn't use subscription from context, or vice versa.\n\n const subscription = createSubscription(store, didStoreComeFromProps ? undefined : contextValue.subscription); // `notifyNestedSubs` is duplicated to handle the case where the component is unmounted in\n // the middle of the notification loop, where `subscription` will then be null. This can\n // probably be avoided if Subscription's listeners logic is changed to not call listeners\n // that have been unsubscribed in the middle of the notification loop.\n\n const notifyNestedSubs = subscription.notifyNestedSubs.bind(subscription);\n return [subscription, notifyNestedSubs];\n }, [store, didStoreComeFromProps, contextValue]); // Determine what {store, subscription} value should be put into nested context, if necessary,\n // and memoize that value to avoid unnecessary context updates.\n\n const overriddenContextValue = React.useMemo(() => {\n if (didStoreComeFromProps) {\n // This component is directly subscribed to a store from props.\n // We don't want descendants reading from this store - pass down whatever\n // the existing context value is from the nearest connected ancestor.\n return contextValue;\n } // Otherwise, put this component's subscription instance into context, so that\n // connected descendants won't update until after this component is done\n\n\n return _extends({}, contextValue, {\n subscription\n });\n }, [didStoreComeFromProps, contextValue, subscription]); // Set up refs to coordinate values between the subscription effect and the render logic\n\n const lastChildProps = React.useRef();\n const lastWrapperProps = React.useRef(wrapperProps);\n const childPropsFromStoreUpdate = React.useRef();\n const renderIsScheduled = React.useRef(false);\n const isProcessingDispatch = React.useRef(false);\n const isMounted = React.useRef(false);\n const latestSubscriptionCallbackError = React.useRef();\n useIsomorphicLayoutEffect(() => {\n isMounted.current = true;\n return () => {\n isMounted.current = false;\n };\n }, []);\n const actualChildPropsSelector = React.useMemo(() => {\n const selector = () => {\n // Tricky logic here:\n // - This render may have been triggered by a Redux store update that produced new child props\n // - However, we may have gotten new wrapper props after that\n // If we have new child props, and the same wrapper props, we know we should use the new child props as-is.\n // But, if we have new wrapper props, those might change the child props, so we have to recalculate things.\n // So, we'll use the child props from store update only if the wrapper props are the same as last time.\n if (childPropsFromStoreUpdate.current && wrapperProps === lastWrapperProps.current) {\n return childPropsFromStoreUpdate.current;\n } // TODO We're reading the store directly in render() here. Bad idea?\n // This will likely cause Bad Things (TM) to happen in Concurrent Mode.\n // Note that we do this because on renders _not_ caused by store updates, we need the latest store state\n // to determine what the child props should be.\n\n\n return childPropsSelector(store.getState(), wrapperProps);\n };\n\n return selector;\n }, [store, wrapperProps]); // We need this to execute synchronously every time we re-render. However, React warns\n // about useLayoutEffect in SSR, so we try to detect environment and fall back to\n // just useEffect instead to avoid the warning, since neither will run anyway.\n\n const subscribeForReact = React.useMemo(() => {\n const subscribe = reactListener => {\n if (!subscription) {\n return () => {};\n }\n\n return subscribeUpdates(shouldHandleStateChanges, store, subscription, // @ts-ignore\n childPropsSelector, lastWrapperProps, lastChildProps, renderIsScheduled, isMounted, childPropsFromStoreUpdate, notifyNestedSubs, reactListener);\n };\n\n return subscribe;\n }, [subscription]);\n useIsomorphicLayoutEffectWithArgs(captureWrapperProps, [lastWrapperProps, lastChildProps, renderIsScheduled, wrapperProps, childPropsFromStoreUpdate, notifyNestedSubs]);\n let actualChildProps;\n\n try {\n actualChildProps = useSyncExternalStore( // TODO We're passing through a big wrapper that does a bunch of extra side effects besides subscribing\n subscribeForReact, // TODO This is incredibly hacky. We've already processed the store update and calculated new child props,\n // TODO and we're just passing that through so it triggers a re-render for us rather than relying on `uSES`.\n actualChildPropsSelector, getServerState ? () => childPropsSelector(getServerState(), wrapperProps) : actualChildPropsSelector);\n } catch (err) {\n if (latestSubscriptionCallbackError.current) {\n ;\n err.message += `\\nThe error may be correlated with this previous error:\\n${latestSubscriptionCallbackError.current.stack}\\n\\n`;\n }\n\n throw err;\n }\n\n useIsomorphicLayoutEffect(() => {\n latestSubscriptionCallbackError.current = undefined;\n childPropsFromStoreUpdate.current = undefined;\n lastChildProps.current = actualChildProps;\n }); // Now that all that's done, we can finally try to actually render the child component.\n // We memoize the elements for the rendered child component as an optimization.\n\n const renderedWrappedComponent = React.useMemo(() => {\n return (\n /*#__PURE__*/\n // @ts-ignore\n React.createElement(WrappedComponent, _extends({}, actualChildProps, {\n ref: reactReduxForwardedRef\n }))\n );\n }, [reactReduxForwardedRef, WrappedComponent, actualChildProps]); // If React sees the exact same element reference as last time, it bails out of re-rendering\n // that child, same as if it was wrapped in React.memo() or returned false from shouldComponentUpdate.\n\n const renderedChild = React.useMemo(() => {\n if (shouldHandleStateChanges) {\n // If this component is subscribed to store updates, we need to pass its own\n // subscription instance down to our descendants. That means rendering the same\n // Context instance, and putting a different value into the context.\n return /*#__PURE__*/React.createElement(ContextToUse.Provider, {\n value: overriddenContextValue\n }, renderedWrappedComponent);\n }\n\n return renderedWrappedComponent;\n }, [ContextToUse, renderedWrappedComponent, overriddenContextValue]);\n return renderedChild;\n }\n\n const _Connect = React.memo(ConnectFunction);\n\n // Add a hacky cast to get the right output type\n const Connect = _Connect;\n Connect.WrappedComponent = WrappedComponent;\n Connect.displayName = ConnectFunction.displayName = displayName;\n\n if (forwardRef) {\n const _forwarded = React.forwardRef(function forwardConnectRef(props, ref) {\n // @ts-ignore\n return /*#__PURE__*/React.createElement(Connect, _extends({}, props, {\n reactReduxForwardedRef: ref\n }));\n });\n\n const forwarded = _forwarded;\n forwarded.displayName = displayName;\n forwarded.WrappedComponent = WrappedComponent;\n return hoistStatics(forwarded, WrappedComponent);\n }\n\n return hoistStatics(Connect, WrappedComponent);\n };\n\n return wrapWithConnect;\n}\n\nexport default connect;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"initMapStateToProps\", \"initMapDispatchToProps\", \"initMergeProps\"];\nimport verifySubselectors from './verifySubselectors';\nexport function pureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, {\n areStatesEqual,\n areOwnPropsEqual,\n areStatePropsEqual\n}) {\n let hasRunAtLeastOnce = false;\n let state;\n let ownProps;\n let stateProps;\n let dispatchProps;\n let mergedProps;\n\n function handleFirstCall(firstState, firstOwnProps) {\n state = firstState;\n ownProps = firstOwnProps;\n stateProps = mapStateToProps(state, ownProps);\n dispatchProps = mapDispatchToProps(dispatch, ownProps);\n mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n hasRunAtLeastOnce = true;\n return mergedProps;\n }\n\n function handleNewPropsAndNewState() {\n stateProps = mapStateToProps(state, ownProps);\n if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);\n mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n return mergedProps;\n }\n\n function handleNewProps() {\n if (mapStateToProps.dependsOnOwnProps) stateProps = mapStateToProps(state, ownProps);\n if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);\n mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n return mergedProps;\n }\n\n function handleNewState() {\n const nextStateProps = mapStateToProps(state, ownProps);\n const statePropsChanged = !areStatePropsEqual(nextStateProps, stateProps);\n stateProps = nextStateProps;\n if (statePropsChanged) mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n return mergedProps;\n }\n\n function handleSubsequentCalls(nextState, nextOwnProps) {\n const propsChanged = !areOwnPropsEqual(nextOwnProps, ownProps);\n const stateChanged = !areStatesEqual(nextState, state, nextOwnProps, ownProps);\n state = nextState;\n ownProps = nextOwnProps;\n if (propsChanged && stateChanged) return handleNewPropsAndNewState();\n if (propsChanged) return handleNewProps();\n if (stateChanged) return handleNewState();\n return mergedProps;\n }\n\n return function pureFinalPropsSelector(nextState, nextOwnProps) {\n return hasRunAtLeastOnce ? handleSubsequentCalls(nextState, nextOwnProps) : handleFirstCall(nextState, nextOwnProps);\n };\n}\n// TODO: Add more comments\n// The selector returned by selectorFactory will memoize its results,\n// allowing connect's shouldComponentUpdate to return false if final\n// props have not changed.\nexport default function finalPropsSelectorFactory(dispatch, _ref) {\n let {\n initMapStateToProps,\n initMapDispatchToProps,\n initMergeProps\n } = _ref,\n options = _objectWithoutPropertiesLoose(_ref, _excluded);\n\n const mapStateToProps = initMapStateToProps(dispatch, options);\n const mapDispatchToProps = initMapDispatchToProps(dispatch, options);\n const mergeProps = initMergeProps(dispatch, options);\n\n if (process.env.NODE_ENV !== 'production') {\n verifySubselectors(mapStateToProps, mapDispatchToProps, mergeProps);\n }\n\n return pureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, options);\n}","export default function bindActionCreators(actionCreators, dispatch) {\n const boundActionCreators = {};\n\n for (const key in actionCreators) {\n const actionCreator = actionCreators[key];\n\n if (typeof actionCreator === 'function') {\n boundActionCreators[key] = (...args) => dispatch(actionCreator(...args));\n }\n }\n\n return boundActionCreators;\n}","import verifyPlainObject from '../utils/verifyPlainObject';\nexport function wrapMapToPropsConstant( // * Note:\n// It seems that the dispatch argument\n// could be a dispatch function in some cases (ex: whenMapDispatchToPropsIsMissing)\n// and a state object in some others (ex: whenMapStateToPropsIsMissing)\n// eslint-disable-next-line no-unused-vars\ngetConstant) {\n return function initConstantSelector(dispatch) {\n const constant = getConstant(dispatch);\n\n function constantSelector() {\n return constant;\n }\n\n constantSelector.dependsOnOwnProps = false;\n return constantSelector;\n };\n} // dependsOnOwnProps is used by createMapToPropsProxy to determine whether to pass props as args\n// to the mapToProps function being wrapped. It is also used by makePurePropsSelector to determine\n// whether mapToProps needs to be invoked when props have changed.\n//\n// A length of one signals that mapToProps does not depend on props from the parent component.\n// A length of zero is assumed to mean mapToProps is getting args via arguments or ...args and\n// therefore not reporting its length accurately..\n// TODO Can this get pulled out so that we can subscribe directly to the store if we don't need ownProps?\n\nexport function getDependsOnOwnProps(mapToProps) {\n return mapToProps.dependsOnOwnProps ? Boolean(mapToProps.dependsOnOwnProps) : mapToProps.length !== 1;\n} // Used by whenMapStateToPropsIsFunction and whenMapDispatchToPropsIsFunction,\n// this function wraps mapToProps in a proxy function which does several things:\n//\n// * Detects whether the mapToProps function being called depends on props, which\n// is used by selectorFactory to decide if it should reinvoke on props changes.\n//\n// * On first call, handles mapToProps if returns another function, and treats that\n// new function as the true mapToProps for subsequent calls.\n//\n// * On first call, verifies the first result is a plain object, in order to warn\n// the developer that their mapToProps function is not returning a valid result.\n//\n\nexport function wrapMapToPropsFunc(mapToProps, methodName) {\n return function initProxySelector(dispatch, {\n displayName\n }) {\n const proxy = function mapToPropsProxy(stateOrDispatch, ownProps) {\n return proxy.dependsOnOwnProps ? proxy.mapToProps(stateOrDispatch, ownProps) : proxy.mapToProps(stateOrDispatch, undefined);\n }; // allow detectFactoryAndVerify to get ownProps\n\n\n proxy.dependsOnOwnProps = true;\n\n proxy.mapToProps = function detectFactoryAndVerify(stateOrDispatch, ownProps) {\n proxy.mapToProps = mapToProps;\n proxy.dependsOnOwnProps = getDependsOnOwnProps(mapToProps);\n let props = proxy(stateOrDispatch, ownProps);\n\n if (typeof props === 'function') {\n proxy.mapToProps = props;\n proxy.dependsOnOwnProps = getDependsOnOwnProps(props);\n props = proxy(stateOrDispatch, ownProps);\n }\n\n if (process.env.NODE_ENV !== 'production') verifyPlainObject(props, displayName, methodName);\n return props;\n };\n\n return proxy;\n };\n}","export function createInvalidArgFactory(arg, name) {\n return (dispatch, options) => {\n throw new Error(`Invalid value of type ${typeof arg} for ${name} argument when connecting component ${options.wrappedComponentName}.`);\n };\n}","import bindActionCreators from '../utils/bindActionCreators';\nimport { wrapMapToPropsConstant, wrapMapToPropsFunc } from './wrapMapToProps';\nimport { createInvalidArgFactory } from './invalidArgFactory';\nexport function mapDispatchToPropsFactory(mapDispatchToProps) {\n return mapDispatchToProps && typeof mapDispatchToProps === 'object' ? wrapMapToPropsConstant(dispatch => // @ts-ignore\n bindActionCreators(mapDispatchToProps, dispatch)) : !mapDispatchToProps ? wrapMapToPropsConstant(dispatch => ({\n dispatch\n })) : typeof mapDispatchToProps === 'function' ? // @ts-ignore\n wrapMapToPropsFunc(mapDispatchToProps, 'mapDispatchToProps') : createInvalidArgFactory(mapDispatchToProps, 'mapDispatchToProps');\n}","import { wrapMapToPropsConstant, wrapMapToPropsFunc } from './wrapMapToProps';\nimport { createInvalidArgFactory } from './invalidArgFactory';\nexport function mapStateToPropsFactory(mapStateToProps) {\n return !mapStateToProps ? wrapMapToPropsConstant(() => ({})) : typeof mapStateToProps === 'function' ? // @ts-ignore\n wrapMapToPropsFunc(mapStateToProps, 'mapStateToProps') : createInvalidArgFactory(mapStateToProps, 'mapStateToProps');\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport verifyPlainObject from '../utils/verifyPlainObject';\nimport { createInvalidArgFactory } from './invalidArgFactory';\nexport function defaultMergeProps(stateProps, dispatchProps, ownProps) {\n // @ts-ignore\n return _extends({}, ownProps, stateProps, dispatchProps);\n}\nexport function wrapMergePropsFunc(mergeProps) {\n return function initMergePropsProxy(dispatch, {\n displayName,\n areMergedPropsEqual\n }) {\n let hasRunOnce = false;\n let mergedProps;\n return function mergePropsProxy(stateProps, dispatchProps, ownProps) {\n const nextMergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n\n if (hasRunOnce) {\n if (!areMergedPropsEqual(nextMergedProps, mergedProps)) mergedProps = nextMergedProps;\n } else {\n hasRunOnce = true;\n mergedProps = nextMergedProps;\n if (process.env.NODE_ENV !== 'production') verifyPlainObject(mergedProps, displayName, 'mergeProps');\n }\n\n return mergedProps;\n };\n };\n}\nexport function mergePropsFactory(mergeProps) {\n return !mergeProps ? () => defaultMergeProps : typeof mergeProps === 'function' ? wrapMergePropsFunc(mergeProps) : createInvalidArgFactory(mergeProps, 'mergeProps');\n}","import { getBatch } from './batch'; // encapsulates the subscription logic for connecting a component to the redux store, as\n// well as nesting subscriptions of descendant components, so that we can ensure the\n// ancestor components re-render before descendants\n\nfunction createListenerCollection() {\n const batch = getBatch();\n let first = null;\n let last = null;\n return {\n clear() {\n first = null;\n last = null;\n },\n\n notify() {\n batch(() => {\n let listener = first;\n\n while (listener) {\n listener.callback();\n listener = listener.next;\n }\n });\n },\n\n get() {\n let listeners = [];\n let listener = first;\n\n while (listener) {\n listeners.push(listener);\n listener = listener.next;\n }\n\n return listeners;\n },\n\n subscribe(callback) {\n let isSubscribed = true;\n let listener = last = {\n callback,\n next: null,\n prev: last\n };\n\n if (listener.prev) {\n listener.prev.next = listener;\n } else {\n first = listener;\n }\n\n return function unsubscribe() {\n if (!isSubscribed || first === null) return;\n isSubscribed = false;\n\n if (listener.next) {\n listener.next.prev = listener.prev;\n } else {\n last = listener.prev;\n }\n\n if (listener.prev) {\n listener.prev.next = listener.next;\n } else {\n first = listener.next;\n }\n };\n }\n\n };\n}\n\nconst nullListeners = {\n notify() {},\n\n get: () => []\n};\nexport function createSubscription(store, parentSub) {\n let unsubscribe;\n let listeners = nullListeners; // Reasons to keep the subscription active\n\n let subscriptionsAmount = 0; // Is this specific subscription subscribed (or only nested ones?)\n\n let selfSubscribed = false;\n\n function addNestedSub(listener) {\n trySubscribe();\n const cleanupListener = listeners.subscribe(listener); // cleanup nested sub\n\n let removed = false;\n return () => {\n if (!removed) {\n removed = true;\n cleanupListener();\n tryUnsubscribe();\n }\n };\n }\n\n function notifyNestedSubs() {\n listeners.notify();\n }\n\n function handleChangeWrapper() {\n if (subscription.onStateChange) {\n subscription.onStateChange();\n }\n }\n\n function isSubscribed() {\n return selfSubscribed;\n }\n\n function trySubscribe() {\n subscriptionsAmount++;\n\n if (!unsubscribe) {\n unsubscribe = parentSub ? parentSub.addNestedSub(handleChangeWrapper) : store.subscribe(handleChangeWrapper);\n listeners = createListenerCollection();\n }\n }\n\n function tryUnsubscribe() {\n subscriptionsAmount--;\n\n if (unsubscribe && subscriptionsAmount === 0) {\n unsubscribe();\n unsubscribe = undefined;\n listeners.clear();\n listeners = nullListeners;\n }\n }\n\n function trySubscribeSelf() {\n if (!selfSubscribed) {\n selfSubscribed = true;\n trySubscribe();\n }\n }\n\n function tryUnsubscribeSelf() {\n if (selfSubscribed) {\n selfSubscribed = false;\n tryUnsubscribe();\n }\n }\n\n const subscription = {\n addNestedSub,\n notifyNestedSubs,\n handleChangeWrapper,\n isSubscribed,\n trySubscribe: trySubscribeSelf,\n tryUnsubscribe: tryUnsubscribeSelf,\n getListeners: () => listeners\n };\n return subscription;\n}","import * as React from 'react'; // Under React Native, we know that we always want to use useLayoutEffect\n\nexport const useIsomorphicLayoutEffect = React.useLayoutEffect;","function is(x, y) {\n if (x === y) {\n return x !== 0 || y !== 0 || 1 / x === 1 / y;\n } else {\n return x !== x && y !== y;\n }\n}\n\nexport default function shallowEqual(objA, objB) {\n if (is(objA, objB)) return true;\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n const keysA = Object.keys(objA);\n const keysB = Object.keys(objB);\n if (keysA.length !== keysB.length) return false;\n\n for (let i = 0; i < keysA.length; i++) {\n if (!Object.prototype.hasOwnProperty.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n\n return true;\n}","import * as React from 'react';\nimport { ReactReduxContext } from './Context';\nimport { createSubscription } from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\n\nfunction Provider({\n store,\n context,\n children,\n serverState,\n stabilityCheck = 'once',\n noopCheck = 'once'\n}) {\n const contextValue = React.useMemo(() => {\n const subscription = createSubscription(store);\n return {\n store,\n subscription,\n getServerState: serverState ? () => serverState : undefined,\n stabilityCheck,\n noopCheck\n };\n }, [store, serverState, stabilityCheck, noopCheck]);\n const previousState = React.useMemo(() => store.getState(), [store]);\n useIsomorphicLayoutEffect(() => {\n const {\n subscription\n } = contextValue;\n subscription.onStateChange = subscription.notifyNestedSubs;\n subscription.trySubscribe();\n\n if (previousState !== store.getState()) {\n subscription.notifyNestedSubs();\n }\n\n return () => {\n subscription.tryUnsubscribe();\n subscription.onStateChange = undefined;\n };\n }, [contextValue, previousState]);\n const Context = context || ReactReduxContext; // @ts-ignore 'AnyAction' is assignable to the constraint of type 'A', but 'A' could be instantiated with a different subtype\n\n return /*#__PURE__*/React.createElement(Context.Provider, {\n value: contextValue\n }, children);\n}\n\nexport default Provider;","import { connect } from \"react-redux\";\nimport * as React from \"react\";\nimport { Provider } from \"react-redux\";\nimport type { IInCellControlHostService } from \"../../hostService\";\nimport {\n loadControlDataAsync,\n updateControlDataAsync,\n} from \"../../store/AppAsyncActions\";\nimport type { IAppState } from \"../../store/AppState\";\nimport type { IControlData } from \"@ms/office-excel-incellcontrol\";\nimport type {\n InCellControlDispatch,\n InCellControlStore,\n} from \"../../store/Store\";\nimport { configureStore } from \"../../store/Store\";\nimport SettingsPaneUI from \"./SettingsPaneUI\";\nimport type {\n ISettingsPaneUIProps,\n ISettingsPaneUIDispatchProps,\n} from \"./SettingsPaneUI.props\";\n\nexport interface ISettingsPaneAppProps {\n hostService: IInCellControlHostService;\n}\n\nexport const SettingsPaneApp: React.FC = ({\n hostService,\n}) => {\n const store = configureStore(hostService) as InCellControlStore;\n\n React.useEffect(() => {\n store.dispatch(loadControlDataAsync());\n }, [store]);\n\n hostService.setReloadControlDataCallback(() => {\n store.dispatch(loadControlDataAsync());\n });\n\n return (\n \n \n \n );\n};\n\nfunction mapStateToProps(state: IAppState): ISettingsPaneUIProps {\n return {\n type: state.controlData.type,\n items: state.controlData.properties?.listItems?.map((item) => ({\n ...item,\n displayText: item.itemValue, // itemValue property in IControlItem maps to displayText\n })),\n };\n}\n\nfunction mapDispatchToProps(\n dispatch: InCellControlDispatch\n): ISettingsPaneUIDispatchProps {\n return {\n onRefresh: () => dispatch(loadControlDataAsync()), //unused for now\n onUpdateControl: (controlData: IControlData): Promise => {\n return dispatch(updateControlDataAsync(controlData));\n },\n };\n}\n\nexport const ConnectedSettingsPaneUI = connect<\n ISettingsPaneUIProps,\n ISettingsPaneUIDispatchProps,\n Record,\n IAppState\n>(\n mapStateToProps,\n mapDispatchToProps\n)(SettingsPaneUI);\n","function action(type, payload, meta) {\n return { type: type, payload: payload, meta: meta };\n}\n\nfunction validateActionType(arg, idx) {\n if (idx === void 0) { idx = 1; }\n if (arg == null) {\n throw new Error(\"Argument (#\" + idx + \") is missing\");\n }\n else {\n if (typeof arg !== 'string' && typeof arg !== 'symbol') {\n throw new Error(\"Argument (#\" + idx + \") should be of type: string | symbol\");\n }\n }\n}\n\nfunction createAction(actionType, actionResolverHandler) {\n validateActionType(actionType);\n var actionCreator = actionResolverHandler == null\n ? (function () { return action(actionType); })\n : actionResolverHandler(action.bind(null, actionType));\n return Object.assign(actionCreator, {\n getType: function () { return actionType; },\n toString: function () { return actionType; },\n });\n}\n\nfunction createActionWithType(type, actionCreatorHandler) {\n var actionCreator = actionCreatorHandler != null\n ? actionCreatorHandler(type)\n : (function () { return ({ type: type }); });\n return Object.assign(actionCreator, {\n getType: function () { return type; },\n toString: function () { return type; },\n });\n}\n\nfunction createStandardAction(actionType) {\n validateActionType(actionType);\n function constructor() {\n return createActionWithType(actionType, function (type) { return function (payload, meta) { return ({\n type: type,\n payload: payload,\n meta: meta,\n }); }; });\n }\n function map(fn) {\n return createActionWithType(actionType, function (type) { return function (payload, meta) {\n return Object.assign(fn(payload, meta), { type: type });\n }; });\n }\n return Object.assign(constructor, { map: map });\n}\n\nfunction createAsyncAction(requestType, successType, failureType) {\n [requestType, successType, failureType].forEach(function (arg, idx) {\n validateActionType(arg, idx + 1);\n });\n function constructor() {\n return {\n request: createActionWithType(requestType, function (type) { return function (payload) { return ({\n type: requestType,\n payload: payload,\n }); }; }),\n success: createActionWithType(successType, function (type) { return function (payload) { return ({\n type: successType,\n payload: payload,\n }); }; }),\n failure: createActionWithType(failureType, function (type) { return function (payload) { return ({\n type: failureType,\n payload: payload,\n }); }; }),\n };\n }\n return Object.assign(constructor, {});\n}\n\nfunction getType(creator) {\n if (creator == null) {\n throw new Error('first argument is missing');\n }\n if (creator.getType == null) {\n throw new Error('first argument is not an instance of \"typesafe-actions\"');\n }\n return creator.getType();\n}\n\nfunction isOfType(actionType, actionOrNil) {\n Array.isArray(actionType)\n ? actionType.forEach(function (type) { return validateActionType(type); })\n : validateActionType(actionType);\n var assertFn = Array.isArray(actionType)\n ? function (action) { return actionType.includes(action.type); }\n : function (action) { return action.type === actionType; };\n if (actionOrNil == null) {\n return assertFn;\n }\n return assertFn(actionOrNil);\n}\n\nfunction isActionOf(creatorOrCreators, actionOrNil) {\n if (creatorOrCreators == null) {\n throw new Error('first argument is missing');\n }\n if (Array.isArray(creatorOrCreators)) {\n creatorOrCreators.forEach(function (actionCreator, index) {\n if (actionCreator.getType == null) {\n throw new Error(\"first argument contains element\\n that is not created with \\\"typesafe-actions\\\" at index [\" + index + \"]\");\n }\n });\n }\n else {\n if (creatorOrCreators.getType == null) {\n throw new Error('first argument is not created with \"typesafe-actions\"');\n }\n }\n var assertFn = function (action) {\n var actionCreators = Array.isArray(creatorOrCreators)\n ? creatorOrCreators\n : [creatorOrCreators];\n return actionCreators.some(function (actionCreator, index) {\n return actionCreator.getType() === action.type;\n });\n };\n if (actionOrNil == null) {\n return assertFn;\n }\n return assertFn(actionOrNil);\n}\n\nfunction createActionDeprecated(actionType, creatorFunction) {\n var actionCreator;\n if (creatorFunction != null) {\n if (typeof creatorFunction !== 'function') {\n throw new Error('second argument is not a function');\n }\n actionCreator = creatorFunction;\n }\n else {\n actionCreator = (function () { return ({ type: actionType }); });\n }\n if (actionType != null) {\n if (typeof actionType !== 'string' && typeof actionType !== 'symbol') {\n throw new Error('first argument should be type of: string | symbol');\n }\n }\n else {\n throw new Error('first argument is missing');\n }\n return actionCreator;\n}\n\nexport { action, createAction, createStandardAction, createAsyncAction, getType, isOfType, isActionOf, createActionDeprecated };\n","import type { IControlData } from \"@ms/office-excel-incellcontrol\";\nimport { createAction } from \"typesafe-actions\";\n\n/**\n * Action for starting to load control data.\n */\nexport const setControlLoading = createAction(\n \"app/SET_CONTROL_LOADING\",\n (resolve) => () => resolve({})\n);\n\n/**\n * Action for setting the store's control collection.\n */\nexport const setControl = createAction(\n \"app/SET_CONTROL\",\n (resolve) => (controlData: IControlData) => resolve({ controlData })\n);\n\n/**\n * Action for moving the app into an error state when an async action caught an error.\n */\nexport const setError = createAction(\n \"app/SET_ERROR\",\n (resolve) => () => resolve({})\n);\n","/**\n * Tenant token of Aria tenant 'Office Excel'. All InCellControl telemetry will end up in this Aria tenant.\n */\nconst ariaTenantToken =\n \"19eb5e37de684ce38ce5cf3d5842d3f7-e8722941-bde5-4b98-9cd5-2775ec51482c-6873\";\n\n/**\n * Tenant token of Nexus tenant 'Office Excel'.\n */\nconst nexusTenantToken = 1717;\n\nexport const telemetryTokenTree = {\n Office: { Excel: { CellControls: { ariaTenantToken, nexusTenantToken } } },\n};\n\n/**\n * All InCellControl telemetry will be logged under this namespace.\n */\nexport const inCellControlTelemetryNamespace = \"Office.Excel.CellControls\";\n\n// eslint-disable-next-line @rnx-kit/no-const-enum\nexport const enum TelemetryActivityName {\n LoadControlData = \"LoadControlData\",\n LoadDropdownData = \"LoadDropdownData\",\n UpdateControlData = \"UpdateControlData\",\n}\n","import * as App from \"./AppActions\";\nimport type { IAppState } from \"./AppState\";\nimport type { InCellControlDispatch } from \"./Store\";\nimport type { IInCellControlHostService } from \"../hostService\";\nimport type { IControlData } from \"@ms/office-excel-incellcontrol\";\nimport { TelemetryActivityName } from \"../telemetry/InCellControlTelemetryConstants\";\n\n/**\n * Async action creator for loading control data on settings pane.\n */\nexport function loadControlDataAsync() {\n return async (\n dispatch: InCellControlDispatch,\n getState: () => IAppState,\n hostService: IInCellControlHostService\n ): Promise => {\n const activity = hostService.createTelemetryActivity(\n TelemetryActivityName.LoadControlData\n );\n try {\n dispatch(App.setControlLoading());\n const controlData: IControlData = await hostService.loadControlData();\n await hostService.subscribeToEvents();\n dispatch(App.setControl(controlData));\n\n activity.send(true);\n return true;\n } catch (error) {\n dispatch(App.setError());\n activity.send(false);\n return true;\n }\n };\n}\n\n/**\n * Async action creator for loading dropdown items on the dropdown list.\n */\nexport function loadDropdownDataAsync() {\n return async (\n dispatch: InCellControlDispatch,\n getState: () => IAppState,\n hostService: IInCellControlHostService\n ): Promise => {\n const activity = hostService.createTelemetryActivity(\n TelemetryActivityName.LoadDropdownData\n );\n try {\n // TODO: needs to be a separate action for loading the dropdownList.\n dispatch(App.setControlLoading());\n const controlData: IControlData = await hostService.loadDropdownData();\n dispatch(App.setControl(controlData));\n\n activity.send(true);\n return true;\n } catch (error) {\n // TODO: needs to be a separate action for error handling for the dropdownList.\n dispatch(App.setError());\n activity.send(false);\n return true;\n }\n };\n}\n\n/**\n * Async action creator for updating control data from settings pane.\n */\nexport function updateControlDataAsync(controlData: IControlData) {\n return async (\n dispatch: InCellControlDispatch,\n getState: () => IAppState,\n hostService: IInCellControlHostService\n ): Promise => {\n const activity = hostService.createTelemetryActivity(\n TelemetryActivityName.UpdateControlData\n );\n try {\n await hostService.updateControlData(controlData);\n activity.send(true);\n return true;\n } catch (error) {\n dispatch(App.setError());\n activity.send(false);\n return false;\n }\n };\n}\n","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","import defineProperty from \"./defineProperty.js\";\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nexport { _objectSpread2 as default };","import _objectSpread from '@babel/runtime/helpers/esm/objectSpread2';\n\n/**\n * Adapted from React: https://github.com/facebook/react/blob/master/packages/shared/formatProdErrorMessage.js\n *\n * Do not require this module directly! Use normal throw error calls. These messages will be replaced with error codes\n * during build.\n * @param {number} code\n */\nfunction formatProdErrorMessage(code) {\n return \"Minified Redux error #\" + code + \"; visit https://redux.js.org/Errors?code=\" + code + \" for the full message or \" + 'use the non-minified dev environment for full errors. ';\n}\n\n// Inlined version of the `symbol-observable` polyfill\nvar $$observable = (function () {\n return typeof Symbol === 'function' && Symbol.observable || '@@observable';\n})();\n\n/**\n * These are private action types reserved by Redux.\n * For any unknown actions, you must return the current state.\n * If the current state is undefined, you must return the initial state.\n * Do not reference these action types directly in your code.\n */\nvar randomString = function randomString() {\n return Math.random().toString(36).substring(7).split('').join('.');\n};\n\nvar ActionTypes = {\n INIT: \"@@redux/INIT\" + randomString(),\n REPLACE: \"@@redux/REPLACE\" + randomString(),\n PROBE_UNKNOWN_ACTION: function PROBE_UNKNOWN_ACTION() {\n return \"@@redux/PROBE_UNKNOWN_ACTION\" + randomString();\n }\n};\n\n/**\n * @param {any} obj The object to inspect.\n * @returns {boolean} True if the argument appears to be a plain object.\n */\nfunction isPlainObject(obj) {\n if (typeof obj !== 'object' || obj === null) return false;\n var proto = obj;\n\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n\n return Object.getPrototypeOf(obj) === proto;\n}\n\n// Inlined / shortened version of `kindOf` from https://github.com/jonschlinkert/kind-of\nfunction miniKindOf(val) {\n if (val === void 0) return 'undefined';\n if (val === null) return 'null';\n var type = typeof val;\n\n switch (type) {\n case 'boolean':\n case 'string':\n case 'number':\n case 'symbol':\n case 'function':\n {\n return type;\n }\n }\n\n if (Array.isArray(val)) return 'array';\n if (isDate(val)) return 'date';\n if (isError(val)) return 'error';\n var constructorName = ctorName(val);\n\n switch (constructorName) {\n case 'Symbol':\n case 'Promise':\n case 'WeakMap':\n case 'WeakSet':\n case 'Map':\n case 'Set':\n return constructorName;\n } // other\n\n\n return type.slice(8, -1).toLowerCase().replace(/\\s/g, '');\n}\n\nfunction ctorName(val) {\n return typeof val.constructor === 'function' ? val.constructor.name : null;\n}\n\nfunction isError(val) {\n return val instanceof Error || typeof val.message === 'string' && val.constructor && typeof val.constructor.stackTraceLimit === 'number';\n}\n\nfunction isDate(val) {\n if (val instanceof Date) return true;\n return typeof val.toDateString === 'function' && typeof val.getDate === 'function' && typeof val.setDate === 'function';\n}\n\nfunction kindOf(val) {\n var typeOfVal = typeof val;\n\n if (process.env.NODE_ENV !== 'production') {\n typeOfVal = miniKindOf(val);\n }\n\n return typeOfVal;\n}\n\n/**\n * @deprecated\n *\n * **We recommend using the `configureStore` method\n * of the `@reduxjs/toolkit` package**, which replaces `createStore`.\n *\n * Redux Toolkit is our recommended approach for writing Redux logic today,\n * including store setup, reducers, data fetching, and more.\n *\n * **For more details, please read this Redux docs page:**\n * **https://redux.js.org/introduction/why-rtk-is-redux-today**\n *\n * `configureStore` from Redux Toolkit is an improved version of `createStore` that\n * simplifies setup and helps avoid common bugs.\n *\n * You should not be using the `redux` core package by itself today, except for learning purposes.\n * The `createStore` method from the core `redux` package will not be removed, but we encourage\n * all users to migrate to using Redux Toolkit for all Redux code.\n *\n * If you want to use `createStore` without this visual deprecation warning, use\n * the `legacy_createStore` import instead:\n *\n * `import { legacy_createStore as createStore} from 'redux'`\n *\n */\n\nfunction createStore(reducer, preloadedState, enhancer) {\n var _ref2;\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'function' || typeof enhancer === 'function' && typeof arguments[3] === 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(0) : 'It looks like you are passing several store enhancers to ' + 'createStore(). This is not supported. Instead, compose them ' + 'together to a single function. See https://redux.js.org/tutorials/fundamentals/part-4-store#creating-a-store-with-enhancers for an example.');\n }\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') {\n enhancer = preloadedState;\n preloadedState = undefined;\n }\n\n if (typeof enhancer !== 'undefined') {\n if (typeof enhancer !== 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(1) : \"Expected the enhancer to be a function. Instead, received: '\" + kindOf(enhancer) + \"'\");\n }\n\n return enhancer(createStore)(reducer, preloadedState);\n }\n\n if (typeof reducer !== 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(2) : \"Expected the root reducer to be a function. Instead, received: '\" + kindOf(reducer) + \"'\");\n }\n\n var currentReducer = reducer;\n var currentState = preloadedState;\n var currentListeners = [];\n var nextListeners = currentListeners;\n var isDispatching = false;\n /**\n * This makes a shallow copy of currentListeners so we can use\n * nextListeners as a temporary list while dispatching.\n *\n * This prevents any bugs around consumers calling\n * subscribe/unsubscribe in the middle of a dispatch.\n */\n\n function ensureCanMutateNextListeners() {\n if (nextListeners === currentListeners) {\n nextListeners = currentListeners.slice();\n }\n }\n /**\n * Reads the state tree managed by the store.\n *\n * @returns {any} The current state tree of your application.\n */\n\n\n function getState() {\n if (isDispatching) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(3) : 'You may not call store.getState() while the reducer is executing. ' + 'The reducer has already received the state as an argument. ' + 'Pass it down from the top reducer instead of reading it from the store.');\n }\n\n return currentState;\n }\n /**\n * Adds a change listener. It will be called any time an action is dispatched,\n * and some part of the state tree may potentially have changed. You may then\n * call `getState()` to read the current state tree inside the callback.\n *\n * You may call `dispatch()` from a change listener, with the following\n * caveats:\n *\n * 1. The subscriptions are snapshotted just before every `dispatch()` call.\n * If you subscribe or unsubscribe while the listeners are being invoked, this\n * will not have any effect on the `dispatch()` that is currently in progress.\n * However, the next `dispatch()` call, whether nested or not, will use a more\n * recent snapshot of the subscription list.\n *\n * 2. The listener should not expect to see all state changes, as the state\n * might have been updated multiple times during a nested `dispatch()` before\n * the listener is called. It is, however, guaranteed that all subscribers\n * registered before the `dispatch()` started will be called with the latest\n * state by the time it exits.\n *\n * @param {Function} listener A callback to be invoked on every dispatch.\n * @returns {Function} A function to remove this change listener.\n */\n\n\n function subscribe(listener) {\n if (typeof listener !== 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(4) : \"Expected the listener to be a function. Instead, received: '\" + kindOf(listener) + \"'\");\n }\n\n if (isDispatching) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(5) : 'You may not call store.subscribe() while the reducer is executing. ' + 'If you would like to be notified after the store has been updated, subscribe from a ' + 'component and invoke store.getState() in the callback to access the latest state. ' + 'See https://redux.js.org/api/store#subscribelistener for more details.');\n }\n\n var isSubscribed = true;\n ensureCanMutateNextListeners();\n nextListeners.push(listener);\n return function unsubscribe() {\n if (!isSubscribed) {\n return;\n }\n\n if (isDispatching) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(6) : 'You may not unsubscribe from a store listener while the reducer is executing. ' + 'See https://redux.js.org/api/store#subscribelistener for more details.');\n }\n\n isSubscribed = false;\n ensureCanMutateNextListeners();\n var index = nextListeners.indexOf(listener);\n nextListeners.splice(index, 1);\n currentListeners = null;\n };\n }\n /**\n * Dispatches an action. It is the only way to trigger a state change.\n *\n * The `reducer` function, used to create the store, will be called with the\n * current state tree and the given `action`. Its return value will\n * be considered the **next** state of the tree, and the change listeners\n * will be notified.\n *\n * The base implementation only supports plain object actions. If you want to\n * dispatch a Promise, an Observable, a thunk, or something else, you need to\n * wrap your store creating function into the corresponding middleware. For\n * example, see the documentation for the `redux-thunk` package. Even the\n * middleware will eventually dispatch plain object actions using this method.\n *\n * @param {Object} action A plain object representing “what changed”. It is\n * a good idea to keep actions serializable so you can record and replay user\n * sessions, or use the time travelling `redux-devtools`. An action must have\n * a `type` property which may not be `undefined`. It is a good idea to use\n * string constants for action types.\n *\n * @returns {Object} For convenience, the same action object you dispatched.\n *\n * Note that, if you use a custom middleware, it may wrap `dispatch()` to\n * return something else (for example, a Promise you can await).\n */\n\n\n function dispatch(action) {\n if (!isPlainObject(action)) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(7) : \"Actions must be plain objects. Instead, the actual type was: '\" + kindOf(action) + \"'. You may need to add middleware to your store setup to handle dispatching other values, such as 'redux-thunk' to handle dispatching functions. See https://redux.js.org/tutorials/fundamentals/part-4-store#middleware and https://redux.js.org/tutorials/fundamentals/part-6-async-logic#using-the-redux-thunk-middleware for examples.\");\n }\n\n if (typeof action.type === 'undefined') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(8) : 'Actions may not have an undefined \"type\" property. You may have misspelled an action type string constant.');\n }\n\n if (isDispatching) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(9) : 'Reducers may not dispatch actions.');\n }\n\n try {\n isDispatching = true;\n currentState = currentReducer(currentState, action);\n } finally {\n isDispatching = false;\n }\n\n var listeners = currentListeners = nextListeners;\n\n for (var i = 0; i < listeners.length; i++) {\n var listener = listeners[i];\n listener();\n }\n\n return action;\n }\n /**\n * Replaces the reducer currently used by the store to calculate the state.\n *\n * You might need this if your app implements code splitting and you want to\n * load some of the reducers dynamically. You might also need this if you\n * implement a hot reloading mechanism for Redux.\n *\n * @param {Function} nextReducer The reducer for the store to use instead.\n * @returns {void}\n */\n\n\n function replaceReducer(nextReducer) {\n if (typeof nextReducer !== 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(10) : \"Expected the nextReducer to be a function. Instead, received: '\" + kindOf(nextReducer));\n }\n\n currentReducer = nextReducer; // This action has a similiar effect to ActionTypes.INIT.\n // Any reducers that existed in both the new and old rootReducer\n // will receive the previous state. This effectively populates\n // the new state tree with any relevant data from the old one.\n\n dispatch({\n type: ActionTypes.REPLACE\n });\n }\n /**\n * Interoperability point for observable/reactive libraries.\n * @returns {observable} A minimal observable of state changes.\n * For more information, see the observable proposal:\n * https://github.com/tc39/proposal-observable\n */\n\n\n function observable() {\n var _ref;\n\n var outerSubscribe = subscribe;\n return _ref = {\n /**\n * The minimal observable subscription method.\n * @param {Object} observer Any object that can be used as an observer.\n * The observer object should have a `next` method.\n * @returns {subscription} An object with an `unsubscribe` method that can\n * be used to unsubscribe the observable from the store, and prevent further\n * emission of values from the observable.\n */\n subscribe: function subscribe(observer) {\n if (typeof observer !== 'object' || observer === null) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(11) : \"Expected the observer to be an object. Instead, received: '\" + kindOf(observer) + \"'\");\n }\n\n function observeState() {\n if (observer.next) {\n observer.next(getState());\n }\n }\n\n observeState();\n var unsubscribe = outerSubscribe(observeState);\n return {\n unsubscribe: unsubscribe\n };\n }\n }, _ref[$$observable] = function () {\n return this;\n }, _ref;\n } // When a store is created, an \"INIT\" action is dispatched so that every\n // reducer returns their initial state. This effectively populates\n // the initial state tree.\n\n\n dispatch({\n type: ActionTypes.INIT\n });\n return _ref2 = {\n dispatch: dispatch,\n subscribe: subscribe,\n getState: getState,\n replaceReducer: replaceReducer\n }, _ref2[$$observable] = observable, _ref2;\n}\n/**\n * Creates a Redux store that holds the state tree.\n *\n * **We recommend using `configureStore` from the\n * `@reduxjs/toolkit` package**, which replaces `createStore`:\n * **https://redux.js.org/introduction/why-rtk-is-redux-today**\n *\n * The only way to change the data in the store is to call `dispatch()` on it.\n *\n * There should only be a single store in your app. To specify how different\n * parts of the state tree respond to actions, you may combine several reducers\n * into a single reducer function by using `combineReducers`.\n *\n * @param {Function} reducer A function that returns the next state tree, given\n * the current state tree and the action to handle.\n *\n * @param {any} [preloadedState] The initial state. You may optionally specify it\n * to hydrate the state from the server in universal apps, or to restore a\n * previously serialized user session.\n * If you use `combineReducers` to produce the root reducer function, this must be\n * an object with the same shape as `combineReducers` keys.\n *\n * @param {Function} [enhancer] The store enhancer. You may optionally specify it\n * to enhance the store with third-party capabilities such as middleware,\n * time travel, persistence, etc. The only store enhancer that ships with Redux\n * is `applyMiddleware()`.\n *\n * @returns {Store} A Redux store that lets you read the state, dispatch actions\n * and subscribe to changes.\n */\n\nvar legacy_createStore = createStore;\n\n/**\n * Prints a warning in the console if it exists.\n *\n * @param {String} message The warning message.\n * @returns {void}\n */\nfunction warning(message) {\n /* eslint-disable no-console */\n if (typeof console !== 'undefined' && typeof console.error === 'function') {\n console.error(message);\n }\n /* eslint-enable no-console */\n\n\n try {\n // This error was thrown as a convenience so that if you enable\n // \"break on all exceptions\" in your console,\n // it would pause the execution at this line.\n throw new Error(message);\n } catch (e) {} // eslint-disable-line no-empty\n\n}\n\nfunction getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {\n var reducerKeys = Object.keys(reducers);\n var argumentName = action && action.type === ActionTypes.INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer';\n\n if (reducerKeys.length === 0) {\n return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.';\n }\n\n if (!isPlainObject(inputState)) {\n return \"The \" + argumentName + \" has unexpected type of \\\"\" + kindOf(inputState) + \"\\\". Expected argument to be an object with the following \" + (\"keys: \\\"\" + reducerKeys.join('\", \"') + \"\\\"\");\n }\n\n var unexpectedKeys = Object.keys(inputState).filter(function (key) {\n return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];\n });\n unexpectedKeys.forEach(function (key) {\n unexpectedKeyCache[key] = true;\n });\n if (action && action.type === ActionTypes.REPLACE) return;\n\n if (unexpectedKeys.length > 0) {\n return \"Unexpected \" + (unexpectedKeys.length > 1 ? 'keys' : 'key') + \" \" + (\"\\\"\" + unexpectedKeys.join('\", \"') + \"\\\" found in \" + argumentName + \". \") + \"Expected to find one of the known reducer keys instead: \" + (\"\\\"\" + reducerKeys.join('\", \"') + \"\\\". Unexpected keys will be ignored.\");\n }\n}\n\nfunction assertReducerShape(reducers) {\n Object.keys(reducers).forEach(function (key) {\n var reducer = reducers[key];\n var initialState = reducer(undefined, {\n type: ActionTypes.INIT\n });\n\n if (typeof initialState === 'undefined') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(12) : \"The slice reducer for key \\\"\" + key + \"\\\" returned undefined during initialization. \" + \"If the state passed to the reducer is undefined, you must \" + \"explicitly return the initial state. The initial state may \" + \"not be undefined. If you don't want to set a value for this reducer, \" + \"you can use null instead of undefined.\");\n }\n\n if (typeof reducer(undefined, {\n type: ActionTypes.PROBE_UNKNOWN_ACTION()\n }) === 'undefined') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(13) : \"The slice reducer for key \\\"\" + key + \"\\\" returned undefined when probed with a random type. \" + (\"Don't try to handle '\" + ActionTypes.INIT + \"' or other actions in \\\"redux/*\\\" \") + \"namespace. They are considered private. Instead, you must return the \" + \"current state for any unknown actions, unless it is undefined, \" + \"in which case you must return the initial state, regardless of the \" + \"action type. The initial state may not be undefined, but can be null.\");\n }\n });\n}\n/**\n * Turns an object whose values are different reducer functions, into a single\n * reducer function. It will call every child reducer, and gather their results\n * into a single state object, whose keys correspond to the keys of the passed\n * reducer functions.\n *\n * @param {Object} reducers An object whose values correspond to different\n * reducer functions that need to be combined into one. One handy way to obtain\n * it is to use ES6 `import * as reducers` syntax. The reducers may never return\n * undefined for any action. Instead, they should return their initial state\n * if the state passed to them was undefined, and the current state for any\n * unrecognized action.\n *\n * @returns {Function} A reducer function that invokes every reducer inside the\n * passed object, and builds a state object with the same shape.\n */\n\n\nfunction combineReducers(reducers) {\n var reducerKeys = Object.keys(reducers);\n var finalReducers = {};\n\n for (var i = 0; i < reducerKeys.length; i++) {\n var key = reducerKeys[i];\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof reducers[key] === 'undefined') {\n warning(\"No reducer provided for key \\\"\" + key + \"\\\"\");\n }\n }\n\n if (typeof reducers[key] === 'function') {\n finalReducers[key] = reducers[key];\n }\n }\n\n var finalReducerKeys = Object.keys(finalReducers); // This is used to make sure we don't warn about the same\n // keys multiple times.\n\n var unexpectedKeyCache;\n\n if (process.env.NODE_ENV !== 'production') {\n unexpectedKeyCache = {};\n }\n\n var shapeAssertionError;\n\n try {\n assertReducerShape(finalReducers);\n } catch (e) {\n shapeAssertionError = e;\n }\n\n return function combination(state, action) {\n if (state === void 0) {\n state = {};\n }\n\n if (shapeAssertionError) {\n throw shapeAssertionError;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache);\n\n if (warningMessage) {\n warning(warningMessage);\n }\n }\n\n var hasChanged = false;\n var nextState = {};\n\n for (var _i = 0; _i < finalReducerKeys.length; _i++) {\n var _key = finalReducerKeys[_i];\n var reducer = finalReducers[_key];\n var previousStateForKey = state[_key];\n var nextStateForKey = reducer(previousStateForKey, action);\n\n if (typeof nextStateForKey === 'undefined') {\n var actionType = action && action.type;\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(14) : \"When called with an action of type \" + (actionType ? \"\\\"\" + String(actionType) + \"\\\"\" : '(unknown type)') + \", the slice reducer for key \\\"\" + _key + \"\\\" returned undefined. \" + \"To ignore an action, you must explicitly return the previous state. \" + \"If you want this reducer to hold no value, you can return null instead of undefined.\");\n }\n\n nextState[_key] = nextStateForKey;\n hasChanged = hasChanged || nextStateForKey !== previousStateForKey;\n }\n\n hasChanged = hasChanged || finalReducerKeys.length !== Object.keys(state).length;\n return hasChanged ? nextState : state;\n };\n}\n\nfunction bindActionCreator(actionCreator, dispatch) {\n return function () {\n return dispatch(actionCreator.apply(this, arguments));\n };\n}\n/**\n * Turns an object whose values are action creators, into an object with the\n * same keys, but with every function wrapped into a `dispatch` call so they\n * may be invoked directly. This is just a convenience method, as you can call\n * `store.dispatch(MyActionCreators.doSomething())` yourself just fine.\n *\n * For convenience, you can also pass an action creator as the first argument,\n * and get a dispatch wrapped function in return.\n *\n * @param {Function|Object} actionCreators An object whose values are action\n * creator functions. One handy way to obtain it is to use ES6 `import * as`\n * syntax. You may also pass a single function.\n *\n * @param {Function} dispatch The `dispatch` function available on your Redux\n * store.\n *\n * @returns {Function|Object} The object mimicking the original object, but with\n * every action creator wrapped into the `dispatch` call. If you passed a\n * function as `actionCreators`, the return value will also be a single\n * function.\n */\n\n\nfunction bindActionCreators(actionCreators, dispatch) {\n if (typeof actionCreators === 'function') {\n return bindActionCreator(actionCreators, dispatch);\n }\n\n if (typeof actionCreators !== 'object' || actionCreators === null) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(16) : \"bindActionCreators expected an object or a function, but instead received: '\" + kindOf(actionCreators) + \"'. \" + \"Did you write \\\"import ActionCreators from\\\" instead of \\\"import * as ActionCreators from\\\"?\");\n }\n\n var boundActionCreators = {};\n\n for (var key in actionCreators) {\n var actionCreator = actionCreators[key];\n\n if (typeof actionCreator === 'function') {\n boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);\n }\n }\n\n return boundActionCreators;\n}\n\n/**\n * Composes single-argument functions from right to left. The rightmost\n * function can take multiple arguments as it provides the signature for\n * the resulting composite function.\n *\n * @param {...Function} funcs The functions to compose.\n * @returns {Function} A function obtained by composing the argument functions\n * from right to left. For example, compose(f, g, h) is identical to doing\n * (...args) => f(g(h(...args))).\n */\nfunction compose() {\n for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {\n funcs[_key] = arguments[_key];\n }\n\n if (funcs.length === 0) {\n return function (arg) {\n return arg;\n };\n }\n\n if (funcs.length === 1) {\n return funcs[0];\n }\n\n return funcs.reduce(function (a, b) {\n return function () {\n return a(b.apply(void 0, arguments));\n };\n });\n}\n\n/**\n * Creates a store enhancer that applies middleware to the dispatch method\n * of the Redux store. This is handy for a variety of tasks, such as expressing\n * asynchronous actions in a concise manner, or logging every action payload.\n *\n * See `redux-thunk` package as an example of the Redux middleware.\n *\n * Because middleware is potentially asynchronous, this should be the first\n * store enhancer in the composition chain.\n *\n * Note that each middleware will be given the `dispatch` and `getState` functions\n * as named arguments.\n *\n * @param {...Function} middlewares The middleware chain to be applied.\n * @returns {Function} A store enhancer applying the middleware.\n */\n\nfunction applyMiddleware() {\n for (var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++) {\n middlewares[_key] = arguments[_key];\n }\n\n return function (createStore) {\n return function () {\n var store = createStore.apply(void 0, arguments);\n\n var _dispatch = function dispatch() {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(15) : 'Dispatching while constructing your middleware is not allowed. ' + 'Other middleware would not be applied to this dispatch.');\n };\n\n var middlewareAPI = {\n getState: store.getState,\n dispatch: function dispatch() {\n return _dispatch.apply(void 0, arguments);\n }\n };\n var chain = middlewares.map(function (middleware) {\n return middleware(middlewareAPI);\n });\n _dispatch = compose.apply(void 0, chain)(store.dispatch);\n return _objectSpread(_objectSpread({}, store), {}, {\n dispatch: _dispatch\n });\n };\n };\n}\n\nexport { ActionTypes as __DO_NOT_USE__ActionTypes, applyMiddleware, bindActionCreators, combineReducers, compose, createStore, legacy_createStore };\n","/** A function that accepts a potential \"extra argument\" value to be injected later,\r\n * and returns an instance of the thunk middleware that uses that value\r\n */\nfunction createThunkMiddleware(extraArgument) {\n // Standard Redux middleware definition pattern:\n // See: https://redux.js.org/tutorials/fundamentals/part-4-store#writing-custom-middleware\n var middleware = function middleware(_ref) {\n var dispatch = _ref.dispatch,\n getState = _ref.getState;\n return function (next) {\n return function (action) {\n // The thunk middleware looks for any functions that were passed to `store.dispatch`.\n // If this \"action\" is really a function, call it and return the result.\n if (typeof action === 'function') {\n // Inject the store's `dispatch` and `getState` methods, as well as any \"extra arg\"\n return action(dispatch, getState, extraArgument);\n } // Otherwise, pass the action down the middleware chain as usual\n\n\n return next(action);\n };\n };\n };\n\n return middleware;\n}\n\nvar thunk = createThunkMiddleware(); // Attach the factory function so users can create a customized version\n// with whatever \"extra arg\" they want to inject into their thunks\n\nthunk.withExtraArgument = createThunkMiddleware;\nexport default thunk;","import type {\n ControlType,\n IControlProperties,\n} from \"@ms/office-excel-incellcontrol\";\n\nexport interface IInternalControlData {\n type: ControlType;\n properties?: IControlProperties;\n controlState: ControlState;\n}\n\nexport enum ErrorState {\n // Indicates that the app state\n none = 0,\n dirty = 1, // Indicates that the app is dirty and needs to be reloaded\n error = 2,\n}\n\nexport enum ControlState {\n // Note: Currently there is no \"unloaded\" state since we always start loading\n // immediately when the App component is created.\n loading = 0,\n loaded = 1,\n}\n","import type { Reducer } from \"redux\";\nimport type { ActionType } from \"typesafe-actions\";\nimport { getType } from \"typesafe-actions\";\nimport * as App from \"./AppActions\";\nimport type { IAppState } from \"./AppState\";\nimport type { IInternalControlData } from \"../types\";\nimport { ErrorState, ControlState } from \"../types\";\nimport { ControlType } from \"@ms/office-excel-incellcontrol\";\n\n/**\n * App action.\n */\nexport type AppAction = ActionType;\n\n/**\n * Reducer function for app for transitioning from one state to the next.\n * @param state Current state for app.\n * @param action Action being dispatched.\n */\nexport const reducer: Reducer = (\n state: IAppState = {\n errorState: ErrorState.none,\n controlData: {\n type: ControlType.blank,\n properties: {\n listItems: [],\n },\n controlState: ControlState.loading,\n },\n },\n action: AppAction\n): IAppState => {\n switch (action.type) {\n // TODO: Need to create a DropdownValuesList(Placeholder) that shows a shimmer\n case getType(App.setControlLoading): {\n return {\n ...state,\n errorState: ErrorState.none,\n controlData: {\n ...state.controlData,\n controlState: ControlState.loading,\n },\n };\n }\n\n case getType(App.setControl): {\n const { controlData } = action.payload;\n\n const internalControlData: IInternalControlData = {\n type: controlData.type as ControlType,\n properties: controlData.properties,\n controlState: ControlState.loaded,\n };\n\n return {\n errorState: state.errorState,\n controlData: internalControlData,\n };\n }\n\n // TODO: Need to create an error view (PM question)\n case getType(App.setError): {\n if (state.errorState === ErrorState.error) {\n return state;\n }\n\n return {\n errorState: ErrorState.error,\n controlData: {\n ...state.controlData,\n },\n };\n }\n }\n\n return state;\n};\n","import type { Store, Middleware } from \"redux\";\nimport { createStore, applyMiddleware, compose } from \"redux\";\nimport type { ThunkAction, ThunkDispatch } from \"redux-thunk\";\nimport thunkMiddleware from \"redux-thunk\";\nimport type { IInCellControlHostService } from \"../hostService\";\nimport type { IAppState } from \"./AppState\";\nimport type { AppAction } from \"./AppReducer\";\nimport { reducer } from \"./AppReducer\";\n\n// This is equivalent to 'Omit' (introduced in Typescript@3.5.1)\n// tslint:disable-next-line:no-any\n// eslint-disable-next-line @typescript-eslint/no-explicit-any -- Bulk disabled to switch to eslint\ntype RemoveKey = Pick>;\n\n// Dispatch function type (can dispatch any AppAction or AppThunkAction)\nexport type InCellControlDispatch = ThunkDispatch<\n IAppState,\n IInCellControlHostService,\n AppAction\n>;\n\n/** App thunk action type (function action)\n * R - return type of action function\n */\nexport type AppThunkAction = ThunkAction<\n R,\n IAppState,\n (index: number) => void,\n AppAction\n>;\n\n// Store type. Note: we replace the dispatch method in Store with one that supports thunk actions\nexport type InCellControlStore = RemoveKey, \"dispatch\"> & {\n dispatch: InCellControlDispatch;\n};\n\nexport function configureStore(\n hostService?: IInCellControlHostService,\n initialState?: IAppState\n): Store {\n const middlewares: Middleware[] = [\n thunkMiddleware.withExtraArgument(hostService),\n ];\n\n const enhancer = compose(applyMiddleware(...middlewares));\n\n return createStore(reducer, initialState, enhancer);\n}\n","import * as React from \"react\";\nimport { SafeAreaView, View } from \"react-native\";\n\nimport { FocusZone } from \"@fluentui-react-native/focus-zone\";\nimport { ThemeProvider } from \"@fluentui-react-native/theme\";\nimport { TabList, Tab } from \"@fluentui-react-native/tablist\";\nimport { createOfficeTheme } from \"@fluentui-react-native/win32-theme\";\n\nimport { AppearanceSection } from \"./AppearanceSection\";\nimport { ControlSection } from \"./ControlSection\";\nimport { ValidationSection } from \"./ValidationSection\";\n\nimport SettingsPaneStyles from \"./SettingsPaneUI.styles\";\nimport { TabKey } from \"../../utils/UIConstants\";\nimport type { SettingsPaneUIProps } from \"./SettingsPaneUI.props\";\n\nconst strings = require(\"../../../assets/strings.resjson\");\n\nexport default class SettingsPaneUI extends React.Component {\n state = {\n selectedTab: TabKey.Control,\n };\n\n constructor(props: SettingsPaneUIProps) {\n super(props);\n }\n\n renderSelectedTab() {\n const { selectedTab } = this.state;\n\n switch (selectedTab) {\n case TabKey.Control: {\n const { type, items, onUpdateControl } = this.props;\n return (\n \n );\n }\n case TabKey.Appearance: {\n return ;\n }\n case TabKey.Validation: {\n return ;\n }\n default:\n return null;\n }\n }\n\n render() {\n return (\n \n {/* Root Container */}\n \n \n \n \n \n {strings.getString(\"ControlTabTitle\")}\n \n \n {strings.getString(\"AppearanceTabTitle\")}\n \n \n {strings.getString(\"ValidationTabTitle\")}\n \n \n {this.renderSelectedTab()}\n \n \n \n \n );\n }\n private onTabSelect = (key: string) => {\n this.setState({ selectedTab: key });\n };\n}\n\n// FocusZone displays Keyboard Focus Rectangle\n// when Dialog first appears. Without FocusZone, Keyboard Focus\n// stays invisible.\nconst RootBackgroundContainer: React.FunctionComponent<\n React.PropsWithChildren\n> = ({ children }) => {\n return (\n \n {children}\n \n );\n};\n","/**\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n * @format\n */\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport * as React from 'react';\nimport { findNodeHandle } from 'react-native';\nimport { useViewCommandFocus } from '@fluentui-react-native/interactive-hooks';\nimport { composable } from '@uifabricshared/foundation-composable';\nimport { mergeSettings } from '@uifabricshared/foundation-settings';\nimport RCTFocusZone from './FocusZoneNativeComponent';\nvar filterOutComponentRef = function (propName) { return propName !== 'componentRef'; };\nexport var FocusZone = composable({\n usePrepareProps: function (userProps, useStyling) {\n var componentRef = userProps.componentRef, defaultTabbableElement = userProps.defaultTabbableElement, isCircularNavigation = userProps.isCircularNavigation, rest = __rest(userProps, [\"componentRef\", \"defaultTabbableElement\", \"isCircularNavigation\"]);\n var ftzRef = useViewCommandFocus(componentRef);\n var _a = React.useState(undefined), targetNativeTag = _a[0], setTargetNativeTag = _a[1];\n React.useLayoutEffect(function () {\n if (defaultTabbableElement === null || defaultTabbableElement === void 0 ? void 0 : defaultTabbableElement.current) {\n setTargetNativeTag(findNodeHandle(defaultTabbableElement.current));\n }\n else {\n setTargetNativeTag(undefined);\n }\n }, [defaultTabbableElement]);\n return {\n slotProps: mergeSettings(useStyling(userProps), {\n root: __assign(__assign({ navigateAtEnd: isCircularNavigation ? 'NavigateWrap' : 'NavigateStopAtEnds' }, rest), { defaultTabbableElement: targetNativeTag, ref: ftzRef }),\n }),\n };\n },\n slots: {\n root: { slotType: RCTFocusZone, filter: filterOutComponentRef },\n },\n});\n//# sourceMappingURL=FocusZone.js.map","export var isGestureResponderEvent = function (e) {\n if ('touches' in e.nativeEvent) {\n return true;\n }\n return false;\n};\nexport var isMouseEvent = function (e) {\n if ('pageX' in e.nativeEvent) {\n return true;\n }\n return false;\n};\nexport var isKeyPressEvent = function (e) {\n if ('key' in e.nativeEvent) {\n return true;\n }\n return false;\n};\nexport var isAccessibilityActionEvent = function (e) {\n if ('actionName' in e.nativeEvent) {\n return true;\n }\n return false;\n};\n//# sourceMappingURL=events.types.js.map","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { usePressability } from './usePressability';\n/**\n * hover specific state and callback helper\n */\nfunction useHoverHelper(props) {\n var _a = React.useState({ hovered: false }), hoverState = _a[0], setHoverState = _a[1];\n var onHoverIn = React.useCallback(function (e) {\n setHoverState({ hovered: true });\n if (props.onHoverIn) {\n props.onHoverIn(e);\n }\n }, [setHoverState, props.onHoverIn]);\n var onHoverOut = React.useCallback(function (e) {\n setHoverState({ hovered: false });\n if (props.onHoverOut) {\n props.onHoverOut(e);\n }\n }, [setHoverState, props.onHoverOut]);\n return [{ onHoverIn: onHoverIn, onHoverOut: onHoverOut }, hoverState];\n}\n/**\n * focus specific state and callback helper\n */\nfunction useFocusHelper(props) {\n var _a = React.useState({ focused: false }), focusState = _a[0], setFocusState = _a[1];\n var onFocus = React.useCallback(function (e) {\n setFocusState({ focused: true });\n if (props.onFocus) {\n props.onFocus(e);\n }\n }, [setFocusState, props.onFocus]);\n var onBlur = React.useCallback(function (e) {\n setFocusState({ focused: false });\n if (props.onBlur) {\n props.onBlur(e);\n }\n }, [setFocusState, props.onBlur]);\n return [{ onFocus: onFocus, onBlur: onBlur }, focusState];\n}\n/**\n * press specific state and callback helper\n */\nfunction usePressHelper(props) {\n var _a = React.useState({ pressed: false }), pressState = _a[0], setPressState = _a[1];\n var onPressIn = React.useCallback(function (e) {\n setPressState({ pressed: true });\n if (props.onPressIn) {\n props.onPressIn(e);\n }\n }, [setPressState, props.onPressIn]);\n var onPressOut = React.useCallback(function (e) {\n setPressState({ pressed: false });\n if (props.onPressOut) {\n props.onPressOut(e);\n }\n }, [setPressState, props.onPressOut]);\n return [{ onPressIn: onPressIn, onPressOut: onPressOut }, pressState];\n}\n/**\n * A more focused version of useAsPressable, if only one state is needed. Note that if two or more states are needed then useAsPressable is better\n * as each of these calls will create a new instance of the Pressability class.\n * @param props - input props for the component\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function useFocusState(props) {\n var _a = useFocusHelper(props), focusProps = _a[0], focusState = _a[1];\n return [__assign(__assign({}, props), usePressability(__assign(__assign({}, props), focusProps))), focusState];\n}\n/**\n * A more focused version of useAsPressable, if only one state is needed. Note that if two or more states are needed then useAsPressable is better\n * as each of these calls will create a new instance of the Pressability class.\n * @param props - input props for the component\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function usePressState(props) {\n var _a = usePressHelper(props), pressProps = _a[0], pressState = _a[1];\n return [__assign(__assign({}, props), usePressability(__assign(__assign({}, props), pressProps))), pressState];\n}\n/**\n * A more focused version of useAsPressable, if only one state is needed. Note that if two or more states are needed then useAsPressable is better\n * as each of these calls will create a new instance of the Pressability class.\n * @param props - input props for the component\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function useHoverState(props) {\n var _a = useHoverHelper(props), hoverProps = _a[0], hoverState = _a[1];\n return [__assign(__assign({}, props), usePressability(__assign(__assign({}, props), hoverProps))), hoverState];\n}\n/**\n * useAsPressable wraps the usePressability hook that will be available in RN 0.63 and beyond. Once this library is on a recent enough\n * version of react-native this implementation can switch to using the official version.\n *\n * The useAsPressable hook adds a simple state change function for listening to hover, press, and focus events on the base pressability implementation\n * @param props - input props for the component, mixed in with pressable and pressability options\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function useAsPressable(props) {\n var _a = useHoverHelper(props), hoverProps = _a[0], hoverState = _a[1];\n var _b = useFocusHelper(props), focusProps = _b[0], focusState = _b[1];\n var _c = usePressHelper(props), pressProps = _c[0], pressState = _c[1];\n var pressabilityProps = usePressability(__assign(__assign(__assign(__assign({}, props), hoverProps), focusProps), pressProps));\n return {\n props: __assign(__assign({}, props), pressabilityProps),\n state: __assign(__assign(__assign({}, hoverState), focusState), pressState),\n };\n}\n//# sourceMappingURL=useAsPressable.js.map","/**\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @flow strict-local\n * @format\n */\n'use strict';\nimport { useEffect, useRef } from 'react';\nimport { Pressability } from './Pressability/Pressability';\nexport function usePressability(config) {\n var pressabilityRef = useRef(null);\n if (pressabilityRef.current == null) {\n pressabilityRef.current = new Pressability(config);\n }\n var pressability = pressabilityRef.current;\n // On the initial mount, this is a no-op. On updates, `pressability` will be\n // re-configured to use the new configuration.\n useEffect(function () {\n pressability.configure(config);\n }, [config, pressability]);\n // On unmount, reset pending state and timers inside `pressability`. This is\n // a separate effect because we do not want to reset when `config` changes.\n useEffect(function () {\n return function () {\n pressability.reset();\n };\n }, [pressability]);\n return pressability.getEventHandlers();\n}\n//# sourceMappingURL=usePressability.js.map","/**\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @flow strict-local\n * @format\n */\n'use strict';\nimport { __assign } from \"tslib\";\nimport { Platform, UIManager } from 'react-native';\nimport invariant from 'invariant';\nimport { isHoverEnabled } from './HoverState';\nimport { normalizeRect } from './InternalTypes';\nvar Transitions = {\n NOT_RESPONDER: {\n DELAY: 'ERROR',\n RESPONDER_GRANT: 'RESPONDER_INACTIVE_PRESS_IN',\n RESPONDER_RELEASE: 'ERROR',\n RESPONDER_TERMINATED: 'ERROR',\n ENTER_PRESS_RECT: 'ERROR',\n LEAVE_PRESS_RECT: 'ERROR',\n LONG_PRESS_DETECTED: 'ERROR',\n },\n RESPONDER_INACTIVE_PRESS_IN: {\n DELAY: 'RESPONDER_ACTIVE_PRESS_IN',\n RESPONDER_GRANT: 'ERROR',\n RESPONDER_RELEASE: 'NOT_RESPONDER',\n RESPONDER_TERMINATED: 'NOT_RESPONDER',\n ENTER_PRESS_RECT: 'RESPONDER_INACTIVE_PRESS_IN',\n LEAVE_PRESS_RECT: 'RESPONDER_INACTIVE_PRESS_OUT',\n LONG_PRESS_DETECTED: 'ERROR',\n },\n RESPONDER_INACTIVE_PRESS_OUT: {\n DELAY: 'RESPONDER_ACTIVE_PRESS_OUT',\n RESPONDER_GRANT: 'ERROR',\n RESPONDER_RELEASE: 'NOT_RESPONDER',\n RESPONDER_TERMINATED: 'NOT_RESPONDER',\n ENTER_PRESS_RECT: 'RESPONDER_INACTIVE_PRESS_IN',\n LEAVE_PRESS_RECT: 'RESPONDER_INACTIVE_PRESS_OUT',\n LONG_PRESS_DETECTED: 'ERROR',\n },\n RESPONDER_ACTIVE_PRESS_IN: {\n DELAY: 'ERROR',\n RESPONDER_GRANT: 'ERROR',\n RESPONDER_RELEASE: 'NOT_RESPONDER',\n RESPONDER_TERMINATED: 'NOT_RESPONDER',\n ENTER_PRESS_RECT: 'RESPONDER_ACTIVE_PRESS_IN',\n LEAVE_PRESS_RECT: 'RESPONDER_ACTIVE_PRESS_OUT',\n LONG_PRESS_DETECTED: 'RESPONDER_ACTIVE_LONG_PRESS_IN',\n },\n RESPONDER_ACTIVE_PRESS_OUT: {\n DELAY: 'ERROR',\n RESPONDER_GRANT: 'ERROR',\n RESPONDER_RELEASE: 'NOT_RESPONDER',\n RESPONDER_TERMINATED: 'NOT_RESPONDER',\n ENTER_PRESS_RECT: 'RESPONDER_ACTIVE_PRESS_IN',\n LEAVE_PRESS_RECT: 'RESPONDER_ACTIVE_PRESS_OUT',\n LONG_PRESS_DETECTED: 'ERROR',\n },\n RESPONDER_ACTIVE_LONG_PRESS_IN: {\n DELAY: 'ERROR',\n RESPONDER_GRANT: 'ERROR',\n RESPONDER_RELEASE: 'NOT_RESPONDER',\n RESPONDER_TERMINATED: 'NOT_RESPONDER',\n ENTER_PRESS_RECT: 'RESPONDER_ACTIVE_LONG_PRESS_IN',\n LEAVE_PRESS_RECT: 'RESPONDER_ACTIVE_LONG_PRESS_OUT',\n LONG_PRESS_DETECTED: 'RESPONDER_ACTIVE_LONG_PRESS_IN',\n },\n RESPONDER_ACTIVE_LONG_PRESS_OUT: {\n DELAY: 'ERROR',\n RESPONDER_GRANT: 'ERROR',\n RESPONDER_RELEASE: 'NOT_RESPONDER',\n RESPONDER_TERMINATED: 'NOT_RESPONDER',\n ENTER_PRESS_RECT: 'RESPONDER_ACTIVE_LONG_PRESS_IN',\n LEAVE_PRESS_RECT: 'RESPONDER_ACTIVE_LONG_PRESS_OUT',\n LONG_PRESS_DETECTED: 'ERROR',\n },\n ERROR: {\n DELAY: 'NOT_RESPONDER',\n RESPONDER_GRANT: 'RESPONDER_INACTIVE_PRESS_IN',\n RESPONDER_RELEASE: 'NOT_RESPONDER',\n RESPONDER_TERMINATED: 'NOT_RESPONDER',\n ENTER_PRESS_RECT: 'NOT_RESPONDER',\n LEAVE_PRESS_RECT: 'NOT_RESPONDER',\n LONG_PRESS_DETECTED: 'NOT_RESPONDER',\n },\n};\nvar isActiveSignal = function (signal) { return signal === 'RESPONDER_ACTIVE_PRESS_IN' || signal === 'RESPONDER_ACTIVE_LONG_PRESS_IN'; };\nvar isActivationSignal = function (signal) { return signal === 'RESPONDER_ACTIVE_PRESS_OUT' || signal === 'RESPONDER_ACTIVE_PRESS_IN'; };\nvar isPressInSignal = function (signal) {\n return signal === 'RESPONDER_INACTIVE_PRESS_IN' || signal === 'RESPONDER_ACTIVE_PRESS_IN' || signal === 'RESPONDER_ACTIVE_LONG_PRESS_IN';\n};\nvar isTerminalSignal = function (signal) { return signal === 'RESPONDER_TERMINATED' || signal === 'RESPONDER_RELEASE'; };\nvar DEFAULT_LONG_PRESS_DELAY_MS = 370; // 500 - 130\nvar DEFAULT_PRESS_DELAY_MS = 130;\nvar DEFAULT_PRESS_RECT_OFFSETS = {\n bottom: 30,\n left: 20,\n right: 20,\n top: 20,\n};\nfunction normalizeDelay(delay, min, fallback) {\n if (min === void 0) { min = 0; }\n if (fallback === void 0) { fallback = 0; }\n return Math.max(min, delay !== null && delay !== void 0 ? delay : fallback);\n}\nvar getTouchFromPressEvent = function (event) {\n var _a = event.nativeEvent, changedTouches = _a.changedTouches, touches = _a.touches;\n if (touches != null && touches.length > 0) {\n return touches[0];\n }\n if (changedTouches != null && changedTouches.length > 0) {\n return changedTouches[0];\n }\n return event.nativeEvent;\n};\n/**\n * Pressability implements press handling capabilities.\n *\n * =========================== Pressability Tutorial ===========================\n *\n * The `Pressability` class helps you create press interactions by analyzing the\n * geometry of elements and observing when another responder (e.g. ScrollView)\n * has stolen the touch lock. It offers hooks for your component to provide\n * interaction feedback to the user:\n *\n * - When a press has activated (e.g. highlight an element)\n * - When a press has deactivated (e.g. un-highlight an element)\n * - When a press sould trigger an action, meaning it activated and deactivated\n * while within the geometry of the element without the lock being stolen.\n *\n * A high quality interaction isn't as simple as you might think. There should\n * be a slight delay before activation. Moving your finger beyond an element's\n * bounds should trigger deactivation, but moving the same finger back within an\n * element's bounds should trigger reactivation.\n *\n * In order to use `Pressability`, do the following:\n *\n * 1. Instantiate `Pressability` and store it on your component's state.\n *\n * state = {\n * pressability: new Pressability({\n * // ...\n * }),\n * };\n *\n * 2. Choose the rendered component who should collect the press events. On that\n * element, spread `pressability.getEventHandlers()` into its props.\n *\n * return (\n * \n * );\n *\n * 3. Reset `Pressability` when your component unmounts.\n *\n * componentWillUnmount() {\n * this.state.pressability.reset();\n * }\n *\n * ==================== Pressability Implementation Details ====================\n *\n * `Pressability` only assumes that there exists a `HitRect` node. The `PressRect`\n * is an abstract box that is extended beyond the `HitRect`.\n *\n * # Geometry\n *\n * ┌────────────────────────┐\n * │ ┌──────────────────┐ │ - Presses start anywhere within `HitRect`, which\n * │ │ ┌────────────┐ │ │ is expanded via the prop `hitSlop`.\n * │ │ │ VisualRect │ │ │\n * │ │ └────────────┘ │ │ - When pressed down for sufficient amount of time\n * │ │ HitRect │ │ before letting up, `VisualRect` activates for\n * │ └──────────────────┘ │ as long as the press stays within `PressRect`.\n * │ PressRect o │\n * └────────────────────│───┘\n * Out Region └────── `PressRect`, which is expanded via the prop\n * `pressRectOffset`, allows presses to move\n * beyond `HitRect` while maintaining activation\n * and being eligible for a \"press\".\n *\n * # State Machine\n *\n * ┌───────────────┐ ◀──── RESPONDER_RELEASE\n * │ NOT_RESPONDER │\n * └───┬───────────┘ ◀──── RESPONDER_TERMINATED\n * │\n * │ RESPONDER_GRANT (HitRect)\n * │\n * ▼\n * ┌─────────────────────┐ ┌───────────────────┐ ┌───────────────────┐\n * │ RESPONDER_INACTIVE_ │ DELAY │ RESPONDER_ACTIVE_ │ T + DELAY │ RESPONDER_ACTIVE_ │\n * │ PRESS_IN ├────────▶ │ PRESS_IN ├────────────▶ │ LONG_PRESS_IN │\n * └─┬───────────────────┘ └─┬─────────────────┘ └─┬─────────────────┘\n * │ ▲ │ ▲ │ ▲\n * │LEAVE_ │ │LEAVE_ │ │LEAVE_ │\n * │PRESS_RECT │ENTER_ │PRESS_RECT │ENTER_ │PRESS_RECT │ENTER_\n * │ │PRESS_RECT │ │PRESS_RECT │ │PRESS_RECT\n * ▼ │ ▼ │ ▼ │\n * ┌─────────────┴───────┐ ┌─────────────┴─────┐ ┌─────────────┴─────┐\n * │ RESPONDER_INACTIVE_ │ DELAY │ RESPONDER_ACTIVE_ │ │ RESPONDER_ACTIVE_ │\n * │ PRESS_OUT ├────────▶ │ PRESS_OUT │ │ LONG_PRESS_OUT │\n * └─────────────────────┘ └───────────────────┘ └───────────────────┘\n *\n * T + DELAY => LONG_PRESS_DELAY + DELAY\n *\n * Not drawn are the side effects of each transition. The most important side\n * effect is the invocation of `onPress` and `onLongPress` that occur when a\n * responder is release while in the \"press in\" states.\n */\nvar Pressability = /** @class */ (function () {\n function Pressability(config) {\n var _this = this;\n this._eventHandlers = null;\n this._hoverInDelayTimeout = null;\n this._hoverOutDelayTimeout = null;\n this._isHovered = false;\n this._longPressDelayTimeout = null;\n this._pressDelayTimeout = null;\n this._pressOutDelayTimeout = null;\n this._responderID = null;\n this._responderRegion = null;\n this._touchState = 'NOT_RESPONDER';\n this._measureCallback = function (left, top, width, height, pageX, pageY) {\n if (!left && !top && !width && !height && !pageX && !pageY) {\n return;\n }\n _this._responderRegion = {\n bottom: pageY + height,\n left: pageX,\n right: pageX + width,\n top: pageY,\n };\n };\n this.configure(config);\n }\n Pressability.prototype.configure = function (config) {\n this._config = config;\n };\n /**\n * Resets any pending timers. This should be called on unmount.\n */\n Pressability.prototype.reset = function () {\n this._cancelHoverInDelayTimeout();\n this._cancelHoverOutDelayTimeout();\n this._cancelLongPressDelayTimeout();\n this._cancelPressDelayTimeout();\n this._cancelPressOutDelayTimeout();\n };\n /**\n * Returns a set of props to spread into the interactive element.\n */\n Pressability.prototype.getEventHandlers = function () {\n if (this._eventHandlers == null) {\n this._eventHandlers = this._createEventHandlers();\n }\n return this._eventHandlers;\n };\n Pressability.prototype._createEventHandlers = function () {\n var _this = this;\n var focusEventHandlers = {\n onBlur: function (event) {\n var onBlur = _this._config.onBlur;\n if (onBlur != null) {\n onBlur(event);\n }\n },\n onFocus: function (event) {\n var onFocus = _this._config.onFocus;\n if (onFocus != null) {\n onFocus(event);\n }\n },\n };\n var responderEventHandlers = {\n onStartShouldSetResponder: function () {\n var disabled = _this._config.disabled;\n if (disabled == null) {\n return true;\n }\n return !disabled;\n },\n onResponderGrant: function (event) {\n event.persist();\n _this._cancelPressOutDelayTimeout();\n _this._responderID = event.currentTarget;\n _this._touchState = 'NOT_RESPONDER';\n _this._receiveSignal('RESPONDER_GRANT', event);\n var delayPressIn = normalizeDelay(_this._config.delayPressIn, 0, DEFAULT_PRESS_DELAY_MS);\n if (delayPressIn > 0) {\n _this._pressDelayTimeout = setTimeout(function () {\n _this._receiveSignal('DELAY', event);\n }, delayPressIn);\n }\n else {\n _this._receiveSignal('DELAY', event);\n }\n var delayLongPress = normalizeDelay(_this._config.delayLongPress, 10, DEFAULT_LONG_PRESS_DELAY_MS);\n _this._longPressDelayTimeout = setTimeout(function () {\n _this._handleLongPress(event);\n }, delayLongPress + delayPressIn);\n },\n onResponderMove: function (event) {\n if (_this._config.onPressMove != null) {\n _this._config.onPressMove(event);\n }\n // Region may not have finished being measured, yet.\n var responderRegion = _this._responderRegion;\n if (responderRegion == null) {\n return;\n }\n var touch = getTouchFromPressEvent(event);\n if (touch == null) {\n _this._cancelLongPressDelayTimeout();\n _this._receiveSignal('LEAVE_PRESS_RECT', event);\n return;\n }\n if (_this._touchActivatePosition != null) {\n var deltaX = _this._touchActivatePosition.pageX - touch.pageX;\n var deltaY = _this._touchActivatePosition.pageY - touch.pageY;\n if (Math.hypot(deltaX, deltaY) > 10) {\n _this._cancelLongPressDelayTimeout();\n }\n }\n if (_this._isTouchWithinResponderRegion(touch, responderRegion)) {\n _this._receiveSignal('ENTER_PRESS_RECT', event);\n }\n else {\n _this._cancelLongPressDelayTimeout();\n _this._receiveSignal('LEAVE_PRESS_RECT', event);\n }\n },\n onResponderRelease: function (event) {\n _this._receiveSignal('RESPONDER_RELEASE', event);\n },\n onResponderTerminate: function (event) {\n _this._receiveSignal('RESPONDER_TERMINATED', event);\n },\n onResponderTerminationRequest: function () {\n var cancelable = _this._config.cancelable;\n return cancelable || true;\n },\n onClick: function (event) {\n var onPress = _this._config.onPress;\n if (onPress != null) {\n onPress(event);\n }\n },\n };\n var mouseEventHandlers = Platform.OS === 'ios' || Platform.OS === 'android'\n ? null\n : {\n onMouseEnter: function (event) {\n if (isHoverEnabled()) {\n _this._isHovered = true;\n _this._cancelHoverOutDelayTimeout();\n var onHoverIn_1 = _this._config.onHoverIn;\n if (onHoverIn_1 != null) {\n var delayHoverIn = normalizeDelay(_this._config.delayHoverIn);\n if (delayHoverIn > 0) {\n _this._hoverInDelayTimeout = setTimeout(function () {\n onHoverIn_1(event);\n }, delayHoverIn);\n }\n else {\n onHoverIn_1(event);\n }\n }\n }\n },\n onMouseLeave: function (event) {\n if (_this._isHovered) {\n _this._isHovered = false;\n _this._cancelHoverInDelayTimeout();\n var onHoverOut_1 = _this._config.onHoverOut;\n if (onHoverOut_1 != null) {\n var delayHoverOut = normalizeDelay(_this._config.delayHoverOut);\n if (delayHoverOut > 0) {\n _this._hoverInDelayTimeout = setTimeout(function () {\n onHoverOut_1(event);\n }, delayHoverOut);\n }\n else {\n onHoverOut_1(event);\n }\n }\n }\n },\n };\n return __assign(__assign(__assign({}, focusEventHandlers), responderEventHandlers), mouseEventHandlers);\n };\n /**\n * Receives a state machine signal, performs side effects of the transition\n * and stores the new state. Validates the transition as well.\n */\n Pressability.prototype._receiveSignal = function (signal, event) {\n var prevState = this._touchState;\n var nextState = Transitions[prevState][signal];\n if (this._responderID == null && signal === 'RESPONDER_RELEASE') {\n return;\n }\n invariant(nextState != null && nextState !== 'ERROR', 'Pressability: Invalid signal `%s` for state `%s` on responder: %s', signal, prevState, typeof this._responderID === 'number' ? this._responderID : '<>');\n if (prevState !== nextState) {\n this._performTransitionSideEffects(prevState, nextState, signal, event);\n this._touchState = nextState;\n }\n };\n /**\n * Performs a transition between touchable states and identify any activations\n * or deactivations (and callback invocations).\n */\n Pressability.prototype._performTransitionSideEffects = function (prevState, nextState, signal, event) {\n if (isTerminalSignal(signal)) {\n this._touchActivatePosition = null;\n this._cancelLongPressDelayTimeout();\n }\n var isInitialTransition = prevState === 'NOT_RESPONDER' && nextState === 'RESPONDER_INACTIVE_PRESS_IN';\n var isActivationTransiton = !isActivationSignal(prevState) && isActivationSignal(nextState);\n if (isInitialTransition || isActivationTransiton) {\n this._measureResponderRegion();\n }\n if (isPressInSignal(prevState) && signal === 'LONG_PRESS_DETECTED') {\n var onLongPress = this._config.onLongPress;\n if (onLongPress != null) {\n onLongPress(event);\n }\n }\n var isPrevActive = isActiveSignal(prevState);\n var isNextActive = isActiveSignal(nextState);\n if (!isPrevActive && isNextActive) {\n this._activate(event);\n }\n else if (isPrevActive && !isNextActive) {\n this._deactivate(event);\n }\n if (isPressInSignal(prevState) && signal === 'RESPONDER_RELEASE') {\n var _a = this._config, onLongPress = _a.onLongPress, onPress = _a.onPress /*, android_disableSound */;\n if (onPress != null) {\n var isPressCanceledByLongPress = onLongPress != null && prevState === 'RESPONDER_ACTIVE_LONG_PRESS_IN' && this._shouldLongPressCancelPress();\n if (!isPressCanceledByLongPress) {\n // If we never activated (due to delays), activate and deactivate now.\n if (!isNextActive && !isPrevActive) {\n this._activate(event);\n this._deactivate(event);\n }\n /*\n if (Platform.OS === 'android' && android_disableSound !== true) {\n SoundManager.playTouchSound();\n }\n */\n onPress(event);\n }\n }\n }\n this._cancelPressDelayTimeout();\n };\n Pressability.prototype._activate = function (event) {\n var onPressIn = this._config.onPressIn;\n var touch = getTouchFromPressEvent(event);\n this._touchActivatePosition = {\n pageX: touch.pageX,\n pageY: touch.pageY,\n };\n if (onPressIn != null) {\n onPressIn(event);\n }\n };\n Pressability.prototype._deactivate = function (event) {\n var onPressOut = this._config.onPressOut;\n if (onPressOut != null) {\n var delayPressOut = normalizeDelay(this._config.delayPressOut);\n if (delayPressOut > 0) {\n this._pressOutDelayTimeout = setTimeout(function () {\n onPressOut(event);\n }, delayPressOut);\n }\n else {\n onPressOut(event);\n }\n }\n };\n Pressability.prototype._measureResponderRegion = function () {\n var _a, _b;\n if (this._responderID == null) {\n return;\n }\n if (typeof this._responderID === 'number') {\n UIManager.measure(this._responderID, this._measureCallback);\n }\n else {\n var measure = (_a = this === null || this === void 0 ? void 0 : this._responderID) === null || _a === void 0 ? void 0 : _a.measure;\n if (typeof measure === 'function' && this._measureCallback) {\n (_b = this === null || this === void 0 ? void 0 : this._responderID) === null || _b === void 0 ? void 0 : _b.measure(this._measureCallback);\n }\n }\n };\n Pressability.prototype._isTouchWithinResponderRegion = function (touch /* PropertyType */, responderRegion) {\n var _a, _b, _c, _d;\n var hitSlop = normalizeRect(this._config.hitSlop);\n var pressRectOffset = normalizeRect(this._config.pressRectOffset);\n var regionBottom = responderRegion.bottom;\n var regionLeft = responderRegion.left;\n var regionRight = responderRegion.right;\n var regionTop = responderRegion.top;\n if (hitSlop != null) {\n if (hitSlop.bottom != null) {\n regionBottom += hitSlop.bottom;\n }\n if (hitSlop.left != null) {\n regionLeft -= hitSlop.left;\n }\n if (hitSlop.right != null) {\n regionRight += hitSlop.right;\n }\n if (hitSlop.top != null) {\n regionTop -= hitSlop.top;\n }\n }\n regionBottom += (_a = pressRectOffset === null || pressRectOffset === void 0 ? void 0 : pressRectOffset.bottom) !== null && _a !== void 0 ? _a : DEFAULT_PRESS_RECT_OFFSETS.bottom;\n regionLeft -= (_b = pressRectOffset === null || pressRectOffset === void 0 ? void 0 : pressRectOffset.left) !== null && _b !== void 0 ? _b : DEFAULT_PRESS_RECT_OFFSETS.left;\n regionRight += (_c = pressRectOffset === null || pressRectOffset === void 0 ? void 0 : pressRectOffset.right) !== null && _c !== void 0 ? _c : DEFAULT_PRESS_RECT_OFFSETS.right;\n regionTop -= (_d = pressRectOffset === null || pressRectOffset === void 0 ? void 0 : pressRectOffset.top) !== null && _d !== void 0 ? _d : DEFAULT_PRESS_RECT_OFFSETS.top;\n return touch.pageX > regionLeft && touch.pageX < regionRight && touch.pageY > regionTop && touch.pageY < regionBottom;\n };\n Pressability.prototype._handleLongPress = function (event) {\n if (this._touchState === 'RESPONDER_ACTIVE_PRESS_IN' || this._touchState === 'RESPONDER_ACTIVE_LONG_PRESS_IN') {\n this._receiveSignal('LONG_PRESS_DETECTED', event);\n }\n };\n Pressability.prototype._shouldLongPressCancelPress = function () {\n return true;\n };\n Pressability.prototype._cancelHoverInDelayTimeout = function () {\n if (this._hoverInDelayTimeout != null) {\n clearTimeout(this._hoverInDelayTimeout);\n this._hoverInDelayTimeout = null;\n }\n };\n Pressability.prototype._cancelHoverOutDelayTimeout = function () {\n if (this._hoverOutDelayTimeout != null) {\n clearTimeout(this._hoverOutDelayTimeout);\n this._hoverOutDelayTimeout = null;\n }\n };\n Pressability.prototype._cancelLongPressDelayTimeout = function () {\n if (this._longPressDelayTimeout != null) {\n clearTimeout(this._longPressDelayTimeout);\n this._longPressDelayTimeout = null;\n }\n };\n Pressability.prototype._cancelPressDelayTimeout = function () {\n if (this._pressDelayTimeout != null) {\n clearTimeout(this._pressDelayTimeout);\n this._pressDelayTimeout = null;\n }\n };\n Pressability.prototype._cancelPressOutDelayTimeout = function () {\n if (this._pressOutDelayTimeout != null) {\n clearTimeout(this._pressOutDelayTimeout);\n this._pressOutDelayTimeout = null;\n }\n };\n return Pressability;\n}());\nexport { Pressability };\n//# sourceMappingURL=Pressability.js.map","/**\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @flow strict-local\n * @format\n */\n'use strict';\nimport { Platform } from 'react-native';\nvar isEnabled = false;\nif (Platform.OS === 'web') {\n var canUseDOM = Boolean(typeof window !== 'undefined' && window.document && window.document.createElement);\n if (canUseDOM) {\n /**\n * Web browsers emulate mouse events (and hover states) after touch events.\n * This code infers when the currently-in-use modality supports hover\n * (including for multi-modality devices) and considers \"hover\" to be enabled\n * if a mouse movement occurs more than 1 second after the last touch event.\n * This threshold is long enough to account for longer delays between the\n * browser firing touch and mouse events on low-powered devices.\n */\n var HOVER_THRESHOLD_MS_1 = 1000;\n var lastTouchTimestamp_1 = 0;\n var enableHover = function () {\n if (isEnabled || Date.now() - lastTouchTimestamp_1 < HOVER_THRESHOLD_MS_1) {\n return;\n }\n isEnabled = true;\n };\n var disableHover = function () {\n lastTouchTimestamp_1 = Date.now();\n if (isEnabled) {\n isEnabled = false;\n }\n };\n document.addEventListener('touchstart', disableHover, true);\n document.addEventListener('touchmove', disableHover, true);\n document.addEventListener('mousemove', enableHover, true);\n }\n}\nelse if (Platform.OS === 'windows' || Platform.OS === 'win32' || Platform.OS === 'macos') {\n isEnabled = true;\n}\nexport function isHoverEnabled() {\n return isEnabled;\n}\n//# sourceMappingURL=HoverState.js.map","/**\n * A collection of internal types from react-native that are not currently exposed in TypeScript\n */\nexport function normalizeRect(size) {\n return typeof size === 'number' ? { bottom: size, left: size, right: size, top: size } : size;\n}\n//# sourceMappingURL=InternalTypes.js.map","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\n/**\n * hover specific state and callback helper\n */\nexport function useHoverHelper(props) {\n var _a = React.useState({ hovered: false }), hoverState = _a[0], setHoverState = _a[1];\n var onHoverIn = props.onHoverIn, onHoverOut = props.onHoverOut;\n var _onHoverIn = React.useCallback(function (e) {\n setHoverState({ hovered: true });\n onHoverIn === null || onHoverIn === void 0 ? void 0 : onHoverIn(e);\n }, [setHoverState, onHoverIn]);\n var _onHoverOut = React.useCallback(function (e) {\n setHoverState({ hovered: false });\n onHoverOut === null || onHoverOut === void 0 ? void 0 : onHoverOut(e);\n }, [setHoverState, onHoverOut]);\n return [{ onHoverIn: _onHoverIn, onHoverOut: _onHoverOut }, hoverState];\n}\n/**\n * focus specific state and callback helper\n */\nexport function useFocusHelper(props) {\n var _a = React.useState({ focused: false }), focusState = _a[0], setFocusState = _a[1];\n var onFocus = props.onFocus, onBlur = props.onBlur;\n var _onFocus = React.useCallback(function (e) {\n setFocusState({ focused: true });\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(e);\n }, [setFocusState, onFocus]);\n var _onBlur = React.useCallback(function (e) {\n setFocusState({ focused: false });\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n }, [setFocusState, onBlur]);\n return [{ onFocus: _onFocus, onBlur: _onBlur }, focusState];\n}\n/**\n * press specific state and callback helper\n */\nexport function usePressHelper(props) {\n var _a = React.useState({ pressed: false }), pressState = _a[0], setPressState = _a[1];\n var onPressIn = props.onPressIn, onPressOut = props.onPressOut;\n var _onPressIn = React.useCallback(function (e) {\n setPressState({ pressed: true });\n onPressIn === null || onPressIn === void 0 ? void 0 : onPressIn(e);\n }, [setPressState, onPressIn]);\n var _onPressOut = React.useCallback(function (e) {\n setPressState({ pressed: false });\n onPressOut === null || onPressOut === void 0 ? void 0 : onPressOut(e);\n }, [setPressState, onPressOut]);\n return [{ onPressIn: _onPressIn, onPressOut: _onPressOut }, pressState];\n}\n/**\n * This routine hooks the props to pass to a Pressable component to obtain the current state of the Pressable as well as generating\n * state change updates when those props change. This allows a parent component to control the render of the whole component rather than having\n * to split the code between a child function or style function.\n *\n * @param props - props to pass to a Pressable component\n * @returns - modified props to pass into the Pressable as well as the current state with regards to hover, focus, and press\n */\nexport function usePressableState(props) {\n var onPressIn = props.onPressIn, onPressOut = props.onPressOut, onHoverIn = props.onHoverIn, onHoverOut = props.onHoverOut, onFocus = props.onFocus, onBlur = props.onBlur, rest = __rest(props, [\"onPressIn\", \"onPressOut\", \"onHoverIn\", \"onHoverOut\", \"onFocus\", \"onBlur\"]);\n var _a = useHoverHelper({ onHoverIn: onHoverIn, onHoverOut: onHoverOut }), hoverProps = _a[0], hoverState = _a[1];\n var _b = useFocusHelper({ onFocus: onFocus, onBlur: onBlur }), focusProps = _b[0], focusState = _b[1];\n var _c = usePressHelper({ onPressIn: onPressIn, onPressOut: onPressOut }), pressProps = _c[0], pressState = _c[1];\n return { props: __assign(__assign(__assign(__assign({}, hoverProps), focusProps), pressProps), rest), state: __assign(__assign(__assign({}, hoverState), focusState), pressState) };\n}\n//# sourceMappingURL=usePressableState.js.map","import * as React from 'react';\nimport { setAndForwardRef } from './setAndForwardRef';\n/**\n * We need the win32 version of this hook to work around an lack of a UIManager.focus implementation.\n * On other platforms this hook is unnecessary.\n * @param forwardRef - The componentRef from your component's props where you're exposing a imperative focus method.\n * @returns The inner View-type you're rendering that you want to dispatch to & focus on.\n */\nexport function useViewCommandFocus(forwardedRef) {\n /**\n * Set up the forwarding ref to enable adding the focus method.\n */\n var focusRef = React.useRef();\n var _setNativeRef = setAndForwardRef({\n getForwardedRef: function () { return forwardedRef; },\n setLocalRef: function (localRef) {\n focusRef.current = localRef;\n },\n });\n return _setNativeRef;\n}\n//# sourceMappingURL=useViewCommandFocus.js.map","/**\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @format\n * @flow\n */\n'use strict';\n/**\n * This is a helper function for when a component needs to be able to forward a ref\n * to a child component, but still needs to have access to that component as part of\n * its implementation.\n *\n * Its main use case is in wrappers for native components.\n *\n * Usage:\n *\n * class MyView extends React.Component {\n * _nativeRef = null;\n *\n * _setNativeRef = setAndForwardRef({\n * getForwardedRef: () => this.props.forwardedRef,\n * setLocalRef: ref => {\n * this._nativeRef = ref;\n * },\n * });\n *\n * render() {\n * return ;\n * }\n * }\n *\n * export const MyViewWithRef = React.forwardRef((props, ref) => (\n * \n * ));\n */\nexport function setAndForwardRef(_a) {\n var getForwardedRef = _a.getForwardedRef, setLocalRef = _a.setLocalRef;\n return function forwardRef(ref) {\n var forwardedRef = getForwardedRef();\n setLocalRef(ref);\n // Forward to user ref prop (if one has been specified)\n if (typeof forwardedRef === 'function') {\n // Handle function-based refs. String-based refs are handled as functions.\n forwardedRef(ref);\n }\n else if (typeof forwardedRef === 'object' && forwardedRef != null) {\n // Handle createRef-based refs\n forwardedRef.current = ref;\n }\n };\n}\n//# sourceMappingURL=setAndForwardRef.js.map","import * as React from 'react';\n// This hook updates the selected button and calls the client's onChange callback with the new button\nexport function useSelectedKey(defaultSelectedKey, userCallback) {\n var _a = React.useState(defaultSelectedKey), selectedKey = _a[0], setSelectedKey = _a[1];\n var onKeySelect = React.useCallback(function (key) {\n setSelectedKey(key);\n userCallback && userCallback(key);\n }, [setSelectedKey, userCallback]);\n return { onKeySelect: onKeySelect, selectedKey: selectedKey };\n}\n//# sourceMappingURL=useSelectedKey.hooks.js.map","import * as React from 'react';\n/* Re-usable hook for toggle components.\n * This hook configures the checked state, the callback to toggle the component\n * It handles the controlled/uncontrolled functionality of the toggle component.\n *\n * PROPS: defaultChecked - Default checked state. Mutually exclusive to ‘checked’. This should come from userProps\n * checked - Checked state. Mutually exclusive to 'defaultChecked'. This should come from userProps\n * userCallback() - Callback provided by userProps when the checked (toggle) state changes\n * RETURNS:\n * onChange() - Callback to toggle the component\n * state.isChecked - Whether or not component is currently checked or selected\n */\nexport function useAsToggle(defaultChecked, checked, userCallback) {\n var _a = React.useState(defaultChecked !== null && defaultChecked !== void 0 ? defaultChecked : checked), isChecked = _a[0], setChecked = _a[1];\n var onChange = React.useCallback(function () {\n userCallback && userCallback(!isChecked);\n setChecked(!isChecked);\n }, [isChecked, setChecked]);\n return [checked !== null && checked !== void 0 ? checked : isChecked, onChange];\n}\n//# sourceMappingURL=useAsToggle.js.map","import * as React from 'react';\nimport { useControllableValue } from './useControllableValue';\n/* Re-usable hook for toggle components.\n * This hook configures the checked state, the callback to toggle the component\n * It handles the controlled/uncontrolled functionality of the toggle component.\n *\n * PROPS: defaultChecked - Default checked state. Mutually exclusive to ‘checked’. This should come from userProps\n * checked - Checked state. Mutually exclusive to 'defaultChecked'. This should come from userProps\n * userCallback() - Callback provided by userProps when the checked (toggle) state changes\n * RETURNS:\n * onChange() - Callback to toggle the component\n * state.isChecked - Whether or not component is currently checked or selected\n */\nexport function useAsToggleWithEvent(defaultChecked, checked, userCallback) {\n var _a = useControllableValue(checked, defaultChecked), isChecked = _a[0], setChecked = _a[1];\n var onChange = React.useCallback(function (e) {\n userCallback && userCallback(e, !isChecked);\n setChecked(!isChecked);\n }, [isChecked, setChecked, userCallback]);\n return [isChecked, onChange];\n}\n//# sourceMappingURL=useAsToggleWithEvent.js.map","import * as React from 'react';\nimport { useConst } from './useConst';\nexport function useControllableValue(controlledValue, defaultUncontrolledValue, onChange) {\n var _a = React.useState(defaultUncontrolledValue), value = _a[0], setValue = _a[1];\n var isControlled = useConst(controlledValue !== undefined);\n var currentValue = isControlled ? controlledValue : value;\n // Duplicate the current value and onChange in refs so they're accessible from\n // setValueOrCallOnChange without creating a new callback every time\n var valueRef = React.useRef(currentValue);\n var onChangeRef = React.useRef(onChange);\n React.useEffect(function () {\n valueRef.current = currentValue;\n onChangeRef.current = onChange;\n });\n // To match the behavior of the setter returned by React.useState, this callback's identity\n // should never change. This means it MUST NOT directly reference variables that can change.\n var setValueOrCallOnChange = useConst(function () { return function (update, ev) {\n // Assuming here that TValue is not a function, because a controllable value will typically\n // be something a user can enter as input\n // eslint-disable-next-line @typescript-eslint/ban-types\n var newValue = typeof update === 'function' ? update(valueRef.current) : update;\n if (onChangeRef.current) {\n onChangeRef.current(ev, newValue);\n }\n if (!isControlled) {\n setValue(newValue);\n }\n }; });\n return [currentValue, setValueOrCallOnChange];\n}\n//# sourceMappingURL=useControllableValue.js.map","import * as React from 'react';\n/**\n * Hook to initialize and return a constant value. Unlike `React.useMemo`, this is guaranteed to\n * always return the same value (and if the initializer is a function, only call it once).\n * This is similar to setting a private member in a class constructor.\n *\n * If the value should ever change based on dependencies, use `React.useMemo` instead.\n *\n * @param initialValue - Initial value, or function to get the initial value. Similar to `useState`,\n * only the value/function passed in the first time this is called is respected.\n * @returns The value. The identity of this value will always be the same.\n */\nexport function useConst(initialValue) {\n // Use useRef to store the value because it's the least expensive built-in hook that works here\n // (we could also use `const [value] = React.useState(initialValue)` but that's more expensive\n // internally due to reducer handling which we don't need)\n var ref = React.useRef();\n if (ref.current === undefined) {\n // Box the value in an object so we can tell if it's initialized even if the initializer\n // returns/is undefined\n ref.current = {\n // eslint-disable-next-line @typescript-eslint/ban-types\n value: typeof initialValue === 'function' ? initialValue() : initialValue,\n };\n }\n return ref.current.value;\n}\n//# sourceMappingURL=useConst.js.map","import { __spreadArray } from \"tslib\";\nimport * as React from 'react';\nimport { Platform } from 'react-native';\nimport { memoize } from '@fluentui-react-native/memo-cache';\nvar shouldAllowShiftCtrlKeys = Platform.OS === 'win32';\n/**\n * Verifies if nativeEvent contains modifier key. The modifier keys that should\n * be taken into account differ based on platform\n * @param nativeEvent\n * @returns `true` if one or more of modifier keys are `true`\n */\nvar isModifierKey = function (nativeEvent) {\n if (shouldAllowShiftCtrlKeys) {\n return nativeEvent && (nativeEvent.alt || nativeEvent.altKey || nativeEvent.meta || nativeEvent.metaKey);\n }\n else {\n return (nativeEvent &&\n (nativeEvent.alt ||\n nativeEvent.altKey ||\n nativeEvent.ctrl ||\n nativeEvent.ctrlKey ||\n nativeEvent.meta ||\n nativeEvent.metaKey ||\n nativeEvent.shift ||\n nativeEvent.shiftKey));\n }\n};\nfunction keyPressCallback(userCallback) {\n var keys = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n keys[_i - 1] = arguments[_i];\n }\n var onKeyEvent = function (e) {\n if (userCallback !== undefined && !isModifierKey(e.nativeEvent) && (keys === undefined || keys.includes(e.nativeEvent.key))) {\n userCallback(e);\n e.stopPropagation();\n }\n };\n return onKeyEvent;\n}\nfunction getKeyUpPropsWorker(userCallback) {\n var keys = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n keys[_i - 1] = arguments[_i];\n }\n var keyboardProps = Platform.select({\n ios: undefined,\n android: undefined,\n macos: {\n onKeyUp: keyPressCallback.apply(void 0, __spreadArray([userCallback], keys, false)),\n validKeysUp: keys,\n },\n windows: {\n /**\n * https://github.com/microsoft/react-native-windows/issues/11049\n * Windows doesn't filter on `key` but on `code`, which is quite different ('A' vs 'KeyA' or 'GamepadA').\n * While this discrepancy is present, let's not specify `keyUpEvents`.\n */\n onKeyUp: keyPressCallback.apply(void 0, __spreadArray([userCallback], keys, false)),\n },\n // win32\n default: {\n onKeyUp: keyPressCallback.apply(void 0, __spreadArray([userCallback], keys, false)),\n keyUpEvents: keys.map(function (keyCode) {\n return { key: keyCode };\n }),\n },\n });\n return keyboardProps;\n}\nfunction getKeyDownPropsWorker(userCallback) {\n var keys = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n keys[_i - 1] = arguments[_i];\n }\n var keyboardProps = Platform.select({\n ios: undefined,\n android: undefined,\n macos: {\n onKeyDown: keyPressCallback.apply(void 0, __spreadArray([userCallback], keys, false)),\n validKeysDown: keys,\n },\n windows: {\n /**\n * https://github.com/microsoft/react-native-windows/issues/11049\n * Windows doesn't filter on `key` but on `code`, which is quite different ('A' vs 'KeyA' or 'GamepadA').\n * While this discrepancy is present, let's not specify `keyDownEvents`.\n */\n onKeyDown: keyPressCallback.apply(void 0, __spreadArray([userCallback], keys, false)),\n },\n // win32\n default: {\n onKeyDown: keyPressCallback.apply(void 0, __spreadArray([userCallback], keys, false)),\n keyDownEvents: keys.map(function (keyCode) {\n return { key: keyCode };\n }),\n },\n });\n return keyboardProps;\n}\n/**\n * Re-usable hook for an onKeyUp event.\n * @param userCallback The function you want to be called once the key has been activated on key up\n * @param keys A string of the key you want to perform some action on. If undefined, always invokes userCallback\n * @returns KeyPressProps: An object containing the correct platform specific props to handle key press\n */\nexport var useKeyUpProps = memoize(getKeyUpPropsWorker);\n/**\n * Re-usable hook for an onKeyDown event.\n * @param userCallback The function you want to be called once the key has been activated on key down\n * @param keys A string of the key you want to perform some action on. If undefined, always invokes userCallback\n * @returns KeyPressProps: An object containing the correct platform specific props to handle key press\n */\nexport var useKeyDownProps = memoize(getKeyDownPropsWorker);\n/** Exposes the behavior of useKeyProps for the current platform as a boolean */\nexport var preferKeyDownForKeyEvents = Platform.select({\n macos: true,\n default: false,\n});\n/**\n * Re-usable hook for keyboard events. on macOS, this is onKeyDown, while on windows this is onKeyUp.\n * @param userCallback The function you want to be called once the key has been activated on key down\n * @param keys A string of the key you want to perform some action on. If undefined, always invokes userCallback\n * @returns KeyPressProps: An object containing the correct platform specific props to handle key press\n */\nexport var useKeyProps = preferKeyDownForKeyEvents ? useKeyDownProps : useKeyUpProps;\n/**\n * Re-usable hook for an onKeyDown event.\n * @param userCallback The function you want to be called once the key has been activated on key up\n * @param keys A string of the key you want to perform some action on. If undefined, always invokes userCallback\n * @returns onKeyEvent() - Callback to determine if key was pressed, if so, call userCallback\n * @deprecated use the hook `useKeyProps` instead\n */\nexport function useKeyCallback(userCallback) {\n var keys = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n keys[_i - 1] = arguments[_i];\n }\n var onKeyEvent = React.useCallback(function (e) {\n if (userCallback !== undefined && (keys === undefined || keys.includes(e.nativeEvent.key))) {\n userCallback(e);\n e.stopPropagation();\n }\n }, [keys, userCallback]);\n return onKeyEvent;\n}\n//# sourceMappingURL=useKeyProps.js.map","/**\n * just wraps the common entry.foo = entry.foo || {} pattern\n * @param entry - entry to ensure a key value for\n * @param key - which key of that entry to ensure the value for\n */\nfunction ensureAndReturn(entry, key) {\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n throw new Error('Invalid key');\n }\n return (entry[key] = entry[key] || {});\n}\n/**\n * Step one level deeper in the cache, based on the key value from the current location\n *\n * @param entry - base entry to work from\n * @param val - value to use as the key for progressing to the next level of the cache\n */\nfunction jumpToCacheEntry(entry, val) {\n if (val === undefined || val === null) {\n // undefined or null just routes directly to the empty object. This avoids the issues of string collisions with 'null' or 'undefined'\n // when using the string key map, it also avoids creating the WeakMap (since null is technically typoef object), particularly in cases\n // where null is just being set on non-object types.\n return ensureAndReturn(entry, 'empty');\n }\n if (typeof val === 'object' || typeof val === 'function') {\n // objects and functions will be treated as key values in a WeakMap\n // eslint-disable-next-line @typescript-eslint/ban-types\n var byObj = (entry.obj = entry.obj || new WeakMap());\n return byObj.get(val) || byObj.set(val, {}).get(val);\n }\n // otherwise convert everything to a string and store it in the str object (using it as a map)\n var key = val + '';\n var byString = ensureAndReturn(entry, 'str');\n return (byString[key] = byString[key] || {});\n}\n/**\n * Given a base entry, either traverse or build the cache tree that matches the provided args\n *\n * @param entry - entry to use as the base of the cache walk\n * @param args - array of arguments to use to progress deeper into the cache\n */\nexport function getCacheEntry(entry, args) {\n // in the case where the args array exists and is > 0 length:\n // - walk the cache from entry, like a linked list, jumping to the next entry by key, building it up as you go\n // - otherwise if there are no args just use the noargs branch\n return args && args.length > 0\n ? args.reduce(function (previous, arg) { return jumpToCacheEntry(previous, arg); }, entry)\n : ensureAndReturn(entry, 'noargs');\n}\n//# sourceMappingURL=getCacheEntry.js.map","import { getCacheEntry } from './getCacheEntry';\n/** base node used to remember references when a globalKey is set */\nvar _baseEntry = {};\n/**\n * Primary functional worker used to implement the caching pattern\n *\n * @param entry - entry to use as the base of the cache traversal\n * @param factory - generally a function who's results will be cached, and returned via the set of keys\n * @param keys - an ordered array of values of any type, used as keys to look up the entry\n */\nfunction getMemoValueWorker(entry, factory, keys) {\n var foundEntry = getCacheEntry(entry, keys);\n // check the key being set, not the value to disambiguate an undefined factory result/value from never having run the factory\n if (!foundEntry.hasOwnProperty('value')) {\n foundEntry.value = typeof factory === 'function' ? factory() : factory;\n }\n return [foundEntry.value, function (fact, args) { return getMemoValueWorker(foundEntry, fact, args); }];\n}\n/**\n * Get a memo cache instance, this can either be completely self-contained or associated with a global key\n *\n * @param globalKey - optional object reference to use as a key for this cache. If specified it can be used\n * to retrieve the same cache from the global call. If not specified the returned cache will be completely isolated.\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function getMemoCache(globalKey) {\n var entry = globalKey ? getCacheEntry(_baseEntry, [globalKey]) : {};\n return function (fact, args) { return getMemoValueWorker(entry, fact, args); };\n}\n//# sourceMappingURL=getMemoCache.js.map","import { getMemoCache } from './getMemoCache';\n/**\n * This wraps a function to memoize the results using the standard javascript memoization pattern\n * @param fn - function to memoize\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function memoize(fn) {\n // create a unique cache that will be captured in the closure\n var cache = getMemoCache();\n // create the closure which wraps the calling function\n var closure = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return cache(function () { return fn.apply(void 0, (args || [])); }, args)[0];\n };\n // now return that closure strongly typed as the function.\n return closure;\n}\n//# sourceMappingURL=memoize.js.map","import * as React from 'react';\nimport { Platform } from 'react-native';\n/**\n * Sets focus on the focusRef after calling the userCallback for onPress, if that is an expected behavior on the platform\n * @param focusRef the ref used to set focus, generally the ref of the component that is being pressed\n * @param userCallback user-provided callback for onPress behavior\n * @returns Hook that sets focus, then calls the user callback\n */\nexport function useOnPressWithFocus(focusRef, userCallback) {\n var onPressWithFocus = React.useCallback(function (args) {\n var _a;\n var platformSupportsFocus = ['windows', 'win32', 'macos'].includes(Platform.OS);\n var takesFocusOnClick = ['windows', 'win32'].includes(Platform.OS);\n if (platformSupportsFocus && takesFocusOnClick) {\n (_a = focusRef === null || focusRef === void 0 ? void 0 : focusRef.current) === null || _a === void 0 ? void 0 : _a.focus();\n }\n userCallback === null || userCallback === void 0 ? void 0 : userCallback(args);\n }, [userCallback, focusRef]);\n return onPressWithFocus;\n}\n//# sourceMappingURL=useOnPressWithFocus.js.map","import { __assign, __spreadArray } from \"tslib\";\n/**\n * built in handlers for the module\n */\nvar _builtinHandlers = {\n appendArray: function () {\n var objs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n objs[_i] = arguments[_i];\n }\n return [].concat.apply([], objs);\n },\n};\n/**\n * This processes the various type options for merge core and turns them into a MergeConfig\n * @param options - options passed into immutableMergeCore\n */\nfunction normalizeOptions(options) {\n return typeof options === 'boolean'\n ? [{ object: options }, options]\n : typeof options === 'number'\n ? [{ object: options >= 0 ? options : true }, options !== 0]\n : [options, true];\n}\n/**\n * Return the type except return 'array' for objects that are arrays\n * @param val - value to check type\n */\nfunction getEntityType(val) {\n return typeof val === 'object' ? (Array.isArray(val) ? 'array' : 'object') : typeof val;\n}\n/** resolve custom handlers if they are applicable */\nfunction resolveIfHandler(option) {\n return typeof option === 'function' ? option : typeof option === 'string' ? _builtinHandlers[option] : undefined;\n}\n/** pass array configurations down, this allows for saying all arrays should be appended rather than replaced */\nfunction getTypesMixin(config) {\n return config.array ? { array: config.array } : {};\n}\n/** resolve the object behaviors for configuration */\nfunction resolveForObject(option, mixin) {\n if (typeof option === 'boolean') {\n // booleans won't recurse if false, otherwise recurse infinitely\n return option ? __assign({ object: option }, mixin) : mixin;\n }\n else if (typeof option === 'number') {\n // numbers get decremented or set to false if we've reached zero. Negative values will have been converted to boolean true\n return option === 0 ? mixin : __assign({ object: option - 1 }, mixin);\n }\n else {\n // otherwise it is an object type so just pass the child object through\n return option;\n }\n}\n/**\n * Figure out the handler for this property.\n * It will either be a function, a config object to pass to a recursive call, or undefined\n * in the undefined case, this key will be left as-is\n */\nfunction getHandlerForPropertyOfType(config, propKey, propType) {\n var result = undefined;\n var option = config[propKey] !== undefined ? config[propKey] : config[propType] !== undefined ? config[propType] : undefined;\n if (option !== undefined) {\n // try to resolve the option as a handler, either function or built-in first. This is the only option that is valid for non-object types.\n result = resolveIfHandler(option);\n // if it is an object then resolve boolean, number or config types\n if (result === undefined && propType === 'object') {\n result = resolveForObject(option, getTypesMixin(config));\n }\n }\n return result;\n}\n/**\n * This will merge two or more objects together using an immutable style merge pattern. If there is only one object or\n * if there is only one object with values, that object itself will be returned, with two or more objects the keys within will\n * be first merged with Object.assign and then optionally will recurse to merge sub objects as specified by the options.\n *\n * Note that this tries hard to not create extra objects, because of this merging an object with an empty object will not\n * create a new object.\n *\n * @param mergeOptions - options driving behavior of the merge. See MergeOptions for a description\n * @param singleMode - normally if there is only one branch to follow in the merge the routine will not recurse. If single mode\n * is true the routine will progress through all branches of the hierarchy. Useful if using a processor function that needs to be run.\n * @param objs - an array of objects to merge together\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nfunction immutableMergeWorker(mergeOptions, singleMode) {\n var objs = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n objs[_i - 2] = arguments[_i];\n }\n var setToMerge = objs.filter(function (v) { return v && getEntityType(v) === 'object' && Object.getOwnPropertyNames(v).length > 0; });\n var _a = normalizeOptions(mergeOptions), options = _a[0], mightRecurse = _a[1];\n var processSingle = singleMode && setToMerge.length === 1;\n // there is work to do if there is more than one object to merge or if we are processing single objects\n if (setToMerge.length > 1 || (processSingle && setToMerge.length === 1)) {\n // now assign everything to get the normal property precedence (and merge all the keys)\n var result = processSingle ? undefined : Object.assign.apply(Object, __spreadArray([{}], setToMerge, false));\n var processSet = result || setToMerge[0];\n var _loop_1 = function (key) {\n if (processSet.hasOwnProperty(key)) {\n // only process if there is potential work to do\n if (mightRecurse) {\n var originalVal = processSet[key];\n var entityType = getEntityType(originalVal);\n var handler = getHandlerForPropertyOfType(options, key, entityType);\n if (handler !== undefined) {\n var values = setToMerge.map(function (set) { return set[key]; }).filter(function (v) { return v !== undefined; });\n var updatedVal = typeof handler === 'function' ? handler.apply(void 0, values) : immutableMergeWorker.apply(void 0, __spreadArray([handler, singleMode], values, false));\n if (updatedVal !== originalVal) {\n result = result || Object.assign.apply(Object, __spreadArray([{}], setToMerge, false));\n result[key] = updatedVal;\n }\n }\n }\n // delete undefined keys from the object, otherwise there is no easy way to delete keys\n if (!processSingle && result[key] === undefined) {\n delete result[key];\n }\n }\n };\n for (var key in processSet) {\n _loop_1(key);\n }\n // in the single processing case return the original if nothing changed, otherwise return result\n return result || processSet;\n }\n return setToMerge.length > 0 ? setToMerge[0] : undefined;\n}\n/**\n * Recursively immutable merge sets of objects infinitely deep. This behaves like a standard deep merge with arrays replacing\n * one another rather than appending. If appending arrays is desireable this can be configured via immutableMergeCore\n *\n * @param objs - variable input array of typed objects to merge\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function immutableMerge() {\n var objs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n objs[_i] = arguments[_i];\n }\n return immutableMergeWorker.apply(void 0, __spreadArray([true, false], objs, false));\n}\n/**\n * Version of immutable merge that can be configured to behave in a variety of manners. See the documentation for details.\n *\n * @param options - configuration options for the merge, this dictates what keys will be handled in what way\n * @param objs - set of objects to merge together\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function immutableMergeCore(options) {\n var objs = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n objs[_i - 1] = arguments[_i];\n }\n return immutableMergeWorker.apply(void 0, __spreadArray([options, false], objs, false));\n}\n/**\n * Process one or more immutable objects ensuring that handlers are called on every entry that applies. If a single object\n * is passed in and no changes are made, that object will be returned. If updates happen from the handlers it will return the\n * minimally mutated object.\n *\n * The use case for this might be a style transformation on a deeply nested object. If no changes are made the object won't be\n * updated but in the case where something needs to be transformed this will perform the minimal mutations.\n *\n * @param processors - set of processor functions for handling keys\n * @param objs - one or more objects to process. If multiple objects are passed they will be merged\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function processImmutable(options) {\n var objs = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n objs[_i - 1] = arguments[_i];\n }\n return immutableMergeWorker.apply(void 0, __spreadArray([options, true], objs, false));\n}\n//# sourceMappingURL=Merge.js.map","import { __spreadArray } from \"tslib\";\nimport { immutableMerge } from '@fluentui-react-native/immutable-merge';\nimport { getMemoCache } from '@fluentui-react-native/memo-cache';\n/**\n * Take a react-native style, which may be a recursive array, and return as a flattened\n * style. This is analagous to the flatten routine that is part of the style sheet API\n *\n * @param style - StyleProp to flatten, this can be a TStyle or an array\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function flattenStyle(style) {\n return Array.isArray(style) ? immutableMerge.apply(void 0, style.map(function (v) { return flattenStyle(v); })) : style || {};\n}\n/**\n * Merge styles together into a single flat object and optionally finalize them, can also be used to finalize a single style\n *\n * @param styles - array of styles to merge together. The styles will be flattened as part of the process\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function mergeAndFlattenStyles() {\n var styles = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n styles[_i] = arguments[_i];\n }\n // baseline merge and flatten the objects\n return immutableMerge.apply(void 0, styles.map(function (styleProp) {\n return flattenStyle(styleProp);\n }));\n}\nvar _styleCache = getMemoCache();\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function mergeStyles() {\n var styles = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n styles[_i] = arguments[_i];\n }\n // filter the style set to just objects (which might be arrays or plain style objects)\n // eslint-disable-next-line @typescript-eslint/ban-types\n var inputs = styles.filter(function (s) { return typeof s === 'object'; });\n // now memo the results if there is more than one element or if the one element is an array\n return inputs.length > 1 || (inputs.length === 1 && Array.isArray(inputs[0]))\n ? _styleCache(function () { return mergeAndFlattenStyles.apply(void 0, __spreadArray([undefined], inputs, false)); }, inputs)[0]\n : inputs[0] || {};\n}\n//# sourceMappingURL=mergeStyles.js.map","import { __spreadArray } from \"tslib\";\nimport { immutableMergeCore } from '@fluentui-react-native/immutable-merge';\nimport { mergeStyles } from './mergeStyles';\n/**\n * Props will not deeply merge with the exception of a style property. Also className needs to be handled specially.\n */\nvar mergePropsOptions = {\n className: function () {\n var names = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n names[_i] = arguments[_i];\n }\n return names.filter(function (v) { return v && typeof v === 'string'; }).join(' ');\n },\n style: mergeStyles,\n};\n/** take an any array and turn it into an array of objects */\n// eslint-disable-next-line @typescript-eslint/ban-types\nfunction filterAsObject(targets) {\n return targets.filter(function (t) { return typeof t === 'object'; });\n}\n/**\n * Merge props together, flattening and merging styles as appropriate\n * @param props - props to merge together\n */\nexport function mergeProps() {\n var props = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n props[_i] = arguments[_i];\n }\n return immutableMergeCore.apply(void 0, __spreadArray([mergePropsOptions], filterAsObject(props), false));\n}\n//# sourceMappingURL=mergeProps.js.map","import { __spreadArray } from \"tslib\";\nexport var getPaletteFromTheme = function (theme) {\n return theme.colors;\n};\nexport var foregroundColorTokens = [{ source: 'color', lookup: getPaletteFromTheme }];\nexport var backgroundColorTokens = [\n { source: 'backgroundColor', lookup: getPaletteFromTheme },\n];\nexport var colorTokens = __spreadArray(__spreadArray([], foregroundColorTokens, true), backgroundColorTokens, true);\n//# sourceMappingURL=color-tokens.js.map","export function tokenBuilder() {\n var keys = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n keys[_i] = arguments[_i];\n }\n var from = function (tokens) {\n var style = {};\n keys\n .filter(function (key) { return tokens[key] !== undefined; })\n .forEach(function (key) {\n style[key] = tokens[key];\n });\n return style;\n };\n return { from: from, keys: keys };\n}\n//# sourceMappingURL=tokenBuilder.js.map","import { getPaletteFromTheme } from './color-tokens';\nimport { tokenBuilder } from './tokenBuilder';\nexport var borderTokens = [\n { source: 'borderColor', lookup: getPaletteFromTheme },\n { source: 'borderWidth' },\n { source: 'borderRadius' },\n { source: 'borderStyle' },\n];\nexport var borderStyles = tokenBuilder('borderColor', 'borderRadius', 'borderStyle', 'borderWidth');\n//# sourceMappingURL=border-tokens.js.map","/**\n * Helper to make it easy to create a style factory function. Function statics are super convenient\n * but kind of annoying to set up\n *\n * @param fn - function to decorate with keys\n * @param keys - keys to append as a static to the function\n */\nexport function styleFunction(fn, keys) {\n fn._keys = keys;\n return fn;\n}\n//# sourceMappingURL=token.function.js.map","import { styleFunction } from './token.function';\nexport var fontStyles = {\n from: function (_a, _b) {\n var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;\n var fontDynamicTypeRamp = _a.fontDynamicTypeRamp, fontFamily = _a.fontFamily, fontLetterSpacing = _a.fontLetterSpacing, fontLineHeight = _a.fontLineHeight, fontMaximumSize = _a.fontMaximumSize, fontSize = _a.fontSize, fontStyle = _a.fontStyle, fontWeight = _a.fontWeight, textDecorationLine = _a.textDecorationLine, variant = _a.variant;\n var typography = _b.typography;\n var families = typography.families, sizes = typography.sizes, weights = typography.weights, variants = typography.variants;\n if (fontDynamicTypeRamp !== undefined ||\n fontFamily !== undefined ||\n fontLetterSpacing !== undefined ||\n fontLineHeight !== undefined ||\n fontMaximumSize !== undefined ||\n fontSize !== undefined ||\n fontWeight !== undefined ||\n variant !== undefined) {\n return {\n fontFamily: (_f = (_d = (_c = families[fontFamily]) !== null && _c !== void 0 ? _c : fontFamily) !== null && _d !== void 0 ? _d : families[(_e = variants[variant]) === null || _e === void 0 ? void 0 : _e.face]) !== null && _f !== void 0 ? _f : (_g = variants[variant]) === null || _g === void 0 ? void 0 : _g.face,\n fontSize: (_l = (_j = (_h = sizes[fontSize]) !== null && _h !== void 0 ? _h : fontSize) !== null && _j !== void 0 ? _j : sizes[(_k = variants[variant]) === null || _k === void 0 ? void 0 : _k.size]) !== null && _l !== void 0 ? _l : (_m = variants[variant]) === null || _m === void 0 ? void 0 : _m.size,\n fontStyle: fontStyle,\n fontWeight: (_r = (_p = (_o = weights[fontWeight]) !== null && _o !== void 0 ? _o : fontWeight) !== null && _p !== void 0 ? _p : weights[(_q = variants[variant]) === null || _q === void 0 ? void 0 : _q.weight]) !== null && _r !== void 0 ? _r : (_s = variants[variant]) === null || _s === void 0 ? void 0 : _s.weight,\n lineHeight: fontLineHeight !== null && fontLineHeight !== void 0 ? fontLineHeight : (_t = variants[variant]) === null || _t === void 0 ? void 0 : _t.lineHeight,\n letterSpacing: fontLetterSpacing !== null && fontLetterSpacing !== void 0 ? fontLetterSpacing : (_u = variants[variant]) === null || _u === void 0 ? void 0 : _u.letterSpacing,\n dynamicTypeRamp: fontDynamicTypeRamp !== null && fontDynamicTypeRamp !== void 0 ? fontDynamicTypeRamp : (_v = variants[variant]) === null || _v === void 0 ? void 0 : _v.dynamicTypeRamp,\n maximumFontSize: fontMaximumSize,\n textDecorationLine: textDecorationLine,\n };\n }\n return {};\n },\n keys: [\n 'fontDynamicTypeRamp',\n 'fontFamily',\n 'fontLineHeight',\n 'fontLetterSpacing',\n 'fontMaximumSize',\n 'fontSize',\n 'fontStyle',\n 'fontWeight',\n 'variant',\n 'textDecorationLine',\n ],\n};\nfunction _buildTextStyles(tokens, theme) {\n return {\n style: fontStyles.from(tokens, theme),\n };\n}\nexport var textTokens = styleFunction(_buildTextStyles, fontStyles.keys);\n//# sourceMappingURL=text-tokens.js.map","import { tokenBuilder } from './tokenBuilder';\nexport var layoutTokens = [\n { source: 'width' },\n { source: 'height' },\n { source: 'minWidth' },\n { source: 'maxWidth' },\n { source: 'minHeight' },\n { source: 'maxHeight' },\n { source: 'padding' },\n { source: 'paddingHorizontal' },\n { source: 'paddingVertical' },\n { source: 'paddingStart' },\n { source: 'paddingEnd' },\n];\nexport var layoutStyles = tokenBuilder('width', 'height', 'minWidth', 'maxWidth', 'minHeight', 'maxHeight', 'padding', 'paddingHorizontal', 'paddingVertical', 'paddingStart', 'paddingEnd');\n//# sourceMappingURL=layout-tokens.js.map","import { tokenBuilder } from './tokenBuilder';\nexport var shadowTokens = [\n { source: 'shadowColor' },\n { source: 'shadowOffset' },\n { source: 'shadowOpacity' },\n { source: 'shadowRadius' },\n { source: 'elevation' },\n];\nexport var shadowStyles = tokenBuilder('shadowColor', 'shadowOffset', 'shadowOpacity', 'shadowRadius');\n//# sourceMappingURL=shadow-tokens.js.map","import { __spreadArray } from \"tslib\";\nimport * as React from 'react';\n/**\n * Renders a slot\n *\n * @param slot - native react type or slot function to render\n * @param extraProps - additional props to mixin\n * @param children - the children to pass down to the slot\n */\nexport function renderSlot(slot, extraProps) {\n var children = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n children[_i - 2] = arguments[_i];\n }\n return typeof slot === 'function' && slot._canCompose\n ? slot.apply(void 0, __spreadArray([extraProps], children, false)) : React.createElement.apply(React, __spreadArray([slot, extraProps], children, false));\n}\n//# sourceMappingURL=renderSlot.js.map","import { __rest } from \"tslib\";\nimport * as React from 'react';\nfunction asArray(val) {\n return Array.isArray(val) ? val : [val];\n}\n/**\n * Take a staged render function and make a real component out of it\n *\n * @param staged - staged render function to wrap into a staged component\n * @param memo - optional flag to enable wrapping the created component in a React.memo HOC\n */\nexport function stagedComponent(staged, memo) {\n var component = function (props) {\n var children = props.children, rest = __rest(props, [\"children\"]);\n return staged(rest)({}, asArray(children));\n };\n var stagedComponent = memo ? React.memo(component) : component;\n Object.assign(stagedComponent, { _staged: staged });\n return stagedComponent;\n}\n//# sourceMappingURL=stagedComponent.js.map","import { __spreadArray } from \"tslib\";\nimport * as React from 'react';\nimport { mergeProps } from '@fluentui-react-native/merge-props';\n/**\n *\n * @param slot - component which may or may not be built using the staged pattern\n * @returns - the staged function or undefined\n */\nfunction getStagedRender(slot) {\n return (typeof slot === 'function' && slot._staged) || undefined;\n}\n/**\n * useSlot hook function, allows authoring against pluggable slots as well as allowing components to be called as functions rather than\n * via createElement if they support it.\n *\n * @param component - any kind of component that can be rendered as part of the tree\n * @param props - props, particularly the portion that includes styles, that should be passed to the component. These will be merged with what are specified in the JSX tree\n * @param filter - optional filter that will prune the props before forwarding to the component\n * @returns\n */\nexport function useSlot(component, props, filter) {\n // extract the staged component function if that pattern is being used, will be undefined if it is a standard component\n var stagedComponent = getStagedRender(component);\n // build the secondary processing function and the result holder, done via useMemo so the function identity stays the same. Rebuilding the closure every time would invalidate render\n var _a = React.useMemo(function () {\n // create a holder object so values can be passed to the closure\n var resultHolder = {};\n // create a function that is in the right format for rendering in JSX/TSX, this has children split out\n var slotFn = function (extraProps) {\n var children = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n children[_i - 1] = arguments[_i];\n }\n var result = resultHolder.result;\n // result is either a function (if a staged component) or a set of props passed to useSlot (and sent here via resultHolder)\n var props = typeof result === 'function' ? extraProps : mergeProps(result, extraProps);\n // if we have a filter specified, run it creating a prop collection of { [key]: undefined } which will end up deleting the values via mergeStyles\n var propsToRemove = filter ? Object.keys(props).filter(function (key) { return !filter(key); }) : undefined;\n if ((propsToRemove === null || propsToRemove === void 0 ? void 0 : propsToRemove.length) > 0) {\n props = mergeProps(props, Object.assign.apply(Object, __spreadArray([{}], propsToRemove.map(function (prop) {\n var _a;\n return (_a = {}, _a[prop] = undefined, _a);\n }), false)));\n }\n // now if result was a function then call it directly, if not go through the standard React.createElement process\n // eslint-disable-next-line @typescript-eslint/ban-types\n return typeof result === 'function' ? result.apply(void 0, __spreadArray([props], children, false)) : React.createElement.apply(React, __spreadArray([component, props], children, false));\n };\n // mark the slotFn so that withSlots knows to handle it differently\n slotFn._canCompose = true;\n return [slotFn, resultHolder];\n }, [component, filter]), fn = _a[0], results = _a[1];\n // if it is a staged component executre the first part with the props, otherwise just remember the props\n results.result = stagedComponent ? stagedComponent(props) : props;\n // return the function\n return fn;\n}\n//# sourceMappingURL=useSlot.js.map","import { __spreadArray } from \"tslib\";\nimport { renderSlot } from './renderSlot';\n/**\n * This function is required for any module that uses slots.\n *\n * This function is a slot resolver that automatically evaluates slot functions to generate React elements.\n * A byproduct of this resolver is that it removes slots from the React hierarchy by bypassing React.createElement.\n *\n * To use this function on a per-file basis, use the jsx directive targeting withSlots.\n * This directive must be the FIRST LINE in the file to work correctly.\n * Usage of this pragma also requires withSlots import statement.\n *\n * See React.createElement\n */\n// Can't use typeof on React.createElement since it's overloaded. Approximate createElement's signature for now and widen as needed.\nexport function withSlots(reactType, props) {\n var children = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n children[_i - 2] = arguments[_i];\n }\n // if it is a non-string type with _canCompose set just call the function directly, otherwise call createElement as normal\n return renderSlot.apply(void 0, __spreadArray([reactType, props], children, false));\n}\n//# sourceMappingURL=withSlots.js.map","import { useSlot } from '@fluentui-react-native/use-slot';\nexport function buildUseSlots(options) {\n var slots = options.slots, _a = options.filters, filters = _a === void 0 ? {} : _a, useStyling = options.useStyling;\n return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n // get the baseline slot props to render with the slots\n // eslint-disable-next-line @typescript-eslint/ban-types\n var slotProps = typeof useStyling === 'function' ? useStyling.apply(void 0, args) : (useStyling || {});\n // build up a set of slots closures and store them in props\n var builtSlots = {};\n // for each slot go through and either cache the slot props or call part one render if it is staged\n Object.keys(slots).forEach(function (slotName) {\n builtSlots[slotName] = useSlot(slots[slotName], slotProps[slotName], filters[slotName]);\n });\n // return the prebuilt closures, these will have internal references to state.results\n return builtSlots;\n };\n}\n//# sourceMappingURL=buildUseSlots.js.map","import * as React from 'react';\nexport var ThemeContext = React.createContext(undefined);\nexport var useTheme = function () { return React.useContext(ThemeContext); };\n//# sourceMappingURL=context.js.map","import { __assign } from \"tslib\";\nexport function applyPropsToTokens(props, tokens, cache, keys) {\n var _loop_1 = function (key) {\n var _a;\n var sourceValue = props[key];\n var setValue = sourceValue === tokens[key] ? undefined : sourceValue;\n _a = cache(function () {\n var _a;\n return (setValue === undefined ? tokens : __assign(__assign({}, tokens), (_a = {}, _a[key] = setValue, _a)));\n }, [setValue]), tokens = _a[0], cache = _a[1];\n };\n for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {\n var key = keys_1[_i];\n _loop_1(key);\n }\n return [tokens, cache];\n}\n//# sourceMappingURL=applyPropsToTokens.js.map","import { immutableMerge } from '@fluentui-react-native/immutable-merge';\n/**\n * Apply token layers, building them up applied layer by applied layer, using the cache to store intermediate\n * values\n *\n * @param tokens - input tokens which may have layers to apply\n * @param states - array of states to check for, ordered by precedence\n * @param subCache - cache scoped to the root object with no layers applied\n * @param hasLayer - a function which returns whether a given layer should be applied\n */\nexport function applyTokenLayers(tokens, states, subCache, hasLayer) {\n var final = { tokens: tokens, subCache: subCache };\n if (states && states.length > 0) {\n // now walk the overrides that are set, merging in props, caching results, and getting a new sub cache\n final = states\n .filter(function (val) { return hasLayer(val); })\n .reduce(function (previous, layerName) {\n var layer = previous.tokens[layerName];\n var _a = previous.subCache(function () { return (layer && typeof layer === 'object' ? immutableMerge(previous.tokens, layer) : previous.tokens); }, [layer]), tokens = _a[0], subCache = _a[1];\n return { tokens: tokens, subCache: subCache };\n }, final);\n }\n return [final.tokens, final.subCache];\n}\n//# sourceMappingURL=applyTokenLayers.js.map","import { __spreadArray } from \"tslib\";\nimport { immutableMerge } from '@fluentui-react-native/immutable-merge';\nimport { getMemoCache } from '@fluentui-react-native/memo-cache';\n/**\n * Tokens are defined as either:\n * TTokens - an object\n * string - a name to look up in the theme\n * function - a function to run against the theme to produce tokens\n *\n * This function maps any of these types into a specific TTokens object. A string is first lookup up in the theme, returning a function\n * or object. If the type is a function this will be invoked with the theme to generate the tokens object.\n *\n * @param tokenEntry - token entry to start with\n * @param theme - theme to use for queries\n * @param getComponentInfo - helper to use to lookup the component in the theme\n */\nfunction mapToTokens(tokenEntry, theme, getComponentInfo) {\n if (typeof tokenEntry === 'string') {\n tokenEntry = (getComponentInfo && getComponentInfo(theme, tokenEntry)) || {};\n }\n if (typeof tokenEntry === 'function') {\n tokenEntry = tokenEntry(theme);\n }\n return tokenEntry;\n}\n/**\n * Construct a useStyling hook which returns styled slot props based on props and tokens defined in options and in the theme\n *\n * @param options - options which drive behavior for the generated styling hook\n * @param themeHelper - injected theme functionality\n */\nexport function buildUseTokens(getComponentInfo) {\n var tokens = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n tokens[_i - 1] = arguments[_i];\n }\n // create a cache instance for use in this particular call to buildUseTokens\n var cache = getMemoCache();\n // the core function simply merges layers together, looking up component definitions in the theme as well as executing any\n // theme functions. This turns the tokens into an array of token objects that then get merged together\n var useTokensCore = function (theme) {\n // get the base styles all merged together, these will only depend on internal tokens and theme\n return cache(function () { return immutableMerge.apply(void 0, tokens.map(function (value) { return mapToTokens(value, theme, getComponentInfo); })); }, [theme]);\n };\n // attach a customize function to generate a new use\n useTokensCore.customize = function () {\n var newTokens = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n newTokens[_i] = arguments[_i];\n }\n var mergedTokens = __spreadArray(__spreadArray([], tokens, true), newTokens, true);\n return buildUseTokens.apply(void 0, __spreadArray([getComponentInfo], mergedTokens, false));\n };\n return useTokensCore;\n}\n//# sourceMappingURL=buildUseTokens.js.map","import { __assign } from \"tslib\";\n/**\n * Take a set of tokens (and a memo-cache) and apply changes to those tokens from an additional set of tokens. Only keys which are\n * not undefined will be applied and if no changes are detected the token object will be unchanged.\n *\n * @param tokens - base set of tokens to apply changes to, this will not be modified\n * @param cache - cache corresponding to this set of tokens\n * @param patchValues - new values to apply, values will be obtained via keys in the object\n * @returns - a tuple consisting of a new tokens object and a new memo-cache\n */\nexport function patchTokens(tokens, cache, patchValues) {\n // reduce the patch values to the set of keys that are defined, and sort them to ensure consistent ordering\n var keys = Object.keys(patchValues)\n .filter(function (v) { return patchValues[v] !== undefined; })\n .sort();\n var _loop_1 = function (key) {\n var _a;\n _a = cache(function () {\n var _a;\n return (__assign(__assign({}, tokens), (_a = {}, _a[key] = patchValues[key], _a)));\n }, [key, patchValues[key]]), tokens = _a[0], cache = _a[1];\n };\n // for each key get an updated tokens collection based on key + value. Value alone isn't sufficient as the values\n // are not necessarily unique. i.e. { a: 'blue' } and { b: 'blue' } would cache to the same without the key\n for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {\n var key = keys_1[_i];\n _loop_1(key);\n }\n // return the updated tokens and cache (if there were any keys applied)\n return [tokens, cache];\n}\n//# sourceMappingURL=patchTokens.js.map","function cacheStyleClosure(fn, keys) {\n return function (tokens, theme, cache) {\n return cache(function () { return fn(tokens, theme); }, (keys || []).map(function (key) { return tokens[key]; }))[0];\n };\n}\nfunction refineKeys(keys, mask) {\n return typeof mask === 'object' && Array.isArray(mask)\n ? keys.filter(function (key) { return mask.findIndex(function (val) { return val === key; }) !== -1; })\n : mask\n ? keys\n : [];\n}\n/**\n * Standard wrapper for a function that provides props for a component based on tokens and theme.\n *\n * @param fn - function which does the work of producing props for the tokens and theme provided\n * @param keys - which token properties are used by this style, this determines the keys to use for caching\n */\nexport function buildProps(fn, keys) {\n // wrap the provided function in the standard caching layer, basing it upon the provided keys\n var result = cacheStyleClosure(fn, keys);\n // if results are being cached on keys, provide the ability to refine the function if a prop mask is specified\n result.refine =\n keys && keys.length > 0\n ? function (mask) {\n return cacheStyleClosure(fn, refineKeys(keys, mask));\n }\n : undefined;\n // return the style function decorated with the refine function\n return result;\n}\n/**\n * Utility function to check the type and refinement capabilities of a styleFunction and refine it if appropriate\n *\n * @param fn - function or props to potentially refine\n * @param mask - prop mask to use for refinement\n */\nexport function refinePropsFunctions(styles, mask) {\n var result = {};\n Object.keys(styles).forEach(function (key) {\n var refine = typeof styles[key] === 'function' && styles[key].refine;\n result[key] = refine ? refine(mask) : styles[key];\n });\n return result;\n}\n//# sourceMappingURL=buildProps.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport { applyPropsToTokens, applyTokenLayers, buildUseTokens } from '@fluentui-react-native/use-tokens';\nimport { refinePropsFunctions } from './buildProps';\n/**\n * Produce the final slot props for the styled hook\n *\n * @param styles - refined style functions or props to use for processing\n * @param tokens - token inputs for the style functions\n * @param theme - theme to resolve against\n * @param cache - cache to use for the base of slot caching\n */\nfunction resolveToSlotProps(styles, tokens, theme, cache) {\n var slotProps = {};\n Object.keys(styles).forEach(function (key) {\n var style = styles[key];\n slotProps[key] = typeof style === 'function' ? style(tokens, theme, cache(null, [key])[1]) : style;\n });\n return slotProps;\n}\n/**\n * Construct a useStyling hook which returns styled slot props based on props and tokens defined in options and in the theme\n *\n * @param options - options which drive behavior for the generated styling hook\n * @param themeHelper - injected theme functionality\n */\nexport function buildUseStyling(options, themeHelper) {\n // create a cache instance for this use styling implementation\n var useTheme = themeHelper.useTheme, getComponentInfo = themeHelper.getComponentInfo;\n var tokens = options.tokens, tokenProps = options.tokensThatAreAlsoProps;\n var styles = refinePropsFunctions(options.slotProps || {}, tokenProps);\n var useTokens = buildUseTokens.apply(void 0, __spreadArray([getComponentInfo], tokens, false));\n return function (props, lookup) {\n var _a, _b;\n // query the theme\n var theme = useTheme();\n // get the merged tokens from the theme\n var _c = useTokens(theme), mergedTokens = _c[0], cache = _c[1];\n // resolve overrides as appropriate\n if (options.states) {\n _a = applyTokenLayers(mergedTokens, options.states, cache, lookup || (function (val) { return props[val]; })), mergedTokens = _a[0], cache = _a[1];\n }\n // now resolve tokens\n if (typeof tokenProps === 'object' && Array.isArray(tokenProps)) {\n _b = applyPropsToTokens(props, mergedTokens, cache, tokenProps), mergedTokens = _b[0], cache = _b[1];\n }\n else if (tokenProps === 'all') {\n mergedTokens = __assign(__assign({}, mergedTokens), props);\n }\n // finally produce slotProps from calling the style functions on each entry\n return resolveToSlotProps(styles, mergedTokens, theme, cache);\n };\n}\n//# sourceMappingURL=buildUseStyling.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nimport { immutableMergeCore } from '@fluentui-react-native/immutable-merge';\nimport { stagedComponent } from '@fluentui-react-native/use-slot';\nimport { buildUseSlots } from '@fluentui-react-native/use-slots';\nimport { buildUseStyling } from '@fluentui-react-native/use-styling';\n/**\n * options get deep merged except the tokens array gets appended\n */\nvar mergeOptions = {\n tokens: 'appendArray',\n object: true,\n};\nexport function composeFactory(options, themeHelper, base) {\n // merge options together if a base is specified\n var baseOptions = base === null || base === void 0 ? void 0 : base.__options;\n options = baseOptions ? immutableMergeCore(mergeOptions, baseOptions, options) : __assign({}, options);\n // build styling if styling options are specified\n options.useStyling = options.slotProps || options.tokens ? buildUseStyling(options, themeHelper) : function () { return ({}); };\n // build the slots hook, which will use the styling hook if it has been built\n var useSlots = buildUseSlots(options);\n // build the staged component\n var component = stagedComponent(function (props) { return options.useRender(props, useSlots); });\n // attach additional props to the returned component\n component.displayName = options.displayName;\n component.__options = options;\n component.customize = function () {\n var tokens = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n tokens[_i] = arguments[_i];\n }\n return composeFactory(immutableMergeCore(mergeOptions, options, { tokens: tokens }), themeHelper);\n };\n component.compose = function (customOptions) {\n return composeFactory(immutableMergeCore(mergeOptions, options, customOptions), themeHelper);\n };\n // attach statics if specified\n if (options.statics) {\n Object.assign(component, options.statics);\n }\n return component;\n}\n//# sourceMappingURL=composeFactory.js.map","import { Platform } from 'react-native';\nimport { globalTokens } from '@fluentui-react-native/theme-tokens';\nimport { createShadowAliasTokens } from './createAliasTokens';\nimport { getStockWebHCPalette } from './defaultColors';\nimport { getStockWebPalette, getStockWebDarkPalette } from './stockWebPalette';\nfunction _defaultTypography() {\n var defaultsDict = {\n sizes: {\n caption: globalTokens.font.size100,\n secondary: globalTokens.font.size200,\n body: globalTokens.font.size300,\n subheader: globalTokens.font.size400,\n header: globalTokens.font.size500,\n hero: globalTokens.font.size700,\n heroLarge: globalTokens.font.size900,\n },\n weights: {\n regular: globalTokens.font.weight.regular,\n semiBold: globalTokens.font.weight.semibold,\n },\n families: {\n primary: 'Segoe UI',\n secondary: 'Segoe UI',\n cursive: 'System',\n monospace: 'System',\n numeric: 'System',\n sansSerif: 'System',\n serif: 'System',\n },\n variants: {\n captionStandard: { face: 'primary', size: 'caption', weight: 'regular' },\n secondaryStandard: { face: 'primary', size: 'secondary', weight: 'regular' },\n secondarySemibold: { face: 'primary', size: 'secondary', weight: 'semiBold' },\n bodyStandard: { face: 'primary', size: 'body', weight: 'regular' },\n bodySemibold: { face: 'primary', size: 'body', weight: 'semiBold' },\n subheaderStandard: { face: 'primary', size: 'subheader', weight: 'regular' },\n subheaderSemibold: { face: 'primary', size: 'subheader', weight: 'semiBold' },\n headerStandard: { face: 'primary', size: 'header', weight: 'regular' },\n headerSemibold: { face: 'primary', size: 'header', weight: 'semiBold' },\n heroStandard: { face: 'primary', size: 'hero', weight: 'regular' },\n heroSemibold: { face: 'primary', size: 'hero', weight: 'semiBold' },\n heroLargeStandard: { face: 'primary', size: 'heroLarge', weight: 'regular' },\n heroLargeSemibold: { face: 'primary', size: 'heroLarge', weight: 'semiBold' },\n // mocked out\n caption1: { face: 'primary', size: 'caption', weight: 'regular' },\n caption1Strong: { face: 'primary', size: 'caption', weight: 'semiBold' },\n body1: { face: 'primary', size: 'secondary', weight: 'regular' },\n body1Strong: { face: 'primary', size: 'secondary', weight: 'semiBold' },\n body2: { face: 'primary', size: 'body', weight: 'regular' },\n body2Strong: { face: 'primary', size: 'body', weight: 'semiBold' },\n subtitle1: { face: 'primary', size: 'header', weight: 'regular' },\n subtitle1Strong: { face: 'primary', size: 'header', weight: 'semiBold' },\n subtitle2: { face: 'primary', size: 'subheader', weight: 'regular' },\n subtitle2Strong: { face: 'primary', size: 'subheader', weight: 'semiBold' },\n title1: { face: 'primary', size: 'hero', weight: 'regular' },\n title1Strong: { face: 'primary', size: 'hero', weight: 'semiBold' },\n largeTitle: { face: 'primary', size: 'heroLarge', weight: 'regular' },\n display: { face: 'primary', size: 'heroLarge', weight: 'semiBold' },\n },\n };\n if (Platform.OS === 'macos' || Platform.OS === 'ios') {\n var familiesDictApple = {\n primary: 'System',\n secondary: 'System',\n cursive: 'System',\n monospace: 'System',\n numeric: 'System',\n sansSerif: 'System',\n serif: 'System',\n };\n defaultsDict.families = familiesDictApple;\n }\n return defaultsDict;\n}\nexport function defaultSpacing() {\n return { s2: '4px', s1: '8px', m: '16px', l1: '20px', l2: '32px' };\n}\nexport var defaultFluentTheme = {\n colors: getStockWebPalette(),\n typography: _defaultTypography(),\n spacing: defaultSpacing(),\n shadows: createShadowAliasTokens('light'),\n components: {},\n host: { appearance: 'light' },\n};\nexport var defaultFluentDarkTheme = {\n colors: getStockWebDarkPalette(),\n typography: defaultFluentTheme.typography,\n shadows: createShadowAliasTokens('dark'),\n spacing: defaultFluentTheme.spacing,\n components: {},\n host: { appearance: 'dark' },\n};\nexport var defaultFluentHighConstrastTheme = {\n colors: getStockWebHCPalette(),\n typography: defaultFluentTheme.typography,\n shadows: createShadowAliasTokens('highContrast'),\n spacing: defaultFluentTheme.spacing,\n components: {},\n host: { appearance: 'highContrast' },\n};\n//# sourceMappingURL=defaultTheme.js.map","import globalTokens from '@fluentui-react-native/design-tokens-windows/light/tokens-global.json';\nexport default globalTokens;\n//# sourceMappingURL=tokens-global.js.map","import hcShadowTokens from '@fluentui-react-native/design-tokens-win32/hc/tokens-shadow.json';\nimport darkAliasTokens from '@fluentui-react-native/design-tokens-windows/dark/tokens-aliases.json';\nimport darkShadowTokens from '@fluentui-react-native/design-tokens-windows/dark/tokens-shadow.json';\nimport lightAliasTokens from '@fluentui-react-native/design-tokens-windows/light/tokens-aliases.json';\nimport lightShadowTokens from '@fluentui-react-native/design-tokens-windows/light/tokens-shadow.json';\nimport { assertNever } from 'assert-never';\nimport { hcAliasTokens } from './highContrast/tokens-alias';\nexport function getAliasTokens(mode) {\n if (mode === 'light') {\n return lightAliasTokens;\n }\n else if (mode === 'dark' || mode === 'darkElevated') {\n return darkAliasTokens;\n }\n else if (mode === 'highContrast') {\n return hcAliasTokens;\n }\n else {\n assertNever(mode);\n }\n return lightAliasTokens;\n}\nexport function getShadowTokens(mode) {\n if (mode === 'light') {\n return lightShadowTokens;\n }\n else if (mode === 'dark') {\n return darkShadowTokens;\n }\n // HC mode.\n return hcShadowTokens;\n}\n//# sourceMappingURL=getTokens.js.map","import { PlatformColor } from 'react-native';\nimport aliasTokens from '@fluentui-react-native/design-tokens-win32/hc/tokens-aliases.json';\nexport var hcAliasTokens = processAliasTokens(aliasTokens);\nfunction processAliasTokens(aliasTokens) {\n for (var key in aliasTokens) {\n for (var innerKey in aliasTokens[key]) {\n var entry = aliasTokens[key][innerKey];\n if (typeof entry === 'string' && entry.includes('PlatformColor')) {\n var color = 'SystemColor' + entry.substring(14, entry.length - 1) + 'Color';\n aliasTokens[key][innerKey] = PlatformColor(color);\n }\n }\n }\n return aliasTokens;\n}\n//# sourceMappingURL=tokens-alias.js.map","import { Appearance } from 'react-native';\nexport function getCurrentAppearance(appearance, fallback) {\n if (appearance === undefined) {\n return fallback;\n }\n return appearance === 'dynamic' ? (Appearance && Appearance.getColorScheme()) || fallback : appearance;\n}\n//# sourceMappingURL=getCurrentAppearance.js.map","var isHighContrastEnabled = false;\n/**\n * Used to set isHighContrast state for FURN\n * Specifically for macOS, where you cannot ask for HC state,\n * so you have to store the value to keep track of it.\n *\n * @platform macOS\n * @param isHighContrast New value of high contrast state\n */\nexport function setIsHighContrast(isHighContrast) {\n isHighContrastEnabled = isHighContrast;\n}\n/**\n * Gives the state of high contrast in FURN.\n * On win32, the t parameter is required, but on other platforms\n * it's not needed.\n *\n * @param t The Theme object. Required on win32.\n */\nexport function isHighContrast(_t) {\n return isHighContrastEnabled;\n}\n//# sourceMappingURL=isHighContrast.macos.js.map","export function mapPipelineToTheme(pipelineOutput) {\n return {\n neutralForeground1: pipelineOutput.neutralForeground1.rest,\n neutralForeground1Hover: pipelineOutput.neutralForeground1.hover,\n neutralForeground1Pressed: pipelineOutput.neutralForeground1.pressed,\n neutralForeground1Selected: pipelineOutput.neutralForeground1.selected,\n neutralForeground2: pipelineOutput.neutralForeground2.rest,\n neutralForeground2Hover: pipelineOutput.neutralForeground2.hover,\n neutralForeground2Pressed: pipelineOutput.neutralForeground2.pressed,\n neutralForeground2Selected: pipelineOutput.neutralForeground2.selected,\n neutralForeground2BrandHover: pipelineOutput.neutralForeground2.brandHover,\n neutralForeground2BrandPressed: pipelineOutput.neutralForeground2.brandPressed,\n neutralForeground2BrandSelected: pipelineOutput.neutralForeground2.brandSelected,\n neutralForeground3: pipelineOutput.neutralForeground3.rest,\n neutralForeground3Hover: pipelineOutput.neutralForeground3.hover,\n neutralForeground3Pressed: pipelineOutput.neutralForeground3.pressed,\n neutralForeground3Selected: pipelineOutput.neutralForeground3.selected,\n neutralForeground3BrandHover: pipelineOutput.neutralForeground3.brandHover,\n neutralForeground3BrandPressed: pipelineOutput.neutralForeground3.brandPressed,\n neutralForeground3BrandSelected: pipelineOutput.neutralForeground3.brandSelected,\n neutralForeground4: pipelineOutput.neutralForeground4.rest,\n neutralForegroundDisabled: pipelineOutput.neutralForegroundDisabled.rest,\n brandForegroundLink: pipelineOutput.brandForegroundLink.rest,\n brandForegroundLinkHover: pipelineOutput.brandForegroundLink.hover,\n brandForegroundLinkPressed: pipelineOutput.brandForegroundLink.pressed,\n brandForegroundLinkSelected: pipelineOutput.brandForegroundLink.selected,\n compoundBrandForeground1: pipelineOutput.compoundBrandForeground1.rest,\n compoundBrandForeground1Hover: pipelineOutput.compoundBrandForeground1.hover,\n compoundBrandForeground1Pressed: pipelineOutput.compoundBrandForeground1.pressed,\n brandForeground1: pipelineOutput.brandForeground1.rest,\n brandForeground1Disabled: pipelineOutput.brandForeground1.disabled,\n brandForeground1Pressed: pipelineOutput.brandForeground1.pressed,\n brandForeground2: pipelineOutput.brandForeground2.rest,\n neutralForegroundInverted: pipelineOutput.neutralForegroundInverted.rest,\n neutralForegroundOnBrand: pipelineOutput.neutralForegroundOnBrand.rest,\n neutralForegroundOnBrandHover: pipelineOutput.neutralForegroundOnBrand.hover,\n neutralForegroundOnBrandPressed: pipelineOutput.neutralForegroundOnBrand.pressed,\n neutralForegroundOnBrandSelected: pipelineOutput.neutralForegroundOnBrand.selected,\n neutralForegroundInvertedLink: pipelineOutput.neutralForegroundInvertedLink.rest,\n neutralForegroundInvertedLinkHover: pipelineOutput.neutralForegroundInvertedLink.hover,\n neutralForegroundInvertedLinkPressed: pipelineOutput.neutralForegroundInvertedLink.pressed,\n neutralForegroundInvertedLinkSelected: pipelineOutput.neutralForegroundInvertedLink.selected,\n neutralBackground1: pipelineOutput.neutralBackground1.rest,\n neutralBackground1Hover: pipelineOutput.neutralBackground1.hover,\n neutralBackground1Pressed: pipelineOutput.neutralBackground1.pressed,\n neutralBackground1Selected: pipelineOutput.neutralBackground1.selected,\n neutralBackground2: pipelineOutput.neutralBackground2.rest,\n neutralBackground2Hover: pipelineOutput.neutralBackground2.hover,\n neutralBackground2Pressed: pipelineOutput.neutralBackground2.pressed,\n neutralBackground2Selected: pipelineOutput.neutralBackground2.selected,\n neutralBackground3: pipelineOutput.neutralBackground3.rest,\n neutralBackground3Hover: pipelineOutput.neutralBackground3.hover,\n neutralBackground3Pressed: pipelineOutput.neutralBackground3.pressed,\n neutralBackground3Selected: pipelineOutput.neutralBackground3.selected,\n neutralBackground4: pipelineOutput.neutralBackground4.rest,\n neutralBackground4Hover: pipelineOutput.neutralBackground4.hover,\n neutralBackground4Pressed: pipelineOutput.neutralBackground4.pressed,\n neutralBackground4Selected: pipelineOutput.neutralBackground4.selected,\n neutralBackground5: pipelineOutput.neutralBackground5.rest,\n neutralBackground5Hover: pipelineOutput.neutralBackground5.hover,\n neutralBackground5Pressed: pipelineOutput.neutralBackground5.pressed,\n neutralBackground5Selected: pipelineOutput.neutralBackground5.selected,\n neutralBackground6: pipelineOutput.neutralBackground6.rest,\n neutralBackgroundInverted: pipelineOutput.neutralBackgroundInverted.rest,\n subtleBackground: pipelineOutput.subtleBackground.rest,\n subtleBackgroundHover: pipelineOutput.subtleBackground.hover,\n subtleBackgroundPressed: pipelineOutput.subtleBackground.pressed,\n subtleBackgroundSelected: pipelineOutput.subtleBackground.selected,\n transparentBackground: pipelineOutput.transparentBackground.rest,\n transparentBackgroundHover: pipelineOutput.transparentBackground.hover,\n transparentBackgroundPressed: pipelineOutput.transparentBackground.pressed,\n transparentBackgroundSelected: pipelineOutput.transparentBackground.selected,\n neutralBackgroundDisabled: pipelineOutput.neutralBackgroundDisabled.rest,\n neutralStencil1: pipelineOutput.neutralStencil1.rest,\n neutralStencil2: pipelineOutput.neutralStencil2.rest,\n brandBackground: pipelineOutput.brandBackground.rest,\n brandBackgroundHover: pipelineOutput.brandBackground.hover,\n brandBackgroundPressed: pipelineOutput.brandBackground.pressed,\n brandBackgroundDisabled: pipelineOutput.brandBackground.disabled,\n brandBackgroundSelected: pipelineOutput.brandBackground.selected,\n compoundBrandBackground1: pipelineOutput.compoundBrandBackground1.rest,\n compoundBrandBackground1Hover: pipelineOutput.compoundBrandBackground1.hover,\n compoundBrandBackground1Pressed: pipelineOutput.compoundBrandBackground1.pressed,\n brandBackgroundStatic: pipelineOutput.brandBackgroundStatic.rest,\n brandBackground2: pipelineOutput.brandBackground2.rest,\n neutralStrokeAccessible: pipelineOutput.neutralStrokeAccessible.rest,\n neutralStrokeAccessibleHover: pipelineOutput.neutralStrokeAccessible.hover,\n neutralStrokeAccessiblePressed: pipelineOutput.neutralStrokeAccessible.pressed,\n neutralStrokeAccessibleSelected: pipelineOutput.neutralStrokeAccessible.selected,\n neutralStroke1: pipelineOutput.neutralStroke1.rest,\n neutralStroke1Hover: pipelineOutput.neutralStroke1.hover,\n neutralStroke1Pressed: pipelineOutput.neutralStroke1.pressed,\n neutralStroke1Selected: pipelineOutput.neutralStroke1.selected,\n neutralStroke2: pipelineOutput.neutralStroke2.rest,\n neutralStroke3: pipelineOutput.neutralStroke3.rest,\n brandStroke1: pipelineOutput.brandStroke1.rest,\n brandStroke2: pipelineOutput.brandStroke2.rest,\n compoundBrandStroke1: pipelineOutput.compoundBrandStroke1.rest,\n compoundBrandStroke1Hover: pipelineOutput.compoundBrandStroke1.hover,\n compoundBrandStroke1Pressed: pipelineOutput.compoundBrandStroke1.pressed,\n neutralStrokeDisabled: pipelineOutput.neutralStrokeDisabled.rest,\n transparentStroke: pipelineOutput.transparentStroke.rest,\n transparentStrokeInteractive: pipelineOutput.transparentStroke.hover,\n transparentStrokeDisabled: pipelineOutput.transparentStroke.disabled,\n strokeFocus1: pipelineOutput.strokeFocus1.rest,\n strokeFocus2: pipelineOutput.strokeFocus2.rest,\n dangerBackground1: pipelineOutput.dangerBackground1.rest,\n dangerBackground2: pipelineOutput.dangerBackground2.rest,\n dangerBackground3: pipelineOutput.dangerBackground3.rest,\n dangerForeground1: pipelineOutput.dangerForeground1.rest,\n dangerForeground2: pipelineOutput.dangerForeground2.rest,\n dangerForeground3: pipelineOutput.dangerForeground3.rest,\n dangerForegroundInverted: pipelineOutput.dangerForegroundInverted.rest,\n dangerBorderActive: pipelineOutput.dangerBorderActive.rest,\n dangerBorder1: pipelineOutput.dangerBorder1.rest,\n dangerBorder2: pipelineOutput.dangerBorder2.rest,\n successBackground1: pipelineOutput.successBackground1.rest,\n successBackground2: pipelineOutput.successBackground2.rest,\n successBackground3: pipelineOutput.successBackground3.rest,\n successForeground1: pipelineOutput.successForeground1.rest,\n successForeground2: pipelineOutput.successForeground2.rest,\n successForeground3: pipelineOutput.successForeground3.rest,\n successForegroundInverted: pipelineOutput.successForegroundInverted.rest,\n successBorderActive: pipelineOutput.successBorderActive.rest,\n successBorder1: pipelineOutput.successBorder1.rest,\n successBorder2: pipelineOutput.successBorder2.rest,\n warningBackground1: pipelineOutput.warningBackground1.rest,\n warningBackground2: pipelineOutput.warningBackground2.rest,\n warningBackground3: pipelineOutput.warningBackground3.rest,\n warningForeground1: pipelineOutput.warningForeground1.rest,\n warningForeground2: pipelineOutput.warningForeground2.rest,\n warningForeground3: pipelineOutput.warningForeground3.rest,\n warningForegroundInverted: pipelineOutput.warningForegroundInverted.rest,\n warningBorderActive: pipelineOutput.warningBorderActive.rest,\n warningBorder1: pipelineOutput.warningBorder1.rest,\n warningBorder2: pipelineOutput.warningBorder2.rest,\n severeBackground1: pipelineOutput.severeBackground1.rest,\n severeBackground2: pipelineOutput.severeBackground2.rest,\n severeBackground3: pipelineOutput.severeBackground3.rest,\n severeForeground1: pipelineOutput.severeForeground1.rest,\n severeForeground2: pipelineOutput.severeForeground2.rest,\n severeForeground3: pipelineOutput.severeForeground3.rest,\n severeBorderActive: pipelineOutput.severeBorderActive.rest,\n severeBorder1: pipelineOutput.severeBorder1.rest,\n severeBorder2: pipelineOutput.severeBorder2.rest,\n outofofficeBackground1: pipelineOutput.outofofficeBackground1.rest,\n outofofficeBackground2: pipelineOutput.outofofficeBackground2.rest,\n outofofficeBackground3: pipelineOutput.outofofficeBackground3.rest,\n outofofficeForeground1: pipelineOutput.outofofficeForeground1.rest,\n outofofficeForeground2: pipelineOutput.outofofficeForeground2.rest,\n outofofficeForeground3: pipelineOutput.outofofficeForeground3.rest,\n outofofficeBorderActive: pipelineOutput.outofofficeBorderActive.rest,\n outofofficeBorder1: pipelineOutput.outofofficeBorder1.rest,\n outofofficeBorder2: pipelineOutput.outofofficeBorder2.rest,\n };\n}\nexport function mapFontPipelineToTheme(pipelineOutput) {\n return {\n caption1: createVariantValue(pipelineOutput.caption1),\n body1: createVariantValue(pipelineOutput.body1),\n body1Strong: createVariantValue(pipelineOutput.body1Strong),\n body2: createVariantValue(pipelineOutput.body2),\n body2Strong: createVariantValue(pipelineOutput.body2Strong),\n subtitle1: createVariantValue(pipelineOutput.subtitle1),\n subtitle1Strong: createVariantValue(pipelineOutput.subtitle1Strong),\n subtitle2: createVariantValue(pipelineOutput.subtitle2),\n subtitle2Strong: createVariantValue(pipelineOutput.subtitle2Strong),\n title1: createVariantValue(pipelineOutput.title1),\n title1Strong: createVariantValue(pipelineOutput.title1Strong),\n largeTitle: createVariantValue(pipelineOutput.largeTitle),\n display: createVariantValue(pipelineOutput.display),\n };\n}\nfunction createVariantValue(variant) {\n return { face: 'primary', size: variant.fontSize, weight: variant.fontWeight };\n}\n//# sourceMappingURL=mapPipelineToTheme.js.map","/**\n * Given design token pipeline output for shadow tokens, creates an object that can be used in Theme object.\n * @param pipelineOutputShadow Assumes that this is the object in the tokens-shadow.json file of the pipeline output\n * @returns Object containing shadow tokens\n */\nexport function mapPipelineToShadow(pipelineOutputShadow) {\n return {\n shadow2: { ambient: pipelineOutputShadow.shadow2[0], key: pipelineOutputShadow.shadow2[1] },\n shadow4: { ambient: pipelineOutputShadow.shadow4[0], key: pipelineOutputShadow.shadow4[1] },\n shadow8: { ambient: pipelineOutputShadow.shadow8[0], key: pipelineOutputShadow.shadow8[1] },\n shadow16: { ambient: pipelineOutputShadow.shadow16[0], key: pipelineOutputShadow.shadow16[1] },\n shadow28: { ambient: pipelineOutputShadow.shadow28[0], key: pipelineOutputShadow.shadow28[1] },\n shadow64: { ambient: pipelineOutputShadow.shadow64[0], key: pipelineOutputShadow.shadow64[1] },\n shadow2brand: { ambient: pipelineOutputShadow.shadowBrand2[0], key: pipelineOutputShadow.shadowBrand2[1] },\n shadow4brand: { ambient: pipelineOutputShadow.shadowBrand4[0], key: pipelineOutputShadow.shadowBrand4[1] },\n shadow8brand: { ambient: pipelineOutputShadow.shadowBrand8[0], key: pipelineOutputShadow.shadowBrand8[1] },\n shadow16brand: { ambient: pipelineOutputShadow.shadowBrand16[0], key: pipelineOutputShadow.shadowBrand16[1] },\n shadow28brand: { ambient: pipelineOutputShadow.shadowBrand28[0], key: pipelineOutputShadow.shadowBrand28[1] },\n shadow64brand: { ambient: pipelineOutputShadow.shadowBrand64[0], key: pipelineOutputShadow.shadowBrand64[1] },\n };\n}\n//# sourceMappingURL=mapPipelineToShadow.js.map","import { memoize } from '@fluentui-react-native/memo-cache';\nimport { getAliasTokens, getShadowTokens } from '@fluentui-react-native/theme-tokens';\nimport { mapPipelineToShadow, mapPipelineToTheme } from '@fluentui-react-native/theming-utils';\nfunction createColorAliasTokensWorker(mode) {\n var aliasTokens = getAliasTokens(mode);\n return mapPipelineToTheme(aliasTokens);\n}\nexport var createColorAliasTokens = memoize(createColorAliasTokensWorker);\nfunction createShadowAliasTokensWorker(mode) {\n var aliasTokens = getShadowTokens(mode);\n return mapPipelineToShadow(aliasTokens);\n}\nexport var createShadowAliasTokens = memoize(createShadowAliasTokensWorker);\n//# sourceMappingURL=createAliasTokens.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nimport { createColorAliasTokens } from './createAliasTokens';\n/**\n * Generate a palette from a set of fabric web colors, like those output from the theme designer.\n *\n * @param palette - fabric web palette definition. This allows initializing our color values in the same\n * manner the fabric web does it\n */\nexport function paletteFromFabricColors(p, isInverted) {\n return {\n background: p.white,\n bodyStandoutBackground: p.neutralLighterAlt,\n bodyFrameBackground: p.white,\n bodyFrameDivider: p.neutralLight,\n bodyText: p.neutralPrimary,\n bodyTextChecked: p.black,\n subText: p.neutralSecondary,\n bodyDivider: p.neutralLight,\n disabledBackground: isInverted ? p.neutralQuaternaryAlt : p.neutralLighter,\n disabledText: p.neutralTertiary,\n disabledBodyText: p.neutralTertiary,\n focusBorder: p.neutralSecondary,\n variantBorder: p.neutralLight,\n errorText: !isInverted ? p.redDark : '#ff5f5f',\n inputBorder: p.neutralTertiary,\n inputBackground: p.white,\n inputFocusBorderAlt: p.themePrimary,\n inputText: p.neutralPrimary,\n inputPlaceholderText: p.neutralSecondary,\n buttonBackground: p.neutralLighter,\n buttonBackgroundChecked: p.neutralTertiaryAlt,\n buttonBackgroundHovered: p.neutralLight,\n buttonBackgroundPressed: p.neutralLight,\n buttonBackgroundDisabled: p.neutralLighter,\n buttonBorder: p.neutralSecondaryAlt,\n buttonText: isInverted ? p.black : p.neutralPrimary,\n buttonTextHovered: isInverted ? p.neutralPrimary : p.neutralDark,\n buttonTextChecked: p.neutralDark,\n buttonTextPressed: p.neutralDark,\n buttonTextDisabled: p.neutralTertiary,\n buttonBorderDisabled: p.neutralLighter,\n buttonBorderFocused: p.neutralSecondaryAlt,\n primaryButtonBackground: p.themePrimary,\n primaryButtonBackgroundHovered: p.themeDarkAlt,\n primaryButtonBackgroundPressed: p.themeDark,\n primaryButtonBackgroundDisabled: p.neutralLighter,\n primaryButtonBorder: 'transparent',\n primaryButtonBorderFocused: 'transparent',\n primaryButtonText: p.white,\n primaryButtonTextHovered: p.white,\n primaryButtonTextPressed: p.white,\n primaryButtonTextDisabled: p.neutralQuaternary,\n accentButtonBackground: p.accent,\n menuBackground: isInverted ? p.neutralLighter : p.white,\n menuDivider: isInverted ? p.neutralTertiaryAlt : p.neutralTertiaryAlt,\n menuIcon: isInverted ? p.themeDarkAlt : p.themePrimary,\n menuItemBackgroundHovered: isInverted ? p.neutralQuaternaryAlt : p.neutralLighter,\n menuItemBackgroundPressed: isInverted ? p.neutralQuaternary : p.neutralLight,\n menuItemText: p.neutralPrimary,\n menuItemTextHovered: p.neutralDark,\n listHeaderBackgroundHovered: p.neutralLighter,\n listHeaderBackgroundPressed: p.neutralLight,\n actionLink: p.neutralPrimary,\n link: p.themePrimary,\n linkHovered: p.themeDarker,\n linkPressed: p.themeDark,\n // Control Color Tokens\n defaultBackground: p.neutralLighter,\n defaultBorder: p.neutralSecondaryAlt,\n defaultContent: isInverted ? p.black : p.neutralPrimary,\n defaultIcon: isInverted ? p.black : p.neutralPrimary,\n defaultHoveredBackground: p.neutralLight,\n defaultHoveredBorder: p.neutralSecondaryAlt,\n defaultHoveredContent: isInverted ? p.neutralPrimary : p.neutralDark,\n defaultHoveredIcon: isInverted ? p.neutralPrimary : p.neutralDark,\n defaultFocusedBackground: p.neutralLight,\n defaultFocusedBorder: p.neutralSecondaryAlt,\n defaultFocusedContent: isInverted ? p.neutralPrimary : p.neutralDark,\n defaultFocusedIcon: isInverted ? p.neutralPrimary : p.neutralDark,\n defaultPressedBackground: p.neutralLight,\n defaultPressedBorder: p.neutralSecondaryAlt,\n defaultPressedContent: p.neutralDark,\n defaultPressedIcon: p.neutralDark,\n defaultDisabledBackground: p.neutralLighter,\n defaultDisabledBorder: p.neutralLighter,\n defaultDisabledContent: p.neutralTertiary,\n defaultDisabledIcon: p.neutralTertiary,\n ghostBackground: p.white,\n ghostBorder: p.white,\n ghostContent: p.neutralPrimary,\n ghostIcon: p.neutralPrimary,\n ghostHoveredBackground: p.neutralLighter,\n ghostHoveredBorder: p.neutralLighter,\n ghostHoveredContent: p.neutralDark,\n ghostHoveredIcon: p.neutralDark,\n ghostFocusedBackground: p.neutralLighter,\n ghostFocusedBorder: p.neutralSecondaryAlt,\n ghostFocusedContent: p.neutralDark,\n ghostFocusedIcon: p.neutralDark,\n ghostPressedBackground: p.neutralLight,\n ghostPressedBorder: p.neutralLight,\n ghostPressedContent: p.neutralDark,\n ghostPressedIcon: p.neutralDark,\n ghostDisabledBackground: p.white,\n ghostDisabledBorder: p.white,\n ghostDisabledContent: p.neutralTertiary,\n ghostDisabledIcon: p.neutralTertiary,\n brandedBackground: p.themePrimary,\n brandedDisabledBorder: p.neutralLighter,\n defaultCheckedBackground: p.neutralTertiaryAlt,\n defaultCheckedContent: p.neutralDark,\n defaultCheckedHoveredBackground: p.neutralLight,\n defaultCheckedHoveredContent: isInverted ? p.neutralPrimary : p.neutralDark,\n ghostCheckedBackground: p.neutralLight,\n ghostCheckedContent: p.black,\n ghostCheckedHoveredBackground: p.neutralLighter,\n ghostCheckedHoveredContent: p.neutralDark,\n ghostCheckedHoveredBorder: p.neutralDark,\n ghostSecondaryContent: p.neutralSecondary,\n ghostFocusedSecondaryContent: p.neutralSecondary,\n ghostHoveredSecondaryContent: p.neutralSecondary,\n ghostPressedSecondaryContent: p.neutralSecondary,\n brandedSecondaryContent: p.neutralLighterAlt,\n brandedFocusedSecondaryContent: p.neutralLighterAlt,\n brandedHoveredSecondaryContent: p.neutralLighterAlt,\n brandedPressedSecondaryContent: p.neutralLighterAlt,\n defaultHoveredSecondaryContent: p.neutralTertiary,\n defaultPressedSecondaryContent: p.neutralTertiary,\n checkmarkColor: p.white,\n checkboxBackground: p.themePrimary,\n checkboxBackgroundDisabled: p.neutralLighter,\n checkboxBorderColor: p.neutralSecondaryAlt,\n personaActivityRing: p.white,\n personaActivityGlow: p.themePrimary,\n };\n}\nexport function getStockWebHCPalette() {\n return __assign({ background: '#000000', bodyStandoutBackground: '#000000', bodyFrameBackground: '#000000', bodyFrameDivider: '#000000', bodyText: '#ffffff', bodyTextChecked: '#000000', subText: '#ffffff', bodyDivider: '#ffffff', disabledBackground: '#000000', disabledText: '#3ff23f', disabledBodyText: '#3ff23f', focusBorder: '#ffffff', variantBorder: '#ffffff', errorText: '#ffffff', inputBorder: '#ffffff', inputBackground: '#000000', inputFocusBorderAlt: '#ffffff', inputText: '#ffffff', inputPlaceholderText: '#ffffff', buttonBackground: '#000000', buttonBackgroundChecked: '#1aebff', buttonBackgroundHovered: '#1aebff', buttonBackgroundPressed: '#1aebff', buttonBackgroundDisabled: '#000000', buttonBorder: '#ffffff', buttonText: '#ffffff', buttonTextHovered: '#000000', buttonTextChecked: '#000000', buttonTextPressed: '#000000', buttonTextDisabled: '#3ff23f', buttonBorderDisabled: '#3ff23f', buttonBorderFocused: '#ffffff', primaryButtonBackground: '#000000', primaryButtonBackgroundHovered: '#1aebff', primaryButtonBackgroundPressed: '#1aebff', primaryButtonBackgroundDisabled: '#000000', primaryButtonBorder: '#ffffff', primaryButtonBorderFocused: '#ffffff', primaryButtonText: '#ffffff', primaryButtonTextHovered: '#000000', primaryButtonTextPressed: '#000000', primaryButtonTextDisabled: '#3ff23f', accentButtonBackground: '#000000', menuBackground: '#000000', menuDivider: '#ffffff', menuIcon: '#ffffff', menuItemBackgroundHovered: '#1aebff', menuItemBackgroundPressed: '#1aebff', menuItemText: '#ffffff', menuItemTextHovered: '#000000', listHeaderBackgroundHovered: '#1aebff', listHeaderBackgroundPressed: '#1aebff', actionLink: '#ffff00', link: '#ffff00', linkHovered: '#ffffff', linkPressed: '#ffffff', \n // Control Color Tokens\n defaultBackground: '#000000', defaultBorder: '#ffffff', defaultContent: '#ffffff', defaultIcon: '#ffffff', defaultHoveredBackground: '#1aebff', defaultHoveredBorder: '#1aebff', defaultHoveredContent: '#000000', defaultHoveredIcon: '#000000', defaultFocusedBackground: '#000000', defaultFocusedBorder: '#ffffff', defaultFocusedContent: '#ffffff', defaultFocusedIcon: '#ffffff', defaultPressedBackground: '#1aebff', defaultPressedBorder: '#1aebff', defaultPressedContent: '#000000', defaultPressedIcon: '#000000', defaultDisabledBackground: '#000000', defaultDisabledBorder: '#3ff23f', defaultDisabledContent: '#3ff23f', defaultDisabledIcon: '#3ff23f', ghostBackground: '#000000', ghostBorder: '#000000', ghostContent: '#ffffff', ghostIcon: '#ffffff', ghostHoveredBackground: '#1aebff', ghostHoveredBorder: '#1aebff', ghostHoveredContent: '#000000', ghostHoveredIcon: '#000000', ghostFocusedBackground: '#000000', ghostFocusedBorder: '#ffffff', ghostFocusedContent: '#ffffff', ghostFocusedIcon: '#ffffff', ghostPressedBackground: '#1aebff', ghostPressedBorder: '#1aebff', ghostPressedContent: '#000000', ghostPressedIcon: '#000000', ghostDisabledBackground: '#000000', ghostDisabledBorder: '#000000', ghostDisabledContent: '#3ff23f', ghostDisabledIcon: '#3ff23f', brandedBackground: '#000000', brandedDisabledBorder: '#3ff23f', defaultCheckedBackground: '#1aebff', defaultCheckedContent: '#000000', defaultCheckedHoveredBackground: '#1aebff', defaultCheckedHoveredContent: '#000000', ghostCheckedBackground: '#1aebff', ghostCheckedContent: '#000000', ghostCheckedHoveredBackground: '#1aebff', ghostCheckedHoveredContent: '#000000', ghostCheckedHoveredBorder: '#000000', ghostSecondaryContent: '#ffffff', ghostFocusedSecondaryContent: '#ffffff', ghostHoveredSecondaryContent: '#000000', ghostPressedSecondaryContent: '#000000', brandedSecondaryContent: '#ffffff', brandedFocusedSecondaryContent: '#ffffff', brandedHoveredSecondaryContent: '#000000', brandedPressedSecondaryContent: '#000000', defaultHoveredSecondaryContent: '#000000', defaultPressedSecondaryContent: '#000000', checkmarkColor: '#ffffff', checkboxBackground: '#000000', checkboxBackgroundDisabled: '#000000', checkboxBorderColor: '#ffffff', personaActivityRing: '#ffffff', personaActivityGlow: 'transparent' }, createColorAliasTokens('highContrast'));\n}\n//# sourceMappingURL=defaultColors.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\n/* eslint-disable @typescript-eslint/ban-ts-comment */\nimport { globalTokens } from '@fluentui-react-native/theme-tokens';\nimport { createColorAliasTokens } from './createAliasTokens';\nimport { paletteFromFabricColors } from './defaultColors';\nexport function getStockWebPalette() {\n return __assign(__assign({}, paletteFromFabricColors({\n black: globalTokens.color.black,\n neutralDark: '#201f1e',\n neutralPrimary: '#323130',\n neutralPrimaryAlt: '#3b3a39',\n neutralSecondary: '#605e5c',\n neutralSecondaryAlt: '#8a8886',\n neutralTertiary: '#a19f9d',\n neutralTertiaryAlt: '#c8c6c4',\n neutralQuaternary: '#d2d0ce',\n neutralQuaternaryAlt: '#e1dfdd',\n neutralLight: '#edebe9',\n neutralLighter: '#f3f2f1',\n neutralLighterAlt: '#faf9f8',\n white: globalTokens.color.white,\n // Shared Colors\n red: globalTokens.color.red.primary,\n redDark: globalTokens.color.burgundy.primary,\n themeDarker: globalTokens.color.brand.shade40,\n themeDark: globalTokens.color.brand.shade20,\n themeDarkAlt: globalTokens.color.brand.shade10,\n themePrimary: globalTokens.color.brand.primary,\n themeSecondary: '#2b88d8',\n themeTertiary: '#71afe5',\n themeLight: globalTokens.color.brand.tint40,\n themeLighter: globalTokens.color.brand.tint50,\n themeLighterAlt: globalTokens.color.brand.tint60,\n accent: globalTokens.color.brand.primary,\n blackTranslucent40: 'rgba(0,0,0,.4)',\n })), createColorAliasTokens('light'));\n}\nexport function getStockWebDarkPalette() {\n return __assign(__assign({}, paletteFromFabricColors({\n // colors taken from fluentui DarkCustomizations.ts\n themeDarker: '#82c7ff',\n themeDark: globalTokens.color.brand.tint30,\n themeDarkAlt: globalTokens.color.brand.tint20,\n themePrimary: globalTokens.color.brand.tint10,\n themeSecondary: globalTokens.color.brand.primary,\n themeTertiary: '#235a85',\n themeLight: globalTokens.color.brand.shade30,\n themeLighter: globalTokens.color.brand.shade50,\n themeLighterAlt: globalTokens.color.brand.shade60,\n black: globalTokens.color.white,\n neutralDark: '#faf9f8',\n neutralPrimary: '#f3f2f1',\n neutralPrimaryAlt: '#c8c6c4',\n neutralSecondary: '#a19f9d',\n neutralSecondaryAlt: '#979693',\n neutralTertiary: '#797775',\n neutralTertiaryAlt: '#484644',\n neutralQuaternary: '#3b3a39',\n neutralQuaternaryAlt: '#323130',\n neutralLight: '#292827',\n neutralLighter: '#252423',\n neutralLighterAlt: '#201f1e',\n white: '#1b1a19',\n red: globalTokens.color.red.primary,\n accent: globalTokens.color.brand.primary,\n redDark: '#f1707b',\n blackTranslucent40: 'rgba(0,0,0,.4)',\n }, true)), createColorAliasTokens('dark'));\n}\n//# sourceMappingURL=stockWebPalette.macos.js.map","import { Appearance } from 'react-native';\nimport { ThemeReference } from '@fluentui-react-native/theme';\nimport { getCurrentAppearance } from '@fluentui-react-native/theming-utils';\nimport assertNever from 'assert-never';\nimport { defaultFluentDarkTheme, defaultFluentHighConstrastTheme, defaultFluentTheme } from './defaultTheme';\nexport function createDefaultTheme(options) {\n if (options === void 0) { options = {}; }\n var themeRef = new ThemeReference({}, function () {\n var current = getCurrentAppearance(options.appearance, options.defaultAppearance || 'light');\n switch (current) {\n case 'light':\n return defaultFluentTheme;\n case 'dark':\n return defaultFluentDarkTheme;\n case 'darkElevated':\n return defaultFluentDarkTheme;\n case 'highContrast':\n return defaultFluentHighConstrastTheme;\n default:\n assertNever(current);\n }\n });\n if (Appearance && options.appearance === 'dynamic') {\n Appearance.addChangeListener(function () {\n themeRef.invalidate();\n });\n }\n return themeRef;\n}\n//# sourceMappingURL=createDefaultTheme.js.map","import * as React from 'react';\nimport { ThemeContext } from '@fluentui-react-native/theme-types';\nexport var ThemeProvider = function (props) {\n var themeRef = props.theme, children = props.children;\n var _a = React.useState(function () { return themeRef.theme; }), theme = _a[0], setThemeState = _a[1];\n React.useEffect(function () {\n // If the theme passed by prop is different, we directly update state. We also add a listener to update state if there's a change within the passed theme.\n setThemeState(themeRef.theme);\n var onInvalidate = function () {\n setThemeState(themeRef.theme);\n };\n themeRef.addOnThemeChanged(onInvalidate);\n return function () {\n themeRef.removeOnThemeChanged(onInvalidate);\n };\n }, [themeRef, setThemeState]);\n return React.createElement(ThemeContext.Provider, { value: theme }, children);\n};\n//# sourceMappingURL=ThemeProvider.js.map","import { immutableMerge } from '@fluentui-react-native/immutable-merge';\nexport function mergeTheme(base, partial) {\n return immutableMerge(base, partial);\n}\n//# sourceMappingURL=mergeTheme.js.map","import { mergeTheme } from './mergeTheme';\n/**\n * Provides a wrapper around a theme object, allowing the ability to create a theme from another theme, to listen to theme\n * changes, and to update the theme.\n *\n * This is the object that is designed to be handed to a theme provider, such that it can listen for changes and set the\n * value into context again.\n */\nvar ThemeReference = /** @class */ (function () {\n /**\n * Create the theme reference, either as a plain wrapper, or a wrapper with additional transforms and/or merging\n * @param base - can be either another ThemeReference object, or a fully specified theme\n * @param recipes - any number of recipes to be applied on top of the theme object\n */\n function ThemeReference(base) {\n var recipes = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n recipes[_i - 1] = arguments[_i];\n }\n var _this = this;\n this.themeData = undefined;\n this.listeners = [];\n this.parentRef = undefined;\n this.listeners = [];\n this.recipes = recipes;\n this.parentRef = base instanceof ThemeReference ? base : undefined;\n if (this.parentRef) {\n var onChanged = function () {\n _this.invalidate();\n };\n this.parentRef.addOnThemeChanged(onChanged);\n }\n this.getParent = function () { return (_this.parentRef ? _this.parentRef.theme : base); };\n }\n Object.defineProperty(ThemeReference.prototype, \"theme\", {\n /**\n * get the internal theme object, which will be created on-demand\n */\n get: function () {\n if (!this.themeData) {\n var theme = this.getParent();\n for (var _i = 0, _a = this.recipes; _i < _a.length; _i++) {\n var recipe = _a[_i];\n theme = mergeTheme(theme, typeof recipe === 'function' ? recipe(theme) : recipe);\n }\n this.themeData = theme;\n }\n return this.themeData;\n },\n enumerable: false,\n configurable: true\n });\n /**\n * register a new listener for theme changes\n */\n ThemeReference.prototype.addOnThemeChanged = function (listener) {\n this.listeners.push(listener);\n };\n /**\n * remove a previously registered listener\n */\n ThemeReference.prototype.removeOnThemeChanged = function (listener) {\n this.listeners = this.listeners.filter(function (v) { return v !== listener; });\n };\n /**\n * invalidate the theme, causing it to be regenerated. This can happen via notifications from the parent, but\n * can also be called directly if a functional transform needs to be re-run\n */\n ThemeReference.prototype.invalidate = function () {\n this.themeData = undefined;\n for (var _i = 0, _a = this.listeners; _i < _a.length; _i++) {\n var listener = _a[_i];\n listener();\n }\n };\n /**\n * update the recipes (but not the base) in the theme. This will also implicitly invalidate the theme\n * since the recipes changed.\n */\n ThemeReference.prototype.update = function () {\n var recipes = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n recipes[_i] = arguments[_i];\n }\n this.recipes = recipes || [];\n this.invalidate();\n };\n return ThemeReference;\n}());\nexport { ThemeReference };\n//# sourceMappingURL=themeReference.js.map","import { defaultFluentTheme } from '@fluentui-react-native/default-theme';\nimport { useTheme } from '@fluentui-react-native/theme-types';\n/**\n * Attempts to obtain a theme via the react context, failing that the default fluent theme will be returned. Used to ensure some theme\n * object is provided for looking up color (and other) theme values\n * @returns - a valid Theme object\n */\nexport function useFluentTheme() {\n return useTheme() || defaultFluentTheme;\n}\n//# sourceMappingURL=useFluentTheme.js.map","import { useFluentTheme } from './useFluentTheme';\nexport var themeHelper = {\n useTheme: function () { return useFluentTheme(); },\n getComponentInfo: function (theme, name) {\n var components = theme.components || {};\n return components[name];\n },\n};\n//# sourceMappingURL=themeHelper.js.map","import { composeFactory } from '@fluentui-react-native/composition';\nimport { themeHelper } from './themeHelper';\nexport function compose(options, base) {\n return composeFactory(options, themeHelper, base);\n}\n//# sourceMappingURL=compose.js.map","import { stagedComponent } from '@fluentui-react-native/use-slot';\n/**\n * Utility function which can create function components that can be tree compressed (using the stagedRender pattern),\n * and also have customize functionality.\n * @param fn StagedRender function that defines your component\n * @param useTokens a hook function to build a set of tokens from a passed in theme as well as a cache object\n * @returns A tree compressed function component with the `.customize` method exposed to it\n */\nexport function compressible(fn, useTokens) {\n var injectedWrapper = function (props) { return fn(props, useTokens); };\n var component = stagedComponent(injectedWrapper);\n component.customize = function () {\n var tokens = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n tokens[_i] = arguments[_i];\n }\n var useTokensNew = useTokens.customize.apply(useTokens, tokens);\n return compressible(fn, useTokensNew);\n };\n return component;\n}\n//# sourceMappingURL=compressible.js.map","import { buildUseStyling as buildUseStylingBase, buildProps as buildPropsBase } from '@fluentui-react-native/use-styling';\nimport { themeHelper } from './themeHelper';\nexport function buildProps(fn, keys) {\n return buildPropsBase(fn, keys);\n}\n/**\n * Construct a useStyling hook which returns styled slot props based on props and tokens defined in options and in the theme\n *\n * @param options - options which drive behavior for the generated styling hook\n */\nexport function buildUseStyling(options) {\n // create a cache instance for this use styling implementation\n return buildUseStylingBase(options, themeHelper);\n}\n//# sourceMappingURL=useStyling.js.map","import { __spreadArray } from \"tslib\";\nimport { buildUseTokens as buildUseTokensCore } from '@fluentui-react-native/use-tokens';\nimport { themeHelper } from './themeHelper';\nexport { applyTokenLayers, applyPropsToTokens, customizable, patchTokens } from '@fluentui-react-native/use-tokens';\nexport function buildUseTokens() {\n var tokens = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n tokens[_i] = arguments[_i];\n }\n return buildUseTokensCore.apply(void 0, __spreadArray([themeHelper.getComponentInfo], tokens, false));\n}\n//# sourceMappingURL=useTokens.js.map","import { __assign } from \"tslib\";\nimport { memoize } from '@fluentui-react-native/framework';\nexport var getAccessibilityState = memoize(getAccessibilityStateWorker);\nexport function getAccessibilityStateWorker(disabled, accessibilityState) {\n if (accessibilityState) {\n return __assign({ disabled: disabled }, accessibilityState);\n }\n return { disabled: disabled };\n}\n//# sourceMappingURL=getAccessibilityState.js.map","/* eslint-disable */\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nimport * as React from 'react';\nimport { mergeSettings } from '@uifabricshared/foundation-settings';\nimport { mergeProps } from '@fluentui-react-native/merge-props';\nfunction _mergeAndFilterProps(propsBase, propsExtra, filter) {\n // do a basic merge, not mutating if nothing changed\n var props = mergeProps(propsBase, propsExtra);\n if (filter && props) {\n var removeMask_1 = {};\n Object.getOwnPropertyNames(props).forEach(function (key) {\n if (!filter(key)) {\n removeMask_1[key] = undefined;\n }\n });\n props = mergeProps(props, removeMask_1);\n }\n return props;\n}\n/**\n * Helper function to add the _canCompose settings to a given render function\n * @param fn - function to decorate with _canCompose\n */\nfunction _createSlotRenderFunction(fn) {\n fn._canCompose = true;\n return fn;\n}\nfunction createSlotRenderInfo(composable, slotInfo) {\n var renderInfo = { composable: composable, slotInfo: slotInfo };\n var slots = composable && composable.slots;\n if (slots) {\n var Slots_1 = (renderInfo.Slots = {});\n var childInfo_1 = (renderInfo.childInfo = {});\n Object.getOwnPropertyNames(slots).forEach(function (slot) {\n var _a = slots[slot], slotType = _a.slotType, filter = _a.filter;\n var composable = (typeof slotType !== 'string' && slotType.__composable) ||\n undefined;\n var childRenderInfo = (childInfo_1[slot] = createSlotRenderInfo(composable, slots[slot]));\n if (composable) {\n // create the actual closure for rendering handing it a reference to the render info\n Slots_1[slot] = _createSlotRenderFunction(function (extraProps) {\n var children = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n children[_i - 1] = arguments[_i];\n }\n var renderData = childRenderInfo.renderData, Slots = childRenderInfo.Slots;\n if (filter || extraProps) {\n var toMerge = { root: _mergeAndFilterProps(renderData.slotProps.root, extraProps, filter) };\n renderData.slotProps = mergeSettings(renderData.slotProps, toMerge);\n }\n return composable.render.apply(composable, __spreadArray([Slots, renderData], children, false));\n });\n }\n else {\n // non-composable components should just render directly\n Slots_1[slot] = _createSlotRenderFunction(function (extraProps) {\n var children = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n children[_i - 1] = arguments[_i];\n }\n var props = _mergeAndFilterProps(childRenderInfo.renderData.slotProps.root, extraProps, filter);\n return React.createElement.apply(React, __spreadArray([slotType, props], children, false));\n });\n }\n });\n }\n return renderInfo;\n}\nfunction useUpdateRenderData(props, info) {\n // update the render data for this level of the hierarchy\n if (info.composable) {\n var _a = info.composable, usePrepareProps = _a.usePrepareProps, useStyling = _a.useStyling;\n info.renderData = usePrepareProps(props, useStyling) || {};\n }\n else {\n info.renderData = { slotProps: { root: props } };\n }\n // now traverse to children if needed\n var childInfo = info.childInfo;\n if (childInfo) {\n var slotProps_1 = info.renderData.slotProps || {};\n Object.getOwnPropertyNames(childInfo).forEach(function (child) {\n useUpdateRenderData(slotProps_1[child], childInfo[child]);\n });\n }\n // return the updated renderData and cached Slots\n return { renderData: info.renderData, Slots: info.Slots };\n}\n/**\n * Driver function for the prop preparation phase of rendering a composable control\n *\n * @param props - user props send to prepare props\n * @param composable - composable for this component\n */\nexport function useCompoundPrepare(props, composable) {\n // create the slot render info (which may be a tree) and store it into state once. Note that this will also create any\n // needed closures for the slots to ensure they don't get recreated over the lifetime of the component\n var renderInfo = React.useMemo(function () { return createSlotRenderInfo(composable); }, []);\n // process the props of the tree using the created/retrieved renderInfo\n return useUpdateRenderData(props, renderInfo);\n}\n//# sourceMappingURL=Composable.slots.js.map","/* eslint-disable */\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nimport { immutableMergeCore } from '@fluentui-react-native/immutable-merge';\nimport { mergeProps } from '@fluentui-react-native/merge-props';\n/**\n * an individual settings block is a set of slotProps, with an additional collection of tokens.\n */\nvar _mergeSettingsOptions = {\n // tokens should be merged but not recurse\n tokens: 0,\n // all other objects should be treated as props\n object: mergeProps,\n // overrides have a collection of objects which each are treated as settings\n get _overrides() {\n return { object: this };\n },\n};\n/**\n * A collection of settings simply applies settings down one level\n */\nvar _mergeCollectionOptions = {\n object: _mergeSettingsOptions,\n};\n/**\n * Merge settings together. This routine should work for IComponentSettings types or ISlotProps\n * @param settings - settings to merge together\n */\nexport function mergeSettings() {\n var settings = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n settings[_i] = arguments[_i];\n }\n return immutableMergeCore.apply(void 0, __spreadArray([_mergeSettingsOptions], settings, false));\n}\n/**\n * Merge collections of settings together. This can handle theme resolution or merging sets of overrides\n * @param collections - the settings collections to merge\n */\nexport function mergeSettingsCollection() {\n var collections = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n collections[_i] = arguments[_i];\n }\n return immutableMergeCore.apply(void 0, __spreadArray([_mergeCollectionOptions], collections, false));\n}\nexport function getActiveOverrides(target, lookup) {\n var hasOverride = typeof lookup === 'function' ? lookup : function (o) { return lookup[o]; };\n return (target && target._precedence && target._precedence.filter(function (o) { return hasOverride(o); })) || [];\n}\n/**\n * Apply overrides to `target`, producing a new settings object if any need to be applied.\n *\n * `overrideLookup` is an object where keys will be looked up in the order specified by the precedence array.\n * The values inside this structure can be any type but will cause the override to apply if they are truthy\n */\nexport function resolveSettingsOverrides(target, overrideLookup) {\n var result = target;\n var _overrides = target._overrides, _precedence = target._precedence;\n if (overrideLookup && _overrides && _precedence) {\n var overrides = getActiveOverrides(target, overrideLookup);\n for (var _i = 0, overrides_1 = overrides; _i < overrides_1.length; _i++) {\n var override = overrides_1[_i];\n result = mergeSettings(result, result._overrides[override]);\n }\n }\n return result;\n}\n/**\n * Turn a settings object into a slot props object.\n * @param target - settings block to strip the settings specific information from\n */\nexport function slotPropsFromSettings(target) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var _overrides = target._overrides, _precedence = target._precedence, slotProps = __rest(target, [\"_overrides\", \"_precedence\"]);\n return slotProps;\n}\n//# sourceMappingURL=Settings.js.map","var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nimport * as React from 'react';\n/**\n * Renders a slot\n *\n * @param slot - native react type or slot function to render\n * @param extraProps - additional props to mixin\n * @param children - the children to pass down to the slot\n */\nexport function renderSlot(slot, extraProps) {\n var children = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n children[_i - 2] = arguments[_i];\n }\n return typeof slot === 'function' && slot._canCompose\n ? slot.apply(void 0, __spreadArray([extraProps], children, false)) : React.createElement.apply(React, __spreadArray([slot, extraProps], children, false));\n}\n/**\n * This function is required for any module that uses slots.\n *\n * This function is a slot resolver that automatically evaluates slot functions to generate React elements.\n * A byproduct of this resolver is that it removes slots from the React hierarchy by bypassing React.createElement.\n *\n * To use this function on a per-file basis, use the jsx directive targeting withSlots.\n * This directive must be the FIRST LINE in the file to work correctly.\n * Usage of this pragma also requires withSlots import statement.\n *\n * See React.createElement\n */\n// Can't use typeof on React.createElement since it's overloaded. Approximate createElement's signature for now and widen as needed.\nexport function withSlots(reactType, props) {\n var children = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n children[_i - 2] = arguments[_i];\n }\n // if it is a non-string type with _canCompose set just call the function directly, otherwise call createElement as normal\n return renderSlot.apply(void 0, __spreadArray([reactType, props], children, false));\n}\n//# sourceMappingURL=slots.js.map","/* eslint-disable */\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nimport { useCompoundPrepare } from './Composable.slots';\nimport { renderSlot } from './slots';\nimport { mergeSettings } from '@uifabricshared/foundation-settings';\nexport function atomicRender(Slots, _renderData) {\n var children = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n children[_i - 2] = arguments[_i];\n }\n return renderSlot.apply(void 0, __spreadArray([Slots.root, undefined], children, false));\n}\nexport function atomicUsePrepareProps(props, useStyling) {\n var slotProps = mergeSettings(useStyling(props), { root: props });\n return { slotProps: slotProps };\n}\n/**\n * Ensure the composable is set up correctly, fill in missing functions and turn slots into\n * object format rather than the shorthand format.\n *\n * @param options - partial options definition to turn into full options\n */\nfunction _validateOptions(options) {\n var numSlots = (options.slots && Object.getOwnPropertyNames(options.slots).length) || 0;\n if (!numSlots) {\n throw 'A composable component must have at least one slot specified';\n }\n else if (numSlots > 1) {\n if (!options.render) {\n throw 'A composable component with multiple slots cannot use the default render implementation';\n }\n }\n // ensure slots are in slot with filter format\n for (var key in options.slots) {\n var slot = options.slots[key];\n if (slot && (typeof slot !== 'object' || !slot.slotType)) {\n options.slots[key] = { slotType: slot };\n }\n }\n if (!options.useStyling) {\n options.useStyling = function () {\n return {};\n };\n }\n // use atomic handlers for usePrepareProps / render if necessary\n options.render = options.render || atomicRender;\n options.usePrepareProps = options.usePrepareProps || atomicUsePrepareProps;\n // return options as the full type rather than a partial\n return options;\n}\n/**\n * Create a component that can be composed into other objects to remove extra levels from the tree\n *\n * @param options - composable options which define the behavior of the component\n */\nexport function composable(definition) {\n // ensure we are correctly configured\n var options = _validateOptions(definition);\n // create the actual implementation\n var render = function (userProps) {\n // split out children, they will be excluded from the prop preparation phase\n var _a = userProps, children = _a.children, props = __rest(_a, [\"children\"]);\n // prepare the props, all the way down the tree, also build the slots\n var _b = useCompoundPrepare(props, options), renderData = _b.renderData, Slots = _b.Slots;\n // now do the render, adding the children back in\n return options.render(Slots, renderData, children);\n };\n render.displayName = options.displayName;\n render.__composable = options;\n return render;\n}\n/**\n * Helper to create a composable implementation of a simple atomic component\n *\n * @param target - slot type to create an atomic component from\n * @param usePrepareProps - prop processing implementation.\n * @param filter - optional filter. If set it allows stripping properties before they are passed to target\n */\nexport function atomic(target, usePrepareProps, filter) {\n return composable({\n usePrepareProps: usePrepareProps,\n slots: { root: { slotType: target, filter: filter } },\n render: atomicRender,\n });\n}\n//# sourceMappingURL=Composable.js.map","export var tabName = 'Tab';\n//# sourceMappingURL=Tab.types.js.map","/** @jsxRuntime classic */\n/** @jsx withSlots */\n/** @jsxFrag */\nimport { __assign, __rest } from \"tslib\";\nimport React from 'react';\nimport { View, Pressable } from 'react-native';\nimport { withSlots, compressible, useSlot, useFluentTheme, applyTokenLayers, mergeProps } from '@fluentui-react-native/framework';\nimport { IconV1 as Icon } from '@fluentui-react-native/icon';\nimport { Text } from '@fluentui-react-native/text';\nimport { useTabSlotProps } from './Tab.styling';\nimport { tabName } from './Tab.types';\nimport { tabStates, useTabTokens } from './TabTokens';\nimport { useTab } from './useTab';\nimport { useTabAnimation } from './useTabAnimation';\nimport { TabListContext } from '../TabList/TabListContext';\nvar tabLookup = function (layer, state, props, tablistContext) {\n return (state[layer] ||\n props[layer] ||\n tablistContext[layer] ||\n layer === tablistContext.appearance ||\n layer === tablistContext.size ||\n (layer === 'hasIcon' && props.icon));\n};\nexport var Tab = compressible(function (props, useTokens) {\n var _a;\n var tablist = React.useContext(TabListContext);\n var tab = useTab(props);\n var theme = useFluentTheme();\n var _b = useTokens(theme), tokens = _b[0], cache = _b[1];\n // Calculate component states to get the correct tokens here (this happens in useSlots for compose components)\n _a = applyTokenLayers(tokens, tabStates, cache, function (layer) { return tabLookup(layer, tab.state, tab.props, tablist); }), tokens = _a[0], cache = _a[1];\n // Get styling props for each Tab slot\n var slotProps = useTabSlotProps(tab.props, tokens, theme, tablist);\n var rootProps = useTabAnimation(props, tablist, tokens, slotProps.root);\n var RootSlot = useSlot(Pressable, rootProps);\n var StackSlot = useSlot(View, slotProps.stack);\n var IndicatorContainerSlot = useSlot(View, slotProps.indicatorContainer);\n var IndicatorSlot = useSlot(View, slotProps.indicator);\n var ContentContainerSlot = useSlot(View, slotProps.contentContainer);\n var ContentSlot = useSlot(Text, slotProps.content);\n var IconSlot = useSlot(Icon, slotProps.icon);\n return function (final) {\n var children = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n children[_i - 1] = arguments[_i];\n }\n if (!tab.state) {\n return null;\n }\n // Get label for Tab to use if there's no accessibilityLabel prop passed in.\n var label = '';\n var hasChildren = false;\n React.Children.forEach(children, function (child) {\n if (child !== null) {\n hasChildren = true;\n if (typeof child === 'string') {\n label = child;\n }\n }\n });\n // `onLayout` is unused and excluded from the rest of the mergedProps to be passed into the RootSlot.\n // This is to ensure that the chained layout callback created in useTabAnimation isn't overwritten.\n var _a = mergeProps(tab.props, final, {\n accessibilityLabel: tab.props.accessibilityLabel || final.accessibilityLabel || label,\n }), icon = _a.icon, tabKey = _a.tabKey, _ = _a.onLayout, mergedProps = __rest(_a, [\"icon\", \"tabKey\", \"onLayout\"]);\n if (__DEV__ && !hasChildren && !icon) {\n console.warn('A Tab component must render content. Children, an icon, or both should be passed in.');\n }\n return (withSlots(RootSlot, __assign({}, mergedProps),\n withSlots(StackSlot, null,\n icon && withSlots(IconSlot, __assign({}, icon)),\n hasChildren && (withSlots(ContentContainerSlot, null, React.Children.map(children, function (child, i) {\n return typeof child === 'string' ? (withSlots(ContentSlot, { accessible: false, key: i }, child)) : (child);\n })))),\n withSlots(IndicatorContainerSlot, null,\n withSlots(IndicatorSlot, null))));\n };\n}, useTabTokens);\nTab.displayName = tabName;\nexport default Tab;\n//# sourceMappingURL=Tab.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nimport * as React from 'react';\nimport { Image, Platform, View } from 'react-native';\nimport { mergeStyles, useFluentTheme } from '@fluentui-react-native/framework';\nimport { stagedComponent, mergeProps, getMemoCache } from '@fluentui-react-native/framework';\nimport { Text } from '@fluentui-react-native/text';\nimport { SvgUri } from 'react-native-svg';\nvar rasterImageStyleCache = getMemoCache();\nfunction renderRasterImage(iconProps) {\n var width = iconProps.width, height = iconProps.height, color = iconProps.color;\n var style = mergeStyles(iconProps.style, rasterImageStyleCache({ width: width, height: height, tintColor: color }, [width, height, color])[0]);\n return (React.createElement(Image, { source: iconProps.rasterImageSource.src, style: style, accessible: iconProps.accessible, accessibilityRole: \"image\", accessibilityLabel: iconProps.accessibilityLabel }));\n}\nfunction fontFamilyFromFontSrcFile(fontSrcFile, fontFamily) {\n if (Platform.OS == 'windows') {\n // This `${family}#${path}` notation is specific to WPF\n var asset = Image.resolveAssetSource(+fontSrcFile);\n return \"\".concat(fontFamily, \"#\").concat(asset.uri);\n }\n else {\n return fontFamily;\n }\n}\nvar fontStyleMemoCache = getMemoCache();\nfunction renderFontIcon(iconProps) {\n var fontSource = iconProps.fontSource;\n var style = fontStyleMemoCache({\n fontSrcFile: fontSource.fontSrcFile,\n fontFamily: fontSource.fontSrcFile != undefined\n ? fontFamilyFromFontSrcFile(fontSource.fontSrcFile, fontSource.fontFamily)\n : fontSource.fontFamily,\n fontSize: fontSource.fontSize,\n color: iconProps.color,\n }, [iconProps.color, fontSource.fontSrcFile, fontSource.fontFamily, fontSource.fontSize])[0];\n var char = String.fromCharCode(fontSource.codepoint);\n return (React.createElement(Text, { accessible: iconProps.accessible, style: style }, char));\n}\nfunction renderSvg(iconProps) {\n var svgIconProps = iconProps.svgSource;\n var accessible = iconProps.accessible, accessibilityLabel = iconProps.accessibilityLabel, width = iconProps.width, height = iconProps.height, color = iconProps.color;\n var style = mergeStyles(iconProps.style, rasterImageStyleCache({ width: width, height: height }, [width, height])[0]);\n var svgProps = { width: width, height: height, color: color };\n if (svgIconProps.viewBox) {\n svgProps.viewBox = svgIconProps.viewBox;\n }\n if (svgIconProps.src) {\n return (React.createElement(View, { style: style, accessible: accessible, accessibilityRole: \"image\", accessibilityLabel: accessibilityLabel },\n React.createElement(svgIconProps.src, __assign({}, svgProps))));\n }\n else if (svgIconProps.uri) {\n return (React.createElement(View, { style: style, accessible: accessible, accessibilityRole: \"image\", accessibilityLabel: accessibilityLabel },\n React.createElement(SvgUri, __assign({ uri: svgIconProps.uri }, svgProps))));\n }\n else {\n return null;\n }\n}\nexport var Icon = stagedComponent(function (props) {\n var theme = useFluentTheme();\n return function (rest) {\n var _a;\n var color = props.color || theme.colors.buttonText;\n var accessible = (_a = props.accessible) !== null && _a !== void 0 ? _a : true;\n var baseProps = {\n color: color,\n accessible: accessible,\n };\n var newProps = mergeProps(baseProps, props, rest);\n if (newProps.svgSource) {\n return renderSvg(newProps);\n }\n else if (newProps.fontSource) {\n return renderFontIcon(newProps);\n }\n else if (newProps.rasterImageSource) {\n return renderRasterImage(newProps);\n }\n else {\n return null;\n }\n };\n});\nexport default Icon;\n//# sourceMappingURL=Icon.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\n/** @jsxRuntime classic */\n/** @jsx withSlots */\nimport React from 'react';\nimport { I18nManager, Platform, Text as RNText } from 'react-native';\nimport { fontStyles, withSlots, useFluentTheme, mergeStyles, compressible, patchTokens } from '@fluentui-react-native/framework';\nimport { useKeyProps } from '@fluentui-react-native/interactive-hooks';\nimport { globalTokens } from '@fluentui-react-native/theme-tokens';\nimport { textName } from './Text.types';\nimport { useTextTokens } from './TextTokens';\nvar emptyProps = {};\nexport var Text = compressible(function (props, useTokens) {\n var _a;\n if (props === undefined) {\n props = emptyProps;\n }\n // split out color and variant from props\n var _b = props.align, align = _b === void 0 ? undefined : _b, block = props.block, color = props.color, componentRef = props.componentRef, font = props.font, italic = props.italic, numberOfLines = props.numberOfLines, onAccessibilityTap = props.onAccessibilityTap, onKeyUp = props.onKeyUp, onKeyDown = props.onKeyDown, keyUpEvents = props.keyUpEvents, keyDownEvents = props.keyDownEvents, onPress = props.onPress, size = props.size, strikethrough = props.strikethrough, style = props.style, _c = props.truncate, truncate = _c === void 0 ? false : _c, underline = props.underline, variant = props.variant, weight = props.weight, _d = props.wrap, wrap = _d === void 0 ? true : _d, rest = __rest(props, [\"align\", \"block\", \"color\", \"componentRef\", \"font\", \"italic\", \"numberOfLines\", \"onAccessibilityTap\", \"onKeyUp\", \"onKeyDown\", \"keyUpEvents\", \"keyDownEvents\", \"onPress\", \"size\", \"strikethrough\", \"style\", \"truncate\", \"underline\", \"variant\", \"weight\", \"wrap\"]);\n var theme = useFluentTheme();\n // get the tokens from the theme\n var _e = useTokens(theme), tokens = _e[0], cache = _e[1];\n var textAlign = I18nManager.isRTL\n ? align === 'start'\n ? 'right'\n : align === 'end'\n ? 'left'\n : align\n : align === 'start'\n ? 'left'\n : align === 'end'\n ? 'right'\n : align;\n var textOnPress = React.useCallback(function (e) {\n if (onPress) {\n onPress(e);\n }\n e.stopPropagation();\n }, [onPress]);\n var keyProps = useKeyProps(textOnPress, ' ', 'Enter');\n var onAccTap = React.useCallback(function (event) {\n onAccessibilityTap ? onAccessibilityTap() : onPress(event);\n }, [onPress, onAccessibilityTap]);\n // override tokens from props\n _a = patchTokens(tokens, cache, {\n color: color,\n variant: variant,\n fontFamily: font == 'base' ? 'primary' : font,\n fontMaximumSize: tokens.maximumFontSize,\n fontSize: globalTokens.font['size' + size],\n fontWeight: globalTokens.font.weight[weight],\n // leave it undefined for tokens to be set by user\n fontStyle: italic ? 'italic' : undefined,\n textAlign: textAlign,\n textDecorationLine: underline && strikethrough ? 'underline line-through' : underline ? 'underline' : strikethrough ? 'line-through' : undefined,\n }), tokens = _a[0], cache = _a[1];\n // now build the text style from tokens that can be shared between different Text instances\n var tokenStyle = cache(function () { return (__assign({ margin: 0, color: tokens.color, fontStyle: tokens.fontStyle, textAlign: tokens.textAlign, textDecorationLine: tokens.textDecorationLine }, fontStyles.from(tokens, theme))); }, __spreadArray(['color', 'fontStyle', 'textAlign', 'textDecorationLine'], fontStyles.keys, true))[0];\n // Safety measure: Dynamic Type is an iOS-specific thing\n var dynamicTypeVariant = Platform.OS === 'ios' ? tokenStyle.dynamicTypeRamp : undefined;\n var maxFontSizeScaleAdjustment = emptyProps;\n // tokenStyle.fontSize can also be a string (e.g., \"14px\").\n // Therefore, we only support scaling for number-based size values in order to avoid any messy calculations.\n if (dynamicTypeVariant !== undefined && typeof tokenStyle.fontSize === 'number' && tokenStyle.maximumFontSize !== undefined) {\n maxFontSizeScaleAdjustment = {\n maxFontSizeMultiplier: tokenStyle.maximumFontSize / tokenStyle.fontSize,\n };\n }\n var isWinPlatform = Platform.OS === ('win32' || 'windows');\n var filteredProps = {\n onKeyUp: isWinPlatform ? onKeyUp : undefined,\n keyUpEvents: isWinPlatform ? keyUpEvents : undefined,\n validKeysUp: undefined,\n onKeyDown: isWinPlatform ? onKeyDown : undefined,\n keyDownEvents: isWinPlatform ? keyDownEvents : undefined,\n validKeysDown: undefined,\n onAccessibilityTap: isWinPlatform ? onAccTap : undefined,\n };\n // return a continuation function that allows this text to be compressed\n return function (extra, children) {\n var mergedProps = __assign(__assign(__assign(__assign(__assign(__assign({}, rest), keyProps), filteredProps), extra), maxFontSizeScaleAdjustment), { onPress: onPress, numberOfLines: numberOfLines !== null && numberOfLines !== void 0 ? numberOfLines : (truncate || !wrap ? 1 : 0), style: mergeStyles(tokenStyle, props.style, extra === null || extra === void 0 ? void 0 : extra.style) });\n // RN TextStyle doesn't recognize these properties.\n // Don't let them leak through or RN will complain about invalid props.\n delete mergedProps.style.dynamicTypeRamp;\n delete mergedProps.style.maximumFontSize;\n return (withSlots(RNText, __assign({ ref: componentRef, ellipsizeMode: !wrap && !truncate ? 'clip' : 'tail' }, mergedProps), children));\n };\n}, useTextTokens);\nText.displayName = textName;\nexport default Text;\n//# sourceMappingURL=Text.js.map","export var textName = 'Text';\n//# sourceMappingURL=Text.types.js.map","import { buildUseTokens } from '@fluentui-react-native/framework';\nimport { textName } from './Text.types';\nexport var useTextTokens = buildUseTokens(function (t) { return ({\n variant: 'secondaryStandard',\n color: t.colors.bodyText,\n}); }, textName);\n//# sourceMappingURL=TextTokens.js.map","export var textName = 'RNFText';\n//# sourceMappingURL=Text.types.js.map","import { Text as RNText } from 'react-native';\nimport { filterTextProps } from '@fluentui-react-native/adapters';\nimport { foregroundColorTokens, textTokens } from '@fluentui-react-native/tokens';\nimport { compose } from '@uifabricshared/foundation-compose';\nimport { settings } from './Text.settings';\nimport { textName } from './Text.types';\nexport var Text = compose({\n displayName: textName,\n settings: settings,\n slots: {\n root: { slotType: RNText, filter: filterTextProps },\n },\n styles: {\n root: [textTokens, foregroundColorTokens],\n },\n});\nexport default Text;\n//# sourceMappingURL=Text.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar _viewMask = __assign({ children: true, acceptsFirstMouse: true, accessibilityActions: true, accessibilityElementsHidden: true, accessibilityHint: true, accessibilityIgnoresInvertColors: true, accessibilityLabel: true, accessibilityLabelledBy: true, accessibilityLanguage: true, accessibilityLiveRegion: true, accessibilityRole: true, accessibilityState: true, accessibilityValue: true, accessibilityViewIsModal: true, accessible: true, allowsVibrancy: true, collapsable: true, draggedTypes: true, enableFocusRing: true, focusable: true, hasTVPreferredFocus: false, hitSlop: true, id: true, importantForAccessibility: true, isTVSelectable: false, nativeID: true, needsOffscreenAlphaCompositing: true, onAccessibilityAction: true, onAccessibilityEscape: true, onAccessibilityTap: true, onDragEnter: true, onDragLeave: true, onDrop: true, onKeyDown: true, onKeyUp: true, onLayout: true, onMagicTap: true, onMouseEnter: true, onMouseLeave: true, onMoveShouldSetResponder: true, onMoveShouldSetResponderCapture: true, onPointerCancel: true, onPointerCancelCapture: true, onPointerDown: true, onPointerDownCapture: true, onPointerEnter: true, onPointerEnterCapture: true, onPointerLeave: true, onPointerLeaveCapture: true, onPointerMove: true, onPointerMoveCapture: true, onPointerUp: true, onPointerUpCapture: true, onResponderEnd: true, onResponderGrant: true, onResponderMove: true, onResponderReject: true, onResponderRelease: true, onResponderStart: true, onResponderTerminate: true, onResponderTerminationRequest: true, onStartShouldSetResponder: true, onStartShouldSetResponderCapture: true, onTouchCancel: true, onTouchEnd: true, onTouchEndCapture: true, onTouchMove: true, onTouchStart: true, pointerEvents: true, removeClippedSubviews: true, renderToHardwareTextureAndroid: false, role: true, shouldRasterizeIOS: true, style: true, testID: true, tvParallaxMagnification: false, tvParallaxProperties: false, tvParallaxShiftDistanceX: false, tvParallaxShiftDistanceY: false, tvParallaxTiltAngle: false, validKeysDown: true, validKeysUp: true, 'aria-busy': true, 'aria-checked': true, 'aria-disabled': true, 'aria-expanded': true, 'aria-hidden': true, 'aria-label': true, 'aria-labelledby': true, 'aria-live': true, 'aria-modal': true, 'aria-selected': true, 'aria-valuemax': true, 'aria-valuemin': true, 'aria-valuenow': true, 'aria-valuetext': true }, {\n onBlur: true,\n onFocus: true,\n onPreferredScrollerStyleDidChange: true,\n tooltip: true,\n mouseDownCanMoveWindow: true,\n});\nvar _textMask = __assign({ accessibilityActions: true, accessibilityElementsHidden: true, accessibilityHint: true, accessibilityIgnoresInvertColors: true, accessibilityLabel: true, accessibilityLabelledBy: true, accessibilityLanguage: true, accessibilityLiveRegion: true, accessibilityRole: true, accessibilityState: true, accessibilityValue: true, accessibilityViewIsModal: true, accessible: true, adjustsFontSizeToFit: true, allowFontScaling: true, android_hyphenationFrequency: false, children: true, dataDetectorType: true, disabled: true, dynamicTypeRamp: true, ellipsizeMode: true, id: true, importantForAccessibility: true, lineBreakMode: true, lineBreakStrategyIOS: true, maxFontSizeMultiplier: true, minimumFontScale: true, nativeID: true, numberOfLines: true, onAccessibilityAction: true, onAccessibilityEscape: true, onAccessibilityTap: true, onLayout: true, onLongPress: true, onMagicTap: true, onPress: true, onPressIn: true, onPressOut: true, onTextLayout: true, role: true, selectable: true, selectionColor: true, style: true, suppressHighlighting: true, testID: true, textBreakStrategy: true, 'aria-busy': true, 'aria-checked': true, 'aria-disabled': true, 'aria-expanded': true, 'aria-hidden': true, 'aria-label': true, 'aria-labelledby': true, 'aria-live': true, 'aria-modal': true, 'aria-selected': true, 'aria-valuemax': true, 'aria-valuemin': true, 'aria-valuenow': true, 'aria-valuetext': true }, {\n enableFocusRing: true,\n tooltip: true,\n});\nvar _imageMask = {\n accessibilityActions: true,\n accessibilityElementsHidden: true,\n accessibilityHint: true,\n accessibilityIgnoresInvertColors: true,\n accessibilityLabel: true,\n accessibilityLabelledBy: true,\n accessibilityLanguage: true,\n accessibilityLiveRegion: true,\n accessibilityRole: true,\n accessibilityState: true,\n accessibilityValue: true,\n accessibilityViewIsModal: true,\n accessible: true,\n alt: true,\n blurRadius: true,\n borderBottomLeftRadius: true,\n borderBottomRightRadius: true,\n borderRadius: true,\n borderTopLeftRadius: true,\n borderTopRightRadius: true,\n capInsets: true,\n children: true,\n crossOrigin: true,\n defaultSource: true,\n fadeDuration: true,\n height: true,\n id: true,\n importantForAccessibility: true,\n loadingIndicatorSource: true,\n nativeID: true,\n onAccessibilityAction: true,\n onAccessibilityEscape: true,\n onAccessibilityTap: true,\n onError: true,\n onLayout: true,\n onLoad: true,\n onLoadEnd: true,\n onLoadStart: true,\n onMagicTap: true,\n onPartialLoad: true,\n onProgress: true,\n progressiveRenderingEnabled: true,\n referrerPolicy: true,\n resizeMethod: true,\n resizeMode: true,\n role: true,\n source: true,\n src: true,\n srcSet: true,\n style: true,\n testID: true,\n tintColor: true,\n tooltip: true,\n width: true,\n 'aria-busy': true,\n 'aria-checked': true,\n 'aria-disabled': true,\n 'aria-expanded': true,\n 'aria-hidden': true,\n 'aria-label': true,\n 'aria-labelledby': true,\n 'aria-live': true,\n 'aria-modal': true,\n 'aria-selected': true,\n 'aria-valuemax': true,\n 'aria-valuemin': true,\n 'aria-valuenow': true,\n 'aria-valuetext': true,\n};\nexport function filterViewProps(propName) {\n return _viewMask[propName];\n}\nexport function filterTextProps(propName) {\n return _textMask[propName];\n}\nexport function filterImageProps(propName) {\n return _imageMask[propName];\n}\n//# sourceMappingURL=adapters.macos.js.map","import { mergeSettings, getActiveOverrides, resolveSettingsOverrides } from '@uifabricshared/foundation-settings';\n/**\n * Merges the various settings for a component together\n * @param customSettings - the array of settings to apply for this object\n * @param theme - the theme to use for value lookups and component definitions\n * @param getFromTheme - helper function to retrieve settings from a theme\n */\nexport function mergeBaseSettings(customSettings, theme, getFromTheme) {\n return customSettings\n ? mergeSettings.apply(void 0, customSettings.map(function (entry) {\n if (typeof entry === 'string') {\n return (getFromTheme && getFromTheme(theme, entry)) || undefined;\n }\n else if (typeof entry === 'function') {\n return entry(theme);\n }\n return entry;\n })) : undefined;\n}\n/**\n * Resolve the stack of settings, applying any applicable overrides, while caching the results. Also returns the cache key\n * so it can be used as a prefix for additional caching layers\n *\n * @param customSettings - array of settings entries to merge\n * @param theme - theme used to look up named settings\n * @param memoValue - a GetMemoValue function to use as the root of caching\n * @param hasOverride - override lookup type for looking up whether an override should be applied to the settings\n * @param getFromTheme - routine to look up the named entries in the theme. They will be skipped if not specified.\n */\nexport function getThemedSettings(customSettings, theme, memoValue, hasOverride, getFromTheme) {\n var _a;\n // resolve the settings for this component, keyed on the theme\n var _b = memoValue(function () { return mergeBaseSettings(customSettings, theme, getFromTheme); }, [theme]), settings = _b[0], getMemoValue = _b[1];\n // if overrides are set, resolve the override settings, keyed on the applied overrides\n var overrides = getActiveOverrides(settings, hasOverride);\n if (overrides.length > 0) {\n _a = getMemoValue(function () { return resolveSettingsOverrides(settings, hasOverride); }, overrides), settings = _a[0], getMemoValue = _a[1];\n }\n // return the merged settings and a query routine to go deeper in the cache\n return { settings: settings, getMemoValue: getMemoValue };\n}\n//# sourceMappingURL=CustomSettings.js.map","var __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n/** helper to strip out the component settings specific bits from the returned structure */\nexport function returnAsSlotProps(target) {\n if (target) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var _overrides = target._overrides, _precedence = target._precedence, settings = __rest(target, [\"_overrides\", \"_precedence\"]);\n return settings;\n }\n return target;\n}\n/**\n *\n * @param theme - theme used to retrieve settings\n * @param name - name of the settings entry to retrieve\n * @param overrides - optional override lookup object to conditionally apply overrides\n */\nexport function getSettings(theme, name) {\n return (theme.components && theme.components[name]) || undefined;\n}\n//# sourceMappingURL=SettingsWorker.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\n/**\n * Take the input props and props from settings and return a merged set of token props (a single source\n * of truth) as well as an abbreviated collection with tokens that have been overridden from the user\n * props\n *\n * @param props - user props passed in to render\n * @param rootSlotProps - props for the root slot, this will have any tokens loaded from settings\n * @param tokenKeys - an object that contains the set of keys we care about for tokens on this component\n */\nfunction _getTokenPropInfo(props, tokensSlot, tokenKeys) {\n var tokens = __assign({}, tokensSlot);\n var deltas = {};\n for (var key in tokenKeys) {\n if (props[key] !== undefined && props[key] !== tokens[key]) {\n deltas[key] = tokens[key] = props[key];\n }\n }\n return { tokens: tokens, deltas: deltas, tokenKeys: tokenKeys };\n}\n/**\n * Run through the end to end token workflow for render. This will resolve the tokens and attempt to preempt style creation\n * by referencing values in the cache\n *\n * @param props - user props passed in and copied into a mutable object, these have precedence\n * @param theme - theme to get styling info from\n * @param slotProps - starting slotProps, the root entry may have token defaults filled in\n * @param tokenInfo - the set of token props as well as the shortened set that have been overridden\n * @param prefix - cache key to append token info to, this generally refers to the settings\n * @param cache - cache which holds the slotProps if they have been built before\n * @param displayName - optional component display name, used for class building\n * @param finalizer - optional function to process styles before caching happens\n */\nexport function processTokens(props, theme, slotProps, tokenInfo, cache) {\n // merge in tokens and build up the cache key which are the tokens overridden by the user\n slotProps = slotProps || {};\n var rootSlotProps = slotProps.tokens || {};\n var handlers = tokenInfo.handlers, tokenKeys = tokenInfo.tokenKeys;\n var tokenPropInfo = _getTokenPropInfo(props, rootSlotProps, tokenKeys);\n var resolvedSlotProps = { tokens: tokenPropInfo.tokens || {} };\n Object.getOwnPropertyNames(handlers).forEach(function (slotName) {\n var handler = handlers[slotName];\n resolvedSlotProps[slotName] = handler(slotProps[slotName] || {}, tokenPropInfo, theme, slotName, cache);\n });\n // return the cache entry\n return resolvedSlotProps;\n}\n//# sourceMappingURL=Token.js.map","var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nimport { mergeProps } from '@fluentui-react-native/merge-props';\nfunction _copyToken(props, key, target, targetObj) {\n if (props[key] !== undefined) {\n targetObj[target || key] = props[key];\n }\n}\nfunction _lookupOrCopyToken(props, theme, entry, style) {\n var key = entry.source, lookup = entry.lookup;\n if (props[key] !== undefined) {\n var lookupResult = lookup && lookup(theme);\n var val = props[key];\n if (typeof val === 'string' && lookupResult && lookupResult[val] !== undefined) {\n val = lookupResult[val];\n }\n style[entry.target || key] = val;\n }\n}\nfunction _processSlotEntries(props, theme, mapping) {\n var slotProps = {};\n if (mapping.toStyle.length > 0) {\n var slotStyle = {};\n for (var _i = 0, _a = mapping.toStyle; _i < _a.length; _i++) {\n var entry = _a[_i];\n _lookupOrCopyToken(props, theme, entry, slotStyle);\n }\n if (Object.keys(slotStyle).length > 0) {\n slotProps.style = slotStyle;\n }\n }\n for (var _b = 0, _c = mapping.toTokens; _b < _c.length; _b++) {\n var entry = _c[_b];\n _copyToken(props, entry.source, entry.target, slotProps);\n }\n return slotProps;\n}\nfunction _processStyleFunctions(functions, tokenProps, theme) {\n if (functions && functions.length > 0) {\n return mergeProps.apply(void 0, functions.map(function (fn) { return fn(tokenProps, theme); }));\n }\n return undefined;\n}\n/**\n * This is the worker function that does the work of either retrieving a cached props/style from the cache\n * or building up the new props/style set\n */\nfunction _getCachedPropsForSlot(props, tokenProps, theme, slotName, getMemoValue, keys, mappings, finalizer) {\n // get the cache key for this entry\n var tokens = tokenProps.tokens, tokenKeys = tokenProps.tokenKeys, deltas = tokenProps.deltas;\n return getMemoValue(function () {\n var newProps = mergeProps(props, slotName === 'root' ? tokenKeys : undefined, _processSlotEntries(tokens, theme, mappings), _processStyleFunctions(mappings.functions, tokens, theme));\n if (finalizer) {\n newProps = finalizer(newProps, slotName);\n }\n return newProps;\n }, __spreadArray([slotName], keys.map(function (val) { return (deltas[val] !== undefined ? deltas[val] : ''); }), true))[0];\n}\n/**\n * This function runs at component definition time (once for every component type) and\n * processes the styleFactories on each of the slots and builds up handler functions that\n * obtain or build the cached props.\n *\n * @param factories - collection of slot style factories\n * @param hasToken - a function that returns whether or not a slot supports a given token\n */\nexport function buildComponentTokens(factories, hasToken) {\n var tokenKeys = {};\n var handlers = {};\n // iterate through each factory and generate a handler for it. Note that even if no styleFactories\n // are provided within it will still generate the handler to do style caching and finalization\n Object.getOwnPropertyNames(factories).forEach(function (slot) {\n var factoriesBase = factories[slot];\n var mappings = { toStyle: [], toTokens: [], functions: [] };\n var toStyle = mappings.toStyle, toTokens = mappings.toTokens, functions = mappings.functions;\n var slotKeys = {};\n // if there are style factories provided split them into ones that target tokens and ones that target styles\n if (factoriesBase) {\n var factorySet = Array.isArray(factoriesBase) ? factoriesBase : [factoriesBase];\n for (var _i = 0, factorySet_1 = factorySet; _i < factorySet_1.length; _i++) {\n var set = factorySet_1[_i];\n if (typeof set === 'function') {\n functions.push(set);\n set._keys.forEach(function (key) {\n slotKeys[key] = undefined;\n });\n }\n else {\n var setArray = Array.isArray(set) ? set : [set];\n for (var _a = 0, setArray_1 = setArray; _a < setArray_1.length; _a++) {\n var operation = setArray_1[_a];\n slotKeys[operation.source] = undefined;\n var target = operation.target || operation.source;\n if (hasToken && hasToken(slot, target)) {\n toTokens.push(operation);\n }\n else {\n toStyle.push(operation);\n }\n }\n }\n }\n }\n // add the collected keys to the root token keys\n Object.assign(tokenKeys, slotKeys);\n // create the closure for the handler and return that in the object\n handlers[slot] = function (props, tokenProps, theme, slotName, getValue) {\n var keys = Object.getOwnPropertyNames(slotKeys);\n return _getCachedPropsForSlot(props, tokenProps, theme, slotName, getValue, keys, mappings);\n };\n });\n return { tokenKeys: tokenKeys, handlers: handlers };\n}\n//# sourceMappingURL=Token.function.js.map","/* eslint-disable */\nimport { getThemedSettings } from '@uifabricshared/themed-settings';\nimport { getSettings, returnAsSlotProps } from '@uifabricshared/theming-ramp';\nimport { processTokens, buildComponentTokens } from '@uifabricshared/foundation-tokens';\nimport { useTheme } from '@fluentui-react-native/theme-types';\nimport { defaultFluentTheme } from '@fluentui-react-native/default-theme';\nimport { getMemoCache } from '@fluentui-react-native/memo-cache';\n/* tslint:disable-next-line no-any */\nexport function getOptionsFromObj(obj) {\n var objType = obj && typeof obj;\n return ((objType === 'object' || objType === 'function') && obj.__composable) || undefined;\n}\nfunction _getSettingsFromTheme(theme, name) {\n return getSettings(theme, name);\n}\nfunction _getHasToken(slots) {\n var slotTokens = {};\n Object.keys(slots).forEach(function (slotName) {\n var slot = slots[slotName];\n var slotType = (typeof slot !== 'object' ? slot : slot.slotType);\n var options = getOptionsFromObj(slotType);\n slotTokens[slotName] = (options && options.resolvedTokens && options.resolvedTokens.tokenKeys) || undefined;\n });\n return function (target, key) {\n return slotTokens[target] && slotTokens[target].hasOwnProperty(key);\n };\n}\nfunction useStylingCore(props, options, instanceMemoCache, lookupOverride) {\n // get the theme value from the context (or the default theme if it is not set)\n var theme = useTheme() || defaultFluentTheme;\n // resolve the array of settings for these options\n lookupOverride = lookupOverride || props;\n var _a = getThemedSettings(options.settings, theme, instanceMemoCache, lookupOverride, _getSettingsFromTheme), settings = _a.settings, getMemoValue = _a.getMemoValue;\n // finish by processing the tokens and turning IComponentSettings into ISlotProps (this removes things like _overrides)\n return returnAsSlotProps(processTokens(props, theme, settings, options.resolvedTokens, getMemoValue));\n}\n/**\n * return a useStyling implementation, in the form of IUseComposeStyling, based on the passed in styleSettings. The\n * styleSettings will be captured in the created closure and will be set up to enable the appropriate levels of caching.\n *\n * @param options - style settings to configure this function. Note that this should be scoped to a single component.\n * @param name - optional base name to use as a cache key\n */\nexport function initializeStyling(options) {\n // process the tokens and get them ready to render\n var styles = options.styles, slots = options.slots;\n options.resolvedTokens = buildComponentTokens(styles, _getHasToken(slots));\n // memo cache root for this component, keyed on options\n var getMemoValue = getMemoCache(options);\n // create a useStyling implementation for this component type (per type, not per instance)\n return function (props, lookupOverride) {\n return useStylingCore(props, options, getMemoValue, lookupOverride);\n };\n}\n//# sourceMappingURL=useStyling.js.map","/* eslint-disable */\nimport { composable, } from '@uifabricshared/foundation-composable';\nimport { initializeStyling, getOptionsFromObj } from './useStyling';\nimport { immutableMerge } from '@fluentui-react-native/immutable-merge';\n/**\n * Merge current and base options together to form the new object definition. These objects will merge with the\n * exception of settings which will be appended\n *\n * @param inputComponent - input component\n * @param base - component to use as a baseline (if it exists)\n */\nfunction _getComponentOptions(inputComponent, base) {\n if (base) {\n var mergedSettings = { settings: [].concat(base.settings || [], inputComponent.settings || []).filter(function (v) { return v; }) };\n return immutableMerge(base, inputComponent, mergedSettings);\n }\n return inputComponent;\n}\n/**\n * Assembles a higher order component, optionally composing a base HOC or base primitive control. The compose pattern\n * allows a greater degree of customization than is available via props and allows for customization without adding\n * additional layers to the react hierarchy.\n *\n * @param inputComponent - component definition for the component to be created. See IComposeOptions for more details.\n * @param base - optional base component to compose, this can be an intrinsic, a stock element, or another composable\n */\nexport function compose(inputComponent, base) {\n // get merged options for the component\n var options = _getComponentOptions(inputComponent, base && getOptionsFromObj(base));\n // set up the styling injection function\n options.useStyling = initializeStyling(options);\n // use composable to create the function implementation\n var Component = composable(options);\n // attach extra information to the returned function component\n Component.displayName = options.displayName;\n Object.assign(Component, options.statics);\n // set up the customize handler\n Component.customize = function () {\n var settings = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n settings[_i] = arguments[_i];\n }\n return compose({ settings: settings }, Component);\n };\n // set up the compose handler\n Component.compose = function (newOptions) {\n return compose(newOptions, Component);\n };\n // now return the newly created component\n return Component;\n}\n//# sourceMappingURL=compose.js.map","import { textName } from './Text.types';\nexport var settings = [\n {\n tokens: {\n variant: 'secondaryStandard',\n color: 'bodyText',\n },\n root: {\n style: {\n margin: 0,\n },\n },\n _overrides: {\n disabled: {\n tokens: {\n color: 'disabledText',\n },\n },\n },\n _precedence: ['disabled'],\n },\n textName,\n];\n//# sourceMappingURL=Text.settings.js.map","import { Image } from 'react-native';\n// this hook creates icon props from given source\nexport function createIconProps(src) {\n if (src === undefined)\n return null;\n if (typeof src === 'number') {\n var rasterProps = { src: src };\n var asset = Image.resolveAssetSource(+src);\n return {\n rasterImageSource: rasterProps,\n width: asset.width,\n height: asset.height,\n };\n }\n else if (typeof src === 'string') {\n var rasterProps = { src: { uri: src } };\n return { rasterImageSource: rasterProps };\n }\n else {\n return src;\n }\n}\n//# sourceMappingURL=useIconProps.hooks.js.map","export var fontIconName = 'FontIcon';\n//# sourceMappingURL=FontIcon.types.js.map","export var svgIconName = 'SvgIcon';\n//# sourceMappingURL=SvgIcon.types.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nimport * as React from 'react';\nimport { FontIcon } from './FontIcon/FontIcon';\nimport { SvgIcon } from './SvgIcon/SvgIcon';\nexport var Icon = function (props) {\n return props.svgSource ? (React.createElement(SvgIcon, __assign({ color: props.color, height: props.size, width: props.size }, props.svgSource))) : props.fontSource ? (React.createElement(FontIcon, __assign({ color: props.color, fontSize: props.size }, props.fontSource))) : null;\n};\n//# sourceMappingURL=Icon.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport * as React from 'react';\nimport { Text } from 'react-native';\nimport { mergeProps, stagedComponent } from '@fluentui-react-native/framework';\nimport { fontIconName } from './FontIcon.types';\nimport { useFontIcon } from './useFontIcon';\nexport var FontIcon = stagedComponent(function (props) {\n var fontIconProps = useFontIcon(props);\n return function (final) {\n var newProps = mergeProps(fontIconProps, final);\n var codepoint = newProps.codepoint, rest = __rest(newProps, [\"codepoint\"]);\n var char = String.fromCharCode(codepoint);\n return React.createElement(Text, __assign({}, rest), char);\n };\n});\nFontIcon.displayName = fontIconName;\nexport default FontIcon;\n//# sourceMappingURL=FontIcon.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { Image, Platform } from 'react-native';\nimport { getMemoCache, mergeStyles } from '@fluentui-react-native/framework';\nexport var useFontIcon = function (props) {\n var accessible = props.accessible, color = props.color, fontSrcFile = props.fontSrcFile, fontFamily = props.fontFamily, fontSize = props.fontSize, styleOrig = props.style, rest = __rest(props, [\"accessible\", \"color\", \"fontSrcFile\", \"fontFamily\", \"fontSize\", \"style\"]);\n var style = fontStyleMemoCache({ fontFamily: fontSrcFile != undefined ? fontFamilyFromFontSrcFile(fontSrcFile, fontFamily) : fontFamily, fontSize: fontSize, color: color }, [color, fontSize, fontFamily])[0];\n var mergedStyle = mergeStyles(style, styleOrig);\n return __assign({ accessible: accessible !== null && accessible !== void 0 ? accessible : true, style: mergedStyle }, rest);\n};\nfunction fontFamilyFromFontSrcFile(fontSrcFile, fontFamily) {\n if (Platform.OS == 'windows') {\n // This `${family}#${path}` notation is specific to WPF\n var asset = Image.resolveAssetSource(+fontSrcFile);\n return \"\".concat(fontFamily, \"#\").concat(asset.uri);\n }\n else {\n return fontFamily;\n }\n}\nvar fontStyleMemoCache = getMemoCache();\n//# sourceMappingURL=useFontIcon.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport * as React from 'react';\nimport { Platform, View } from 'react-native';\nimport { mergeProps, stagedComponent } from '@fluentui-react-native/framework';\nimport { SvgUri } from 'react-native-svg';\nimport { svgIconName } from './SvgIcon.types';\nimport { useSvgIcon } from './useSvgIcon';\nexport var SvgIcon = stagedComponent(function (props) {\n var svgProps = useSvgIcon(props);\n return function (final) {\n var _a = mergeProps(svgProps, final), style = _a.style, height = _a.height, width = _a.width, src = _a.src, uri = _a.uri, viewBox = _a.viewBox, color = _a.color, rest = __rest(_a, [\"style\", \"height\", \"width\", \"src\", \"uri\", \"viewBox\", \"color\"]);\n var svgIconsSupported = Platform.OS !== 'windows';\n return svgIconsSupported && (src || uri) ? (React.createElement(View, __assign({ style: style, accessibilityRole: \"image\" }, rest), src ? (React.createElement(svgProps.src, { viewBox: viewBox, width: width, height: height, color: color })) : (React.createElement(SvgUri, { uri: uri, viewBox: viewBox, width: width, height: height, color: color })))) : null;\n };\n});\nSvgIcon.displayName = svgIconName;\nexport default SvgIcon;\n//# sourceMappingURL=SvgIcon.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { getMemoCache, mergeStyles } from '@fluentui-react-native/framework';\nvar rasterImageStyleCache = getMemoCache();\nexport var useSvgIcon = function (props) {\n var accessible = props.accessible, style = props.style, height = props.height, width = props.width, rest = __rest(props, [\"accessible\", \"style\", \"height\", \"width\"]);\n return __assign({ accessible: accessible !== null && accessible !== void 0 ? accessible : true, height: height, style: mergeStyles(style, rasterImageStyleCache({ width: width, height: height }, [width, height])[0]), width: width }, rest);\n};\n//# sourceMappingURL=useSvgIcon.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport { Platform } from 'react-native';\nimport { borderStyles, fontStyles } from '@fluentui-react-native/framework';\n/**\n * Hook to get the style props for each Tab slot.\n */\nexport var useTabSlotProps = function (props, tokens, theme, context) {\n var canShowAnimatedIndicator = context.canShowAnimatedIndicator, selectedKey = context.selectedKey, vertical = context.vertical;\n // Get each slot's props using our final tokens\n var root = React.useMemo(function () { return ({\n style: __assign(__assign({ display: 'flex', alignItems: 'center', flexDirection: tokens.flexDirection, alignSelf: 'flex-start', justifyContent: 'center', padding: 1, backgroundColor: tokens.backgroundColor }, (!vertical ? Platform.select({ macos: {}, default: { height: '100%' } }) : {})), borderStyles.from(tokens, theme)),\n }); }, [tokens, theme, vertical]);\n var contentContainer = React.useMemo(function () { return ({\n style: {\n flexDirection: 'row',\n paddingStart: tokens.contentMarginStart,\n paddingEnd: tokens.contentMarginEnd,\n },\n }); }, [tokens.contentMarginStart, tokens.contentMarginEnd]);\n var content = React.useMemo(function () { return ({\n numberOfLines: tokens.numberOfLines,\n style: __assign({ color: tokens.color }, fontStyles.from(tokens, theme)),\n }); }, [tokens, theme]);\n var icon = React.useMemo(function () {\n if (props.icon) {\n return __assign(__assign({}, props.icon), { color: tokens.iconColor, size: tokens.iconSize });\n }\n return {};\n }, [props.icon, tokens.iconColor, tokens.iconSize]);\n var stack = React.useMemo(function () { return ({\n style: {\n display: 'flex',\n alignItems: 'center',\n flexDirection: 'row',\n flex: 0,\n alignSelf: 'flex-start',\n justifyContent: 'center',\n marginHorizontal: tokens.stackMarginHorizontal,\n marginVertical: tokens.stackMarginVertical,\n },\n }); }, [tokens.stackMarginHorizontal, tokens.stackMarginVertical]);\n var indicatorContainer = React.useMemo(function () { return ({\n style: __assign({ backgroundColor: theme.colors.transparentBackground }, (vertical\n ? {\n height: '100%',\n width: tokens.indicatorThickness,\n paddingVertical: tokens.indicatorMargin,\n }\n : {\n width: '100%',\n height: tokens.indicatorThickness,\n paddingHorizontal: tokens.indicatorMargin,\n })),\n }); }, [vertical, tokens.indicatorThickness, tokens.indicatorMargin, theme]);\n var indicator = React.useMemo(\n // if we're the selected tab and we've generated styles for the animated indicator, render the static tab indicator as transparent.\n // The animated indicator will receive styling instead via useTabAnimation hook.\n function () {\n var hideStaticIndicator = props.tabKey === selectedKey && canShowAnimatedIndicator;\n return {\n style: {\n flex: 1,\n borderRadius: tokens.indicatorRadius,\n backgroundColor: hideStaticIndicator ? theme.colors.transparentBackground : tokens.indicatorColor,\n },\n };\n }, [canShowAnimatedIndicator, props.tabKey, selectedKey, tokens.indicatorColor, tokens.indicatorRadius, theme]);\n return { root: root, contentContainer: contentContainer, content: content, icon: icon, stack: stack, indicatorContainer: indicatorContainer, indicator: indicator };\n};\n//# sourceMappingURL=Tab.styling.js.map","export var tabStates = [\n 'small',\n 'medium',\n 'large',\n 'vertical',\n 'hovered',\n 'disabled',\n 'selected',\n 'focused',\n 'pressed',\n 'transparent',\n 'subtle',\n 'hasIcon',\n];\nexport var defaultTabColorTokens = function (t) {\n return ({\n borderColor: t.colors.transparentBackground,\n color: t.colors.neutralForeground2,\n iconColor: t.colors.neutralForeground2,\n indicatorColor: t.colors.transparentBackground,\n transparent: {\n backgroundColor: t.colors.transparentBackground,\n },\n subtle: {\n backgroundColor: t.colors.subtleBackground,\n },\n selected: {\n color: t.colors.neutralForeground1,\n iconColor: t.colors.compoundBrandForeground1,\n indicatorColor: t.colors.compoundBrandStroke1,\n pressed: {\n color: t.colors.neutralForeground1Pressed,\n iconColor: t.colors.compoundBrandForeground1Pressed,\n indicatorColor: t.colors.compoundBrandStroke1Pressed,\n },\n },\n disabled: {\n color: t.colors.neutralForegroundDisabled,\n iconColor: t.colors.neutralForegroundDisabled,\n selected: {\n color: t.colors.neutralForegroundDisabled,\n iconColor: t.colors.neutralForegroundDisabled,\n indicatorColor: t.colors.neutralForegroundDisabled,\n },\n },\n hovered: {\n color: t.colors.neutralForeground2Hover,\n iconColor: t.colors.neutralForeground2Hover,\n indicatorColor: t.colors.neutralStroke1Hover,\n selected: {\n color: t.colors.neutralForeground1Hover,\n iconColor: t.colors.compoundBrandForeground1Hover,\n indicatorColor: t.colors.compoundBrandStroke1Hover,\n subtle: {\n indicatorColor: t.colors.compoundBrandStroke1Hover,\n },\n },\n disabled: {\n indicatorColor: t.colors.transparentBackground,\n },\n transparent: {\n backgroundColor: t.colors.transparentBackgroundHover,\n },\n subtle: {\n backgroundColor: t.colors.subtleBackgroundHover,\n indicatorColor: t.colors.neutralStroke1Hover,\n },\n },\n pressed: {\n color: t.colors.neutralForeground2Pressed,\n iconColor: t.colors.neutralForeground2Pressed,\n indicatorColor: t.colors.neutralStroke1Pressed,\n transparent: {\n backgroundColor: t.colors.transparentBackgroundPressed,\n },\n subtle: {\n backgroundColor: t.colors.subtleBackgroundPressed,\n },\n },\n focused: {\n borderColor: t.colors.neutralForeground1,\n },\n });\n};\n//# sourceMappingURL=TabColorTokens.js.map","import { buildUseTokens } from '@fluentui-react-native/framework';\nimport { tabName } from './Tab.types';\nimport { defaultTabColorTokens } from './TabColorTokens';\nexport var tabStates = [\n 'small',\n 'medium',\n 'large',\n 'vertical',\n 'hovered',\n 'disabled',\n 'selected',\n 'focused',\n 'pressed',\n 'transparent',\n 'subtle',\n 'hasIcon',\n];\nexport var defaultTabTokens = {\n indicatorOrientation: 'horizontal',\n indicatorThickness: 2,\n borderWidth: 2,\n borderRadius: 4,\n contentMarginStart: 2,\n contentMarginEnd: 2,\n flexDirection: 'column',\n indicatorRadius: 99,\n numberOfLines: 1,\n small: {\n iconSize: 20,\n iconMargin: 2,\n indicatorMargin: 8,\n stackMarginHorizontal: 6,\n stackMarginVertical: 8,\n variant: 'body1',\n selected: {\n variant: 'body1Strong',\n },\n },\n medium: {\n iconSize: 20,\n iconMargin: 6,\n indicatorMargin: 12,\n stackMarginHorizontal: 10,\n stackMarginVertical: 12,\n variant: 'body1',\n selected: {\n variant: 'body1Strong',\n },\n },\n large: {\n iconSize: 24,\n iconMargin: 6,\n indicatorMargin: 12,\n stackMarginHorizontal: 10,\n stackMarginVertical: 16,\n variant: 'body2',\n selected: {\n variant: 'subtitle2',\n },\n },\n vertical: {\n flexDirection: 'row-reverse',\n indicatorOrientation: 'vertical',\n small: {\n indicatorMargin: 4,\n stackMarginHorizontal: 6,\n stackMarginVertical: 2,\n },\n medium: {\n indicatorMargin: 8,\n stackMarginHorizontal: 10,\n stackMarginVertical: 6,\n },\n large: {\n indicatorMargin: 10,\n stackMarginHorizontal: 10,\n stackMarginVertical: 8,\n },\n },\n hasIcon: {\n contentMarginStart: 8,\n },\n};\nexport var useTabTokens = buildUseTokens(defaultTabTokens, defaultTabColorTokens, tabName);\n//# sourceMappingURL=TabTokens.js.map","import { __assign, __rest, __spreadArray } from \"tslib\";\nimport * as React from 'react';\nimport { memoize } from '@fluentui-react-native/framework';\nimport { usePressableState, useKeyProps, useOnPressWithFocus, useViewCommandFocus } from '@fluentui-react-native/interactive-hooks';\nimport { TabListContext } from '../TabList/TabListContext';\nvar defaultAccessibilityActions = [{ name: 'Select' }];\n/**\n * Re-usable hook for Tab.\n * This hook configures tabs item props and state for Tab.\n *\n * @param props user props sent to Tab\n * @returns configured props and state for Tab\n */\nexport var useTab = function (props) {\n var _a;\n var defaultComponentRef = React.useRef(null);\n var accessibilityActions = props.accessibilityActions, accessibilityPositionInSet = props.accessibilityPositionInSet, accessibilitySetSize = props.accessibilitySetSize, accessibilityState = props.accessibilityState, accessible = props.accessible, _b = props.componentRef, componentRef = _b === void 0 ? defaultComponentRef : _b, disabled = props.disabled, icon = props.icon, onAccessibilityAction = props.onAccessibilityAction, tabKey = props.tabKey, rest = __rest(props, [\"accessibilityActions\", \"accessibilityPositionInSet\", \"accessibilitySetSize\", \"accessibilityState\", \"accessible\", \"componentRef\", \"disabled\", \"icon\", \"onAccessibilityAction\", \"tabKey\"]);\n // Grabs the context information from Tabs (currently selected Tab and client's onTabSelect callback).\n var _c = React.useContext(TabListContext), addTabKey = _c.addTabKey, invoked = _c.invoked, onTabSelect = _c.onTabSelect, removeTabKey = _c.removeTabKey, setInvoked = _c.setInvoked, setFocusedTabRef = _c.setFocusedTabRef, selectedKey = _c.selectedKey, tabKeys = _c.tabKeys, tablist = __rest(_c, [\"addTabKey\", \"invoked\", \"onTabSelect\", \"removeTabKey\", \"setInvoked\", \"setFocusedTabRef\", \"selectedKey\", \"tabKeys\"]);\n var isDisabled = disabled || tablist.disabled;\n var changeSelection = React.useCallback(function () {\n if (tabKey !== selectedKey) {\n onTabSelect(tabKey);\n componentRef && setFocusedTabRef(componentRef);\n }\n }, [componentRef, setFocusedTabRef, onTabSelect, selectedKey, tabKey]);\n var changeSelectionWithFocus = useOnPressWithFocus(componentRef, changeSelection);\n var pressable = usePressableState(__assign(__assign({}, rest), { onPress: changeSelectionWithFocus }));\n var onKeyProps = useKeyProps(changeSelection, ' ', 'Enter');\n /**\n * This runs on initial render. Here we do two things:\n * - We update the global TabList context to populate its list of all tabKeys.\n * - If a selected key is initially set, we update the initial defaultTabbableElement ref to be the selected element.\n * This is because the componentRef is not generated until after the initial render.\n */\n React.useEffect(function () {\n // Add tab key to the global TabList context.\n addTabKey(tabKey);\n // Set a defaultTabbableElement if we're the initial selectedKey.\n if (selectedKey === tabKey) {\n componentRef && setFocusedTabRef(componentRef);\n }\n return function () { return removeTabKey(tabKey); };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n // Used when creating accessibility properties in mergeSettings below.\n var onAccessibilityActionProp = React.useCallback(function (event) {\n if (!isDisabled) {\n switch (event.nativeEvent.actionName) {\n case 'Select':\n changeSelection();\n break;\n }\n onAccessibilityAction && onAccessibilityAction(event);\n }\n }, [changeSelection, isDisabled, onAccessibilityAction]);\n var accessibilityActionsProp = React.useMemo(function () { return (accessibilityActions ? __spreadArray(__spreadArray([], defaultAccessibilityActions, true), accessibilityActions, true) : defaultAccessibilityActions); }, [accessibilityActions]);\n return {\n props: __assign(__assign(__assign(__assign({}, props), pressable.props), { accessible: accessible !== null && accessible !== void 0 ? accessible : true, accessibilityRole: 'tab', accessibilityActions: accessibilityActionsProp, accessibilityPositionInSet: accessibilityPositionInSet !== null && accessibilityPositionInSet !== void 0 ? accessibilityPositionInSet : tabKeys.findIndex(function (key) { return key === tabKey; }) + 1, accessibilityState: getAccessibilityState(isDisabled, selectedKey === tabKey, accessibilityState), accessibilitySetSize: accessibilitySetSize !== null && accessibilitySetSize !== void 0 ? accessibilitySetSize : tabKeys.length, disabled: isDisabled, focusable: (_a = !isDisabled) !== null && _a !== void 0 ? _a : true, icon: icon, onAccessibilityAction: onAccessibilityActionProp, ref: useViewCommandFocus(componentRef), tabKey: tabKey }), onKeyProps),\n state: __assign(__assign({}, pressable.state), { selected: tabKey === selectedKey }),\n };\n};\nvar getAccessibilityState = memoize(getAccessibilityStateWorker);\nfunction getAccessibilityStateWorker(disabled, selected, accessibilityState) {\n if (accessibilityState) {\n return __assign({ disabled: disabled, selected: selected }, accessibilityState);\n }\n return { disabled: disabled, selected: selected };\n}\n//# sourceMappingURL=useTab.js.map","import * as React from 'react';\nvar nullFunction = function () { return null; };\nexport var TabListContext = React.createContext({\n addTabKey: nullFunction,\n appearance: 'transparent',\n canShowAnimatedIndicator: false,\n disabled: false,\n onTabSelect: nullFunction,\n removeTabKey: nullFunction,\n selectedKey: '',\n setFocusedTabRef: nullFunction,\n size: 'small',\n tabKeys: [],\n vertical: false,\n updateDisabledTabs: nullFunction,\n updateTabRef: nullFunction,\n});\n//# sourceMappingURL=TabListContext.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport { I18nManager, Platform } from 'react-native';\n/**\n * On win32, when a vertical tablist initially lays out, we sometimes get odd, large height values that cause the\n * indicator to noticably take up the entire screen height before getting a correct layout value that makes sense. This is\n * an arbitrary limit we'll set to keep the indicator from looking weird.\n */\nvar RENDERING_HEIGHT_LIMIT = 20000;\n/**\n * This hook handles the logic on the tab side to correctly style and animate the TabListAnimatedIndicator.\n *\n * We save the layout information (width, height, x, y) of the Tab component by returning the root's slot props with a\n * LayoutEventHandler attached to track layout info of the tab, and we color the animated indicator using the user\n * defined tab indicator color token.\n */\nexport function useTabAnimation(props, context, tokens, rootProps) {\n var addTabLayout = context.addTabLayout, selectedKey = context.selectedKey, layout = context.layout, updateAnimatedIndicatorStyles = context.updateAnimatedIndicatorStyles, vertical = context.vertical;\n var tabKey = props.tabKey, onLayout = props.onLayout;\n // If we're the selected tab, we style the TabListAnimatedIndicator with the correct token value set by the user\n React.useEffect(function () {\n if (tabKey === selectedKey && updateAnimatedIndicatorStyles) {\n updateAnimatedIndicatorStyles({ backgroundColor: tokens.indicatorColor, borderRadius: tokens.indicatorRadius });\n }\n // Disabling warning because effect does not need to fire on `updateAnimatedIndicatorStyles` being changed\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [tabKey, selectedKey, tokens.indicatorColor, tokens.indicatorRadius]);\n /**\n * This checks to see if we have relevant info to calculate the layout position and dimensions of the indicator. If this check fails, we don't\n * want to trigger a re-render by needlessly updating the TabList state.\n *\n * We also check if the info is good. Info can be bad in some weird cases on win32:\n * - Check if width > 0 because there is an on-going issue caused by ScrollViews initially laying out its childrens' width to 0 and height to be a bigger than expected value.\n * - ScrollView also negatively affects the initial height values. For vertical TabLists, the initial height value will lay out incorrectly. Sometimes, the styling of the parent\n * component combined with the ScrollView issues causes the initial height layout value to be completely unreasonable. Exactly which style that causes this issue isn't known;\n * more investigation has to be done.\n *\n * Once we finish these checks, for each tab, we calculate the layout information of its indicator consisting of (1) its dimensions and (2) its position (x,y) relative to the tablist.\n * Afterwards, we save these to feed into the Animated Indicator's layout styles.\n */\n var onTabLayout = React.useCallback(function (e) {\n if ((e.nativeEvent.layout &&\n // Following checks are for win32 only, will be removed after addressing scrollview layout bug\n Platform.OS !== 'win32') ||\n ((layout === null || layout === void 0 ? void 0 : layout.tablist) &&\n layout.tablist.width > 0 &&\n e.nativeEvent.layout.height <= layout.tablist.height &&\n e.nativeEvent.layout.height < RENDERING_HEIGHT_LIMIT)) {\n var _a = e.nativeEvent.layout, tabWidth = _a.width, tabHeight = _a.height, tabX = _a.x, tabY = _a.y;\n var indicatorWidth = void 0, indicatorHeight = void 0, indicatorX = void 0, indicatorY = void 0;\n // Total Indicator inset consists of the horizontal/vertical margin of the indicator, the space taken up by the tab's focus border, and the\n // existing padding between the focus border and the tab itself.\n var focusBorderPadding = 1;\n var totalIndicatorInset = tokens.indicatorMargin + tokens.borderWidth + focusBorderPadding;\n if (vertical) {\n indicatorWidth = tokens.indicatorThickness;\n indicatorHeight = tabHeight - totalIndicatorInset * 2; // multiply inset by 2 to subtract height from top and bottom\n indicatorY = tabY + totalIndicatorInset;\n if (I18nManager.isRTL) {\n // On RTL, the vertical tab indicator should appear to the right of the text\n indicatorX = tabX + tabWidth - (tokens.borderWidth + focusBorderPadding + indicatorWidth);\n }\n else {\n indicatorX = tabX + tokens.borderWidth + focusBorderPadding;\n }\n }\n else {\n indicatorWidth = tabWidth - totalIndicatorInset * 2; // multiply inset by 2 to subtract width from left and right\n indicatorHeight = tokens.indicatorThickness;\n indicatorX = tabX + totalIndicatorInset;\n indicatorY = tabHeight + tabY - indicatorHeight - tokens.borderWidth - focusBorderPadding;\n }\n addTabLayout(tabKey, {\n x: indicatorX,\n y: indicatorY,\n width: indicatorWidth,\n height: indicatorHeight,\n });\n }\n onLayout && onLayout(e);\n }, [addTabLayout, layout, onLayout, tabKey, tokens.borderWidth, tokens.indicatorMargin, tokens.indicatorThickness, vertical]);\n return React.useMemo(function () { return (__assign(__assign({}, rootProps), { onLayout: onTabLayout })); }, [rootProps, onTabLayout]);\n}\n//# sourceMappingURL=useTabAnimation.js.map","export var tabListName = 'TabList';\n//# sourceMappingURL=TabList.types.js.map","import { __assign, __rest } from \"tslib\";\nimport { View } from 'react-native';\nimport { FocusZone } from '@fluentui-react-native/focus-zone';\nimport { compose, mergeProps, withSlots } from '@fluentui-react-native/framework';\nimport { stylingSettings } from './TabList.styling';\nimport { tabListName } from './TabList.types';\nimport { TabListContext } from './TabListContext';\nimport { useTabList } from './useTabList';\nimport TabListAnimatedIndicator from '../TabListAnimatedIndicator/TabListAnimatedIndicator';\nexport var TabList = compose(__assign(__assign({ displayName: tabListName }, stylingSettings), { slots: {\n container: FocusZone,\n stack: View,\n root: View,\n }, useRender: function (userProps, useSlots) {\n // configure props and state for tabs based on user props\n var tablist = useTabList(userProps);\n // Grab the styled slots.\n var Slots = useSlots(userProps);\n // Return the handler to finish render.\n return function (final) {\n var children = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n children[_i - 1] = arguments[_i];\n }\n if (!tablist.state) {\n return null;\n }\n var _a = mergeProps(tablist.props, final), disabled = _a.disabled, defaultTabbableElement = _a.defaultTabbableElement, isCircularNavigation = _a.isCircularNavigation, vertical = _a.vertical, mergedProps = __rest(_a, [\"disabled\", \"defaultTabbableElement\", \"isCircularNavigation\", \"vertical\"]);\n var _b = tablist.state, animatedIndicatorStyles = _b.animatedIndicatorStyles, canShowAnimatedIndicator = _b.canShowAnimatedIndicator, tablistDisabledState = _b.disabled, layout = _b.layout, selectedKey = _b.selectedKey;\n return (withSlots(TabListContext.Provider\n // Passes in the selected key and a hook function to update the newly selected tab and call the client's onTabsClick callback.\n , { \n // Passes in the selected key and a hook function to update the newly selected tab and call the client's onTabsClick callback.\n value: tablist.state },\n withSlots(Slots.root, __assign({}, mergedProps),\n withSlots(Slots.container, { disabled: disabled || tablistDisabledState, defaultTabbableElement: defaultTabbableElement, focusZoneDirection: vertical ? 'vertical' : 'horizontal', isCircularNavigation: isCircularNavigation },\n withSlots(Slots.stack, null, children),\n canShowAnimatedIndicator && (withSlots(TabListAnimatedIndicator, { animatedIndicatorStyles: animatedIndicatorStyles, selectedKey: selectedKey, tabLayout: layout.tabs, vertical: vertical }))))));\n };\n } }));\nexport default TabList;\n//# sourceMappingURL=TabList.js.map","export var defaultTabListTokens = function () {\n return ({\n direction: 'row',\n vertical: {\n direction: 'column',\n },\n });\n};\n//# sourceMappingURL=TabListTokens.js.map","import { __assign } from \"tslib\";\nimport { buildProps, layoutStyles } from '@fluentui-react-native/framework';\nimport { tabListName } from './TabList.types';\nimport { defaultTabListTokens } from './TabListTokens';\nexport var stylingSettings = {\n tokens: [defaultTabListTokens, tabListName],\n states: ['vertical'],\n slotProps: {\n stack: buildProps(function (tokens) { return ({\n style: {\n display: 'flex',\n flexDirection: tokens.direction,\n flex: 0,\n },\n }); }, ['direction']),\n root: buildProps(function (tokens, theme) { return ({\n style: __assign({ display: 'flex', alignItems: 'flex-start' }, layoutStyles.from(tokens, theme)),\n }); }, layoutStyles.keys),\n },\n};\n//# sourceMappingURL=TabList.styling.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport * as React from 'react';\nimport { Platform } from 'react-native';\nimport { memoize, mergeStyles } from '@fluentui-react-native/framework';\nimport { useSelectedKey } from '@fluentui-react-native/interactive-hooks';\n/**\n * Re-usable hook for TabList.\n * This hook configures props and state for TabList.\n *\n * @param props user props sent to TabList\n * @returns configured props and state for TabList\n */\nexport var useTabList = function (props) {\n var defaultComponentRef = React.useRef(null);\n var accessible = props.accessible, _a = props.appearance, appearance = _a === void 0 ? 'transparent' : _a, accessibilityState = props.accessibilityState, _b = props.componentRef, componentRef = _b === void 0 ? defaultComponentRef : _b, defaultSelectedKey = props.defaultSelectedKey, _c = props.disabled, disabled = _c === void 0 ? false : _c, isCircularNavigation = props.isCircularNavigation, onTabSelect = props.onTabSelect, selectedKey = props.selectedKey, _d = props.size, size = _d === void 0 ? 'medium' : _d, _e = props.vertical, vertical = _e === void 0 ? false : _e;\n var data = useSelectedKey(selectedKey || defaultSelectedKey || null, onTabSelect);\n var selectedTabKey = selectedKey !== null && selectedKey !== void 0 ? selectedKey : data.selectedKey;\n // focusedTabRef should be set to default tabbable element.\n var _f = React.useState(React.useRef(null)), focusedTabRef = _f[0], setFocusedTabRef = _f[1];\n var _g = React.useState(false), invoked = _g[0], setInvoked = _g[1];\n var _h = React.useState([]), tabKeys = _h[0], setTabKeys = _h[1];\n var _j = React.useState(false), allTabsDisabled = _j[0], setAllTabsDisabled = _j[1];\n // These maps are used to switch tab focus in the event the selected tab is disabled. React refs are used as storage because updating the maps shouldn't trigger a re-render.\n var tabRefMap = React.useRef({}).current;\n var disabledStateMap = React.useRef({}).current;\n var updateTabRef = React.useCallback(function (key, ref) { return (tabRefMap[key] = ref); }, [tabRefMap]);\n var updateDisabledTabs = React.useCallback(function (key, isDisabled) {\n disabledStateMap[key] = isDisabled;\n if (allTabsDisabled && !isDisabled) {\n setAllTabsDisabled(false);\n }\n }, [allTabsDisabled, disabledStateMap]);\n var addTabKey = React.useCallback(function (tabKey) {\n if (__DEV__ && tabKeys.includes(tabKey)) {\n console.warn(\"Tab Key \\\"\".concat(tabKey, \"\\\" already exists in the TabList. Duplicate keys are not supported.\"));\n }\n setTabKeys(function (keys) { return __spreadArray(__spreadArray([], keys, true), [tabKey], false); });\n }, [tabKeys, setTabKeys]);\n var removeTabKey = React.useCallback(function (tabKey) {\n setTabKeys(function (keys) { return keys.filter(function (key) { return key !== tabKey; }); });\n }, [setTabKeys]);\n var incrementSelectedTab = React.useCallback(function (goBackward) {\n var currentIndex = tabKeys.indexOf(selectedTabKey);\n var direction = goBackward ? -1 : 1;\n var increment = 1;\n var newTabKey;\n // We want to only switch selection to non-disabled tabs. This loop allows us to skip over disabled ones.\n while (increment <= tabKeys.length) {\n var newIndex = (currentIndex + direction * increment) % tabKeys.length;\n if (newIndex < 0) {\n newIndex = tabKeys.length + newIndex;\n }\n newTabKey = tabKeys[newIndex];\n if (disabledStateMap[newTabKey]) {\n increment += 1;\n }\n else {\n break;\n }\n }\n // Unable to find a non-disabled next tab, early return\n if (increment > tabKeys.length) {\n return;\n }\n data.onKeySelect(newTabKey);\n }, [data, disabledStateMap, selectedTabKey, tabKeys]);\n // State variables and functions for saving layout info and other styling information to style the animated indicator.\n var _k = React.useState({}), listLayoutMap = _k[0], setListLayoutMap = _k[1];\n var _l = React.useState(), tabListLayout = _l[0], setTabListLayout = _l[1];\n var _m = React.useState({}), userDefinedAnimatedIndicatorStyles = _m[0], setUserDefinedAnimatedIndicatorStyles = _m[1];\n var addTabLayout = React.useCallback(function (tabKey, layoutInfo) {\n setListLayoutMap(function (prev) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[tabKey] = layoutInfo, _a)));\n });\n }, [setListLayoutMap]);\n var updateStyles = React.useCallback(function (update) {\n setUserDefinedAnimatedIndicatorStyles(function (prev) { return mergeStyles(prev, update); });\n }, [setUserDefinedAnimatedIndicatorStyles]);\n // TabList layout callback used to style the animated indicator.\n var onTabListLayout = React.useCallback(function (e) {\n if (e.nativeEvent.layout) {\n setTabListLayout(e.nativeEvent.layout);\n }\n }, [setTabListLayout]);\n // If the current selected tab becomes disabled, the following useEffect sets the default focused element to the next non-disabled tab key.\n // Without this, keyboard navigation gets stuck when attempting to tab towards the tablist and every following element after\n var isSelectedTabDisabled = disabledStateMap[selectedTabKey];\n React.useEffect(function () {\n if (isSelectedTabDisabled) {\n // switch focus to the next available tab key\n var tabIndex = tabKeys.indexOf(selectedTabKey);\n for (var i = 0; i < tabKeys.length; i++) {\n tabIndex = (tabIndex + 1) % tabKeys.length;\n if (!disabledStateMap[tabKeys[tabIndex]]) {\n break;\n }\n }\n if (tabKeys[tabIndex] === selectedTabKey) {\n // In the very rare edge case of all tabs somehow being disabled, we need to set this tablist to become disabled to prevent users from keyboarding in\n setAllTabsDisabled(true);\n }\n else {\n var ref = tabRefMap[tabKeys[tabIndex]];\n setFocusedTabRef(ref);\n }\n }\n // Disable exhaustive-deps warning because this hook should only run once 'isSelectedTabDisabled' dependency changes.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isSelectedTabDisabled]);\n // win32 only prop used to implemement CTRL + TAB shortcut native to windows tab components\n var onRootKeyDown = React.useCallback(function (e) {\n var _a;\n if (Platform.OS === 'win32' && e.nativeEvent.key === 'Tab' && e.nativeEvent.ctrlKey) {\n incrementSelectedTab(e.nativeEvent.shiftKey);\n setInvoked(true); // on win32, set focus on the new tab without triggering narration twice\n }\n (_a = props.onKeyDown) === null || _a === void 0 ? void 0 : _a.call(props, e);\n }, [incrementSelectedTab, props]);\n return {\n props: __assign(__assign({}, props), { accessible: accessible !== null && accessible !== void 0 ? accessible : true, accessibilityState: getAccessibilityState(disabled || allTabsDisabled, accessibilityState), accessibilityRole: 'tablist', appearance: appearance, componentRef: componentRef, defaultTabbableElement: focusedTabRef, isCircularNavigation: isCircularNavigation !== null && isCircularNavigation !== void 0 ? isCircularNavigation : false, onKeyDown: onRootKeyDown, onLayout: onTabListLayout, size: size, vertical: vertical }),\n state: {\n addTabKey: addTabKey,\n addTabLayout: addTabLayout,\n animatedIndicatorStyles: userDefinedAnimatedIndicatorStyles,\n appearance: appearance,\n canShowAnimatedIndicator: !!(userDefinedAnimatedIndicatorStyles && listLayoutMap && listLayoutMap[selectedTabKey]),\n disabled: disabled || allTabsDisabled,\n invoked: invoked,\n layout: {\n tablist: tabListLayout,\n tabs: listLayoutMap,\n },\n onTabSelect: data.onKeySelect,\n removeTabKey: removeTabKey,\n selectedKey: selectedTabKey,\n setFocusedTabRef: setFocusedTabRef,\n setInvoked: setInvoked,\n size: size,\n tabKeys: tabKeys,\n vertical: vertical,\n updateAnimatedIndicatorStyles: updateStyles,\n updateDisabledTabs: updateDisabledTabs,\n updateTabRef: updateTabRef,\n },\n };\n};\nvar getAccessibilityState = memoize(getAccessibilityStateWorker);\nfunction getAccessibilityStateWorker(disabled, accessibilityState) {\n if (accessibilityState) {\n return __assign({ disabled: disabled }, accessibilityState);\n }\n return { disabled: disabled };\n}\n//# sourceMappingURL=useTabList.js.map","/** @jsxRuntime classic */\nimport React from 'react';\nimport { Animated } from 'react-native';\nimport { stagedComponent } from '@fluentui-react-native/framework';\nimport { tablistAnimatedIndicatorName } from './TabListAnimatedIndicator.types';\nimport { useAnimatedIndicatorStyles } from './useAnimatedIndicatorStyles';\nexport var TabListAnimatedIndicator = stagedComponent(function (props) {\n var styles = useAnimatedIndicatorStyles(props);\n return function () {\n return React.createElement(Animated.View, { style: styles });\n };\n});\nTabListAnimatedIndicator.displayName = tablistAnimatedIndicatorName;\nexport default TabListAnimatedIndicator;\n//# sourceMappingURL=TabListAnimatedIndicator.js.map","export var tablistAnimatedIndicatorName = 'TabListAnimatedIndicator';\n//# sourceMappingURL=TabListAnimatedIndicator.types.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport { Animated, Easing, I18nManager } from 'react-native';\n/**\n * This hook handles logic for generating the styles for the TabList's Animated Indicator. Child Tabs add layout update events to state\n * variables here, which we use to either directly update the layout values of the animated indicator (on win32) or generate the transforms\n * to move the indicator (on non-win32 platforms).\n */\nexport function useAnimatedIndicatorStyles(props) {\n var additionalStyles = props.animatedIndicatorStyles, selectedKey = props.selectedKey, tabLayout = props.tabLayout, vertical = props.vertical;\n // animated values\n var indicatorTranslate = React.useRef(new Animated.Value(0)).current;\n var indicatorScale = React.useRef(new Animated.Value(1)).current;\n // Save the initial selected layout, this shouldn't update after the first render.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n var startingKey = React.useMemo(function () { return selectedKey; }, []);\n React.useEffect(function () {\n var startingIndicatorLayout = tabLayout[startingKey];\n var selectedIndicatorLayout = tabLayout[selectedKey];\n if (startingIndicatorLayout && selectedIndicatorLayout) {\n /**\n * Calculate transforms. Because the scale transform's origin is at the center, we need to calculate an extra offset to add to the\n * translate transform to place the indicator at the correct location on screen.\n */\n var scaleValue = void 0, translateValue = void 0, translateOffset = void 0;\n if (vertical) {\n scaleValue = selectedIndicatorLayout.height / startingIndicatorLayout.height;\n translateOffset = (selectedIndicatorLayout.height - startingIndicatorLayout.height) / 2;\n translateValue = selectedIndicatorLayout.y - startingIndicatorLayout.y;\n }\n else {\n scaleValue = selectedIndicatorLayout.width / startingIndicatorLayout.width;\n translateOffset = (selectedIndicatorLayout.width - startingIndicatorLayout.width) / 2;\n translateValue = selectedIndicatorLayout.x - startingIndicatorLayout.x;\n }\n Animated.parallel([\n Animated.timing(indicatorScale, {\n toValue: scaleValue,\n duration: 300,\n easing: Easing.bezier(0, 0, 0, 1),\n useNativeDriver: true,\n }),\n Animated.timing(indicatorTranslate, {\n toValue: translateValue + translateOffset,\n duration: 300,\n easing: Easing.bezier(0, 0, 0, 1),\n useNativeDriver: true,\n }),\n ]).start();\n }\n // This hook should only run when (1) the selected key / vertical prop changes and (2) whenever the tabLayout map changes because that implies an\n // extent change among the tabs: specifically whenever the selected tab is bolded and previously selected tab is unbolded. Without checking for #2,\n // the animation for scaling and translating the indicator uses outdated layout info, resulting in a unaligned, small indicator. All other dependencies\n // are irrelevant.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selectedKey, tabLayout, vertical]);\n // Calculate styles using both layout information and user defined styles\n var styles = React.useMemo(function () {\n var _a;\n var _b = tabLayout[startingKey], x = _b.x, y = _b.y, width = _b.width, height = _b.height;\n /**\n * Currently the behavior of layout style props and RTL differs between mac and win32. On mac, RTL = true simply swaps `right` and `left`. This should have been\n * removed per this: https://reactnative.dev/blog/2017/11/06/react-native-monthly-5#:~:text=The%20meaning%20of,opt%20into%20them.\n *\n * Because this is still in place, we account for the swap with the ternary operator below.\n * TODO: once mac RTL styling is fixed, remove the ternary operator.\n */\n var indicatorStyles = __assign(__assign({}, additionalStyles), (_a = { position: 'absolute', height: height, width: width, top: y }, _a[I18nManager.isRTL ? 'right' : 'left'] = x, _a));\n if (vertical) {\n indicatorStyles.transform = [{ translateY: indicatorTranslate }, { scaleY: indicatorScale }];\n }\n else {\n indicatorStyles.transform = [{ translateX: indicatorTranslate }, { scaleX: indicatorScale }];\n }\n return indicatorStyles;\n }, [additionalStyles, indicatorScale, indicatorTranslate, startingKey, tabLayout, vertical]);\n return styles;\n}\n//# sourceMappingURL=useAnimatedIndicatorStyles.js.map","export function createAliasesFromPalette(palette, isHighContrast) {\n // Workaround for getting checkmark to have correct color in HC\n // while native code doesn't support PlatformColor\n if (isHighContrast) {\n return {};\n }\n return {\n neutralForeground1: palette.Text,\n neutralForeground1Hover: palette.TextHover,\n neutralForeground1Pressed: palette.TextPressed,\n neutralForeground1Selected: palette.TextSelected,\n neutralForeground2: palette.TextSecondary,\n neutralForeground2Hover: palette.TextSecondaryHover,\n neutralForeground2Pressed: palette.TextSecondaryPressed,\n neutralForeground2Selected: palette.TextSecondarySelected,\n neutralForeground4: palette.TextCtlSubtlePlaceholder,\n neutralForegroundDisabled: palette.TextDisabled,\n compoundBrandForeground1: palette.TextEmphasis,\n compoundBrandForeground1Hover: palette.TextEmphasisHover,\n compoundBrandForeground1Pressed: palette.TextEmphasisPressed,\n neutralForegroundInverted: palette.TextCtlSubtleSelectionHighlight,\n neutralForegroundOnBrand: palette.TextCtlEmphasis,\n neutralForegroundOnBrandHover: palette.TextCtlEmphasisHover,\n neutralForegroundOnBrandPressed: palette.TextCtlEmphasisPressed,\n neutralForegroundInvertedLink: palette.BkgToggleSwitchOff,\n neutralForegroundInvertedLinkHover: palette.BkgToggleSwitchOffHover,\n neutralForegroundInvertedLinkPressed: palette.BkgToggleSwitchOffPressed,\n neutralBackground1: palette.Bkg,\n neutralBackground1Hover: palette.BkgHover,\n neutralBackground1Pressed: palette.BkgPressed,\n neutralBackground1Selected: palette.BkgSelected,\n neutralBackground2: palette.BkgHeader,\n neutralBackground2Hover: palette.BkgSubtle,\n neutralBackground3: palette.BkgSubtle,\n neutralBackgroundInverted: palette.BkgSelectionHighlight,\n neutralBackgroundDisabled: palette.BkgCtlDisabled,\n neutralStencil1: palette.SliderBuffer,\n brandBackground: palette.BkgCtlEmphasis,\n brandBackgroundHover: palette.BkgCtlEmphasisHover,\n brandBackgroundPressed: palette.BkgCtlEmphasisPressed,\n compoundBrandBackground1: palette.BkgToggleSwitchOn,\n compoundBrandBackground1Hover: palette.BkgToggleSwitchOnHover,\n compoundBrandBackground1Pressed: palette.BkgToggleSwitchOnPressed,\n neutralStrokeAccessible: palette.StrokeOnlySelected,\n neutralStrokeAccessibleHover: palette.StrokeOnlyHover,\n neutralStrokeAccessiblePressed: palette.StrokeOnlyPressed,\n neutralStroke1: palette.StrokeCtl,\n neutralStroke1Hover: palette.StrokeSelectedHover,\n neutralStroke1Pressed: palette.StrokeOverPressed,\n neutralStroke2: palette.SliderBuffer,\n brandStroke1: palette.AccentEmphasis,\n compoundBrandStroke1: palette.StrokeToggleSwitchOn,\n compoundBrandStroke1Hover: palette.StrokeToggleSwitchOnHover,\n compoundBrandStroke1Pressed: palette.StrokeToggleSwitchOnPressed,\n neutralStrokeDisabled: palette.StrokeCtlDisabled,\n strokeFocus2: palette.StrokeKeyboard,\n };\n}\n//# sourceMappingURL=createAliasesFromPalette.js.map","import { globalTokens } from '@fluentui-react-native/theme-tokens';\nexport function createBrandedThemeWithAlias(themeName, theme) {\n if (themeName === 'HighContrast' || !theme.host.colors) {\n return {};\n }\n return {\n colors: getCurrentBrandAliasTokens(themeName, theme.host.colors.AppPrimary),\n };\n}\nexport function getCurrentBrandAliasTokens(themeName, appPrimary) {\n var appColors = getAppColors(appPrimary);\n var isWhiteOrColorfulTheme = themeName === 'White' || themeName === 'Colorful';\n return {\n neutralForeground2BrandHover: isWhiteOrColorfulTheme ? appColors.shade10 : appColors.tint40,\n neutralForeground2BrandPressed: isWhiteOrColorfulTheme ? appColors.shade30 : appColors.tint10,\n neutralForeground2BrandSelected: isWhiteOrColorfulTheme ? appColors.shade20 : appColors.tint40,\n neutralForeground3BrandHover: isWhiteOrColorfulTheme ? appColors.shade10 : appColors.tint40,\n neutralForeground3BrandPressed: isWhiteOrColorfulTheme ? appColors.shade30 : appColors.tint10,\n neutralForeground3BrandSelected: isWhiteOrColorfulTheme ? appColors.shade20 : appColors.tint40,\n brandForegroundLink: isWhiteOrColorfulTheme ? appColors.primary : appColors.tint30,\n brandForegroundLinkHover: isWhiteOrColorfulTheme ? appColors.shade10 : appColors.tint40,\n brandForegroundLinkPressed: isWhiteOrColorfulTheme ? appColors.shade30 : appColors.tint10,\n brandForegroundLinkSelected: isWhiteOrColorfulTheme ? appColors.shade20 : appColors.tint40,\n compoundBrandForeground1: isWhiteOrColorfulTheme ? appColors.primary : appColors.tint30,\n compoundBrandForeground1Hover: isWhiteOrColorfulTheme ? appColors.shade10 : appColors.tint40,\n compoundBrandForeground1Pressed: isWhiteOrColorfulTheme ? appColors.shade30 : appColors.tint10,\n brandForeground1: isWhiteOrColorfulTheme ? appColors.primary : appColors.tint30,\n brandForeground2: isWhiteOrColorfulTheme ? appColors.shade10 : appColors.tint40,\n brandBackground: appColors.primary,\n brandBackgroundHover: appColors.shade10,\n brandBackgroundPressed: appColors.shade30,\n brandBackgroundSelected: appColors.shade20,\n compoundBrandBackground1: appColors.primary,\n compoundBrandBackground1Hover: appColors.shade10,\n compoundBrandBackground1Pressed: appColors.shade20,\n brandBackgroundStatic: appColors.primary,\n brandBackground2: appColors.tint40,\n neutralStrokeAccessibleSelected: appColors.primary,\n brandStroke1: appColors.primary,\n brandStroke2: appColors.tint40,\n compoundBrandStroke1: appColors.primary,\n compoundBrandStroke1Hover: appColors.shade10,\n compoundBrandStroke1Pressed: appColors.shade20,\n };\n}\nfunction getAppColors(primaryColor) {\n if (typeof primaryColor === 'string') {\n if (primaryColor.toLowerCase() === '#185abd') {\n return globalTokens.color.word;\n }\n else if (primaryColor.toLowerCase() === '#107c41') {\n return globalTokens.color.excel;\n }\n else if (primaryColor.toLowerCase() === '#d83b01') {\n return globalTokens.color.office;\n }\n else if (primaryColor.toLowerCase() === '#80397b' || primaryColor.toLowerCase() === '#7719aa') {\n return globalTokens.color.oneNote;\n }\n else if (primaryColor.toLowerCase() === '#0078d4') {\n return globalTokens.color.outlook;\n }\n else if (primaryColor.toLowerCase() === '#c43e1c') {\n return globalTokens.color.powerPoint;\n }\n }\n return globalTokens.color.brand;\n}\n//# sourceMappingURL=createBrandedThemeWithAlias.js.map","import blackAliasTokens from '@fluentui-react-native/design-tokens-win32/black/tokens-aliases.json';\nimport blackShadowTokens from '@fluentui-react-native/design-tokens-win32/black/tokens-shadow.json';\nimport colorfulAliasTokens from '@fluentui-react-native/design-tokens-win32/colorful/tokens-aliases.json';\nimport colorfulShadowTokens from '@fluentui-react-native/design-tokens-win32/colorful/tokens-shadow.json';\nimport darkGrayAliasTokens from '@fluentui-react-native/design-tokens-win32/darkgray/tokens-aliases.json';\nimport darkGrayShadowTokens from '@fluentui-react-native/design-tokens-win32/darkgray/tokens-shadow.json';\nimport hcShadowTokens from '@fluentui-react-native/design-tokens-win32/hc/tokens-shadow.json';\nimport { hcAliasTokens } from './highContrast/tokens-alias';\nexport function getOfficeAliasTokens(officeTheme) {\n if (officeTheme === 'White' || officeTheme === 'Colorful') {\n return colorfulAliasTokens;\n }\n else if (officeTheme === 'DarkGray') {\n return darkGrayAliasTokens;\n }\n else if (officeTheme === 'Black') {\n return blackAliasTokens;\n }\n else if (officeTheme === 'HighContrast') {\n return hcAliasTokens;\n }\n return colorfulAliasTokens;\n}\nexport function getOfficeShadowTokens(officeTheme) {\n if (officeTheme === 'White' || officeTheme === 'Colorful') {\n return colorfulShadowTokens;\n }\n else if (officeTheme === 'DarkGray') {\n return darkGrayShadowTokens;\n }\n else if (officeTheme === 'Black') {\n return blackShadowTokens;\n }\n else if (officeTheme === 'HighContrast') {\n return hcShadowTokens;\n }\n return colorfulAliasTokens;\n}\n//# sourceMappingURL=getOfficeTokens.js.map","import { PlatformColor } from 'react-native';\nimport aliasTokens from '@fluentui-react-native/design-tokens-win32/hc/tokens-aliases.json';\nexport var hcAliasTokens = processAliasTokens(aliasTokens);\nfunction processAliasTokens(aliasTokens) {\n for (var key in aliasTokens) {\n for (var innerKey in aliasTokens[key]) {\n var entry = aliasTokens[key][innerKey];\n if (typeof entry === 'string' && entry.includes('PlatformColor')) {\n var color = entry.substring(14, entry.length - 1);\n aliasTokens[key][innerKey] = PlatformColor(color);\n }\n }\n }\n return aliasTokens;\n}\n//# sourceMappingURL=tokens-alias.js.map","import { memoize } from '@fluentui-react-native/memo-cache';\nimport { mapPipelineToShadow, mapPipelineToTheme } from '@fluentui-react-native/theming-utils';\nimport { getOfficeAliasTokens, getOfficeShadowTokens } from './getOfficeTokens';\nfunction createOfficeColorAliasTokensWorker(officeTheme) {\n var aliasTokens = getOfficeAliasTokens(officeTheme);\n return mapPipelineToTheme(aliasTokens);\n}\nexport var createOfficeColorAliasTokens = memoize(createOfficeColorAliasTokensWorker);\nfunction createOfficeShadowAliasTokensWorker(officeTheme) {\n var aliasTokens = getOfficeShadowTokens(officeTheme);\n return mapPipelineToShadow(aliasTokens);\n}\nexport var createOfficeShadowAliasTokens = memoize(createOfficeShadowAliasTokensWorker);\n//# sourceMappingURL=createOfficeAliasTokens.js.map","export function paletteFromOfficeColors(p) {\n return {\n background: p.Bkg,\n bodyStandoutBackground: p.Bkg,\n bodyFrameBackground: p.Bkg,\n bodyFrameDivider: p.AccentLight,\n bodyText: p.Text,\n bodyTextChecked: p.TextSelected,\n subText: p.TextSecondary,\n bodyDivider: p.AccentLight,\n disabledBackground: p.BkgCtlSubtleDisabled,\n disabledText: p.TextCtlSubtleDisabled,\n disabledBodyText: p.TextDisabled,\n focusBorder: p.StrokeKeyboard,\n variantBorder: p.AccentOutline,\n errorText: p.TextError,\n inputBorder: p.StrokeCtlSubtle,\n inputBackground: p.BkgCtlSubtle,\n inputFocusBorderAlt: p.StrokeCtlSubtleKeyboard,\n inputText: p.TextCtlSubtle,\n inputPlaceholderText: p.TextCtlSubtlePlaceholder,\n buttonBackground: p.BkgCtl,\n buttonBackgroundChecked: p.BkgCtlSelected,\n buttonBackgroundHovered: p.BkgCtlHover,\n buttonBackgroundPressed: p.BkgCtlPressed,\n buttonBackgroundDisabled: p.BkgCtlDisabled,\n buttonBorder: p.StrokeCtl,\n buttonText: p.TextCtl,\n buttonTextHovered: p.TextCtlHover,\n buttonTextChecked: p.TextCtlSelected,\n buttonTextPressed: p.TextCtlPressed,\n buttonTextDisabled: p.TextCtlDisabled,\n buttonBorderDisabled: p.StrokeCtlDisabled,\n buttonBorderFocused: p.StrokeCtlKeyboard,\n primaryButtonBackground: p.BkgCtlEmphasis,\n primaryButtonBackgroundHovered: p.BkgCtlEmphasisHover,\n primaryButtonBackgroundPressed: p.BkgCtlEmphasisPressed,\n primaryButtonBackgroundDisabled: p.BkgCtlEmphasisDisabled,\n primaryButtonBorder: p.StrokeCtlEmphasis,\n primaryButtonBorderFocused: p.StrokeCtlEmphasisKeyboard,\n primaryButtonText: p.TextCtlEmphasis,\n primaryButtonTextHovered: p.TextCtlEmphasisHover,\n primaryButtonTextPressed: p.TextCtlEmphasisPressed,\n primaryButtonTextDisabled: p.TextCtlEmphasisDisabled,\n accentButtonBackground: p.BkgCtlEmphasis,\n menuBackground: p.Bkg,\n menuDivider: p.AccentLight,\n menuIcon: p.Text,\n menuItemBackgroundHovered: p.BkgHover,\n menuItemBackgroundPressed: p.BkgPressed,\n menuItemText: p.Text,\n menuItemTextHovered: p.TextHover,\n listHeaderBackgroundHovered: p.BkgHover,\n listHeaderBackgroundPressed: p.BkgPressed,\n actionLink: p.TextActive,\n link: p.TextHyperlink,\n linkHovered: p.TextHyperlinkHover,\n linkPressed: p.TextHyperlinkPressed,\n defaultBackground: p.BkgCtl,\n defaultBorder: p.StrokeCtl,\n defaultContent: p.TextCtl,\n defaultIcon: p.TextCtl,\n defaultHoveredBackground: p.BkgCtlHover,\n defaultHoveredBorder: p.StrokeCtlHover,\n defaultHoveredContent: p.TextCtlHover,\n defaultHoveredIcon: p.TextCtlHover,\n defaultFocusedBackground: p.BkgCtlHover,\n defaultFocusedBorder: p.StrokeCtlKeyboard,\n defaultFocusedContent: p.TextCtlHover,\n defaultFocusedIcon: p.TextCtlHover,\n defaultPressedBackground: p.BkgCtlPressed,\n defaultPressedBorder: p.StrokeCtlPressed,\n defaultPressedContent: p.TextCtlPressed,\n defaultPressedIcon: p.TextCtlPressed,\n defaultDisabledBackground: p.BkgCtlDisabled,\n defaultDisabledBorder: p.StrokeCtlDisabled,\n defaultDisabledContent: p.TextCtlDisabled,\n defaultDisabledIcon: p.TextCtlDisabled,\n ghostBackground: p.Bkg,\n ghostBorder: p.Bkg,\n ghostContent: p.Text,\n ghostIcon: p.Text,\n ghostHoveredBackground: p.BkgHover,\n ghostHoveredBorder: p.BkgHover,\n ghostHoveredContent: p.TextHover,\n ghostHoveredIcon: p.TextHover,\n ghostFocusedBackground: p.BkgHover,\n ghostFocusedBorder: p.StrokeKeyboard,\n ghostFocusedContent: p.TextHover,\n ghostFocusedIcon: p.TextHover,\n ghostPressedBackground: p.BkgPressed,\n ghostPressedBorder: p.BkgPressed,\n ghostPressedContent: p.TextPressed,\n ghostPressedIcon: p.TextPressed,\n ghostDisabledBackground: p.Bkg,\n ghostDisabledBorder: p.Bkg,\n ghostDisabledContent: p.TextDisabled,\n ghostDisabledIcon: p.TextDisabled,\n brandedBackground: p.BkgCtlEmphasis,\n brandedDisabledBorder: p.StrokeCtlEmphasisDisabled,\n defaultCheckedBackground: p.BkgCtlSelected,\n defaultCheckedContent: p.TextCtlSelected,\n defaultCheckedHoveredBackground: p.BkgCtlHover,\n defaultCheckedHoveredContent: p.TextCtlHover,\n ghostCheckedBackground: p.BkgSelected,\n ghostCheckedContent: p.TextSelected,\n ghostCheckedHoveredBackground: p.BkgHover,\n ghostCheckedHoveredContent: p.TextHover,\n ghostCheckedHoveredBorder: p.StrokeSelectedHover,\n ghostSecondaryContent: p.TextSecondary,\n ghostFocusedSecondaryContent: p.TextSecondaryHover,\n ghostHoveredSecondaryContent: p.TextSecondaryHover,\n ghostPressedSecondaryContent: p.TextSecondaryPressed,\n };\n}\n//# sourceMappingURL=paletteFromOfficeColors.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport { paletteFromOfficeColors } from './paletteFromOfficeColors';\nvar getRamps = function (module) {\n return Object.keys(module.getConstants().ramps).reduce(function (total, colorRamp) {\n return Object.assign.apply(Object, __spreadArray([total], module.getConstants().rampNames[colorRamp].map(function (rampValueName, index) {\n var _a;\n return _a = {}, _a[rampValueName] = module.getConstants().ramps[colorRamp][index], _a;\n }), false));\n }, {});\n};\n/**\n * create a partial theme with overrides from the office native module\n *\n * @param module - theming native module, either the real one or a mock implementation\n * @param palette - Office palette colors, if they have been successfully retrieved\n */\nexport function createPartialOfficeTheme(module, themeName, palette) {\n return __assign({ colors: __assign({}, (palette && paletteFromOfficeColors(palette))), typography: module.getConstants().fluentTypography, host: {\n // Office Semantic Colors\n palette: palette || {},\n // Office Branding Colors\n colors: getRamps(module),\n } }, (themeName ? { name: themeName } : undefined));\n}\n//# sourceMappingURL=createPartialOfficeTheme.js.map","import { memoize } from '@fluentui-react-native/memo-cache';\nimport { mapFontPipelineToTheme } from '@fluentui-react-native/theming-utils';\nimport { getOfficeAliasTokens } from './getOfficeTokens';\nfunction createFontAliasTokensWorker() {\n var aliasTokens = getOfficeAliasTokens('Colorful');\n return mapFontPipelineToTheme(aliasTokens);\n}\nexport var createFontAliasTokens = memoize(createFontAliasTokensWorker);\n//# sourceMappingURL=createFontAliasTokens.js.map","import { __assign } from \"tslib\";\nimport { defaultFluentTheme } from '@fluentui-react-native/default-theme';\nimport { createFontAliasTokens } from './createFontAliasTokens';\nexport function win32Typography() {\n var win32Dict = {\n sizes: defaultFluentTheme.typography.sizes,\n weights: defaultFluentTheme.typography.weights,\n // hard coded until we support new fontFamily format\n families: {\n primary: 'Segoe UI',\n secondary: 'Segoe UI Semibold',\n cursive: 'System',\n monospace: 'Consolas',\n sansSerif: 'System',\n serif: 'System',\n numeric: 'Bahnschrift',\n },\n variants: __assign({ captionStandard: { face: 'primary', size: 'caption', weight: 'regular' }, secondaryStandard: { face: 'primary', size: 'secondary', weight: 'regular' }, secondarySemibold: { face: 'primary', size: 'secondary', weight: 'semiBold' }, bodyStandard: { face: 'primary', size: 'body', weight: 'regular' }, bodySemibold: { face: 'primary', size: 'body', weight: 'semiBold' }, subheaderStandard: { face: 'primary', size: 'subheader', weight: 'regular' }, subheaderSemibold: { face: 'primary', size: 'subheader', weight: 'semiBold' }, headerStandard: { face: 'primary', size: 'header', weight: 'regular' }, headerSemibold: { face: 'primary', size: 'header', weight: 'semiBold' }, heroStandard: { face: 'primary', size: 'hero', weight: 'regular' }, heroSemibold: { face: 'primary', size: 'hero', weight: 'semiBold' }, heroLargeStandard: { face: 'primary', size: 'heroLarge', weight: 'regular' }, heroLargeSemibold: { face: 'primary', size: 'heroLarge', weight: 'semiBold' } }, createFontAliasTokens()),\n };\n return win32Dict;\n}\n//# sourceMappingURL=getThemeTypography.js.map","import { __assign } from \"tslib\";\nimport { NativeEventEmitter, TurboModuleRegistry } from 'react-native';\nimport { fallbackGetPalette, fallbackOfficeModule } from './fallbackOfficeModule';\nimport { setCurrentHostThemeSetting } from './hostThemeSetting';\n/**\n * If we have a userAgent string, let's assume we're web debugging. __DEV__ is for developer bundles. Currently,\n * react-native only polyfills navigator with { product: 'ReactNative', geolocation: NativeModules.Geolocation }\n */\nfunction disableGetPalette() {\n var disabled = __DEV__ && navigator && navigator.userAgent !== undefined;\n disabled && console.warn(console.warn('Web Debugging forces Theming Native Module to fallback to fake color values.'));\n return disabled;\n}\nfunction themeGetConstants() {\n return themingModuleConstants;\n}\nvar themingModule = undefined;\nvar themingModuleConstants = undefined;\nvar themingModuleEmitter = undefined;\nexport function getThemingModule() {\n if (!themingModule) {\n var module_1 = TurboModuleRegistry.get('Theming');\n // if the native module exists return the module + an emitter for it\n if (module_1) {\n if (!isInstantiated) {\n // We need to store the host theme so that when themes are created\n // they can use this information.\n setCurrentHostThemeSetting(module_1.getConstants().initialHostThemeSetting);\n isInstantiated = true;\n }\n // Cache the result of getConstants to avoid continuous Native->JS marshalling\n themingModuleConstants = module_1.getConstants();\n // mock getPalette if it should be disabled\n if (disableGetPalette()) {\n themingModule = __assign(__assign({}, module_1), { getPalette: fallbackGetPalette, getConstants: themeGetConstants });\n }\n else {\n themingModule = __assign(__assign({}, module_1), { getPalette: module_1.getPalette, getConstants: themeGetConstants });\n }\n themingModuleEmitter = new NativeEventEmitter(module_1);\n }\n else {\n themingModule = fallbackOfficeModule;\n }\n }\n return [themingModule, themingModuleEmitter];\n}\nvar isInstantiated = false;\n//# sourceMappingURL=getThemingModule.native.js.map","import { __assign } from \"tslib\";\nvar whiteColorsPalette = {\n Bkg: '#FFFFFF',\n BkgHover: '#D2D2D2',\n BkgPressed: '#B1B1B1',\n BkgSelected: '#C6C6C6',\n BkgSubtle: '#F3F3F3',\n BkgSelectionHighlight: '#737373',\n Text: '#262626',\n TextRest: '#262626',\n TextHover: '#262626',\n TextPressed: '#262626',\n TextSelected: '#262626',\n TextDisabled: '#B1B1B1',\n TextSelectionHighlight: '#FFFFFF',\n TextSecondary: '#666666',\n TextSecondaryRest: '#666666',\n TextSecondaryHover: '#505050',\n TextSecondaryPressed: '#666666',\n TextSecondarySelected: '#666666',\n TextEmphasis: '#D83B01',\n TextEmphasisRest: '#D83B01',\n TextEmphasisHover: '#EA6115',\n TextEmphasisPressed: '#A22C01',\n TextEmphasisSelected: '#D83B01',\n StrokeSelectedHover: '#969696',\n StrokeKeyboard: '#969696',\n StrokeOverRest: '#00000000',\n StrokeOverHover: '#00000000',\n StrokeOverPressed: '#00000000',\n StrokeOverSelectedRest: '#00000000',\n StrokeOverSelectedHover: '#969696',\n StrokeOverSelectedPressed: '#00000000',\n BkgCtl: '#E6E6E6',\n BkgCtlHover: '#FFF7F0',\n BkgCtlPressed: '#FBDFD0',\n BkgCtlSelected: '#E6E6E6',\n BkgCtlDisabled: '#E6E6E6',\n TextCtl: '#262626',\n TextCtlHover: '#262626',\n TextCtlPressed: '#262626',\n TextCtlSelected: '#262626',\n TextCtlDisabled: '#B1B1B1',\n StrokeCtl: '#969696',\n StrokeCtlHover: '#FBDFD0',\n StrokeCtlPressed: '#EA6115',\n StrokeCtlSelected: '#969696',\n StrokeCtlDisabled: '#D2D2D2',\n StrokeCtlKeyboard: '#FBDFD0',\n BkgCtlEmphasis: '#D83B01',\n BkgCtlEmphasisHover: '#F29F71',\n BkgCtlEmphasisPressed: '#A22C01',\n BkgCtlEmphasisDisabled: '#E6E6E6',\n TextCtlEmphasis: '#FFFFFF',\n TextCtlEmphasisHover: '#FFFFFF',\n TextCtlEmphasisPressed: '#FFFFFF',\n TextCtlEmphasisDisabled: '#B1B1B1',\n StrokeCtlEmphasis: '#A22C01',\n StrokeCtlEmphasisHover: '#D83B01',\n StrokeCtlEmphasisPressed: '#A22C01',\n StrokeCtlEmphasisDisabled: '#D2D2D2',\n StrokeCtlEmphasisKeyboard: '#A22C01',\n BkgCtlSubtle: '#FFFFFF',\n BkgCtlSubtleHover: '#FFFFFF',\n BkgCtlSubtlePressed: '#FFFFFF',\n BkgCtlSubtleDisabled: '#F3F3F3',\n BkgCtlSubtleSelectionHighlight: '#7DA3C6',\n TextCtlSubtle: '#262626',\n TextCtlSubtlePlaceholder: '#666666',\n TextCtlSubtleHover: '#262626',\n TextCtlSubtlePressed: '#262626',\n TextCtlSubtleDisabled: '#B1B1B1',\n TextCtlSubtleSelectionHighlight: '#262626',\n StrokeCtlSubtle: '#C6C6C6',\n StrokeCtlSubtleHover: '#969696',\n StrokeCtlSubtlePressed: '#969696',\n StrokeCtlSubtleDisabled: '#C6C6C6',\n StrokeCtlSubtleKeyboard: '#969696',\n TextHyperlink: '#D83B01',\n TextHyperlinkHover: '#A22C01',\n TextHyperlinkPressed: '#6C1E01',\n TextActive: '#262626',\n TextActiveHover: '#EA6115',\n TextActivePressed: '#A22C01',\n TextActiveSelected: '#D83B01',\n StrokeOnlyHover: '#B1B1B1',\n StrokeOnlyPressed: '#737373',\n StrokeOnlySelected: '#969696',\n TextError: '#A50000',\n TextErrorHover: '#A50000',\n TextErrorPressed: '#A50000',\n TextErrorSelected: '#A50000',\n ThumbToggleSwitchOff: '#505050',\n ThumbToggleSwitchOffHover: '#505050',\n ThumbToggleSwitchOffPressed: '#505050',\n ThumbToggleSwitchOffDisabled: '#D2D2D2',\n ThumbToggleSwitchOn: '#FFFFFF',\n ThumbToggleSwitchOnHover: '#FFFFFF',\n ThumbToggleSwitchOnPressed: '#FFFFFF',\n ThumbToggleSwitchOnDisabled: '#FFFFFF',\n BkgToggleSwitchOff: '#FFFFFF',\n BkgToggleSwitchOffHover: '#D2D2D2',\n BkgToggleSwitchOffPressed: '#B1B1B1',\n BkgToggleSwitchOffDisabled: '#FFFFFF',\n BkgToggleSwitchOn: '#D83B01',\n BkgToggleSwitchOnHover: '#EA6115',\n BkgToggleSwitchOnPressed: '#A22C01',\n BkgToggleSwitchOnDisabled: '#D2D2D2',\n StrokeToggleSwitchOff: '#505050',\n StrokeToggleSwitchOffHover: '#505050',\n StrokeToggleSwitchOffPressed: '#505050',\n StrokeToggleSwitchOffDisabled: '#D2D2D2',\n StrokeToggleSwitchOn: '#D83B01',\n StrokeToggleSwitchOnHover: '#EA6115',\n StrokeToggleSwitchOnPressed: '#A22C01',\n StrokeToggleSwitchOnDisabled: '#D2D2D2',\n SliderPrimary: '#444444',\n SliderPrimaryHover: '#D2D2D2',\n SliderPrimaryPressed: '#262626',\n SliderPrimaryDisabled: '#969696',\n SliderSecondary: '#D2D2D2',\n SliderBuffer: '#262626',\n SliderKeyboard: '#444444',\n SliderToolTipBorder: '#C6C6C6',\n SliderToolTipLabel: '#262626',\n SliderToolTipBkg: '#FFFFFF',\n AccentDark: '#C6C6C6',\n AccentLight: '#E6E6E6',\n AccentEmphasis: '#D83B01',\n AccentOutline: '#000000',\n TextEmphasis2: '#D83B01',\n BkgCtlSubtleSelected: '#F3F3F3',\n TextCtlSubtleSelected: '#262626',\n BkgCtlEmphasisFocus: '#F3F3F3',\n BkgCtlSubtleFocus: '#F3F3F3',\n BkgCtlSubtleHoverDisabled: '#F3F3F3',\n BkgCtlSubtleSelectedDisabled: '#F3F3F3',\n BkgHeader: '#E6E6E6',\n TextHeader: '#262626',\n};\nexport function fallbackGetPalette(pal) {\n return pal === 'TaskPane'\n ? __assign(__assign({}, whiteColorsPalette), { Bkg: 'antiquewhite' }) : whiteColorsPalette;\n}\nexport var fallbackOfficeModule = {\n getPalette: fallbackGetPalette,\n getConstants: function () {\n return {\n ramps: {\n App: ['#F8F8F8', '#EFF6FC', '#BBDAF3', '#55A4E2', '#359EDD', '#0078d7', '#283E4A', '#030C13'],\n FluentGrays: ['#FAF9F8', '#797775', '#11100F'],\n ClassicGrays: ['#FFFFFF', '#737373', '#000000'],\n Sepias: ['#ECE6DE'],\n },\n typography: {},\n fluentTypography: {},\n rampNames: {\n App: ['FakeApp1', 'App2', 'App3', 'App4', 'App5', 'App6', 'App7', 'App8'],\n FluentGrays: ['FakeGray1', 'Gray2', 'Gray3'],\n ClassicGrays: ['FakeGray4', 'Gray5', 'Gray6'],\n Sepias: ['FakeSepia'],\n },\n };\n },\n};\n//# sourceMappingURL=fallbackOfficeModule.js.map","// The ThemingModule currently only stores its initial host theme state\n// This state is never updated (it's a constant on the native module)\n// This can cause issues if the host theme has changed and you want to\n// query for the current state of the host theme. (i.e. you're spinning up\n// a new instance of a theme and don't have something already keeping track\n// of changes to the theme).\n// Unfortunately, native changes take a long time to roundtrip,\n// so as a workaround we store a copy of that information instead to last the\n// entire lifetime of the instance.\nvar currentHostThemeSetting = '';\nexport var getCurrentHostThemeSetting = function () {\n return currentHostThemeSetting;\n};\nexport var setCurrentHostThemeSetting = function (newHostThemeSetting) {\n currentHostThemeSetting = newHostThemeSetting;\n};\n//# sourceMappingURL=hostThemeSetting.js.map","import { __assign } from \"tslib\";\nimport { createDefaultTheme } from '@fluentui-react-native/default-theme';\nimport { ThemeReference } from '@fluentui-react-native/theme';\nimport { createAliasesFromPalette } from './createAliasesFromPalette';\nimport { createBrandedThemeWithAlias } from './createBrandedThemeWithAlias';\nimport { createOfficeColorAliasTokens, createOfficeShadowAliasTokens } from './createOfficeAliasTokens';\nimport { createPartialOfficeTheme } from './createPartialOfficeTheme';\nimport { win32Typography } from './getThemeTypography';\nimport { getThemingModule } from './NativeModule/getThemingModule';\nimport { getCurrentHostThemeSetting, setCurrentHostThemeSetting } from './NativeModule/hostThemeSetting';\nfunction handlePaletteCall(palette) {\n var exception = palette;\n return exception && exception.message !== undefined ? undefined : palette;\n}\n/**\n * create a theme reference for an Office win32 theme. This will be based upon the standard\n * fluent defaults but will attempt to use the theming native module to get information about\n * the office palette.\n *\n * This theme will also listen for native changes and reload itself when things change on the native side of things\n *\n * @param paletteName - optional specifier for the currently active office palette\n */\nexport function createOfficeTheme(options) {\n if (options === void 0) { options = {}; }\n var _a = getThemingModule(), module = _a[0], emitter = _a[1];\n var ref = { module: module, emitter: emitter, themeName: getCurrentHostThemeSetting() || '' };\n var paletteName = options.paletteName;\n var themeRef = new ThemeReference(createDefaultTheme(options), function () {\n var name = paletteName || 'WhiteColors';\n var palette = handlePaletteCall(ref.module.getPalette(name));\n return createPartialOfficeTheme(module, ref.themeName, palette);\n }, function () {\n if (!ref.themeName || ref.themeName === '') {\n return {};\n }\n return {\n shadows: __assign({}, createOfficeShadowAliasTokens(ref.themeName)),\n typography: win32Typography(),\n };\n }, function () {\n if (!ref.themeName || ref.themeName === '') {\n return {};\n }\n return {\n colors: __assign({}, createOfficeColorAliasTokens(ref.themeName)),\n typography: win32Typography(),\n };\n }, function (theme) {\n return createBrandedThemeWithAlias(ref.themeName, theme);\n }, function (theme) {\n if (!theme.host.palette) {\n return {};\n }\n return __assign(__assign({}, (paletteName !== undefined && { colors: createAliasesFromPalette(theme.host.palette, ref.themeName === 'HighContrast') })), { typography: win32Typography() });\n });\n // set up the callback for theme changes on the native side\n var onPlatformDefaultsChanged = function (args) {\n ref.themeName = (args && args.hostThemeSetting) || ref.themeName;\n setCurrentHostThemeSetting(ref.themeName);\n themeRef.invalidate();\n };\n emitter && emitter.addListener('onPlatformDefaultsChanged', onPlatformDefaultsChanged);\n // now return the theme reference\n return themeRef;\n}\n//# sourceMappingURL=createOfficeTheme.js.map","import React from \"react\";\nimport { View } from \"react-native\";\nimport {\n RadioGroupV1 as RadioGroup,\n Radio,\n} from \"@fluentui-react-native/radio-group\";\nimport { Text } from \"@fluentui-react-native/text\";\n\nimport { useSharedStyles } from \"../../styles/SharedStyles\";\nimport {\n DropdownAppearanceStyle,\n DropdownShowDropdownArrowSetting,\n} from \"../../utils/UIConstants\";\n\nconst strings = require(\"../../../assets/strings.resjson\");\n\nexport const AppearanceSection: React.FunctionComponent = () => {\n const sharedStyles = useSharedStyles();\n\n return (\n \n \n \n {strings.getString(\"AppearanceSectionDropdownStyleTitle\")}\n \n \n \n \n \n \n {strings.getString(\"AppearanceSectionShowDropdownArrowInCellLabel\")}\n \n \n \n \n \n \n \n );\n};\n","import { __assign, __rest } from \"tslib\";\nimport { Platform, View } from 'react-native';\nimport { FocusZone } from '@fluentui-react-native/focus-zone';\nimport { compose, mergeProps, withSlots } from '@fluentui-react-native/framework';\nimport { TextV1 as Text } from '@fluentui-react-native/text';\nimport { stylingSettings } from './RadioGroup.styling';\nimport { radioGroupName } from './RadioGroup.types';\nimport { RadioGroupProvider } from './radioGroupContext';\nimport { useRadioGroup } from './useRadioGroup';\nimport { useRadioGroupContextValue } from './useRadioGroupContextValue';\n/**\n * A function which determines if a set of styles should be applied to the component given the current state and props of the radiogroup.\n *\n * @param layer The name of the state that is being checked for\n * @param state The current state of the radiogroup\n * @param userProps The props that were passed into the radiogroup\n * @returns Whether the styles that are assigned to the layer should be applied to the radiogroup\n */\nexport var radioGroupLookup = function (layer, state, userProps) {\n return (state[layer] ||\n userProps[layer] ||\n (!(Platform.OS === 'win32' || Platform.OS === 'android') &&\n layer === 'isHorizontal' &&\n (userProps['layout'] === 'horizontal' || userProps['layout'] === 'horizontal-stacked')));\n};\nexport var RadioGroup = compose(__assign(__assign({ displayName: radioGroupName }, stylingSettings), { slots: {\n root: View,\n label: View,\n labelText: Text,\n required: Text,\n options: View,\n container: FocusZone,\n }, useRender: function (userProps, useSlots) {\n var radioGroup = useRadioGroup(userProps);\n var contextValue = useRadioGroupContextValue(radioGroup.state);\n var Slots = useSlots(userProps, function (layer) { return radioGroupLookup(layer, radioGroup.state, userProps); });\n return function (final) {\n var children = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n children[_i - 1] = arguments[_i];\n }\n if (!radioGroup.state) {\n return null;\n }\n var _a = mergeProps(radioGroup.props, final), label = _a.label, required = _a.required, defaultTabbableElement = _a.defaultTabbableElement, isCircularNavigation = _a.isCircularNavigation, mergedProps = __rest(_a, [\"label\", \"required\", \"defaultTabbableElement\", \"isCircularNavigation\"]);\n var labelComponent = (withSlots(Slots.label, null,\n withSlots(Slots.labelText, { key: \"label\" }, label),\n !!required && withSlots(Slots.required, null, '*')));\n var isFocusZoneImplemented = ['macos', 'win32'].includes(Platform.OS);\n var radioGroupContent = withSlots(Slots.options, null, children);\n var radioGroupContentWithFocusZone = (withSlots(Slots.container, { disabled: radioGroup.state.selectedButtonDisabled, isCircularNavigation: true, defaultTabbableElement: defaultTabbableElement }, radioGroupContent));\n return (withSlots(RadioGroupProvider, { value: contextValue },\n withSlots(Slots.root, __assign({}, mergedProps),\n label && labelComponent,\n isFocusZoneImplemented ? radioGroupContentWithFocusZone : radioGroupContent)));\n };\n } }));\n//# sourceMappingURL=RadioGroup.js.map","export var radioGroupName = 'RadioGroup';\n//# sourceMappingURL=RadioGroup.types.js.map","import { globalTokens } from '@fluentui-react-native/theme-tokens';\nexport var defaultRadioGroupTokens = function (t) {\n return ({\n color: t.colors.menuItemText,\n variant: 'subtitle2Strong',\n requiredColor: t.colors.redForeground3,\n requiredPadding: globalTokens.size40,\n flexDirection: 'column',\n disabled: {\n color: t.colors.neutralForegroundDisabled,\n },\n isHorizontal: {\n flexDirection: 'row',\n },\n });\n};\n//# sourceMappingURL=RadioGroupTokens.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport { buildProps } from '@fluentui-react-native/framework';\nimport { fontStyles } from '@fluentui-react-native/tokens';\nimport { radioGroupName } from './RadioGroup.types';\nimport { defaultRadioGroupTokens } from './RadioGroupTokens';\nexport var radioGroupStates = ['isHorizontal', 'disabled'];\nexport var stylingSettings = {\n tokens: [defaultRadioGroupTokens, radioGroupName],\n states: radioGroupStates,\n slotProps: {\n root: buildProps(function () { return ({\n style: {\n display: 'flex',\n alignItems: 'flex-start',\n flexDirection: 'column',\n },\n }); }),\n label: buildProps(function () { return ({\n style: {\n display: 'flex',\n alignItems: 'center',\n flexDirection: 'row',\n alignSelf: 'flex-start',\n },\n }); }),\n labelText: buildProps(function (tokens, theme) { return ({\n variant: tokens.variant,\n style: __assign({ color: tokens.color }, fontStyles.from(tokens, theme)),\n }); }, __spreadArray(['color'], fontStyles.keys, true)),\n required: buildProps(function (tokens) { return ({\n variant: tokens.variant,\n style: {\n color: tokens.requiredColor,\n paddingStart: tokens.requiredPadding,\n },\n }); }, ['requiredColor', 'requiredPadding']),\n options: buildProps(function (tokens) { return ({\n style: {\n display: 'flex',\n justifyContent: 'space-around',\n alignItems: 'flex-start',\n flexDirection: tokens.flexDirection,\n },\n }); }, ['flexDirection']),\n },\n};\n//# sourceMappingURL=RadioGroup.styling.js.map","import * as React from 'react';\nexport var RadioGroupContext = React.createContext({\n value: null,\n disabled: false,\n layout: 'vertical',\n onChange: function ( /* key: string */) {\n return;\n },\n updateSelectedButtonRef: function ( /* ref: React.RefObject*/) {\n return;\n },\n values: [],\n enabledValues: [],\n invoked: false,\n addRadioValue: function ( /* value: string */) { return false; },\n removeRadioValue: function ( /* value: string */) { return false; },\n addRadioEnabledValue: function ( /* value: string */) { return false; },\n removeRadioEnabledValue: function ( /* value: string */) { return false; },\n});\nexport var RadioGroupProvider = RadioGroupContext.Provider;\nexport var useRadioGroupContext = function () { return React.useContext(RadioGroupContext); };\n//# sourceMappingURL=radioGroupContext.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport * as React from 'react';\nimport { memoize } from '@fluentui-react-native/framework';\nimport { useSelectedKey as useValue } from '@fluentui-react-native/interactive-hooks';\nexport var useRadioGroup = function (props) {\n var accessible = props.accessible, value = props.value, defaultValue = props.defaultValue, disabled = props.disabled, required = props.required, layout = props.layout, onChange = props.onChange, isCircularNavigation = props.isCircularNavigation, accessibilityLabel = props.accessibilityLabel, label = props.label, accessibilityState = props.accessibilityState;\n // This hook updates the selected Radio and calls the customer's onClick function. This gets called after a button is pressed.\n var data = useValue(value || defaultValue || null, onChange);\n var _a = React.useState(React.useRef(null)), selectedButtonRef = _a[0], setSelectedButtonRef = _a[1];\n var onSelectButtonRef = React.useCallback(function (ref) {\n setSelectedButtonRef(ref);\n }, [setSelectedButtonRef]);\n var _b = React.useState(false), invoked = _b[0], setInvoked = _b[1];\n var onInvoked = React.useCallback(function (check) {\n setInvoked(check);\n }, [setInvoked]);\n var _c = React.useState([]), values = _c[0], setValues = _c[1];\n var onAddRadioValue = React.useCallback(function (value) {\n setValues(function (values) { return __spreadArray(__spreadArray([], values, true), [value], false); });\n }, [setValues]);\n var onRemoveRadioValue = React.useCallback(function (value) {\n setValues(function (values) { return values.filter(function (item) { return item !== value; }); });\n }, [setValues]);\n var _d = React.useState([]), enabledValues = _d[0], setEnabledValues = _d[1];\n var onAddRadioEnabledValue = React.useCallback(function (value) {\n setEnabledValues(function (enabledValues) { return __spreadArray(__spreadArray([], enabledValues, true), [value], false); });\n }, [setEnabledValues]);\n var onRemoveRadioEnabledValue = React.useCallback(function (value) {\n setEnabledValues(function (enabledValues) { return enabledValues.filter(function (item) { return item !== value; }); });\n }, [setEnabledValues]);\n var state = {\n value: data.selectedKey,\n required: required || false,\n disabled: disabled || false,\n layout: layout || 'vertical',\n onChange: data.onKeySelect,\n updateSelectedButtonRef: onSelectButtonRef,\n invoked: invoked,\n updateInvoked: onInvoked,\n values: values,\n enabledValues: enabledValues,\n addRadioValue: onAddRadioValue,\n removeRadioValue: onRemoveRadioValue,\n addRadioEnabledValue: onAddRadioEnabledValue,\n removeRadioEnabledValue: onRemoveRadioEnabledValue,\n selectedButtonDisabled: values.includes(data.selectedKey) && !enabledValues.includes(data.selectedKey),\n };\n return {\n props: __assign(__assign({}, props), { required: required, layout: layout, accessible: accessible !== null && accessible !== void 0 ? accessible : true, accessibilityRole: 'radiogroup', accessibilityLabel: accessibilityLabel !== null && accessibilityLabel !== void 0 ? accessibilityLabel : label, accessibilityState: getAccessibilityState(state.disabled, state.required, accessibilityState), defaultTabbableElement: selectedButtonRef, isCircularNavigation: isCircularNavigation !== null && isCircularNavigation !== void 0 ? isCircularNavigation : true }),\n state: __assign({}, state),\n };\n};\nvar getAccessibilityState = memoize(getAccessibilityStateWorker);\nfunction getAccessibilityStateWorker(disabled, required, accessibilityState) {\n if (accessibilityState) {\n return __assign({ disabled: disabled, required: required }, accessibilityState);\n }\n return { disabled: disabled, required: required };\n}\n//# sourceMappingURL=useRadioGroup.js.map","import { __assign } from \"tslib\";\nexport var useRadioGroupContextValue = function (state) {\n return __assign({}, state);\n};\n//# sourceMappingURL=useRadioGroupContextValue.js.map","import { __assign, __rest } from \"tslib\";\n/** @jsxRuntime classic */\n/** @jsx withSlots */\nimport { Platform, Pressable, View } from 'react-native';\nimport { compose, mergeProps, withSlots } from '@fluentui-react-native/framework';\nimport { TextV1 as Text } from '@fluentui-react-native/text';\nimport { stylingSettings } from './Radio.styling';\nimport { radioName } from './Radio.types';\nimport { useRadio } from './useRadio';\n/**\n * A function which determines if a set of styles should be applied to the component given the current state and props of the Radio.\n *\n * @param layer The name of the state that is being checked for\n * @param state The current state of the Radio\n * @param userProps The props that were passed into the Radio\n * @returns Whether the styles that are assigned to the layer should be applied to the Radio\n */\nexport var radioLookup = function (layer, state, userProps) {\n return (state[layer] ||\n userProps[layer] ||\n (!(Platform.OS === 'win32' || Platform.OS === 'android') &&\n layer === 'labelPositionBelow' &&\n userProps['labelPosition'] === 'below'));\n};\nexport var Radio = compose(__assign(__assign({ displayName: radioName }, stylingSettings), { slots: {\n root: Pressable,\n button: Pressable,\n innerCircle: View,\n labelContent: View,\n label: Text,\n subtext: Text,\n }, useRender: function (userProps, useSlots) {\n var radio = useRadio(userProps);\n var Slots = useSlots(userProps, function (layer) { return radioLookup(layer, radio.state, radio.props); });\n // now return the handler for finishing render\n return function (final) {\n var _a = mergeProps(radio.props, final), label = _a.label, subtext = _a.subtext, mergedProps = __rest(_a, [\"label\", \"subtext\"]);\n var onPress = mergedProps.onPress, disabled = mergedProps.disabled, onPressIn = mergedProps.onPressIn, onPressOut = mergedProps.onPressOut;\n var isMobile = Platform.OS === 'android' || Platform.OS === 'ios';\n var labelComponent = (withSlots(Slots.labelContent, null,\n withSlots(Slots.label, null, label),\n !!subtext && withSlots(Slots.subtext, null, subtext)));\n return (withSlots(Slots.root, __assign({}, mergedProps, (isMobile && { accessible: !disabled, focusable: !disabled })),\n withSlots(Slots.button, { accessible: false, onPress: onPress, onPressIn: onPressIn, onPressOut: onPressOut, disabled: disabled, focusable: false },\n withSlots(Slots.innerCircle, null)),\n labelComponent));\n };\n } }));\n//# sourceMappingURL=Radio.js.map","export var radioName = 'Radio';\n//# sourceMappingURL=Radio.types.js.map","import { globalTokens } from '@fluentui-react-native/theme-tokens';\nexport var defaultRadioTokens = function (t) {\n return ({\n rootHorizontalPadding: globalTokens.size40,\n borderColor: t.colors.transparentStroke,\n borderStyle: 'solid',\n borderWidth: globalTokens.stroke.width10,\n borderRadius: globalTokens.corner.radius40,\n radioBorderWidth: globalTokens.stroke.width10,\n radioVisibility: 0,\n variant: 'subheaderStandard',\n radioBorderStyle: 'solid',\n radioBorder: t.colors.neutralStrokeAccessible,\n color: t.colors.neutralForeground3,\n radioOuterCircleSize: globalTokens.size200,\n radioInnerCircleSize: globalTokens.size100,\n labelMarginVertical: globalTokens.size40,\n labelMarginRight: globalTokens.size20,\n labelMarginLeft: globalTokens.sizeNone,\n subtextVariant: 'caption1',\n subtextMarginTop: globalTokens.sizeNone,\n subtextMarginBottom: globalTokens.size40 + 1,\n marginTop: globalTokens.size60,\n marginRight: globalTokens.size60,\n marginBottom: globalTokens.size60,\n marginLeft: globalTokens.size40,\n flexDirection: 'row',\n alignItems: 'flex-start',\n labelAlignItems: 'flex-start',\n labelPositionBelow: {\n flexDirection: 'column',\n alignItems: 'center',\n labelAlignItems: 'center',\n labelMarginLeft: globalTokens.size20,\n marginLeft: globalTokens.size60,\n },\n disabled: {\n // Unchecked, Disabled\n radioBorder: t.colors.neutralForegroundDisabled,\n color: t.colors.neutralForegroundDisabled,\n radioVisibility: 0,\n },\n hovered: {\n // Unchecked, Hover\n radioBorder: t.colors.neutralStrokeAccessibleHover,\n color: t.colors.neutralForeground2,\n selected: {\n // Checked, Hover\n radioBorder: t.colors.compoundBrandStroke1Hover,\n radioFill: t.colors.compoundBrandBackground1Hover,\n color: t.colors.neutralForeground2,\n radioVisibility: 1,\n },\n },\n pressed: {\n // Unchecked, Pressed\n radioBorder: t.colors.neutralStrokeAccessiblePressed,\n color: t.colors.neutralForeground1,\n selected: {\n // Checked, Pressed\n radioBorder: t.colors.compoundBrandStroke1Pressed,\n radioFill: t.colors.compoundBrandBackground1Pressed,\n color: t.colors.neutralForeground1,\n radioVisibility: 1,\n },\n },\n focused: {\n selected: {\n // Checked, Focused\n radioVisibility: 1,\n },\n },\n selected: {\n // Checked, Rest\n radioBorder: t.colors.compoundBrandStroke1,\n radioFill: t.colors.compoundBrandStroke1,\n color: t.colors.neutralForeground3,\n radioVisibility: 1,\n disabled: {\n // Checked, Disabled\n radioFill: t.colors.neutralForegroundDisabled,\n },\n },\n });\n};\n//# sourceMappingURL=RadioTokens.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport { buildProps } from '@fluentui-react-native/framework';\nimport { fontStyles, borderStyles } from '@fluentui-react-native/tokens';\nimport { radioName } from './Radio.types';\nimport { defaultRadioTokens } from './RadioTokens';\nexport var radioStates = ['labelPositionBelow', 'focused', 'hovered', 'pressed', 'selected', 'disabled'];\nexport var stylingSettings = {\n tokens: [defaultRadioTokens, radioName],\n states: radioStates,\n slotProps: {\n root: buildProps(function (tokens) { return ({\n style: {\n display: 'flex',\n alignItems: tokens.alignItems,\n flexDirection: tokens.flexDirection,\n paddingHorizontal: tokens.rootHorizontalPadding,\n paddingVertical: tokens.rootVerticalPadding,\n },\n android_ripple: { color: tokens.rippleColor },\n }); }, ['flexDirection', 'rootHorizontalPadding', 'rootVerticalPadding', 'rippleColor', 'alignItems']),\n button: buildProps(function (tokens) { return ({\n style: {\n backgroundColor: tokens.radioOuterCircleBackground,\n width: tokens.radioOuterCircleSize,\n height: tokens.radioOuterCircleSize,\n alignItems: 'center',\n justifyContent: 'center',\n borderWidth: tokens.radioBorderWidth,\n borderStyle: tokens.radioBorderStyle,\n borderRadius: tokens.radioOuterCircleSize / 2,\n borderColor: tokens.radioBorder,\n marginTop: tokens.marginTop,\n marginRight: tokens.marginRight,\n marginBottom: tokens.marginBottom,\n marginLeft: tokens.marginLeft,\n },\n android_ripple: { color: tokens.rippleColor, radius: tokens.rippleRadius, borderless: true },\n }); }, [\n 'radioOuterCircleBackground',\n 'radioBorderWidth',\n 'radioBorderStyle',\n 'radioOuterCircleSize',\n 'rippleColor',\n 'rippleRadius',\n 'radioBorder',\n 'marginTop',\n 'marginRight',\n 'marginBottom',\n 'marginLeft',\n ]),\n innerCircle: buildProps(function (tokens) { return ({\n style: {\n opacity: tokens.radioVisibility,\n borderRadius: tokens.radioInnerCircleSize / 2,\n height: tokens.radioInnerCircleSize,\n width: tokens.radioInnerCircleSize,\n backgroundColor: tokens.radioFill,\n },\n }); }, ['radioInnerCircleSize', 'radioVisibility', 'radioFill']),\n labelContent: buildProps(function (tokens, theme) { return ({\n style: __assign({ alignItems: tokens.labelAlignItems, flexDirection: 'column', marginRight: tokens.labelMarginRight, marginLeft: tokens.labelMarginLeft, padding: tokens.labelPadding, paddingRight: 0 }, borderStyles.from(tokens, theme)),\n }); }, __spreadArray(['labelAlignItems', 'labelMarginRight', 'labelMarginLeft', 'labelPadding'], borderStyles.keys, true)),\n checkmark: buildProps(function (tokens) { return ({\n style: {\n opacity: tokens.radioVisibility,\n },\n }); }, ['radioVisibility']),\n label: buildProps(function (tokens, theme) { return ({\n variant: tokens.variant,\n style: __assign({ marginVertical: tokens.labelMarginVertical, marginHorizontal: 2, color: tokens.color }, fontStyles.from(tokens, theme)),\n }); }, __spreadArray(['variant', 'labelMarginVertical', 'color'], fontStyles.keys, true)),\n subtext: buildProps(function (tokens) { return ({\n variant: tokens.subtextVariant,\n style: {\n marginTop: tokens.subtextMarginTop,\n marginBottom: tokens.subtextMarginBottom,\n marginHorizontal: 2,\n color: tokens.color,\n },\n }); }, ['subtextMarginTop', 'subtextMarginBottom', 'color', 'subtextVariant']),\n },\n};\n//# sourceMappingURL=Radio.styling.js.map","import { __assign, __rest, __spreadArray } from \"tslib\";\nimport * as React from 'react';\nimport { memoize } from '@fluentui-react-native/framework';\nimport { usePressableState, useOnPressWithFocus, useViewCommandFocus } from '@fluentui-react-native/interactive-hooks';\nimport { useRadioGroupContext } from '../RadioGroup/radioGroupContext';\nvar defaultAccessibilityActions = [{ name: 'Select' }];\nexport var useRadio = function (props) {\n var defaultComponentRef = React.useRef(null);\n // Grabs the context information from RadioGroup (currently selected button and client's onChange callback)\n var radioGroupContext = useRadioGroupContext();\n var label = props.label, subtext = props.subtext, value = props.value, disabled = props.disabled, _a = props.labelPosition, labelPosition = _a === void 0 ? radioGroupContext.layout === 'horizontal-stacked' ? 'below' : 'after' : _a, accessibilityActions = props.accessibilityActions, accessibilityLabel = props.accessibilityLabel, accessibilityHint = props.accessibilityHint, accessibilityState = props.accessibilityState, _b = props.componentRef, componentRef = _b === void 0 ? defaultComponentRef : _b, accessibilityPositionInSet = props.accessibilityPositionInSet, accessibilitySetSize = props.accessibilitySetSize, enableFocusRing = props.enableFocusRing, rest = __rest(props, [\"label\", \"subtext\", \"value\", \"disabled\", \"labelPosition\", \"accessibilityActions\", \"accessibilityLabel\", \"accessibilityHint\", \"accessibilityState\", \"componentRef\", \"accessibilityPositionInSet\", \"accessibilitySetSize\", \"enableFocusRing\"]);\n var isDisabled = radioGroupContext.disabled || disabled;\n var buttonRef = useViewCommandFocus(componentRef);\n /* We don't want to call the user's onChange multiple times on the same selection. */\n var changeSelection = React.useCallback(function () {\n if (value !== radioGroupContext.value) {\n radioGroupContext.onChange && radioGroupContext.onChange(value);\n radioGroupContext.updateSelectedButtonRef && componentRef && radioGroupContext.updateSelectedButtonRef(componentRef);\n }\n }, [radioGroupContext, value, componentRef]);\n /* We use the componentRef of the currently selected button to maintain the default tabbable\n element in a RadioGroup. Since the componentRef isn't generated until after initial render,\n we must update it once here. */\n React.useEffect(function () {\n if (value === radioGroupContext.value && !isDisabled) {\n radioGroupContext.updateSelectedButtonRef && componentRef && radioGroupContext.updateSelectedButtonRef(componentRef);\n }\n }, []);\n // Ensure focus is placed on button after click\n var changeSelectionWithFocus = useOnPressWithFocus(componentRef, changeSelection);\n /* RadioButton changes selection when focus is moved between each RadioButton and on a click */\n var pressable = usePressableState(__assign(__assign({}, rest), { onPress: changeSelectionWithFocus, onFocus: changeSelection }));\n var accessibilityActionsProp = React.useMemo(function () { return (accessibilityActions ? __spreadArray(__spreadArray([], defaultAccessibilityActions, true), accessibilityActions, true) : defaultAccessibilityActions); }, [accessibilityActions]);\n // Used when creating accessibility properties in mergeSettings below\n var onAccessibilityAction = React.useCallback(function (event) {\n switch (event.nativeEvent.actionName) {\n case 'Select':\n changeSelection();\n break;\n }\n }, [changeSelection]);\n var state = __assign(__assign({}, pressable.state), { selected: radioGroupContext.value === props.value && !isDisabled, disabled: isDisabled || false, labelPositionBelow: labelPosition === 'below' });\n return {\n props: __assign(__assign(__assign(__assign({ value: value, label: label, subtext: subtext, labelPosition: labelPosition }, rest), { ref: buttonRef }), pressable.props), { accessibilityRole: 'radio', accessibilityLabel: accessibilityLabel !== null && accessibilityLabel !== void 0 ? accessibilityLabel : label, accessibilityHint: accessibilityHint !== null && accessibilityHint !== void 0 ? accessibilityHint : subtext, accessibilityState: getAccessibilityState(state.disabled, state.selected, accessibilityState), accessibilityActions: accessibilityActionsProp, accessibilityPositionInSet: accessibilityPositionInSet !== null && accessibilityPositionInSet !== void 0 ? accessibilityPositionInSet : radioGroupContext.values.findIndex(function (x) { return x == value; }) + 1, accessibilitySetSize: accessibilitySetSize !== null && accessibilitySetSize !== void 0 ? accessibilitySetSize : radioGroupContext.values.length, focusable: !state.disabled, disabled: isDisabled, enableFocusRing: enableFocusRing !== null && enableFocusRing !== void 0 ? enableFocusRing : true, onAccessibilityAction: onAccessibilityAction }),\n state: state,\n };\n};\nvar getAccessibilityState = memoize(getAccessibilityStateWorker);\nfunction getAccessibilityStateWorker(disabled, selected, accessibilityState) {\n if (accessibilityState) {\n return __assign({ disabled: disabled, selected: selected }, accessibilityState);\n }\n return { disabled: disabled, selected: selected };\n}\n//# sourceMappingURL=useRadio.js.map","import { StyleSheet } from \"react-native\";\n\nexport const useSharedStyles = () => {\n return StyleSheet.create({\n headerText: {\n fontSize: 13,\n fontWeight: \"600\",\n },\n });\n};\n","export const ReactNativeComponent = {\n settingsPane: \"SettingsPane\",\n dropdownList: \"DropdownList\",\n};\n\nexport const TabKey = {\n Appearance: \"appearance\",\n Control: \"control\",\n Validation: \"validation\",\n};\n\nexport const DropdownAppearanceStyle = {\n Pill: \"pill\",\n Text: \"text\",\n};\n\nexport const DropdownShowDropdownArrowSetting = {\n Always: \"always\",\n CellActive: \"cellActive\",\n};\n\nexport const DropdownListItemMode = {\n Manual: \"manual\",\n FormulaRange: \"formulaRange\",\n};\n","import React from \"react\";\nimport { View } from \"react-native\";\nimport { ButtonV1 as Button } from \"@fluentui-react-native/button\";\nimport { Icon } from \"@fluentui-react-native/icon\";\nimport {\n Menu,\n MenuItem,\n MenuList,\n MenuPopover,\n MenuTrigger,\n} from \"@fluentui-react-native/menu\";\nimport { TextV1 as Text } from \"@fluentui-react-native/text\";\n\nimport { chevronDown16SvgProps } from \"../Icons/ChevronDown16Icon\";\nimport { settingsIconSvgProps } from \"../Icons/SettingsIcon\";\nimport { DropdownValuesList } from \"./DropdownValuesList\";\nimport type { IItemDisplayData } from \"../../index.types\";\n\nimport useControlSectionStyles from \"./ControlSectionStyles\";\nimport { useSharedStyles } from \"../../styles/SharedStyles\";\nimport { DropdownListItemMode } from \"../../utils/UIConstants\";\nimport { ControlType } from \"@ms/office-excel-incellcontrol\";\nimport type { IControlData } from \"@ms/office-excel-incellcontrol\";\n\nconst strings = require(\"../../../assets/strings.resjson\");\n\nexport interface IControlSectionProps {\n type: string;\n items?: IItemDisplayData[];\n onUpdateControl(controlData: IControlData): Promise;\n}\n\nexport const ControlSection: React.FunctionComponent = (\n props\n) => {\n const controlSectionStyles = useControlSectionStyles();\n const SharedStyles = useSharedStyles();\n const [selectedControl, setSelectedControl] = React.useState(\n ControlType.empty\n );\n const [selectedItemMode, setSelectedItemMode] = React.useState([\n DropdownListItemMode.Manual,\n ]);\n\n React.useEffect(() => {\n setSelectedControl(props.type);\n }, [props.type]);\n\n const onControlSelect = (type: string) => {\n const controlData: IControlData = {\n type,\n };\n props.onUpdateControl(controlData).then((result) => {\n if (result) {\n setSelectedControl(type);\n }\n });\n };\n\n const onItemModeSelect = (item: string) => {\n setSelectedItemMode([item]);\n };\n\n return (\n \n \n {strings.getString(\"ControlSectionTypeTitle\")}\n \n \n \n \n \n \n {selectedControl}\n \n \n \n \n \n \n onControlSelect(ControlType.empty)}>\n {strings.getString(\"ControlSectionControlTypeNone\")}\n \n onControlSelect(ControlType.checkbox)}>\n {strings.getString(\"ControlSectionControlTypeCheckbox\")}\n \n onControlSelect(ControlType.dropdown)}>\n {strings.getString(\"ControlSectionControlTypeDropdown\")}\n \n \n \n \n \n {/* Only show list items if the control type is dropdown */}\n {selectedControl === ControlType.dropdown && (\n <>\n \n \n {strings.getString(\"ControlSectionItemsListTitle\")}\n \n \n \n \n \n \n \n \n \n \n \n onItemModeSelect(DropdownListItemMode.Manual)\n }\n >\n {strings.getString(\n \"ControlSectionItemModeEnterItemsManually\"\n )}\n \n \n onItemModeSelect(DropdownListItemMode.FormulaRange)\n }\n >\n {strings.getString(\n \"ControlSectionItemModeUseFormulaOrRange\"\n )}\n \n \n \n \n \n \n \n )}\n \n );\n};\n","export var buttonName = 'Button';\n//# sourceMappingURL=Button.types.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n/** @jsxRuntime classic */\n/** @jsx withSlots */\nimport * as React from 'react';\nimport { Platform, Pressable, View } from 'react-native';\nimport { ActivityIndicator } from '@fluentui-react-native/experimental-activity-indicator';\nimport { compose, memoize, mergeProps, withSlots } from '@fluentui-react-native/framework';\nimport { Icon, createIconProps } from '@fluentui-react-native/icon';\nimport { TextV1 as Text } from '@fluentui-react-native/text';\nimport { stylingSettings, getDefaultSize, getPlatformSpecificAppearance } from './Button.styling';\nimport { buttonName } from './Button.types';\nimport { extractOuterStylePropsAndroid } from './ExtractStyle.android';\nimport { useButton } from './useButton';\n/**\n * A function which determines if a set of styles should be applied to the component given the current state and props of the button.\n *\n * @param layer The name of the state that is being checked for\n * @param state The current state of the button\n * @param userProps The props that were passed into the button\n * @returns Whether the styles that are assigned to the layer should be applied to the button\n */\nexport var buttonLookup = function (layer, state, userProps) {\n return (state[layer] ||\n userProps[layer] ||\n layer === getPlatformSpecificAppearance(userProps['appearance']) ||\n layer === userProps['size'] ||\n (!userProps['size'] && layer === getDefaultSize()) ||\n layer === userProps['shape'] ||\n (!userProps['shape'] && layer === 'rounded') ||\n (layer === 'hovered' && state[layer] && !userProps.loading) ||\n (layer === 'hasContent' && !userProps.iconOnly) ||\n (layer === 'hasIconAfter' && (userProps.icon || userProps.loading) && userProps.iconPosition === 'after') ||\n (layer === 'hasIconBefore' && (userProps.icon || userProps.loading) && (!userProps.iconPosition || userProps.iconPosition === 'before')));\n};\nexport var Button = compose(__assign(__assign({ displayName: buttonName }, stylingSettings), { slots: {\n root: Pressable,\n rippleContainer: Platform.OS === 'android' && View,\n focusInnerBorder: Platform.OS === 'win32' && View,\n icon: Icon,\n content: Text,\n }, useRender: function (userProps, useSlots) {\n var button = useButton(userProps);\n var iconProps = createIconProps(userProps.icon);\n // grab the styled slots\n var Slots = useSlots(userProps, function (layer) { return buttonLookup(layer, button.state, userProps); });\n // now return the handler for finishing render\n return function (final) {\n var children = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n children[_i - 1] = arguments[_i];\n }\n var _a = mergeProps(button.props, final), icon = _a.icon, iconOnly = _a.iconOnly, iconPosition = _a.iconPosition, loading = _a.loading, accessibilityLabel = _a.accessibilityLabel, mergedProps = __rest(_a, [\"icon\", \"iconOnly\", \"iconPosition\", \"loading\", \"accessibilityLabel\"]);\n var shouldShowIcon = !loading && icon;\n if (__DEV__ && iconOnly) {\n React.Children.forEach(children, function (child) {\n if (typeof child === 'string') {\n console.warn('iconOnly should not be set when Button has content.');\n }\n });\n }\n var childText = '';\n if (accessibilityLabel === undefined) {\n React.Children.forEach(children, function (child) {\n if (typeof child === 'string') {\n childText = child; // We only automatically support the one child string.\n }\n });\n }\n var label = accessibilityLabel !== null && accessibilityLabel !== void 0 ? accessibilityLabel : childText;\n var buttonContent = (withSlots(React.Fragment, null,\n loading && withSlots(ActivityIndicator, null),\n shouldShowIcon && iconPosition === 'before' && withSlots(Slots.icon, __assign({}, iconProps, { accessible: false })),\n React.Children.map(children, function (child) {\n return typeof child === 'string' ? (withSlots(Slots.content, { accessible: false, key: \"content\" }, child)) : (child);\n }),\n shouldShowIcon && iconPosition === 'after' && withSlots(Slots.icon, __assign({}, iconProps, { accessible: false }))));\n var hasRipple = Platform.OS === 'android';\n if (hasRipple) {\n var _b = extractOuterStylePropsAndroid(mergedProps.style), outerStyleProps = _b[0], innerStyleProps = _b[1];\n return (withSlots(Slots.rippleContainer, { style: outerStyleProps },\n withSlots(Slots.root, __assign({ accessibilityLabel: label }, mergedProps, { style: innerStyleProps }), buttonContent)));\n }\n else {\n return (withSlots(Slots.root, __assign({}, mergedProps, { accessibilityLabel: label }),\n buttonContent,\n button.state.focused &&\n !!button.state.measuredHeight &&\n !!button.state.measuredWidth &&\n button.state.shouldUseTwoToneFocusBorder && (withSlots(Slots.focusInnerBorder, { style: getFocusBorderStyle(button.state.measuredHeight, button.state.measuredWidth), accessible: false, focusable: false }))));\n }\n };\n } }));\nvar getFocusBorderStyleWorker = function (height, width) {\n var adjustment = 2; // width of border * 2\n return {\n height: height - adjustment,\n width: width - adjustment,\n };\n};\nexport var getFocusBorderStyle = memoize(getFocusBorderStyleWorker);\n//# sourceMappingURL=Button.js.map","/** @jsxRuntime classic */\n/** @jsx withSlots */\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nimport { ActivityIndicator as CoreActivityIndicator } from 'react-native';\nimport { compose, withSlots } from '@fluentui-react-native/framework';\nimport { coreStylingSettings } from './ActivityIndicator.styling';\nimport { activityIndicatorName } from './ActivityIndicator.types';\n/**\n * Wrapper around React Native Core's ActivityIndicator for platforms we do not\n * have a custom FluentUI React Native ActivityIndicator defined.\n */\nexport var ActivityIndicator = compose(__assign(__assign({ displayName: activityIndicatorName }, coreStylingSettings), { slots: {\n root: CoreActivityIndicator,\n }, useRender: function (props, useSlots) {\n var Slots = useSlots(props);\n return function () { return withSlots(Slots.root, null); };\n } }));\n//# sourceMappingURL=CoreActivityIndicator.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nimport { Appearance } from 'react-native';\nimport { buildProps } from '@fluentui-react-native/framework';\nimport assertNever from 'assert-never';\nimport { activityIndicatorName } from './ActivityIndicator.types';\nexport var diameterSizeMap = {\n xSmall: 12,\n small: 16,\n medium: 24,\n large: 32,\n xLarge: 36,\n};\nexport var lineThicknessSizeMap = {\n xSmall: 1,\n small: 1,\n medium: 2,\n large: 3,\n xLarge: 4,\n};\n// Size coversion ramp from the Fluent ActivityIndicator size to the RN ActivityIndicator.\nexport function coreSizeFromFluentSize(fluentSize) {\n if (typeof fluentSize === 'undefined') {\n return fluentSize;\n }\n switch (fluentSize) {\n case 'xSmall':\n return 'small';\n case 'small':\n return 'small';\n case 'medium':\n return 'small';\n case 'large':\n return 'large';\n case 'xLarge':\n return 'large';\n default:\n assertNever(fluentSize);\n }\n}\nexport var stylingSettings = {\n tokens: [\n function () { return ({\n activityIndicatorColor: Appearance.getColorScheme() === 'light' ? '#BDBDBD' : '#666666',\n lineThickness: 'medium',\n size: 'medium',\n }); },\n activityIndicatorName,\n ],\n tokensThatAreAlsoProps: 'all',\n slotProps: {\n root: buildProps(function (tokens) { return ({\n activityIndicatorColor: tokens.activityIndicatorColor,\n size: tokens.size,\n lineThickness: tokens.lineThickness != 'medium' ? tokens.lineThickness : tokens.size,\n accessibilityLabel: 'progressbar',\n accessible: true,\n style: {\n width: diameterSizeMap[tokens.size],\n height: diameterSizeMap[tokens.size],\n },\n }); }, ['activityIndicatorColor', 'lineThickness', 'size']),\n svg: buildProps(function (tokens) { return ({\n width: diameterSizeMap[tokens.size],\n height: diameterSizeMap[tokens.size],\n }); }, ['size']),\n },\n};\n// Minimal styling settings for the RN Core ActivityIndicator\nexport var coreStylingSettings = {\n tokens: [\n function () { return ({\n size: 'small',\n }); },\n activityIndicatorName,\n ],\n tokensThatAreAlsoProps: 'all',\n slotProps: {\n root: buildProps(function (tokens) { return (__assign({ color: tokens.activityIndicatorColor }, (tokens.size && { size: coreSizeFromFluentSize(tokens.size) }))); }, ['activityIndicatorColor', 'size']),\n },\n};\n//# sourceMappingURL=ActivityIndicator.styling.js.map","export var activityIndicatorName = 'ActivityIndicator';\n//# sourceMappingURL=ActivityIndicator.types.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nimport { Platform } from 'react-native';\nimport { buildProps } from '@fluentui-react-native/framework';\nimport { getTextMarginAdjustment } from '@fluentui-react-native/styling-utils';\nimport { borderStyles, layoutStyles, fontStyles } from '@fluentui-react-native/tokens';\nimport { buttonName } from './Button.types';\nimport { defaultButtonColorTokens } from './ButtonColorTokens';\nimport { defaultButtonFontTokens } from './ButtonFontTokens';\nimport { defaultButtonTokens } from './ButtonTokens';\nexport var buttonStates = [\n 'block',\n 'small',\n 'medium',\n 'large',\n 'hasContent',\n 'hasIconAfter',\n 'hasIconBefore',\n 'primary',\n 'subtle',\n 'outline',\n 'rounded',\n 'circular',\n 'square',\n 'hovered',\n 'focused',\n 'pressed',\n 'disabled',\n];\nexport var stylingSettings = {\n tokens: [defaultButtonTokens, defaultButtonFontTokens, defaultButtonColorTokens, buttonName],\n states: buttonStates,\n slotProps: __assign(__assign({}, (Platform.OS === 'android' && {\n rippleContainer: buildProps(function (tokens) {\n return {\n style: {\n flexDirection: 'row',\n alignSelf: 'baseline',\n borderColor: tokens.borderInnerColor,\n borderWidth: tokens.borderInnerWidth,\n borderRadius: tokens.borderRadius,\n overflow: 'hidden',\n },\n };\n }, ['borderRadius']),\n })), { root: buildProps(function (tokens, theme) { return ({\n style: __assign(__assign({ display: 'flex', overflow: 'hidden', alignItems: 'center', flexDirection: 'row', alignSelf: 'flex-start', justifyContent: 'center', width: tokens.width, backgroundColor: tokens.backgroundColor }, borderStyles.from(tokens, theme)), layoutStyles.from(tokens, theme)),\n android_ripple: {\n color: tokens.rippleColor,\n },\n }); }, __spreadArray(__spreadArray(['backgroundColor', 'width', 'rippleColor'], borderStyles.keys, true), layoutStyles.keys, true)), content: buildProps(function (tokens, theme) {\n return {\n style: __assign({}, contentStyling(tokens, theme, tokens.color, tokens)),\n };\n }, __spreadArray(['color', 'spacingIconContentAfter', 'spacingIconContentBefore'], fontStyles.keys, true)), icon: buildProps(function (tokens) { return ({\n color: tokens.iconColor,\n height: tokens.iconSize,\n width: tokens.iconSize,\n }); }, ['iconColor', 'iconSize']), focusInnerBorder: buildProps(function (tokens) { return ({\n style: {\n position: 'absolute',\n borderWidth: tokens.borderInnerWidth,\n borderColor: tokens.borderInnerColor,\n borderRadius: tokens.borderInnerRadius,\n },\n }); }, ['borderInnerWidth', 'borderInnerColor', 'borderInnerRadius']) }),\n};\nexport var getDefaultSize = function () {\n if (Platform.OS === 'windows') {\n return 'medium';\n }\n else if (Platform.OS === 'win32') {\n return 'small';\n }\n else if (Platform.OS === 'macos') {\n return 'small';\n }\n return 'medium';\n};\nexport var getPlatformSpecificAppearance = function (appearance) {\n // Mobile platforms do not have seperate styling when no appearance is passed.\n var hasDifferentDefaultAppearance = !(Platform.OS === 'android' || Platform.OS === 'ios');\n switch (appearance) {\n case 'accent': // Included to cover Mobile platform naming guidelines, maps to 'primary'.\n return 'primary';\n case 'primary':\n case 'subtle':\n case 'outline': // 'Outline' exists only for Mobile platforms, default picked on other platforms.\n return appearance;\n default:\n if (hasDifferentDefaultAppearance) {\n return null;\n }\n else {\n return 'primary';\n }\n }\n};\nexport var contentStyling = function (tokens, theme, contentColor, fontStylesTokens) {\n var textAdjustment = getTextMarginAdjustment();\n var spacingIconContentBefore = tokens.spacingIconContentBefore\n ? {\n marginStart: textAdjustment.marginStart + tokens.spacingIconContentBefore,\n }\n : {};\n var spacingIconContentAfter = tokens.spacingIconContentAfter\n ? {\n marginEnd: textAdjustment.marginEnd + tokens.spacingIconContentAfter,\n }\n : {};\n return __assign(__assign(__assign(__assign({ color: contentColor }, getTextMarginAdjustment()), spacingIconContentBefore), spacingIconContentAfter), fontStyles.from(fontStylesTokens, theme));\n};\n//# sourceMappingURL=Button.styling.js.map","var margins = { marginTop: 0, marginBottom: 0, marginStart: 0, marginEnd: 0 };\n/**\n * Adjusts the margin of text so that it's centered within the layout area of the text.\n * Be default, there is no adjustment, but some platforms may need adjustments due to\n * their font.\n * @returns Adjustment necessary for text\n */\nexport function getTextMarginAdjustment() {\n return margins;\n}\n//# sourceMappingURL=getMarginAdjustment.js.map","import { isHighContrast } from '@fluentui-react-native/theming-utils';\n// https://github.com/microsoft/fluentui-react-native/issues/3782\n// The macOS brand ramps from the token package use blue from Fluent V1,\n// instead of communication blue. Update the packages to use the newly\n// defined Fluent 2 brand ramp.\nexport var defaultButtonColorTokens = function (t) {\n return ({\n backgroundColor: t.colors.neutralBackground2,\n color: t.colors.neutralForeground2,\n borderColor: t.colors.neutralStroke2,\n iconColor: t.colors.neutralForeground2,\n disabled: {\n backgroundColor: t.colors.neutralBackground2,\n color: t.colors.neutralForegroundDisabled,\n borderColor: t.colors.neutralStrokeDisabled,\n iconColor: t.colors.neutralForegroundDisabled,\n },\n hovered: {\n backgroundColor: t.colors.neutralBackground2,\n color: t.colors.neutralForeground2,\n borderColor: t.colors.neutralStroke2,\n iconColor: t.colors.neutralForeground2,\n },\n pressed: {\n backgroundColor: t.colors.neutralBackground2Pressed,\n color: t.colors.neutralForeground2,\n borderColor: t.colors.neutralStroke2,\n iconColor: t.colors.neutralForeground2,\n },\n focused: {\n backgroundColor: t.colors.neutralBackground2,\n color: t.colors.neutralForeground2,\n borderColor: t.colors.neutralStroke2,\n icon: t.colors.neutralForeground2,\n },\n primary: {\n backgroundColor: t.colors.brandBackground,\n color: t.colors.neutralForegroundOnBrand,\n borderColor: t.colors.brandStroke1,\n iconColor: t.colors.neutralForegroundOnBrand,\n disabled: {\n backgroundColor: t.colors.neutralBackgroundDisabled,\n color: t.colors.neutralForegroundDisabled,\n borderColor: t.colors.neutralStrokeDisabled,\n iconColor: t.colors.neutralForegroundDisabled,\n },\n hovered: {\n // https://github.com/microsoft/fluentui-react-native/issues/3780\n // brandBackgroundHover should match brandBackground, but does not. Update\n // `backgroundColor` and `borderColor` here when fixed in design token package.\n backgroundColor: t.colors.brandBackground,\n color: t.colors.neutralForegroundOnBrandHover,\n borderColor: t.colors.brandBackground,\n iconColor: t.colors.neutralForegroundOnBrandHover,\n },\n pressed: {\n backgroundColor: t.colors.brandBackgroundPressed,\n color: t.colors.neutralForegroundOnBrandPressed,\n borderColor: t.colors.brandBackgroundPressed,\n iconColor: t.colors.neutralForegroundOnBrandPressed,\n },\n focused: {\n backgroundColor: t.colors.brandBackground,\n color: t.colors.neutralForegroundOnBrand,\n borderColor: t.colors.brandBackground,\n iconColor: t.colors.neutralForegroundOnBrand,\n },\n },\n // https://github.com/microsoft/fluentui-react-native/issues/3781\n // Subtle Button should match Titlebar buttons on macOS, which:\n // - Have a hover state (unlike most buttons in macOS)...\n // - Except in High Contrast, where instead they have a border around them\n // While the alias tokens aren't updated, manually check for High Contrast.\n subtle: {\n backgroundColor: t.colors.subtleBackground,\n color: t.colors.brandForeground1,\n borderColor: t.colors.transparentStroke,\n iconColor: t.colors.brandForeground1,\n disabled: {\n backgroundColor: t.colors.subtleBackground,\n color: t.colors.brandForeground1Disabled,\n borderColor: t.colors.transparentStrokeDisabled,\n iconColor: t.colors.brandForeground1Disabled,\n },\n hovered: {\n backgroundColor: isHighContrast(t) ? t.colors.subtleBackground : t.colors.subtleBackgroundHover,\n color: isHighContrast(t) ? t.colors.brandForeground1 : t.colors.brandForeground1Hover,\n borderColor: t.colors.transparentStroke,\n iconColor: isHighContrast(t) ? t.colors.brandForeground1 : t.colors.brandForeground1Hover,\n },\n pressed: {\n backgroundColor: t.colors.subtleBackgroundPressed,\n color: t.colors.brandForeground1Pressed,\n borderColor: t.colors.transparentStroke,\n iconColor: t.colors.brandForeground1Pressed,\n },\n focused: {\n backgroundColor: t.colors.subtleBackground,\n color: t.colors.brandForeground1,\n borderColor: t.colors.transparentStroke,\n iconColor: t.colors.brandForeground1,\n },\n },\n });\n};\n//# sourceMappingURL=ButtonColorTokens.macos.js.map","export var defaultButtonFontTokens = function (_t) {\n return ({\n medium: {\n hasContent: {\n variant: 'bodyStandard',\n },\n },\n small: {\n hasContent: {\n variant: 'secondaryStandard',\n },\n },\n large: {\n variant: 'subheaderSemibold',\n },\n });\n};\n//# sourceMappingURL=ButtonFontTokens.macos.js.map","import { globalTokens } from '@fluentui-react-native/theme-tokens';\nexport var defaultButtonTokens = function () {\n return ({\n block: {\n width: '100%',\n },\n medium: {\n padding: globalTokens.size60 - globalTokens.stroke.width10,\n borderWidth: globalTokens.stroke.width10,\n iconSize: 16,\n focused: {\n borderWidth: 0,\n padding: globalTokens.size60,\n },\n hasContent: {\n minWidth: 96,\n paddingHorizontal: globalTokens.size120 - globalTokens.stroke.width10,\n hasIconAfter: {\n spacingIconContentAfter: globalTokens.size60,\n },\n hasIconBefore: {\n spacingIconContentBefore: globalTokens.size60,\n },\n focused: {\n paddingHorizontal: globalTokens.size120,\n },\n },\n },\n small: {\n padding: globalTokens.size40 - globalTokens.stroke.width10,\n borderWidth: globalTokens.stroke.width10,\n iconSize: 16,\n focused: {\n borderWidth: 0,\n padding: globalTokens.size40,\n },\n hasContent: {\n minWidth: 64,\n minHeight: 24,\n paddingHorizontal: globalTokens.size80 - globalTokens.stroke.width10,\n hasIconAfter: {\n spacingIconContentAfter: globalTokens.size40,\n },\n hasIconBefore: {\n spacingIconContentBefore: globalTokens.size40,\n },\n focused: {\n paddingHorizontal: globalTokens.size80,\n },\n },\n },\n large: {\n padding: globalTokens.size80 - globalTokens.stroke.width10,\n borderWidth: globalTokens.stroke.width10,\n iconSize: 20,\n focused: {\n borderWidth: 0,\n padding: globalTokens.size80,\n },\n hasContent: {\n minWidth: 96,\n paddingHorizontal: globalTokens.size160 - globalTokens.stroke.width10,\n hasIconAfter: {\n spacingIconContentAfter: globalTokens.size60,\n },\n hasIconBefore: {\n spacingIconContentBefore: globalTokens.size60,\n },\n focused: {\n paddingHorizontal: globalTokens.size160,\n },\n },\n },\n rounded: {\n borderRadius: globalTokens.corner.radius40,\n },\n circular: {\n borderRadius: globalTokens.corner.radiusCircular,\n },\n square: {\n borderRadius: globalTokens.corner.radiusNone,\n },\n });\n};\n//# sourceMappingURL=ButtonTokens.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport * as React from 'react';\nimport { Platform } from 'react-native';\nimport { useFluentTheme } from '@fluentui-react-native/framework';\nimport { usePressableState, useKeyProps, useOnPressWithFocus, useViewCommandFocus } from '@fluentui-react-native/interactive-hooks';\nimport { isHighContrast } from '@fluentui-react-native/theming-utils';\n// On win32 we don't want to fire the onClick event if the Button\n// hasn't received a key down event first. This prevents behavior\n// like the button firing after you tab to it white Enter is pressed\n// and then releasing Enter, or the Menu reopening since it closes\n// onKeyDown while the Button operates onKeyUp.\nvar shouldOnlyFireIfPressed = Platform.OS === 'win32';\nvar isProcessingKeyboardInvocation = false;\nexport var useButton = function (props) {\n var defaultComponentRef = React.useRef(null);\n var accessible = props.accessible, accessibilityRole = props.accessibilityRole, _a = props.componentRef, componentRef = _a === void 0 ? defaultComponentRef : _a, disabled = props.disabled, onBlur = props.onBlur, onClick = props.onClick, onLayout = props.onLayout, loading = props.loading, enableFocusRing = props.enableFocusRing, focusable = props.focusable, rest = __rest(props, [\"accessible\", \"accessibilityRole\", \"componentRef\", \"disabled\", \"onBlur\", \"onClick\", \"onLayout\", \"loading\", \"enableFocusRing\", \"focusable\"]);\n var isDisabled = !!disabled || !!loading;\n // GH #1336: Set focusRef to null if button is disabled to prevent getting keyboard focus.\n var focusRef = isDisabled ? null : componentRef;\n var onClickWithFocus = useOnPressWithFocus(focusRef, onClick);\n var onBlurInner = React.useCallback(function (e) {\n isProcessingKeyboardInvocation = false;\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n }, [onBlur]);\n var pressable = usePressableState(__assign(__assign({}, rest), { onPress: onClickWithFocus, onBlur: shouldOnlyFireIfPressed ? onBlurInner : onBlur }));\n var onKeyDown = React.useCallback(function (e) {\n if (!disabled && (e.nativeEvent.key === 'Enter' || e.nativeEvent.key === ' ')) {\n isProcessingKeyboardInvocation = true;\n }\n }, [disabled]);\n var onKeyPress = React.useCallback(function (e) {\n if (shouldOnlyFireIfPressed) {\n if (isProcessingKeyboardInvocation) {\n onClick === null || onClick === void 0 ? void 0 : onClick(e);\n isProcessingKeyboardInvocation = false;\n }\n }\n else {\n if (Platform.OS === 'macos') {\n // Do nothing as macOS's pressable already calls onPress with onKeyDown\n }\n else {\n onClick === null || onClick === void 0 ? void 0 : onClick(e);\n }\n }\n }, [onClick]);\n var onKeyProps = useKeyProps(onKeyPress, ' ', 'Enter');\n var hasTogglePattern = props.accessibilityActions && !!props.accessibilityActions.find(function (action) { return action.name === 'Toggle'; });\n var theme = useFluentTheme();\n var shouldUseTwoToneFocusBorder = Platform.OS === 'win32' && props.appearance === 'primary' && !isHighContrast(theme);\n var _b = React.useState(undefined), baseHeight = _b[0], setBaseHeight = _b[1];\n var _c = React.useState(undefined), baseWidth = _c[0], setBaseWidth = _c[1];\n var onLayoutInner = React.useCallback(function (e) {\n // Only run when shouldUseTwoToneFocusBorder so that state update doesn't\n // affect platforms that don't need it.\n if (shouldUseTwoToneFocusBorder) {\n setBaseHeight(e.nativeEvent.layout.height);\n setBaseWidth(e.nativeEvent.layout.width);\n }\n onLayout && onLayout(e);\n }, [onLayout, setBaseHeight, setBaseWidth, shouldUseTwoToneFocusBorder]);\n return {\n props: __assign(__assign(__assign(__assign(__assign({}, onKeyProps), (Platform.OS === 'win32' && { onKeyDown: onKeyDown })), pressable.props), (isDisabled !== undefined && { disabled: isDisabled })), { accessible: accessible !== null && accessible !== void 0 ? accessible : true, accessibilityRole: accessibilityRole || 'button', onAccessibilityTap: props.onAccessibilityTap || (!hasTogglePattern ? props.onClick : undefined), accessibilityLabel: props.accessibilityLabel, enableFocusRing: enableFocusRing !== null && enableFocusRing !== void 0 ? enableFocusRing : !shouldUseTwoToneFocusBorder, focusable: focusable !== null && focusable !== void 0 ? focusable : !isDisabled, ref: useViewCommandFocus(componentRef), iconPosition: props.iconPosition || 'before', loading: loading, onLayout: onLayoutInner }),\n state: __assign(__assign({}, pressable.state), { pressed: pressable.state.pressed, measuredWidth: baseWidth, measuredHeight: baseHeight, shouldUseTwoToneFocusBorder: shouldUseTwoToneFocusBorder }),\n };\n};\n//# sourceMappingURL=useButton.js.map","import * as React from 'react';\nexport var MenuContext = React.createContext({\n isControlled: false,\n checked: [],\n defaultChecked: [],\n hasCheckmarks: false,\n hasIcons: false,\n hasTooltips: false,\n isSubmenu: false,\n open: false,\n onCheckedChange: function () { return false; },\n setOpen: function () { return false; },\n shouldFocusOnContainer: undefined,\n triggerRef: null,\n hasMaxHeight: false,\n hasMaxWidth: false,\n});\nexport var MenuProvider = MenuContext.Provider;\nexport var useMenuContext = function () { return React.useContext(MenuContext); };\n//# sourceMappingURL=menuContext.js.map","import * as React from 'react';\nexport var MenuListContext = React.createContext({\n isCheckedControlled: false,\n checked: {},\n hasCheckmarks: false,\n hasIcons: false,\n hasTooltips: false,\n onCheckedChange: function () { return false; },\n onArrowClose: function () { return false; },\n addRadioItem: function () { return false; },\n removeRadioItem: function () { return false; },\n trackMenuItem: function () { return false; },\n untrackMenuItem: function () { return false; },\n});\nexport var MenuListProvider = MenuListContext.Provider;\nexport var useMenuListContext = function () { return React.useContext(MenuListContext); };\n//# sourceMappingURL=menuListContext.js.map","import React from 'react';\n/**\n * This context keeps track of whether a trigger component is for a submenu.\n * This allows the trigger to show a submenu indicator.\n */\nexport var MenuTriggerContext = React.createContext(false);\nexport var MenuTriggerProvider = MenuTriggerContext.Provider;\nexport var useMenuTriggerContext = function () { return React.useContext(MenuTriggerContext); };\n//# sourceMappingURL=menuTriggerContext.js.map","import React from 'react';\nimport { stagedComponent } from '@fluentui-react-native/framework';\nimport { menuName } from './Menu.types';\nimport { renderFinalMenu } from './renderMenu';\nimport { useMenu } from './useMenu';\nimport { useMenuContextValue } from './useMenuContextValue';\nexport var Menu = stagedComponent(function (props) {\n var state = useMenu(props);\n var contextValue = useMenuContextValue(state);\n return function (_rest, children) {\n var childrenArray = React.Children.toArray(children);\n if (__DEV__) {\n if (childrenArray.length !== 2) {\n // eslint-disable-next-line no-console\n console.warn('Menu must contain two children');\n }\n }\n return renderFinalMenu(childrenArray, contextValue, state);\n };\n});\nMenu.displayName = menuName;\nexport default Menu;\n//# sourceMappingURL=Menu.js.map","export var menuName = 'Menu';\nexport var AndroidMenuStates;\n(function (AndroidMenuStates) {\n AndroidMenuStates[AndroidMenuStates[\"Hidden\"] = 0] = \"Hidden\";\n AndroidMenuStates[AndroidMenuStates[\"Animating\"] = 1] = \"Animating\";\n AndroidMenuStates[AndroidMenuStates[\"Shown\"] = 2] = \"Shown\";\n})(AndroidMenuStates || (AndroidMenuStates = {}));\n//# sourceMappingURL=Menu.types.js.map","import React from 'react';\nimport { MenuProvider } from '../context';\nexport var renderFinalMenu = function (childrenArray, contextValue, state) {\n var menuTrigger = childrenArray[0];\n var menuPopover = childrenArray[1];\n return (React.createElement(MenuProvider, { value: contextValue },\n menuTrigger,\n state.open && state.shouldFocusOnContainer !== undefined && menuPopover));\n};\n//# sourceMappingURL=renderMenu.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport { Platform } from 'react-native';\nimport { isMouseEvent } from '@fluentui-react-native/interactive-hooks';\nimport { useMenuContext } from '../context/menuContext';\n// Due to how events get fired we get double notifications\n// for the same event causing us to immediately reopen\n// a menu when we close it. Adding in a delay to prevent\n// this behavior.\nvar delayOpen = 150;\nexport var useMenu = function (props) {\n var triggerRef = React.useRef();\n var context = useMenuContext();\n var isSubmenu = context.triggerRef !== null;\n var isOpenControlled = typeof props.open !== 'undefined';\n var _a = useMenuOpenState(isOpenControlled, props, context.setOpen), open = _a[0], shouldFocusOnContainer = _a[1], setOpen = _a[2];\n var _b = useMenuCheckedState(props), checked = _b[0], onCheckedChange = _b[1];\n // Default behavior for submenu is to open on hover\n // the ...props line below will override this behavior for a submenu\n // or apply openOnHover if passed into a root Menu.\n var openOnHover = isSubmenu;\n // We need to be able to cancel the timer that gets set on\n // hover out of the parent popover if the parent popover\n // is also set to open/close on hover out. Otherwise\n // the parent menu will close when the timeout passes.\n var parentPopoverHoverOutTimer = isSubmenu ? context.popoverHoverOutTimer : undefined;\n return __assign(__assign({ openOnHover: openOnHover }, props), { open: open, setOpen: setOpen, shouldFocusOnContainer: shouldFocusOnContainer, checked: checked, onCheckedChange: onCheckedChange, triggerRef: triggerRef, isSubmenu: isSubmenu, isControlled: isOpenControlled, parentPopoverHoverOutTimer: parentPopoverHoverOutTimer });\n};\nvar useMenuOpenState = function (isControlled, props, parentSetOpen) {\n var defaultOpen = props.defaultOpen, onOpenChange = props.onOpenChange, open = props.open;\n var initialState = typeof defaultOpen !== 'undefined' ? defaultOpen : !!open;\n var _a = React.useState(initialState), openInternal = _a[0], setOpenInternal = _a[1];\n var _b = React.useState(undefined), shouldFocusOnContainer = _b[0], setShouldFocusOnContainer = _b[1];\n var state = isControlled ? open : openInternal;\n var lastCloseTimestampRef = React.useRef(-1);\n var setOpen = React.useCallback(function (e, isOpen, bubble) {\n var openPrev = state;\n if (!isControlled && (!isOpen || lastCloseTimestampRef.current + delayOpen <= Date.now())) {\n setOpenInternal(isOpen);\n }\n if (isOpen) {\n if (Platform.OS === 'win32' && isMouseEvent(e)) {\n setShouldFocusOnContainer(true);\n }\n else {\n setShouldFocusOnContainer(false);\n }\n }\n if (!isOpen) {\n setShouldFocusOnContainer(undefined);\n lastCloseTimestampRef.current = Date.now();\n }\n if (onOpenChange && openPrev !== isOpen) {\n onOpenChange(e, isOpen);\n }\n if (bubble && parentSetOpen) {\n parentSetOpen(e, isOpen, bubble);\n }\n }, [isControlled, state, onOpenChange, setOpenInternal, parentSetOpen]);\n return [state, shouldFocusOnContainer, setOpen];\n};\nvar useMenuCheckedState = function (props) {\n var _a;\n var checked = props.checked, defaultChecked = props.defaultChecked, onCheckedChangeOriginal = props.onCheckedChange;\n var _b = React.useState((_a = defaultChecked !== null && defaultChecked !== void 0 ? defaultChecked : checked) !== null && _a !== void 0 ? _a : []), checkedInternal = _b[0], setCheckedInternal = _b[1];\n var isControlled = typeof checked !== 'undefined';\n var state = isControlled ? checked : checkedInternal;\n var onCheckedChange = React.useCallback(function (e, checked) {\n if (!isControlled) {\n setCheckedInternal(checked);\n }\n onCheckedChangeOriginal === null || onCheckedChangeOriginal === void 0 ? void 0 : onCheckedChangeOriginal(e, checked);\n }, [isControlled, setCheckedInternal, onCheckedChangeOriginal]);\n return [state, onCheckedChange];\n};\n//# sourceMappingURL=useMenu.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nexport var useMenuContextValue = function (state) {\n var _a = React.useState(), triggerHoverOutTimer = _a[0], setTriggerHoverOutTimer = _a[1];\n var _b = React.useState(), popoverHoverOutTimer = _b[0], setPopoverHoverOutTimer = _b[1];\n return __assign(__assign({}, state), { popoverHoverOutTimer: popoverHoverOutTimer, triggerHoverOutTimer: triggerHoverOutTimer, setPopoverHoverOutTimer: setPopoverHoverOutTimer, setTriggerHoverOutTimer: setTriggerHoverOutTimer });\n};\n//# sourceMappingURL=useMenuContextValue.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { menuTriggerName } from './MenuTrigger.types';\nimport { useMenuTrigger } from './useMenuTrigger';\nimport { MenuTriggerProvider } from '../context/menuTriggerContext';\nexport var MenuTrigger = function (props) {\n if (__DEV__) {\n if (!React.Children.only(props.children)) {\n console.warn('Only expecting one child for MenuTrigger');\n }\n }\n var menuTrigger = useMenuTrigger(props.children.props);\n // In order to properly support accessibility without erasing props set on the\n // child component which may affect accessibility, we need to modify the\n // state in the inner render so we can access the child component and its props.\n var revised = React.cloneElement(props.children, __assign(__assign({}, (props.children.props.tooltip && { alwaysShowToolTip: true })), menuTrigger.props));\n return React.createElement(MenuTriggerProvider, { value: menuTrigger.hasSubmenu }, revised);\n};\nMenuTrigger.displayName = menuTriggerName;\nexport default MenuTrigger;\n//# sourceMappingURL=MenuTrigger.js.map","export var menuTriggerName = 'MenuTrigger';\n//# sourceMappingURL=MenuTrigger.types.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport React from 'react';\nimport { Platform } from 'react-native';\nimport { useMergedRefs } from './useMergeRefs';\nimport { hoverDelayDefault } from '../consts';\nimport { useMenuContext } from '../context/menuContext';\nvar baseAccessibilityActions = Platform.OS === 'win32' ? [{ name: 'Expand' }, { name: 'Collapse' }] : [];\nvar expandedState = { expanded: true };\nvar collapsedState = { expanded: false };\nexport var useMenuTrigger = function (childProps) {\n var context = useMenuContext();\n var _a = context.hoverDelay, hoverDelay = _a === void 0 ? hoverDelayDefault : _a, open = context.open, openOnHover = context.openOnHover, popoverHoverOutTimer = context.popoverHoverOutTimer, setOpen = context.setOpen, setTriggerHoverOutTimer = context.setTriggerHoverOutTimer, triggerHoverOutTimer = context.triggerHoverOutTimer, triggerRef = context.triggerRef;\n var childAccessibilityActions = childProps.accessibilityActions, childAccessibilityState = childProps.accessibilityState, childOnAccessibilityAction = childProps.onAccessibilityAction, childAccessibilityPositionInSet = childProps.accessibilityPositionInSet, // win32\n childAccessibilitySetSize = childProps.accessibilitySetSize, // win32\n childOnClick = childProps.onClick, childOnHoverIn = childProps.onHoverIn, childOnHoverOut = childProps.onHoverOut, childComponentRef = childProps.componentRef;\n var accessibilityActions = React.useMemo(function () {\n if (childAccessibilityActions) {\n return __spreadArray(__spreadArray([], baseAccessibilityActions, true), childAccessibilityActions, true);\n }\n return baseAccessibilityActions;\n }, [childAccessibilityActions]);\n var accessibilityState = React.useMemo(function () {\n var baseState = open ? expandedState : collapsedState;\n if (childAccessibilityState) {\n return __assign(__assign({}, baseState), childAccessibilityState);\n }\n return baseState;\n }, [childAccessibilityState, open]);\n var onAccessibilityAction = React.useCallback(function (e) {\n if (Platform.OS === 'win32') {\n switch (e.nativeEvent.actionName) {\n case 'Expand':\n setOpen(e, true /* isOpen */);\n break;\n case 'Collapse':\n setOpen(e, false /* isOpen */);\n break;\n }\n }\n childOnAccessibilityAction && childOnAccessibilityAction(e);\n }, [childOnAccessibilityAction, setOpen]);\n var onHoverIn = React.useCallback(function (e) {\n if (openOnHover) {\n clearTimeout(popoverHoverOutTimer);\n clearTimeout(triggerHoverOutTimer);\n e.persist();\n setTimeout(function () {\n setOpen(e, true /* isOpen */);\n }, hoverDelay);\n }\n childOnHoverIn && childOnHoverIn(e);\n }, [childOnHoverIn, hoverDelay, openOnHover, setOpen, triggerHoverOutTimer, popoverHoverOutTimer]);\n var onHoverOut = React.useCallback(function (e) {\n if (openOnHover) {\n e.persist();\n var timer = setTimeout(function () {\n setOpen(e, false /* isOpen */);\n }, hoverDelay);\n setTriggerHoverOutTimer(timer);\n }\n childOnHoverOut && childOnHoverOut(e);\n }, [childOnHoverOut, hoverDelay, openOnHover, setOpen, setTriggerHoverOutTimer]);\n var onClick = React.useCallback(function (e) {\n setOpen(e, !open);\n childOnClick && childOnClick(e);\n }, [childOnClick, open, setOpen]);\n var ref = useMergedRefs(triggerRef, childComponentRef);\n return {\n props: {\n onClick: onClick,\n onHoverIn: onHoverIn,\n onHoverOut: onHoverOut,\n componentRef: ref,\n accessibilityState: accessibilityState,\n accessibilityActions: accessibilityActions,\n onAccessibilityAction: onAccessibilityAction,\n accessibilityPositionInSet: childAccessibilityPositionInSet !== null && childAccessibilityPositionInSet !== void 0 ? childAccessibilityPositionInSet : context.accessibilityPositionInSet,\n accessibilitySetSize: childAccessibilitySetSize !== null && childAccessibilitySetSize !== void 0 ? childAccessibilitySetSize : context.accessibilitySetSize, // win32\n },\n hasSubmenu: context.isSubmenu,\n };\n};\n//# sourceMappingURL=useMenuTrigger.js.map","/**\n * Copied from @fluentui/react-utilities\n *\n * Keeping the file local to Menu for now while looking into whether\n * we can pull in @fluentui/react-utilities package\n */\nimport { __spreadArray } from \"tslib\";\nimport * as React from 'react';\n/**\n * React hook to merge multiple React refs (either MutableRefObjects or ref callbacks) into a single ref callback that\n * updates all provided refs\n * @param refs - Refs to collectively update with one ref value.\n * @returns A function with an attached \"current\" prop, so that it can be treated like a RefObject.\n */\nexport function useMergedRefs() {\n var refs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n refs[_i] = arguments[_i];\n }\n var mergedCallback = React.useCallback(function (value) {\n // Update the \"current\" prop hanging on the function.\n mergedCallback.current = value;\n for (var _i = 0, refs_1 = refs; _i < refs_1.length; _i++) {\n var ref = refs_1[_i];\n if (typeof ref === 'function') {\n ref(value);\n }\n else if (ref) {\n // work around the immutability of the React.Ref type\n ref.current = value;\n }\n }\n }, __spreadArray([], refs, true));\n return mergedCallback;\n}\n//# sourceMappingURL=useMergeRefs.js.map","import { Platform } from 'react-native';\nexport var hoverDelayDefault = Platform.select({\n macos: 100,\n default: 500, // win32\n});\n//# sourceMappingURL=consts.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport { Platform, View } from 'react-native';\nimport { compressible, mergeProps, patchTokens, useFluentTheme } from '@fluentui-react-native/framework';\nimport { menuPopoverName } from './MenuPopover.types';\nimport { useMenuPopoverTokens } from './MenuPopoverTokens';\nimport { useMenuPopover } from './useMenuPopover';\nimport { useMenuContext } from '../context';\nimport { MenuCallout } from '../MenuCallout';\nexport var MenuPopover = compressible(function (props, useTokens) {\n var _a;\n var directionalHint = props.directionalHint, gapSpace = props.gapSpace, maxHeight = props.maxHeight, maxWidth = props.maxWidth, minWidth = props.minWidth, minPadding = props.minPadding, borderWidth = props.borderWidth, borderColor = props.borderColor, backgroundColor = props.backgroundColor;\n var state = useMenuPopover(props);\n var theme = useFluentTheme();\n var context = useMenuContext();\n var _b = useTokens(theme), tokens = _b[0], cache = _b[1];\n context.hasMaxHeight = maxHeight != undefined;\n context.minWidth = minWidth !== null && minWidth !== void 0 ? minWidth : context.minWidth;\n _a = patchTokens(tokens, cache, {\n directionalHint: directionalHint,\n gapSpace: gapSpace,\n maxHeight: maxHeight,\n maxWidth: maxWidth,\n minWidth: minWidth,\n minPadding: minPadding,\n borderWidth: borderWidth,\n borderColor: borderColor,\n backgroundColor: backgroundColor,\n }), tokens = _a[0], cache = _a[1];\n return function (final, children) {\n var mergedProps = mergeProps(tokens, state.props, final);\n var innerViewProps = \n //For windows platforms, styling needs to be set on container view instead of the callout itself for the scrollview to reflect correct width and height\n Platform.OS === 'windows' || Platform.OS === 'win32'\n ? __assign(__assign({}, state.innerView), { style: {\n maxHeight: mergedProps.maxHeight,\n } }) : state.innerView;\n var content = React.createElement(View, innerViewProps, children);\n return (React.createElement(MenuCallout, __assign({ tokens: tokens }, mergedProps), content));\n };\n}, useMenuPopoverTokens);\nMenuPopover.displayName = menuPopoverName;\nexport default MenuPopover;\n//# sourceMappingURL=MenuPopover.js.map","export var menuPopoverName = 'MenuPopover';\n//# sourceMappingURL=MenuPopover.types.js.map","import { buildUseTokens } from '@fluentui-react-native/framework';\nimport { getCurrentAppearance, isHighContrast } from '@fluentui-react-native/theming-utils';\nimport { menuPopoverName } from './MenuPopover.types';\nexport var useMenuPopoverTokens = buildUseTokens(function (t) { return ({\n borderWidth: 1,\n borderRadius: 5,\n borderColor: isHighContrast()\n ? t.colors.neutralStroke1\n : getCurrentAppearance(t.host.appearance, 'light') === 'dark'\n ? t.colors.neutralStroke3\n : t.colors.transparentStroke,\n}); }, menuPopoverName);\n//# sourceMappingURL=MenuPopoverTokens.macos.js.map","import React from 'react';\nimport { I18nManager } from 'react-native';\nimport { useMenuContext } from '../context/menuContext';\nvar controlledDismissBehaviors = ['preventDismissOnKeyDown', 'preventDismissOnClickOutside'];\nvar stopPropagationKeys = ['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight', 'Tab', 'Home', 'End', 'Escape'];\nexport var useMenuPopover = function (props) {\n var _a, _b;\n var context = useMenuContext();\n var setOpen = context.setOpen, triggerRef = context.triggerRef, isControlled = context.isControlled, isSubmenu = context.isSubmenu, openOnHover = context.openOnHover, parentPopoverHoverOutTimer = context.parentPopoverHoverOutTimer, popoverHoverOutTimer = context.popoverHoverOutTimer, setPopoverHoverOutTimer = context.setPopoverHoverOutTimer, shouldFocusOnContainer = context.shouldFocusOnContainer, triggerHoverOutTimer = context.triggerHoverOutTimer;\n var onKeyDownProp = props.onKeyDown, onKeyUpProp = props.onKeyUp;\n var onDismiss = React.useCallback(function () {\n var _a;\n (_a = props.onDismiss) === null || _a === void 0 ? void 0 : _a.call(props);\n setOpen(undefined, false /* isOpen */), [setOpen];\n }, [props.onDismiss, setOpen]);\n var dismissBehaviors = isControlled ? controlledDismissBehaviors : undefined;\n var directionalHint = (_a = props.directionalHint) !== null && _a !== void 0 ? _a : getDirectionalHint(isSubmenu, I18nManager.isRTL);\n var setInitialFocus = true;\n var doNotTakePointerCapture = (_b = props.doNotTakePointerCapture) !== null && _b !== void 0 ? _b : openOnHover;\n var accessibilityRole = 'menu';\n var onMouseEnter = React.useCallback(function () {\n clearTimeout(triggerHoverOutTimer);\n clearTimeout(popoverHoverOutTimer);\n clearTimeout(parentPopoverHoverOutTimer);\n }, [parentPopoverHoverOutTimer, popoverHoverOutTimer, triggerHoverOutTimer]);\n var onMouseLeave = React.useCallback(function () {\n if (!openOnHover) {\n return;\n }\n var timer = setTimeout(function () {\n setOpen(undefined, false /* isOpen */);\n }, 500);\n setPopoverHoverOutTimer(timer);\n }, [openOnHover, setOpen, setPopoverHoverOutTimer]);\n var onKeyDown = React.useCallback(function (e) {\n onKeyDownProp && onKeyDownProp(e);\n // Mark key events that move selection as handled.\n // These key events are handled on the native side.\n if (stopPropagationKeys.includes(e.nativeEvent.key)) {\n e.stopPropagation();\n }\n }, [onKeyDownProp]);\n var onKeyUp = React.useCallback(function (e) {\n onKeyUpProp && onKeyUpProp(e);\n // Mark key events that move selection as handled.\n // These key events are handled on the native side.\n if (stopPropagationKeys.includes(e.nativeEvent.key)) {\n e.stopPropagation();\n }\n }, [onKeyUpProp]);\n var _c = React.useState(shouldFocusOnContainer), canFocusOnPopover = _c[0], setCanFocusOnPopover = _c[1];\n var onBlur = React.useCallback(function () {\n setCanFocusOnPopover(false);\n }, [setCanFocusOnPopover]);\n React.useEffect(function () {\n return function cleanup() {\n clearTimeout(popoverHoverOutTimer);\n };\n });\n return {\n props: {\n accessibilityRole: accessibilityRole,\n target: triggerRef,\n onDismiss: onDismiss,\n onShow: props.onShow,\n directionalHint: directionalHint,\n dismissBehaviors: dismissBehaviors,\n doNotTakePointerCapture: doNotTakePointerCapture,\n setInitialFocus: setInitialFocus,\n },\n innerView: {\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onKeyDown: onKeyDown,\n onKeyUp: onKeyUp,\n accessible: shouldFocusOnContainer,\n focusable: canFocusOnPopover,\n onBlur: onBlur,\n },\n };\n};\nvar getDirectionalHint = function (isSubmenu, isRtl) {\n if (!isSubmenu) {\n return undefined;\n }\n if (isRtl) {\n return 'leftTopEdge';\n }\n return 'rightTopEdge';\n};\n//# sourceMappingURL=useMenuPopover.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport { Callout } from '@fluentui-react-native/callout';\nimport { stagedComponent } from '@fluentui-react-native/framework';\nimport { mergeProps } from '@fluentui-react-native/framework';\nimport { menuCalloutName } from './MenuCallout.types';\nexport var MenuCallout = stagedComponent(function (props) {\n return function (_rest, children) {\n var mergedProps = mergeProps(props, _rest);\n return React.createElement(Callout, __assign({}, mergedProps), children);\n };\n});\nMenuCallout.displayName = menuCalloutName;\nexport default MenuCallout;\n//# sourceMappingURL=MenuCallout.js.map","export var calloutName = 'Callout';\n//# sourceMappingURL=Callout.types.js.map","/**\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n * @format\n */\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport * as React from 'react';\nimport { findNodeHandle, Platform } from 'react-native';\nimport { backgroundColorTokens, borderTokens } from '@fluentui-react-native/tokens';\nimport { compose } from '@uifabricshared/foundation-compose';\nimport { mergeSettings } from '@uifabricshared/foundation-settings';\nimport { settings } from './Callout.settings';\nimport { calloutName } from './Callout.types';\nimport CalloutNativeComponent from './CalloutNativeComponent';\nimport FRNCalloutNativeComponent from './MacOSCalloutNativeComponent';\nimport { Commands } from './MacOSCalloutNativeComponent';\nvar NativeCalloutView = Platform.select({\n macos: FRNCalloutNativeComponent,\n default: CalloutNativeComponent, // win32\n});\nexport var Callout = compose({\n displayName: calloutName,\n usePrepareProps: function (props, useStyling) {\n var componentRef = props.componentRef, target = props.target, rest = __rest(props, [\"componentRef\", \"target\"]);\n React.useImperativeHandle(componentRef, function () { return ({\n blurWindow: function () {\n if (componentRef.current != null) {\n Commands.blurWindow(nativeComponentRef.current);\n }\n },\n focusWindow: function () {\n if (componentRef.current != null) {\n Commands.focusWindow(nativeComponentRef.current);\n }\n },\n }); }, [componentRef]);\n var nativeComponentRef = React.useRef(null);\n var _a = React.useState(null), nativeTarget = _a[0], setNativeTarget = _a[1];\n React.useLayoutEffect(function () {\n if (typeof target === 'string') {\n // Pass string type `target` directly\n setNativeTarget(target);\n }\n else if (target === null || target === void 0 ? void 0 : target.current) {\n // Pass the tagID for a valid ref `target`\n setNativeTarget(findNodeHandle(target.current));\n }\n else {\n // Clear `target` so we may fall back on `anchorRect` if provided\n setNativeTarget(null);\n }\n }, [target]);\n var slotProps = mergeSettings(useStyling(props), {\n root: __assign(__assign({ ref: nativeComponentRef }, (nativeTarget && { target: nativeTarget })), rest),\n });\n return { slotProps: slotProps };\n },\n settings: settings,\n slots: {\n root: NativeCalloutView,\n },\n styles: {\n root: [backgroundColorTokens, borderTokens],\n },\n});\nexport default Callout;\n//# sourceMappingURL=Callout.js.map","import { calloutName } from './Callout.types';\nexport var settings = [\n {\n tokens: {\n backgroundColor: 'bodyStandoutBackground',\n borderColor: 'transparent',\n borderWidth: 0,\n borderRadius: 5,\n directionalHint: 'bottonLeftEdge',\n },\n root: {\n style: {\n position: 'absolute',\n },\n },\n },\n calloutName,\n];\n//# sourceMappingURL=Callout.settings.macos.js.map","export var menuCalloutName = 'MenuCallout';\n//# sourceMappingURL=MenuCallout.types.js.map","import { __assign, __rest } from \"tslib\";\nimport { I18nManager, Image, Pressable, View } from 'react-native';\nimport { compose, memoize, mergeProps, withSlots } from '@fluentui-react-native/framework';\nimport { IconV1 as Icon } from '@fluentui-react-native/icon';\nimport { TextV1 as Text } from '@fluentui-react-native/text';\nimport { SvgXml } from 'react-native-svg';\nimport { stylingSettings } from './MenuItem.styling';\nimport { menuItemName } from './MenuItem.types';\nimport { useMenuItem } from './useMenuItem';\nexport var MenuItem = compose(__assign(__assign({ displayName: menuItemName }, stylingSettings), { slots: {\n root: Pressable,\n checkmark: View,\n content: Text,\n iconPlaceholder: View,\n imgIcon: Image,\n fontOrSvgIcon: Icon,\n submenuIndicator: SvgXml,\n }, useRender: function (userProps, useSlots) {\n var menuItem = useMenuItem(userProps);\n var Slots = useSlots(userProps, function (layer) { return menuItem.state[layer] || userProps[layer]; });\n return function (final, children) {\n var _a = mergeProps(menuItem.props, final), accessibilityLabel = _a.accessibilityLabel, icon = _a.icon, tooltip = _a.tooltip, mergedProps = __rest(_a, [\"accessibilityLabel\", \"icon\", \"tooltip\"]);\n var chevronXml = I18nManager.isRTL\n ? \"\\n \\n \\n \"\n : \"\\n \\n \\n \";\n // We only automatically support the one child string.\n var label = getAccessibilityLabel(accessibilityLabel, children[0]);\n var tooltipResult = getTooltip(tooltip, menuItem.state.hasTooltips, children[0]);\n return (withSlots(Slots.root, __assign({}, mergedProps, { accessibilityLabel: label }),\n menuItem.state.hasCheckmarks && withSlots(Slots.checkmark, { accessible: false }),\n (icon || menuItem.state.hasIcons) && (withSlots(Slots.iconPlaceholder, { accessible: false },\n icon && icon.source && withSlots(Slots.imgIcon, __assign({ accessible: false }, icon)),\n icon && (icon.svgSource || icon.fontSource) && withSlots(Slots.fontOrSvgIcon, __assign({ accessible: false }, icon)))),\n children && (withSlots(Slots.content, __assign({ accessible: false, tooltip: tooltipResult }, (tooltipResult && { alwaysShowToolTip: true })), children)),\n menuItem.state.hasSubmenu && withSlots(Slots.submenuIndicator, { accessible: false, xml: chevronXml })));\n };\n } }));\nvar getAccessibilityLabelWorker = function (accessibilityLabel, child) {\n if (accessibilityLabel !== undefined) {\n return accessibilityLabel;\n }\n if (typeof child === 'string') {\n return child;\n }\n return undefined;\n};\nexport var getAccessibilityLabel = memoize(getAccessibilityLabelWorker);\nvar getTooltipWorker = function (tooltip, hasTooltips, child) {\n if (tooltip !== undefined) {\n return tooltip;\n }\n if (hasTooltips && typeof child === 'string') {\n return child;\n }\n return undefined;\n};\nexport var getTooltip = memoize(getTooltipWorker);\n//# sourceMappingURL=MenuItem.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport { Platform } from 'react-native';\nimport { buildProps } from '@fluentui-react-native/framework';\nimport { borderStyles, fontStyles, layoutStyles } from '@fluentui-react-native/tokens';\nimport { menuItemName } from './MenuItem.types';\nimport { defaultMenuItemTokens } from './MenuItemTokens';\nexport var menuItemStates = ['hovered', 'focused', 'pressed', 'disabled'];\nexport var stylingSettings = {\n tokens: [defaultMenuItemTokens, menuItemName],\n states: menuItemStates,\n slotProps: {\n root: buildProps(function (tokens, theme) { return ({\n style: __assign(__assign({ alignItems: 'center', backgroundColor: tokens.backgroundColor, display: 'flex', flexDirection: 'row' }, layoutStyles.from(tokens, theme)), borderStyles.from(tokens, theme)),\n }); }, __spreadArray(__spreadArray(['backgroundColor'], borderStyles.keys, true), layoutStyles.keys, true)),\n checkmark: buildProps(function (tokens) { return ({\n style: {\n height: tokens.checkmarkSize,\n width: tokens.checkmarkSize,\n marginEnd: Platform.OS === 'android' ? tokens.marginEndForCheckedAndroid : tokens.gap,\n },\n }); }, ['checkmarkSize', 'gap']),\n content: buildProps(function (tokens, theme) {\n return {\n color: tokens.color,\n style: __assign({ flexGrow: 1 }, fontStyles.from(tokens, theme)),\n };\n }, __spreadArray(['color'], fontStyles.keys, true)),\n iconPlaceholder: buildProps(function (tokens) { return ({\n style: {\n minHeight: tokens.iconSize,\n minWidth: tokens.iconSize,\n alignItems: 'center',\n justifyContent: 'center',\n marginEnd: tokens.gap,\n },\n }); }, ['checkmarkSize', 'gap']),\n imgIcon: buildProps(function (tokens) { return ({\n style: { tintColor: tokens.iconColor, height: tokens.iconSize, width: tokens.iconSize },\n }); }, ['gap', 'iconColor', 'iconSize']),\n fontOrSvgIcon: buildProps(function (tokens) { return ({ color: tokens.iconColor, size: tokens.iconSize }); }, ['gap', 'iconColor', 'iconSize']),\n submenuIndicator: buildProps(function (tokens) {\n return {\n color: tokens.submenuIndicatorColor,\n height: tokens.submenuIndicatorSize,\n width: tokens.submenuIndicatorSize,\n viewBox: \"0 0 \".concat(tokens.submenuIndicatorSize, \" \").concat(tokens.submenuIndicatorSize),\n };\n }, ['submenuIndicatorColor', 'submenuIndicatorPadding', 'submenuIndicatorSize']),\n },\n};\n//# sourceMappingURL=MenuItem.styling.js.map","export var menuItemName = 'MenuItem';\n//# sourceMappingURL=MenuItem.types.js.map","import { globalTokens } from '@fluentui-react-native/theme-tokens';\nexport var defaultMenuItemTokens = function (t) { return ({\n backgroundColor: t.colors.transparentBackground,\n borderRadius: 5,\n checkmarkSize: 16,\n color: t.colors.neutralForeground1,\n fontFamily: t.typography.families.primary,\n fontSize: 13,\n fontWeight: globalTokens.font.weight.regular,\n gap: globalTokens.size40,\n iconColor: t.colors.neutralForeground1,\n iconSize: 16,\n paddingHorizontal: 5,\n paddingVertical: 3,\n submenuIndicatorColor: t.colors.neutralForeground1,\n submenuIndicatorPadding: globalTokens.sizeNone,\n submenuIndicatorSize: 16,\n focused: {\n backgroundColor: t.colors.menuItemBackgroundHovered,\n color: t.colors.menuItemTextHovered,\n iconColor: t.colors.menuItemTextHovered,\n submenuIndicatorColor: t.colors.menuItemTextHovered,\n },\n pressed: {\n backgroundColor: t.colors.menuItemBackgroundPressed,\n color: t.colors.menuItemTextHovered,\n iconColor: t.colors.menuItemTextHovered,\n submenuIndicatorColor: t.colors.menuItemTextHovered,\n },\n disabled: {\n backgroundColor: t.colors.menuBackground,\n color: t.colors.disabledText,\n iconColor: t.colors.disabledText,\n submenuIndicatorColor: t.colors.disabledText,\n },\n}); };\n//# sourceMappingURL=MenuItemTokens.macos.js.map","import { __assign, __rest, __spreadArray } from \"tslib\";\nimport * as React from 'react';\nimport { I18nManager, Platform } from 'react-native';\nimport { memoize } from '@fluentui-react-native/framework';\nimport { isKeyPressEvent, usePressableState, useKeyDownProps, useViewCommandFocus } from '@fluentui-react-native/interactive-hooks';\nimport { useMenuContext } from '../context/menuContext';\nimport { useMenuListContext } from '../context/menuListContext';\nimport { useMenuTriggerContext } from '../context/menuTriggerContext';\nimport { useMenuItemTracking } from '../MenuList/useMenuList';\nexport var triggerKeys = [' ', 'Enter'];\nexport var submenuTriggerKeys = __spreadArray(['ArrowLeft', 'ArrowRight'], triggerKeys, true);\nexport var useMenuItem = function (props) {\n // attach the pressable state handlers\n var defaultComponentRef = React.useRef(null);\n var accessible = props.accessible, onClick = props.onClick, accessibilityState = props.accessibilityState, _a = props.componentRef, componentRef = _a === void 0 ? defaultComponentRef : _a, _b = props.disabled, disabled = _b === void 0 ? false : _b, persistOnClick = props.persistOnClick, rest = __rest(props, [\"accessible\", \"onClick\", \"accessibilityState\", \"componentRef\", \"disabled\", \"persistOnClick\"]);\n var _c = useMenuContext(), isSubmenu = _c.isSubmenu, persistOnItemClick = _c.persistOnItemClick, setOpen = _c.setOpen;\n var _d = useMenuListContext(), hasCheckmarks = _d.hasCheckmarks, hasIcons = _d.hasIcons, hasTooltips = _d.hasTooltips, onArrowClose = _d.onArrowClose;\n var isTrigger = useMenuTriggerContext();\n var shouldPersist = persistOnClick !== null && persistOnClick !== void 0 ? persistOnClick : persistOnItemClick;\n var hasSubmenu = isSubmenu && isTrigger;\n var onInvoke = React.useCallback(function (e) {\n var _a;\n var isRtl = I18nManager.isRTL;\n var isArrowKey = isKeyPressEvent(e) && (e.nativeEvent.key === 'ArrowLeft' || e.nativeEvent.key === 'ArrowRight');\n var isArrowOpen = hasSubmenu &&\n isKeyPressEvent(e) &&\n ((isRtl && e.nativeEvent.key === 'ArrowLeft') || (!isRtl && e.nativeEvent.key === 'ArrowRight'));\n if (!disabled && (!isArrowKey || isArrowOpen)) {\n (_a = componentRef === null || componentRef === void 0 ? void 0 : componentRef.current) === null || _a === void 0 ? void 0 : _a.blur();\n onClick === null || onClick === void 0 ? void 0 : onClick(e);\n }\n if (!hasSubmenu && !isArrowKey && !shouldPersist) {\n setOpen(e, false /*isOpen*/, true /*bubble*/);\n }\n var isArrowClose = isKeyPressEvent(e) && ((isRtl && e.nativeEvent.key === 'ArrowRight') || (!isRtl && e.nativeEvent.key === 'ArrowLeft'));\n if (isArrowClose) {\n onArrowClose === null || onArrowClose === void 0 ? void 0 : onArrowClose(e);\n }\n }, [componentRef, disabled, hasSubmenu, onArrowClose, onClick, setOpen, shouldPersist]);\n var pressable = usePressableState(__assign(__assign({}, rest), { onPress: onInvoke }));\n var itemRef = useViewCommandFocus(componentRef);\n var keys = disabled ? [] : isSubmenu ? submenuTriggerKeys : triggerKeys;\n // Explicitly override onKeyDown to override the native behavior of moving focus with arrow keys.\n var onKeyDownProps = useKeyDownProps.apply(void 0, __spreadArray([onInvoke], keys, false));\n useHoverFocusEffect(pressable.state.hovered, componentRef);\n var _e = React.useState(!pressable.state.hovered), enableFocusRing = _e[0], setEnableFocusRing = _e[1];\n var onHoverIn = React.useCallback(function (e) {\n pressable.props.onHoverIn(e);\n // when it's a hover focus, set enableFocusRing explicitly to false\n if (!pressable.state.focused) {\n setEnableFocusRing(false);\n }\n }, [pressable]);\n var onFocus = React.useCallback(function (e) {\n pressable.props.onFocus(e);\n // when it's not a hover focus, set enableFocusRing explicitly to true\n if (!pressable.state.focused) {\n setEnableFocusRing(true);\n }\n }, [pressable]);\n // Track the ref and disabled props on this menu item so the MenuList can handle Home and End keypresses.\n useMenuItemTracking(componentRef, disabled);\n return {\n props: __assign(__assign(__assign({}, pressable.props), { onHoverIn: Platform.select({\n macos: pressable.props.onHoverIn,\n default: onHoverIn, // win32\n }), onFocus: Platform.select({\n macos: pressable.props.onFocus,\n default: onFocus, // win32\n }), accessible: accessible !== null && accessible !== void 0 ? accessible : true, accessibilityRole: 'menuitem', onAccessibilityTap: props.onAccessibilityTap || onInvoke, accessibilityState: getAccessibilityState(disabled, accessibilityState), disabled: disabled, enableFocusRing: Platform.select({\n macos: false,\n default: enableFocusRing, // win32\n }), focusable: Platform.select({\n macos: !disabled,\n default: true, // win32\n }), ref: itemRef }), onKeyDownProps),\n state: __assign(__assign({}, pressable.state), { hasSubmenu: hasSubmenu, hasIcons: hasIcons, hasCheckmarks: hasCheckmarks, hasTooltips: hasTooltips }),\n };\n};\nvar getAccessibilityState = memoize(getAccessibilityStateWorker);\nfunction getAccessibilityStateWorker(disabled, accessibilityState) {\n if (accessibilityState) {\n return __assign({ disabled: disabled }, accessibilityState);\n }\n return { disabled: disabled };\n}\nexport var useHoverFocusEffect = function (hovered, componentRef) {\n React.useLayoutEffect(function () {\n var _a, _b;\n if (hovered) {\n (_a = componentRef === null || componentRef === void 0 ? void 0 : componentRef.current) === null || _a === void 0 ? void 0 : _a.focus();\n }\n else {\n (_b = componentRef === null || componentRef === void 0 ? void 0 : componentRef.current) === null || _b === void 0 ? void 0 : _b.blur();\n }\n }, [hovered, componentRef]);\n};\n//# sourceMappingURL=useMenuItem.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport { Platform } from 'react-native';\nimport { useMenuContext } from '../context/menuContext';\nimport { useMenuListContext } from '../context/menuListContext';\n// Track the radio items so we know what to clear selection from when selectRadio is called\n// Purposefully left out of the hook because\n// 1. RadioItems just keeps track of information - changing this array doesn't need to force rerender\n// 2. Keeping them here means these consts are not recreated on every render, which would force rerendering of all children\nvar radioItems = [];\nvar addRadioItem = function (name) {\n radioItems.push(name);\n};\nvar removeRadioItem = function (name) {\n radioItems.filter(function (item) { return item !== name; });\n};\nvar platformsWithoutFocusOnDisabled = ['ios', 'macos'];\nvar handledKeys = ['Home', 'End'];\nvar handleFocusOnMouseLevae = Platform.OS === 'macos';\nexport var useMenuList = function (_props) {\n var _a, _b;\n var context = useMenuContext();\n // MenuList v2 needs to be able to be standalone, but this is not in scope for v1\n // Assuming that checked information will come from parent Menu\n var defaultChecked = context.defaultChecked, onCheckedChangeOriginal = context.onCheckedChange, checkedOriginal = context.checked, isSubmenu = context.isSubmenu, setOpen = context.setOpen, triggerRef = context.triggerRef;\n // Convert passed in array to map so that i's easier to look up checked state\n var checkedMap = React.useMemo(function () {\n var state = {};\n if (!checkedOriginal) {\n return state;\n }\n for (var _i = 0, checkedOriginal_1 = checkedOriginal; _i < checkedOriginal_1.length; _i++) {\n var key = checkedOriginal_1[_i];\n state[key] = true;\n }\n return state;\n }, [checkedOriginal]);\n var _c = React.useState(function () {\n if (checkedMap) {\n return checkedMap;\n }\n var initialChecked = defaultChecked !== null && defaultChecked !== void 0 ? defaultChecked : [];\n var state = {};\n for (var _i = 0, initialChecked_1 = initialChecked; _i < initialChecked_1.length; _i++) {\n var key = initialChecked_1[_i];\n state[key] = true;\n }\n return state;\n }), checkedInternal = _c[0], setCheckedInternal = _c[1];\n var isCheckedControlled = typeof checkedOriginal !== 'undefined';\n var checked = isCheckedControlled ? checkedMap : checkedInternal;\n var onCheckedChange = React.useCallback(function (e, name, isChecked) {\n var updatedChecked = __assign({}, checked);\n if (isChecked) {\n updatedChecked[name] = true;\n }\n else {\n delete updatedChecked[name];\n }\n if (!isCheckedControlled) {\n setCheckedInternal(updatedChecked);\n }\n if (onCheckedChangeOriginal) {\n onCheckedChangeOriginal(e, Object.keys(updatedChecked));\n }\n }, [isCheckedControlled, checked, onCheckedChangeOriginal, setCheckedInternal]);\n var selectRadio = React.useCallback(function (e, name) {\n var updatedChecked = {};\n for (var _i = 0, _a = Object.keys(checked); _i < _a.length; _i++) {\n var checkedName = _a[_i];\n if (!radioItems.includes(checkedName)) {\n // Preserve checked state if non-radio items\n updatedChecked[checkedName] = checked[checkedName];\n }\n }\n updatedChecked[name] = true;\n if (!isCheckedControlled) {\n setCheckedInternal(updatedChecked);\n }\n if (onCheckedChangeOriginal) {\n onCheckedChangeOriginal(e, Object.keys(updatedChecked));\n }\n }, [isCheckedControlled, onCheckedChangeOriginal, setCheckedInternal, checked]);\n // The close arrow key must be handled at this level so that close arrow is responsive when arrowing\n // on a submenu trigger inside a submenu. Otherwise the arrowing event gets \"swallowed up\" by the trigger,\n // because it is considered to be inside the submenu due to the Menu component wrapping both the\n // trigger and popover. Listening to key events directly here to handle this case doesn't work\n // since left and right arrow key events are already handled and swallowed by native behavior\n var onArrowClose = React.useCallback(function (e) {\n var _a;\n if (!isSubmenu) {\n return;\n }\n setOpen(e, false /* isOpen */, false /* bubble */);\n (_a = triggerRef === null || triggerRef === void 0 ? void 0 : triggerRef.current) === null || _a === void 0 ? void 0 : _a.focus();\n }, [isSubmenu, setOpen, triggerRef]);\n // Handle 'Home' and 'End' keypresses here. Native menus allow 'Home' and 'End' keypresses to jump to the\n // start and end of each menu list. We need to keep track of all MenuItems in our list, and we need access to\n // (1) the item's ref to focus on and (2) whether the item is disabled or not as different platforms allow\n // and don't allow focus for disabled items.\n // Instead of calling useState to instantiate an array, we call useMemo because we don't want to re-render the\n // MenuList on adding / removing items.\n var trackedMenuItems = React.useMemo(function () { return []; }, []);\n var trackMenuItem = React.useCallback(function (item) { return trackedMenuItems.push(item); }, [trackedMenuItems]);\n var untrackMenuItem = React.useCallback(function (item) {\n return trackedMenuItems.splice(trackedMenuItems.findIndex(function (x) { return x.ref === item.ref; }), 1);\n }, [trackedMenuItems]);\n var onListKeyDown = function (e) {\n var _a;\n var key = e.nativeEvent.key;\n if (handledKeys.includes(key)) {\n // For iOS and macOS, 'Home' and 'End' must set focus on the first and last enabled item.\n // For other platforms, we can just jump to the first and last keys.\n var increment = void 0, idx = void 0;\n if (key === 'Home') {\n increment = 1;\n idx = 0;\n }\n else if (key === 'End') {\n increment = -1;\n idx = trackedMenuItems.length - 1;\n }\n while (platformsWithoutFocusOnDisabled.includes(Platform.OS) && trackedMenuItems[idx].disabled) {\n idx += increment;\n }\n (_a = trackedMenuItems[idx].ref.current) === null || _a === void 0 ? void 0 : _a.focus();\n }\n };\n React.useEffect(function () {\n return function cleanup() {\n clearTimeout(context.triggerHoverOutTimer);\n };\n });\n // focus management\n var focusZoneRef = React.useRef();\n var setFocusZoneFocus = function () {\n var _a;\n (_a = focusZoneRef === null || focusZoneRef === void 0 ? void 0 : focusZoneRef.current) === null || _a === void 0 ? void 0 : _a.focus();\n };\n React.useEffect(function () {\n setFocusZoneFocus();\n }, []);\n return {\n props: __assign(__assign({}, context), { onMouseLeave: handleFocusOnMouseLevae ? setFocusZoneFocus : context.onMouseLeave, onKeyDown: onListKeyDown }),\n isCheckedControlled: isCheckedControlled,\n checked: checked,\n onArrowClose: onArrowClose,\n onCheckedChange: onCheckedChange,\n selectRadio: selectRadio,\n addRadioItem: addRadioItem,\n removeRadioItem: removeRadioItem,\n trackMenuItem: trackMenuItem,\n untrackMenuItem: untrackMenuItem,\n hasMaxHeight: (_a = context.hasMaxHeight) !== null && _a !== void 0 ? _a : false,\n hasMaxWidth: (_b = context.hasMaxWidth) !== null && _b !== void 0 ? _b : false,\n focusZoneRef: focusZoneRef,\n };\n};\n// Hook called in individual MenuItems to keep track of their refs - this is for \"Home\" and \"End\" functionality.\nexport var useMenuItemTracking = function (ref, disabled) {\n var _a = useMenuListContext(), trackMenuItem = _a.trackMenuItem, untrackMenuItem = _a.untrackMenuItem;\n var item = React.useMemo(function () { return ({\n ref: ref,\n disabled: disabled,\n }); }, [ref, disabled]);\n // We only want to call this once - when the item initially renders.\n React.useEffect(function () {\n trackMenuItem(item);\n return function () { return untrackMenuItem(item); };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n};\n//# sourceMappingURL=useMenuList.js.map","import { __assign, __rest } from \"tslib\";\n/** @jsxRuntime classic */\n/** @jsx withSlots */\nimport React from 'react';\nimport { Platform, ScrollView, View } from 'react-native';\nimport { FocusZone } from '@fluentui-react-native/focus-zone';\nimport { compose, mergeProps, stagedComponent, withSlots } from '@fluentui-react-native/framework';\nimport { stylingSettings } from './MenuList.styling';\nimport { menuListName } from './MenuList.types';\nimport { useMenuList } from './useMenuList';\nimport { useMenuListContextValue } from './useMenuListContextValue';\nimport { MenuListProvider } from '../context/menuListContext';\nvar MenuStack = stagedComponent(function (props) {\n var gap = props.gap, rest = __rest(props, [\"gap\"]);\n return function (final, children) {\n if (gap && gap > 0 && children) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore - GH:1684, fix typing error\n children = React.Children.map(children, function (child, index) {\n if (React.isValidElement(child) && index > 0) {\n return React.cloneElement(child, mergeProps(child.props, { style: { marginTop: gap } }));\n }\n return child;\n });\n }\n return withSlots(View, __assign({}, mergeProps(rest, final)), children);\n };\n});\nMenuStack.displayName = 'MenuStack';\nvar shouldHaveFocusZone = ['macos', 'win32'].includes(Platform.OS);\nvar focusLandsOnContainer = Platform.OS === 'macos';\nvar hasCircularNavigation = Platform.OS === 'win32';\nvar hasTabNavigation = Platform.OS === 'win32';\nexport var menuListLookup = function (layer, state, userProps) {\n return state[layer] || userProps[layer] || layer === 'hasMaxHeight';\n};\nexport var MenuList = compose(__assign(__assign({ displayName: menuListName }, stylingSettings), { slots: {\n root: MenuStack,\n scrollView: ScrollView,\n focusZone: shouldHaveFocusZone ? FocusZone : React.Fragment,\n }, useRender: function (userProps, useSlots) {\n var menuList = useMenuList(userProps);\n var menuListContextValue = useMenuListContextValue(menuList);\n var Slots = useSlots(menuList.props, function (layer) { return menuListLookup(layer, menuList, userProps); });\n return function (_final, children) {\n var itemCount = React.Children.toArray(children).filter(function (child) { return React.isValidElement(child) && child.type.displayName !== 'MenuDivider'; }).length;\n var itemPosition = 0;\n var childrenWithSet = React.Children.toArray(children).map(function (child) {\n var _a, _b;\n if (React.isValidElement(child)) {\n if (child.type.displayName !== 'MenuDivider') {\n itemPosition++;\n }\n return React.cloneElement(child, __assign({ accessibilityPositionInSet: (_a = child.props.accessibilityPositionInSet) !== null && _a !== void 0 ? _a : itemPosition, accessibilitySetSize: (_b = child.props.accessibilitySetSize) !== null && _b !== void 0 ? _b : itemCount }, (child.props.tooltip && { alwaysShowToolTip: true })));\n }\n return child;\n });\n var shouldHaveScrollView = Platform.OS === 'macos' || menuList.hasMaxHeight || menuList.hasMaxWidth;\n var ScrollViewWrapper = shouldHaveScrollView ? Slots.scrollView : React.Fragment;\n var content = (withSlots(Slots.root, null,\n withSlots(ScrollViewWrapper\n // avoid error that fires when props are passed into React.fragment\n , __assign({}, (shouldHaveScrollView && {\n showsVerticalScrollIndicator: menuList.hasMaxHeight,\n showsHorizontalScrollIndicator: menuList.hasMaxWidth,\n })),\n withSlots(Slots.focusZone\n // avoid error that fires when props are passed into React.fragment\n , __assign({}, (shouldHaveFocusZone && {\n componentRef: focusLandsOnContainer && menuList.focusZoneRef,\n focusZoneDirection: 'vertical',\n defaultTabbableElement: focusLandsOnContainer && menuList.focusZoneRef,\n enableFocusRing: false,\n isCircularNavigation: hasCircularNavigation,\n tabKeyNavigation: hasTabNavigation ? 'Normal' : 'None',\n })), childrenWithSet))));\n return withSlots(MenuListProvider, { value: menuListContextValue }, content);\n };\n } }));\n//# sourceMappingURL=MenuList.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport { Platform } from 'react-native';\nimport { buildProps } from '@fluentui-react-native/framework';\nimport { layoutStyles } from '@fluentui-react-native/tokens';\nimport { menuListName } from './MenuList.types';\nimport { defaultMenuListTokens } from './MenuListTokens';\nexport var menuListStates = ['hasMaxHeight'];\nexport var stylingSettings = {\n tokens: [defaultMenuListTokens, menuListName],\n states: menuListStates,\n slotProps: {\n root: buildProps(function (tokens, theme) { return ({\n style: __assign(__assign({ backgroundColor: tokens.backgroundColor, display: 'flex' }, layoutStyles.from(tokens, theme)), (Platform.OS === 'android' && { borderRadius: tokens.borderRadius })),\n gap: tokens.gap,\n }); }, __spreadArray(['backgroundColor', 'gap'], layoutStyles.keys, true)),\n },\n};\n//# sourceMappingURL=MenuList.styling.js.map","export var menuListName = 'MenuList';\n//# sourceMappingURL=MenuList.types.js.map","import { globalTokens } from '@fluentui-react-native/theme-tokens';\nexport var defaultMenuListTokens = function (t) { return ({\n padding: 5,\n backgroundColor: t.colors.transparentBackground,\n gap: globalTokens.size20,\n}); };\n//# sourceMappingURL=MenuListTokens.macos.js.map","import { __assign } from \"tslib\";\nexport var useMenuListContextValue = function (state) {\n return __assign({ hasCheckmarks: state.props.hasCheckmarks, hasIcons: state.props.hasIcons, hasTooltips: state.props.hasTooltips }, state);\n};\n//# sourceMappingURL=useMenuListContextValue.js.map","import React from \"react\";\n\nimport { Svg, Path } from \"react-native-svg\";\nimport type { SvgProps } from \"react-native-svg\";\n\nconst ChevronDown16Regular = (props: SvgProps) => {\n return (\n \n \n \n );\n};\nconst ChevronDown16Icon = (props: SvgProps) => (\n \n);\nexport const chevronDown16SvgProps = {\n svgSource: {\n src: ChevronDown16Icon,\n },\n};\n","import React from \"react\";\n\nimport { Svg, Path } from \"react-native-svg\";\nimport type { SvgProps } from \"react-native-svg\";\n\nconst Settings16Regular = (props: SvgProps) => {\n return (\n \n \n \n );\n};\nconst SettingsIcon = (props: SvgProps) => (\n \n);\nexport const settingsIconSvgProps = {\n svgSource: {\n src: SettingsIcon,\n },\n};\n","import React, { useEffect, useMemo, useState } from \"react\";\nimport { FlatList, Text, TextInput, View } from \"react-native\";\nimport { ButtonV1 as Button } from \"@fluentui-react-native/button\";\nimport { Icon } from \"@fluentui-react-native/icon\";\nimport debounce from \"lodash/debounce\";\n\nimport { addIconSvgProps } from \"../Icons/AddIcon\";\nimport { arrowUpSvgProps } from \"../Icons/ArrowUpIcon\";\nimport { arrowDownSvgProps } from \"../Icons/ArrowDownIcon\";\nimport { chevronDown12SvgProps } from \"../Icons/ChevronDown12Icon\";\nimport { deleteSvgProps } from \"../Icons/DeleteIcon\";\n\nimport type { IItemDisplayData } from \"../../index.types\";\nimport { ControlType } from \"@ms/office-excel-incellcontrol\";\nimport type { IControlData } from \"@ms/office-excel-incellcontrol\";\nimport useDropdownValuesListStyles from \"./DropdownValuesListStyles\";\nimport Pill from \"../Shared/Pill\";\n\nconst strings = require(\"../../../assets/strings.resjson\");\n\nexport interface IDropdownValuesListProps {\n items: IItemDisplayData[];\n onUpdateControl(controlData: IControlData): Promise;\n}\n\nexport function DropdownValuesList(props: IDropdownValuesListProps) {\n type ItemData = {\n id: number;\n text: string;\n // We will need to add color in the future once the color picker is implemented\n };\n\n const [itemList, setItemList] = useState([]);\n const [idCounter, setIdCounter] = useState(1);\n const dropdownValuesListStyles = useDropdownValuesListStyles();\n // Debouncing delay before making a PUT call in milliseconds\n const debouncedDelayTimer = 500;\n // Hard-coded colors - these are placeholders for the future custom color the user will select from the color picker\n const pillFillColor = 16047584;\n const pillTextColor = 9833240;\n\n const { items, onUpdateControl } = props;\n\n useEffect(() => {\n const convertToItemData = (\n itemDisplayData: IItemDisplayData,\n index: number\n ): ItemData => {\n return {\n id: index + 1,\n text: itemDisplayData.displayText,\n };\n };\n const convertedItems = items.map(convertToItemData);\n setItemList(convertedItems);\n setIdCounter(convertedItems.length + 1);\n }, [items]);\n\n const debouncedHandleUpdateControl = useMemo(() => {\n return debounce((updatedItems: ItemData[]) => {\n const controlData: IControlData = {\n type: ControlType.dropdown as string,\n properties: {\n listItems: updatedItems.map((item) => ({\n itemValue: item.text,\n })),\n },\n };\n onUpdateControl(controlData);\n }, debouncedDelayTimer);\n }, [onUpdateControl]);\n\n // Cancel any lingering calls on unmount\n useEffect(() => {\n return () => {\n debouncedHandleUpdateControl.cancel();\n };\n }, [debouncedHandleUpdateControl]);\n\n // Send PUT control API and update ItemList\n const handleUpdateControl = (updatedItems: ItemData[]) => {\n setItemList(updatedItems);\n debouncedHandleUpdateControl(updatedItems);\n };\n\n // Add a new item to the list\n const handleAddItem = () => {\n const newItem = { id: idCounter, text: \"\" };\n const updatedItems = [...itemList, newItem];\n setIdCounter(idCounter + 1); // Increment the ID counter\n handleUpdateControl(updatedItems);\n };\n\n // Update an item's text from the list\n const handleUpdateText = (id: number, text: string) => {\n let hasItemChanged = false;\n const updatedItems = itemList.map((item) => {\n if (item.id === id && item.text !== text) {\n hasItemChanged = true;\n return { ...item, text };\n }\n return item;\n });\n if (hasItemChanged) {\n handleUpdateControl(updatedItems);\n }\n };\n\n // Delete an item from the list\n const handleDeleteItem = (id: number) => {\n const updatedItems = itemList.filter((item) => item.id !== id);\n handleUpdateControl(updatedItems);\n };\n\n // Base function for moving an item in the itemList\n const moveItem = (fromIndex: number, toIndex: number) => {\n if (\n toIndex < 0 ||\n fromIndex < 0 ||\n toIndex >= itemList.length ||\n fromIndex >= itemList.length ||\n fromIndex === toIndex\n )\n return;\n\n const updatedItems = [...itemList];\n const [movedItem] = updatedItems.splice(fromIndex, 1);\n updatedItems.splice(toIndex, 0, movedItem);\n handleUpdateControl(updatedItems);\n };\n\n const moveItemUp = (index: number) => moveItem(index, index - 1);\n const moveItemDown = (index: number) => moveItem(index, index + 1);\n\n function isFirstItem(index: number): boolean {\n return index === 0 || itemList.length === 1;\n }\n\n function isLastItem(index: number): boolean {\n return index === itemList.length - 1 || itemList.length === 1;\n }\n\n const renderItem = ({ item, index }: { item: ItemData; index: number }) => {\n return (\n \n \n \n \n \n \n handleUpdateText(item.id, text)}\n value={item.text}\n />\n \n moveItemUp(index)}\n style={[\n {\n marginLeft: 5,\n marginRight: 2,\n opacity: isFirstItem(index) ? 0.5 : 1,\n }, // Dynamic style\n dropdownValuesListStyles.itemListButton, // Static style\n ]}\n iconOnly={true}\n >\n \n \n moveItemDown(index)}\n style={[\n { opacity: isLastItem(index) ? 0.5 : 1 }, // Dynamic style\n dropdownValuesListStyles.itemListButton, // Static style\n ]}\n iconOnly={true}\n >\n \n \n handleDeleteItem(item.id)}\n style={[\n {\n marginLeft: 5,\n }, // Dynamic style\n dropdownValuesListStyles.itemListButton, // Static style\n ]}\n iconOnly={true}\n >\n \n \n \n );\n };\n\n return (\n \n \n \n \n \n \n {strings.getString(\"DropdownValuesListAddItem\")}\n \n \n \n \n );\n}\n","import React from \"react\";\n\nimport { Svg, Path } from \"react-native-svg\";\nimport type { SvgProps } from \"react-native-svg\";\n\nconst Add16Regular = (props: SvgProps) => {\n return (\n \n \n \n );\n};\nconst AddIcon = (props: SvgProps) => ;\nexport const addIconSvgProps = {\n svgSource: {\n src: AddIcon,\n },\n};\n","import React from \"react\";\n\nimport { Svg, Path } from \"react-native-svg\";\nimport type { SvgProps } from \"react-native-svg\";\n\nconst ArrowUp12Regular = (props: SvgProps) => {\n return (\n \n \n \n );\n};\nconst ArrowUpIcon = (props: SvgProps) => (\n \n);\nexport const arrowUpSvgProps = {\n svgSource: {\n src: ArrowUpIcon,\n },\n};\n","import React from \"react\";\n\nimport { Svg, Path } from \"react-native-svg\";\nimport type { SvgProps } from \"react-native-svg\";\n\nconst ArrowDown12Regular = (props: SvgProps) => {\n return (\n \n \n \n );\n};\nconst ArrowDownIcon = (props: SvgProps) => (\n \n);\nexport const arrowDownSvgProps = {\n svgSource: {\n src: ArrowDownIcon,\n },\n};\n","import React from \"react\";\n\nimport { Svg, Path } from \"react-native-svg\";\nimport type { SvgProps } from \"react-native-svg\";\n\nconst ChevronDown12Regular = (props: SvgProps) => {\n return (\n \n \n \n );\n};\nconst ChevronDown12Icon = (props: SvgProps) => (\n \n);\nexport const chevronDown12SvgProps = {\n svgSource: {\n src: ChevronDown12Icon,\n },\n};\n","import React from \"react\";\n\nimport { Svg, Path } from \"react-native-svg\";\nimport type { SvgProps } from \"react-native-svg\";\n\nconst Delete16Regular = (props: SvgProps) => {\n return (\n \n \n \n );\n};\nconst DeleteIcon = (props: SvgProps) => ;\nexport const deleteSvgProps = {\n svgSource: {\n src: DeleteIcon,\n },\n};\n","import { StyleSheet } from \"react-native\";\nimport { useTheme } from \"@fluentui-react-native/theme-types\";\n\nconst useDropdownValuesListStyles = () => {\n const theme = useTheme();\n return StyleSheet.create({\n colorPickerButton: {\n width: \"15%\",\n borderRadius: 5,\n marginRight: 4,\n paddingVertical: 4,\n flexDirection: \"row\",\n alignItems: \"center\", // Centers items horizontally\n justifyContent: \"center\", // Centers items vertically\n },\n dropdownValuesListView: {\n marginVertical: 2,\n alignItems: \"center\", // Ensure vertical alignment\n flexDirection: \"row\",\n justifyContent: \"space-between\",\n },\n itemListButton: {\n width: \"10%\",\n aspectRatio: 1,\n borderRadius: 5,\n padding: 2,\n alignItems: \"center\", // Centers items horizontally\n justifyContent: \"center\", // Centers items vertically\n },\n itemTextInputView: {\n backgroundColor: theme.colors.inputBackground,\n borderColor: theme.colors.inputBorder,\n borderWidth: 1,\n borderRadius: 3,\n paddingLeft: 5,\n paddingVertical: 3,\n flexGrow: 1, // Allow the TextInput to take up the available space\n justifyContent: \"center\", // Centers items vertically\n },\n itemTextInput: {\n fontSize: 15,\n },\n addItemButton: {\n width: 90,\n height: 25,\n left: \"13%\",\n borderRadius: 5,\n marginHorizontal: 10,\n padding: 2,\n alignItems: \"center\", // Centers items horizontally\n flexDirection: \"row\",\n justifyContent: \"center\", // Centers items vertically\n },\n addItemText: {\n fontSize: 12,\n marginLeft: 5,\n },\n addItemContainer: {\n marginTop: 5,\n flexDirection: \"row\",\n },\n });\n};\n\nexport default useDropdownValuesListStyles;\n","import React from \"react\";\nimport { View, Text, Image } from \"react-native\";\nimport { numberToHex } from \"../../Helpers\";\n// TODO: Need to figure out build errors and add the logic for tooltip\n// import {\n// Tooltip,\n// } from '@fluentui/react-components';\n\n// Styles\nimport PillStyles from \"./Pill.styles\";\n\n// Types\nimport type { IPillProps } from \"./Pill.types\";\nimport {\n DEFAULT_FILL_COLOR,\n DEFAULT_TEXT_COLOR,\n DEFAULT_OUTLINE_COLOR,\n} from \"./PillDefaults\";\n\nconst numberToHexColor = (\n color: number | null | undefined,\n defaultColor: string\n): string => {\n if (color === null || color === undefined) {\n return defaultColor;\n }\n const hex = color.toString(16);\n return numberToHex(hex);\n};\n\nconst Pill: React.FC = ({\n text,\n icon,\n fillColor,\n textColor,\n outlineColor,\n fontSize,\n isRound,\n}) => {\n const appliedFillColor = numberToHexColor(fillColor, DEFAULT_FILL_COLOR);\n const appliedTextColor = numberToHexColor(textColor, DEFAULT_TEXT_COLOR);\n const appliedOutlineColor = outlineColor\n ? numberToHexColor(outlineColor, DEFAULT_OUTLINE_COLOR)\n : DEFAULT_OUTLINE_COLOR;\n\n return (\n \n {icon ? (\n // Render the image only if icon is a valid string\n \n ) : (\n // If no icon, show a small spacer or nothing\n \n )}\n \n {text}\n \n \n );\n};\n\nexport default Pill;\n","export function numberToHex(hexNumber: string): string {\n return `#${\"0\".repeat(6 - hexNumber.length)}${hexNumber}`;\n}\n","import { StyleSheet } from \"react-native\";\n\nconst PillStyles = StyleSheet.create({\n pill: {\n flexDirection: \"row\",\n alignItems: \"center\",\n paddingVertical: 2,\n paddingHorizontal: 10,\n borderRadius: 20,\n alignSelf: \"flex-start\",\n maxWidth: \"100%\",\n },\n roundPill: {\n width: 20,\n aspectRatio: 1,\n flexDirection: \"row\",\n borderRadius: 10,\n },\n text: {\n color: \"#fff\",\n fontWeight: \"bold\",\n },\n fakeIconSpace: {\n width: 2,\n height: 18,\n marginRight: 3,\n },\n icon: {\n width: 18,\n height: 18,\n marginRight: 2,\n },\n});\n\nexport default PillStyles;\n","export const DEFAULT_FILL_COLOR = \"#f0f0f0\";\nexport const DEFAULT_TEXT_COLOR = \"#000000\";\nexport const DEFAULT_OUTLINE_COLOR = \"transparent\";\n","import { StyleSheet } from \"react-native\";\n\nconst useControlSectionStyles = () => {\n return StyleSheet.create({\n controlView: {\n paddingLeft: 10,\n paddingTop: 15,\n },\n selectedControlMenu: {\n width: \"98%\", // Allow the View to take up the available space\n marginBottom: 10,\n marginRight: 5,\n fontSize: 12,\n borderWidth: 1,\n alignSelf: \"center\",\n flexDirection: \"row\",\n justifyContent: \"space-between\",\n },\n selectedControlText: {\n fontSize: 14,\n },\n selectedControlPopoverMenu: {\n width: \"95%\",\n },\n selectedItemModeButton: {\n width: \"15%\",\n height: \"95%\",\n borderWidth: 1,\n borderRadius: 5,\n marginHorizontal: 5,\n padding: 3,\n alignItems: \"center\", // Centers items horizontally\n flexDirection: \"row\",\n justifyContent: \"center\", // Centers items vertically\n },\n itemsHeaderView: {\n marginBottom: 5,\n marginVertical: 5,\n alignItems: \"center\", // Ensure vertical alignment\n flexDirection: \"row\",\n justifyContent: \"space-between\",\n },\n menuWrapper: {\n marginTop: 5,\n flexDirection: \"row\",\n justifyContent: \"center\",\n },\n });\n};\n\nexport default useControlSectionStyles;\n","import React from \"react\";\nimport { TextInput, View } from \"react-native\";\nimport { CheckboxV1 as Checkbox } from \"@fluentui-react-native/checkbox\";\nimport { Text } from \"@fluentui-react-native/text\";\n\nimport { useSharedStyles } from \"../../styles/SharedStyles\";\nimport useValidationSectionStyles from \"./ValidationSectionStyles\";\n\nconst strings = require(\"../../../assets/strings.resjson\");\n\nexport const ValidationSection: React.FunctionComponent = () => {\n const sharedStyles = useSharedStyles();\n const validationSectionStyles = useValidationSectionStyles();\n\n return (\n \n \n \n \n {strings.getString(\"ValidationSectionShowTooltipCheckboxLabel\")}\n \n \n \n \n {strings.getString(\"ValidationSectionTitleHeader\")}\n \n \n \n \n \n {strings.getString(\"ValidationSectionDescriptionHeader\")}\n \n \n \n \n \n \n \n \n {strings.getString(\n \"ValidationSectionPreventInvalidEntryCheckboxLabel\"\n )}\n \n \n \n \n \n \n {strings.getString(\"ValidationSectionIgnoreBlankCheckboxLabel\")}\n \n \n \n \n {strings.getString(\"ValidationSectionInvalidEntryTitleHeader\")}\n \n \n \n \n \n {strings.getString(\n \"ValidationSectionInvalidEntryDescriptionTitleHeader\"\n )}\n \n \n \n \n \n \n \n );\n};\n","export var checkboxName = 'Checkbox';\n//# sourceMappingURL=Checkbox.types.js.map","/** @jsxRuntime classic */\n/** @jsx withSlots */\nimport { View } from 'react-native';\nimport { compose } from '@fluentui-react-native/framework';\nimport { checkboxName } from './Checkbox.types';\nexport var Checkbox = compose({\n displayName: checkboxName,\n slots: { root: View },\n useRender: function (_props, _useSlots) {\n console.warn('Use deprecated checkbox or experimental-checkbox for MacOS');\n return function (_rest) {\n return null;\n };\n },\n});\nexport default Checkbox;\n//# sourceMappingURL=Checkbox.macos.js.map","import { StyleSheet } from \"react-native\";\nimport { useTheme } from \"@fluentui-react-native/theme-types\";\n\nconst useValidationSectionStyles = () => {\n const theme = useTheme();\n return StyleSheet.create({\n checkboxContainer: {\n flexDirection: \"row\",\n alignItems: \"center\", // Aligns items vertically in the center\n },\n checkboxText: {\n fontSize: 12,\n },\n descriptionTextInputView: {\n backgroundColor: theme.colors.inputBackground,\n width: \"90%\",\n height: 150,\n fontSize: 15,\n borderWidth: 1,\n borderRadius: 1,\n },\n titleTextInputView: {\n backgroundColor: theme.colors.inputBackground,\n width: \"45%\",\n height: 20,\n fontSize: 15,\n borderWidth: 1,\n borderRadius: 1,\n },\n });\n};\n\nexport default useValidationSectionStyles;\n","import { StyleSheet } from \"react-native\";\n\nexport default StyleSheet.create({\n rootBackgroundContainer: {\n position: \"absolute\",\n start: 0,\n top: 0,\n end: 0,\n bottom: 0,\n },\n\n rootView: {\n position: \"absolute\",\n start: 0,\n top: 0,\n end: 0,\n bottom: 0,\n },\n});\n","import { connect } from \"react-redux\";\nimport * as React from \"react\";\nimport { Provider } from \"react-redux\";\nimport type { IInCellControlHostService } from \"../../hostService\";\nimport { loadDropdownDataAsync } from \"../../store/AppAsyncActions\";\nimport type { IAppState } from \"../../store/AppState\";\nimport type {\n InCellControlDispatch,\n InCellControlStore,\n} from \"../../store/Store\";\nimport { configureStore } from \"../../store/Store\";\nimport DropdownList from \"./DropdownList\";\nimport type {\n IDropdownListDispatchProps,\n IDropdownListProps,\n} from \"./DropdownList.props\";\n\nexport interface IDropdownListAppProps {\n hostService: IInCellControlHostService;\n}\n\nexport const DropdownListApp: React.FC = ({\n hostService,\n}) => {\n const store = configureStore(hostService) as InCellControlStore;\n\n React.useEffect(() => {\n store.dispatch(loadDropdownDataAsync());\n }, [store]);\n\n return (\n \n \n \n );\n};\n\nfunction mapStateToProps(state: IAppState): IDropdownListProps {\n return {\n items: state.controlData.properties?.listItems?.map((item) => ({\n ...item,\n displayText: item.itemValue, // itemValue property in IControlItem maps to displayText\n })),\n };\n}\n\nfunction mapDispatchToProps(\n dispatch: InCellControlDispatch\n): IDropdownListDispatchProps {\n return {\n onRefresh: () => dispatch(loadDropdownDataAsync()), //unused for now\n };\n}\n\nexport const ConnectedDropdownListUI = connect<\n IDropdownListProps,\n IDropdownListDispatchProps,\n Record,\n IAppState\n>(\n mapStateToProps,\n mapDispatchToProps\n)(DropdownList);\n","import React, { useState, useEffect, useCallback } from \"react\";\nimport { View, FlatList } from \"react-native\";\nimport { FocusZone } from \"@fluentui-react-native/focus-zone\";\nimport DropdownListItem from \"./DropdownListItem\";\nimport DropdownListEditButton from \"./DropdownListEditButton\";\nimport { InvokeTaskpane } from \"../../Reka/RekaService\";\n\n// Styles\nimport DropdownListStyle from \"./DropdownList.styles\";\n\n// Types\nimport type { IListItemData } from \"./DropdownList.types\";\nimport { DropdownListFormattingProps } from \"./DropdownList.types\";\n\n// Properties\nimport type { DropdownListProps } from \"./DropdownList.props\";\n\nconst DropdownList: React.FC = (props) => {\n const fontSize = DropdownListFormattingProps.fontSize;\n const minWidth = DropdownListFormattingProps.minWidth;\n const [containerWidth, setContainerWidth] = useState(minWidth);\n const [selectedIndex, setSelectedIndex] = useState(0);\n const [listItems, setListItems] = useState([]);\n\n useEffect(() => {\n // Setting the list items\n const convertedItems: IListItemData[] = (props.items ?? []).map((item) => ({\n ItemValue: item.displayText,\n Icon: null, // Hardcoding since the JSON response does not contain this information\n FillColor: 16047584, // Hardcoding since the JSON response does not contain this information\n TextColor: 16777215, // Hardcoding since the JSON response does not contain this information\n OutlineColor: null, // Hardcoding since the JSON response does not contain this information\n }));\n setListItems(convertedItems);\n\n // Settings the container width\n if (convertedItems.length === 0) {\n // If no data, just use minWidth\n setContainerWidth(minWidth);\n return;\n }\n\n // Tweak these constants to compute container width\n const TEXT_FACTOR = 1;\n const BASE_EXTRA = 5;\n const ICON_EXTRA = 0; // Flexible\n\n const widestItemWidth =\n Math.max(\n ...convertedItems.map((item) => {\n const textLength = item.ItemValue.length * fontSize * TEXT_FACTOR;\n // If there's an icon, add a bit more space:\n const iconPadding = item.Icon ? ICON_EXTRA : 0;\n return textLength + iconPadding;\n })\n ) + BASE_EXTRA;\n\n // Update container width\n setContainerWidth(Math.max(widestItemWidth, minWidth));\n }, [props, fontSize, minWidth]);\n\n // Hard-coded button height as 50\n const buttonHeight = 50;\n\n const handleButtonPress = () => {\n InvokeTaskpane();\n };\n\n const svgIcon =\n '';\n\n // Use a stable callback so we don't recreate it on each render\n const handleItemFocus = useCallback(\n (index: number) => {\n setSelectedIndex(index);\n },\n [setSelectedIndex]\n );\n\n return (\n \n {/*\n Give the scrolling area a maxHeight of (400 - buttonHeight - 10).\n That extra 10 is just a margin so the button has space.\n The button should always be fully visible at the bottom.\n */}\n \n \n (\n handleItemFocus(index)}\n />\n )}\n keyExtractor={(item) => item.ItemValue}\n contentContainerStyle={DropdownListStyle.listContent}\n // Always show vertical scrollbar\n showsVerticalScrollIndicator={true}\n />\n \n \n {/* \n The button remains fully visible at the bottom of the container\n */}\n \n \n \n \n );\n};\n\nexport default DropdownList;\n","import React, { useState } from \"react\";\nimport type { ViewStyle, StyleProp } from \"react-native\";\nimport { ButtonV1 as Button } from \"@fluentui-react-native/button\";\nimport Pill from \"../Shared/Pill\";\nimport DropdownListItemStyles from \"./DropdownListItem.styles\";\nimport type { DropdownListItemProps } from \"./DropdownListItem.types\";\n\nconst alignmentMap: Record<\n NonNullable,\n \"flex-start\" | \"center\" | \"flex-end\"\n> = {\n start: \"flex-start\",\n center: \"center\",\n end: \"flex-end\",\n};\n\nconst DropdownListItem: React.FC = ({\n text,\n icon,\n fillColor,\n textColor,\n outlineColor,\n fontSize,\n isSelected,\n onFocus,\n // optional alignment, default 'start'\n alignment = \"start\",\n}) => {\n // Local states for hover/focus\n const [isHovering, setIsHovering] = useState(false);\n const [isFocused, setIsFocused] = useState(false);\n\n // Called on mouse or keyboard activation\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n const handleClick = () => {};\n\n // Hover in/out using pointer events\n const handlePointerEnter = () => {\n setIsHovering(true);\n };\n\n const handlePointerLeave = () => {\n setIsHovering(false);\n };\n\n // Focus in/out\n const handleFocusIn = () => {\n setIsFocused(true);\n onFocus?.();\n };\n\n const handleFocusOut = () => {\n setIsFocused(false);\n };\n\n const finalStyle: StyleProp = [\n // Full-width base\n DropdownListItemStyles.fullWidthButton,\n\n // Conditionals for hovered/selected backgrounds\n isHovering && DropdownListItemStyles.hoveredItemBackground,\n (isFocused || isSelected) && DropdownListItemStyles.selectedItemBackground,\n\n // Alignment override\n { justifyContent: alignmentMap[alignment] || \"flex-start\" },\n ];\n return (\n \n \n \n );\n};\n\nexport default DropdownListItem;\n","import { StyleSheet } from \"react-native\";\n\nconst DropdownListItemStyles = StyleSheet.create({\n fullWidthButton: {\n width: \"100%\", // Make the entire row the hit area\n // Remove default Fluent background/border\n backgroundColor: \"transparent\",\n borderWidth: 0,\n // If any padding or margin is seen Fluent, can override it:\n margin: 0,\n padding: 0,\n // If the Pill is small, you might do \"alignItems: 'center'\"\n // for vertical alignment or \"flex-start\" if you want it at the top.\n alignItems: \"center\",\n marginVertical: 3,\n },\n itemContainer: {\n // base container style\n flex: 1,\n alignItems: \"stretch\",\n justifyContent: \"center\",\n },\n hoveredItemBackground: {\n backgroundColor: \"#add8e6\", // Light blue hover background\n },\n selectedItemBackground: {\n backgroundColor: \"#D3D3D3\", // Light grey selected background\n },\n});\n\nexport default DropdownListItemStyles;\n","import React from \"react\";\nimport { ButtonV1 as Button } from \"@fluentui-react-native/button\";\nimport { SvgXml } from \"react-native-svg\";\n// Style\nimport DropdownListEditButtonStyle from \"./DropdownListEditButton.styles\";\n\nimport type { IButtonProps } from \"./DropdownListEditButton.types\";\nconst strings = require(\"../../../assets/strings.resjson\");\n\nconst DropdownListEditButton: React.FC = ({\n svgIcon,\n onPress,\n}) => {\n const handlePress = () => {\n onPress();\n };\n return (\n \n \n \n );\n};\n\nexport default DropdownListEditButton;\n","import { StyleSheet } from \"react-native\";\n\nconst DropdownListEditButtonStyle = StyleSheet.create({\n buttonStyle: {\n backgroundColor: \"transparent\", // Remove button background\n borderWidth: 0, // Remove borders\n padding: 0, // Remove padding around the button\n height: 40, // Ensure the button size fits the SVG\n width: 40,\n alignSelf: \"flex-end\", // Align the button to the right\n justifyContent: \"center\",\n alignItems: \"center\",\n },\n icon: {\n alignSelf: \"center\", // Align the icon to the center within the button\n },\n});\n\nexport default DropdownListEditButtonStyle;\n","// ------------------------------------------------------------------------------\r\n// \r\n// This code was generated by the TS2DS compiler.\r\n// Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.\r\n// \r\n// ------------------------------------------------------------------------------\r\n\r\nimport { RekaServiceInfos, RekaServiceRegistry } from '@office-iss/reka';\r\nimport { IInCellControlDataService } from './InCellControlDataService';\r\n\r\nexport const ServiceInfos: RekaServiceInfos = {\r\n IInCellControlDataService: ['InCellControlDataService::IInCellControlDataService', {\r\n invokeTaskpane: ['FireAndForgetMethod', []],\r\n }],\r\n};\r\n\r\nexport const NativeServices = {\r\n IInCellControlDataService: RekaServiceRegistry.getNativeService(ServiceInfos.IInCellControlDataService),\r\n};\r\n\r\nexport type {\r\n IInCellControlDataService\r\n} from './InCellControlDataService';","import { NativeServices } from \"./InCellControlDataService.g\";\n\nexport async function InvokeTaskpane(): Promise {\n NativeServices.IInCellControlDataService.invokeTaskpane();\n}\n","import { StyleSheet } from \"react-native\";\n\nconst DropdownListStyle = StyleSheet.create({\n parentFocusZone: {\n // add style when needed\n },\n container: {\n borderWidth: 1,\n borderColor: \"#ddd\",\n borderRadius: 10,\n padding: 10,\n overflow: \"hidden\",\n },\n listContent: {\n paddingBottom: 10,\n },\n});\n\nexport default DropdownListStyle;\n","export interface IListItemData {\n ItemValue: string;\n Icon?: string | null;\n FillColor: number | null;\n TextColor: number | null;\n OutlineColor: number | null;\n}\n\nexport const DropdownListFormattingProps = {\n fontSize: 11,\n minWidth: 120,\n};\n","import type { ITelemetryActivity } from \"@office-iss/excel_telemetry\";\nimport { TelemetryLogger } from \"@office-iss/excel_telemetry\";\nimport type { TelemetryActivityName } from \"./InCellControlTelemetryConstants\";\n\n/** Simple type-safe facade for logging Telemetry within InCellControl */\nexport class InCellControlTelemetryLogger {\n /**\n * Creates an Activity object for a telemetry event spanning a set of actions over a range of time.\n */\n public static createActivity(\n activityName: TelemetryActivityName\n ): ITelemetryActivity {\n return TelemetryLogger.createActivity(activityName);\n }\n}\n"],"mappings":"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","names":["require_appbundleprelude","__commonJSMin","init_rnx_prelude","init_rnx_prelude","__esmMin","module","exports","OfficePlatformGlobal","React","module","exports","OfficePlatformGlobal","ReactNative","Components","require_objectDestructuringEmpty","__commonJSMin","exports","module","init_rnx_prelude","_objectDestructuringEmpty","t","TypeError","__esModule","require_use_sync_external_store_shim_native_production","__commonJSMin","exports","init_rnx_prelude","React","require","is","x","y","objectIs","Object","useState","useEffect","useLayoutEffect","useDebugValue","useSyncExternalStore$1","subscribe","getSnapshot","value","_useState","inst","forceUpdate","checkIfSnapshotChanged","latestGetSnapshot","nextValue","error","useSyncExternalStore","undefined","require_index_native","__commonJSMin","exports","module","init_rnx_prelude","require","require_with_selector_production","__commonJSMin","exports","init_rnx_prelude","React","require","shim","is","x","y","objectIs","Object","useSyncExternalStore","useRef","useEffect","useMemo","useDebugValue","useSyncExternalStoreWithSelector","subscribe","getSnapshot","getServerSnapshot","selector","isEqual","instRef","current","inst","hasValue","value","memoizedSelector","nextSnapshot","hasMemo","memoizedSnapshot","undefined","currentSelection","memoizedSelection","nextSelection","maybeGetServerSnapshot","require_with_selector","__commonJSMin","exports","module","init_rnx_prelude","require","require_typeof","__commonJSMin","exports","module","init_rnx_prelude","_typeof","o","Symbol","iterator","constructor","prototype","__esModule","require_toPrimitive","__commonJSMin","exports","module","init_rnx_prelude","_typeof","require","toPrimitive","t","r","e","Symbol","undefined","i","call","TypeError","String","Number","__esModule","require_toPropertyKey","__commonJSMin","exports","module","init_rnx_prelude","_typeof","require","toPrimitive","toPropertyKey","t","i","__esModule","require_defineProperty","__commonJSMin","exports","module","init_rnx_prelude","toPropertyKey","require","_defineProperty","e","r","t","Object","defineProperty","value","enumerable","configurable","writable","__esModule","require_arrayWithHoles","__commonJSMin","exports","module","init_rnx_prelude","_arrayWithHoles","r","Array","isArray","__esModule","require_iterableToArrayLimit","__commonJSMin","exports","module","init_rnx_prelude","_iterableToArrayLimit","r","l","t","Symbol","iterator","e","n","i","u","a","f","o","call","next","Object","done","push","value","length","__esModule","require_arrayLikeToArray","__commonJSMin","exports","module","init_rnx_prelude","_arrayLikeToArray","r","a","length","e","n","Array","__esModule","require_unsupportedIterableToArray","__commonJSMin","exports","module","init_rnx_prelude","arrayLikeToArray","require","_unsupportedIterableToArray","r","a","t","toString","call","slice","constructor","name","Array","from","test","undefined","__esModule","require_nonIterableRest","__commonJSMin","exports","module","init_rnx_prelude","_nonIterableRest","TypeError","__esModule","require_slicedToArray","__commonJSMin","exports","module","init_rnx_prelude","arrayWithHoles","require","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","_slicedToArray","r","e","__esModule","require_arrayWithoutHoles","__commonJSMin","exports","module","init_rnx_prelude","arrayLikeToArray","require","_arrayWithoutHoles","r","Array","isArray","__esModule","require_iterableToArray","__commonJSMin","exports","module","init_rnx_prelude","_iterableToArray","r","Symbol","iterator","Array","from","__esModule","require_nonIterableSpread","__commonJSMin","exports","module","init_rnx_prelude","_nonIterableSpread","TypeError","__esModule","require_toConsumableArray","__commonJSMin","exports","module","init_rnx_prelude","arrayWithoutHoles","require","iterableToArray","unsupportedIterableToArray","nonIterableSpread","_toConsumableArray","r","__esModule","require_react_is_production_min","__commonJSMin","exports","init_rnx_prelude","b","Symbol","for","c","d","e","f","g","h","k","l","m","n","p","q","r","t","v","w","x","y","z","a","u","$$typeof","type","A","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Element","ForwardRef","Fragment","Lazy","Memo","Portal","Profiler","StrictMode","Suspense","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isPortal","isProfiler","isStrictMode","isSuspense","isValidElementType","typeOf","require_react_is","__commonJSMin","exports","module","init_rnx_prelude","require","require_hoist_non_react_statics_cjs","__commonJSMin","exports","module","init_rnx_prelude","reactIs","require","REACT_STATICS","childContextTypes","contextType","contextTypes","defaultProps","displayName","getDefaultProps","getDerivedStateFromError","getDerivedStateFromProps","mixins","propTypes","type","KNOWN_STATICS","name","length","prototype","caller","callee","arguments","arity","FORWARD_REF_STATICS","render","MEMO_STATICS","compare","TYPE_STATICS","ForwardRef","Memo","getStatics","component","isMemo","defineProperty","Object","getOwnPropertyNames","getOwnPropertySymbols","getOwnPropertyDescriptor","getPrototypeOf","objectPrototype","hoistNonReactStatics","targetComponent","sourceComponent","blacklist","inheritedComponent","keys","concat","targetStatics","sourceStatics","i","key","descriptor","e","require_react_is_production_min","__commonJSMin","exports","init_rnx_prelude","b","Symbol","for","c","d","e","f","g","h","k","l","m","n","p","q","t","u","v","a","r","$$typeof","type","ContextConsumer","ContextProvider","Element","ForwardRef","Fragment","Lazy","Memo","Portal","Profiler","StrictMode","Suspense","SuspenseList","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isPortal","isProfiler","isStrictMode","isSuspense","isSuspenseList","isValidElementType","getModuleId","undefined","typeOf","require_react_is","__commonJSMin","exports","module","init_rnx_prelude","require","require_asyncToGenerator","__commonJSMin","exports","module","init_rnx_prelude","asyncGeneratorStep","n","t","e","r","o","a","c","i","u","value","done","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","undefined","__esModule","require_classCallCheck","__commonJSMin","exports","module","init_rnx_prelude","_classCallCheck","a","n","TypeError","__esModule","require_createClass","__commonJSMin","exports","module","init_rnx_prelude","toPropertyKey","require","_defineProperties","e","r","t","length","o","enumerable","configurable","writable","Object","defineProperty","key","_createClass","prototype","__esModule","require_types","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","ControlType","undefined","require_RichApi","__commonJSMin","exports","init_rnx_prelude","_classCallCheck","require","_createClass","__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","Object","defineProperty","createRichApiDataSource","undefined","types_1","RichApi","controlId","reloadControlDataCallback","_this","_officeEvents","loadControlData","controlData","_loadControlData","loadDropdownData","type","ControlType","dropdown","updateControlData","promise","_updateControlData","subscribeToEvents","Excel","run","_createRequestContext","context","_subscribeToEvents","sync","_reloadControlData","_reloadControlDataCallback","_controlId","key","_this2","range","workbook","getActiveCell","load","control","properties","_this3","error","_this4","length","sheets","worksheets","push","onSelectionChanged","add","onActivated","RequestContext","requestHeaders","OfficeExtension","Constants","officeControlId","require_richApi","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","createRichApiDataSource","undefined","RichApi_1","require","enumerable","get","require_lib","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","ControlType","createRichApiDataSource","undefined","richApi_1","require","enumerable","get","types_1","require_assertThisInitialized","__commonJSMin","exports","module","init_rnx_prelude","_assertThisInitialized","e","undefined","ReferenceError","__esModule","require_possibleConstructorReturn","__commonJSMin","exports","module","init_rnx_prelude","_typeof","require","assertThisInitialized","_possibleConstructorReturn","t","e","undefined","TypeError","__esModule","require_getPrototypeOf","__commonJSMin","exports","module","init_rnx_prelude","_getPrototypeOf","t","Object","setPrototypeOf","getPrototypeOf","bind","__proto__","__esModule","require_setPrototypeOf","__commonJSMin","exports","module","init_rnx_prelude","_setPrototypeOf","t","e","Object","setPrototypeOf","bind","__proto__","__esModule","require_inherits","__commonJSMin","exports","module","init_rnx_prelude","setPrototypeOf","require","_inherits","t","e","TypeError","prototype","Object","create","constructor","value","writable","configurable","defineProperty","__esModule","require_browser","__commonJSMin","exports","module","init_rnx_prelude","invariant","condition","format","a","b","c","d","e","f","error","undefined","Error","args","argIndex","replace","name","framesToPop","require_assert_never","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","assertNever","errorMessageOrNoThrow","Error","concat","JSON","stringify","default","require_interopRequireDefault","__commonJSMin","exports","module","init_rnx_prelude","_interopRequireDefault","e","__esModule","module","exports","OfficePlatformGlobal","ReactNative","codegenNativeComponent","module","exports","OfficePlatformGlobal","ReactNative","NativeComponentRegistry","require_FocusZoneNativeComponent","__commonJSMin","exports","init_rnx_prelude","_interopRequireDefault","require","Object","defineProperty","value","default","__INTERNAL_VIEW_CONFIG","undefined","_codegenNativeComponent","NativeComponentRegistry","nativeComponentName","uiViewClassName","validAttributes","navigateAtEnd","defaultTabbableElement","focusZoneDirection","use2DNavigation","tabKeyNavigation","disabled","isTabNavigation","_default","get","module","exports","OfficePlatformGlobal","SVG","module","exports","OfficePlatformGlobal","ReactJsxRuntime","module","exports","OfficePlatformGlobal","SDX","StringResources","module","exports","require","StringResources","createLazyTable","location","module","exports","OfficePlatformGlobal","ReactNative","codegenNativeCommands","module","exports","OfficePlatformGlobal","ReactNative","ViewConfigIgnore","module","exports","OfficePlatformGlobal","ReactNative","RendererProxy","require_CalloutNativeComponent","__commonJSMin","exports","init_rnx_prelude","_interopRequireDefault","require","Object","defineProperty","value","default","__INTERNAL_VIEW_CONFIG","Commands","undefined","_codegenNativeCommands","_codegenNativeComponent","NativeComponentRegistry","_require","ConditionallyIgnoredEventHandlers","_require2","dispatchCommand","nativeComponentName","uiViewClassName","directEventTypes","topRestoreFocus","registrationName","topDismiss","topShow","validAttributes","assign","accessibilityLabel","accessibilityOnShowAnnouncement","anchorRect","directionalHint","dismissBehaviors","doNotTakePointerCapture","focusable","isBeakVisible","maxHeight","maxWidth","setInitialFocus","target","testID","onRestoreFocus","onDismiss","onShow","_default","get","focusWindow","ref","blurWindow","require_MacOSCalloutNativeComponent","__commonJSMin","exports","init_rnx_prelude","_interopRequireDefault","require","Object","defineProperty","value","default","__INTERNAL_VIEW_CONFIG","Commands","undefined","_codegenNativeCommands","_codegenNativeComponent","NativeComponentRegistry","_require","ConditionallyIgnoredEventHandlers","_require2","dispatchCommand","nativeComponentName","uiViewClassName","directEventTypes","topRestoreFocus","registrationName","topDismiss","topShow","validAttributes","assign","accessibilityLabel","accessibilityOnShowAnnouncement","anchorRect","directionalHint","dismissBehaviors","doNotTakePointerCapture","focusable","isBeakVisible","maxHeight","maxWidth","setInitialFocus","target","testID","onRestoreFocus","onDismiss","onShow","_default","get","focusWindow","ref","blurWindow","require_isObject","__commonJSMin","exports","module","init_rnx_prelude","isObject","value","type","require_freeGlobal","__commonJSMin","exports","module","init_rnx_prelude","freeGlobal","global","Object","require_root","__commonJSMin","exports","module","init_rnx_prelude","freeGlobal","require","freeSelf","self","Object","root","Function","require_now","__commonJSMin","exports","module","init_rnx_prelude","root","require","now","Date","require_trimmedEndIndex","__commonJSMin","exports","module","init_rnx_prelude","reWhitespace","trimmedEndIndex","string","index","length","test","charAt","require_baseTrim","__commonJSMin","exports","module","init_rnx_prelude","trimmedEndIndex","require","reTrimStart","baseTrim","string","slice","replace","require_Symbol","__commonJSMin","exports","module","init_rnx_prelude","root","require","Symbol","require_getRawTag","__commonJSMin","exports","module","init_rnx_prelude","Symbol","require","objectProto","Object","prototype","hasOwnProperty","nativeObjectToString","toString","symToStringTag","toStringTag","undefined","getRawTag","value","isOwn","call","tag","unmasked","e","result","require_objectToString","__commonJSMin","exports","module","init_rnx_prelude","objectProto","Object","prototype","nativeObjectToString","toString","objectToString","value","call","require_baseGetTag","__commonJSMin","exports","module","init_rnx_prelude","Symbol","require","getRawTag","objectToString","nullTag","undefinedTag","symToStringTag","toStringTag","undefined","baseGetTag","value","Object","require_isObjectLike","__commonJSMin","exports","module","init_rnx_prelude","isObjectLike","value","require_isSymbol","__commonJSMin","exports","module","init_rnx_prelude","baseGetTag","require","isObjectLike","symbolTag","isSymbol","value","require_toNumber","__commonJSMin","exports","module","init_rnx_prelude","baseTrim","require","isObject","isSymbol","NAN","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","toNumber","value","other","valueOf","isBinary","test","slice","require_debounce","__commonJSMin","exports","module","init_rnx_prelude","isObject","require","now","toNumber","FUNC_ERROR_TEXT","nativeMax","Math","max","nativeMin","min","debounce","func","wait","options","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","undefined","apply","leadingEdge","setTimeout","timerExpired","remainingWait","timeSinceLastCall","timeSinceLastInvoke","timeWaiting","shouldInvoke","trailingEdge","cancel","clearTimeout","flush","debounced","isInvoking","arguments","module","exports","OfficePlatformGlobal","Reka","require_NullTelemetryLogger","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","nullTelemetryLogger","undefined","nullTelemetryActivity","addData","send","nullTelemetryEvent","createActivity","createEvent","sendEvent","require_PluggableTelemetryLogger","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","PluggableTelemetryLogger","undefined","NullTelemetryLogger_1","require","setTelemetryLogger","logger","telemetryLogger","setNullTelemetryLogger","nullTelemetryLogger","get","enumerable","configurable","require_pluggableTelemetry","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","nullTelemetryLogger","PluggableTelemetryLogger","undefined","PluggableTelemetryLogger_1","require","enumerable","get","NullTelemetryLogger_1","module","exports","OfficePlatformGlobal","Telemetry","OTel","require_TelemetryHelper","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","transformData","undefined","OTel","require","key","makeBooleanDataField","makeDoubleDataField","makeStringDataField","require_TelemetryActivity","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","TelemetryActivity","undefined","TelemetryHelper_1","require","otelActivity","prototype","addData","key","dataField","transformData","addDataField","send","success","setSuccess","endNow","require_TelemetryEvent","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","TelemetryEvent","undefined","telemetryLogger","eventName","data","prototype","addData","key","push","send","sendEvent","require_OTelTelemetryLogger","__commonJSMin","exports","init_rnx_prelude","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","defineProperty","value","OTelTelemetryLogger","undefined","OTel","require","TelemetryActivity_1","TelemetryEvent_1","TelemetryHelper_1","pluggableTelemetry_1","defaultEventFlags","dataCategories","DataCategories","ProductServiceUsage","diagnosticLevel","DiagnosticLevel","FullEvent","otelLogger","telemetryNamespace","initialize","isInitialized","console","log","PluggableTelemetryLogger","setTelemetryLogger","createActivity","activityName","oTelActivity","createNewActivity","setEventFlags","TelemetryActivity","createEvent","eventName","telemetryEvent","TelemetryEvent","sendEvent","eventSourceOrName","eventData","optionalEventFlags","eventFlags","dataFields","map","data","transformData","key","sendTelemetryEvent","require_otelTelemetryAdapter","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","OTelTelemetryLogger","undefined","OTelTelemetryLogger_1","require","enumerable","get","module","exports","OfficePlatformGlobal","Telemetry","OTelSDX","require_TelemetrySink_native","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","createTelemetrySink","undefined","SdxSink","require","createOTelSink","require_InitializeTelemetry","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","initializeTelemetry","undefined","OTel","require","otelTelemetryAdapter_1","TelemetrySink_1","tokenTree","telemetryNameSpace","telemetrySink","otelLogger","TelemetryLogger","addSink","createTelemetrySink","setTenantTokens","OTelTelemetryLogger","initialize","require_TelemetryLogger","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","TelemetryLogger","undefined","pluggableTelemetry_1","require","createActivity","activityName","PluggableTelemetryLogger","instance","createEvent","eventName","require_telemetryAPI","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","createTelemetrySink","TelemetryLogger","initializeTelemetry","undefined","InitializeTelemetry_1","require","enumerable","get","TelemetryLogger_1","TelemetrySink_1","require_lib","__commonJSMin","exports","init_rnx_prelude","Object","defineProperty","value","initializeTelemetry","createTelemetrySink","TelemetryLogger","nullTelemetryLogger","PluggableTelemetryLogger","undefined","pluggableTelemetry_1","require","enumerable","get","telemetryAPI_1","module","exports","OfficePlatformGlobal","ReactNativeReka","React","import_react_native","React","import_shim","import_with_selector","import_react_native","defaultNoopBatch","callback","batch","setBatch","newBatch","getBatch","import_react","import_react","React","ContextKey","Symbol","for","gT","globalThis","getContext","_gT$ContextKey","createContext","contextMap","Map","realContext","get","set","ReactReduxContext","notInitialized","Error","useSyncExternalStoreWithSelector","notInitialized","initializeUseSelector","fn","_extends","Object","assign","bind","n","e","arguments","length","t","r","hasOwnProperty","call","apply","_objectWithoutPropertiesLoose","r","e","t","n","hasOwnProperty","call","includes","import_hoist_non_react_statics","React","import_react_is","_excluded","pureFinalPropsSelectorFactory","mapStateToProps","mapDispatchToProps","mergeProps","dispatch","_ref2","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","hasRunAtLeastOnce","state","ownProps","stateProps","dispatchProps","mergedProps","handleFirstCall","firstState","firstOwnProps","handleNewPropsAndNewState","dependsOnOwnProps","handleNewProps","handleNewState","nextStateProps","statePropsChanged","handleSubsequentCalls","nextState","nextOwnProps","propsChanged","stateChanged","finalPropsSelectorFactory","_ref","initMapStateToProps","initMapDispatchToProps","initMergeProps","options","_objectWithoutPropertiesLoose","bindActionCreators","actionCreators","dispatch","boundActionCreators","_loop","actionCreator","key","apply","undefined","arguments","wrapMapToPropsConstant","getConstant","dispatch","constant","constantSelector","dependsOnOwnProps","getDependsOnOwnProps","mapToProps","Boolean","length","wrapMapToPropsFunc","methodName","_ref","displayName","proxy","stateOrDispatch","ownProps","undefined","props","createInvalidArgFactory","arg","name","dispatch","options","Error","wrappedComponentName","mapDispatchToPropsFactory","mapDispatchToProps","wrapMapToPropsConstant","dispatch","bindActionCreators","wrapMapToPropsFunc","createInvalidArgFactory","mapStateToPropsFactory","mapStateToProps","wrapMapToPropsFunc","createInvalidArgFactory","wrapMapToPropsConstant","defaultMergeProps","stateProps","dispatchProps","ownProps","_extends","wrapMergePropsFunc","mergeProps","dispatch","_ref","displayName","areMergedPropsEqual","hasRunOnce","mergedProps","nextMergedProps","mergePropsFactory","createInvalidArgFactory","createListenerCollection","batch","getBatch","first","last","clear","notify","listener","callback","next","get","listeners","push","subscribe","isSubscribed","prev","nullListeners","createSubscription","store","parentSub","unsubscribe","subscriptionsAmount","selfSubscribed","addNestedSub","trySubscribe","cleanupListener","removed","tryUnsubscribe","notifyNestedSubs","handleChangeWrapper","subscription","onStateChange","undefined","trySubscribeSelf","tryUnsubscribeSelf","getListeners","React","useIsomorphicLayoutEffect","useLayoutEffect","is","x","y","shallowEqual","objA","objB","keysA","Object","keys","keysB","length","i","prototype","hasOwnProperty","call","_excluded","useSyncExternalStore","notInitialized","initializeConnect","fn","NO_SUBSCRIPTION_ARRAY","useIsomorphicLayoutEffectWithArgs","effectFunc","effectArgs","dependencies","useIsomorphicLayoutEffect","apply","undefined","_toConsumableArray","captureWrapperProps","lastWrapperProps","lastChildProps","renderIsScheduled","wrapperProps","childPropsFromStoreUpdate","notifyNestedSubs","current","subscribeUpdates","shouldHandleStateChanges","store","subscription","childPropsSelector","isMounted","additionalSubscribeListener","didUnsubscribe","lastThrownError","checkForUpdates","latestStoreState","getState","newChildProps","error","e","onStateChange","trySubscribe","unsubscribeWrapper","tryUnsubscribe","strictEqual","a","b","connect","mapStateToProps","mapDispatchToProps","mergeProps","_ref","arguments","length","undefined","pure","_ref$areStatesEqual","areStatesEqual","strictEqual","_ref$areOwnPropsEqual","areOwnPropsEqual","shallowEqual","_ref$areStatePropsEqu","areStatePropsEqual","_ref$areMergedPropsEq","areMergedPropsEqual","_ref$forwardRef","forwardRef","_ref$context","context","ReactReduxContext","Context","initMapStateToProps","mapStateToPropsFactory","initMapDispatchToProps","mapDispatchToPropsFactory","initMergeProps","mergePropsFactory","shouldHandleStateChanges","Boolean","wrapWithConnect","WrappedComponent","wrappedComponentName","displayName","name","selectorFactoryOptions","ConnectFunction","props","_React$useMemo","useMemo","reactReduxForwardedRef","wrapperProps","_objectWithoutPropertiesLoose","_excluded","_React$useMemo2","_slicedToArray","propsContext","ContextToUse","Consumer","isContextConsumer","createElement","contextValue","useContext","didStoreComeFromProps","store","getState","dispatch","didStoreComeFromContext","getServerState","childPropsSelector","defaultSelectorFactory","_React$useMemo3","NO_SUBSCRIPTION_ARRAY","subscription","createSubscription","notifyNestedSubs","bind","_React$useMemo4","overriddenContextValue","_extends","lastChildProps","useRef","lastWrapperProps","childPropsFromStoreUpdate","renderIsScheduled","isProcessingDispatch","isMounted","latestSubscriptionCallbackError","useIsomorphicLayoutEffect","current","actualChildPropsSelector","selector","subscribeForReact","subscribe","reactListener","subscribeUpdates","useIsomorphicLayoutEffectWithArgs","captureWrapperProps","actualChildProps","useSyncExternalStore","err","message","stack","renderedWrappedComponent","ref","renderedChild","Provider","value","_Connect","memo","Connect","_forwarded","forwarded","hoistStatics","connect_default","React","Provider","_ref","store","context","children","serverState","_ref$stabilityCheck","stabilityCheck","undefined","_ref$noopCheck","noopCheck","contextValue","useMemo","subscription","createSubscription","getServerState","previousState","getState","useIsomorphicLayoutEffect","onStateChange","notifyNestedSubs","trySubscribe","tryUnsubscribe","Context","ReactReduxContext","createElement","value","Provider_default","initializeUseSelector","useSyncExternalStoreWithSelector","initializeConnect","useSyncExternalStore","setBatch","batch","React","action","type","payload","meta","validateActionType","arg","idx","undefined","Error","createAction","actionType","actionResolverHandler","actionCreator","bind","Object","assign","getType","toString","getType","creator","Error","setControlLoading","createAction","resolve","setControl","controlData","setError","ariaTenantToken","nexusTenantToken","telemetryTokenTree","Office","Excel","CellControls","inCellControlTelemetryNamespace","TelemetryActivityName","loadControlDataAsync","_ref","_asyncToGenerator","dispatch","getState","hostService","activity","createTelemetryActivity","TelemetryActivityName","LoadControlData","setControlLoading","controlData","loadControlData","subscribeToEvents","setControl","send","error","setError","_x","_x2","_x3","apply","arguments","loadDropdownDataAsync","_ref2","LoadDropdownData","loadDropdownData","_x4","_x5","_x6","updateControlDataAsync","_ref3","UpdateControlData","updateControlData","_x7","_x8","_x9","_typeof","o","Symbol","iterator","constructor","prototype","toPrimitive","t","r","_typeof","e","Symbol","undefined","i","call","TypeError","String","Number","toPropertyKey","t","i","toPrimitive","_typeof","_defineProperty","e","r","t","toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread2","arguments","length","forEach","defineProperty","getOwnPropertyDescriptors","defineProperties","formatProdErrorMessage","code","$$observable","Symbol","observable","randomString","Math","random","toString","substring","split","join","ActionTypes","INIT","REPLACE","PROBE_UNKNOWN_ACTION","isPlainObject","obj","proto","Object","getPrototypeOf","createStore","reducer","preloadedState","enhancer","_ref2","arguments","Error","undefined","currentReducer","currentState","currentListeners","nextListeners","isDispatching","ensureCanMutateNextListeners","slice","getState","subscribe","listener","isSubscribed","push","index","indexOf","splice","dispatch","action","type","listeners","i","length","replaceReducer","nextReducer","_ref","outerSubscribe","observer","observeState","next","unsubscribe","compose","_len","arguments","length","funcs","Array","_key","arg","reduce","a","b","apply","undefined","applyMiddleware","middlewares","createStore","store","_dispatch","Error","formatProdErrorMessage","middlewareAPI","getState","dispatch","chain","map","middleware","_objectSpread","createThunkMiddleware","extraArgument","middleware","_ref","dispatch","getState","next","action","thunk","withExtraArgument","es_default","ErrorState","ControlState","import_office_excel_incellcontrol","reducer","state","arguments","length","undefined","errorState","ErrorState","none","controlData","type","ControlType","blank","properties","listItems","controlState","ControlState","loading","action","getType","setControlLoading","Object","assign","setControl","payload","internalControlData","loaded","setError","error","configureStore","hostService","initialState","middlewares","thunkMiddleware","withExtraArgument","enhancer","compose","applyMiddleware","apply","undefined","createStore","reducer","React","import_react_native","React","import_react_native","isKeyPressEvent","e","nativeEvent","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","s","e","t","p","Object","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","i","length","propertyIsEnumerable","__spreadArray","to","from","pack","arguments","length","i","l","ar","Array","prototype","slice","call","concat","React","init_rnx_prelude","import_react","init_rnx_prelude","import_react_native","import_invariant","init_rnx_prelude","import_react_native","isEnabled","isHoverEnabled","normalizeRect","size","bottom","left","right","top","Transitions","NOT_RESPONDER","DELAY","RESPONDER_GRANT","RESPONDER_RELEASE","RESPONDER_TERMINATED","ENTER_PRESS_RECT","LEAVE_PRESS_RECT","LONG_PRESS_DETECTED","RESPONDER_INACTIVE_PRESS_IN","RESPONDER_INACTIVE_PRESS_OUT","RESPONDER_ACTIVE_PRESS_IN","RESPONDER_ACTIVE_PRESS_OUT","RESPONDER_ACTIVE_LONG_PRESS_IN","RESPONDER_ACTIVE_LONG_PRESS_OUT","ERROR","isActiveSignal","signal","isActivationSignal","isPressInSignal","isTerminalSignal","DEFAULT_LONG_PRESS_DELAY_MS","DEFAULT_PRESS_DELAY_MS","DEFAULT_PRESS_RECT_OFFSETS","bottom","left","right","top","normalizeDelay","delay","min","fallback","undefined","Math","max","getTouchFromPressEvent","event","_a","nativeEvent","changedTouches","touches","length","Pressability","config","_this","_eventHandlers","_hoverInDelayTimeout","_hoverOutDelayTimeout","_isHovered","_longPressDelayTimeout","_pressDelayTimeout","_pressOutDelayTimeout","_responderID","_responderRegion","_touchState","_measureCallback","width","height","pageX","pageY","configure","prototype","_config","reset","_cancelHoverInDelayTimeout","_cancelHoverOutDelayTimeout","_cancelLongPressDelayTimeout","_cancelPressDelayTimeout","_cancelPressOutDelayTimeout","getEventHandlers","_createEventHandlers","focusEventHandlers","onBlur","onFocus","responderEventHandlers","onStartShouldSetResponder","disabled","onResponderGrant","persist","currentTarget","_receiveSignal","delayPressIn","setTimeout","delayLongPress","_handleLongPress","onResponderMove","onPressMove","responderRegion","touch","_touchActivatePosition","deltaX","deltaY","hypot","_isTouchWithinResponderRegion","onResponderRelease","onResponderTerminate","onResponderTerminationRequest","cancelable","onClick","onPress","mouseEventHandlers","onMouseEnter","isHoverEnabled","onHoverIn_1","onHoverIn","delayHoverIn","onMouseLeave","onHoverOut_1","onHoverOut","delayHoverOut","__assign","prevState","nextState","invariant","_performTransitionSideEffects","isInitialTransition","isActivationTransiton","_measureResponderRegion","onLongPress","isPrevActive","isNextActive","_activate","_deactivate","isPressCanceledByLongPress","_shouldLongPressCancelPress","onPressIn","onPressOut","delayPressOut","_b","UIManager","measure","_c","_d","hitSlop","normalizeRect","pressRectOffset","regionBottom","regionLeft","regionRight","regionTop","clearTimeout","React","useHoverHelper","props","_a","useState","hovered","hoverState","setHoverState","onHoverIn","onHoverOut","_onHoverIn","useCallback","e","_onHoverOut","useFocusHelper","focused","focusState","setFocusState","onFocus","onBlur","_onFocus","_onBlur","usePressHelper","pressed","pressState","setPressState","onPressIn","onPressOut","_onPressIn","_onPressOut","usePressableState","rest","__rest","hoverProps","_b","focusProps","_c","pressProps","__assign","state","React","init_rnx_prelude","setAndForwardRef","_a","getForwardedRef","setLocalRef","ref","forwardedRef","current","useViewCommandFocus","forwardedRef","focusRef","useRef","_setNativeRef","setAndForwardRef","getForwardedRef","setLocalRef","localRef","current","React","useSelectedKey","defaultSelectedKey","userCallback","_a","useState","selectedKey","setSelectedKey","onKeySelect","useCallback","key","React","React","React","React","React","import_react_native","ensureAndReturn","entry","key","Error","jumpToCacheEntry","val","byObj","obj","WeakMap","get","set","byString","getCacheEntry","args","length","reduce","previous","arg","_baseEntry","getMemoValueWorker","entry","factory","keys","foundEntry","getCacheEntry","hasOwnProperty","value","fact","args","getMemoCache","globalKey","memoize","fn","cache","getMemoCache","closure","args","_i","arguments","length","apply","undefined","isModifierKey","nativeEvent","alt","altKey","ctrl","ctrlKey","meta","metaKey","shift","shiftKey","keyPressCallback","userCallback","keys","_i","arguments","length","onKeyEvent","e","undefined","includes","key","stopPropagation","getKeyUpPropsWorker","keyboardProps","onKeyUp","apply","__spreadArray","validKeysUp","getKeyDownPropsWorker","onKeyDown","validKeysDown","useKeyUpProps","memoize","useKeyDownProps","useKeyProps","useKeyDownProps","React","import_react_native","useOnPressWithFocus","focusRef","userCallback","onPressWithFocus","useCallback","args","_a","platformSupportsFocus","includes","takesFocusOnClick","undefined","current","focus","_builtinHandlers","appendArray","objs","_i","arguments","length","concat","apply","normalizeOptions","options","object","getEntityType","val","Array","isArray","resolveIfHandler","option","undefined","getTypesMixin","config","array","resolveForObject","mixin","__assign","getHandlerForPropertyOfType","propKey","propType","result","immutableMergeWorker","mergeOptions","singleMode","setToMerge","filter","v","Object","getOwnPropertyNames","_a","mightRecurse","processSingle","assign","__spreadArray","processSet","_loop_1","key","hasOwnProperty","originalVal","entityType","handler","values","map","set","updatedVal","immutableMerge","immutableMergeCore","flattenStyle","style","Array","isArray","immutableMerge","apply","undefined","map","v","mergeAndFlattenStyles","styles","_i","arguments","length","styleProp","_styleCache","getMemoCache","mergeStyles","inputs","filter","s","__spreadArray","mergePropsOptions","className","names","_i","arguments","length","filter","v","join","style","mergeStyles","filterAsObject","targets","t","mergeProps","props","immutableMergeCore","apply","undefined","__spreadArray","getPaletteFromTheme","theme","colors","foregroundColorTokens","source","lookup","backgroundColorTokens","colorTokens","__spreadArray","tokenBuilder","keys","_i","arguments","length","from","tokens","style","filter","key","undefined","forEach","borderTokens","source","lookup","getPaletteFromTheme","borderStyles","tokenBuilder","styleFunction","fn","keys","_keys","fontStyles","from","_a","_b","_c","_d","_e","_f","_g","_h","_j","_k","_l","_m","_o","_p","_q","_r","_s","_t","_u","_v","fontDynamicTypeRamp","fontFamily","fontLetterSpacing","fontLineHeight","fontMaximumSize","fontSize","fontStyle","fontWeight","textDecorationLine","variant","typography","families","sizes","weights","variants","undefined","face","size","weight","lineHeight","letterSpacing","dynamicTypeRamp","maximumFontSize","keys","_buildTextStyles","tokens","theme","style","textTokens","styleFunction","layoutStyles","tokenBuilder","shadowStyles","tokenBuilder","React","renderSlot","slot","extraProps","children","_i","arguments","length","_canCompose","apply","undefined","__spreadArray","createElement","React","asArray","val","Array","isArray","stagedComponent","staged","memo","component","props","children","rest","__rest","Object","assign","_staged","React","getStagedRender","slot","_staged","undefined","useSlot","component","props","filter","stagedComponent","_a","useMemo","resultHolder","slotFn","extraProps","children","_i","arguments","length","result","mergeProps","propsToRemove","Object","keys","key","assign","apply","__spreadArray","map","prop","createElement","React","_canCompose","fn","results","withSlots","reactType","props","children","_i","arguments","length","renderSlot","apply","undefined","__spreadArray","buildUseSlots","options","slots","_a","filters","undefined","useStyling","args","_i","arguments","length","slotProps","apply","builtSlots","Object","keys","forEach","slotName","useSlot","React","ThemeContext","createContext","undefined","useTheme","useContext","applyPropsToTokens","props","tokens","cache","keys","_loop_1","key","_a","sourceValue","setValue","undefined","__assign","_i","keys_1","length","applyTokenLayers","tokens","states","subCache","hasLayer","final","length","filter","val","reduce","previous","layerName","layer","_a","immutableMerge","mapToTokens","tokenEntry","theme","getComponentInfo","buildUseTokens","tokens","_i","arguments","length","cache","getMemoCache","useTokensCore","immutableMerge","apply","undefined","map","value","customize","newTokens","mergedTokens","__spreadArray","patchTokens","tokens","cache","patchValues","keys","Object","filter","v","undefined","sort","_loop_1","key","_a","__assign","_i","keys_1","length","cacheStyleClosure","fn","keys","tokens","theme","cache","map","key","refineKeys","mask","Array","isArray","filter","findIndex","val","buildProps","result","refine","length","undefined","refinePropsFunctions","styles","Object","forEach","resolveToSlotProps","styles","tokens","theme","cache","slotProps","Object","keys","forEach","key","style","buildUseStyling","options","themeHelper","useTheme","getComponentInfo","tokenProps","tokensThatAreAlsoProps","refinePropsFunctions","useTokens","buildUseTokens","apply","undefined","__spreadArray","props","lookup","_a","_b","_c","mergedTokens","states","applyTokenLayers","val","Array","isArray","applyPropsToTokens","__assign","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","mergeOptions","tokens","object","composeFactory","options","themeHelper","base","baseOptions","undefined","__options","immutableMergeCore","useStyling","slotProps","buildUseStyling","useSlots","buildUseSlots","component","stagedComponent","props","useRender","displayName","customize","_i","compose","customOptions","statics","import_react_native","import_tokens_global","tokens_global_default","globalTokens","import_tokens_shadow","import_tokens_aliases","import_assert_never","import_react_native","import_tokens_aliases","hcAliasTokens","processAliasTokens","aliasTokens","key","innerKey","entry","includes","color","substring","length","PlatformColor","getAliasTokens","mode","lightAliasTokens","darkAliasTokens","hcAliasTokens","assertNever","getShadowTokens","lightShadowTokens","darkShadowTokens","hcShadowTokens","import_react_native","getCurrentAppearance","appearance","fallback","undefined","Appearance","getColorScheme","isHighContrastEnabled","isHighContrast","_t","isHighContrastEnabled","mapPipelineToTheme","pipelineOutput","neutralForeground1","rest","neutralForeground1Hover","hover","neutralForeground1Pressed","pressed","neutralForeground1Selected","selected","neutralForeground2","neutralForeground2Hover","neutralForeground2Pressed","neutralForeground2Selected","neutralForeground2BrandHover","brandHover","neutralForeground2BrandPressed","brandPressed","neutralForeground2BrandSelected","brandSelected","neutralForeground3","neutralForeground3Hover","neutralForeground3Pressed","neutralForeground3Selected","neutralForeground3BrandHover","neutralForeground3BrandPressed","neutralForeground3BrandSelected","neutralForeground4","neutralForegroundDisabled","brandForegroundLink","brandForegroundLinkHover","brandForegroundLinkPressed","brandForegroundLinkSelected","compoundBrandForeground1","compoundBrandForeground1Hover","compoundBrandForeground1Pressed","brandForeground1","brandForeground1Disabled","disabled","brandForeground1Pressed","brandForeground2","neutralForegroundInverted","neutralForegroundOnBrand","neutralForegroundOnBrandHover","neutralForegroundOnBrandPressed","neutralForegroundOnBrandSelected","neutralForegroundInvertedLink","neutralForegroundInvertedLinkHover","neutralForegroundInvertedLinkPressed","neutralForegroundInvertedLinkSelected","neutralBackground1","neutralBackground1Hover","neutralBackground1Pressed","neutralBackground1Selected","neutralBackground2","neutralBackground2Hover","neutralBackground2Pressed","neutralBackground2Selected","neutralBackground3","neutralBackground3Hover","neutralBackground3Pressed","neutralBackground3Selected","neutralBackground4","neutralBackground4Hover","neutralBackground4Pressed","neutralBackground4Selected","neutralBackground5","neutralBackground5Hover","neutralBackground5Pressed","neutralBackground5Selected","neutralBackground6","neutralBackgroundInverted","subtleBackground","subtleBackgroundHover","subtleBackgroundPressed","subtleBackgroundSelected","transparentBackground","transparentBackgroundHover","transparentBackgroundPressed","transparentBackgroundSelected","neutralBackgroundDisabled","neutralStencil1","neutralStencil2","brandBackground","brandBackgroundHover","brandBackgroundPressed","brandBackgroundDisabled","brandBackgroundSelected","compoundBrandBackground1","compoundBrandBackground1Hover","compoundBrandBackground1Pressed","brandBackgroundStatic","brandBackground2","neutralStrokeAccessible","neutralStrokeAccessibleHover","neutralStrokeAccessiblePressed","neutralStrokeAccessibleSelected","neutralStroke1","neutralStroke1Hover","neutralStroke1Pressed","neutralStroke1Selected","neutralStroke2","neutralStroke3","brandStroke1","brandStroke2","compoundBrandStroke1","compoundBrandStroke1Hover","compoundBrandStroke1Pressed","neutralStrokeDisabled","transparentStroke","transparentStrokeInteractive","transparentStrokeDisabled","strokeFocus1","strokeFocus2","dangerBackground1","dangerBackground2","dangerBackground3","dangerForeground1","dangerForeground2","dangerForeground3","dangerForegroundInverted","dangerBorderActive","dangerBorder1","dangerBorder2","successBackground1","successBackground2","successBackground3","successForeground1","successForeground2","successForeground3","successForegroundInverted","successBorderActive","successBorder1","successBorder2","warningBackground1","warningBackground2","warningBackground3","warningForeground1","warningForeground2","warningForeground3","warningForegroundInverted","warningBorderActive","warningBorder1","warningBorder2","severeBackground1","severeBackground2","severeBackground3","severeForeground1","severeForeground2","severeForeground3","severeBorderActive","severeBorder1","severeBorder2","outofofficeBackground1","outofofficeBackground2","outofofficeBackground3","outofofficeForeground1","outofofficeForeground2","outofofficeForeground3","outofofficeBorderActive","outofofficeBorder1","outofofficeBorder2","mapFontPipelineToTheme","caption1","createVariantValue","body1","body1Strong","body2","body2Strong","subtitle1","subtitle1Strong","subtitle2","subtitle2Strong","title1","title1Strong","largeTitle","display","variant","face","size","fontSize","weight","fontWeight","mapPipelineToShadow","pipelineOutputShadow","shadow2","ambient","key","shadow4","shadow8","shadow16","shadow28","shadow64","shadow2brand","shadowBrand2","shadow4brand","shadowBrand4","shadow8brand","shadowBrand8","shadow16brand","shadowBrand16","shadow28brand","shadowBrand28","shadow64brand","shadowBrand64","createColorAliasTokensWorker","mode","aliasTokens","getAliasTokens","mapPipelineToTheme","createColorAliasTokens","memoize","createShadowAliasTokensWorker","getShadowTokens","mapPipelineToShadow","createShadowAliasTokens","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","paletteFromFabricColors","isInverted","background","white","bodyStandoutBackground","neutralLighterAlt","bodyFrameBackground","bodyFrameDivider","neutralLight","bodyText","neutralPrimary","bodyTextChecked","black","subText","neutralSecondary","bodyDivider","disabledBackground","neutralQuaternaryAlt","neutralLighter","disabledText","neutralTertiary","disabledBodyText","focusBorder","variantBorder","errorText","redDark","inputBorder","inputBackground","inputFocusBorderAlt","themePrimary","inputText","inputPlaceholderText","buttonBackground","buttonBackgroundChecked","neutralTertiaryAlt","buttonBackgroundHovered","buttonBackgroundPressed","buttonBackgroundDisabled","buttonBorder","neutralSecondaryAlt","buttonText","buttonTextHovered","neutralDark","buttonTextChecked","buttonTextPressed","buttonTextDisabled","buttonBorderDisabled","buttonBorderFocused","primaryButtonBackground","primaryButtonBackgroundHovered","themeDarkAlt","primaryButtonBackgroundPressed","themeDark","primaryButtonBackgroundDisabled","primaryButtonBorder","primaryButtonBorderFocused","primaryButtonText","primaryButtonTextHovered","primaryButtonTextPressed","primaryButtonTextDisabled","neutralQuaternary","accentButtonBackground","accent","menuBackground","menuDivider","menuIcon","menuItemBackgroundHovered","menuItemBackgroundPressed","menuItemText","menuItemTextHovered","listHeaderBackgroundHovered","listHeaderBackgroundPressed","actionLink","link","linkHovered","themeDarker","linkPressed","defaultBackground","defaultBorder","defaultContent","defaultIcon","defaultHoveredBackground","defaultHoveredBorder","defaultHoveredContent","defaultHoveredIcon","defaultFocusedBackground","defaultFocusedBorder","defaultFocusedContent","defaultFocusedIcon","defaultPressedBackground","defaultPressedBorder","defaultPressedContent","defaultPressedIcon","defaultDisabledBackground","defaultDisabledBorder","defaultDisabledContent","defaultDisabledIcon","ghostBackground","ghostBorder","ghostContent","ghostIcon","ghostHoveredBackground","ghostHoveredBorder","ghostHoveredContent","ghostHoveredIcon","ghostFocusedBackground","ghostFocusedBorder","ghostFocusedContent","ghostFocusedIcon","ghostPressedBackground","ghostPressedBorder","ghostPressedContent","ghostPressedIcon","ghostDisabledBackground","ghostDisabledBorder","ghostDisabledContent","ghostDisabledIcon","brandedBackground","brandedDisabledBorder","defaultCheckedBackground","defaultCheckedContent","defaultCheckedHoveredBackground","defaultCheckedHoveredContent","ghostCheckedBackground","ghostCheckedContent","ghostCheckedHoveredBackground","ghostCheckedHoveredContent","ghostCheckedHoveredBorder","ghostSecondaryContent","ghostFocusedSecondaryContent","ghostHoveredSecondaryContent","ghostPressedSecondaryContent","brandedSecondaryContent","brandedFocusedSecondaryContent","brandedHoveredSecondaryContent","brandedPressedSecondaryContent","defaultHoveredSecondaryContent","defaultPressedSecondaryContent","checkmarkColor","checkboxBackground","checkboxBackgroundDisabled","checkboxBorderColor","personaActivityRing","personaActivityGlow","getStockWebHCPalette","createColorAliasTokens","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","getStockWebPalette","paletteFromFabricColors","black","globalTokens","color","neutralDark","neutralPrimary","neutralPrimaryAlt","neutralSecondary","neutralSecondaryAlt","neutralTertiary","neutralTertiaryAlt","neutralQuaternary","neutralQuaternaryAlt","neutralLight","neutralLighter","neutralLighterAlt","white","red","primary","redDark","burgundy","themeDarker","brand","shade40","themeDark","shade20","themeDarkAlt","shade10","themePrimary","themeSecondary","themeTertiary","themeLight","tint40","themeLighter","tint50","themeLighterAlt","tint60","accent","blackTranslucent40","createColorAliasTokens","getStockWebDarkPalette","tint30","tint20","tint10","shade30","shade50","shade60","_defaultTypography","defaultsDict","sizes","caption","globalTokens","font","size100","secondary","size200","body","size300","subheader","size400","header","size500","hero","size700","heroLarge","size900","weights","regular","weight","semiBold","semibold","families","primary","cursive","monospace","numeric","sansSerif","serif","variants","captionStandard","face","size","secondaryStandard","secondarySemibold","bodyStandard","bodySemibold","subheaderStandard","subheaderSemibold","headerStandard","headerSemibold","heroStandard","heroSemibold","heroLargeStandard","heroLargeSemibold","caption1","caption1Strong","body1","body1Strong","body2","body2Strong","subtitle1","subtitle1Strong","subtitle2","subtitle2Strong","title1","title1Strong","largeTitle","display","familiesDictApple","defaultSpacing","s2","s1","m","l1","l2","defaultFluentTheme","colors","getStockWebPalette","typography","spacing","shadows","createShadowAliasTokens","components","host","appearance","defaultFluentDarkTheme","getStockWebDarkPalette","defaultFluentHighConstrastTheme","getStockWebHCPalette","import_react_native","React","ThemeProvider","props","themeRef","theme","children","_a","useState","setThemeState","React","useEffect","onInvalidate","addOnThemeChanged","removeOnThemeChanged","createElement","ThemeContext","Provider","value","mergeTheme","base","partial","immutableMerge","ThemeReference","base","recipes","_i","arguments","length","_this","themeData","undefined","listeners","parentRef","onChanged","invalidate","addOnThemeChanged","getParent","theme","Object","defineProperty","prototype","get","_a","recipe","mergeTheme","enumerable","configurable","listener","push","removeOnThemeChanged","filter","v","update","import_assert_never","createDefaultTheme","options","undefined","themeRef","ThemeReference","current","getCurrentAppearance","appearance","defaultAppearance","defaultFluentTheme","defaultFluentDarkTheme","defaultFluentHighConstrastTheme","assertNever","Appearance","addChangeListener","invalidate","useFluentTheme","useTheme","defaultFluentTheme","themeHelper","useTheme","useFluentTheme","getComponentInfo","theme","name","components","compose","options","base","composeFactory","themeHelper","compressible","fn","useTokens","injectedWrapper","props","component","stagedComponent","customize","tokens","_i","arguments","length","useTokensNew","apply","buildProps","fn","keys","buildPropsBase","buildUseTokens","tokens","_i","arguments","length","buildUseTokensCore","apply","undefined","__spreadArray","themeHelper","getComponentInfo","getAccessibilityState","memoize","getAccessibilityStateWorker","disabled","accessibilityState","__assign","React","__spreadArray","to","from","pack","arguments","length","i","l","ar","Array","prototype","slice","call","concat","_mergeSettingsOptions","tokens","object","mergeProps","_overrides","mergeSettings","settings","_i","arguments","length","immutableMergeCore","apply","undefined","__spreadArray","_mergeSettingsOptions","getActiveOverrides","target","lookup","hasOverride","o","_precedence","filter","resolveSettingsOverrides","overrideLookup","result","_overrides","overrides","_i","overrides_1","length","override","mergeSettings","__spreadArray","to","from","pack","arguments","length","i","l","ar","Array","prototype","slice","call","concat","_mergeAndFilterProps","propsBase","propsExtra","filter","props","mergeProps","removeMask_1","Object","getOwnPropertyNames","forEach","key","undefined","_createSlotRenderFunction","fn","_canCompose","createSlotRenderInfo","composable","slotInfo","renderInfo","slots","Slots_1","Slots","childInfo_1","childInfo","slot","_a","slotType","__composable","childRenderInfo","extraProps","children","_i","renderData","toMerge","root","slotProps","mergeSettings","render","apply","createElement","React","useUpdateRenderData","info","usePrepareProps","useStyling","slotProps_1","child","useCompoundPrepare","useMemo","React","__spreadArray","to","from","pack","arguments","length","i","l","ar","Array","prototype","slice","call","concat","renderSlot","slot","extraProps","children","_i","_canCompose","apply","undefined","createElement","__rest","s","e","t","p","Object","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","i","length","propertyIsEnumerable","__spreadArray","to","from","pack","arguments","l","ar","Array","slice","concat","atomicRender","Slots","_renderData","children","_i","renderSlot","apply","undefined","root","atomicUsePrepareProps","props","useStyling","slotProps","mergeSettings","_validateOptions","options","numSlots","slots","getOwnPropertyNames","render","key","slot","slotType","usePrepareProps","composable","definition","userProps","_a","_b","useCompoundPrepare","renderData","displayName","__composable","import_FocusZoneNativeComponent","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","filterOutComponentRef","propName","FocusZone","composable","usePrepareProps","userProps","useStyling","componentRef","defaultTabbableElement","isCircularNavigation","rest","ftzRef","useViewCommandFocus","_a","useState","undefined","targetNativeTag","setTargetNativeTag","React","useLayoutEffect","current","findNodeHandle","slotProps","mergeSettings","root","navigateAtEnd","ref","slots","slotType","RCTFocusZone","filter","tabName","import_react","import_react_native","React","import_react_native","import_react","import_react_native","textName","useTextTokens","buildUseTokens","t","variant","color","colors","bodyText","textName","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","__spreadArray","to","from","pack","l","ar","Array","slice","concat","emptyProps","Text","compressible","props","useTokens","_a","undefined","_b","align","block","color","componentRef","font","italic","numberOfLines","onAccessibilityTap","onKeyUp","onKeyDown","keyUpEvents","keyDownEvents","onPress","size","strikethrough","style","_c","truncate","underline","variant","weight","_d","wrap","rest","theme","useFluentTheme","_e","tokens","cache","textAlign","I18nManager","isRTL","textOnPress","React","useCallback","stopPropagation","keyProps","useKeyProps","onAccTap","event","patchTokens","fontFamily","fontMaximumSize","maximumFontSize","fontSize","globalTokens","fontWeight","fontStyle","textDecorationLine","tokenStyle","margin","fontStyles","keys","dynamicTypeVariant","maxFontSizeScaleAdjustment","isWinPlatform","filteredProps","validKeysUp","validKeysDown","extra","children","mergedProps","mergeStyles","dynamicTypeRamp","withSlots","RNText","ref","ellipsizeMode","useTextTokens","displayName","textName","textName","import_react_native","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","_viewMask","children","acceptsFirstMouse","accessibilityActions","accessibilityElementsHidden","accessibilityHint","accessibilityIgnoresInvertColors","accessibilityLabel","accessibilityLabelledBy","accessibilityLanguage","accessibilityLiveRegion","accessibilityRole","accessibilityState","accessibilityValue","accessibilityViewIsModal","accessible","allowsVibrancy","collapsable","draggedTypes","enableFocusRing","focusable","hasTVPreferredFocus","hitSlop","id","importantForAccessibility","isTVSelectable","nativeID","needsOffscreenAlphaCompositing","onAccessibilityAction","onAccessibilityEscape","onAccessibilityTap","onDragEnter","onDragLeave","onDrop","onKeyDown","onKeyUp","onLayout","onMagicTap","onMouseEnter","onMouseLeave","onMoveShouldSetResponder","onMoveShouldSetResponderCapture","onPointerCancel","onPointerCancelCapture","onPointerDown","onPointerDownCapture","onPointerEnter","onPointerEnterCapture","onPointerLeave","onPointerLeaveCapture","onPointerMove","onPointerMoveCapture","onPointerUp","onPointerUpCapture","onResponderEnd","onResponderGrant","onResponderMove","onResponderReject","onResponderRelease","onResponderStart","onResponderTerminate","onResponderTerminationRequest","onStartShouldSetResponder","onStartShouldSetResponderCapture","onTouchCancel","onTouchEnd","onTouchEndCapture","onTouchMove","onTouchStart","pointerEvents","removeClippedSubviews","renderToHardwareTextureAndroid","role","shouldRasterizeIOS","style","testID","tvParallaxMagnification","tvParallaxProperties","tvParallaxShiftDistanceX","tvParallaxShiftDistanceY","tvParallaxTiltAngle","validKeysDown","validKeysUp","onBlur","onFocus","onPreferredScrollerStyleDidChange","tooltip","mouseDownCanMoveWindow","_textMask","adjustsFontSizeToFit","allowFontScaling","android_hyphenationFrequency","dataDetectorType","disabled","dynamicTypeRamp","ellipsizeMode","lineBreakMode","lineBreakStrategyIOS","maxFontSizeMultiplier","minimumFontScale","numberOfLines","onLongPress","onPress","onPressIn","onPressOut","onTextLayout","selectable","selectionColor","suppressHighlighting","textBreakStrategy","filterTextProps","propName","_textMask","mergeBaseSettings","customSettings","theme","getFromTheme","mergeSettings","apply","undefined","map","entry","getThemedSettings","memoValue","hasOverride","_a","_b","settings","getMemoValue","overrides","getActiveOverrides","length","resolveSettingsOverrides","__rest","s","e","t","p","Object","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","i","length","propertyIsEnumerable","returnAsSlotProps","target","_overrides","_precedence","settings","getSettings","theme","name","components","undefined","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","_getTokenPropInfo","props","tokensSlot","tokenKeys","tokens","deltas","key","undefined","processTokens","theme","slotProps","tokenInfo","cache","rootSlotProps","handlers","tokenPropInfo","resolvedSlotProps","getOwnPropertyNames","forEach","slotName","handler","__spreadArray","to","from","pack","arguments","length","i","l","ar","Array","prototype","slice","call","concat","_copyToken","props","key","target","targetObj","undefined","_lookupOrCopyToken","theme","entry","style","source","lookup","lookupResult","val","_processSlotEntries","mapping","slotProps","toStyle","slotStyle","_i","_a","Object","keys","_b","_c","toTokens","_processStyleFunctions","functions","tokenProps","mergeProps","apply","map","fn","_getCachedPropsForSlot","slotName","getMemoValue","mappings","finalizer","tokens","tokenKeys","deltas","newProps","buildComponentTokens","factories","hasToken","handlers","getOwnPropertyNames","forEach","slot","factoriesBase","slotKeys","factorySet","isArray","factorySet_1","set","push","_keys","setArray","setArray_1","operation","assign","getValue","getOptionsFromObj","obj","objType","__composable","undefined","_getSettingsFromTheme","theme","name","getSettings","_getHasToken","slots","slotTokens","Object","keys","forEach","slotName","slot","slotType","options","resolvedTokens","tokenKeys","target","key","hasOwnProperty","useStylingCore","props","instanceMemoCache","lookupOverride","useTheme","defaultFluentTheme","_a","getThemedSettings","settings","getMemoValue","returnAsSlotProps","processTokens","initializeStyling","styles","buildComponentTokens","getMemoCache","_getComponentOptions","inputComponent","base","mergedSettings","settings","concat","filter","v","immutableMerge","compose","options","getOptionsFromObj","useStyling","initializeStyling","Component","composable","displayName","Object","assign","statics","customize","_i","arguments","length","newOptions","settings","tokens","variant","color","root","style","margin","_overrides","disabled","_precedence","textName","Text","compose","displayName","textName","settings","slots","root","slotType","RNText","filter","filterTextProps","styles","textTokens","foregroundColorTokens","import_react_native_svg","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","rasterImageStyleCache","getMemoCache","renderRasterImage","iconProps","width","height","color","style","mergeStyles","tintColor","createElement","Image","source","rasterImageSource","src","accessible","accessibilityRole","accessibilityLabel","fontFamilyFromFontSrcFile","fontSrcFile","fontFamily","fontStyleMemoCache","renderFontIcon","fontSource","undefined","fontSize","char","String","fromCharCode","codepoint","Text","renderSvg","svgIconProps","svgSource","svgProps","viewBox","View","uri","SvgUri","Icon","stagedComponent","props","theme","useFluentTheme","rest","_a","colors","buttonText","baseProps","newProps","mergeProps","import_react_native","createIconProps","src","undefined","rasterProps","asset","Image","resolveAssetSource","rasterImageSource","width","height","uri","fontIconName","svgIconName","React","React","import_react_native","import_react_native","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","useFontIcon","props","accessible","color","fontSrcFile","fontFamily","fontSize","styleOrig","style","rest","fontStyleMemoCache","undefined","fontFamilyFromFontSrcFile","mergedStyle","mergeStyles","getMemoCache","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","FontIcon","stagedComponent","props","fontIconProps","useFontIcon","final","newProps","mergeProps","codepoint","rest","char","String","fromCharCode","createElement","Text","displayName","fontIconName","React","import_react_native","import_react_native_svg","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","rasterImageStyleCache","getMemoCache","useSvgIcon","props","accessible","style","height","width","rest","mergeStyles","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","SvgIcon","stagedComponent","props","svgProps","useSvgIcon","final","_a","mergeProps","style","height","width","src","uri","viewBox","color","rest","svgIconsSupported","createElement","View","accessibilityRole","SvgUri","displayName","svgIconName","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","Icon","props","svgSource","createElement","SvgIcon","color","height","size","width","fontSource","FontIcon","fontSize","import_react","import_react_native","useTabSlotProps","props","tokens","theme","context","canShowAnimatedIndicator","selectedKey","vertical","root","React","useMemo","style","__assign","display","alignItems","flexDirection","alignSelf","justifyContent","padding","backgroundColor","borderStyles","from","contentContainer","paddingStart","contentMarginStart","paddingEnd","contentMarginEnd","content","numberOfLines","color","fontStyles","icon","iconColor","size","iconSize","stack","flex","marginHorizontal","stackMarginHorizontal","marginVertical","stackMarginVertical","indicatorContainer","colors","transparentBackground","height","width","indicatorThickness","paddingVertical","indicatorMargin","paddingHorizontal","indicator","hideStaticIndicator","tabKey","borderRadius","indicatorRadius","indicatorColor","defaultTabColorTokens","t","borderColor","colors","transparentBackground","color","neutralForeground2","iconColor","indicatorColor","transparent","backgroundColor","subtle","subtleBackground","selected","neutralForeground1","compoundBrandForeground1","compoundBrandStroke1","pressed","neutralForeground1Pressed","compoundBrandForeground1Pressed","compoundBrandStroke1Pressed","disabled","neutralForegroundDisabled","hovered","neutralForeground2Hover","neutralStroke1Hover","neutralForeground1Hover","compoundBrandForeground1Hover","compoundBrandStroke1Hover","transparentBackgroundHover","subtleBackgroundHover","neutralForeground2Pressed","neutralStroke1Pressed","transparentBackgroundPressed","subtleBackgroundPressed","focused","tabStates","defaultTabTokens","indicatorOrientation","indicatorThickness","borderWidth","borderRadius","contentMarginStart","contentMarginEnd","flexDirection","indicatorRadius","numberOfLines","small","iconSize","iconMargin","indicatorMargin","stackMarginHorizontal","stackMarginVertical","variant","selected","medium","large","vertical","hasIcon","useTabTokens","buildUseTokens","defaultTabColorTokens","tabName","React","React","nullFunction","TabListContext","createContext","addTabKey","appearance","canShowAnimatedIndicator","disabled","onTabSelect","removeTabKey","selectedKey","setFocusedTabRef","size","tabKeys","vertical","updateDisabledTabs","updateTabRef","defaultAccessibilityActions","name","useTab","props","_a","defaultComponentRef","useRef","accessibilityActions","accessibilityPositionInSet","accessibilitySetSize","accessibilityState","accessible","_b","componentRef","undefined","disabled","icon","onAccessibilityAction","tabKey","rest","__rest","_c","useContext","TabListContext","addTabKey","invoked","onTabSelect","removeTabKey","setInvoked","setFocusedTabRef","selectedKey","tabKeys","tablist","isDisabled","changeSelection","useCallback","changeSelectionWithFocus","useOnPressWithFocus","pressable","usePressableState","__assign","onPress","onKeyProps","useKeyProps","useEffect","onAccessibilityActionProp","event","nativeEvent","actionName","accessibilityActionsProp","useMemo","__spreadArray","accessibilityRole","findIndex","key","getAccessibilityState","length","focusable","ref","useViewCommandFocus","state","selected","memoize","getAccessibilityStateWorker","import_react","import_react_native","RENDERING_HEIGHT_LIMIT","useTabAnimation","props","context","tokens","rootProps","addTabLayout","selectedKey","layout","updateAnimatedIndicatorStyles","vertical","tabKey","onLayout","React","useEffect","backgroundColor","indicatorColor","borderRadius","indicatorRadius","onTabLayout","useCallback","e","nativeEvent","tablist","width","height","_a","tabWidth","tabHeight","tabX","x","tabY","y","indicatorWidth","undefined","indicatorHeight","indicatorX","indicatorY","focusBorderPadding","totalIndicatorInset","indicatorMargin","borderWidth","indicatorThickness","I18nManager","isRTL","useMemo","__assign","tabLookup","layer","state","props","tablistContext","appearance","size","icon","Tab","compressible","useTokens","_a","tablist","React","useContext","TabListContext","tab","useTab","theme","useFluentTheme","_b","tokens","cache","applyTokenLayers","tabStates","slotProps","useTabSlotProps","rootProps","useTabAnimation","root","RootSlot","useSlot","Pressable","StackSlot","View","stack","IndicatorContainerSlot","indicatorContainer","IndicatorSlot","indicator","ContentContainerSlot","contentContainer","ContentSlot","Text","content","IconSlot","Icon","final","children","_i","arguments","length","label","hasChildren","Children","forEach","child","mergeProps","accessibilityLabel","tabKey","_","onLayout","mergedProps","__rest","withSlots","__assign","map","i","accessible","key","useTabTokens","displayName","tabName","tabListName","import_react_native","defaultTabListTokens","direction","vertical","stylingSettings","tokens","defaultTabListTokens","tabListName","states","slotProps","stack","buildProps","style","display","flexDirection","direction","flex","root","theme","__assign","alignItems","layoutStyles","from","keys","React","import_react_native","useTabList","props","defaultComponentRef","useRef","accessible","_a","appearance","undefined","accessibilityState","_b","componentRef","defaultSelectedKey","_c","disabled","isCircularNavigation","onTabSelect","selectedKey","_d","size","_e","vertical","data","useSelectedKey","selectedTabKey","_f","useState","focusedTabRef","setFocusedTabRef","_g","invoked","setInvoked","_h","tabKeys","setTabKeys","_j","allTabsDisabled","setAllTabsDisabled","tabRefMap","current","disabledStateMap","updateTabRef","useCallback","key","ref","updateDisabledTabs","isDisabled","addTabKey","tabKey","keys","__spreadArray","removeTabKey","filter","incrementSelectedTab","goBackward","currentIndex","indexOf","direction","increment","newTabKey","length","newIndex","onKeySelect","_k","listLayoutMap","setListLayoutMap","_l","tabListLayout","setTabListLayout","_m","userDefinedAnimatedIndicatorStyles","setUserDefinedAnimatedIndicatorStyles","addTabLayout","layoutInfo","prev","__assign","updateStyles","update","mergeStyles","onTabListLayout","e","nativeEvent","layout","isSelectedTabDisabled","useEffect","tabIndex","i","onRootKeyDown","onKeyDown","call","getAccessibilityState","accessibilityRole","defaultTabbableElement","onLayout","state","animatedIndicatorStyles","canShowAnimatedIndicator","tablist","tabs","updateAnimatedIndicatorStyles","memoize","getAccessibilityStateWorker","import_react","import_react_native","tablistAnimatedIndicatorName","import_react","import_react_native","useAnimatedIndicatorStyles","props","additionalStyles","animatedIndicatorStyles","selectedKey","tabLayout","vertical","indicatorTranslate","React","useRef","Animated","Value","current","indicatorScale","startingKey","useMemo","useEffect","startingIndicatorLayout","selectedIndicatorLayout","scaleValue","undefined","translateValue","translateOffset","height","y","width","x","parallel","timing","toValue","duration","easing","Easing","bezier","useNativeDriver","start","styles","_a","_b","indicatorStyles","__assign","position","top","I18nManager","isRTL","transform","translateY","scaleY","translateX","scaleX","TabListAnimatedIndicator","stagedComponent","props","styles","useAnimatedIndicatorStyles","React","createElement","Animated","View","style","displayName","tablistAnimatedIndicatorName","TabListAnimatedIndicator_default","TabList","compose","__assign","displayName","tabListName","stylingSettings","slots","container","FocusZone","stack","View","root","useRender","userProps","useSlots","tablist","useTabList","Slots","final","children","_i","arguments","length","state","_a","mergeProps","props","disabled","defaultTabbableElement","isCircularNavigation","vertical","mergedProps","__rest","_b","animatedIndicatorStyles","canShowAnimatedIndicator","tablistDisabledState","layout","selectedKey","withSlots","TabListContext","Provider","value","focusZoneDirection","TabListAnimatedIndicator","tabLayout","tabs","createAliasesFromPalette","palette","isHighContrast","neutralForeground1","Text","neutralForeground1Hover","TextHover","neutralForeground1Pressed","TextPressed","neutralForeground1Selected","TextSelected","neutralForeground2","TextSecondary","neutralForeground2Hover","TextSecondaryHover","neutralForeground2Pressed","TextSecondaryPressed","neutralForeground2Selected","TextSecondarySelected","neutralForeground4","TextCtlSubtlePlaceholder","neutralForegroundDisabled","TextDisabled","compoundBrandForeground1","TextEmphasis","compoundBrandForeground1Hover","TextEmphasisHover","compoundBrandForeground1Pressed","TextEmphasisPressed","neutralForegroundInverted","TextCtlSubtleSelectionHighlight","neutralForegroundOnBrand","TextCtlEmphasis","neutralForegroundOnBrandHover","TextCtlEmphasisHover","neutralForegroundOnBrandPressed","TextCtlEmphasisPressed","neutralForegroundInvertedLink","BkgToggleSwitchOff","neutralForegroundInvertedLinkHover","BkgToggleSwitchOffHover","neutralForegroundInvertedLinkPressed","BkgToggleSwitchOffPressed","neutralBackground1","Bkg","neutralBackground1Hover","BkgHover","neutralBackground1Pressed","BkgPressed","neutralBackground1Selected","BkgSelected","neutralBackground2","BkgHeader","neutralBackground2Hover","BkgSubtle","neutralBackground3","neutralBackgroundInverted","BkgSelectionHighlight","neutralBackgroundDisabled","BkgCtlDisabled","neutralStencil1","SliderBuffer","brandBackground","BkgCtlEmphasis","brandBackgroundHover","BkgCtlEmphasisHover","brandBackgroundPressed","BkgCtlEmphasisPressed","compoundBrandBackground1","BkgToggleSwitchOn","compoundBrandBackground1Hover","BkgToggleSwitchOnHover","compoundBrandBackground1Pressed","BkgToggleSwitchOnPressed","neutralStrokeAccessible","StrokeOnlySelected","neutralStrokeAccessibleHover","StrokeOnlyHover","neutralStrokeAccessiblePressed","StrokeOnlyPressed","neutralStroke1","StrokeCtl","neutralStroke1Hover","StrokeSelectedHover","neutralStroke1Pressed","StrokeOverPressed","neutralStroke2","brandStroke1","AccentEmphasis","compoundBrandStroke1","StrokeToggleSwitchOn","compoundBrandStroke1Hover","StrokeToggleSwitchOnHover","compoundBrandStroke1Pressed","StrokeToggleSwitchOnPressed","neutralStrokeDisabled","StrokeCtlDisabled","strokeFocus2","StrokeKeyboard","createBrandedThemeWithAlias","themeName","theme","host","colors","getCurrentBrandAliasTokens","AppPrimary","appPrimary","appColors","getAppColors","isWhiteOrColorfulTheme","neutralForeground2BrandHover","shade10","tint40","neutralForeground2BrandPressed","shade30","tint10","neutralForeground2BrandSelected","shade20","neutralForeground3BrandHover","neutralForeground3BrandPressed","neutralForeground3BrandSelected","brandForegroundLink","primary","tint30","brandForegroundLinkHover","brandForegroundLinkPressed","brandForegroundLinkSelected","compoundBrandForeground1","compoundBrandForeground1Hover","compoundBrandForeground1Pressed","brandForeground1","brandForeground2","brandBackground","brandBackgroundHover","brandBackgroundPressed","brandBackgroundSelected","compoundBrandBackground1","compoundBrandBackground1Hover","compoundBrandBackground1Pressed","brandBackgroundStatic","brandBackground2","neutralStrokeAccessibleSelected","brandStroke1","brandStroke2","compoundBrandStroke1","compoundBrandStroke1Hover","compoundBrandStroke1Pressed","primaryColor","toLowerCase","globalTokens","color","word","excel","office","oneNote","outlook","powerPoint","brand","import_tokens_aliases","import_tokens_shadow","import_react_native","import_tokens_aliases","hcAliasTokens","processAliasTokens","aliasTokens","key","innerKey","entry","includes","color","substring","length","PlatformColor","getOfficeAliasTokens","officeTheme","colorfulAliasTokens","darkGrayAliasTokens","blackAliasTokens","hcAliasTokens","getOfficeShadowTokens","colorfulShadowTokens","darkGrayShadowTokens","blackShadowTokens","hcShadowTokens","createOfficeColorAliasTokensWorker","officeTheme","aliasTokens","getOfficeAliasTokens","mapPipelineToTheme","createOfficeColorAliasTokens","memoize","createOfficeShadowAliasTokensWorker","getOfficeShadowTokens","mapPipelineToShadow","createOfficeShadowAliasTokens","paletteFromOfficeColors","p","background","Bkg","bodyStandoutBackground","bodyFrameBackground","bodyFrameDivider","AccentLight","bodyText","Text","bodyTextChecked","TextSelected","subText","TextSecondary","bodyDivider","disabledBackground","BkgCtlSubtleDisabled","disabledText","TextCtlSubtleDisabled","disabledBodyText","TextDisabled","focusBorder","StrokeKeyboard","variantBorder","AccentOutline","errorText","TextError","inputBorder","StrokeCtlSubtle","inputBackground","BkgCtlSubtle","inputFocusBorderAlt","StrokeCtlSubtleKeyboard","inputText","TextCtlSubtle","inputPlaceholderText","TextCtlSubtlePlaceholder","buttonBackground","BkgCtl","buttonBackgroundChecked","BkgCtlSelected","buttonBackgroundHovered","BkgCtlHover","buttonBackgroundPressed","BkgCtlPressed","buttonBackgroundDisabled","BkgCtlDisabled","buttonBorder","StrokeCtl","buttonText","TextCtl","buttonTextHovered","TextCtlHover","buttonTextChecked","TextCtlSelected","buttonTextPressed","TextCtlPressed","buttonTextDisabled","TextCtlDisabled","buttonBorderDisabled","StrokeCtlDisabled","buttonBorderFocused","StrokeCtlKeyboard","primaryButtonBackground","BkgCtlEmphasis","primaryButtonBackgroundHovered","BkgCtlEmphasisHover","primaryButtonBackgroundPressed","BkgCtlEmphasisPressed","primaryButtonBackgroundDisabled","BkgCtlEmphasisDisabled","primaryButtonBorder","StrokeCtlEmphasis","primaryButtonBorderFocused","StrokeCtlEmphasisKeyboard","primaryButtonText","TextCtlEmphasis","primaryButtonTextHovered","TextCtlEmphasisHover","primaryButtonTextPressed","TextCtlEmphasisPressed","primaryButtonTextDisabled","TextCtlEmphasisDisabled","accentButtonBackground","menuBackground","menuDivider","menuIcon","menuItemBackgroundHovered","BkgHover","menuItemBackgroundPressed","BkgPressed","menuItemText","menuItemTextHovered","TextHover","listHeaderBackgroundHovered","listHeaderBackgroundPressed","actionLink","TextActive","link","TextHyperlink","linkHovered","TextHyperlinkHover","linkPressed","TextHyperlinkPressed","defaultBackground","defaultBorder","defaultContent","defaultIcon","defaultHoveredBackground","defaultHoveredBorder","StrokeCtlHover","defaultHoveredContent","defaultHoveredIcon","defaultFocusedBackground","defaultFocusedBorder","defaultFocusedContent","defaultFocusedIcon","defaultPressedBackground","defaultPressedBorder","StrokeCtlPressed","defaultPressedContent","defaultPressedIcon","defaultDisabledBackground","defaultDisabledBorder","defaultDisabledContent","defaultDisabledIcon","ghostBackground","ghostBorder","ghostContent","ghostIcon","ghostHoveredBackground","ghostHoveredBorder","ghostHoveredContent","ghostHoveredIcon","ghostFocusedBackground","ghostFocusedBorder","ghostFocusedContent","ghostFocusedIcon","ghostPressedBackground","ghostPressedBorder","ghostPressedContent","TextPressed","ghostPressedIcon","ghostDisabledBackground","ghostDisabledBorder","ghostDisabledContent","ghostDisabledIcon","brandedBackground","brandedDisabledBorder","StrokeCtlEmphasisDisabled","defaultCheckedBackground","defaultCheckedContent","defaultCheckedHoveredBackground","defaultCheckedHoveredContent","ghostCheckedBackground","BkgSelected","ghostCheckedContent","ghostCheckedHoveredBackground","ghostCheckedHoveredContent","ghostCheckedHoveredBorder","StrokeSelectedHover","ghostSecondaryContent","ghostFocusedSecondaryContent","TextSecondaryHover","ghostHoveredSecondaryContent","ghostPressedSecondaryContent","TextSecondaryPressed","getRamps","module","Object","keys","getConstants","ramps","reduce","total","colorRamp","assign","apply","__spreadArray","rampNames","map","rampValueName","index","_a","createPartialOfficeTheme","themeName","palette","__assign","colors","paletteFromOfficeColors","typography","fluentTypography","host","name","undefined","createFontAliasTokensWorker","aliasTokens","getOfficeAliasTokens","mapFontPipelineToTheme","createFontAliasTokens","memoize","win32Typography","win32Dict","sizes","defaultFluentTheme","typography","weights","families","primary","secondary","cursive","monospace","sansSerif","serif","numeric","variants","__assign","captionStandard","face","size","weight","secondaryStandard","secondarySemibold","bodyStandard","bodySemibold","subheaderStandard","subheaderSemibold","headerStandard","headerSemibold","heroStandard","heroSemibold","heroLargeStandard","heroLargeSemibold","createFontAliasTokens","import_react_native","whiteColorsPalette","Bkg","BkgHover","BkgPressed","BkgSelected","BkgSubtle","BkgSelectionHighlight","Text","TextRest","TextHover","TextPressed","TextSelected","TextDisabled","TextSelectionHighlight","TextSecondary","TextSecondaryRest","TextSecondaryHover","TextSecondaryPressed","TextSecondarySelected","TextEmphasis","TextEmphasisRest","TextEmphasisHover","TextEmphasisPressed","TextEmphasisSelected","StrokeSelectedHover","StrokeKeyboard","StrokeOverRest","StrokeOverHover","StrokeOverPressed","StrokeOverSelectedRest","StrokeOverSelectedHover","StrokeOverSelectedPressed","BkgCtl","BkgCtlHover","BkgCtlPressed","BkgCtlSelected","BkgCtlDisabled","TextCtl","TextCtlHover","TextCtlPressed","TextCtlSelected","TextCtlDisabled","StrokeCtl","StrokeCtlHover","StrokeCtlPressed","StrokeCtlSelected","StrokeCtlDisabled","StrokeCtlKeyboard","BkgCtlEmphasis","BkgCtlEmphasisHover","BkgCtlEmphasisPressed","BkgCtlEmphasisDisabled","TextCtlEmphasis","TextCtlEmphasisHover","TextCtlEmphasisPressed","TextCtlEmphasisDisabled","StrokeCtlEmphasis","StrokeCtlEmphasisHover","StrokeCtlEmphasisPressed","StrokeCtlEmphasisDisabled","StrokeCtlEmphasisKeyboard","BkgCtlSubtle","BkgCtlSubtleHover","BkgCtlSubtlePressed","BkgCtlSubtleDisabled","BkgCtlSubtleSelectionHighlight","TextCtlSubtle","TextCtlSubtlePlaceholder","TextCtlSubtleHover","TextCtlSubtlePressed","TextCtlSubtleDisabled","TextCtlSubtleSelectionHighlight","StrokeCtlSubtle","StrokeCtlSubtleHover","StrokeCtlSubtlePressed","StrokeCtlSubtleDisabled","StrokeCtlSubtleKeyboard","TextHyperlink","TextHyperlinkHover","TextHyperlinkPressed","TextActive","TextActiveHover","TextActivePressed","TextActiveSelected","StrokeOnlyHover","StrokeOnlyPressed","StrokeOnlySelected","TextError","TextErrorHover","TextErrorPressed","TextErrorSelected","ThumbToggleSwitchOff","ThumbToggleSwitchOffHover","ThumbToggleSwitchOffPressed","ThumbToggleSwitchOffDisabled","ThumbToggleSwitchOn","ThumbToggleSwitchOnHover","ThumbToggleSwitchOnPressed","ThumbToggleSwitchOnDisabled","BkgToggleSwitchOff","BkgToggleSwitchOffHover","BkgToggleSwitchOffPressed","BkgToggleSwitchOffDisabled","BkgToggleSwitchOn","BkgToggleSwitchOnHover","BkgToggleSwitchOnPressed","BkgToggleSwitchOnDisabled","StrokeToggleSwitchOff","StrokeToggleSwitchOffHover","StrokeToggleSwitchOffPressed","StrokeToggleSwitchOffDisabled","StrokeToggleSwitchOn","StrokeToggleSwitchOnHover","StrokeToggleSwitchOnPressed","StrokeToggleSwitchOnDisabled","SliderPrimary","SliderPrimaryHover","SliderPrimaryPressed","SliderPrimaryDisabled","SliderSecondary","SliderBuffer","SliderKeyboard","SliderToolTipBorder","SliderToolTipLabel","SliderToolTipBkg","AccentDark","AccentLight","AccentEmphasis","AccentOutline","TextEmphasis2","BkgCtlSubtleSelected","TextCtlSubtleSelected","BkgCtlEmphasisFocus","BkgCtlSubtleFocus","BkgCtlSubtleHoverDisabled","BkgCtlSubtleSelectedDisabled","BkgHeader","TextHeader","fallbackGetPalette","pal","__assign","fallbackOfficeModule","getPalette","getConstants","ramps","App","FluentGrays","ClassicGrays","Sepias","typography","fluentTypography","rampNames","currentHostThemeSetting","getCurrentHostThemeSetting","setCurrentHostThemeSetting","newHostThemeSetting","disableGetPalette","disabled","themeGetConstants","themingModuleConstants","themingModule","undefined","themingModuleEmitter","getThemingModule","module_1","TurboModuleRegistry","get","isInstantiated","setCurrentHostThemeSetting","getConstants","initialHostThemeSetting","__assign","getPalette","fallbackGetPalette","NativeEventEmitter","fallbackOfficeModule","handlePaletteCall","palette","exception","message","undefined","createOfficeTheme","options","_a","getThemingModule","module","emitter","ref","themeName","getCurrentHostThemeSetting","paletteName","themeRef","ThemeReference","createDefaultTheme","name","getPalette","createPartialOfficeTheme","shadows","__assign","createOfficeShadowAliasTokens","typography","win32Typography","colors","createOfficeColorAliasTokens","theme","createBrandedThemeWithAlias","host","createAliasesFromPalette","onPlatformDefaultsChanged","args","hostThemeSetting","setCurrentHostThemeSetting","invalidate","addListener","import_react","import_react_native","import_react_native","radioGroupName","defaultRadioGroupTokens","t","color","colors","menuItemText","variant","requiredColor","redForeground3","requiredPadding","globalTokens","size40","flexDirection","disabled","neutralForegroundDisabled","isHorizontal","radioGroupStates","stylingSettings","tokens","defaultRadioGroupTokens","radioGroupName","states","slotProps","root","buildProps","style","display","alignItems","flexDirection","label","alignSelf","labelText","theme","variant","__assign","color","fontStyles","from","__spreadArray","keys","required","requiredColor","paddingStart","requiredPadding","options","justifyContent","React","RadioGroupContext","createContext","value","disabled","layout","onChange","updateSelectedButtonRef","values","enabledValues","invoked","addRadioValue","removeRadioValue","addRadioEnabledValue","removeRadioEnabledValue","RadioGroupProvider","Provider","useRadioGroupContext","useContext","React","useRadioGroup","props","accessible","value","defaultValue","disabled","required","layout","onChange","isCircularNavigation","accessibilityLabel","label","accessibilityState","data","useValue","_a","useState","useRef","selectedButtonRef","setSelectedButtonRef","onSelectButtonRef","useCallback","ref","_b","invoked","setInvoked","onInvoked","check","_c","values","setValues","onAddRadioValue","__spreadArray","onRemoveRadioValue","filter","item","_d","enabledValues","setEnabledValues","onAddRadioEnabledValue","onRemoveRadioEnabledValue","state","selectedKey","onKeySelect","updateSelectedButtonRef","updateInvoked","addRadioValue","removeRadioValue","addRadioEnabledValue","removeRadioEnabledValue","selectedButtonDisabled","includes","__assign","accessibilityRole","getAccessibilityState","defaultTabbableElement","memoize","getAccessibilityStateWorker","useRadioGroupContextValue","state","__assign","radioGroupLookup","layer","state","userProps","RadioGroup","compose","__assign","displayName","radioGroupName","stylingSettings","slots","root","View","label","labelText","Text","required","options","container","FocusZone","useRender","useSlots","radioGroup","useRadioGroup","contextValue","useRadioGroupContextValue","Slots","final","children","_i","arguments","length","_a","mergeProps","props","defaultTabbableElement","isCircularNavigation","mergedProps","__rest","labelComponent","withSlots","key","isFocusZoneImplemented","includes","radioGroupContent","radioGroupContentWithFocusZone","disabled","selectedButtonDisabled","RadioGroupProvider","value","import_react_native","radioName","defaultRadioTokens","t","rootHorizontalPadding","globalTokens","size40","borderColor","colors","transparentStroke","borderStyle","borderWidth","stroke","width10","borderRadius","corner","radius40","radioBorderWidth","radioVisibility","variant","radioBorderStyle","radioBorder","neutralStrokeAccessible","color","neutralForeground3","radioOuterCircleSize","size200","radioInnerCircleSize","size100","labelMarginVertical","labelMarginRight","size20","labelMarginLeft","sizeNone","subtextVariant","subtextMarginTop","subtextMarginBottom","marginTop","size60","marginRight","marginBottom","marginLeft","flexDirection","alignItems","labelAlignItems","labelPositionBelow","disabled","neutralForegroundDisabled","hovered","neutralStrokeAccessibleHover","neutralForeground2","selected","compoundBrandStroke1Hover","radioFill","compoundBrandBackground1Hover","pressed","neutralStrokeAccessiblePressed","neutralForeground1","compoundBrandStroke1Pressed","compoundBrandBackground1Pressed","focused","compoundBrandStroke1","radioStates","stylingSettings","tokens","defaultRadioTokens","radioName","states","slotProps","root","buildProps","style","display","alignItems","flexDirection","paddingHorizontal","rootHorizontalPadding","paddingVertical","rootVerticalPadding","android_ripple","color","rippleColor","button","backgroundColor","radioOuterCircleBackground","width","radioOuterCircleSize","height","justifyContent","borderWidth","radioBorderWidth","borderStyle","radioBorderStyle","borderRadius","borderColor","radioBorder","marginTop","marginRight","marginBottom","marginLeft","radius","rippleRadius","borderless","innerCircle","opacity","radioVisibility","radioInnerCircleSize","radioFill","labelContent","theme","__assign","labelAlignItems","labelMarginRight","labelMarginLeft","padding","labelPadding","paddingRight","borderStyles","from","__spreadArray","keys","checkmark","label","variant","marginVertical","labelMarginVertical","marginHorizontal","fontStyles","subtext","subtextVariant","subtextMarginTop","subtextMarginBottom","React","defaultAccessibilityActions","name","useRadio","props","defaultComponentRef","useRef","radioGroupContext","useRadioGroupContext","label","subtext","value","disabled","_a","labelPosition","undefined","layout","accessibilityActions","accessibilityLabel","accessibilityHint","accessibilityState","_b","componentRef","accessibilityPositionInSet","accessibilitySetSize","enableFocusRing","rest","__rest","isDisabled","buttonRef","useViewCommandFocus","changeSelection","useCallback","onChange","updateSelectedButtonRef","useEffect","changeSelectionWithFocus","useOnPressWithFocus","pressable","usePressableState","__assign","onPress","onFocus","accessibilityActionsProp","useMemo","__spreadArray","onAccessibilityAction","event","nativeEvent","actionName","state","selected","labelPositionBelow","ref","accessibilityRole","getAccessibilityState","values","findIndex","x","length","focusable","memoize","getAccessibilityStateWorker","radioLookup","layer","state","userProps","Radio","compose","__assign","displayName","radioName","stylingSettings","slots","root","Pressable","button","innerCircle","View","labelContent","label","Text","subtext","useRender","useSlots","radio","useRadio","Slots","props","final","_a","mergeProps","mergedProps","__rest","onPress","disabled","onPressIn","onPressOut","isMobile","labelComponent","withSlots","accessible","focusable","import_react_native","useSharedStyles","StyleSheet","create","headerText","fontSize","fontWeight","ReactNativeComponent","settingsPane","dropdownList","TabKey","Appearance","Control","Validation","DropdownAppearanceStyle","Pill","Text","DropdownShowDropdownArrowSetting","Always","CellActive","DropdownListItemMode","Manual","FormulaRange","import_jsx_runtime","strings","require","AppearanceSection","sharedStyles","useSharedStyles","_jsx","View","children","_jsxs","style","paddingLeft","paddingTop","Text","accessibilityLabel","getString","accessibilityRole","headerText","RadioGroup","defaultValue","DropdownAppearanceStyle","Pill","Radio","label","value","DropdownShowDropdownArrowSetting","Always","CellActive","import_react","import_react_native","buttonName","React","import_react_native","import_react_native","import_react_native","import_assert_never","activityIndicatorName","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","diameterSizeMap","xSmall","small","medium","large","xLarge","coreSizeFromFluentSize","fluentSize","assertNever","stylingSettings","tokens","activityIndicatorColor","Appearance","getColorScheme","lineThickness","size","activityIndicatorName","tokensThatAreAlsoProps","slotProps","root","buildProps","accessibilityLabel","accessible","style","width","diameterSizeMap","height","svg","coreStylingSettings","__assign","color","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","ActivityIndicator","compose","displayName","activityIndicatorName","coreStylingSettings","slots","root","CoreActivityIndicator","useRender","props","useSlots","Slots","withSlots","import_react_native","margins","marginTop","marginBottom","marginStart","marginEnd","getTextMarginAdjustment","defaultButtonColorTokens","t","backgroundColor","colors","neutralBackground2","color","neutralForeground2","borderColor","neutralStroke2","iconColor","disabled","neutralForegroundDisabled","neutralStrokeDisabled","hovered","pressed","neutralBackground2Pressed","focused","icon","primary","brandBackground","neutralForegroundOnBrand","brandStroke1","neutralBackgroundDisabled","neutralForegroundOnBrandHover","brandBackgroundPressed","neutralForegroundOnBrandPressed","subtle","subtleBackground","brandForeground1","transparentStroke","brandForeground1Disabled","transparentStrokeDisabled","isHighContrast","subtleBackgroundHover","brandForeground1Hover","subtleBackgroundPressed","brandForeground1Pressed","defaultButtonFontTokens","_t","medium","hasContent","variant","small","large","defaultButtonTokens","block","width","medium","padding","globalTokens","size60","stroke","width10","borderWidth","iconSize","focused","hasContent","minWidth","paddingHorizontal","size120","hasIconAfter","spacingIconContentAfter","hasIconBefore","spacingIconContentBefore","small","size40","minHeight","size80","large","size160","rounded","borderRadius","corner","radius40","circular","radiusCircular","square","radiusNone","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__spreadArray","to","from","pack","l","ar","Array","slice","concat","buttonStates","stylingSettings","tokens","defaultButtonTokens","defaultButtonFontTokens","defaultButtonColorTokens","buttonName","states","slotProps","root","buildProps","theme","style","display","overflow","alignItems","flexDirection","alignSelf","justifyContent","width","backgroundColor","borderStyles","layoutStyles","android_ripple","color","rippleColor","keys","content","contentStyling","fontStyles","icon","iconColor","height","iconSize","focusInnerBorder","position","borderWidth","borderInnerWidth","borderColor","borderInnerColor","borderRadius","borderInnerRadius","getDefaultSize","getPlatformSpecificAppearance","appearance","hasDifferentDefaultAppearance","contentColor","fontStylesTokens","textAdjustment","getTextMarginAdjustment","spacingIconContentBefore","marginStart","spacingIconContentAfter","marginEnd","React","import_react_native","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","isProcessingKeyboardInvocation","useButton","props","defaultComponentRef","useRef","accessible","accessibilityRole","_a","componentRef","undefined","disabled","onBlur","onClick","onLayout","loading","enableFocusRing","focusable","rest","__rest","isDisabled","focusRef","onClickWithFocus","useOnPressWithFocus","onBlurInner","useCallback","e","pressable","usePressableState","__assign","onPress","onKeyDown","nativeEvent","key","onKeyPress","onKeyProps","useKeyProps","hasTogglePattern","accessibilityActions","find","action","name","theme","useFluentTheme","shouldUseTwoToneFocusBorder","_b","useState","baseHeight","setBaseHeight","_c","baseWidth","setBaseWidth","onLayoutInner","onAccessibilityTap","accessibilityLabel","ref","useViewCommandFocus","iconPosition","state","pressed","measuredWidth","measuredHeight","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","buttonLookup","layer","state","userProps","getPlatformSpecificAppearance","getDefaultSize","loading","iconOnly","icon","iconPosition","Button","compose","displayName","buttonName","stylingSettings","slots","root","Pressable","rippleContainer","focusInnerBorder","Icon","content","Text","useRender","useSlots","button","useButton","iconProps","createIconProps","Slots","final","children","_i","_a","mergeProps","props","accessibilityLabel","mergedProps","shouldShowIcon","childText","undefined","Children","forEach","child","label","buttonContent","withSlots","Fragment","ActivityIndicator","accessible","map","key","hasRipple","focused","measuredHeight","measuredWidth","shouldUseTwoToneFocusBorder","style","getFocusBorderStyle","focusable","getFocusBorderStyleWorker","height","width","adjustment","memoize","React","MenuContext","createContext","isControlled","checked","defaultChecked","hasCheckmarks","hasIcons","hasTooltips","isSubmenu","open","onCheckedChange","setOpen","shouldFocusOnContainer","undefined","triggerRef","hasMaxHeight","hasMaxWidth","MenuProvider","Provider","useMenuContext","useContext","React","MenuListContext","createContext","isCheckedControlled","checked","hasCheckmarks","hasIcons","hasTooltips","onCheckedChange","onArrowClose","addRadioItem","removeRadioItem","trackMenuItem","untrackMenuItem","MenuListProvider","Provider","useMenuListContext","useContext","import_react","MenuTriggerContext","React","createContext","MenuTriggerProvider","Provider","useMenuTriggerContext","useContext","import_react","menuName","AndroidMenuStates","import_react","renderFinalMenu","childrenArray","contextValue","state","menuTrigger","menuPopover","React","createElement","MenuProvider","value","open","shouldFocusOnContainer","undefined","import_react","import_react_native","delayOpen","useMenu","props","triggerRef","React","useRef","context","useMenuContext","isSubmenu","isOpenControlled","open","_a","useMenuOpenState","setOpen","shouldFocusOnContainer","_b","useMenuCheckedState","checked","onCheckedChange","openOnHover","parentPopoverHoverOutTimer","popoverHoverOutTimer","undefined","__assign","isControlled","parentSetOpen","defaultOpen","onOpenChange","initialState","useState","openInternal","setOpenInternal","setShouldFocusOnContainer","state","lastCloseTimestampRef","useCallback","e","isOpen","bubble","openPrev","current","Date","now","defaultChecked","onCheckedChangeOriginal","checkedInternal","setCheckedInternal","import_react","useMenuContextValue","state","_a","React","useState","triggerHoverOutTimer","setTriggerHoverOutTimer","_b","popoverHoverOutTimer","setPopoverHoverOutTimer","__assign","Menu","stagedComponent","props","state","useMenu","contextValue","useMenuContextValue","_rest","children","childrenArray","React","Children","toArray","renderFinalMenu","displayName","menuName","React","menuTriggerName","import_react","import_react_native","React","useMergedRefs","refs","_i","arguments","length","mergedCallback","useCallback","value","current","refs_1","ref","__spreadArray","import_react_native","hoverDelayDefault","baseAccessibilityActions","expandedState","expanded","collapsedState","useMenuTrigger","childProps","context","useMenuContext","_a","hoverDelay","undefined","hoverDelayDefault","open","openOnHover","popoverHoverOutTimer","setOpen","setTriggerHoverOutTimer","triggerHoverOutTimer","triggerRef","childAccessibilityActions","accessibilityActions","childAccessibilityState","accessibilityState","childOnAccessibilityAction","onAccessibilityAction","childAccessibilityPositionInSet","accessibilityPositionInSet","childAccessibilitySetSize","accessibilitySetSize","childOnClick","onClick","childOnHoverIn","onHoverIn","childOnHoverOut","onHoverOut","childComponentRef","componentRef","React","useMemo","__spreadArray","baseState","__assign","useCallback","e","clearTimeout","persist","setTimeout","timer","ref","useMergedRefs","props","hasSubmenu","isSubmenu","MenuTrigger","props","menuTrigger","useMenuTrigger","children","revised","cloneElement","__assign","tooltip","alwaysShowToolTip","createElement","MenuTriggerProvider","value","hasSubmenu","displayName","menuTriggerName","import_react","import_react_native","menuPopoverName","useMenuPopoverTokens","buildUseTokens","t","borderWidth","borderRadius","borderColor","isHighContrast","colors","neutralStroke1","getCurrentAppearance","host","appearance","neutralStroke3","transparentStroke","menuPopoverName","import_react","import_react_native","controlledDismissBehaviors","stopPropagationKeys","useMenuPopover","props","_a","_b","context","useMenuContext","setOpen","triggerRef","isControlled","isSubmenu","openOnHover","parentPopoverHoverOutTimer","popoverHoverOutTimer","setPopoverHoverOutTimer","shouldFocusOnContainer","triggerHoverOutTimer","onKeyDownProp","onKeyDown","onKeyUpProp","onKeyUp","onDismiss","React","useCallback","undefined","call","dismissBehaviors","directionalHint","getDirectionalHint","I18nManager","isRTL","setInitialFocus","doNotTakePointerCapture","accessibilityRole","onMouseEnter","clearTimeout","onMouseLeave","timer","setTimeout","e","includes","nativeEvent","key","stopPropagation","_c","useState","canFocusOnPopover","setCanFocusOnPopover","onBlur","useEffect","target","onShow","innerView","accessible","focusable","isRtl","import_react","calloutName","React","import_react_native","settings","tokens","backgroundColor","borderColor","borderWidth","borderRadius","directionalHint","root","style","position","calloutName","import_CalloutNativeComponent","import_MacOSCalloutNativeComponent","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","NativeCalloutView","FRNCalloutNativeComponent","Callout","compose","displayName","calloutName","usePrepareProps","props","useStyling","componentRef","target","rest","useImperativeHandle","blurWindow","current","Commands","nativeComponentRef","focusWindow","useRef","_a","useState","nativeTarget","setNativeTarget","useLayoutEffect","findNodeHandle","slotProps","mergeSettings","root","ref","settings","slots","styles","backgroundColorTokens","borderTokens","menuCalloutName","MenuCallout","stagedComponent","props","_rest","children","mergedProps","mergeProps","React","createElement","Callout","__assign","displayName","menuCalloutName","MenuPopover","compressible","props","useTokens","_a","directionalHint","gapSpace","maxHeight","maxWidth","minWidth","minPadding","borderWidth","borderColor","backgroundColor","state","useMenuPopover","theme","useFluentTheme","context","useMenuContext","_b","tokens","cache","hasMaxHeight","undefined","patchTokens","final","children","mergedProps","mergeProps","innerViewProps","innerView","content","React","createElement","View","MenuCallout","__assign","useMenuPopoverTokens","displayName","menuPopoverName","import_react_native","import_react_native_svg","import_react_native","menuItemName","defaultMenuItemTokens","t","backgroundColor","colors","transparentBackground","borderRadius","checkmarkSize","color","neutralForeground1","fontFamily","typography","families","primary","fontSize","fontWeight","globalTokens","font","weight","regular","gap","size40","iconColor","iconSize","paddingHorizontal","paddingVertical","submenuIndicatorColor","submenuIndicatorPadding","sizeNone","submenuIndicatorSize","focused","menuItemBackgroundHovered","menuItemTextHovered","pressed","menuItemBackgroundPressed","disabled","menuBackground","disabledText","menuItemStates","stylingSettings","tokens","defaultMenuItemTokens","menuItemName","states","slotProps","root","buildProps","theme","style","__assign","alignItems","backgroundColor","display","flexDirection","layoutStyles","from","borderStyles","__spreadArray","keys","checkmark","height","checkmarkSize","width","marginEnd","gap","content","color","flexGrow","fontStyles","iconPlaceholder","minHeight","iconSize","minWidth","justifyContent","imgIcon","tintColor","iconColor","fontOrSvgIcon","size","submenuIndicator","submenuIndicatorColor","submenuIndicatorSize","viewBox","concat","React","import_react_native","import_react","import_react_native","radioItems","addRadioItem","name","push","removeRadioItem","filter","item","platformsWithoutFocusOnDisabled","handledKeys","useMenuList","_props","_a","_b","context","useMenuContext","defaultChecked","onCheckedChangeOriginal","onCheckedChange","checkedOriginal","checked","isSubmenu","setOpen","triggerRef","checkedMap","React","useMemo","state","_i","checkedOriginal_1","length","key","_c","useState","initialChecked","initialChecked_1","checkedInternal","setCheckedInternal","isCheckedControlled","useCallback","e","name","isChecked","updatedChecked","__assign","Object","keys","selectRadio","checkedName","radioItems","includes","onArrowClose","undefined","current","focus","trackedMenuItems","trackMenuItem","item","push","untrackMenuItem","splice","findIndex","x","ref","onListKeyDown","nativeEvent","handledKeys","increment","idx","platformsWithoutFocusOnDisabled","disabled","useEffect","clearTimeout","triggerHoverOutTimer","focusZoneRef","useRef","setFocusZoneFocus","props","onMouseLeave","onKeyDown","addRadioItem","removeRadioItem","hasMaxHeight","hasMaxWidth","useMenuItemTracking","useMenuListContext","triggerKeys","submenuTriggerKeys","__spreadArray","useMenuItem","props","defaultComponentRef","useRef","accessible","onClick","accessibilityState","_a","componentRef","undefined","_b","disabled","persistOnClick","rest","__rest","_c","useMenuContext","isSubmenu","persistOnItemClick","setOpen","_d","useMenuListContext","hasCheckmarks","hasIcons","hasTooltips","onArrowClose","isTrigger","useMenuTriggerContext","shouldPersist","hasSubmenu","onInvoke","useCallback","e","isRtl","I18nManager","isRTL","isArrowKey","isKeyPressEvent","nativeEvent","key","isArrowOpen","current","blur","isArrowClose","pressable","usePressableState","__assign","onPress","itemRef","useViewCommandFocus","keys","onKeyDownProps","useKeyDownProps","apply","useHoverFocusEffect","state","hovered","_e","useState","enableFocusRing","setEnableFocusRing","onHoverIn","focused","onFocus","useMenuItemTracking","accessibilityRole","onAccessibilityTap","getAccessibilityState","focusable","ref","memoize","getAccessibilityStateWorker","useLayoutEffect","focus","MenuItem","compose","__assign","displayName","menuItemName","stylingSettings","slots","root","Pressable","checkmark","View","content","Text","iconPlaceholder","imgIcon","Image","fontOrSvgIcon","Icon","submenuIndicator","SvgXml","useRender","userProps","useSlots","menuItem","useMenuItem","Slots","layer","state","final","children","_a","mergeProps","props","accessibilityLabel","icon","tooltip","mergedProps","__rest","chevronXml","I18nManager","isRTL","label","getAccessibilityLabel","tooltipResult","getTooltip","hasTooltips","withSlots","hasCheckmarks","accessible","hasIcons","source","svgSource","fontSource","alwaysShowToolTip","hasSubmenu","xml","getAccessibilityLabelWorker","child","undefined","memoize","getTooltipWorker","import_react","import_react_native","import_react_native","menuListName","defaultMenuListTokens","t","padding","backgroundColor","colors","transparentBackground","gap","globalTokens","size20","menuListStates","stylingSettings","tokens","defaultMenuListTokens","menuListName","states","slotProps","root","buildProps","theme","style","__assign","backgroundColor","display","layoutStyles","from","gap","__spreadArray","keys","useMenuListContextValue","state","__assign","hasCheckmarks","props","hasIcons","hasTooltips","MenuStack","stagedComponent","props","gap","rest","__rest","final","children","React","Children","map","child","index","isValidElement","cloneElement","mergeProps","style","marginTop","withSlots","View","__assign","displayName","shouldHaveFocusZone","includes","hasCircularNavigation","menuListLookup","layer","state","userProps","MenuList","compose","__assign","displayName","menuListName","stylingSettings","slots","root","MenuStack","scrollView","ScrollView","focusZone","shouldHaveFocusZone","FocusZone","React","Fragment","useRender","useSlots","menuList","useMenuList","menuListContextValue","useMenuListContextValue","Slots","props","_final","children","itemCount","Children","toArray","filter","child","isValidElement","type","length","itemPosition","childrenWithSet","map","_a","_b","cloneElement","accessibilityPositionInSet","undefined","accessibilitySetSize","tooltip","alwaysShowToolTip","shouldHaveScrollView","ScrollViewWrapper","content","withSlots","showsVerticalScrollIndicator","hasMaxHeight","showsHorizontalScrollIndicator","hasMaxWidth","componentRef","focusZoneRef","focusZoneDirection","defaultTabbableElement","enableFocusRing","isCircularNavigation","hasCircularNavigation","tabKeyNavigation","MenuListProvider","value","import_react","import_react_native_svg","import_jsx_runtime","ChevronDown16Regular","props","_jsx","Svg","width","height","viewBox","fill","children","Path","d","color","ChevronDown16Icon","chevronDown16SvgProps","svgSource","src","import_react","import_react_native_svg","import_jsx_runtime","Settings16Regular","props","_jsx","Svg","width","height","viewBox","fill","children","Path","d","color","SettingsIcon","settingsIconSvgProps","svgSource","src","import_react","import_react_native","import_debounce","import_react","import_react_native_svg","import_jsx_runtime","Add16Regular","props","_jsx","Svg","width","height","viewBox","fill","children","Path","d","color","AddIcon","addIconSvgProps","svgSource","src","import_react","import_react_native_svg","import_jsx_runtime","ArrowUp12Regular","props","_jsx","Svg","width","height","viewBox","fill","children","Path","d","color","ArrowUpIcon","arrowUpSvgProps","svgSource","src","import_react","import_react_native_svg","import_jsx_runtime","ArrowDown12Regular","props","_jsx","Svg","width","height","viewBox","fill","children","Path","d","color","ArrowDownIcon","arrowDownSvgProps","svgSource","src","import_react","import_react_native_svg","import_jsx_runtime","ChevronDown12Regular","props","_jsx","Svg","width","height","viewBox","fill","children","Path","d","color","ChevronDown12Icon","chevronDown12SvgProps","svgSource","src","import_react","import_react_native_svg","import_jsx_runtime","Delete16Regular","props","_jsx","Svg","width","height","viewBox","fill","children","Path","d","color","DeleteIcon","deleteSvgProps","svgSource","src","import_office_excel_incellcontrol","import_react_native","useDropdownValuesListStyles","theme","useTheme","StyleSheet","create","colorPickerButton","width","borderRadius","marginRight","paddingVertical","flexDirection","alignItems","justifyContent","dropdownValuesListView","marginVertical","itemListButton","aspectRatio","padding","itemTextInputView","backgroundColor","colors","inputBackground","borderColor","inputBorder","borderWidth","paddingLeft","flexGrow","itemTextInput","fontSize","addItemButton","height","left","marginHorizontal","addItemText","marginLeft","addItemContainer","marginTop","DropdownValuesListStyles_default","import_react","import_react_native","numberToHex","hexNumber","repeat","length","import_react_native","PillStyles","StyleSheet","create","pill","flexDirection","alignItems","paddingVertical","paddingHorizontal","borderRadius","alignSelf","maxWidth","roundPill","width","aspectRatio","text","color","fontWeight","fakeIconSpace","height","marginRight","icon","Pill_styles_default","DEFAULT_FILL_COLOR","DEFAULT_TEXT_COLOR","DEFAULT_OUTLINE_COLOR","import_jsx_runtime","numberToHexColor","color","defaultColor","hex","toString","numberToHex","Pill","_ref","text","icon","fillColor","textColor","outlineColor","fontSize","isRound","appliedFillColor","DEFAULT_FILL_COLOR","appliedTextColor","DEFAULT_TEXT_COLOR","appliedOutlineColor","DEFAULT_OUTLINE_COLOR","_jsxs","View","accessible","accessibilityLabel","accessibilityRole","style","PillStyles","roundPill","pill","backgroundColor","borderColor","borderWidth","children","_jsx","Image","source","uri","fakeIconSpace","Text","numberOfLines","ellipsizeMode","Pill_default","import_jsx_runtime","strings","require","DropdownValuesList","props","_useState","useState","_useState2","_slicedToArray","itemList","setItemList","_useState3","_useState4","idCounter","setIdCounter","dropdownValuesListStyles","useDropdownValuesListStyles","debouncedDelayTimer","pillFillColor","pillTextColor","items","onUpdateControl","useEffect","convertToItemData","itemDisplayData","index","id","text","displayText","convertedItems","map","length","debouncedHandleUpdateControl","useMemo","debounce","updatedItems","controlData","type","ControlType","dropdown","properties","listItems","item","itemValue","cancel","handleUpdateControl","handleAddItem","newItem","concat","_toConsumableArray","handleUpdateText","hasItemChanged","Object","assign","handleDeleteItem","filter","moveItem","fromIndex","toIndex","_updatedItems$splice","splice","_updatedItems$splice2","movedItem","moveItemUp","moveItemDown","isFirstItem","isLastItem","renderItem","_ref","_jsxs","View","style","dropdownValuesListView","children","Button","appearance","accessibilityRole","accessibilityHint","getString","shape","iconOnly","colorPickerButton","_jsx","Pill","fillColor","textColor","outlineColor","fontSize","isRound","Icon","svgSource","chevronDown12SvgProps","itemTextInputView","TextInput","itemTextInput","onChangeText","value","disabled","onClick","marginLeft","marginRight","opacity","itemListButton","arrowUpSvgProps","arrowDownSvgProps","deleteSvgProps","FlatList","data","addItemContainer","addItemButton","addIconSvgProps","Text","addItemText","import_react_native","useControlSectionStyles","StyleSheet","create","controlView","paddingLeft","paddingTop","selectedControlMenu","width","marginBottom","marginRight","fontSize","borderWidth","alignSelf","flexDirection","justifyContent","selectedControlText","selectedControlPopoverMenu","selectedItemModeButton","height","borderRadius","marginHorizontal","padding","alignItems","itemsHeaderView","marginVertical","menuWrapper","marginTop","ControlSectionStyles_default","import_office_excel_incellcontrol","import_jsx_runtime","strings","require","ControlSection","props","_props$items","controlSectionStyles","useControlSectionStyles","SharedStyles","useSharedStyles","_React$useState","React","useState","ControlType","empty","_React$useState2","_slicedToArray","selectedControl","setSelectedControl","_React$useState3","DropdownListItemMode","Manual","_React$useState4","selectedItemMode","setSelectedItemMode","useEffect","type","onControlSelect","controlData","onUpdateControl","then","result","onItemModeSelect","item","_jsxs","View","style","controlView","children","_jsx","Text","accessibilityRole","accessibilityLevel","headerText","getString","menuWrapper","Menu","MenuTrigger","Button","accessibilityLabel","String","selectedControlMenu","selectedControlText","Icon","svgSource","chevronDown16SvgProps","MenuPopover","MenuList","MenuItem","onClick","checkbox","dropdown","_Fragment","itemsHeaderView","checked","accessibilityHint","selectedItemModeButton","settingsIconSvgProps","FormulaRange","DropdownValuesList","items","import_react","import_react_native","checkboxName","import_react_native","Checkbox","compose","displayName","checkboxName","slots","root","View","useRender","_props","_useSlots","console","warn","_rest","import_react_native","useValidationSectionStyles","theme","useTheme","StyleSheet","create","checkboxContainer","flexDirection","alignItems","checkboxText","fontSize","descriptionTextInputView","backgroundColor","colors","inputBackground","width","height","borderWidth","borderRadius","titleTextInputView","ValidationSectionStyles_default","import_jsx_runtime","strings","require","ValidationSection","sharedStyles","useSharedStyles","validationSectionStyles","useValidationSectionStyles","_jsxs","View","style","paddingLeft","paddingTop","children","checkboxContainer","_jsx","Checkbox","accessibilityLabel","getString","accessibilityRole","Text","checkboxText","headerText","titleTextInputView","TextInput","descriptionTextInputView","multiline","import_react_native","SettingsPaneUI_styles_default","StyleSheet","create","rootBackgroundContainer","position","start","top","end","bottom","rootView","import_jsx_runtime","strings","require","SettingsPaneUI","_React$Component","props","_this","_classCallCheck","_callSuper","state","selectedTab","TabKey","Control","onTabSelect","key","setState","_inherits","_createClass","value","_this$props","type","items","onUpdateControl","_jsx","ControlSection","Appearance","AppearanceSection","Validation","ValidationSection","ThemeProvider","theme","createOfficeTheme","children","View","style","SettingsPaneStyles","rootView","RootBackgroundContainer","_jsxs","SafeAreaView","TabList","accessibilityRole","selectedKey","size","Tab","tabKey","getString","renderSelectedTab","Component","RootBackgroundContainer","_ref","children","_jsx","FocusZone","style","SettingsPaneStyles","rootBackgroundContainer","import_jsx_runtime","SettingsPaneApp","_ref","hostService","store","configureStore","React","useEffect","dispatch","loadControlDataAsync","setReloadControlDataCallback","_jsx","Provider","children","ConnectedSettingsPaneUI","mapStateToProps","state","_state$controlData$pr","_state$controlData$pr2","type","controlData","items","properties","listItems","undefined","map","item","Object","assign","displayText","itemValue","mapDispatchToProps","onRefresh","onUpdateControl","updateControlDataAsync","connect","SettingsPaneUI","React","import_react","import_react_native","import_react","import_react_native","DropdownListItemStyles","StyleSheet","create","fullWidthButton","width","backgroundColor","borderWidth","margin","padding","alignItems","marginVertical","itemContainer","flex","justifyContent","hoveredItemBackground","selectedItemBackground","DropdownListItem_styles_default","import_jsx_runtime","alignmentMap","start","center","end","DropdownListItem","_ref","text","icon","fillColor","textColor","outlineColor","fontSize","isSelected","onFocus","_ref$alignment","alignment","undefined","_useState","useState","_useState2","_slicedToArray","isHovering","setIsHovering","_useState3","_useState4","isFocused","setIsFocused","handleClick","handlePointerEnter","handlePointerLeave","handleFocusIn","handleFocusOut","finalStyle","DropdownListItemStyles","fullWidthButton","hoveredItemBackground","selectedItemBackground","justifyContent","_jsx","Button","onClick","onBlur","onHoverIn","onHoverOut","accessibilityLabel","accessibilityRole","enableFocusRing","appearance","style","children","Pill","isRound","DropdownListItem_default","import_react","import_react_native_svg","import_react_native","DropdownListEditButtonStyle","StyleSheet","create","buttonStyle","backgroundColor","borderWidth","padding","height","width","alignSelf","justifyContent","alignItems","icon","DropdownListEditButton_styles_default","import_jsx_runtime","strings","require","DropdownListEditButton","_ref","svgIcon","onPress","handlePress","_jsx","Button","onClick","style","DropdownListEditButtonStyle","buttonStyle","accessibilityLabel","getString","accessibilityRole","focusable","children","SvgXml","xml","width","height","icon","DropdownListEditButton_default","import_reka","ServiceInfos","IInCellControlDataService","invokeTaskpane","NativeServices","RekaServiceRegistry","getNativeService","InvokeTaskpane","_InvokeTaskpane","apply","arguments","_asyncToGenerator","NativeServices","IInCellControlDataService","invokeTaskpane","import_react_native","DropdownListStyle","StyleSheet","create","parentFocusZone","container","borderWidth","borderColor","borderRadius","padding","overflow","listContent","paddingBottom","DropdownList_styles_default","DropdownListFormattingProps","fontSize","minWidth","import_jsx_runtime","DropdownList","props","fontSize","DropdownListFormattingProps","minWidth","_useState","useState","_useState2","_slicedToArray","containerWidth","setContainerWidth","_useState3","_useState4","selectedIndex","setSelectedIndex","_useState5","_useState6","listItems","setListItems","useEffect","_props$items","convertedItems","items","map","item","ItemValue","displayText","Icon","FillColor","TextColor","OutlineColor","length","TEXT_FACTOR","BASE_EXTRA","ICON_EXTRA","widestItemWidth","Math","max","apply","_toConsumableArray","textLength","iconPadding","buttonHeight","handleButtonPress","InvokeTaskpane","svgIcon","handleItemFocus","useCallback","index","_jsxs","View","style","DropdownListStyle","container","width","maxHeight","children","_jsx","FocusZone","focusZoneDirection","isCircularNavigation","parentFocusZone","FlatList","data","renderItem","_ref","DropdownListItem","text","icon","fillColor","textColor","outlineColor","isSelected","onFocus","keyExtractor","contentContainerStyle","listContent","showsVerticalScrollIndicator","DropdownListEditButton","onPress","DropdownList_default","import_jsx_runtime","DropdownListApp","_ref","hostService","store","configureStore","React","useEffect","dispatch","loadDropdownDataAsync","_jsx","Provider","children","ConnectedDropdownListUI","mapStateToProps","state","_state$controlData$pr","_state$controlData$pr2","items","controlData","properties","listItems","undefined","map","item","Object","assign","displayText","itemValue","mapDispatchToProps","onRefresh","connect","DropdownList","import_excel_telemetry","InCellControlTelemetryLogger","_classCallCheck","_createClass","key","value","activityName","TelemetryLogger","createActivity","import_excel_telemetry","import_jsx_runtime","SdxInCellControl","_ref","props","Object","assign","_objectDestructuringEmpty","initializeTelemetry","telemetryTokenTree","inCellControlTelemetryNamespace","hostContext","reloadControlDataCallback","useRef","dataSource","createDataSource","controlId","undefined","current","componentName","hostService","loadControlData","loadDropdownData","updateControlData","subscribeToEvents","setReloadControlDataCallback","reloadControlData","createTelemetryActivity","telemetryActivityName","activity","InCellControlTelemetryLogger","createActivity","ReactNativeComponent","settingsPane","_jsx","SettingsPaneApp","dropdownList","DropdownListApp","import_reka_react_native","import_office_excel_incellcontrol","import_jsx_runtime","InCellControlNativeRoot","props","_jsx","SdxInCellControl","Object","assign","createInCellControlNativeRoot","componentProps","InCellControlComponent","AppRegistry","registerComponent","componentName","ReactNativeComponent","settingsPane","createDataSource","createRichApiDataSource","dropdownList","initReka"],"file":"index.macos.jsbundle.js"}