@optimizely/ocp-local-env 1.0.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +51 -0
- package/dist/package.json +112 -0
- package/dist/public/bundle.82dc5d29fffb9f205051.js +3 -0
- package/dist/public/bundle.82dc5d29fffb9f205051.js.LICENSE.txt +92 -0
- package/dist/public/bundle.82dc5d29fffb9f205051.js.map +1 -0
- package/dist/public/index.html +1 -0
- package/dist/src/cli.d.ts +2 -0
- package/dist/src/cli.js +115 -0
- package/dist/src/cli.js.map +1 -0
- package/dist/src/executor/DestinationExecutor.d.ts +19 -0
- package/dist/src/executor/DestinationExecutor.js +72 -0
- package/dist/src/executor/DestinationExecutor.js.map +1 -0
- package/dist/src/executor/FunctionExecutor.d.ts +67 -0
- package/dist/src/executor/FunctionExecutor.js +189 -0
- package/dist/src/executor/FunctionExecutor.js.map +1 -0
- package/dist/src/executor/JobExecutor.d.ts +79 -0
- package/dist/src/executor/JobExecutor.js +215 -0
- package/dist/src/executor/JobExecutor.js.map +1 -0
- package/dist/src/executor/LifecycleExecutor.d.ts +64 -0
- package/dist/src/executor/LifecycleExecutor.js +167 -0
- package/dist/src/executor/LifecycleExecutor.js.map +1 -0
- package/dist/src/executor/SourceExecutor.d.ts +32 -0
- package/dist/src/executor/SourceExecutor.js +163 -0
- package/dist/src/executor/SourceExecutor.js.map +1 -0
- package/dist/src/executor/watcher.d.ts +62 -0
- package/dist/src/executor/watcher.js +213 -0
- package/dist/src/executor/watcher.js.map +1 -0
- package/dist/src/functions/hello.d.ts +4 -0
- package/dist/src/functions/hello.js +8 -0
- package/dist/src/functions/hello.js.map +1 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +9 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/jobs/dailyJob.d.ts +4 -0
- package/dist/src/jobs/dailyJob.js +8 -0
- package/dist/src/jobs/dailyJob.js.map +1 -0
- package/dist/src/local_engine/LocalFunctionApi.d.ts +17 -0
- package/dist/src/local_engine/LocalFunctionApi.js +54 -0
- package/dist/src/local_engine/LocalFunctionApi.js.map +1 -0
- package/dist/src/local_engine/LocalJobApi.d.ts +67 -0
- package/dist/src/local_engine/LocalJobApi.js +205 -0
- package/dist/src/local_engine/LocalJobApi.js.map +1 -0
- package/dist/src/local_engine/LocalNotifier.d.ts +9 -0
- package/dist/src/local_engine/LocalNotifier.js +26 -0
- package/dist/src/local_engine/LocalNotifier.js.map +1 -0
- package/dist/src/local_engine/local-engine-child-base.d.ts +110 -0
- package/dist/src/local_engine/local-engine-child-base.js +607 -0
- package/dist/src/local_engine/local-engine-child-base.js.map +1 -0
- package/dist/src/local_engine/local-engine-client.d.ts +161 -0
- package/dist/src/local_engine/local-engine-client.js +888 -0
- package/dist/src/local_engine/local-engine-client.js.map +1 -0
- package/dist/src/local_engine/local-engine-types.d.ts +245 -0
- package/dist/src/local_engine/local-engine-types.js +6 -0
- package/dist/src/local_engine/local-engine-types.js.map +1 -0
- package/dist/src/local_engine/local-engine-unified.d.ts +71 -0
- package/dist/src/local_engine/local-engine-unified.js +723 -0
- package/dist/src/local_engine/local-engine-unified.js.map +1 -0
- package/dist/src/local_engine/local-engine-utils.d.ts +68 -0
- package/dist/src/local_engine/local-engine-utils.js +219 -0
- package/dist/src/local_engine/local-engine-utils.js.map +1 -0
- package/dist/src/local_engine/localSDKConfig.d.ts +40 -0
- package/dist/src/local_engine/localSDKConfig.js +247 -0
- package/dist/src/local_engine/localSDKConfig.js.map +1 -0
- package/dist/src/local_engine/storage/BaseKVStoreWrapper.d.ts +37 -0
- package/dist/src/local_engine/storage/BaseKVStoreWrapper.js +110 -0
- package/dist/src/local_engine/storage/BaseKVStoreWrapper.js.map +1 -0
- package/dist/src/local_engine/storage/LocalConfigStore.d.ts +74 -0
- package/dist/src/local_engine/storage/LocalConfigStore.js +178 -0
- package/dist/src/local_engine/storage/LocalConfigStore.js.map +1 -0
- package/dist/src/local_engine/storage/LocalJobStore.d.ts +111 -0
- package/dist/src/local_engine/storage/LocalJobStore.js +249 -0
- package/dist/src/local_engine/storage/LocalJobStore.js.map +1 -0
- package/dist/src/local_engine/storage/LocalKVStore.d.ts +106 -0
- package/dist/src/local_engine/storage/LocalKVStore.js +1061 -0
- package/dist/src/local_engine/storage/LocalKVStore.js.map +1 -0
- package/dist/src/local_engine/storage/LocalNotificationStore.d.ts +28 -0
- package/dist/src/local_engine/storage/LocalNotificationStore.js +149 -0
- package/dist/src/local_engine/storage/LocalNotificationStore.js.map +1 -0
- package/dist/src/local_engine/storage/LocalSecretsStore.d.ts +115 -0
- package/dist/src/local_engine/storage/LocalSecretsStore.js +350 -0
- package/dist/src/local_engine/storage/LocalSecretsStore.js.map +1 -0
- package/dist/src/local_engine/storage/LocalSecretsStoreWrapper.d.ts +19 -0
- package/dist/src/local_engine/storage/LocalSecretsStoreWrapper.js +52 -0
- package/dist/src/local_engine/storage/LocalSecretsStoreWrapper.js.map +1 -0
- package/dist/src/local_engine/storage/LocalSettingsStore.d.ts +168 -0
- package/dist/src/local_engine/storage/LocalSettingsStore.js +509 -0
- package/dist/src/local_engine/storage/LocalSettingsStore.js.map +1 -0
- package/dist/src/local_engine/storage/LocalSettingsStoreWrapper.d.ts +15 -0
- package/dist/src/local_engine/storage/LocalSettingsStoreWrapper.js +28 -0
- package/dist/src/local_engine/storage/LocalSettingsStoreWrapper.js.map +1 -0
- package/dist/src/local_engine/storage/NumberSet.d.ts +21 -0
- package/dist/src/local_engine/storage/NumberSet.js +32 -0
- package/dist/src/local_engine/storage/NumberSet.js.map +1 -0
- package/dist/src/local_engine/storage/SourceDataStore.d.ts +23 -0
- package/dist/src/local_engine/storage/SourceDataStore.js +83 -0
- package/dist/src/local_engine/storage/SourceDataStore.js.map +1 -0
- package/dist/src/local_engine/storage/SourceJobExecutionStore.d.ts +25 -0
- package/dist/src/local_engine/storage/SourceJobExecutionStore.js +61 -0
- package/dist/src/local_engine/storage/SourceJobExecutionStore.js.map +1 -0
- package/dist/src/local_engine/storage/StringSet.d.ts +21 -0
- package/dist/src/local_engine/storage/StringSet.js +32 -0
- package/dist/src/local_engine/storage/StringSet.js.map +1 -0
- package/dist/src/local_engine/types.d.ts +53 -0
- package/dist/src/local_engine/types.js +6 -0
- package/dist/src/local_engine/types.js.map +1 -0
- package/dist/src/local_engine/utils.d.ts +33 -0
- package/dist/src/local_engine/utils.js +143 -0
- package/dist/src/local_engine/utils.js.map +1 -0
- package/dist/src/logging/LogManager.d.ts +246 -0
- package/dist/src/logging/LogManager.js +343 -0
- package/dist/src/logging/LogManager.js.map +1 -0
- package/dist/src/server/api/destinations.d.ts +7 -0
- package/dist/src/server/api/destinations.js +170 -0
- package/dist/src/server/api/destinations.js.map +1 -0
- package/dist/src/server/api/functions.d.ts +7 -0
- package/dist/src/server/api/functions.js +80 -0
- package/dist/src/server/api/functions.js.map +1 -0
- package/dist/src/server/api/jobs.d.ts +10 -0
- package/dist/src/server/api/jobs.js +244 -0
- package/dist/src/server/api/jobs.js.map +1 -0
- package/dist/src/server/api/settings.d.ts +6 -0
- package/dist/src/server/api/settings.js +116 -0
- package/dist/src/server/api/settings.js.map +1 -0
- package/dist/src/server/api/sources.d.ts +7 -0
- package/dist/src/server/api/sources.js +382 -0
- package/dist/src/server/api/sources.js.map +1 -0
- package/dist/src/server/api/stores.d.ts +2 -0
- package/dist/src/server/api/stores.js +341 -0
- package/dist/src/server/api/stores.js.map +1 -0
- package/dist/src/server/api/v1.d.ts +10 -0
- package/dist/src/server/api/v1.js +718 -0
- package/dist/src/server/api/v1.js.map +1 -0
- package/dist/src/server/api.d.ts +8 -0
- package/dist/src/server/api.js +217 -0
- package/dist/src/server/api.js.map +1 -0
- package/dist/src/server/app-discovery.d.ts +5 -0
- package/dist/src/server/app-discovery.js +113 -0
- package/dist/src/server/app-discovery.js.map +1 -0
- package/dist/src/server/config.d.ts +26 -0
- package/dist/src/server/config.js +112 -0
- package/dist/src/server/config.js.map +1 -0
- package/dist/src/server/mockDataGenerator.d.ts +1 -0
- package/dist/src/server/mockDataGenerator.js +154 -0
- package/dist/src/server/mockDataGenerator.js.map +1 -0
- package/dist/src/server/websocket.d.ts +0 -0
- package/dist/src/server/websocket.js +2 -0
- package/dist/src/server/websocket.js.map +1 -0
- package/dist/src/server.d.ts +2 -0
- package/dist/src/server.js +735 -0
- package/dist/src/server.js.map +1 -0
- package/dist/src/types/app.d.ts +154 -0
- package/dist/src/types/app.js +24 -0
- package/dist/src/types/app.js.map +1 -0
- package/dist/src/types/kvstore.d.ts +320 -0
- package/dist/src/types/kvstore.js +5 -0
- package/dist/src/types/kvstore.js.map +1 -0
- package/dist/src/ui/components/App.d.ts +6 -0
- package/dist/src/ui/components/App.js +432 -0
- package/dist/src/ui/components/App.js.map +1 -0
- package/dist/src/ui/components/DestinationBatchEditor.d.ts +7 -0
- package/dist/src/ui/components/DestinationBatchEditor.js +160 -0
- package/dist/src/ui/components/DestinationBatchEditor.js.map +1 -0
- package/dist/src/ui/components/DestinationSchemaViewer.d.ts +7 -0
- package/dist/src/ui/components/DestinationSchemaViewer.js +61 -0
- package/dist/src/ui/components/DestinationSchemaViewer.js.map +1 -0
- package/dist/src/ui/components/DestinationsView.d.ts +14 -0
- package/dist/src/ui/components/DestinationsView.js +68 -0
- package/dist/src/ui/components/DestinationsView.js.map +1 -0
- package/dist/src/ui/components/FunctionsView.d.ts +13 -0
- package/dist/src/ui/components/FunctionsView.js +288 -0
- package/dist/src/ui/components/FunctionsView.js.map +1 -0
- package/dist/src/ui/components/JobsView.d.ts +13 -0
- package/dist/src/ui/components/JobsView.js +320 -0
- package/dist/src/ui/components/JobsView.js.map +1 -0
- package/dist/src/ui/components/KVStoreViewer.d.ts +11 -0
- package/dist/src/ui/components/KVStoreViewer.js +168 -0
- package/dist/src/ui/components/KVStoreViewer.js.map +1 -0
- package/dist/src/ui/components/MetadataModal.d.ts +14 -0
- package/dist/src/ui/components/MetadataModal.js +28 -0
- package/dist/src/ui/components/MetadataModal.js.map +1 -0
- package/dist/src/ui/components/MetadataModal.test.d.ts +1 -0
- package/dist/src/ui/components/MetadataModal.test.js +143 -0
- package/dist/src/ui/components/MetadataModal.test.js.map +1 -0
- package/dist/src/ui/components/NotificationViewer.d.ts +16 -0
- package/dist/src/ui/components/NotificationViewer.js +69 -0
- package/dist/src/ui/components/NotificationViewer.js.map +1 -0
- package/dist/src/ui/components/SecretsStoreViewer.d.ts +11 -0
- package/dist/src/ui/components/SecretsStoreViewer.js +179 -0
- package/dist/src/ui/components/SecretsStoreViewer.js.map +1 -0
- package/dist/src/ui/components/SettingsStoreViewer.d.ts +24 -0
- package/dist/src/ui/components/SettingsStoreViewer.js +132 -0
- package/dist/src/ui/components/SettingsStoreViewer.js.map +1 -0
- package/dist/src/ui/components/SourceDataViewer.d.ts +8 -0
- package/dist/src/ui/components/SourceDataViewer.js +84 -0
- package/dist/src/ui/components/SourceDataViewer.js.map +1 -0
- package/dist/src/ui/components/SourceJobsSection.d.ts +8 -0
- package/dist/src/ui/components/SourceJobsSection.js +99 -0
- package/dist/src/ui/components/SourceJobsSection.js.map +1 -0
- package/dist/src/ui/components/SourceLifecycleSection.d.ts +7 -0
- package/dist/src/ui/components/SourceLifecycleSection.js +58 -0
- package/dist/src/ui/components/SourceLifecycleSection.js.map +1 -0
- package/dist/src/ui/components/SourceSchemaViewer.d.ts +7 -0
- package/dist/src/ui/components/SourceSchemaViewer.js +65 -0
- package/dist/src/ui/components/SourceSchemaViewer.js.map +1 -0
- package/dist/src/ui/components/SourceWebhookEditor.d.ts +8 -0
- package/dist/src/ui/components/SourceWebhookEditor.js +181 -0
- package/dist/src/ui/components/SourceWebhookEditor.js.map +1 -0
- package/dist/src/ui/components/SourcesView.d.ts +14 -0
- package/dist/src/ui/components/SourcesView.js +74 -0
- package/dist/src/ui/components/SourcesView.js.map +1 -0
- package/dist/src/ui/components/StoreViewer.d.ts +16 -0
- package/dist/src/ui/components/StoreViewer.js +86 -0
- package/dist/src/ui/components/StoreViewer.js.map +1 -0
- package/dist/src/ui/components/TabbedConsole.d.ts +17 -0
- package/dist/src/ui/components/TabbedConsole.js +163 -0
- package/dist/src/ui/components/TabbedConsole.js.map +1 -0
- package/dist/src/ui/components/common/DataTree.d.ts +15 -0
- package/dist/src/ui/components/common/DataTree.js +95 -0
- package/dist/src/ui/components/common/DataTree.js.map +1 -0
- package/dist/src/ui/components/common/EyeIcon.d.ts +11 -0
- package/dist/src/ui/components/common/EyeIcon.js +11 -0
- package/dist/src/ui/components/common/EyeIcon.js.map +1 -0
- package/dist/src/ui/hooks/useEntityNavigation.d.ts +72 -0
- package/dist/src/ui/hooks/useEntityNavigation.js +150 -0
- package/dist/src/ui/hooks/useEntityNavigation.js.map +1 -0
- package/dist/src/ui/hooks/useQueryParams.d.ts +6 -0
- package/dist/src/ui/hooks/useQueryParams.js +39 -0
- package/dist/src/ui/hooks/useQueryParams.js.map +1 -0
- package/dist/src/ui/index.d.ts +1 -0
- package/dist/src/ui/index.js +23 -0
- package/dist/src/ui/index.js.map +1 -0
- package/dist/src/ui/store/formStateSlice.d.ts +54 -0
- package/dist/src/ui/store/formStateSlice.js +94 -0
- package/dist/src/ui/store/formStateSlice.js.map +1 -0
- package/dist/src/ui/store/hooks.d.ts +6 -0
- package/dist/src/ui/store/hooks.js +8 -0
- package/dist/src/ui/store/hooks.js.map +1 -0
- package/dist/src/ui/store/index.d.ts +11 -0
- package/dist/src/ui/store/index.js +107 -0
- package/dist/src/ui/store/index.js.map +1 -0
- package/dist/src/utils/functionEndpoints.d.ts +24 -0
- package/dist/src/utils/functionEndpoints.js +45 -0
- package/dist/src/utils/functionEndpoints.js.map +1 -0
- package/package.json +112 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! For license information please see bundle.82dc5d29fffb9f205051.js.LICENSE.txt */
|
|
2
|
+
(()=>{"use strict";var e,n,t={278:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.useEntityNavigation=function(e){const n=(0,o.useNavigate)(),{getParam:t,setParams:i}=(0,a.useQueryParams)(),{basePath:s,entityName:l,entities:c,selectedEntityId:d,defaultTab:A,validTabs:u,preserveParams:f=["console"],additionalParams:p={}}=e,h=(0,r.useCallback)(()=>{const e=new URLSearchParams;return f.forEach(n=>{const r=t(n);r&&e.set(n,r)}),Object.entries(p).forEach(([n,t])=>{t&&e.set(n,t)}),e},[t,f,p]),m=(0,r.useCallback)((e,t=!1)=>{const r=h();if(e){A&&r.set("tab",A);const o=r.toString();n(`${s}/${e}${o?`?${o}`:""}`,{replace:t})}else{const e=r.toString();n(`${s}${e?`?${e}`:""}`,{replace:t})}},[n,s,A,h]),g=(0,r.useMemo)(()=>!d||0===c.length||c.some(e=>e.id===d),[d,c]),b=(0,r.useMemo)(()=>c.length>0&&!d,[c.length,d]);(0,r.useEffect)(()=>{d&&c.length>0&&!g&&(console.warn(`${l} '${d}' not found, redirecting to first ${l}`),m(c[0].id,!0))},[d,c,g,l]),(0,r.useEffect)(()=>{b&&m(c[0].id,!0)},[b,c]);const E=u&&t("tab")||A,x=(0,r.useMemo)(()=>!u||!E||u.includes(E),[u,E]),C=(0,r.useCallback)(e=>{i({tab:e})},[i]);return(0,r.useEffect)(()=>{if(!u||!d)return;const e=t("tab");e&&!u.includes(e)?(console.warn(`Invalid tab '${e}', resetting to '${A}'`),i({tab:A})):!e&&A&&i({tab:A})},[d,u,A,t("tab")]),{navigateToEntity:m,isValidEntity:g,shouldAutoSelect:b,...u&&{activeTab:E,setActiveTab:C,isValidTab:x}}};const r=t(6540),o=t(2648),a=t(3717)},540:e=>{e.exports=function(e){var n=document.createElement("style");return e.setAttributes(n,e.attributes),e.insert(n,e.options),n}},846:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.MetadataModal=void 0;const r=t(4848),o=t(6540);t(9410),n.MetadataModal=({isOpen:e,onClose:n,attempt:t,syncId:a,syncName:i,onAttemptChange:s,onSyncIdChange:l,onSyncNameChange:c})=>((0,o.useEffect)(()=>{if(!e)return;const t=e=>{"Escape"===e.key&&n()};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[e,n]),e?(0,r.jsx)("div",{className:"metadata-modal-overlay",onClick:e=>{e.target===e.currentTarget&&n()},children:(0,r.jsxs)("div",{className:"metadata-modal-content",children:[(0,r.jsxs)("div",{className:"metadata-modal-header",children:[(0,r.jsx)("h3",{children:"Batch Metadata"}),(0,r.jsx)("button",{className:"metadata-modal-close",onClick:n,children:"×"})]}),(0,r.jsxs)("div",{className:"metadata-modal-body",children:[(0,r.jsxs)("div",{className:"metadata-modal-field",children:[(0,r.jsx)("label",{htmlFor:"attempt",children:"Attempt:"}),(0,r.jsx)("input",{id:"attempt",type:"number",value:t,onChange:e=>s(e.target.value),min:"1"})]}),(0,r.jsxs)("div",{className:"metadata-modal-field",children:[(0,r.jsx)("label",{htmlFor:"syncId",children:"Sync ID:"}),(0,r.jsx)("input",{id:"syncId",type:"text",value:a,onChange:e=>l(e.target.value)})]}),(0,r.jsxs)("div",{className:"metadata-modal-field",children:[(0,r.jsx)("label",{htmlFor:"syncName",children:"Sync Name:"}),(0,r.jsx)("input",{id:"syncName",type:"text",value:i,onChange:e=>c(e.target.value)})]})]}),(0,r.jsx)("div",{className:"metadata-modal-footer",children:(0,r.jsx)("p",{className:"auto-save-indicator",children:"Changes auto-saved"})})]})}):null)},961:(e,n,t)=>{!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),e.exports=t(6221)},1113:e=>{e.exports=function(e,n){if(n.styleSheet)n.styleSheet.cssText=e;else{for(;n.firstChild;)n.removeChild(n.firstChild);n.appendChild(document.createTextNode(e))}}},1247:(e,n,t)=>{var r=t(9982),o=t(6540),a=t(961);function i(e){var n="https://react.dev/errors/"+e;if(1<arguments.length){n+="?args[]="+encodeURIComponent(arguments[1]);for(var t=2;t<arguments.length;t++)n+="&args[]="+encodeURIComponent(arguments[t])}return"Minified React error #"+e+"; visit "+n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function s(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType)}function l(e){var n=e,t=e;if(e.alternate)for(;n.return;)n=n.return;else{e=n;do{!!(4098&(n=e).flags)&&(t=n.return),e=n.return}while(e)}return 3===n.tag?t:null}function c(e){if(13===e.tag){var n=e.memoizedState;if(null===n&&null!==(e=e.alternate)&&(n=e.memoizedState),null!==n)return n.dehydrated}return null}function d(e){if(31===e.tag){var n=e.memoizedState;if(null===n&&null!==(e=e.alternate)&&(n=e.memoizedState),null!==n)return n.dehydrated}return null}function A(e){if(l(e)!==e)throw Error(i(188))}function u(e){var n=e.tag;if(5===n||26===n||27===n||6===n)return e;for(e=e.child;null!==e;){if(null!==(n=u(e)))return n;e=e.sibling}return null}var f=Object.assign,p=Symbol.for("react.element"),h=Symbol.for("react.transitional.element"),m=Symbol.for("react.portal"),g=Symbol.for("react.fragment"),b=Symbol.for("react.strict_mode"),E=Symbol.for("react.profiler"),x=Symbol.for("react.consumer"),C=Symbol.for("react.context"),B=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.suspense_list"),k=Symbol.for("react.memo"),w=Symbol.for("react.lazy");Symbol.for("react.scope");var S=Symbol.for("react.activity");Symbol.for("react.legacy_hidden"),Symbol.for("react.tracing_marker");var j=Symbol.for("react.memo_cache_sentinel");Symbol.for("react.view_transition");var N=Symbol.iterator;function z(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=N&&e[N]||e["@@iterator"])?e:null}var P=Symbol.for("react.client.reference");function _(e){if(null==e)return null;if("function"==typeof e)return e.$$typeof===P?null:e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case g:return"Fragment";case E:return"Profiler";case b:return"StrictMode";case y:return"Suspense";case v:return"SuspenseList";case S:return"Activity"}if("object"==typeof e)switch(e.$$typeof){case m:return"Portal";case C:return e.displayName||"Context";case x:return(e._context.displayName||"Context")+".Consumer";case B:var n=e.render;return(e=e.displayName)||(e=""!==(e=n.displayName||n.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case k:return null!==(n=e.displayName||null)?n:_(e.type)||"Memo";case w:n=e._payload,e=e._init;try{return _(e(n))}catch(e){}}return null}var O=Array.isArray,T=o.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,M=a.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,R={pending:!1,data:null,method:null,action:null},D=[],L=-1;function F(e){return{current:e}}function I(e){0>L||(e.current=D[L],D[L]=null,L--)}function U(e,n){L++,D[L]=e.current,e.current=n}var q,Y,$=F(null),V=F(null),W=F(null),Q=F(null);function H(e,n){switch(U(W,n),U(V,e),U($,null),n.nodeType){case 9:case 11:e=(e=n.documentElement)&&(e=e.namespaceURI)?gA(e):0;break;default:if(e=n.tagName,n=n.namespaceURI)e=bA(n=gA(n),e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}I($),U($,e)}function J(){I($),I(V),I(W)}function Z(e){null!==e.memoizedState&&U(Q,e);var n=$.current,t=bA(n,e.type);n!==t&&(U(V,e),U($,t))}function K(e){V.current===e&&(I($),I(V)),Q.current===e&&(I(Q),du._currentValue=R)}function X(e){if(void 0===q)try{throw Error()}catch(e){var n=e.stack.trim().match(/\n( *(at )?)/);q=n&&n[1]||"",Y=-1<e.stack.indexOf("\n at")?" (<anonymous>)":-1<e.stack.indexOf("@")?"@unknown:0:0":""}return"\n"+q+e+Y}var G=!1;function ee(e,n){if(!e||G)return"";G=!0;var t=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(n){var t=function(){throw Error()};if(Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(e){var r=e}Reflect.construct(e,[],t)}else{try{t.call()}catch(e){r=e}e.call(t.prototype)}}else{try{throw Error()}catch(e){r=e}(t=e())&&"function"==typeof t.catch&&t.catch(function(){})}}catch(e){if(e&&r&&"string"==typeof e.stack)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var o=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,"name");o&&o.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var a=r.DetermineComponentFrameRoot(),i=a[0],s=a[1];if(i&&s){var l=i.split("\n"),c=s.split("\n");for(o=r=0;r<l.length&&!l[r].includes("DetermineComponentFrameRoot");)r++;for(;o<c.length&&!c[o].includes("DetermineComponentFrameRoot");)o++;if(r===l.length||o===c.length)for(r=l.length-1,o=c.length-1;1<=r&&0<=o&&l[r]!==c[o];)o--;for(;1<=r&&0<=o;r--,o--)if(l[r]!==c[o]){if(1!==r||1!==o)do{if(r--,0>--o||l[r]!==c[o]){var d="\n"+l[r].replace(" at new "," at ");return e.displayName&&d.includes("<anonymous>")&&(d=d.replace("<anonymous>",e.displayName)),d}}while(1<=r&&0<=o);break}}}finally{G=!1,Error.prepareStackTrace=t}return(t=e?e.displayName||e.name:"")?X(t):""}function ne(e,n){switch(e.tag){case 26:case 27:case 5:return X(e.type);case 16:return X("Lazy");case 13:return e.child!==n&&null!==n?X("Suspense Fallback"):X("Suspense");case 19:return X("SuspenseList");case 0:case 15:return ee(e.type,!1);case 11:return ee(e.type.render,!1);case 1:return ee(e.type,!0);case 31:return X("Activity");default:return""}}function te(e){try{var n="",t=null;do{n+=ne(e,t),t=e,e=e.return}while(e);return n}catch(e){return"\nError generating stack: "+e.message+"\n"+e.stack}}var re=Object.prototype.hasOwnProperty,oe=r.unstable_scheduleCallback,ae=r.unstable_cancelCallback,ie=r.unstable_shouldYield,se=r.unstable_requestPaint,le=r.unstable_now,ce=r.unstable_getCurrentPriorityLevel,de=r.unstable_ImmediatePriority,Ae=r.unstable_UserBlockingPriority,ue=r.unstable_NormalPriority,fe=r.unstable_LowPriority,pe=r.unstable_IdlePriority,he=r.log,me=r.unstable_setDisableYieldValue,ge=null,be=null;function Ee(e){if("function"==typeof he&&me(e),be&&"function"==typeof be.setStrictMode)try{be.setStrictMode(ge,e)}catch(e){}}var xe=Math.clz32?Math.clz32:function(e){return 0==(e>>>=0)?32:31-(Ce(e)/Be|0)|0},Ce=Math.log,Be=Math.LN2,ye=256,ve=262144,ke=4194304;function we(e){var n=42&e;if(0!==n)return n;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return 261888&e;case 262144:case 524288:case 1048576:case 2097152:return 3932160&e;case 4194304:case 8388608:case 16777216:case 33554432:return 62914560&e;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Se(e,n,t){var r=e.pendingLanes;if(0===r)return 0;var o=0,a=e.suspendedLanes,i=e.pingedLanes;e=e.warmLanes;var s=134217727&r;return 0!==s?0!==(r=s&~a)?o=we(r):0!==(i&=s)?o=we(i):t||0!==(t=s&~e)&&(o=we(t)):0!==(s=r&~a)?o=we(s):0!==i?o=we(i):t||0!==(t=r&~e)&&(o=we(t)),0===o?0:0!==n&&n!==o&&0===(n&a)&&((a=o&-o)>=(t=n&-n)||32===a&&4194048&t)?n:o}function je(e,n){return 0===(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&n)}function Ne(e,n){switch(e){case 1:case 2:case 4:case 8:case 64:return n+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return n+5e3;default:return-1}}function ze(){var e=ke;return!(62914560&(ke<<=1))&&(ke=4194304),e}function Pe(e){for(var n=[],t=0;31>t;t++)n.push(e);return n}function _e(e,n){e.pendingLanes|=n,268435456!==n&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Oe(e,n,t){e.pendingLanes|=n,e.suspendedLanes&=~n;var r=31-xe(n);e.entangledLanes|=n,e.entanglements[r]=1073741824|e.entanglements[r]|261930&t}function Te(e,n){var t=e.entangledLanes|=n;for(e=e.entanglements;t;){var r=31-xe(t),o=1<<r;o&n|e[r]&n&&(e[r]|=n),t&=~o}}function Me(e,n){var t=n&-n;return 0!==((t=42&t?1:Re(t))&(e.suspendedLanes|n))?0:t}function Re(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function De(e){return 2<(e&=-e)?8<e?134217727&e?32:268435456:8:2}function Le(){var e=M.p;return 0!==e?e:void 0===(e=window.event)?32:wu(e.type)}function Fe(e,n){var t=M.p;try{return M.p=e,n()}finally{M.p=t}}var Ie=Math.random().toString(36).slice(2),Ue="__reactFiber$"+Ie,qe="__reactProps$"+Ie,Ye="__reactContainer$"+Ie,$e="__reactEvents$"+Ie,Ve="__reactListeners$"+Ie,We="__reactHandles$"+Ie,Qe="__reactResources$"+Ie,He="__reactMarker$"+Ie;function Je(e){delete e[Ue],delete e[qe],delete e[$e],delete e[Ve],delete e[We]}function Ze(e){var n=e[Ue];if(n)return n;for(var t=e.parentNode;t;){if(n=t[Ye]||t[Ue]){if(t=n.alternate,null!==n.child||null!==t&&null!==t.child)for(e=RA(e);null!==e;){if(t=e[Ue])return t;e=RA(e)}return n}t=(e=t).parentNode}return null}function Ke(e){if(e=e[Ue]||e[Ye]){var n=e.tag;if(5===n||6===n||13===n||31===n||26===n||27===n||3===n)return e}return null}function Xe(e){var n=e.tag;if(5===n||26===n||27===n||6===n)return e.stateNode;throw Error(i(33))}function Ge(e){var n=e[Qe];return n||(n=e[Qe]={hoistableStyles:new Map,hoistableScripts:new Map}),n}function en(e){e[He]=!0}var nn=new Set,tn={};function rn(e,n){on(e,n),on(e+"Capture",n)}function on(e,n){for(tn[e]=n,e=0;e<n.length;e++)nn.add(n[e])}var an=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),sn={},ln={};function cn(e,n,t){if(o=n,re.call(ln,o)||!re.call(sn,o)&&(an.test(o)?ln[o]=!0:(sn[o]=!0,0)))if(null===t)e.removeAttribute(n);else{switch(typeof t){case"undefined":case"function":case"symbol":return void e.removeAttribute(n);case"boolean":var r=n.toLowerCase().slice(0,5);if("data-"!==r&&"aria-"!==r)return void e.removeAttribute(n)}e.setAttribute(n,""+t)}var o}function dn(e,n,t){if(null===t)e.removeAttribute(n);else{switch(typeof t){case"undefined":case"function":case"symbol":case"boolean":return void e.removeAttribute(n)}e.setAttribute(n,""+t)}}function An(e,n,t,r){if(null===r)e.removeAttribute(t);else{switch(typeof r){case"undefined":case"function":case"symbol":case"boolean":return void e.removeAttribute(t)}e.setAttributeNS(n,t,""+r)}}function un(e){switch(typeof e){case"bigint":case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function fn(e){var n=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===n||"radio"===n)}function pn(e){if(!e._valueTracker){var n=fn(e)?"checked":"value";e._valueTracker=function(e,n,t){var r=Object.getOwnPropertyDescriptor(e.constructor.prototype,n);if(!e.hasOwnProperty(n)&&void 0!==r&&"function"==typeof r.get&&"function"==typeof r.set){var o=r.get,a=r.set;return Object.defineProperty(e,n,{configurable:!0,get:function(){return o.call(this)},set:function(e){t=""+e,a.call(this,e)}}),Object.defineProperty(e,n,{enumerable:r.enumerable}),{getValue:function(){return t},setValue:function(e){t=""+e},stopTracking:function(){e._valueTracker=null,delete e[n]}}}}(e,n,""+e[n])}}function hn(e){if(!e)return!1;var n=e._valueTracker;if(!n)return!0;var t=n.getValue(),r="";return e&&(r=fn(e)?e.checked?"true":"false":e.value),(e=r)!==t&&(n.setValue(e),!0)}function mn(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(n){return e.body}}var gn=/[\n"\\]/g;function bn(e){return e.replace(gn,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function En(e,n,t,r,o,a,i,s){e.name="",null!=i&&"function"!=typeof i&&"symbol"!=typeof i&&"boolean"!=typeof i?e.type=i:e.removeAttribute("type"),null!=n?"number"===i?(0===n&&""===e.value||e.value!=n)&&(e.value=""+un(n)):e.value!==""+un(n)&&(e.value=""+un(n)):"submit"!==i&&"reset"!==i||e.removeAttribute("value"),null!=n?Cn(e,i,un(n)):null!=t?Cn(e,i,un(t)):null!=r&&e.removeAttribute("value"),null==o&&null!=a&&(e.defaultChecked=!!a),null!=o&&(e.checked=o&&"function"!=typeof o&&"symbol"!=typeof o),null!=s&&"function"!=typeof s&&"symbol"!=typeof s&&"boolean"!=typeof s?e.name=""+un(s):e.removeAttribute("name")}function xn(e,n,t,r,o,a,i,s){if(null!=a&&"function"!=typeof a&&"symbol"!=typeof a&&"boolean"!=typeof a&&(e.type=a),null!=n||null!=t){if(("submit"===a||"reset"===a)&&null==n)return void pn(e);t=null!=t?""+un(t):"",n=null!=n?""+un(n):t,s||n===e.value||(e.value=n),e.defaultValue=n}r="function"!=typeof(r=null!=r?r:o)&&"symbol"!=typeof r&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,null!=i&&"function"!=typeof i&&"symbol"!=typeof i&&"boolean"!=typeof i&&(e.name=i),pn(e)}function Cn(e,n,t){"number"===n&&mn(e.ownerDocument)===e||e.defaultValue===""+t||(e.defaultValue=""+t)}function Bn(e,n,t,r){if(e=e.options,n){n={};for(var o=0;o<t.length;o++)n["$"+t[o]]=!0;for(t=0;t<e.length;t++)o=n.hasOwnProperty("$"+e[t].value),e[t].selected!==o&&(e[t].selected=o),o&&r&&(e[t].defaultSelected=!0)}else{for(t=""+un(t),n=null,o=0;o<e.length;o++){if(e[o].value===t)return e[o].selected=!0,void(r&&(e[o].defaultSelected=!0));null!==n||e[o].disabled||(n=e[o])}null!==n&&(n.selected=!0)}}function yn(e,n,t){null==n||((n=""+un(n))!==e.value&&(e.value=n),null!=t)?e.defaultValue=null!=t?""+un(t):"":e.defaultValue!==n&&(e.defaultValue=n)}function vn(e,n,t,r){if(null==n){if(null!=r){if(null!=t)throw Error(i(92));if(O(r)){if(1<r.length)throw Error(i(93));r=r[0]}t=r}null==t&&(t=""),n=t}t=un(n),e.defaultValue=t,(r=e.textContent)===t&&""!==r&&null!==r&&(e.value=r),pn(e)}function kn(e,n){if(n){var t=e.firstChild;if(t&&t===e.lastChild&&3===t.nodeType)return void(t.nodeValue=n)}e.textContent=n}var wn=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function Sn(e,n,t){var r=0===n.indexOf("--");null==t||"boolean"==typeof t||""===t?r?e.setProperty(n,""):"float"===n?e.cssFloat="":e[n]="":r?e.setProperty(n,t):"number"!=typeof t||0===t||wn.has(n)?"float"===n?e.cssFloat=t:e[n]=(""+t).trim():e[n]=t+"px"}function jn(e,n,t){if(null!=n&&"object"!=typeof n)throw Error(i(62));if(e=e.style,null!=t){for(var r in t)!t.hasOwnProperty(r)||null!=n&&n.hasOwnProperty(r)||(0===r.indexOf("--")?e.setProperty(r,""):"float"===r?e.cssFloat="":e[r]="");for(var o in n)r=n[o],n.hasOwnProperty(o)&&t[o]!==r&&Sn(e,o,r)}else for(var a in n)n.hasOwnProperty(a)&&Sn(e,a,n[a])}function Nn(e){if(-1===e.indexOf("-"))return!1;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var zn=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),Pn=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function _n(e){return Pn.test(""+e)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":e}function On(){}var Tn=null;function Mn(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var Rn=null,Dn=null;function Ln(e){var n=Ke(e);if(n&&(e=n.stateNode)){var t=e[qe]||null;e:switch(e=n.stateNode,n.type){case"input":if(En(e,t.value,t.defaultValue,t.defaultValue,t.checked,t.defaultChecked,t.type,t.name),n=t.name,"radio"===t.type&&null!=n){for(t=e;t.parentNode;)t=t.parentNode;for(t=t.querySelectorAll('input[name="'+bn(""+n)+'"][type="radio"]'),n=0;n<t.length;n++){var r=t[n];if(r!==e&&r.form===e.form){var o=r[qe]||null;if(!o)throw Error(i(90));En(r,o.value,o.defaultValue,o.defaultValue,o.checked,o.defaultChecked,o.type,o.name)}}for(n=0;n<t.length;n++)(r=t[n]).form===e.form&&hn(r)}break e;case"textarea":yn(e,t.value,t.defaultValue);break e;case"select":null!=(n=t.value)&&Bn(e,!!t.multiple,n,!1)}}}var Fn=!1;function In(e,n,t){if(Fn)return e(n,t);Fn=!0;try{return e(n)}finally{if(Fn=!1,(null!==Rn||null!==Dn)&&(Gc(),Rn&&(n=Rn,e=Dn,Dn=Rn=null,Ln(n),e)))for(n=0;n<e.length;n++)Ln(e[n])}}function Un(e,n){var t=e.stateNode;if(null===t)return null;var r=t[qe]||null;if(null===r)return null;t=r[n];e:switch(n){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(r=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}if(e)return null;if(t&&"function"!=typeof t)throw Error(i(231,n,typeof t));return t}var qn=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),Yn=!1;if(qn)try{var $n={};Object.defineProperty($n,"passive",{get:function(){Yn=!0}}),window.addEventListener("test",$n,$n),window.removeEventListener("test",$n,$n)}catch(e){Yn=!1}var Vn=null,Wn=null,Qn=null;function Hn(){if(Qn)return Qn;var e,n,t=Wn,r=t.length,o="value"in Vn?Vn.value:Vn.textContent,a=o.length;for(e=0;e<r&&t[e]===o[e];e++);var i=r-e;for(n=1;n<=i&&t[r-n]===o[a-n];n++);return Qn=o.slice(e,1<n?1-n:void 0)}function Jn(e){var n=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===n&&(e=13):e=n,10===e&&(e=13),32<=e||13===e?e:0}function Zn(){return!0}function Kn(){return!1}function Xn(e){function n(n,t,r,o,a){for(var i in this._reactName=n,this._targetInst=r,this.type=t,this.nativeEvent=o,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(i)&&(n=e[i],this[i]=n?n(o):o[i]);return this.isDefaultPrevented=(null!=o.defaultPrevented?o.defaultPrevented:!1===o.returnValue)?Zn:Kn,this.isPropagationStopped=Kn,this}return f(n.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=Zn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=Zn)},persist:function(){},isPersistent:Zn}),n}var Gn,et,nt,tt={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},rt=Xn(tt),ot=f({},tt,{view:0,detail:0}),at=Xn(ot),it=f({},ot,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:gt,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==nt&&(nt&&"mousemove"===e.type?(Gn=e.screenX-nt.screenX,et=e.screenY-nt.screenY):et=Gn=0,nt=e),Gn)},movementY:function(e){return"movementY"in e?e.movementY:et}}),st=Xn(it),lt=Xn(f({},it,{dataTransfer:0})),ct=Xn(f({},ot,{relatedTarget:0})),dt=Xn(f({},tt,{animationName:0,elapsedTime:0,pseudoElement:0})),At=Xn(f({},tt,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}})),ut=Xn(f({},tt,{data:0})),ft={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},pt={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},ht={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function mt(e){var n=this.nativeEvent;return n.getModifierState?n.getModifierState(e):!!(e=ht[e])&&!!n[e]}function gt(){return mt}var bt=Xn(f({},ot,{key:function(e){if(e.key){var n=ft[e.key]||e.key;if("Unidentified"!==n)return n}return"keypress"===e.type?13===(e=Jn(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?pt[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:gt,charCode:function(e){return"keypress"===e.type?Jn(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?Jn(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}})),Et=Xn(f({},it,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),xt=Xn(f({},ot,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:gt})),Ct=Xn(f({},tt,{propertyName:0,elapsedTime:0,pseudoElement:0})),Bt=Xn(f({},it,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),yt=Xn(f({},tt,{newState:0,oldState:0})),vt=[9,13,27,32],kt=qn&&"CompositionEvent"in window,wt=null;qn&&"documentMode"in document&&(wt=document.documentMode);var St=qn&&"TextEvent"in window&&!wt,jt=qn&&(!kt||wt&&8<wt&&11>=wt),Nt=String.fromCharCode(32),zt=!1;function Pt(e,n){switch(e){case"keyup":return-1!==vt.indexOf(n.keyCode);case"keydown":return 229!==n.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function _t(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Ot=!1,Tt={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Mt(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===n?!!Tt[e.type]:"textarea"===n}function Rt(e,n,t,r){Rn?Dn?Dn.push(r):Dn=[r]:Rn=r,0<(n=rA(n,"onChange")).length&&(t=new rt("onChange","change",null,t,r),e.push({event:t,listeners:n}))}var Dt=null,Lt=null;function Ft(e){Jd(e,0)}function It(e){if(hn(Xe(e)))return e}function Ut(e,n){if("change"===e)return n}var qt=!1;if(qn){var Yt;if(qn){var $t="oninput"in document;if(!$t){var Vt=document.createElement("div");Vt.setAttribute("oninput","return;"),$t="function"==typeof Vt.oninput}Yt=$t}else Yt=!1;qt=Yt&&(!document.documentMode||9<document.documentMode)}function Wt(){Dt&&(Dt.detachEvent("onpropertychange",Qt),Lt=Dt=null)}function Qt(e){if("value"===e.propertyName&&It(Lt)){var n=[];Rt(n,Lt,e,Mn(e)),In(Ft,n)}}function Ht(e,n,t){"focusin"===e?(Wt(),Lt=t,(Dt=n).attachEvent("onpropertychange",Qt)):"focusout"===e&&Wt()}function Jt(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return It(Lt)}function Zt(e,n){if("click"===e)return It(n)}function Kt(e,n){if("input"===e||"change"===e)return It(n)}var Xt="function"==typeof Object.is?Object.is:function(e,n){return e===n&&(0!==e||1/e==1/n)||e!=e&&n!=n};function Gt(e,n){if(Xt(e,n))return!0;if("object"!=typeof e||null===e||"object"!=typeof n||null===n)return!1;var t=Object.keys(e),r=Object.keys(n);if(t.length!==r.length)return!1;for(r=0;r<t.length;r++){var o=t[r];if(!re.call(n,o)||!Xt(e[o],n[o]))return!1}return!0}function er(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function nr(e,n){var t,r=er(e);for(e=0;r;){if(3===r.nodeType){if(t=e+r.textContent.length,e<=n&&t>=n)return{node:r,offset:n-e};e=t}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=er(r)}}function tr(e,n){return!(!e||!n)&&(e===n||(!e||3!==e.nodeType)&&(n&&3===n.nodeType?tr(e,n.parentNode):"contains"in e?e.contains(n):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(n))))}function rr(e){for(var n=mn((e=null!=e&&null!=e.ownerDocument&&null!=e.ownerDocument.defaultView?e.ownerDocument.defaultView:window).document);n instanceof e.HTMLIFrameElement;){try{var t="string"==typeof n.contentWindow.location.href}catch(e){t=!1}if(!t)break;n=mn((e=n.contentWindow).document)}return n}function or(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n&&("input"===n&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===n||"true"===e.contentEditable)}var ar=qn&&"documentMode"in document&&11>=document.documentMode,ir=null,sr=null,lr=null,cr=!1;function dr(e,n,t){var r=t.window===t?t.document:9===t.nodeType?t:t.ownerDocument;cr||null==ir||ir!==mn(r)||(r="selectionStart"in(r=ir)&&or(r)?{start:r.selectionStart,end:r.selectionEnd}:{anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},lr&&Gt(lr,r)||(lr=r,0<(r=rA(sr,"onSelect")).length&&(n=new rt("onSelect","select",null,n,t),e.push({event:n,listeners:r}),n.target=ir)))}function Ar(e,n){var t={};return t[e.toLowerCase()]=n.toLowerCase(),t["Webkit"+e]="webkit"+n,t["Moz"+e]="moz"+n,t}var ur={animationend:Ar("Animation","AnimationEnd"),animationiteration:Ar("Animation","AnimationIteration"),animationstart:Ar("Animation","AnimationStart"),transitionrun:Ar("Transition","TransitionRun"),transitionstart:Ar("Transition","TransitionStart"),transitioncancel:Ar("Transition","TransitionCancel"),transitionend:Ar("Transition","TransitionEnd")},fr={},pr={};function hr(e){if(fr[e])return fr[e];if(!ur[e])return e;var n,t=ur[e];for(n in t)if(t.hasOwnProperty(n)&&n in pr)return fr[e]=t[n];return e}qn&&(pr=document.createElement("div").style,"AnimationEvent"in window||(delete ur.animationend.animation,delete ur.animationiteration.animation,delete ur.animationstart.animation),"TransitionEvent"in window||delete ur.transitionend.transition);var mr=hr("animationend"),gr=hr("animationiteration"),br=hr("animationstart"),Er=hr("transitionrun"),xr=hr("transitionstart"),Cr=hr("transitioncancel"),Br=hr("transitionend"),yr=new Map,vr="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function kr(e,n){yr.set(e,n),rn(n,[e])}vr.push("scrollEnd");var wr="function"==typeof reportError?reportError:function(e){if("object"==typeof window&&"function"==typeof window.ErrorEvent){var n=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"==typeof e&&null!==e&&"string"==typeof e.message?String(e.message):String(e),error:e});if(!window.dispatchEvent(n))return}else if("object"==typeof process&&"function"==typeof process.emit)return void process.emit("uncaughtException",e);console.error(e)},Sr=[],jr=0,Nr=0;function zr(){for(var e=jr,n=Nr=jr=0;n<e;){var t=Sr[n];Sr[n++]=null;var r=Sr[n];Sr[n++]=null;var o=Sr[n];Sr[n++]=null;var a=Sr[n];if(Sr[n++]=null,null!==r&&null!==o){var i=r.pending;null===i?o.next=o:(o.next=i.next,i.next=o),r.pending=o}0!==a&&Tr(t,o,a)}}function Pr(e,n,t,r){Sr[jr++]=e,Sr[jr++]=n,Sr[jr++]=t,Sr[jr++]=r,Nr|=r,e.lanes|=r,null!==(e=e.alternate)&&(e.lanes|=r)}function _r(e,n,t,r){return Pr(e,n,t,r),Mr(e)}function Or(e,n){return Pr(e,null,null,n),Mr(e)}function Tr(e,n,t){e.lanes|=t;var r=e.alternate;null!==r&&(r.lanes|=t);for(var o=!1,a=e.return;null!==a;)a.childLanes|=t,null!==(r=a.alternate)&&(r.childLanes|=t),22===a.tag&&(null===(e=a.stateNode)||1&e._visibility||(o=!0)),e=a,a=a.return;return 3===e.tag?(a=e.stateNode,o&&null!==n&&(o=31-xe(t),null===(r=(e=a.hiddenUpdates)[o])?e[o]=[n]:r.push(n),n.lane=536870912|t),a):null}function Mr(e){if(50<$c)throw $c=0,Vc=null,Error(i(185));for(var n=e.return;null!==n;)n=(e=n).return;return 3===e.tag?e.stateNode:null}var Rr={};function Dr(e,n,t,r){this.tag=e,this.key=t,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Lr(e,n,t,r){return new Dr(e,n,t,r)}function Fr(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Ir(e,n){var t=e.alternate;return null===t?((t=Lr(e.tag,n,e.key,e.mode)).elementType=e.elementType,t.type=e.type,t.stateNode=e.stateNode,t.alternate=e,e.alternate=t):(t.pendingProps=n,t.type=e.type,t.flags=0,t.subtreeFlags=0,t.deletions=null),t.flags=65011712&e.flags,t.childLanes=e.childLanes,t.lanes=e.lanes,t.child=e.child,t.memoizedProps=e.memoizedProps,t.memoizedState=e.memoizedState,t.updateQueue=e.updateQueue,n=e.dependencies,t.dependencies=null===n?null:{lanes:n.lanes,firstContext:n.firstContext},t.sibling=e.sibling,t.index=e.index,t.ref=e.ref,t.refCleanup=e.refCleanup,t}function Ur(e,n){e.flags&=65011714;var t=e.alternate;return null===t?(e.childLanes=0,e.lanes=n,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=t.childLanes,e.lanes=t.lanes,e.child=t.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=t.memoizedProps,e.memoizedState=t.memoizedState,e.updateQueue=t.updateQueue,e.type=t.type,n=t.dependencies,e.dependencies=null===n?null:{lanes:n.lanes,firstContext:n.firstContext}),e}function qr(e,n,t,r,o,a){var s=0;if(r=e,"function"==typeof e)Fr(e)&&(s=1);else if("string"==typeof e)s=function(e,n,t){if(1===t||null!=n.itemProp)return!1;switch(e){case"meta":case"title":return!0;case"style":if("string"!=typeof n.precedence||"string"!=typeof n.href||""===n.href)break;return!0;case"link":if("string"!=typeof n.rel||"string"!=typeof n.href||""===n.href||n.onLoad||n.onError)break;return"stylesheet"!==n.rel||(e=n.disabled,"string"==typeof n.precedence&&null==e);case"script":if(n.async&&"function"!=typeof n.async&&"symbol"!=typeof n.async&&!n.onLoad&&!n.onError&&n.src&&"string"==typeof n.src)return!0}return!1}(e,t,$.current)?26:"html"===e||"head"===e||"body"===e?27:5;else e:switch(e){case S:return(e=Lr(31,t,n,o)).elementType=S,e.lanes=a,e;case g:return Yr(t.children,o,a,n);case b:s=8,o|=24;break;case E:return(e=Lr(12,t,n,2|o)).elementType=E,e.lanes=a,e;case y:return(e=Lr(13,t,n,o)).elementType=y,e.lanes=a,e;case v:return(e=Lr(19,t,n,o)).elementType=v,e.lanes=a,e;default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case C:s=10;break e;case x:s=9;break e;case B:s=11;break e;case k:s=14;break e;case w:s=16,r=null;break e}s=29,t=Error(i(130,null===e?"null":typeof e,"")),r=null}return(n=Lr(s,t,n,o)).elementType=e,n.type=r,n.lanes=a,n}function Yr(e,n,t,r){return(e=Lr(7,e,r,n)).lanes=t,e}function $r(e,n,t){return(e=Lr(6,e,null,n)).lanes=t,e}function Vr(e){var n=Lr(18,null,null,0);return n.stateNode=e,n}function Wr(e,n,t){return(n=Lr(4,null!==e.children?e.children:[],e.key,n)).lanes=t,n.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},n}var Qr=new WeakMap;function Hr(e,n){if("object"==typeof e&&null!==e){var t=Qr.get(e);return void 0!==t?t:(n={value:e,source:n,stack:te(n)},Qr.set(e,n),n)}return{value:e,source:n,stack:te(n)}}var Jr=[],Zr=0,Kr=null,Xr=0,Gr=[],eo=0,no=null,to=1,ro="";function oo(e,n){Jr[Zr++]=Xr,Jr[Zr++]=Kr,Kr=e,Xr=n}function ao(e,n,t){Gr[eo++]=to,Gr[eo++]=ro,Gr[eo++]=no,no=e;var r=to;e=ro;var o=32-xe(r)-1;r&=~(1<<o),t+=1;var a=32-xe(n)+o;if(30<a){var i=o-o%5;a=(r&(1<<i)-1).toString(32),r>>=i,o-=i,to=1<<32-xe(n)+o|t<<o|r,ro=a+e}else to=1<<a|t<<o|r,ro=e}function io(e){null!==e.return&&(oo(e,1),ao(e,1,0))}function so(e){for(;e===Kr;)Kr=Jr[--Zr],Jr[Zr]=null,Xr=Jr[--Zr],Jr[Zr]=null;for(;e===no;)no=Gr[--eo],Gr[eo]=null,ro=Gr[--eo],Gr[eo]=null,to=Gr[--eo],Gr[eo]=null}function lo(e,n){Gr[eo++]=to,Gr[eo++]=ro,Gr[eo++]=no,to=n.id,ro=n.overflow,no=e}var co=null,Ao=null,uo=!1,fo=null,po=!1,ho=Error(i(519));function mo(e){throw Bo(Hr(Error(i(418,1<arguments.length&&void 0!==arguments[1]&&arguments[1]?"text":"HTML","")),e)),ho}function go(e){var n=e.stateNode,t=e.type,r=e.memoizedProps;switch(n[Ue]=e,n[qe]=r,t){case"dialog":Zd("cancel",n),Zd("close",n);break;case"iframe":case"object":case"embed":Zd("load",n);break;case"video":case"audio":for(t=0;t<Qd.length;t++)Zd(Qd[t],n);break;case"source":Zd("error",n);break;case"img":case"image":case"link":Zd("error",n),Zd("load",n);break;case"details":Zd("toggle",n);break;case"input":Zd("invalid",n),xn(n,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case"select":Zd("invalid",n);break;case"textarea":Zd("invalid",n),vn(n,r.value,r.defaultValue,r.children)}"string"!=typeof(t=r.children)&&"number"!=typeof t&&"bigint"!=typeof t||n.textContent===""+t||!0===r.suppressHydrationWarning||cA(n.textContent,t)?(null!=r.popover&&(Zd("beforetoggle",n),Zd("toggle",n)),null!=r.onScroll&&Zd("scroll",n),null!=r.onScrollEnd&&Zd("scrollend",n),null!=r.onClick&&(n.onclick=On),n=!0):n=!1,n||mo(e,!0)}function bo(e){for(co=e.return;co;)switch(co.tag){case 5:case 31:case 13:return void(po=!1);case 27:case 3:return void(po=!0);default:co=co.return}}function Eo(e){if(e!==co)return!1;if(!uo)return bo(e),uo=!0,!1;var n,t=e.tag;if((n=3!==t&&27!==t)&&((n=5===t)&&(n=!("form"!==(n=e.type)&&"button"!==n)||EA(e.type,e.memoizedProps)),n=!n),n&&Ao&&mo(e),bo(e),13===t){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(i(317));Ao=MA(e)}else if(31===t){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(i(317));Ao=MA(e)}else 27===t?(t=Ao,wA(e.type)?(e=TA,TA=null,Ao=e):Ao=t):Ao=co?OA(e.stateNode.nextSibling):null;return!0}function xo(){Ao=co=null,uo=!1}function Co(){var e=fo;return null!==e&&(null===zc?zc=e:zc.push.apply(zc,e),fo=null),e}function Bo(e){null===fo?fo=[e]:fo.push(e)}var yo=F(null),vo=null,ko=null;function wo(e,n,t){U(yo,n._currentValue),n._currentValue=t}function So(e){e._currentValue=yo.current,I(yo)}function jo(e,n,t){for(;null!==e;){var r=e.alternate;if((e.childLanes&n)!==n?(e.childLanes|=n,null!==r&&(r.childLanes|=n)):null!==r&&(r.childLanes&n)!==n&&(r.childLanes|=n),e===t)break;e=e.return}}function No(e,n,t,r){var o=e.child;for(null!==o&&(o.return=e);null!==o;){var a=o.dependencies;if(null!==a){var s=o.child;a=a.firstContext;e:for(;null!==a;){var l=a;a=o;for(var c=0;c<n.length;c++)if(l.context===n[c]){a.lanes|=t,null!==(l=a.alternate)&&(l.lanes|=t),jo(a.return,t,e),r||(s=null);break e}a=l.next}}else if(18===o.tag){if(null===(s=o.return))throw Error(i(341));s.lanes|=t,null!==(a=s.alternate)&&(a.lanes|=t),jo(s,t,e),s=null}else s=o.child;if(null!==s)s.return=o;else for(s=o;null!==s;){if(s===e){s=null;break}if(null!==(o=s.sibling)){o.return=s.return,s=o;break}s=s.return}o=s}}function zo(e,n,t,r){e=null;for(var o=n,a=!1;null!==o;){if(!a)if(524288&o.flags)a=!0;else if(262144&o.flags)break;if(10===o.tag){var s=o.alternate;if(null===s)throw Error(i(387));if(null!==(s=s.memoizedProps)){var l=o.type;Xt(o.pendingProps.value,s.value)||(null!==e?e.push(l):e=[l])}}else if(o===Q.current){if(null===(s=o.alternate))throw Error(i(387));s.memoizedState.memoizedState!==o.memoizedState.memoizedState&&(null!==e?e.push(du):e=[du])}o=o.return}null!==e&&No(n,e,t,r),n.flags|=262144}function Po(e){for(e=e.firstContext;null!==e;){if(!Xt(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function _o(e){vo=e,ko=null,null!==(e=e.dependencies)&&(e.firstContext=null)}function Oo(e){return Mo(vo,e)}function To(e,n){return null===vo&&_o(e),Mo(e,n)}function Mo(e,n){var t=n._currentValue;if(n={context:n,memoizedValue:t,next:null},null===ko){if(null===e)throw Error(i(308));ko=n,e.dependencies={lanes:0,firstContext:n},e.flags|=524288}else ko=ko.next=n;return t}var Ro="undefined"!=typeof AbortController?AbortController:function(){var e=[],n=this.signal={aborted:!1,addEventListener:function(n,t){e.push(t)}};this.abort=function(){n.aborted=!0,e.forEach(function(e){return e()})}},Do=r.unstable_scheduleCallback,Lo=r.unstable_NormalPriority,Fo={$$typeof:C,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Io(){return{controller:new Ro,data:new Map,refCount:0}}function Uo(e){e.refCount--,0===e.refCount&&Do(Lo,function(){e.controller.abort()})}var qo=null,Yo=0,$o=0,Vo=null;function Wo(){if(0===--Yo&&null!==qo){null!==Vo&&(Vo.status="fulfilled");var e=qo;qo=null,$o=0,Vo=null;for(var n=0;n<e.length;n++)(0,e[n])()}}var Qo=T.S;T.S=function(e,n){Oc=le(),"object"==typeof n&&null!==n&&"function"==typeof n.then&&function(e,n){if(null===qo){var t=qo=[];Yo=0,$o=qd(),Vo={status:"pending",value:void 0,then:function(e){t.push(e)}}}Yo++,n.then(Wo,Wo)}(0,n),null!==Qo&&Qo(e,n)};var Ho=F(null);function Jo(){var e=Ho.current;return null!==e?e:pc.pooledCache}function Zo(e,n){U(Ho,null===n?Ho.current:n.pool)}function Ko(){var e=Jo();return null===e?null:{parent:Fo._currentValue,pool:e}}var Xo=Error(i(460)),Go=Error(i(474)),ea=Error(i(542)),na={then:function(){}};function ta(e){return"fulfilled"===(e=e.status)||"rejected"===e}function ra(e,n,t){switch(void 0===(t=e[t])?e.push(n):t!==n&&(n.then(On,On),n=t),n.status){case"fulfilled":return n.value;case"rejected":throw sa(e=n.reason),e;default:if("string"==typeof n.status)n.then(On,On);else{if(null!==(e=pc)&&100<e.shellSuspendCounter)throw Error(i(482));(e=n).status="pending",e.then(function(e){if("pending"===n.status){var t=n;t.status="fulfilled",t.value=e}},function(e){if("pending"===n.status){var t=n;t.status="rejected",t.reason=e}})}switch(n.status){case"fulfilled":return n.value;case"rejected":throw sa(e=n.reason),e}throw aa=n,Xo}}function oa(e){try{return(0,e._init)(e._payload)}catch(e){if(null!==e&&"object"==typeof e&&"function"==typeof e.then)throw aa=e,Xo;throw e}}var aa=null;function ia(){if(null===aa)throw Error(i(459));var e=aa;return aa=null,e}function sa(e){if(e===Xo||e===ea)throw Error(i(483))}var la=null,ca=0;function da(e){var n=ca;return ca+=1,null===la&&(la=[]),ra(la,e,n)}function Aa(e,n){n=n.props.ref,e.ref=void 0!==n?n:null}function ua(e,n){if(n.$$typeof===p)throw Error(i(525));throw e=Object.prototype.toString.call(n),Error(i(31,"[object Object]"===e?"object with keys {"+Object.keys(n).join(", ")+"}":e))}function fa(e){function n(n,t){if(e){var r=n.deletions;null===r?(n.deletions=[t],n.flags|=16):r.push(t)}}function t(t,r){if(!e)return null;for(;null!==r;)n(t,r),r=r.sibling;return null}function r(e){for(var n=new Map;null!==e;)null!==e.key?n.set(e.key,e):n.set(e.index,e),e=e.sibling;return n}function o(e,n){return(e=Ir(e,n)).index=0,e.sibling=null,e}function a(n,t,r){return n.index=r,e?null!==(r=n.alternate)?(r=r.index)<t?(n.flags|=67108866,t):r:(n.flags|=67108866,t):(n.flags|=1048576,t)}function s(n){return e&&null===n.alternate&&(n.flags|=67108866),n}function l(e,n,t,r){return null===n||6!==n.tag?((n=$r(t,e.mode,r)).return=e,n):((n=o(n,t)).return=e,n)}function c(e,n,t,r){var a=t.type;return a===g?A(e,n,t.props.children,r,t.key):null!==n&&(n.elementType===a||"object"==typeof a&&null!==a&&a.$$typeof===w&&oa(a)===n.type)?(Aa(n=o(n,t.props),t),n.return=e,n):(Aa(n=qr(t.type,t.key,t.props,null,e.mode,r),t),n.return=e,n)}function d(e,n,t,r){return null===n||4!==n.tag||n.stateNode.containerInfo!==t.containerInfo||n.stateNode.implementation!==t.implementation?((n=Wr(t,e.mode,r)).return=e,n):((n=o(n,t.children||[])).return=e,n)}function A(e,n,t,r,a){return null===n||7!==n.tag?((n=Yr(t,e.mode,r,a)).return=e,n):((n=o(n,t)).return=e,n)}function u(e,n,t){if("string"==typeof n&&""!==n||"number"==typeof n||"bigint"==typeof n)return(n=$r(""+n,e.mode,t)).return=e,n;if("object"==typeof n&&null!==n){switch(n.$$typeof){case h:return Aa(t=qr(n.type,n.key,n.props,null,e.mode,t),n),t.return=e,t;case m:return(n=Wr(n,e.mode,t)).return=e,n;case w:return u(e,n=oa(n),t)}if(O(n)||z(n))return(n=Yr(n,e.mode,t,null)).return=e,n;if("function"==typeof n.then)return u(e,da(n),t);if(n.$$typeof===C)return u(e,To(e,n),t);ua(e,n)}return null}function f(e,n,t,r){var o=null!==n?n.key:null;if("string"==typeof t&&""!==t||"number"==typeof t||"bigint"==typeof t)return null!==o?null:l(e,n,""+t,r);if("object"==typeof t&&null!==t){switch(t.$$typeof){case h:return t.key===o?c(e,n,t,r):null;case m:return t.key===o?d(e,n,t,r):null;case w:return f(e,n,t=oa(t),r)}if(O(t)||z(t))return null!==o?null:A(e,n,t,r,null);if("function"==typeof t.then)return f(e,n,da(t),r);if(t.$$typeof===C)return f(e,n,To(e,t),r);ua(e,t)}return null}function p(e,n,t,r,o){if("string"==typeof r&&""!==r||"number"==typeof r||"bigint"==typeof r)return l(n,e=e.get(t)||null,""+r,o);if("object"==typeof r&&null!==r){switch(r.$$typeof){case h:return c(n,e=e.get(null===r.key?t:r.key)||null,r,o);case m:return d(n,e=e.get(null===r.key?t:r.key)||null,r,o);case w:return p(e,n,t,r=oa(r),o)}if(O(r)||z(r))return A(n,e=e.get(t)||null,r,o,null);if("function"==typeof r.then)return p(e,n,t,da(r),o);if(r.$$typeof===C)return p(e,n,t,To(n,r),o);ua(n,r)}return null}function b(l,c,d,A){if("object"==typeof d&&null!==d&&d.type===g&&null===d.key&&(d=d.props.children),"object"==typeof d&&null!==d){switch(d.$$typeof){case h:e:{for(var E=d.key;null!==c;){if(c.key===E){if((E=d.type)===g){if(7===c.tag){t(l,c.sibling),(A=o(c,d.props.children)).return=l,l=A;break e}}else if(c.elementType===E||"object"==typeof E&&null!==E&&E.$$typeof===w&&oa(E)===c.type){t(l,c.sibling),Aa(A=o(c,d.props),d),A.return=l,l=A;break e}t(l,c);break}n(l,c),c=c.sibling}d.type===g?((A=Yr(d.props.children,l.mode,A,d.key)).return=l,l=A):(Aa(A=qr(d.type,d.key,d.props,null,l.mode,A),d),A.return=l,l=A)}return s(l);case m:e:{for(E=d.key;null!==c;){if(c.key===E){if(4===c.tag&&c.stateNode.containerInfo===d.containerInfo&&c.stateNode.implementation===d.implementation){t(l,c.sibling),(A=o(c,d.children||[])).return=l,l=A;break e}t(l,c);break}n(l,c),c=c.sibling}(A=Wr(d,l.mode,A)).return=l,l=A}return s(l);case w:return b(l,c,d=oa(d),A)}if(O(d))return function(o,i,s,l){for(var c=null,d=null,A=i,h=i=0,m=null;null!==A&&h<s.length;h++){A.index>h?(m=A,A=null):m=A.sibling;var g=f(o,A,s[h],l);if(null===g){null===A&&(A=m);break}e&&A&&null===g.alternate&&n(o,A),i=a(g,i,h),null===d?c=g:d.sibling=g,d=g,A=m}if(h===s.length)return t(o,A),uo&&oo(o,h),c;if(null===A){for(;h<s.length;h++)null!==(A=u(o,s[h],l))&&(i=a(A,i,h),null===d?c=A:d.sibling=A,d=A);return uo&&oo(o,h),c}for(A=r(A);h<s.length;h++)null!==(m=p(A,o,h,s[h],l))&&(e&&null!==m.alternate&&A.delete(null===m.key?h:m.key),i=a(m,i,h),null===d?c=m:d.sibling=m,d=m);return e&&A.forEach(function(e){return n(o,e)}),uo&&oo(o,h),c}(l,c,d,A);if(z(d)){if("function"!=typeof(E=z(d)))throw Error(i(150));return function(o,s,l,c){if(null==l)throw Error(i(151));for(var d=null,A=null,h=s,m=s=0,g=null,b=l.next();null!==h&&!b.done;m++,b=l.next()){h.index>m?(g=h,h=null):g=h.sibling;var E=f(o,h,b.value,c);if(null===E){null===h&&(h=g);break}e&&h&&null===E.alternate&&n(o,h),s=a(E,s,m),null===A?d=E:A.sibling=E,A=E,h=g}if(b.done)return t(o,h),uo&&oo(o,m),d;if(null===h){for(;!b.done;m++,b=l.next())null!==(b=u(o,b.value,c))&&(s=a(b,s,m),null===A?d=b:A.sibling=b,A=b);return uo&&oo(o,m),d}for(h=r(h);!b.done;m++,b=l.next())null!==(b=p(h,o,m,b.value,c))&&(e&&null!==b.alternate&&h.delete(null===b.key?m:b.key),s=a(b,s,m),null===A?d=b:A.sibling=b,A=b);return e&&h.forEach(function(e){return n(o,e)}),uo&&oo(o,m),d}(l,c,d=E.call(d),A)}if("function"==typeof d.then)return b(l,c,da(d),A);if(d.$$typeof===C)return b(l,c,To(l,d),A);ua(l,d)}return"string"==typeof d&&""!==d||"number"==typeof d||"bigint"==typeof d?(d=""+d,null!==c&&6===c.tag?(t(l,c.sibling),(A=o(c,d)).return=l,l=A):(t(l,c),(A=$r(d,l.mode,A)).return=l,l=A),s(l)):t(l,c)}return function(e,n,t,r){try{ca=0;var o=b(e,n,t,r);return la=null,o}catch(n){if(n===Xo||n===ea)throw n;var a=Lr(29,n,null,e.mode);return a.lanes=r,a.return=e,a}}}var pa=fa(!0),ha=fa(!1),ma=!1;function ga(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ba(e,n){e=e.updateQueue,n.updateQueue===e&&(n.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Ea(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xa(e,n,t){var r=e.updateQueue;if(null===r)return null;if(r=r.shared,2&fc){var o=r.pending;return null===o?n.next=n:(n.next=o.next,o.next=n),r.pending=n,n=Mr(e),Tr(e,null,t),n}return Pr(e,r,n,t),Mr(e)}function Ca(e,n,t){if(null!==(n=n.updateQueue)&&(n=n.shared,4194048&t)){var r=n.lanes;t|=r&=e.pendingLanes,n.lanes=t,Te(e,t)}}function Ba(e,n){var t=e.updateQueue,r=e.alternate;if(null!==r&&t===(r=r.updateQueue)){var o=null,a=null;if(null!==(t=t.firstBaseUpdate)){do{var i={lane:t.lane,tag:t.tag,payload:t.payload,callback:null,next:null};null===a?o=a=i:a=a.next=i,t=t.next}while(null!==t);null===a?o=a=n:a=a.next=n}else o=a=n;return t={baseState:r.baseState,firstBaseUpdate:o,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},void(e.updateQueue=t)}null===(e=t.lastBaseUpdate)?t.firstBaseUpdate=n:e.next=n,t.lastBaseUpdate=n}var ya=!1;function va(){if(ya&&null!==Vo)throw Vo}function ka(e,n,t,r){ya=!1;var o=e.updateQueue;ma=!1;var a=o.firstBaseUpdate,i=o.lastBaseUpdate,s=o.shared.pending;if(null!==s){o.shared.pending=null;var l=s,c=l.next;l.next=null,null===i?a=c:i.next=c,i=l;var d=e.alternate;null!==d&&(s=(d=d.updateQueue).lastBaseUpdate)!==i&&(null===s?d.firstBaseUpdate=c:s.next=c,d.lastBaseUpdate=l)}if(null!==a){var A=o.baseState;for(i=0,d=c=l=null,s=a;;){var u=-536870913&s.lane,p=u!==s.lane;if(p?(mc&u)===u:(r&u)===u){0!==u&&u===$o&&(ya=!0),null!==d&&(d=d.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});e:{var h=e,m=s;u=n;var g=t;switch(m.tag){case 1:if("function"==typeof(h=m.payload)){A=h.call(g,A,u);break e}A=h;break e;case 3:h.flags=-65537&h.flags|128;case 0:if(null==(u="function"==typeof(h=m.payload)?h.call(g,A,u):h))break e;A=f({},A,u);break e;case 2:ma=!0}}null!==(u=s.callback)&&(e.flags|=64,p&&(e.flags|=8192),null===(p=o.callbacks)?o.callbacks=[u]:p.push(u))}else p={lane:u,tag:s.tag,payload:s.payload,callback:s.callback,next:null},null===d?(c=d=p,l=A):d=d.next=p,i|=u;if(null===(s=s.next)){if(null===(s=o.shared.pending))break;s=(p=s).next,p.next=null,o.lastBaseUpdate=p,o.shared.pending=null}}null===d&&(l=A),o.baseState=l,o.firstBaseUpdate=c,o.lastBaseUpdate=d,null===a&&(o.shared.lanes=0),vc|=i,e.lanes=i,e.memoizedState=A}}function wa(e,n){if("function"!=typeof e)throw Error(i(191,e));e.call(n)}function Sa(e,n){var t=e.callbacks;if(null!==t)for(e.callbacks=null,e=0;e<t.length;e++)wa(t[e],n)}var ja=F(null),Na=F(0);function za(e,n){U(Na,e=Bc),U(ja,n),Bc=e|n.baseLanes}function Pa(){U(Na,Bc),U(ja,ja.current)}function _a(){Bc=Na.current,I(ja),I(Na)}var Oa=F(null),Ta=null;function Ma(e){var n=e.alternate;U(Ia,1&Ia.current),U(Oa,e),null===Ta&&(null===n||null!==ja.current||null!==n.memoizedState)&&(Ta=e)}function Ra(e){U(Ia,Ia.current),U(Oa,e),null===Ta&&(Ta=e)}function Da(e){22===e.tag?(U(Ia,Ia.current),U(Oa,e),null===Ta&&(Ta=e)):La()}function La(){U(Ia,Ia.current),U(Oa,Oa.current)}function Fa(e){I(Oa),Ta===e&&(Ta=null),I(Ia)}var Ia=F(0);function Ua(e){for(var n=e;null!==n;){if(13===n.tag){var t=n.memoizedState;if(null!==t&&(null===(t=t.dehydrated)||PA(t)||_A(t)))return n}else if(19!==n.tag||"forwards"!==n.memoizedProps.revealOrder&&"backwards"!==n.memoizedProps.revealOrder&&"unstable_legacy-backwards"!==n.memoizedProps.revealOrder&&"together"!==n.memoizedProps.revealOrder){if(null!==n.child){n.child.return=n,n=n.child;continue}}else if(128&n.flags)return n;if(n===e)break;for(;null===n.sibling;){if(null===n.return||n.return===e)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}return null}var qa=0,Ya=null,$a=null,Va=null,Wa=!1,Qa=!1,Ha=!1,Ja=0,Za=0,Ka=null,Xa=0;function Ga(){throw Error(i(321))}function ei(e,n){if(null===n)return!1;for(var t=0;t<n.length&&t<e.length;t++)if(!Xt(e[t],n[t]))return!1;return!0}function ni(e,n,t,r,o,a){return qa=a,Ya=n,n.memoizedState=null,n.updateQueue=null,n.lanes=0,T.H=null===e||null===e.memoizedState?ms:gs,Ha=!1,a=t(r,o),Ha=!1,Qa&&(a=ri(n,t,r,o)),ti(e),a}function ti(e){T.H=hs;var n=null!==$a&&null!==$a.next;if(qa=0,Va=$a=Ya=null,Wa=!1,Za=0,Ka=null,n)throw Error(i(300));null===e||Os||null!==(e=e.dependencies)&&Po(e)&&(Os=!0)}function ri(e,n,t,r){Ya=e;var o=0;do{if(Qa&&(Ka=null),Za=0,Qa=!1,25<=o)throw Error(i(301));if(o+=1,Va=$a=null,null!=e.updateQueue){var a=e.updateQueue;a.lastEffect=null,a.events=null,a.stores=null,null!=a.memoCache&&(a.memoCache.index=0)}T.H=bs,a=n(t,r)}while(Qa);return a}function oi(){var e=T.H,n=e.useState()[0];return n="function"==typeof n.then?di(n):n,e=e.useState()[0],(null!==$a?$a.memoizedState:null)!==e&&(Ya.flags|=1024),n}function ai(){var e=0!==Ja;return Ja=0,e}function ii(e,n,t){n.updateQueue=e.updateQueue,n.flags&=-2053,e.lanes&=~t}function si(e){if(Wa){for(e=e.memoizedState;null!==e;){var n=e.queue;null!==n&&(n.pending=null),e=e.next}Wa=!1}qa=0,Va=$a=Ya=null,Qa=!1,Za=Ja=0,Ka=null}function li(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===Va?Ya.memoizedState=Va=e:Va=Va.next=e,Va}function ci(){if(null===$a){var e=Ya.alternate;e=null!==e?e.memoizedState:null}else e=$a.next;var n=null===Va?Ya.memoizedState:Va.next;if(null!==n)Va=n,$a=e;else{if(null===e){if(null===Ya.alternate)throw Error(i(467));throw Error(i(310))}e={memoizedState:($a=e).memoizedState,baseState:$a.baseState,baseQueue:$a.baseQueue,queue:$a.queue,next:null},null===Va?Ya.memoizedState=Va=e:Va=Va.next=e}return Va}function di(e){var n=Za;return Za+=1,null===Ka&&(Ka=[]),e=ra(Ka,e,n),n=Ya,null===(null===Va?n.memoizedState:Va.next)&&(n=n.alternate,T.H=null===n||null===n.memoizedState?ms:gs),e}function Ai(e){if(null!==e&&"object"==typeof e){if("function"==typeof e.then)return di(e);if(e.$$typeof===C)return Oo(e)}throw Error(i(438,String(e)))}function ui(e){var n=null,t=Ya.updateQueue;if(null!==t&&(n=t.memoCache),null==n){var r=Ya.alternate;null!==r&&null!==(r=r.updateQueue)&&null!=(r=r.memoCache)&&(n={data:r.data.map(function(e){return e.slice()}),index:0})}if(null==n&&(n={data:[],index:0}),null===t&&(t={lastEffect:null,events:null,stores:null,memoCache:null},Ya.updateQueue=t),t.memoCache=n,void 0===(t=n.data[n.index]))for(t=n.data[n.index]=Array(e),r=0;r<e;r++)t[r]=j;return n.index++,t}function fi(e,n){return"function"==typeof n?n(e):n}function pi(e){return hi(ci(),$a,e)}function hi(e,n,t){var r=e.queue;if(null===r)throw Error(i(311));r.lastRenderedReducer=t;var o=e.baseQueue,a=r.pending;if(null!==a){if(null!==o){var s=o.next;o.next=a.next,a.next=s}n.baseQueue=o=a,r.pending=null}if(a=e.baseState,null===o)e.memoizedState=a;else{var l=s=null,c=null,d=n=o.next,A=!1;do{var u=-536870913&d.lane;if(u!==d.lane?(mc&u)===u:(qa&u)===u){var f=d.revertLane;if(0===f)null!==c&&(c=c.next={lane:0,revertLane:0,gesture:null,action:d.action,hasEagerState:d.hasEagerState,eagerState:d.eagerState,next:null}),u===$o&&(A=!0);else{if((qa&f)===f){d=d.next,f===$o&&(A=!0);continue}u={lane:0,revertLane:d.revertLane,gesture:null,action:d.action,hasEagerState:d.hasEagerState,eagerState:d.eagerState,next:null},null===c?(l=c=u,s=a):c=c.next=u,Ya.lanes|=f,vc|=f}u=d.action,Ha&&t(a,u),a=d.hasEagerState?d.eagerState:t(a,u)}else f={lane:u,revertLane:d.revertLane,gesture:d.gesture,action:d.action,hasEagerState:d.hasEagerState,eagerState:d.eagerState,next:null},null===c?(l=c=f,s=a):c=c.next=f,Ya.lanes|=u,vc|=u;d=d.next}while(null!==d&&d!==n);if(null===c?s=a:c.next=l,!Xt(a,e.memoizedState)&&(Os=!0,A&&null!==(t=Vo)))throw t;e.memoizedState=a,e.baseState=s,e.baseQueue=c,r.lastRenderedState=a}return null===o&&(r.lanes=0),[e.memoizedState,r.dispatch]}function mi(e){var n=ci(),t=n.queue;if(null===t)throw Error(i(311));t.lastRenderedReducer=e;var r=t.dispatch,o=t.pending,a=n.memoizedState;if(null!==o){t.pending=null;var s=o=o.next;do{a=e(a,s.action),s=s.next}while(s!==o);Xt(a,n.memoizedState)||(Os=!0),n.memoizedState=a,null===n.baseQueue&&(n.baseState=a),t.lastRenderedState=a}return[a,r]}function gi(e,n,t){var r=Ya,o=ci(),a=uo;if(a){if(void 0===t)throw Error(i(407));t=t()}else t=n();var s=!Xt(($a||o).memoizedState,t);if(s&&(o.memoizedState=t,Os=!0),o=o.queue,qi(xi.bind(null,r,o,e),[e]),o.getSnapshot!==n||s||null!==Va&&1&Va.memoizedState.tag){if(r.flags|=2048,Di(9,{destroy:void 0},Ei.bind(null,r,o,t,n),null),null===pc)throw Error(i(349));a||127&qa||bi(r,n,t)}return t}function bi(e,n,t){e.flags|=16384,e={getSnapshot:n,value:t},null===(n=Ya.updateQueue)?(n={lastEffect:null,events:null,stores:null,memoCache:null},Ya.updateQueue=n,n.stores=[e]):null===(t=n.stores)?n.stores=[e]:t.push(e)}function Ei(e,n,t,r){n.value=t,n.getSnapshot=r,Ci(n)&&Bi(e)}function xi(e,n,t){return t(function(){Ci(n)&&Bi(e)})}function Ci(e){var n=e.getSnapshot;e=e.value;try{var t=n();return!Xt(e,t)}catch(e){return!0}}function Bi(e){var n=Or(e,2);null!==n&&Hc(n,0,2)}function yi(e){var n=li();if("function"==typeof e){var t=e;if(e=t(),Ha){Ee(!0);try{t()}finally{Ee(!1)}}}return n.memoizedState=n.baseState=e,n.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:fi,lastRenderedState:e},n}function vi(e,n,t,r){return e.baseState=t,hi(e,$a,"function"==typeof r?r:fi)}function ki(e,n,t,r,o){if(us(e))throw Error(i(485));if(null!==(e=n.action)){var a={payload:o,action:e,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(e){a.listeners.push(e)}};null!==T.T?t(!0):a.isTransition=!1,r(a),null===(t=n.pending)?(a.next=n.pending=a,wi(n,a)):(a.next=t.next,n.pending=t.next=a)}}function wi(e,n){var t=n.action,r=n.payload,o=e.state;if(n.isTransition){var a=T.T,i={};T.T=i;try{var s=t(o,r),l=T.S;null!==l&&l(i,s),Si(e,n,s)}catch(t){Ni(e,n,t)}finally{null!==a&&null!==i.types&&(a.types=i.types),T.T=a}}else try{Si(e,n,a=t(o,r))}catch(t){Ni(e,n,t)}}function Si(e,n,t){null!==t&&"object"==typeof t&&"function"==typeof t.then?t.then(function(t){ji(e,n,t)},function(t){return Ni(e,n,t)}):ji(e,n,t)}function ji(e,n,t){n.status="fulfilled",n.value=t,zi(n),e.state=t,null!==(n=e.pending)&&((t=n.next)===n?e.pending=null:(t=t.next,n.next=t,wi(e,t)))}function Ni(e,n,t){var r=e.pending;if(e.pending=null,null!==r){r=r.next;do{n.status="rejected",n.reason=t,zi(n),n=n.next}while(n!==r)}e.action=null}function zi(e){e=e.listeners;for(var n=0;n<e.length;n++)(0,e[n])()}function Pi(e,n){return n}function _i(e,n){if(uo){var t=pc.formState;if(null!==t){e:{var r=Ya;if(uo){if(Ao){n:{for(var o=Ao,a=po;8!==o.nodeType;){if(!a){o=null;break n}if(null===(o=OA(o.nextSibling))){o=null;break n}}o="F!"===(a=o.data)||"F"===a?o:null}if(o){Ao=OA(o.nextSibling),r="F!"===o.data;break e}}mo(r)}r=!1}r&&(n=t[0])}}return(t=li()).memoizedState=t.baseState=n,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Pi,lastRenderedState:n},t.queue=r,t=cs.bind(null,Ya,r),r.dispatch=t,r=yi(!1),a=As.bind(null,Ya,!1,r.queue),o={state:n,dispatch:null,action:e,pending:null},(r=li()).queue=o,t=ki.bind(null,Ya,o,a,t),o.dispatch=t,r.memoizedState=e,[n,t,!1]}function Oi(e){return Ti(ci(),$a,e)}function Ti(e,n,t){if(n=hi(e,n,Pi)[0],e=pi(fi)[0],"object"==typeof n&&null!==n&&"function"==typeof n.then)try{var r=di(n)}catch(e){if(e===Xo)throw ea;throw e}else r=n;var o=(n=ci()).queue,a=o.dispatch;return t!==n.memoizedState&&(Ya.flags|=2048,Di(9,{destroy:void 0},Mi.bind(null,o,t),null)),[r,a,e]}function Mi(e,n){e.action=n}function Ri(e){var n=ci(),t=$a;if(null!==t)return Ti(n,t,e);ci(),n=n.memoizedState;var r=(t=ci()).queue.dispatch;return t.memoizedState=e,[n,r,!1]}function Di(e,n,t,r){return e={tag:e,create:t,deps:r,inst:n,next:null},null===(n=Ya.updateQueue)&&(n={lastEffect:null,events:null,stores:null,memoCache:null},Ya.updateQueue=n),null===(t=n.lastEffect)?n.lastEffect=e.next=e:(r=t.next,t.next=e,e.next=r,n.lastEffect=e),e}function Li(){return ci().memoizedState}function Fi(e,n,t,r){var o=li();Ya.flags|=e,o.memoizedState=Di(1|n,{destroy:void 0},t,void 0===r?null:r)}function Ii(e,n,t,r){var o=ci();r=void 0===r?null:r;var a=o.memoizedState.inst;null!==$a&&null!==r&&ei(r,$a.memoizedState.deps)?o.memoizedState=Di(n,a,t,r):(Ya.flags|=e,o.memoizedState=Di(1|n,a,t,r))}function Ui(e,n){Fi(8390656,8,e,n)}function qi(e,n){Ii(2048,8,e,n)}function Yi(e){var n=ci().memoizedState;return function(e){Ya.flags|=4;var n=Ya.updateQueue;if(null===n)n={lastEffect:null,events:null,stores:null,memoCache:null},Ya.updateQueue=n,n.events=[e];else{var t=n.events;null===t?n.events=[e]:t.push(e)}}({ref:n,nextImpl:e}),function(){if(2&fc)throw Error(i(440));return n.impl.apply(void 0,arguments)}}function $i(e,n){return Ii(4,2,e,n)}function Vi(e,n){return Ii(4,4,e,n)}function Wi(e,n){if("function"==typeof n){e=e();var t=n(e);return function(){"function"==typeof t?t():n(null)}}if(null!=n)return e=e(),n.current=e,function(){n.current=null}}function Qi(e,n,t){t=null!=t?t.concat([e]):null,Ii(4,4,Wi.bind(null,n,e),t)}function Hi(){}function Ji(e,n){var t=ci();n=void 0===n?null:n;var r=t.memoizedState;return null!==n&&ei(n,r[1])?r[0]:(t.memoizedState=[e,n],e)}function Zi(e,n){var t=ci();n=void 0===n?null:n;var r=t.memoizedState;if(null!==n&&ei(n,r[1]))return r[0];if(r=e(),Ha){Ee(!0);try{e()}finally{Ee(!1)}}return t.memoizedState=[r,n],r}function Ki(e,n,t){return void 0===t||1073741824&qa&&!(261930&mc)?e.memoizedState=n:(e.memoizedState=t,e=Qc(),Ya.lanes|=e,vc|=e,t)}function Xi(e,n,t,r){return Xt(t,n)?t:null!==ja.current?(e=Ki(e,t,r),Xt(e,n)||(Os=!0),e):42&qa&&(!(1073741824&qa)||261930&mc)?(e=Qc(),Ya.lanes|=e,vc|=e,n):(Os=!0,e.memoizedState=t)}function Gi(e,n,t,r,o){var a=M.p;M.p=0!==a&&8>a?a:8;var i,s,l,c=T.T,d={};T.T=d,As(e,!1,n,t);try{var A=o(),u=T.S;null!==u&&u(d,A),null!==A&&"object"==typeof A&&"function"==typeof A.then?ds(e,n,(i=r,s=[],l={status:"pending",value:null,reason:null,then:function(e){s.push(e)}},A.then(function(){l.status="fulfilled",l.value=i;for(var e=0;e<s.length;e++)(0,s[e])(i)},function(e){for(l.status="rejected",l.reason=e,e=0;e<s.length;e++)(0,s[e])(void 0)}),l),Wc()):ds(e,n,r,Wc())}catch(t){ds(e,n,{then:function(){},status:"rejected",reason:t},Wc())}finally{M.p=a,null!==c&&null!==d.types&&(c.types=d.types),T.T=c}}function es(){}function ns(e,n,t,r){if(5!==e.tag)throw Error(i(476));var o=ts(e).queue;Gi(e,o,n,R,null===t?es:function(){return rs(e),t(r)})}function ts(e){var n=e.memoizedState;if(null!==n)return n;var t={};return(n={memoizedState:R,baseState:R,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:fi,lastRenderedState:R},next:null}).next={memoizedState:t,baseState:t,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:fi,lastRenderedState:t},next:null},e.memoizedState=n,null!==(e=e.alternate)&&(e.memoizedState=n),n}function rs(e){var n=ts(e);null===n.next&&(n=e.alternate.memoizedState),ds(e,n.next.queue,{},Wc())}function os(){return Oo(du)}function as(){return ci().memoizedState}function is(){return ci().memoizedState}function ss(e){for(var n=e.return;null!==n;){switch(n.tag){case 24:case 3:var t=Wc(),r=xa(n,e=Ea(t),t);return null!==r&&(Hc(r,0,t),Ca(r,n,t)),n={cache:Io()},void(e.payload=n)}n=n.return}}function ls(e,n,t){var r=Wc();t={lane:r,revertLane:0,gesture:null,action:t,hasEagerState:!1,eagerState:null,next:null},us(e)?fs(n,t):null!==(t=_r(e,n,t,r))&&(Hc(t,0,r),ps(t,n,r))}function cs(e,n,t){ds(e,n,t,Wc())}function ds(e,n,t,r){var o={lane:r,revertLane:0,gesture:null,action:t,hasEagerState:!1,eagerState:null,next:null};if(us(e))fs(n,o);else{var a=e.alternate;if(0===e.lanes&&(null===a||0===a.lanes)&&null!==(a=n.lastRenderedReducer))try{var i=n.lastRenderedState,s=a(i,t);if(o.hasEagerState=!0,o.eagerState=s,Xt(s,i))return Pr(e,n,o,0),null===pc&&zr(),!1}catch(e){}if(null!==(t=_r(e,n,o,r)))return Hc(t,0,r),ps(t,n,r),!0}return!1}function As(e,n,t,r){if(r={lane:2,revertLane:qd(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},us(e)){if(n)throw Error(i(479))}else null!==(n=_r(e,t,r,2))&&Hc(n,0,2)}function us(e){var n=e.alternate;return e===Ya||null!==n&&n===Ya}function fs(e,n){Qa=Wa=!0;var t=e.pending;null===t?n.next=n:(n.next=t.next,t.next=n),e.pending=n}function ps(e,n,t){if(4194048&t){var r=n.lanes;t|=r&=e.pendingLanes,n.lanes=t,Te(e,t)}}var hs={readContext:Oo,use:Ai,useCallback:Ga,useContext:Ga,useEffect:Ga,useImperativeHandle:Ga,useLayoutEffect:Ga,useInsertionEffect:Ga,useMemo:Ga,useReducer:Ga,useRef:Ga,useState:Ga,useDebugValue:Ga,useDeferredValue:Ga,useTransition:Ga,useSyncExternalStore:Ga,useId:Ga,useHostTransitionStatus:Ga,useFormState:Ga,useActionState:Ga,useOptimistic:Ga,useMemoCache:Ga,useCacheRefresh:Ga};hs.useEffectEvent=Ga;var ms={readContext:Oo,use:Ai,useCallback:function(e,n){return li().memoizedState=[e,void 0===n?null:n],e},useContext:Oo,useEffect:Ui,useImperativeHandle:function(e,n,t){t=null!=t?t.concat([e]):null,Fi(4194308,4,Wi.bind(null,n,e),t)},useLayoutEffect:function(e,n){return Fi(4194308,4,e,n)},useInsertionEffect:function(e,n){Fi(4,2,e,n)},useMemo:function(e,n){var t=li();n=void 0===n?null:n;var r=e();if(Ha){Ee(!0);try{e()}finally{Ee(!1)}}return t.memoizedState=[r,n],r},useReducer:function(e,n,t){var r=li();if(void 0!==t){var o=t(n);if(Ha){Ee(!0);try{t(n)}finally{Ee(!1)}}}else o=n;return r.memoizedState=r.baseState=o,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:o},r.queue=e,e=e.dispatch=ls.bind(null,Ya,e),[r.memoizedState,e]},useRef:function(e){return e={current:e},li().memoizedState=e},useState:function(e){var n=(e=yi(e)).queue,t=cs.bind(null,Ya,n);return n.dispatch=t,[e.memoizedState,t]},useDebugValue:Hi,useDeferredValue:function(e,n){return Ki(li(),e,n)},useTransition:function(){var e=yi(!1);return e=Gi.bind(null,Ya,e.queue,!0,!1),li().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,n,t){var r=Ya,o=li();if(uo){if(void 0===t)throw Error(i(407));t=t()}else{if(t=n(),null===pc)throw Error(i(349));127&mc||bi(r,n,t)}o.memoizedState=t;var a={value:t,getSnapshot:n};return o.queue=a,Ui(xi.bind(null,r,a,e),[e]),r.flags|=2048,Di(9,{destroy:void 0},Ei.bind(null,r,a,t,n),null),t},useId:function(){var e=li(),n=pc.identifierPrefix;if(uo){var t=ro;n="_"+n+"R_"+(t=(to&~(1<<32-xe(to)-1)).toString(32)+t),0<(t=Ja++)&&(n+="H"+t.toString(32)),n+="_"}else n="_"+n+"r_"+(t=Xa++).toString(32)+"_";return e.memoizedState=n},useHostTransitionStatus:os,useFormState:_i,useActionState:_i,useOptimistic:function(e){var n=li();n.memoizedState=n.baseState=e;var t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return n.queue=t,n=As.bind(null,Ya,!0,t),t.dispatch=n,[e,n]},useMemoCache:ui,useCacheRefresh:function(){return li().memoizedState=ss.bind(null,Ya)},useEffectEvent:function(e){var n=li(),t={impl:e};return n.memoizedState=t,function(){if(2&fc)throw Error(i(440));return t.impl.apply(void 0,arguments)}}},gs={readContext:Oo,use:Ai,useCallback:Ji,useContext:Oo,useEffect:qi,useImperativeHandle:Qi,useInsertionEffect:$i,useLayoutEffect:Vi,useMemo:Zi,useReducer:pi,useRef:Li,useState:function(){return pi(fi)},useDebugValue:Hi,useDeferredValue:function(e,n){return Xi(ci(),$a.memoizedState,e,n)},useTransition:function(){var e=pi(fi)[0],n=ci().memoizedState;return["boolean"==typeof e?e:di(e),n]},useSyncExternalStore:gi,useId:as,useHostTransitionStatus:os,useFormState:Oi,useActionState:Oi,useOptimistic:function(e,n){return vi(ci(),0,e,n)},useMemoCache:ui,useCacheRefresh:is};gs.useEffectEvent=Yi;var bs={readContext:Oo,use:Ai,useCallback:Ji,useContext:Oo,useEffect:qi,useImperativeHandle:Qi,useInsertionEffect:$i,useLayoutEffect:Vi,useMemo:Zi,useReducer:mi,useRef:Li,useState:function(){return mi(fi)},useDebugValue:Hi,useDeferredValue:function(e,n){var t=ci();return null===$a?Ki(t,e,n):Xi(t,$a.memoizedState,e,n)},useTransition:function(){var e=mi(fi)[0],n=ci().memoizedState;return["boolean"==typeof e?e:di(e),n]},useSyncExternalStore:gi,useId:as,useHostTransitionStatus:os,useFormState:Ri,useActionState:Ri,useOptimistic:function(e,n){var t=ci();return null!==$a?vi(t,0,e,n):(t.baseState=e,[e,t.queue.dispatch])},useMemoCache:ui,useCacheRefresh:is};function Es(e,n,t,r){t=null==(t=t(r,n=e.memoizedState))?n:f({},n,t),e.memoizedState=t,0===e.lanes&&(e.updateQueue.baseState=t)}bs.useEffectEvent=Yi;var xs={enqueueSetState:function(e,n,t){e=e._reactInternals;var r=Wc(),o=Ea(r);o.payload=n,null!=t&&(o.callback=t),null!==(n=xa(e,o,r))&&(Hc(n,0,r),Ca(n,e,r))},enqueueReplaceState:function(e,n,t){e=e._reactInternals;var r=Wc(),o=Ea(r);o.tag=1,o.payload=n,null!=t&&(o.callback=t),null!==(n=xa(e,o,r))&&(Hc(n,0,r),Ca(n,e,r))},enqueueForceUpdate:function(e,n){e=e._reactInternals;var t=Wc(),r=Ea(t);r.tag=2,null!=n&&(r.callback=n),null!==(n=xa(e,r,t))&&(Hc(n,0,t),Ca(n,e,t))}};function Cs(e,n,t,r,o,a,i){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,a,i):!(n.prototype&&n.prototype.isPureReactComponent&&Gt(t,r)&&Gt(o,a))}function Bs(e,n,t,r){e=n.state,"function"==typeof n.componentWillReceiveProps&&n.componentWillReceiveProps(t,r),"function"==typeof n.UNSAFE_componentWillReceiveProps&&n.UNSAFE_componentWillReceiveProps(t,r),n.state!==e&&xs.enqueueReplaceState(n,n.state,null)}function ys(e,n){var t=n;if("ref"in n)for(var r in t={},n)"ref"!==r&&(t[r]=n[r]);if(e=e.defaultProps)for(var o in t===n&&(t=f({},t)),e)void 0===t[o]&&(t[o]=e[o]);return t}function vs(e){wr(e)}function ks(e){console.error(e)}function ws(e){wr(e)}function Ss(e,n){try{(0,e.onUncaughtError)(n.value,{componentStack:n.stack})}catch(e){setTimeout(function(){throw e})}}function js(e,n,t){try{(0,e.onCaughtError)(t.value,{componentStack:t.stack,errorBoundary:1===n.tag?n.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function Ns(e,n,t){return(t=Ea(t)).tag=3,t.payload={element:null},t.callback=function(){Ss(e,n)},t}function zs(e){return(e=Ea(e)).tag=3,e}function Ps(e,n,t,r){var o=t.type.getDerivedStateFromError;if("function"==typeof o){var a=r.value;e.payload=function(){return o(a)},e.callback=function(){js(n,t,r)}}var i=t.stateNode;null!==i&&"function"==typeof i.componentDidCatch&&(e.callback=function(){js(n,t,r),"function"!=typeof o&&(null===Rc?Rc=new Set([this]):Rc.add(this));var e=r.stack;this.componentDidCatch(r.value,{componentStack:null!==e?e:""})})}var _s=Error(i(461)),Os=!1;function Ts(e,n,t,r){n.child=null===e?ha(n,null,t,r):pa(n,e.child,t,r)}function Ms(e,n,t,r,o){t=t.render;var a=n.ref;if("ref"in r){var i={};for(var s in r)"ref"!==s&&(i[s]=r[s])}else i=r;return _o(n),r=ni(e,n,t,i,a,o),s=ai(),null===e||Os?(uo&&s&&io(n),n.flags|=1,Ts(e,n,r,o),n.child):(ii(e,n,o),ol(e,n,o))}function Rs(e,n,t,r,o){if(null===e){var a=t.type;return"function"!=typeof a||Fr(a)||void 0!==a.defaultProps||null!==t.compare?((e=qr(t.type,null,r,n,n.mode,o)).ref=n.ref,e.return=n,n.child=e):(n.tag=15,n.type=a,Ds(e,n,a,r,o))}if(a=e.child,!al(e,o)){var i=a.memoizedProps;if((t=null!==(t=t.compare)?t:Gt)(i,r)&&e.ref===n.ref)return ol(e,n,o)}return n.flags|=1,(e=Ir(a,r)).ref=n.ref,e.return=n,n.child=e}function Ds(e,n,t,r,o){if(null!==e){var a=e.memoizedProps;if(Gt(a,r)&&e.ref===n.ref){if(Os=!1,n.pendingProps=r=a,!al(e,o))return n.lanes=e.lanes,ol(e,n,o);131072&e.flags&&(Os=!0)}}return $s(e,n,t,r,o)}function Ls(e,n,t,r){var o=r.children,a=null!==e?e.memoizedState:null;if(null===e&&null===n.stateNode&&(n.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),"hidden"===r.mode){if(128&n.flags){if(a=null!==a?a.baseLanes|t:t,null!==e){for(r=n.child=e.child,o=0;null!==r;)o=o|r.lanes|r.childLanes,r=r.sibling;r=o&~a}else r=0,n.child=null;return Is(e,n,a,t,r)}if(!(536870912&t))return r=n.lanes=536870912,Is(e,n,null!==a?a.baseLanes|t:t,t,r);n.memoizedState={baseLanes:0,cachePool:null},null!==e&&Zo(0,null!==a?a.cachePool:null),null!==a?za(n,a):Pa(),Da(n)}else null!==a?(Zo(0,a.cachePool),za(n,a),La(),n.memoizedState=null):(null!==e&&Zo(0,null),Pa(),La());return Ts(e,n,o,t),n.child}function Fs(e,n){return null!==e&&22===e.tag||null!==n.stateNode||(n.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),n.sibling}function Is(e,n,t,r,o){var a=Jo();return a=null===a?null:{parent:Fo._currentValue,pool:a},n.memoizedState={baseLanes:t,cachePool:a},null!==e&&Zo(0,null),Pa(),Da(n),null!==e&&zo(e,n,r,!0),n.childLanes=o,null}function Us(e,n){return(n=Gs({mode:n.mode,children:n.children},e.mode)).ref=e.ref,e.child=n,n.return=e,n}function qs(e,n,t){return pa(n,e.child,null,t),(e=Us(n,n.pendingProps)).flags|=2,Fa(n),n.memoizedState=null,e}function Ys(e,n){var t=n.ref;if(null===t)null!==e&&null!==e.ref&&(n.flags|=4194816);else{if("function"!=typeof t&&"object"!=typeof t)throw Error(i(284));null!==e&&e.ref===t||(n.flags|=4194816)}}function $s(e,n,t,r,o){return _o(n),t=ni(e,n,t,r,void 0,o),r=ai(),null===e||Os?(uo&&r&&io(n),n.flags|=1,Ts(e,n,t,o),n.child):(ii(e,n,o),ol(e,n,o))}function Vs(e,n,t,r,o,a){return _o(n),n.updateQueue=null,t=ri(n,r,t,o),ti(e),r=ai(),null===e||Os?(uo&&r&&io(n),n.flags|=1,Ts(e,n,t,a),n.child):(ii(e,n,a),ol(e,n,a))}function Ws(e,n,t,r,o){if(_o(n),null===n.stateNode){var a=Rr,i=t.contextType;"object"==typeof i&&null!==i&&(a=Oo(i)),a=new t(r,a),n.memoizedState=null!==a.state&&void 0!==a.state?a.state:null,a.updater=xs,n.stateNode=a,a._reactInternals=n,(a=n.stateNode).props=r,a.state=n.memoizedState,a.refs={},ga(n),i=t.contextType,a.context="object"==typeof i&&null!==i?Oo(i):Rr,a.state=n.memoizedState,"function"==typeof(i=t.getDerivedStateFromProps)&&(Es(n,t,i,r),a.state=n.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof a.getSnapshotBeforeUpdate||"function"!=typeof a.UNSAFE_componentWillMount&&"function"!=typeof a.componentWillMount||(i=a.state,"function"==typeof a.componentWillMount&&a.componentWillMount(),"function"==typeof a.UNSAFE_componentWillMount&&a.UNSAFE_componentWillMount(),i!==a.state&&xs.enqueueReplaceState(a,a.state,null),ka(n,r,a,o),va(),a.state=n.memoizedState),"function"==typeof a.componentDidMount&&(n.flags|=4194308),r=!0}else if(null===e){a=n.stateNode;var s=n.memoizedProps,l=ys(t,s);a.props=l;var c=a.context,d=t.contextType;i=Rr,"object"==typeof d&&null!==d&&(i=Oo(d));var A=t.getDerivedStateFromProps;d="function"==typeof A||"function"==typeof a.getSnapshotBeforeUpdate,s=n.pendingProps!==s,d||"function"!=typeof a.UNSAFE_componentWillReceiveProps&&"function"!=typeof a.componentWillReceiveProps||(s||c!==i)&&Bs(n,a,r,i),ma=!1;var u=n.memoizedState;a.state=u,ka(n,r,a,o),va(),c=n.memoizedState,s||u!==c||ma?("function"==typeof A&&(Es(n,t,A,r),c=n.memoizedState),(l=ma||Cs(n,t,l,r,u,c,i))?(d||"function"!=typeof a.UNSAFE_componentWillMount&&"function"!=typeof a.componentWillMount||("function"==typeof a.componentWillMount&&a.componentWillMount(),"function"==typeof a.UNSAFE_componentWillMount&&a.UNSAFE_componentWillMount()),"function"==typeof a.componentDidMount&&(n.flags|=4194308)):("function"==typeof a.componentDidMount&&(n.flags|=4194308),n.memoizedProps=r,n.memoizedState=c),a.props=r,a.state=c,a.context=i,r=l):("function"==typeof a.componentDidMount&&(n.flags|=4194308),r=!1)}else{a=n.stateNode,ba(e,n),d=ys(t,i=n.memoizedProps),a.props=d,A=n.pendingProps,u=a.context,c=t.contextType,l=Rr,"object"==typeof c&&null!==c&&(l=Oo(c)),(c="function"==typeof(s=t.getDerivedStateFromProps)||"function"==typeof a.getSnapshotBeforeUpdate)||"function"!=typeof a.UNSAFE_componentWillReceiveProps&&"function"!=typeof a.componentWillReceiveProps||(i!==A||u!==l)&&Bs(n,a,r,l),ma=!1,u=n.memoizedState,a.state=u,ka(n,r,a,o),va();var f=n.memoizedState;i!==A||u!==f||ma||null!==e&&null!==e.dependencies&&Po(e.dependencies)?("function"==typeof s&&(Es(n,t,s,r),f=n.memoizedState),(d=ma||Cs(n,t,d,r,u,f,l)||null!==e&&null!==e.dependencies&&Po(e.dependencies))?(c||"function"!=typeof a.UNSAFE_componentWillUpdate&&"function"!=typeof a.componentWillUpdate||("function"==typeof a.componentWillUpdate&&a.componentWillUpdate(r,f,l),"function"==typeof a.UNSAFE_componentWillUpdate&&a.UNSAFE_componentWillUpdate(r,f,l)),"function"==typeof a.componentDidUpdate&&(n.flags|=4),"function"==typeof a.getSnapshotBeforeUpdate&&(n.flags|=1024)):("function"!=typeof a.componentDidUpdate||i===e.memoizedProps&&u===e.memoizedState||(n.flags|=4),"function"!=typeof a.getSnapshotBeforeUpdate||i===e.memoizedProps&&u===e.memoizedState||(n.flags|=1024),n.memoizedProps=r,n.memoizedState=f),a.props=r,a.state=f,a.context=l,r=d):("function"!=typeof a.componentDidUpdate||i===e.memoizedProps&&u===e.memoizedState||(n.flags|=4),"function"!=typeof a.getSnapshotBeforeUpdate||i===e.memoizedProps&&u===e.memoizedState||(n.flags|=1024),r=!1)}return a=r,Ys(e,n),r=!!(128&n.flags),a||r?(a=n.stateNode,t=r&&"function"!=typeof t.getDerivedStateFromError?null:a.render(),n.flags|=1,null!==e&&r?(n.child=pa(n,e.child,null,o),n.child=pa(n,null,t,o)):Ts(e,n,t,o),n.memoizedState=a.state,e=n.child):e=ol(e,n,o),e}function Qs(e,n,t,r){return xo(),n.flags|=256,Ts(e,n,t,r),n.child}var Hs={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Js(e){return{baseLanes:e,cachePool:Ko()}}function Zs(e,n,t){return e=null!==e?e.childLanes&~t:0,n&&(e|=Sc),e}function Ks(e,n,t){var r,o=n.pendingProps,a=!1,s=!!(128&n.flags);if((r=s)||(r=(null===e||null!==e.memoizedState)&&!!(2&Ia.current)),r&&(a=!0,n.flags&=-129),r=!!(32&n.flags),n.flags&=-33,null===e){if(uo){if(a?Ma(n):La(),(e=Ao)?null!==(e=null!==(e=zA(e,po))&&"&"!==e.data?e:null)&&(n.memoizedState={dehydrated:e,treeContext:null!==no?{id:to,overflow:ro}:null,retryLane:536870912,hydrationErrors:null},(t=Vr(e)).return=n,n.child=t,co=n,Ao=null):e=null,null===e)throw mo(n);return _A(e)?n.lanes=32:n.lanes=536870912,null}var l=o.children;return o=o.fallback,a?(La(),l=Gs({mode:"hidden",children:l},a=n.mode),o=Yr(o,a,t,null),l.return=n,o.return=n,l.sibling=o,n.child=l,(o=n.child).memoizedState=Js(t),o.childLanes=Zs(e,r,t),n.memoizedState=Hs,Fs(null,o)):(Ma(n),Xs(n,l))}var c=e.memoizedState;if(null!==c&&null!==(l=c.dehydrated)){if(s)256&n.flags?(Ma(n),n.flags&=-257,n=el(e,n,t)):null!==n.memoizedState?(La(),n.child=e.child,n.flags|=128,n=null):(La(),l=o.fallback,a=n.mode,o=Gs({mode:"visible",children:o.children},a),(l=Yr(l,a,t,null)).flags|=2,o.return=n,l.return=n,o.sibling=l,n.child=o,pa(n,e.child,null,t),(o=n.child).memoizedState=Js(t),o.childLanes=Zs(e,r,t),n.memoizedState=Hs,n=Fs(null,o));else if(Ma(n),_A(l)){if(r=l.nextSibling&&l.nextSibling.dataset)var d=r.dgst;r=d,(o=Error(i(419))).stack="",o.digest=r,Bo({value:o,source:null,stack:null}),n=el(e,n,t)}else if(Os||zo(e,n,t,!1),r=0!==(t&e.childLanes),Os||r){if(null!==(r=pc)&&0!==(o=Me(r,t))&&o!==c.retryLane)throw c.retryLane=o,Or(e,o),Hc(r,0,o),_s;PA(l)||id(),n=el(e,n,t)}else PA(l)?(n.flags|=192,n.child=e.child,n=null):(e=c.treeContext,Ao=OA(l.nextSibling),co=n,uo=!0,fo=null,po=!1,null!==e&&lo(n,e),(n=Xs(n,o.children)).flags|=4096);return n}return a?(La(),l=o.fallback,a=n.mode,d=(c=e.child).sibling,(o=Ir(c,{mode:"hidden",children:o.children})).subtreeFlags=65011712&c.subtreeFlags,null!==d?l=Ir(d,l):(l=Yr(l,a,t,null)).flags|=2,l.return=n,o.return=n,o.sibling=l,n.child=o,Fs(null,o),o=n.child,null===(l=e.child.memoizedState)?l=Js(t):(null!==(a=l.cachePool)?(c=Fo._currentValue,a=a.parent!==c?{parent:c,pool:c}:a):a=Ko(),l={baseLanes:l.baseLanes|t,cachePool:a}),o.memoizedState=l,o.childLanes=Zs(e,r,t),n.memoizedState=Hs,Fs(e.child,o)):(Ma(n),e=(t=e.child).sibling,(t=Ir(t,{mode:"visible",children:o.children})).return=n,t.sibling=null,null!==e&&(null===(r=n.deletions)?(n.deletions=[e],n.flags|=16):r.push(e)),n.child=t,n.memoizedState=null,t)}function Xs(e,n){return(n=Gs({mode:"visible",children:n},e.mode)).return=e,e.child=n}function Gs(e,n){return(e=Lr(22,e,null,n)).lanes=0,e}function el(e,n,t){return pa(n,e.child,null,t),(e=Xs(n,n.pendingProps.children)).flags|=2,n.memoizedState=null,e}function nl(e,n,t){e.lanes|=n;var r=e.alternate;null!==r&&(r.lanes|=n),jo(e.return,n,t)}function tl(e,n,t,r,o,a){var i=e.memoizedState;null===i?e.memoizedState={isBackwards:n,rendering:null,renderingStartTime:0,last:r,tail:t,tailMode:o,treeForkCount:a}:(i.isBackwards=n,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=t,i.tailMode=o,i.treeForkCount=a)}function rl(e,n,t){var r=n.pendingProps,o=r.revealOrder,a=r.tail;r=r.children;var i=Ia.current,s=!!(2&i);if(s?(i=1&i|2,n.flags|=128):i&=1,U(Ia,i),Ts(e,n,r,t),r=uo?Xr:0,!s&&null!==e&&128&e.flags)e:for(e=n.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&nl(e,t,n);else if(19===e.tag)nl(e,t,n);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===n)break e;for(;null===e.sibling;){if(null===e.return||e.return===n)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(o){case"forwards":for(t=n.child,o=null;null!==t;)null!==(e=t.alternate)&&null===Ua(e)&&(o=t),t=t.sibling;null===(t=o)?(o=n.child,n.child=null):(o=t.sibling,t.sibling=null),tl(n,!1,o,t,a,r);break;case"backwards":case"unstable_legacy-backwards":for(t=null,o=n.child,n.child=null;null!==o;){if(null!==(e=o.alternate)&&null===Ua(e)){n.child=o;break}e=o.sibling,o.sibling=t,t=o,o=e}tl(n,!0,t,null,a,r);break;case"together":tl(n,!1,null,null,void 0,r);break;default:n.memoizedState=null}return n.child}function ol(e,n,t){if(null!==e&&(n.dependencies=e.dependencies),vc|=n.lanes,0===(t&n.childLanes)){if(null===e)return null;if(zo(e,n,t,!1),0===(t&n.childLanes))return null}if(null!==e&&n.child!==e.child)throw Error(i(153));if(null!==n.child){for(t=Ir(e=n.child,e.pendingProps),n.child=t,t.return=n;null!==e.sibling;)e=e.sibling,(t=t.sibling=Ir(e,e.pendingProps)).return=n;t.sibling=null}return n.child}function al(e,n){return 0!==(e.lanes&n)||!(null===(e=e.dependencies)||!Po(e))}function il(e,n,t){if(null!==e)if(e.memoizedProps!==n.pendingProps)Os=!0;else{if(!(al(e,t)||128&n.flags))return Os=!1,function(e,n,t){switch(n.tag){case 3:H(n,n.stateNode.containerInfo),wo(0,Fo,e.memoizedState.cache),xo();break;case 27:case 5:Z(n);break;case 4:H(n,n.stateNode.containerInfo);break;case 10:wo(0,n.type,n.memoizedProps.value);break;case 31:if(null!==n.memoizedState)return n.flags|=128,Ra(n),null;break;case 13:var r=n.memoizedState;if(null!==r)return null!==r.dehydrated?(Ma(n),n.flags|=128,null):0!==(t&n.child.childLanes)?Ks(e,n,t):(Ma(n),null!==(e=ol(e,n,t))?e.sibling:null);Ma(n);break;case 19:var o=!!(128&e.flags);if((r=0!==(t&n.childLanes))||(zo(e,n,t,!1),r=0!==(t&n.childLanes)),o){if(r)return rl(e,n,t);n.flags|=128}if(null!==(o=n.memoizedState)&&(o.rendering=null,o.tail=null,o.lastEffect=null),U(Ia,Ia.current),r)break;return null;case 22:return n.lanes=0,Ls(e,n,t,n.pendingProps);case 24:wo(0,Fo,e.memoizedState.cache)}return ol(e,n,t)}(e,n,t);Os=!!(131072&e.flags)}else Os=!1,uo&&1048576&n.flags&&ao(n,Xr,n.index);switch(n.lanes=0,n.tag){case 16:e:{var r=n.pendingProps;if(e=oa(n.elementType),n.type=e,"function"!=typeof e){if(null!=e){var o=e.$$typeof;if(o===B){n.tag=11,n=Ms(null,n,e,r,t);break e}if(o===k){n.tag=14,n=Rs(null,n,e,r,t);break e}}throw n=_(e)||e,Error(i(306,n,""))}Fr(e)?(r=ys(e,r),n.tag=1,n=Ws(null,n,e,r,t)):(n.tag=0,n=$s(null,n,e,r,t))}return n;case 0:return $s(e,n,n.type,n.pendingProps,t);case 1:return Ws(e,n,r=n.type,o=ys(r,n.pendingProps),t);case 3:e:{if(H(n,n.stateNode.containerInfo),null===e)throw Error(i(387));r=n.pendingProps;var a=n.memoizedState;o=a.element,ba(e,n),ka(n,r,null,t);var s=n.memoizedState;if(r=s.cache,wo(0,Fo,r),r!==a.cache&&No(n,[Fo],t,!0),va(),r=s.element,a.isDehydrated){if(a={element:r,isDehydrated:!1,cache:s.cache},n.updateQueue.baseState=a,n.memoizedState=a,256&n.flags){n=Qs(e,n,r,t);break e}if(r!==o){Bo(o=Hr(Error(i(424)),n)),n=Qs(e,n,r,t);break e}for(e=9===(e=n.stateNode.containerInfo).nodeType?e.body:"HTML"===e.nodeName?e.ownerDocument.body:e,Ao=OA(e.firstChild),co=n,uo=!0,fo=null,po=!0,t=ha(n,null,r,t),n.child=t;t;)t.flags=-3&t.flags|4096,t=t.sibling}else{if(xo(),r===o){n=ol(e,n,t);break e}Ts(e,n,r,t)}n=n.child}return n;case 26:return Ys(e,n),null===e?(t=VA(n.type,null,n.pendingProps,null))?n.memoizedState=t:uo||(t=n.type,e=n.pendingProps,(r=mA(W.current).createElement(t))[Ue]=n,r[qe]=e,uA(r,t,e),en(r),n.stateNode=r):n.memoizedState=VA(n.type,e.memoizedProps,n.pendingProps,e.memoizedState),null;case 27:return Z(n),null===e&&uo&&(r=n.stateNode=DA(n.type,n.pendingProps,W.current),co=n,po=!0,o=Ao,wA(n.type)?(TA=o,Ao=OA(r.firstChild)):Ao=o),Ts(e,n,n.pendingProps.children,t),Ys(e,n),null===e&&(n.flags|=4194304),n.child;case 5:return null===e&&uo&&((o=r=Ao)&&(null!==(r=function(e,n,t,r){for(;1===e.nodeType;){var o=t;if(e.nodeName.toLowerCase()!==n.toLowerCase()){if(!r&&("INPUT"!==e.nodeName||"hidden"!==e.type))break}else if(r){if(!e[He])switch(n){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if("stylesheet"===(a=e.getAttribute("rel"))&&e.hasAttribute("data-precedence"))break;if(a!==o.rel||e.getAttribute("href")!==(null==o.href||""===o.href?null:o.href)||e.getAttribute("crossorigin")!==(null==o.crossOrigin?null:o.crossOrigin)||e.getAttribute("title")!==(null==o.title?null:o.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(((a=e.getAttribute("src"))!==(null==o.src?null:o.src)||e.getAttribute("type")!==(null==o.type?null:o.type)||e.getAttribute("crossorigin")!==(null==o.crossOrigin?null:o.crossOrigin))&&a&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else{if("input"!==n||"hidden"!==e.type)return e;var a=null==o.name?null:""+o.name;if("hidden"===o.type&&e.getAttribute("name")===a)return e}if(null===(e=OA(e.nextSibling)))break}return null}(r,n.type,n.pendingProps,po))?(n.stateNode=r,co=n,Ao=OA(r.firstChild),po=!1,o=!0):o=!1),o||mo(n)),Z(n),o=n.type,a=n.pendingProps,s=null!==e?e.memoizedProps:null,r=a.children,EA(o,a)?r=null:null!==s&&EA(o,s)&&(n.flags|=32),null!==n.memoizedState&&(o=ni(e,n,oi,null,null,t),du._currentValue=o),Ys(e,n),Ts(e,n,r,t),n.child;case 6:return null===e&&uo&&((e=t=Ao)&&(null!==(t=function(e,n,t){if(""===n)return null;for(;3!==e.nodeType;){if((1!==e.nodeType||"INPUT"!==e.nodeName||"hidden"!==e.type)&&!t)return null;if(null===(e=OA(e.nextSibling)))return null}return e}(t,n.pendingProps,po))?(n.stateNode=t,co=n,Ao=null,e=!0):e=!1),e||mo(n)),null;case 13:return Ks(e,n,t);case 4:return H(n,n.stateNode.containerInfo),r=n.pendingProps,null===e?n.child=pa(n,null,r,t):Ts(e,n,r,t),n.child;case 11:return Ms(e,n,n.type,n.pendingProps,t);case 7:return Ts(e,n,n.pendingProps,t),n.child;case 8:case 12:return Ts(e,n,n.pendingProps.children,t),n.child;case 10:return r=n.pendingProps,wo(0,n.type,r.value),Ts(e,n,r.children,t),n.child;case 9:return o=n.type._context,r=n.pendingProps.children,_o(n),r=r(o=Oo(o)),n.flags|=1,Ts(e,n,r,t),n.child;case 14:return Rs(e,n,n.type,n.pendingProps,t);case 15:return Ds(e,n,n.type,n.pendingProps,t);case 19:return rl(e,n,t);case 31:return function(e,n,t){var r=n.pendingProps,o=!!(128&n.flags);if(n.flags&=-129,null===e){if(uo){if("hidden"===r.mode)return e=Us(n,r),n.lanes=536870912,Fs(null,e);if(Ra(n),(e=Ao)?null!==(e=null!==(e=zA(e,po))&&"&"===e.data?e:null)&&(n.memoizedState={dehydrated:e,treeContext:null!==no?{id:to,overflow:ro}:null,retryLane:536870912,hydrationErrors:null},(t=Vr(e)).return=n,n.child=t,co=n,Ao=null):e=null,null===e)throw mo(n);return n.lanes=536870912,null}return Us(n,r)}var a=e.memoizedState;if(null!==a){var s=a.dehydrated;if(Ra(n),o)if(256&n.flags)n.flags&=-257,n=qs(e,n,t);else{if(null===n.memoizedState)throw Error(i(558));n.child=e.child,n.flags|=128,n=null}else if(Os||zo(e,n,t,!1),o=0!==(t&e.childLanes),Os||o){if(null!==(r=pc)&&0!==(s=Me(r,t))&&s!==a.retryLane)throw a.retryLane=s,Or(e,s),Hc(r,0,s),_s;id(),n=qs(e,n,t)}else e=a.treeContext,Ao=OA(s.nextSibling),co=n,uo=!0,fo=null,po=!1,null!==e&&lo(n,e),(n=Us(n,r)).flags|=4096;return n}return(e=Ir(e.child,{mode:r.mode,children:r.children})).ref=n.ref,n.child=e,e.return=n,e}(e,n,t);case 22:return Ls(e,n,t,n.pendingProps);case 24:return _o(n),r=Oo(Fo),null===e?(null===(o=Jo())&&(o=pc,a=Io(),o.pooledCache=a,a.refCount++,null!==a&&(o.pooledCacheLanes|=t),o=a),n.memoizedState={parent:r,cache:o},ga(n),wo(0,Fo,o)):(0!==(e.lanes&t)&&(ba(e,n),ka(n,null,null,t),va()),o=e.memoizedState,a=n.memoizedState,o.parent!==r?(o={parent:r,cache:r},n.memoizedState=o,0===n.lanes&&(n.memoizedState=n.updateQueue.baseState=o),wo(0,Fo,r)):(r=a.cache,wo(0,Fo,r),r!==o.cache&&No(n,[Fo],t,!0))),Ts(e,n,n.pendingProps.children,t),n.child;case 29:throw n.pendingProps}throw Error(i(156,n.tag))}function sl(e){e.flags|=4}function ll(e,n,t,r,o){if((n=!!(32&e.mode))&&(n=!1),n){if(e.flags|=16777216,(335544128&o)===o)if(e.stateNode.complete)e.flags|=8192;else{if(!rd())throw aa=na,Go;e.flags|=8192}}else e.flags&=-16777217}function cl(e,n){if("stylesheet"!==n.type||4&n.state.loading)e.flags&=-16777217;else if(e.flags|=16777216,!ou(n)){if(!rd())throw aa=na,Go;e.flags|=8192}}function dl(e,n){null!==n&&(e.flags|=4),16384&e.flags&&(n=22!==e.tag?ze():536870912,e.lanes|=n,jc|=n)}function Al(e,n){if(!uo)switch(e.tailMode){case"hidden":n=e.tail;for(var t=null;null!==n;)null!==n.alternate&&(t=n),n=n.sibling;null===t?e.tail=null:t.sibling=null;break;case"collapsed":t=e.tail;for(var r=null;null!==t;)null!==t.alternate&&(r=t),t=t.sibling;null===r?n||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function ul(e){var n=null!==e.alternate&&e.alternate.child===e.child,t=0,r=0;if(n)for(var o=e.child;null!==o;)t|=o.lanes|o.childLanes,r|=65011712&o.subtreeFlags,r|=65011712&o.flags,o.return=e,o=o.sibling;else for(o=e.child;null!==o;)t|=o.lanes|o.childLanes,r|=o.subtreeFlags,r|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=r,e.childLanes=t,n}function fl(e,n,t){var r=n.pendingProps;switch(so(n),n.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:case 1:return ul(n),null;case 3:return t=n.stateNode,r=null,null!==e&&(r=e.memoizedState.cache),n.memoizedState.cache!==r&&(n.flags|=2048),So(Fo),J(),t.pendingContext&&(t.context=t.pendingContext,t.pendingContext=null),null!==e&&null!==e.child||(Eo(n)?sl(n):null===e||e.memoizedState.isDehydrated&&!(256&n.flags)||(n.flags|=1024,Co())),ul(n),null;case 26:var o=n.type,a=n.memoizedState;return null===e?(sl(n),null!==a?(ul(n),cl(n,a)):(ul(n),ll(n,o,0,0,t))):a?a!==e.memoizedState?(sl(n),ul(n),cl(n,a)):(ul(n),n.flags&=-16777217):((e=e.memoizedProps)!==r&&sl(n),ul(n),ll(n,o,0,0,t)),null;case 27:if(K(n),t=W.current,o=n.type,null!==e&&null!=n.stateNode)e.memoizedProps!==r&&sl(n);else{if(!r){if(null===n.stateNode)throw Error(i(166));return ul(n),null}e=$.current,Eo(n)?go(n):(e=DA(o,r,t),n.stateNode=e,sl(n))}return ul(n),null;case 5:if(K(n),o=n.type,null!==e&&null!=n.stateNode)e.memoizedProps!==r&&sl(n);else{if(!r){if(null===n.stateNode)throw Error(i(166));return ul(n),null}if(a=$.current,Eo(n))go(n);else{var s=mA(W.current);switch(a){case 1:a=s.createElementNS("http://www.w3.org/2000/svg",o);break;case 2:a=s.createElementNS("http://www.w3.org/1998/Math/MathML",o);break;default:switch(o){case"svg":a=s.createElementNS("http://www.w3.org/2000/svg",o);break;case"math":a=s.createElementNS("http://www.w3.org/1998/Math/MathML",o);break;case"script":(a=s.createElement("div")).innerHTML="<script><\/script>",a=a.removeChild(a.firstChild);break;case"select":a="string"==typeof r.is?s.createElement("select",{is:r.is}):s.createElement("select"),r.multiple?a.multiple=!0:r.size&&(a.size=r.size);break;default:a="string"==typeof r.is?s.createElement(o,{is:r.is}):s.createElement(o)}}a[Ue]=n,a[qe]=r;e:for(s=n.child;null!==s;){if(5===s.tag||6===s.tag)a.appendChild(s.stateNode);else if(4!==s.tag&&27!==s.tag&&null!==s.child){s.child.return=s,s=s.child;continue}if(s===n)break e;for(;null===s.sibling;){if(null===s.return||s.return===n)break e;s=s.return}s.sibling.return=s.return,s=s.sibling}n.stateNode=a;e:switch(uA(a,o,r),o){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}r&&sl(n)}}return ul(n),ll(n,n.type,null===e||e.memoizedProps,n.pendingProps,t),null;case 6:if(e&&null!=n.stateNode)e.memoizedProps!==r&&sl(n);else{if("string"!=typeof r&&null===n.stateNode)throw Error(i(166));if(e=W.current,Eo(n)){if(e=n.stateNode,t=n.memoizedProps,r=null,null!==(o=co))switch(o.tag){case 27:case 5:r=o.memoizedProps}e[Ue]=n,(e=!!(e.nodeValue===t||null!==r&&!0===r.suppressHydrationWarning||cA(e.nodeValue,t)))||mo(n,!0)}else(e=mA(e).createTextNode(r))[Ue]=n,n.stateNode=e}return ul(n),null;case 31:if(t=n.memoizedState,null===e||null!==e.memoizedState){if(r=Eo(n),null!==t){if(null===e){if(!r)throw Error(i(318));if(!(e=null!==(e=n.memoizedState)?e.dehydrated:null))throw Error(i(557));e[Ue]=n}else xo(),!(128&n.flags)&&(n.memoizedState=null),n.flags|=4;ul(n),e=!1}else t=Co(),null!==e&&null!==e.memoizedState&&(e.memoizedState.hydrationErrors=t),e=!0;if(!e)return 256&n.flags?(Fa(n),n):(Fa(n),null);if(128&n.flags)throw Error(i(558))}return ul(n),null;case 13:if(r=n.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(o=Eo(n),null!==r&&null!==r.dehydrated){if(null===e){if(!o)throw Error(i(318));if(!(o=null!==(o=n.memoizedState)?o.dehydrated:null))throw Error(i(317));o[Ue]=n}else xo(),!(128&n.flags)&&(n.memoizedState=null),n.flags|=4;ul(n),o=!1}else o=Co(),null!==e&&null!==e.memoizedState&&(e.memoizedState.hydrationErrors=o),o=!0;if(!o)return 256&n.flags?(Fa(n),n):(Fa(n),null)}return Fa(n),128&n.flags?(n.lanes=t,n):(t=null!==r,e=null!==e&&null!==e.memoizedState,t&&(o=null,null!==(r=n.child).alternate&&null!==r.alternate.memoizedState&&null!==r.alternate.memoizedState.cachePool&&(o=r.alternate.memoizedState.cachePool.pool),a=null,null!==r.memoizedState&&null!==r.memoizedState.cachePool&&(a=r.memoizedState.cachePool.pool),a!==o&&(r.flags|=2048)),t!==e&&t&&(n.child.flags|=8192),dl(n,n.updateQueue),ul(n),null);case 4:return J(),null===e&&Gd(n.stateNode.containerInfo),ul(n),null;case 10:return So(n.type),ul(n),null;case 19:if(I(Ia),null===(r=n.memoizedState))return ul(n),null;if(o=!!(128&n.flags),null===(a=r.rendering))if(o)Al(r,!1);else{if(0!==yc||null!==e&&128&e.flags)for(e=n.child;null!==e;){if(null!==(a=Ua(e))){for(n.flags|=128,Al(r,!1),e=a.updateQueue,n.updateQueue=e,dl(n,e),n.subtreeFlags=0,e=t,t=n.child;null!==t;)Ur(t,e),t=t.sibling;return U(Ia,1&Ia.current|2),uo&&oo(n,r.treeForkCount),n.child}e=e.sibling}null!==r.tail&&le()>Tc&&(n.flags|=128,o=!0,Al(r,!1),n.lanes=4194304)}else{if(!o)if(null!==(e=Ua(a))){if(n.flags|=128,o=!0,e=e.updateQueue,n.updateQueue=e,dl(n,e),Al(r,!0),null===r.tail&&"hidden"===r.tailMode&&!a.alternate&&!uo)return ul(n),null}else 2*le()-r.renderingStartTime>Tc&&536870912!==t&&(n.flags|=128,o=!0,Al(r,!1),n.lanes=4194304);r.isBackwards?(a.sibling=n.child,n.child=a):(null!==(e=r.last)?e.sibling=a:n.child=a,r.last=a)}return null!==r.tail?(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=le(),e.sibling=null,t=Ia.current,U(Ia,o?1&t|2:1&t),uo&&oo(n,r.treeForkCount),e):(ul(n),null);case 22:case 23:return Fa(n),_a(),r=null!==n.memoizedState,null!==e?null!==e.memoizedState!==r&&(n.flags|=8192):r&&(n.flags|=8192),r?!!(536870912&t)&&!(128&n.flags)&&(ul(n),6&n.subtreeFlags&&(n.flags|=8192)):ul(n),null!==(t=n.updateQueue)&&dl(n,t.retryQueue),t=null,null!==e&&null!==e.memoizedState&&null!==e.memoizedState.cachePool&&(t=e.memoizedState.cachePool.pool),r=null,null!==n.memoizedState&&null!==n.memoizedState.cachePool&&(r=n.memoizedState.cachePool.pool),r!==t&&(n.flags|=2048),null!==e&&I(Ho),null;case 24:return t=null,null!==e&&(t=e.memoizedState.cache),n.memoizedState.cache!==t&&(n.flags|=2048),So(Fo),ul(n),null;case 25:case 30:return null}throw Error(i(156,n.tag))}function pl(e,n){switch(so(n),n.tag){case 1:return 65536&(e=n.flags)?(n.flags=-65537&e|128,n):null;case 3:return So(Fo),J(),65536&(e=n.flags)&&!(128&e)?(n.flags=-65537&e|128,n):null;case 26:case 27:case 5:return K(n),null;case 31:if(null!==n.memoizedState){if(Fa(n),null===n.alternate)throw Error(i(340));xo()}return 65536&(e=n.flags)?(n.flags=-65537&e|128,n):null;case 13:if(Fa(n),null!==(e=n.memoizedState)&&null!==e.dehydrated){if(null===n.alternate)throw Error(i(340));xo()}return 65536&(e=n.flags)?(n.flags=-65537&e|128,n):null;case 19:return I(Ia),null;case 4:return J(),null;case 10:return So(n.type),null;case 22:case 23:return Fa(n),_a(),null!==e&&I(Ho),65536&(e=n.flags)?(n.flags=-65537&e|128,n):null;case 24:return So(Fo),null;default:return null}}function hl(e,n){switch(so(n),n.tag){case 3:So(Fo),J();break;case 26:case 27:case 5:K(n);break;case 4:J();break;case 31:null!==n.memoizedState&&Fa(n);break;case 13:Fa(n);break;case 19:I(Ia);break;case 10:So(n.type);break;case 22:case 23:Fa(n),_a(),null!==e&&I(Ho);break;case 24:So(Fo)}}function ml(e,n){try{var t=n.updateQueue,r=null!==t?t.lastEffect:null;if(null!==r){var o=r.next;t=o;do{if((t.tag&e)===e){r=void 0;var a=t.create,i=t.inst;r=a(),i.destroy=r}t=t.next}while(t!==o)}}catch(e){yd(n,n.return,e)}}function gl(e,n,t){try{var r=n.updateQueue,o=null!==r?r.lastEffect:null;if(null!==o){var a=o.next;r=a;do{if((r.tag&e)===e){var i=r.inst,s=i.destroy;if(void 0!==s){i.destroy=void 0,o=n;var l=t,c=s;try{c()}catch(e){yd(o,l,e)}}}r=r.next}while(r!==a)}}catch(e){yd(n,n.return,e)}}function bl(e){var n=e.updateQueue;if(null!==n){var t=e.stateNode;try{Sa(n,t)}catch(n){yd(e,e.return,n)}}}function El(e,n,t){t.props=ys(e.type,e.memoizedProps),t.state=e.memoizedState;try{t.componentWillUnmount()}catch(t){yd(e,n,t)}}function xl(e,n){try{var t=e.ref;if(null!==t){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;default:r=e.stateNode}"function"==typeof t?e.refCleanup=t(r):t.current=r}}catch(t){yd(e,n,t)}}function Cl(e,n){var t=e.ref,r=e.refCleanup;if(null!==t)if("function"==typeof r)try{r()}catch(t){yd(e,n,t)}finally{e.refCleanup=null,null!=(e=e.alternate)&&(e.refCleanup=null)}else if("function"==typeof t)try{t(null)}catch(t){yd(e,n,t)}else t.current=null}function Bl(e){var n=e.type,t=e.memoizedProps,r=e.stateNode;try{e:switch(n){case"button":case"input":case"select":case"textarea":t.autoFocus&&r.focus();break e;case"img":t.src?r.src=t.src:t.srcSet&&(r.srcset=t.srcSet)}}catch(n){yd(e,e.return,n)}}function yl(e,n,t){try{var r=e.stateNode;!function(e,n,t,r){switch(n){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var o=null,a=null,s=null,l=null,c=null,d=null,A=null;for(p in t){var u=t[p];if(t.hasOwnProperty(p)&&null!=u)switch(p){case"checked":case"value":break;case"defaultValue":c=u;default:r.hasOwnProperty(p)||dA(e,n,p,null,r,u)}}for(var f in r){var p=r[f];if(u=t[f],r.hasOwnProperty(f)&&(null!=p||null!=u))switch(f){case"type":a=p;break;case"name":o=p;break;case"checked":d=p;break;case"defaultChecked":A=p;break;case"value":s=p;break;case"defaultValue":l=p;break;case"children":case"dangerouslySetInnerHTML":if(null!=p)throw Error(i(137,n));break;default:p!==u&&dA(e,n,f,p,r,u)}}return void En(e,s,l,c,d,A,a,o);case"select":for(a in p=s=l=f=null,t)if(c=t[a],t.hasOwnProperty(a)&&null!=c)switch(a){case"value":break;case"multiple":p=c;default:r.hasOwnProperty(a)||dA(e,n,a,null,r,c)}for(o in r)if(a=r[o],c=t[o],r.hasOwnProperty(o)&&(null!=a||null!=c))switch(o){case"value":f=a;break;case"defaultValue":l=a;break;case"multiple":s=a;default:a!==c&&dA(e,n,o,a,r,c)}return n=l,t=s,r=p,void(null!=f?Bn(e,!!t,f,!1):!!r!=!!t&&(null!=n?Bn(e,!!t,n,!0):Bn(e,!!t,t?[]:"",!1)));case"textarea":for(l in p=f=null,t)if(o=t[l],t.hasOwnProperty(l)&&null!=o&&!r.hasOwnProperty(l))switch(l){case"value":case"children":break;default:dA(e,n,l,null,r,o)}for(s in r)if(o=r[s],a=t[s],r.hasOwnProperty(s)&&(null!=o||null!=a))switch(s){case"value":f=o;break;case"defaultValue":p=o;break;case"children":break;case"dangerouslySetInnerHTML":if(null!=o)throw Error(i(91));break;default:o!==a&&dA(e,n,s,o,r,a)}return void yn(e,f,p);case"option":for(var h in t)f=t[h],t.hasOwnProperty(h)&&null!=f&&!r.hasOwnProperty(h)&&("selected"===h?e.selected=!1:dA(e,n,h,null,r,f));for(c in r)f=r[c],p=t[c],!r.hasOwnProperty(c)||f===p||null==f&&null==p||("selected"===c?e.selected=f&&"function"!=typeof f&&"symbol"!=typeof f:dA(e,n,c,f,r,p));return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var m in t)f=t[m],t.hasOwnProperty(m)&&null!=f&&!r.hasOwnProperty(m)&&dA(e,n,m,null,r,f);for(d in r)if(f=r[d],p=t[d],r.hasOwnProperty(d)&&f!==p&&(null!=f||null!=p))switch(d){case"children":case"dangerouslySetInnerHTML":if(null!=f)throw Error(i(137,n));break;default:dA(e,n,d,f,r,p)}return;default:if(Nn(n)){for(var g in t)f=t[g],t.hasOwnProperty(g)&&void 0!==f&&!r.hasOwnProperty(g)&&AA(e,n,g,void 0,r,f);for(A in r)f=r[A],p=t[A],!r.hasOwnProperty(A)||f===p||void 0===f&&void 0===p||AA(e,n,A,f,r,p);return}}for(var b in t)f=t[b],t.hasOwnProperty(b)&&null!=f&&!r.hasOwnProperty(b)&&dA(e,n,b,null,r,f);for(u in r)f=r[u],p=t[u],!r.hasOwnProperty(u)||f===p||null==f&&null==p||dA(e,n,u,f,r,p)}(r,e.type,t,n),r[qe]=n}catch(n){yd(e,e.return,n)}}function vl(e){return 5===e.tag||3===e.tag||26===e.tag||27===e.tag&&wA(e.type)||4===e.tag}function kl(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||vl(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(27===e.tag&&wA(e.type))continue e;if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function wl(e,n,t){var r=e.tag;if(5===r||6===r)e=e.stateNode,n?(9===t.nodeType?t.body:"HTML"===t.nodeName?t.ownerDocument.body:t).insertBefore(e,n):((n=9===t.nodeType?t.body:"HTML"===t.nodeName?t.ownerDocument.body:t).appendChild(e),null!=(t=t._reactRootContainer)||null!==n.onclick||(n.onclick=On));else if(4!==r&&(27===r&&wA(e.type)&&(t=e.stateNode,n=null),null!==(e=e.child)))for(wl(e,n,t),e=e.sibling;null!==e;)wl(e,n,t),e=e.sibling}function Sl(e,n,t){var r=e.tag;if(5===r||6===r)e=e.stateNode,n?t.insertBefore(e,n):t.appendChild(e);else if(4!==r&&(27===r&&wA(e.type)&&(t=e.stateNode),null!==(e=e.child)))for(Sl(e,n,t),e=e.sibling;null!==e;)Sl(e,n,t),e=e.sibling}function jl(e){var n=e.stateNode,t=e.memoizedProps;try{for(var r=e.type,o=n.attributes;o.length;)n.removeAttributeNode(o[0]);uA(n,r,t),n[Ue]=e,n[qe]=t}catch(n){yd(e,e.return,n)}}var Nl=!1,zl=!1,Pl=!1,_l="function"==typeof WeakSet?WeakSet:Set,Ol=null;function Tl(e,n,t){var r=t.flags;switch(t.tag){case 0:case 11:case 15:Hl(e,t),4&r&&ml(5,t);break;case 1:if(Hl(e,t),4&r)if(e=t.stateNode,null===n)try{e.componentDidMount()}catch(e){yd(t,t.return,e)}else{var o=ys(t.type,n.memoizedProps);n=n.memoizedState;try{e.componentDidUpdate(o,n,e.__reactInternalSnapshotBeforeUpdate)}catch(e){yd(t,t.return,e)}}64&r&&bl(t),512&r&&xl(t,t.return);break;case 3:if(Hl(e,t),64&r&&null!==(e=t.updateQueue)){if(n=null,null!==t.child)switch(t.child.tag){case 27:case 5:case 1:n=t.child.stateNode}try{Sa(e,n)}catch(e){yd(t,t.return,e)}}break;case 27:null===n&&4&r&&jl(t);case 26:case 5:Hl(e,t),null===n&&4&r&&Bl(t),512&r&&xl(t,t.return);break;case 12:Hl(e,t);break;case 31:Hl(e,t),4&r&&Il(e,t);break;case 13:Hl(e,t),4&r&&Ul(e,t),64&r&&null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)&&function(e,n){var t=e.ownerDocument;if("$~"===e.data)e._reactRetry=n;else if("$?"!==e.data||"loading"!==t.readyState)n();else{var r=function(){n(),t.removeEventListener("DOMContentLoaded",r)};t.addEventListener("DOMContentLoaded",r),e._reactRetry=r}}(e,t=Sd.bind(null,t));break;case 22:if(!(r=null!==t.memoizedState||Nl)){n=null!==n&&null!==n.memoizedState||zl,o=Nl;var a=zl;Nl=r,(zl=n)&&!a?Zl(e,t,!!(8772&t.subtreeFlags)):Hl(e,t),Nl=o,zl=a}break;case 30:break;default:Hl(e,t)}}function Ml(e){var n=e.alternate;null!==n&&(e.alternate=null,Ml(n)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&null!==(n=e.stateNode)&&Je(n),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var Rl=null,Dl=!1;function Ll(e,n,t){for(t=t.child;null!==t;)Fl(e,n,t),t=t.sibling}function Fl(e,n,t){if(be&&"function"==typeof be.onCommitFiberUnmount)try{be.onCommitFiberUnmount(ge,t)}catch(e){}switch(t.tag){case 26:zl||Cl(t,n),Ll(e,n,t),t.memoizedState?t.memoizedState.count--:t.stateNode&&(t=t.stateNode).parentNode.removeChild(t);break;case 27:zl||Cl(t,n);var r=Rl,o=Dl;wA(t.type)&&(Rl=t.stateNode,Dl=!1),Ll(e,n,t),LA(t.stateNode),Rl=r,Dl=o;break;case 5:zl||Cl(t,n);case 6:if(r=Rl,o=Dl,Rl=null,Ll(e,n,t),Dl=o,null!==(Rl=r))if(Dl)try{(9===Rl.nodeType?Rl.body:"HTML"===Rl.nodeName?Rl.ownerDocument.body:Rl).removeChild(t.stateNode)}catch(e){yd(t,n,e)}else try{Rl.removeChild(t.stateNode)}catch(e){yd(t,n,e)}break;case 18:null!==Rl&&(Dl?(SA(9===(e=Rl).nodeType?e.body:"HTML"===e.nodeName?e.ownerDocument.body:e,t.stateNode),$u(e)):SA(Rl,t.stateNode));break;case 4:r=Rl,o=Dl,Rl=t.stateNode.containerInfo,Dl=!0,Ll(e,n,t),Rl=r,Dl=o;break;case 0:case 11:case 14:case 15:gl(2,t,n),zl||gl(4,t,n),Ll(e,n,t);break;case 1:zl||(Cl(t,n),"function"==typeof(r=t.stateNode).componentWillUnmount&&El(t,n,r)),Ll(e,n,t);break;case 21:Ll(e,n,t);break;case 22:zl=(r=zl)||null!==t.memoizedState,Ll(e,n,t),zl=r;break;default:Ll(e,n,t)}}function Il(e,n){if(null===n.memoizedState&&null!==(e=n.alternate)&&null!==(e=e.memoizedState)){e=e.dehydrated;try{$u(e)}catch(e){yd(n,n.return,e)}}}function Ul(e,n){if(null===n.memoizedState&&null!==(e=n.alternate)&&null!==(e=e.memoizedState)&&null!==(e=e.dehydrated))try{$u(e)}catch(e){yd(n,n.return,e)}}function ql(e,n){var t=function(e){switch(e.tag){case 31:case 13:case 19:var n=e.stateNode;return null===n&&(n=e.stateNode=new _l),n;case 22:return null===(n=(e=e.stateNode)._retryCache)&&(n=e._retryCache=new _l),n;default:throw Error(i(435,e.tag))}}(e);n.forEach(function(n){if(!t.has(n)){t.add(n);var r=jd.bind(null,e,n);n.then(r,r)}})}function Yl(e,n){var t=n.deletions;if(null!==t)for(var r=0;r<t.length;r++){var o=t[r],a=e,s=n,l=s;e:for(;null!==l;){switch(l.tag){case 27:if(wA(l.type)){Rl=l.stateNode,Dl=!1;break e}break;case 5:Rl=l.stateNode,Dl=!1;break e;case 3:case 4:Rl=l.stateNode.containerInfo,Dl=!0;break e}l=l.return}if(null===Rl)throw Error(i(160));Fl(a,s,o),Rl=null,Dl=!1,null!==(a=o.alternate)&&(a.return=null),o.return=null}if(13886&n.subtreeFlags)for(n=n.child;null!==n;)Vl(n,e),n=n.sibling}var $l=null;function Vl(e,n){var t=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:Yl(n,e),Wl(e),4&r&&(gl(3,e,e.return),ml(3,e),gl(5,e,e.return));break;case 1:Yl(n,e),Wl(e),512&r&&(zl||null===t||Cl(t,t.return)),64&r&&Nl&&null!==(e=e.updateQueue)&&null!==(r=e.callbacks)&&(t=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=null===t?r:t.concat(r));break;case 26:var o=$l;if(Yl(n,e),Wl(e),512&r&&(zl||null===t||Cl(t,t.return)),4&r){var a=null!==t?t.memoizedState:null;if(r=e.memoizedState,null===t)if(null===r)if(null===e.stateNode){e:{r=e.type,t=e.memoizedProps,o=o.ownerDocument||o;n:switch(r){case"title":(!(a=o.getElementsByTagName("title")[0])||a[He]||a[Ue]||"http://www.w3.org/2000/svg"===a.namespaceURI||a.hasAttribute("itemprop"))&&(a=o.createElement(r),o.head.insertBefore(a,o.querySelector("head > title"))),uA(a,r,t),a[Ue]=e,en(a),r=a;break e;case"link":var s=tu("link","href",o).get(r+(t.href||""));if(s)for(var l=0;l<s.length;l++)if((a=s[l]).getAttribute("href")===(null==t.href||""===t.href?null:t.href)&&a.getAttribute("rel")===(null==t.rel?null:t.rel)&&a.getAttribute("title")===(null==t.title?null:t.title)&&a.getAttribute("crossorigin")===(null==t.crossOrigin?null:t.crossOrigin)){s.splice(l,1);break n}uA(a=o.createElement(r),r,t),o.head.appendChild(a);break;case"meta":if(s=tu("meta","content",o).get(r+(t.content||"")))for(l=0;l<s.length;l++)if((a=s[l]).getAttribute("content")===(null==t.content?null:""+t.content)&&a.getAttribute("name")===(null==t.name?null:t.name)&&a.getAttribute("property")===(null==t.property?null:t.property)&&a.getAttribute("http-equiv")===(null==t.httpEquiv?null:t.httpEquiv)&&a.getAttribute("charset")===(null==t.charSet?null:t.charSet)){s.splice(l,1);break n}uA(a=o.createElement(r),r,t),o.head.appendChild(a);break;default:throw Error(i(468,r))}a[Ue]=e,en(a),r=a}e.stateNode=r}else ru(o,e.type,e.stateNode);else e.stateNode=KA(o,r,e.memoizedProps);else a!==r?(null===a?null!==t.stateNode&&(t=t.stateNode).parentNode.removeChild(t):a.count--,null===r?ru(o,e.type,e.stateNode):KA(o,r,e.memoizedProps)):null===r&&null!==e.stateNode&&yl(e,e.memoizedProps,t.memoizedProps)}break;case 27:Yl(n,e),Wl(e),512&r&&(zl||null===t||Cl(t,t.return)),null!==t&&4&r&&yl(e,e.memoizedProps,t.memoizedProps);break;case 5:if(Yl(n,e),Wl(e),512&r&&(zl||null===t||Cl(t,t.return)),32&e.flags){o=e.stateNode;try{kn(o,"")}catch(n){yd(e,e.return,n)}}4&r&&null!=e.stateNode&&yl(e,o=e.memoizedProps,null!==t?t.memoizedProps:o),1024&r&&(Pl=!0);break;case 6:if(Yl(n,e),Wl(e),4&r){if(null===e.stateNode)throw Error(i(162));r=e.memoizedProps,t=e.stateNode;try{t.nodeValue=r}catch(n){yd(e,e.return,n)}}break;case 3:if(nu=null,o=$l,$l=UA(n.containerInfo),Yl(n,e),$l=o,Wl(e),4&r&&null!==t&&t.memoizedState.isDehydrated)try{$u(n.containerInfo)}catch(n){yd(e,e.return,n)}Pl&&(Pl=!1,Ql(e));break;case 4:r=$l,$l=UA(e.stateNode.containerInfo),Yl(n,e),Wl(e),$l=r;break;case 12:default:Yl(n,e),Wl(e);break;case 31:case 19:Yl(n,e),Wl(e),4&r&&null!==(r=e.updateQueue)&&(e.updateQueue=null,ql(e,r));break;case 13:Yl(n,e),Wl(e),8192&e.child.flags&&null!==e.memoizedState!=(null!==t&&null!==t.memoizedState)&&(_c=le()),4&r&&null!==(r=e.updateQueue)&&(e.updateQueue=null,ql(e,r));break;case 22:o=null!==e.memoizedState;var c=null!==t&&null!==t.memoizedState,d=Nl,A=zl;if(Nl=d||o,zl=A||c,Yl(n,e),zl=A,Nl=d,Wl(e),8192&r)e:for(n=e.stateNode,n._visibility=o?-2&n._visibility:1|n._visibility,o&&(null===t||c||Nl||zl||Jl(e)),t=null,n=e;;){if(5===n.tag||26===n.tag){if(null===t){c=t=n;try{if(a=c.stateNode,o)"function"==typeof(s=a.style).setProperty?s.setProperty("display","none","important"):s.display="none";else{l=c.stateNode;var u=c.memoizedProps.style,f=null!=u&&u.hasOwnProperty("display")?u.display:null;l.style.display=null==f||"boolean"==typeof f?"":(""+f).trim()}}catch(e){yd(c,c.return,e)}}}else if(6===n.tag){if(null===t){c=n;try{c.stateNode.nodeValue=o?"":c.memoizedProps}catch(e){yd(c,c.return,e)}}}else if(18===n.tag){if(null===t){c=n;try{var p=c.stateNode;o?jA(p,!0):jA(c.stateNode,!1)}catch(e){yd(c,c.return,e)}}}else if((22!==n.tag&&23!==n.tag||null===n.memoizedState||n===e)&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===e)break e;for(;null===n.sibling;){if(null===n.return||n.return===e)break e;t===n&&(t=null),n=n.return}t===n&&(t=null),n.sibling.return=n.return,n=n.sibling}4&r&&null!==(r=e.updateQueue)&&null!==(t=r.retryQueue)&&(r.retryQueue=null,ql(e,t));case 30:case 21:}}function Wl(e){var n=e.flags;if(2&n){try{for(var t,r=e.return;null!==r;){if(vl(r)){t=r;break}r=r.return}if(null==t)throw Error(i(160));switch(t.tag){case 27:var o=t.stateNode;Sl(e,kl(e),o);break;case 5:var a=t.stateNode;32&t.flags&&(kn(a,""),t.flags&=-33),Sl(e,kl(e),a);break;case 3:case 4:var s=t.stateNode.containerInfo;wl(e,kl(e),s);break;default:throw Error(i(161))}}catch(n){yd(e,e.return,n)}e.flags&=-3}4096&n&&(e.flags&=-4097)}function Ql(e){if(1024&e.subtreeFlags)for(e=e.child;null!==e;){var n=e;Ql(n),5===n.tag&&1024&n.flags&&n.stateNode.reset(),e=e.sibling}}function Hl(e,n){if(8772&n.subtreeFlags)for(n=n.child;null!==n;)Tl(e,n.alternate,n),n=n.sibling}function Jl(e){for(e=e.child;null!==e;){var n=e;switch(n.tag){case 0:case 11:case 14:case 15:gl(4,n,n.return),Jl(n);break;case 1:Cl(n,n.return);var t=n.stateNode;"function"==typeof t.componentWillUnmount&&El(n,n.return,t),Jl(n);break;case 27:LA(n.stateNode);case 26:case 5:Cl(n,n.return),Jl(n);break;case 22:null===n.memoizedState&&Jl(n);break;default:Jl(n)}e=e.sibling}}function Zl(e,n,t){for(t=t&&!!(8772&n.subtreeFlags),n=n.child;null!==n;){var r=n.alternate,o=e,a=n,i=a.flags;switch(a.tag){case 0:case 11:case 15:Zl(o,a,t),ml(4,a);break;case 1:if(Zl(o,a,t),"function"==typeof(o=(r=a).stateNode).componentDidMount)try{o.componentDidMount()}catch(e){yd(r,r.return,e)}if(null!==(o=(r=a).updateQueue)){var s=r.stateNode;try{var l=o.shared.hiddenCallbacks;if(null!==l)for(o.shared.hiddenCallbacks=null,o=0;o<l.length;o++)wa(l[o],s)}catch(e){yd(r,r.return,e)}}t&&64&i&&bl(a),xl(a,a.return);break;case 27:jl(a);case 26:case 5:Zl(o,a,t),t&&null===r&&4&i&&Bl(a),xl(a,a.return);break;case 12:Zl(o,a,t);break;case 31:Zl(o,a,t),t&&4&i&&Il(o,a);break;case 13:Zl(o,a,t),t&&4&i&&Ul(o,a);break;case 22:null===a.memoizedState&&Zl(o,a,t),xl(a,a.return);break;case 30:break;default:Zl(o,a,t)}n=n.sibling}}function Kl(e,n){var t=null;null!==e&&null!==e.memoizedState&&null!==e.memoizedState.cachePool&&(t=e.memoizedState.cachePool.pool),e=null,null!==n.memoizedState&&null!==n.memoizedState.cachePool&&(e=n.memoizedState.cachePool.pool),e!==t&&(null!=e&&e.refCount++,null!=t&&Uo(t))}function Xl(e,n){e=null,null!==n.alternate&&(e=n.alternate.memoizedState.cache),(n=n.memoizedState.cache)!==e&&(n.refCount++,null!=e&&Uo(e))}function Gl(e,n,t,r){if(10256&n.subtreeFlags)for(n=n.child;null!==n;)ec(e,n,t,r),n=n.sibling}function ec(e,n,t,r){var o=n.flags;switch(n.tag){case 0:case 11:case 15:Gl(e,n,t,r),2048&o&&ml(9,n);break;case 1:case 31:case 13:default:Gl(e,n,t,r);break;case 3:Gl(e,n,t,r),2048&o&&(e=null,null!==n.alternate&&(e=n.alternate.memoizedState.cache),(n=n.memoizedState.cache)!==e&&(n.refCount++,null!=e&&Uo(e)));break;case 12:if(2048&o){Gl(e,n,t,r),e=n.stateNode;try{var a=n.memoizedProps,i=a.id,s=a.onPostCommit;"function"==typeof s&&s(i,null===n.alternate?"mount":"update",e.passiveEffectDuration,-0)}catch(e){yd(n,n.return,e)}}else Gl(e,n,t,r);break;case 23:break;case 22:a=n.stateNode,i=n.alternate,null!==n.memoizedState?2&a._visibility?Gl(e,n,t,r):tc(e,n):2&a._visibility?Gl(e,n,t,r):(a._visibility|=2,nc(e,n,t,r,!!(10256&n.subtreeFlags)||!1)),2048&o&&Kl(i,n);break;case 24:Gl(e,n,t,r),2048&o&&Xl(n.alternate,n)}}function nc(e,n,t,r,o){for(o=o&&(!!(10256&n.subtreeFlags)||!1),n=n.child;null!==n;){var a=e,i=n,s=t,l=r,c=i.flags;switch(i.tag){case 0:case 11:case 15:nc(a,i,s,l,o),ml(8,i);break;case 23:break;case 22:var d=i.stateNode;null!==i.memoizedState?2&d._visibility?nc(a,i,s,l,o):tc(a,i):(d._visibility|=2,nc(a,i,s,l,o)),o&&2048&c&&Kl(i.alternate,i);break;case 24:nc(a,i,s,l,o),o&&2048&c&&Xl(i.alternate,i);break;default:nc(a,i,s,l,o)}n=n.sibling}}function tc(e,n){if(10256&n.subtreeFlags)for(n=n.child;null!==n;){var t=e,r=n,o=r.flags;switch(r.tag){case 22:tc(t,r),2048&o&&Kl(r.alternate,r);break;case 24:tc(t,r),2048&o&&Xl(r.alternate,r);break;default:tc(t,r)}n=n.sibling}}var rc=8192;function oc(e,n,t){if(e.subtreeFlags&rc)for(e=e.child;null!==e;)ac(e,n,t),e=e.sibling}function ac(e,n,t){switch(e.tag){case 26:oc(e,n,t),e.flags&rc&&null!==e.memoizedState&&function(e,n,t,r){if(!("stylesheet"!==t.type||"string"==typeof r.media&&!1===matchMedia(r.media).matches||4&t.state.loading)){if(null===t.instance){var o=WA(r.href),a=n.querySelector(QA(o));if(a)return null!==(n=a._p)&&"object"==typeof n&&"function"==typeof n.then&&(e.count++,e=iu.bind(e),n.then(e,e)),t.state.loading|=4,t.instance=a,void en(a);a=n.ownerDocument||n,r=HA(r),(o=FA.get(o))&&GA(r,o),en(a=a.createElement("link"));var i=a;i._p=new Promise(function(e,n){i.onload=e,i.onerror=n}),uA(a,"link",r),t.instance=a}null===e.stylesheets&&(e.stylesheets=new Map),e.stylesheets.set(t,n),(n=t.state.preload)&&!(3&t.state.loading)&&(e.count++,t=iu.bind(e),n.addEventListener("load",t),n.addEventListener("error",t))}}(t,$l,e.memoizedState,e.memoizedProps);break;case 5:default:oc(e,n,t);break;case 3:case 4:var r=$l;$l=UA(e.stateNode.containerInfo),oc(e,n,t),$l=r;break;case 22:null===e.memoizedState&&(null!==(r=e.alternate)&&null!==r.memoizedState?(r=rc,rc=16777216,oc(e,n,t),rc=r):oc(e,n,t))}}function ic(e){var n=e.alternate;if(null!==n&&null!==(e=n.child)){n.child=null;do{n=e.sibling,e.sibling=null,e=n}while(null!==e)}}function sc(e){var n=e.deletions;if(16&e.flags){if(null!==n)for(var t=0;t<n.length;t++){var r=n[t];Ol=r,dc(r,e)}ic(e)}if(10256&e.subtreeFlags)for(e=e.child;null!==e;)lc(e),e=e.sibling}function lc(e){switch(e.tag){case 0:case 11:case 15:sc(e),2048&e.flags&&gl(9,e,e.return);break;case 3:case 12:default:sc(e);break;case 22:var n=e.stateNode;null!==e.memoizedState&&2&n._visibility&&(null===e.return||13!==e.return.tag)?(n._visibility&=-3,cc(e)):sc(e)}}function cc(e){var n=e.deletions;if(16&e.flags){if(null!==n)for(var t=0;t<n.length;t++){var r=n[t];Ol=r,dc(r,e)}ic(e)}for(e=e.child;null!==e;){switch((n=e).tag){case 0:case 11:case 15:gl(8,n,n.return),cc(n);break;case 22:2&(t=n.stateNode)._visibility&&(t._visibility&=-3,cc(n));break;default:cc(n)}e=e.sibling}}function dc(e,n){for(;null!==Ol;){var t=Ol;switch(t.tag){case 0:case 11:case 15:gl(8,t,n);break;case 23:case 22:if(null!==t.memoizedState&&null!==t.memoizedState.cachePool){var r=t.memoizedState.cachePool.pool;null!=r&&r.refCount++}break;case 24:Uo(t.memoizedState.cache)}if(null!==(r=t.child))r.return=t,Ol=r;else e:for(t=e;null!==Ol;){var o=(r=Ol).sibling,a=r.return;if(Ml(r),r===t){Ol=null;break e}if(null!==o){o.return=a,Ol=o;break e}Ol=a}}}var Ac={getCacheForType:function(e){var n=Oo(Fo),t=n.data.get(e);return void 0===t&&(t=e(),n.data.set(e,t)),t},cacheSignal:function(){return Oo(Fo).controller.signal}},uc="function"==typeof WeakMap?WeakMap:Map,fc=0,pc=null,hc=null,mc=0,gc=0,bc=null,Ec=!1,xc=!1,Cc=!1,Bc=0,yc=0,vc=0,kc=0,wc=0,Sc=0,jc=0,Nc=null,zc=null,Pc=!1,_c=0,Oc=0,Tc=1/0,Mc=null,Rc=null,Dc=0,Lc=null,Fc=null,Ic=0,Uc=0,qc=null,Yc=null,$c=0,Vc=null;function Wc(){return 2&fc&&0!==mc?mc&-mc:null!==T.T?qd():Le()}function Qc(){if(0===Sc)if(536870912&mc&&!uo)Sc=536870912;else{var e=ve;!(3932160&(ve<<=1))&&(ve=262144),Sc=e}return null!==(e=Oa.current)&&(e.flags|=32),Sc}function Hc(e,n,t){(e!==pc||2!==gc&&9!==gc)&&null===e.cancelPendingCommit||(nd(e,0),Xc(e,mc,Sc,!1)),_e(e,t),2&fc&&e===pc||(e===pc&&(!(2&fc)&&(kc|=t),4===yc&&Xc(e,mc,Sc,!1)),Md(e))}function Jc(e,n,t){if(6&fc)throw Error(i(327));for(var r=!t&&!(127&n)&&0===(n&e.expiredLanes)||je(e,n),o=r?function(e,n){var t=fc;fc|=2;var r=od(),o=ad();pc!==e||mc!==n?(Mc=null,Tc=le()+500,nd(e,n)):xc=je(e,n);e:for(;;)try{if(0!==gc&&null!==hc){n=hc;var a=bc;n:switch(gc){case 1:gc=0,bc=null,ud(e,n,a,1);break;case 2:case 9:if(ta(a)){gc=0,bc=null,Ad(n);break}n=function(){2!==gc&&9!==gc||pc!==e||(gc=7),Md(e)},a.then(n,n);break e;case 3:gc=7;break e;case 4:gc=5;break e;case 7:ta(a)?(gc=0,bc=null,Ad(n)):(gc=0,bc=null,ud(e,n,a,7));break;case 5:var s=null;switch(hc.tag){case 26:s=hc.memoizedState;case 5:case 27:var l=hc;if(s?ou(s):l.stateNode.complete){gc=0,bc=null;var c=l.sibling;if(null!==c)hc=c;else{var d=l.return;null!==d?(hc=d,fd(d)):hc=null}break n}}gc=0,bc=null,ud(e,n,a,5);break;case 6:gc=0,bc=null,ud(e,n,a,6);break;case 8:ed(),yc=6;break e;default:throw Error(i(462))}}cd();break}catch(n){td(e,n)}return ko=vo=null,T.H=r,T.A=o,fc=t,null!==hc?0:(pc=null,mc=0,zr(),yc)}(e,n):sd(e,n,!0),a=r;;){if(0===o){xc&&!r&&Xc(e,n,0,!1);break}if(t=e.current.alternate,!a||Kc(t)){if(2===o){if(a=n,e.errorRecoveryDisabledLanes&a)var s=0;else s=0!=(s=-536870913&e.pendingLanes)?s:536870912&s?536870912:0;if(0!==s){n=s;e:{var l=e;o=Nc;var c=l.current.memoizedState.isDehydrated;if(c&&(nd(l,s).flags|=256),2!==(s=sd(l,s,!1))){if(Cc&&!c){l.errorRecoveryDisabledLanes|=a,kc|=a,o=4;break e}a=zc,zc=o,null!==a&&(null===zc?zc=a:zc.push.apply(zc,a))}o=s}if(a=!1,2!==o)continue}}if(1===o){nd(e,0),Xc(e,n,0,!0);break}e:{switch(r=e,a=o){case 0:case 1:throw Error(i(345));case 4:if((4194048&n)!==n)break;case 6:Xc(r,n,Sc,!Ec);break e;case 2:zc=null;break;case 3:case 5:break;default:throw Error(i(329))}if((62914560&n)===n&&10<(o=_c+300-le())){if(Xc(r,n,Sc,!Ec),0!==Se(r,0,!0))break e;Ic=n,r.timeoutHandle=CA(Zc.bind(null,r,t,zc,Mc,Pc,n,Sc,kc,jc,Ec,a,"Throttled",-0,0),o)}else Zc(r,t,zc,Mc,Pc,n,Sc,kc,jc,Ec,a,null,-0,0)}break}o=sd(e,n,!1),a=!1}Md(e)}function Zc(e,n,t,r,o,a,i,s,l,c,d,A,u,f){if(e.timeoutHandle=-1,8192&(A=n.subtreeFlags)||!(16785408&~A)){ac(n,a,A={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:On});var p=(62914560&a)===a?_c-le():(4194048&a)===a?Oc-le():0;if(null!==(p=function(e,n){return e.stylesheets&&0===e.count&&lu(e,e.stylesheets),0<e.count||0<e.imgCount?function(t){var r=setTimeout(function(){if(e.stylesheets&&lu(e,e.stylesheets),e.unsuspend){var n=e.unsuspend;e.unsuspend=null,n()}},6e4+n);0<e.imgBytes&&0===au&&(au=62500*function(){if("function"==typeof performance.getEntriesByType){for(var e=0,n=0,t=performance.getEntriesByType("resource"),r=0;r<t.length;r++){var o=t[r],a=o.transferSize,i=o.initiatorType,s=o.duration;if(a&&s&&fA(i)){for(i=0,s=o.responseEnd,r+=1;r<t.length;r++){var l=t[r],c=l.startTime;if(c>s)break;var d=l.transferSize,A=l.initiatorType;d&&fA(A)&&(i+=d*((l=l.responseEnd)<s?1:(s-c)/(l-c)))}if(--r,n+=8*(a+i)/(o.duration/1e3),10<++e)break}}if(0<e)return n/e/1e6}return navigator.connection&&"number"==typeof(e=navigator.connection.downlink)?e:5}());var o=setTimeout(function(){if(e.waitingForImages=!1,0===e.count&&(e.stylesheets&&lu(e,e.stylesheets),e.unsuspend)){var n=e.unsuspend;e.unsuspend=null,n()}},(e.imgBytes>au?50:800)+n);return e.unsuspend=t,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(o)}}:null}(A,p)))return Ic=a,e.cancelPendingCommit=p(hd.bind(null,e,n,a,t,r,o,i,s,l,d,A,null,u,f)),void Xc(e,a,i,!c)}hd(e,n,a,t,r,o,i,s,l)}function Kc(e){for(var n=e;;){var t=n.tag;if((0===t||11===t||15===t)&&16384&n.flags&&null!==(t=n.updateQueue)&&null!==(t=t.stores))for(var r=0;r<t.length;r++){var o=t[r],a=o.getSnapshot;o=o.value;try{if(!Xt(a(),o))return!1}catch(e){return!1}}if(t=n.child,16384&n.subtreeFlags&&null!==t)t.return=n,n=t;else{if(n===e)break;for(;null===n.sibling;){if(null===n.return||n.return===e)return!0;n=n.return}n.sibling.return=n.return,n=n.sibling}}return!0}function Xc(e,n,t,r){n&=~wc,n&=~kc,e.suspendedLanes|=n,e.pingedLanes&=~n,r&&(e.warmLanes|=n),r=e.expirationTimes;for(var o=n;0<o;){var a=31-xe(o),i=1<<a;r[a]=-1,o&=~i}0!==t&&Oe(e,t,n)}function Gc(){return!!(6&fc)||(Rd(0,!1),!1)}function ed(){if(null!==hc){if(0===gc)var e=hc.return;else ko=vo=null,si(e=hc),la=null,ca=0,e=hc;for(;null!==e;)hl(e.alternate,e),e=e.return;hc=null}}function nd(e,n){var t=e.timeoutHandle;-1!==t&&(e.timeoutHandle=-1,BA(t)),null!==(t=e.cancelPendingCommit)&&(e.cancelPendingCommit=null,t()),Ic=0,ed(),pc=e,hc=t=Ir(e.current,null),mc=n,gc=0,bc=null,Ec=!1,xc=je(e,n),Cc=!1,jc=Sc=wc=kc=vc=yc=0,zc=Nc=null,Pc=!1,8&n&&(n|=32&n);var r=e.entangledLanes;if(0!==r)for(e=e.entanglements,r&=n;0<r;){var o=31-xe(r),a=1<<o;n|=e[o],r&=~a}return Bc=n,zr(),t}function td(e,n){Ya=null,T.H=hs,n===Xo||n===ea?(n=ia(),gc=3):n===Go?(n=ia(),gc=4):gc=n===_s?8:null!==n&&"object"==typeof n&&"function"==typeof n.then?6:1,bc=n,null===hc&&(yc=1,Ss(e,Hr(n,e.current)))}function rd(){var e=Oa.current;return null===e||((4194048&mc)===mc?null===Ta:!!((62914560&mc)===mc||536870912&mc)&&e===Ta)}function od(){var e=T.H;return T.H=hs,null===e?hs:e}function ad(){var e=T.A;return T.A=Ac,e}function id(){yc=4,Ec||(4194048&mc)!==mc&&null!==Oa.current||(xc=!0),!(134217727&vc)&&!(134217727&kc)||null===pc||Xc(pc,mc,Sc,!1)}function sd(e,n,t){var r=fc;fc|=2;var o=od(),a=ad();pc===e&&mc===n||(Mc=null,nd(e,n)),n=!1;var i=yc;e:for(;;)try{if(0!==gc&&null!==hc){var s=hc,l=bc;switch(gc){case 8:ed(),i=6;break e;case 3:case 2:case 9:case 6:null===Oa.current&&(n=!0);var c=gc;if(gc=0,bc=null,ud(e,s,l,c),t&&xc){i=0;break e}break;default:c=gc,gc=0,bc=null,ud(e,s,l,c)}}ld(),i=yc;break}catch(n){td(e,n)}return n&&e.shellSuspendCounter++,ko=vo=null,fc=r,T.H=o,T.A=a,null===hc&&(pc=null,mc=0,zr()),i}function ld(){for(;null!==hc;)dd(hc)}function cd(){for(;null!==hc&&!ie();)dd(hc)}function dd(e){var n=il(e.alternate,e,Bc);e.memoizedProps=e.pendingProps,null===n?fd(e):hc=n}function Ad(e){var n=e,t=n.alternate;switch(n.tag){case 15:case 0:n=Vs(t,n,n.pendingProps,n.type,void 0,mc);break;case 11:n=Vs(t,n,n.pendingProps,n.type.render,n.ref,mc);break;case 5:si(n);default:hl(t,n),n=il(t,n=hc=Ur(n,Bc),Bc)}e.memoizedProps=e.pendingProps,null===n?fd(e):hc=n}function ud(e,n,t,r){ko=vo=null,si(n),la=null,ca=0;var o=n.return;try{if(function(e,n,t,r,o){if(t.flags|=32768,null!==r&&"object"==typeof r&&"function"==typeof r.then){if(null!==(n=t.alternate)&&zo(n,t,o,!0),null!==(t=Oa.current)){switch(t.tag){case 31:case 13:return null===Ta?id():null===t.alternate&&0===yc&&(yc=3),t.flags&=-257,t.flags|=65536,t.lanes=o,r===na?t.flags|=16384:(null===(n=t.updateQueue)?t.updateQueue=new Set([r]):n.add(r),vd(e,r,o)),!1;case 22:return t.flags|=65536,r===na?t.flags|=16384:(null===(n=t.updateQueue)?(n={transitions:null,markerInstances:null,retryQueue:new Set([r])},t.updateQueue=n):null===(t=n.retryQueue)?n.retryQueue=new Set([r]):t.add(r),vd(e,r,o)),!1}throw Error(i(435,t.tag))}return vd(e,r,o),id(),!1}if(uo)return null!==(n=Oa.current)?(!(65536&n.flags)&&(n.flags|=256),n.flags|=65536,n.lanes=o,r!==ho&&Bo(Hr(e=Error(i(422),{cause:r}),t))):(r!==ho&&Bo(Hr(n=Error(i(423),{cause:r}),t)),(e=e.current.alternate).flags|=65536,o&=-o,e.lanes|=o,r=Hr(r,t),Ba(e,o=Ns(e.stateNode,r,o)),4!==yc&&(yc=2)),!1;var a=Error(i(520),{cause:r});if(a=Hr(a,t),null===Nc?Nc=[a]:Nc.push(a),4!==yc&&(yc=2),null===n)return!0;r=Hr(r,t),t=n;do{switch(t.tag){case 3:return t.flags|=65536,e=o&-o,t.lanes|=e,Ba(t,e=Ns(t.stateNode,r,e)),!1;case 1:if(n=t.type,a=t.stateNode,!(128&t.flags||"function"!=typeof n.getDerivedStateFromError&&(null===a||"function"!=typeof a.componentDidCatch||null!==Rc&&Rc.has(a))))return t.flags|=65536,o&=-o,t.lanes|=o,Ps(o=zs(o),e,t,r),Ba(t,o),!1}t=t.return}while(null!==t);return!1}(e,o,n,t,mc))return yc=1,Ss(e,Hr(t,e.current)),void(hc=null)}catch(n){if(null!==o)throw hc=o,n;return yc=1,Ss(e,Hr(t,e.current)),void(hc=null)}32768&n.flags?(uo||1===r?e=!0:xc||536870912&mc?e=!1:(Ec=e=!0,(2===r||9===r||3===r||6===r)&&null!==(r=Oa.current)&&13===r.tag&&(r.flags|=16384)),pd(n,e)):fd(n)}function fd(e){var n=e;do{if(32768&n.flags)return void pd(n,Ec);e=n.return;var t=fl(n.alternate,n,Bc);if(null!==t)return void(hc=t);if(null!==(n=n.sibling))return void(hc=n);hc=n=e}while(null!==n);0===yc&&(yc=5)}function pd(e,n){do{var t=pl(e.alternate,e);if(null!==t)return t.flags&=32767,void(hc=t);if(null!==(t=e.return)&&(t.flags|=32768,t.subtreeFlags=0,t.deletions=null),!n&&null!==(e=e.sibling))return void(hc=e);hc=e=t}while(null!==e);yc=6,hc=null}function hd(e,n,t,r,o,a,s,l,c){e.cancelPendingCommit=null;do{xd()}while(0!==Dc);if(6&fc)throw Error(i(327));if(null!==n){if(n===e.current)throw Error(i(177));if(a=n.lanes|n.childLanes,function(e,n,t,r,o,a){var i=e.pendingLanes;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=t,e.entangledLanes&=t,e.errorRecoveryDisabledLanes&=t,e.shellSuspendCounter=0;var s=e.entanglements,l=e.expirationTimes,c=e.hiddenUpdates;for(t=i&~t;0<t;){var d=31-xe(t),A=1<<d;s[d]=0,l[d]=-1;var u=c[d];if(null!==u)for(c[d]=null,d=0;d<u.length;d++){var f=u[d];null!==f&&(f.lane&=-536870913)}t&=~A}0!==r&&Oe(e,r,0),0!==a&&0===o&&0!==e.tag&&(e.suspendedLanes|=a&~(i&~n))}(e,t,a|=Nr,s,l,c),e===pc&&(hc=pc=null,mc=0),Fc=n,Lc=e,Ic=t,Uc=a,qc=o,Yc=r,10256&n.subtreeFlags||10256&n.flags?(e.callbackNode=null,e.callbackPriority=0,oe(ue,function(){return Cd(),null})):(e.callbackNode=null,e.callbackPriority=0),r=!!(13878&n.flags),13878&n.subtreeFlags||r){r=T.T,T.T=null,o=M.p,M.p=2,s=fc,fc|=4;try{!function(e,n){if(e=e.containerInfo,pA=Eu,or(e=rr(e))){if("selectionStart"in e)var t={start:e.selectionStart,end:e.selectionEnd};else e:{var r=(t=(t=e.ownerDocument)&&t.defaultView||window).getSelection&&t.getSelection();if(r&&0!==r.rangeCount){t=r.anchorNode;var o=r.anchorOffset,a=r.focusNode;r=r.focusOffset;try{t.nodeType,a.nodeType}catch(e){t=null;break e}var s=0,l=-1,c=-1,d=0,A=0,u=e,f=null;n:for(;;){for(var p;u!==t||0!==o&&3!==u.nodeType||(l=s+o),u!==a||0!==r&&3!==u.nodeType||(c=s+r),3===u.nodeType&&(s+=u.nodeValue.length),null!==(p=u.firstChild);)f=u,u=p;for(;;){if(u===e)break n;if(f===t&&++d===o&&(l=s),f===a&&++A===r&&(c=s),null!==(p=u.nextSibling))break;f=(u=f).parentNode}u=p}t=-1===l||-1===c?null:{start:l,end:c}}else t=null}t=t||{start:0,end:0}}else t=null;for(hA={focusedElem:e,selectionRange:t},Eu=!1,Ol=n;null!==Ol;)if(e=(n=Ol).child,1028&n.subtreeFlags&&null!==e)e.return=n,Ol=e;else for(;null!==Ol;){switch(a=(n=Ol).alternate,e=n.flags,n.tag){case 0:if(4&e&&null!==(e=null!==(e=n.updateQueue)?e.events:null))for(t=0;t<e.length;t++)(o=e[t]).ref.impl=o.nextImpl;break;case 11:case 15:case 5:case 26:case 27:case 6:case 4:case 17:break;case 1:if(1024&e&&null!==a){e=void 0,t=n,o=a.memoizedProps,a=a.memoizedState,r=t.stateNode;try{var h=ys(t.type,o);e=r.getSnapshotBeforeUpdate(h,a),r.__reactInternalSnapshotBeforeUpdate=e}catch(e){yd(t,t.return,e)}}break;case 3:if(1024&e)if(9===(t=(e=n.stateNode.containerInfo).nodeType))NA(e);else if(1===t)switch(e.nodeName){case"HEAD":case"HTML":case"BODY":NA(e);break;default:e.textContent=""}break;default:if(1024&e)throw Error(i(163))}if(null!==(e=n.sibling)){e.return=n.return,Ol=e;break}Ol=n.return}}(e,n)}finally{fc=s,M.p=o,T.T=r}}Dc=1,md(),gd(),bd()}}function md(){if(1===Dc){Dc=0;var e=Lc,n=Fc,t=!!(13878&n.flags);if(13878&n.subtreeFlags||t){t=T.T,T.T=null;var r=M.p;M.p=2;var o=fc;fc|=4;try{Vl(n,e);var a=hA,i=rr(e.containerInfo),s=a.focusedElem,l=a.selectionRange;if(i!==s&&s&&s.ownerDocument&&tr(s.ownerDocument.documentElement,s)){if(null!==l&&or(s)){var c=l.start,d=l.end;if(void 0===d&&(d=c),"selectionStart"in s)s.selectionStart=c,s.selectionEnd=Math.min(d,s.value.length);else{var A=s.ownerDocument||document,u=A&&A.defaultView||window;if(u.getSelection){var f=u.getSelection(),p=s.textContent.length,h=Math.min(l.start,p),m=void 0===l.end?h:Math.min(l.end,p);!f.extend&&h>m&&(i=m,m=h,h=i);var g=nr(s,h),b=nr(s,m);if(g&&b&&(1!==f.rangeCount||f.anchorNode!==g.node||f.anchorOffset!==g.offset||f.focusNode!==b.node||f.focusOffset!==b.offset)){var E=A.createRange();E.setStart(g.node,g.offset),f.removeAllRanges(),h>m?(f.addRange(E),f.extend(b.node,b.offset)):(E.setEnd(b.node,b.offset),f.addRange(E))}}}}for(A=[],f=s;f=f.parentNode;)1===f.nodeType&&A.push({element:f,left:f.scrollLeft,top:f.scrollTop});for("function"==typeof s.focus&&s.focus(),s=0;s<A.length;s++){var x=A[s];x.element.scrollLeft=x.left,x.element.scrollTop=x.top}}Eu=!!pA,hA=pA=null}finally{fc=o,M.p=r,T.T=t}}e.current=n,Dc=2}}function gd(){if(2===Dc){Dc=0;var e=Lc,n=Fc,t=!!(8772&n.flags);if(8772&n.subtreeFlags||t){t=T.T,T.T=null;var r=M.p;M.p=2;var o=fc;fc|=4;try{Tl(e,n.alternate,n)}finally{fc=o,M.p=r,T.T=t}}Dc=3}}function bd(){if(4===Dc||3===Dc){Dc=0,se();var e=Lc,n=Fc,t=Ic,r=Yc;10256&n.subtreeFlags||10256&n.flags?Dc=5:(Dc=0,Fc=Lc=null,Ed(e,e.pendingLanes));var o=e.pendingLanes;if(0===o&&(Rc=null),De(t),n=n.stateNode,be&&"function"==typeof be.onCommitFiberRoot)try{be.onCommitFiberRoot(ge,n,void 0,!(128&~n.current.flags))}catch(e){}if(null!==r){n=T.T,o=M.p,M.p=2,T.T=null;try{for(var a=e.onRecoverableError,i=0;i<r.length;i++){var s=r[i];a(s.value,{componentStack:s.stack})}}finally{T.T=n,M.p=o}}3&Ic&&xd(),Md(e),o=e.pendingLanes,261930&t&&42&o?e===Vc?$c++:($c=0,Vc=e):$c=0,Rd(0,!1)}}function Ed(e,n){0===(e.pooledCacheLanes&=n)&&null!=(n=e.pooledCache)&&(e.pooledCache=null,Uo(n))}function xd(){return md(),gd(),bd(),Cd()}function Cd(){if(5!==Dc)return!1;var e=Lc,n=Uc;Uc=0;var t=De(Ic),r=T.T,o=M.p;try{M.p=32>t?32:t,T.T=null,t=qc,qc=null;var a=Lc,s=Ic;if(Dc=0,Fc=Lc=null,Ic=0,6&fc)throw Error(i(331));var l=fc;if(fc|=4,lc(a.current),ec(a,a.current,s,t),fc=l,Rd(0,!1),be&&"function"==typeof be.onPostCommitFiberRoot)try{be.onPostCommitFiberRoot(ge,a)}catch(e){}return!0}finally{M.p=o,T.T=r,Ed(e,n)}}function Bd(e,n,t){n=Hr(t,n),null!==(e=xa(e,n=Ns(e.stateNode,n,2),2))&&(_e(e,2),Md(e))}function yd(e,n,t){if(3===e.tag)Bd(e,e,t);else for(;null!==n;){if(3===n.tag){Bd(n,e,t);break}if(1===n.tag){var r=n.stateNode;if("function"==typeof n.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===Rc||!Rc.has(r))){e=Hr(t,e),null!==(r=xa(n,t=zs(2),2))&&(Ps(t,r,n,e),_e(r,2),Md(r));break}}n=n.return}}function vd(e,n,t){var r=e.pingCache;if(null===r){r=e.pingCache=new uc;var o=new Set;r.set(n,o)}else void 0===(o=r.get(n))&&(o=new Set,r.set(n,o));o.has(t)||(Cc=!0,o.add(t),e=kd.bind(null,e,n,t),n.then(e,e))}function kd(e,n,t){var r=e.pingCache;null!==r&&r.delete(n),e.pingedLanes|=e.suspendedLanes&t,e.warmLanes&=~t,pc===e&&(mc&t)===t&&(4===yc||3===yc&&(62914560&mc)===mc&&300>le()-_c?!(2&fc)&&nd(e,0):wc|=t,jc===mc&&(jc=0)),Md(e)}function wd(e,n){0===n&&(n=ze()),null!==(e=Or(e,n))&&(_e(e,n),Md(e))}function Sd(e){var n=e.memoizedState,t=0;null!==n&&(t=n.retryLane),wd(e,t)}function jd(e,n){var t=0;switch(e.tag){case 31:case 13:var r=e.stateNode,o=e.memoizedState;null!==o&&(t=o.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}null!==r&&r.delete(n),wd(e,t)}var Nd=null,zd=null,Pd=!1,_d=!1,Od=!1,Td=0;function Md(e){e!==zd&&null===e.next&&(null===zd?Nd=zd=e:zd=zd.next=e),_d=!0,Pd||(Pd=!0,vA(function(){6&fc?oe(de,Dd):Ld()}))}function Rd(e,n){if(!Od&&_d){Od=!0;do{for(var t=!1,r=Nd;null!==r;){if(!n)if(0!==e){var o=r.pendingLanes;if(0===o)var a=0;else{var i=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-xe(42|e)+1)-1,a=201326741&(a&=o&~(i&~s))?201326741&a|1:a?2|a:0}0!==a&&(t=!0,Ud(r,a))}else a=mc,!(3&(a=Se(r,r===pc?a:0,null!==r.cancelPendingCommit||-1!==r.timeoutHandle)))||je(r,a)||(t=!0,Ud(r,a));r=r.next}}while(t);Od=!1}}function Dd(){Ld()}function Ld(){_d=Pd=!1;var e,n=0;0!==Td&&((e=window.event)&&"popstate"===e.type?e!==xA&&(xA=e,1):(xA=null,0))&&(n=Td);for(var t=le(),r=null,o=Nd;null!==o;){var a=o.next,i=Fd(o,t);0===i?(o.next=null,null===r?Nd=a:r.next=a,null===a&&(zd=r)):(r=o,(0!==n||3&i)&&(_d=!0)),o=a}0!==Dc&&5!==Dc||Rd(n,!1),0!==Td&&(Td=0)}function Fd(e,n){for(var t=e.suspendedLanes,r=e.pingedLanes,o=e.expirationTimes,a=-62914561&e.pendingLanes;0<a;){var i=31-xe(a),s=1<<i,l=o[i];-1===l?0!==(s&t)&&0===(s&r)||(o[i]=Ne(s,n)):l<=n&&(e.expiredLanes|=s),a&=~s}if(t=mc,t=Se(e,e===(n=pc)?t:0,null!==e.cancelPendingCommit||-1!==e.timeoutHandle),r=e.callbackNode,0===t||e===n&&(2===gc||9===gc)||null!==e.cancelPendingCommit)return null!==r&&null!==r&&ae(r),e.callbackNode=null,e.callbackPriority=0;if(!(3&t)||je(e,t)){if((n=t&-t)===e.callbackPriority)return n;switch(null!==r&&ae(r),De(t)){case 2:case 8:t=Ae;break;case 32:default:t=ue;break;case 268435456:t=pe}return r=Id.bind(null,e),t=oe(t,r),e.callbackPriority=n,e.callbackNode=t,n}return null!==r&&null!==r&&ae(r),e.callbackPriority=2,e.callbackNode=null,2}function Id(e,n){if(0!==Dc&&5!==Dc)return e.callbackNode=null,e.callbackPriority=0,null;var t=e.callbackNode;if(xd()&&e.callbackNode!==t)return null;var r=mc;return 0===(r=Se(e,e===pc?r:0,null!==e.cancelPendingCommit||-1!==e.timeoutHandle))?null:(Jc(e,r,n),Fd(e,le()),null!=e.callbackNode&&e.callbackNode===t?Id.bind(null,e):null)}function Ud(e,n){if(xd())return null;Jc(e,n,!0)}function qd(){if(0===Td){var e=$o;0===e&&(e=ye,!(261888&(ye<<=1))&&(ye=256)),Td=e}return Td}function Yd(e){return null==e||"symbol"==typeof e||"boolean"==typeof e?null:"function"==typeof e?e:_n(""+e)}function $d(e,n){var t=n.ownerDocument.createElement("input");return t.name=n.name,t.value=n.value,e.id&&t.setAttribute("form",e.id),n.parentNode.insertBefore(t,n),e=new FormData(e),t.parentNode.removeChild(t),e}for(var Vd=0;Vd<vr.length;Vd++){var Wd=vr[Vd];kr(Wd.toLowerCase(),"on"+(Wd[0].toUpperCase()+Wd.slice(1)))}kr(mr,"onAnimationEnd"),kr(gr,"onAnimationIteration"),kr(br,"onAnimationStart"),kr("dblclick","onDoubleClick"),kr("focusin","onFocus"),kr("focusout","onBlur"),kr(Er,"onTransitionRun"),kr(xr,"onTransitionStart"),kr(Cr,"onTransitionCancel"),kr(Br,"onTransitionEnd"),on("onMouseEnter",["mouseout","mouseover"]),on("onMouseLeave",["mouseout","mouseover"]),on("onPointerEnter",["pointerout","pointerover"]),on("onPointerLeave",["pointerout","pointerover"]),rn("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),rn("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),rn("onBeforeInput",["compositionend","keypress","textInput","paste"]),rn("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),rn("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),rn("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Qd="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Hd=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(Qd));function Jd(e,n){n=!!(4&n);for(var t=0;t<e.length;t++){var r=e[t],o=r.event;r=r.listeners;e:{var a=void 0;if(n)for(var i=r.length-1;0<=i;i--){var s=r[i],l=s.instance,c=s.currentTarget;if(s=s.listener,l!==a&&o.isPropagationStopped())break e;a=s,o.currentTarget=c;try{a(o)}catch(e){wr(e)}o.currentTarget=null,a=l}else for(i=0;i<r.length;i++){if(l=(s=r[i]).instance,c=s.currentTarget,s=s.listener,l!==a&&o.isPropagationStopped())break e;a=s,o.currentTarget=c;try{a(o)}catch(e){wr(e)}o.currentTarget=null,a=l}}}}function Zd(e,n){var t=n[$e];void 0===t&&(t=n[$e]=new Set);var r=e+"__bubble";t.has(r)||(eA(n,e,2,!1),t.add(r))}function Kd(e,n,t){var r=0;n&&(r|=4),eA(t,e,r,n)}var Xd="_reactListening"+Math.random().toString(36).slice(2);function Gd(e){if(!e[Xd]){e[Xd]=!0,nn.forEach(function(n){"selectionchange"!==n&&(Hd.has(n)||Kd(n,!1,e),Kd(n,!0,e))});var n=9===e.nodeType?e:e.ownerDocument;null===n||n[Xd]||(n[Xd]=!0,Kd("selectionchange",!1,n))}}function eA(e,n,t,r){switch(wu(n)){case 2:var o=xu;break;case 8:o=Cu;break;default:o=Bu}t=o.bind(null,n,t,e),o=void 0,!Yn||"touchstart"!==n&&"touchmove"!==n&&"wheel"!==n||(o=!0),r?void 0!==o?e.addEventListener(n,t,{capture:!0,passive:o}):e.addEventListener(n,t,!0):void 0!==o?e.addEventListener(n,t,{passive:o}):e.addEventListener(n,t,!1)}function nA(e,n,t,r,o){var a=r;if(!(1&n||2&n||null===r))e:for(;;){if(null===r)return;var i=r.tag;if(3===i||4===i){var s=r.stateNode.containerInfo;if(s===o)break;if(4===i)for(i=r.return;null!==i;){var c=i.tag;if((3===c||4===c)&&i.stateNode.containerInfo===o)return;i=i.return}for(;null!==s;){if(null===(i=Ze(s)))return;if(5===(c=i.tag)||6===c||26===c||27===c){r=a=i;continue e}s=s.parentNode}}r=r.return}In(function(){var r=a,o=Mn(t),i=[];e:{var s=yr.get(e);if(void 0!==s){var c=rt,d=e;switch(e){case"keypress":if(0===Jn(t))break e;case"keydown":case"keyup":c=bt;break;case"focusin":d="focus",c=ct;break;case"focusout":d="blur",c=ct;break;case"beforeblur":case"afterblur":c=ct;break;case"click":if(2===t.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":c=st;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":c=lt;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":c=xt;break;case mr:case gr:case br:c=dt;break;case Br:c=Ct;break;case"scroll":case"scrollend":c=at;break;case"wheel":c=Bt;break;case"copy":case"cut":case"paste":c=At;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":c=Et;break;case"toggle":case"beforetoggle":c=yt}var A=!!(4&n),u=!A&&("scroll"===e||"scrollend"===e),f=A?null!==s?s+"Capture":null:s;A=[];for(var p,h=r;null!==h;){var m=h;if(p=m.stateNode,5!==(m=m.tag)&&26!==m&&27!==m||null===p||null===f||null!=(m=Un(h,f))&&A.push(tA(h,m,p)),u)break;h=h.return}0<A.length&&(s=new c(s,d,null,t,o),i.push({event:s,listeners:A}))}}if(!(7&n)){if(c="mouseout"===e||"pointerout"===e,(!(s="mouseover"===e||"pointerover"===e)||t===Tn||!(d=t.relatedTarget||t.fromElement)||!Ze(d)&&!d[Ye])&&(c||s)&&(s=o.window===o?o:(s=o.ownerDocument)?s.defaultView||s.parentWindow:window,c?(c=r,null!==(d=(d=t.relatedTarget||t.toElement)?Ze(d):null)&&(u=l(d),A=d.tag,d!==u||5!==A&&27!==A&&6!==A)&&(d=null)):(c=null,d=r),c!==d)){if(A=st,m="onMouseLeave",f="onMouseEnter",h="mouse","pointerout"!==e&&"pointerover"!==e||(A=Et,m="onPointerLeave",f="onPointerEnter",h="pointer"),u=null==c?s:Xe(c),p=null==d?s:Xe(d),(s=new A(m,h+"leave",c,t,o)).target=u,s.relatedTarget=p,m=null,Ze(o)===r&&((A=new A(f,h+"enter",d,t,o)).target=p,A.relatedTarget=u,m=A),u=m,c&&d)e:{for(A=oA,h=d,p=0,m=f=c;m;m=A(m))p++;m=0;for(var g=h;g;g=A(g))m++;for(;0<p-m;)f=A(f),p--;for(;0<m-p;)h=A(h),m--;for(;p--;){if(f===h||null!==h&&f===h.alternate){A=f;break e}f=A(f),h=A(h)}A=null}else A=null;null!==c&&aA(i,s,c,A,!1),null!==d&&null!==u&&aA(i,u,d,A,!0)}if("select"===(c=(s=r?Xe(r):window).nodeName&&s.nodeName.toLowerCase())||"input"===c&&"file"===s.type)var b=Ut;else if(Mt(s))if(qt)b=Kt;else{b=Jt;var E=Ht}else!(c=s.nodeName)||"input"!==c.toLowerCase()||"checkbox"!==s.type&&"radio"!==s.type?r&&Nn(r.elementType)&&(b=Ut):b=Zt;switch(b&&(b=b(e,r))?Rt(i,b,t,o):(E&&E(e,s,r),"focusout"===e&&r&&"number"===s.type&&null!=r.memoizedProps.value&&Cn(s,"number",s.value)),E=r?Xe(r):window,e){case"focusin":(Mt(E)||"true"===E.contentEditable)&&(ir=E,sr=r,lr=null);break;case"focusout":lr=sr=ir=null;break;case"mousedown":cr=!0;break;case"contextmenu":case"mouseup":case"dragend":cr=!1,dr(i,t,o);break;case"selectionchange":if(ar)break;case"keydown":case"keyup":dr(i,t,o)}var x;if(kt)e:{switch(e){case"compositionstart":var C="onCompositionStart";break e;case"compositionend":C="onCompositionEnd";break e;case"compositionupdate":C="onCompositionUpdate";break e}C=void 0}else Ot?Pt(e,t)&&(C="onCompositionEnd"):"keydown"===e&&229===t.keyCode&&(C="onCompositionStart");C&&(jt&&"ko"!==t.locale&&(Ot||"onCompositionStart"!==C?"onCompositionEnd"===C&&Ot&&(x=Hn()):(Wn="value"in(Vn=o)?Vn.value:Vn.textContent,Ot=!0)),0<(E=rA(r,C)).length&&(C=new ut(C,e,null,t,o),i.push({event:C,listeners:E}),(x||null!==(x=_t(t)))&&(C.data=x))),(x=St?function(e,n){switch(e){case"compositionend":return _t(n);case"keypress":return 32!==n.which?null:(zt=!0,Nt);case"textInput":return(e=n.data)===Nt&&zt?null:e;default:return null}}(e,t):function(e,n){if(Ot)return"compositionend"===e||!kt&&Pt(e,n)?(e=Hn(),Qn=Wn=Vn=null,Ot=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1<n.char.length)return n.char;if(n.which)return String.fromCharCode(n.which)}return null;case"compositionend":return jt&&"ko"!==n.locale?null:n.data}}(e,t))&&0<(C=rA(r,"onBeforeInput")).length&&(E=new ut("onBeforeInput","beforeinput",null,t,o),i.push({event:E,listeners:C}),E.data=x),function(e,n,t,r,o){if("submit"===n&&t&&t.stateNode===o){var a=Yd((o[qe]||null).action),i=r.submitter;i&&null!==(n=(n=i[qe]||null)?Yd(n.formAction):i.getAttribute("formAction"))&&(a=n,i=null);var s=new rt("action","action",null,r,o);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(0!==Td){var e=i?$d(o,i):new FormData(o);ns(t,{pending:!0,data:e,method:o.method,action:a},null,e)}}else"function"==typeof a&&(s.preventDefault(),e=i?$d(o,i):new FormData(o),ns(t,{pending:!0,data:e,method:o.method,action:a},a,e))},currentTarget:o}]})}}(i,e,r,t,o)}Jd(i,n)})}function tA(e,n,t){return{instance:e,listener:n,currentTarget:t}}function rA(e,n){for(var t=n+"Capture",r=[];null!==e;){var o=e,a=o.stateNode;if(5!==(o=o.tag)&&26!==o&&27!==o||null===a||(null!=(o=Un(e,t))&&r.unshift(tA(e,o,a)),null!=(o=Un(e,n))&&r.push(tA(e,o,a))),3===e.tag)return r;e=e.return}return[]}function oA(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag&&27!==e.tag);return e||null}function aA(e,n,t,r,o){for(var a=n._reactName,i=[];null!==t&&t!==r;){var s=t,l=s.alternate,c=s.stateNode;if(s=s.tag,null!==l&&l===r)break;5!==s&&26!==s&&27!==s||null===c||(l=c,o?null!=(c=Un(t,a))&&i.unshift(tA(t,c,l)):o||null!=(c=Un(t,a))&&i.push(tA(t,c,l))),t=t.return}0!==i.length&&e.push({event:n,listeners:i})}var iA=/\r\n?/g,sA=/\u0000|\uFFFD/g;function lA(e){return("string"==typeof e?e:""+e).replace(iA,"\n").replace(sA,"")}function cA(e,n){return n=lA(n),lA(e)===n}function dA(e,n,t,r,o,a){switch(t){case"children":"string"==typeof r?"body"===n||"textarea"===n&&""===r||kn(e,r):("number"==typeof r||"bigint"==typeof r)&&"body"!==n&&kn(e,""+r);break;case"className":dn(e,"class",r);break;case"tabIndex":dn(e,"tabindex",r);break;case"dir":case"role":case"viewBox":case"width":case"height":dn(e,t,r);break;case"style":jn(e,r,a);break;case"data":if("object"!==n){dn(e,"data",r);break}case"src":case"href":if(""===r&&("a"!==n||"href"!==t)){e.removeAttribute(t);break}if(null==r||"function"==typeof r||"symbol"==typeof r||"boolean"==typeof r){e.removeAttribute(t);break}r=_n(""+r),e.setAttribute(t,r);break;case"action":case"formAction":if("function"==typeof r){e.setAttribute(t,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}if("function"==typeof a&&("formAction"===t?("input"!==n&&dA(e,n,"name",o.name,o,null),dA(e,n,"formEncType",o.formEncType,o,null),dA(e,n,"formMethod",o.formMethod,o,null),dA(e,n,"formTarget",o.formTarget,o,null)):(dA(e,n,"encType",o.encType,o,null),dA(e,n,"method",o.method,o,null),dA(e,n,"target",o.target,o,null))),null==r||"symbol"==typeof r||"boolean"==typeof r){e.removeAttribute(t);break}r=_n(""+r),e.setAttribute(t,r);break;case"onClick":null!=r&&(e.onclick=On);break;case"onScroll":null!=r&&Zd("scroll",e);break;case"onScrollEnd":null!=r&&Zd("scrollend",e);break;case"dangerouslySetInnerHTML":if(null!=r){if("object"!=typeof r||!("__html"in r))throw Error(i(61));if(null!=(t=r.__html)){if(null!=o.children)throw Error(i(60));e.innerHTML=t}}break;case"multiple":e.multiple=r&&"function"!=typeof r&&"symbol"!=typeof r;break;case"muted":e.muted=r&&"function"!=typeof r&&"symbol"!=typeof r;break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":case"autoFocus":break;case"xlinkHref":if(null==r||"function"==typeof r||"boolean"==typeof r||"symbol"==typeof r){e.removeAttribute("xlink:href");break}t=_n(""+r),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",t);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":null!=r&&"function"!=typeof r&&"symbol"!=typeof r?e.setAttribute(t,""+r):e.removeAttribute(t);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":r&&"function"!=typeof r&&"symbol"!=typeof r?e.setAttribute(t,""):e.removeAttribute(t);break;case"capture":case"download":!0===r?e.setAttribute(t,""):!1!==r&&null!=r&&"function"!=typeof r&&"symbol"!=typeof r?e.setAttribute(t,r):e.removeAttribute(t);break;case"cols":case"rows":case"size":case"span":null!=r&&"function"!=typeof r&&"symbol"!=typeof r&&!isNaN(r)&&1<=r?e.setAttribute(t,r):e.removeAttribute(t);break;case"rowSpan":case"start":null==r||"function"==typeof r||"symbol"==typeof r||isNaN(r)?e.removeAttribute(t):e.setAttribute(t,r);break;case"popover":Zd("beforetoggle",e),Zd("toggle",e),cn(e,"popover",r);break;case"xlinkActuate":An(e,"http://www.w3.org/1999/xlink","xlink:actuate",r);break;case"xlinkArcrole":An(e,"http://www.w3.org/1999/xlink","xlink:arcrole",r);break;case"xlinkRole":An(e,"http://www.w3.org/1999/xlink","xlink:role",r);break;case"xlinkShow":An(e,"http://www.w3.org/1999/xlink","xlink:show",r);break;case"xlinkTitle":An(e,"http://www.w3.org/1999/xlink","xlink:title",r);break;case"xlinkType":An(e,"http://www.w3.org/1999/xlink","xlink:type",r);break;case"xmlBase":An(e,"http://www.w3.org/XML/1998/namespace","xml:base",r);break;case"xmlLang":An(e,"http://www.w3.org/XML/1998/namespace","xml:lang",r);break;case"xmlSpace":An(e,"http://www.w3.org/XML/1998/namespace","xml:space",r);break;case"is":cn(e,"is",r);break;case"innerText":case"textContent":break;default:(!(2<t.length)||"o"!==t[0]&&"O"!==t[0]||"n"!==t[1]&&"N"!==t[1])&&cn(e,t=zn.get(t)||t,r)}}function AA(e,n,t,r,o,a){switch(t){case"style":jn(e,r,a);break;case"dangerouslySetInnerHTML":if(null!=r){if("object"!=typeof r||!("__html"in r))throw Error(i(61));if(null!=(t=r.__html)){if(null!=o.children)throw Error(i(60));e.innerHTML=t}}break;case"children":"string"==typeof r?kn(e,r):("number"==typeof r||"bigint"==typeof r)&&kn(e,""+r);break;case"onScroll":null!=r&&Zd("scroll",e);break;case"onScrollEnd":null!=r&&Zd("scrollend",e);break;case"onClick":null!=r&&(e.onclick=On);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":case"innerText":case"textContent":break;default:tn.hasOwnProperty(t)||("o"!==t[0]||"n"!==t[1]||(o=t.endsWith("Capture"),n=t.slice(2,o?t.length-7:void 0),"function"==typeof(a=null!=(a=e[qe]||null)?a[t]:null)&&e.removeEventListener(n,a,o),"function"!=typeof r)?t in e?e[t]=r:!0===r?e.setAttribute(t,""):cn(e,t,r):("function"!=typeof a&&null!==a&&(t in e?e[t]=null:e.hasAttribute(t)&&e.removeAttribute(t)),e.addEventListener(n,r,o)))}}function uA(e,n,t){switch(n){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":Zd("error",e),Zd("load",e);var r,o=!1,a=!1;for(r in t)if(t.hasOwnProperty(r)){var s=t[r];if(null!=s)switch(r){case"src":o=!0;break;case"srcSet":a=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(i(137,n));default:dA(e,n,r,s,t,null)}}return a&&dA(e,n,"srcSet",t.srcSet,t,null),void(o&&dA(e,n,"src",t.src,t,null));case"input":Zd("invalid",e);var l=r=s=a=null,c=null,d=null;for(o in t)if(t.hasOwnProperty(o)){var A=t[o];if(null!=A)switch(o){case"name":a=A;break;case"type":s=A;break;case"checked":c=A;break;case"defaultChecked":d=A;break;case"value":r=A;break;case"defaultValue":l=A;break;case"children":case"dangerouslySetInnerHTML":if(null!=A)throw Error(i(137,n));break;default:dA(e,n,o,A,t,null)}}return void xn(e,r,l,c,d,s,a,!1);case"select":for(a in Zd("invalid",e),o=s=r=null,t)if(t.hasOwnProperty(a)&&null!=(l=t[a]))switch(a){case"value":r=l;break;case"defaultValue":s=l;break;case"multiple":o=l;default:dA(e,n,a,l,t,null)}return n=r,t=s,e.multiple=!!o,void(null!=n?Bn(e,!!o,n,!1):null!=t&&Bn(e,!!o,t,!0));case"textarea":for(s in Zd("invalid",e),r=a=o=null,t)if(t.hasOwnProperty(s)&&null!=(l=t[s]))switch(s){case"value":o=l;break;case"defaultValue":a=l;break;case"children":r=l;break;case"dangerouslySetInnerHTML":if(null!=l)throw Error(i(91));break;default:dA(e,n,s,l,t,null)}return void vn(e,o,a,r);case"option":for(c in t)t.hasOwnProperty(c)&&null!=(o=t[c])&&("selected"===c?e.selected=o&&"function"!=typeof o&&"symbol"!=typeof o:dA(e,n,c,o,t,null));return;case"dialog":Zd("beforetoggle",e),Zd("toggle",e),Zd("cancel",e),Zd("close",e);break;case"iframe":case"object":Zd("load",e);break;case"video":case"audio":for(o=0;o<Qd.length;o++)Zd(Qd[o],e);break;case"image":Zd("error",e),Zd("load",e);break;case"details":Zd("toggle",e);break;case"embed":case"source":case"link":Zd("error",e),Zd("load",e);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(d in t)if(t.hasOwnProperty(d)&&null!=(o=t[d]))switch(d){case"children":case"dangerouslySetInnerHTML":throw Error(i(137,n));default:dA(e,n,d,o,t,null)}return;default:if(Nn(n)){for(A in t)t.hasOwnProperty(A)&&void 0!==(o=t[A])&&AA(e,n,A,o,t,void 0);return}}for(l in t)t.hasOwnProperty(l)&&null!=(o=t[l])&&dA(e,n,l,o,t,null)}function fA(e){switch(e){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}var pA=null,hA=null;function mA(e){return 9===e.nodeType?e:e.ownerDocument}function gA(e){switch(e){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function bA(e,n){if(0===e)switch(n){case"svg":return 1;case"math":return 2;default:return 0}return 1===e&&"foreignObject"===n?0:e}function EA(e,n){return"textarea"===e||"noscript"===e||"string"==typeof n.children||"number"==typeof n.children||"bigint"==typeof n.children||"object"==typeof n.dangerouslySetInnerHTML&&null!==n.dangerouslySetInnerHTML&&null!=n.dangerouslySetInnerHTML.__html}var xA=null,CA="function"==typeof setTimeout?setTimeout:void 0,BA="function"==typeof clearTimeout?clearTimeout:void 0,yA="function"==typeof Promise?Promise:void 0,vA="function"==typeof queueMicrotask?queueMicrotask:void 0!==yA?function(e){return yA.resolve(null).then(e).catch(kA)}:CA;function kA(e){setTimeout(function(){throw e})}function wA(e){return"head"===e}function SA(e,n){var t=n,r=0;do{var o=t.nextSibling;if(e.removeChild(t),o&&8===o.nodeType)if("/$"===(t=o.data)||"/&"===t){if(0===r)return e.removeChild(o),void $u(n);r--}else if("$"===t||"$?"===t||"$~"===t||"$!"===t||"&"===t)r++;else if("html"===t)LA(e.ownerDocument.documentElement);else if("head"===t){LA(t=e.ownerDocument.head);for(var a=t.firstChild;a;){var i=a.nextSibling,s=a.nodeName;a[He]||"SCRIPT"===s||"STYLE"===s||"LINK"===s&&"stylesheet"===a.rel.toLowerCase()||t.removeChild(a),a=i}}else"body"===t&&LA(e.ownerDocument.body);t=o}while(t);$u(n)}function jA(e,n){var t=e;e=0;do{var r=t.nextSibling;if(1===t.nodeType?n?(t._stashedDisplay=t.style.display,t.style.display="none"):(t.style.display=t._stashedDisplay||"",""===t.getAttribute("style")&&t.removeAttribute("style")):3===t.nodeType&&(n?(t._stashedText=t.nodeValue,t.nodeValue=""):t.nodeValue=t._stashedText||""),r&&8===r.nodeType)if("/$"===(t=r.data)){if(0===e)break;e--}else"$"!==t&&"$?"!==t&&"$~"!==t&&"$!"!==t||e++;t=r}while(t)}function NA(e){var n=e.firstChild;for(n&&10===n.nodeType&&(n=n.nextSibling);n;){var t=n;switch(n=n.nextSibling,t.nodeName){case"HTML":case"HEAD":case"BODY":NA(t),Je(t);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if("stylesheet"===t.rel.toLowerCase())continue}e.removeChild(t)}}function zA(e,n){for(;8!==e.nodeType;){if((1!==e.nodeType||"INPUT"!==e.nodeName||"hidden"!==e.type)&&!n)return null;if(null===(e=OA(e.nextSibling)))return null}return e}function PA(e){return"$?"===e.data||"$~"===e.data}function _A(e){return"$!"===e.data||"$?"===e.data&&"loading"!==e.ownerDocument.readyState}function OA(e){for(;null!=e;e=e.nextSibling){var n=e.nodeType;if(1===n||3===n)break;if(8===n){if("$"===(n=e.data)||"$!"===n||"$?"===n||"$~"===n||"&"===n||"F!"===n||"F"===n)break;if("/$"===n||"/&"===n)return null}}return e}var TA=null;function MA(e){e=e.nextSibling;for(var n=0;e;){if(8===e.nodeType){var t=e.data;if("/$"===t||"/&"===t){if(0===n)return OA(e.nextSibling);n--}else"$"!==t&&"$!"!==t&&"$?"!==t&&"$~"!==t&&"&"!==t||n++}e=e.nextSibling}return null}function RA(e){e=e.previousSibling;for(var n=0;e;){if(8===e.nodeType){var t=e.data;if("$"===t||"$!"===t||"$?"===t||"$~"===t||"&"===t){if(0===n)return e;n--}else"/$"!==t&&"/&"!==t||n++}e=e.previousSibling}return null}function DA(e,n,t){switch(n=mA(t),e){case"html":if(!(e=n.documentElement))throw Error(i(452));return e;case"head":if(!(e=n.head))throw Error(i(453));return e;case"body":if(!(e=n.body))throw Error(i(454));return e;default:throw Error(i(451))}}function LA(e){for(var n=e.attributes;n.length;)e.removeAttributeNode(n[0]);Je(e)}var FA=new Map,IA=new Set;function UA(e){return"function"==typeof e.getRootNode?e.getRootNode():9===e.nodeType?e:e.ownerDocument}var qA=M.d;M.d={f:function(){var e=qA.f(),n=Gc();return e||n},r:function(e){var n=Ke(e);null!==n&&5===n.tag&&"form"===n.type?rs(n):qA.r(e)},D:function(e){qA.D(e),$A("dns-prefetch",e,null)},C:function(e,n){qA.C(e,n),$A("preconnect",e,n)},L:function(e,n,t){qA.L(e,n,t);var r=YA;if(r&&e&&n){var o='link[rel="preload"][as="'+bn(n)+'"]';"image"===n&&t&&t.imageSrcSet?(o+='[imagesrcset="'+bn(t.imageSrcSet)+'"]',"string"==typeof t.imageSizes&&(o+='[imagesizes="'+bn(t.imageSizes)+'"]')):o+='[href="'+bn(e)+'"]';var a=o;switch(n){case"style":a=WA(e);break;case"script":a=JA(e)}FA.has(a)||(e=f({rel:"preload",href:"image"===n&&t&&t.imageSrcSet?void 0:e,as:n},t),FA.set(a,e),null!==r.querySelector(o)||"style"===n&&r.querySelector(QA(a))||"script"===n&&r.querySelector(ZA(a))||(uA(n=r.createElement("link"),"link",e),en(n),r.head.appendChild(n)))}},m:function(e,n){qA.m(e,n);var t=YA;if(t&&e){var r=n&&"string"==typeof n.as?n.as:"script",o='link[rel="modulepreload"][as="'+bn(r)+'"][href="'+bn(e)+'"]',a=o;switch(r){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":a=JA(e)}if(!FA.has(a)&&(e=f({rel:"modulepreload",href:e},n),FA.set(a,e),null===t.querySelector(o))){switch(r){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(t.querySelector(ZA(a)))return}uA(r=t.createElement("link"),"link",e),en(r),t.head.appendChild(r)}}},X:function(e,n){qA.X(e,n);var t=YA;if(t&&e){var r=Ge(t).hoistableScripts,o=JA(e),a=r.get(o);a||((a=t.querySelector(ZA(o)))||(e=f({src:e,async:!0},n),(n=FA.get(o))&&eu(e,n),en(a=t.createElement("script")),uA(a,"link",e),t.head.appendChild(a)),a={type:"script",instance:a,count:1,state:null},r.set(o,a))}},S:function(e,n,t){qA.S(e,n,t);var r=YA;if(r&&e){var o=Ge(r).hoistableStyles,a=WA(e);n=n||"default";var i=o.get(a);if(!i){var s={loading:0,preload:null};if(i=r.querySelector(QA(a)))s.loading=5;else{e=f({rel:"stylesheet",href:e,"data-precedence":n},t),(t=FA.get(a))&&GA(e,t);var l=i=r.createElement("link");en(l),uA(l,"link",e),l._p=new Promise(function(e,n){l.onload=e,l.onerror=n}),l.addEventListener("load",function(){s.loading|=1}),l.addEventListener("error",function(){s.loading|=2}),s.loading|=4,XA(i,n,r)}i={type:"stylesheet",instance:i,count:1,state:s},o.set(a,i)}}},M:function(e,n){qA.M(e,n);var t=YA;if(t&&e){var r=Ge(t).hoistableScripts,o=JA(e),a=r.get(o);a||((a=t.querySelector(ZA(o)))||(e=f({src:e,async:!0,type:"module"},n),(n=FA.get(o))&&eu(e,n),en(a=t.createElement("script")),uA(a,"link",e),t.head.appendChild(a)),a={type:"script",instance:a,count:1,state:null},r.set(o,a))}}};var YA="undefined"==typeof document?null:document;function $A(e,n,t){var r=YA;if(r&&"string"==typeof n&&n){var o=bn(n);o='link[rel="'+e+'"][href="'+o+'"]',"string"==typeof t&&(o+='[crossorigin="'+t+'"]'),IA.has(o)||(IA.add(o),e={rel:e,crossOrigin:t,href:n},null===r.querySelector(o)&&(uA(n=r.createElement("link"),"link",e),en(n),r.head.appendChild(n)))}}function VA(e,n,t,r){var o,a,s,l,c=(c=W.current)?UA(c):null;if(!c)throw Error(i(446));switch(e){case"meta":case"title":return null;case"style":return"string"==typeof t.precedence&&"string"==typeof t.href?(n=WA(t.href),(r=(t=Ge(c).hoistableStyles).get(n))||(r={type:"style",instance:null,count:0,state:null},t.set(n,r)),r):{type:"void",instance:null,count:0,state:null};case"link":if("stylesheet"===t.rel&&"string"==typeof t.href&&"string"==typeof t.precedence){e=WA(t.href);var d=Ge(c).hoistableStyles,A=d.get(e);if(A||(c=c.ownerDocument||c,A={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},d.set(e,A),(d=c.querySelector(QA(e)))&&!d._p&&(A.instance=d,A.state.loading=5),FA.has(e)||(t={rel:"preload",as:"style",href:t.href,crossOrigin:t.crossOrigin,integrity:t.integrity,media:t.media,hrefLang:t.hrefLang,referrerPolicy:t.referrerPolicy},FA.set(e,t),d||(o=c,a=e,s=t,l=A.state,o.querySelector('link[rel="preload"][as="style"]['+a+"]")?l.loading=1:(a=o.createElement("link"),l.preload=a,a.addEventListener("load",function(){return l.loading|=1}),a.addEventListener("error",function(){return l.loading|=2}),uA(a,"link",s),en(a),o.head.appendChild(a))))),n&&null===r)throw Error(i(528,""));return A}if(n&&null!==r)throw Error(i(529,""));return null;case"script":return n=t.async,"string"==typeof(t=t.src)&&n&&"function"!=typeof n&&"symbol"!=typeof n?(n=JA(t),(r=(t=Ge(c).hoistableScripts).get(n))||(r={type:"script",instance:null,count:0,state:null},t.set(n,r)),r):{type:"void",instance:null,count:0,state:null};default:throw Error(i(444,e))}}function WA(e){return'href="'+bn(e)+'"'}function QA(e){return'link[rel="stylesheet"]['+e+"]"}function HA(e){return f({},e,{"data-precedence":e.precedence,precedence:null})}function JA(e){return'[src="'+bn(e)+'"]'}function ZA(e){return"script[async]"+e}function KA(e,n,t){if(n.count++,null===n.instance)switch(n.type){case"style":var r=e.querySelector('style[data-href~="'+bn(t.href)+'"]');if(r)return n.instance=r,en(r),r;var o=f({},t,{"data-href":t.href,"data-precedence":t.precedence,href:null,precedence:null});return en(r=(e.ownerDocument||e).createElement("style")),uA(r,"style",o),XA(r,t.precedence,e),n.instance=r;case"stylesheet":o=WA(t.href);var a=e.querySelector(QA(o));if(a)return n.state.loading|=4,n.instance=a,en(a),a;r=HA(t),(o=FA.get(o))&&GA(r,o),en(a=(e.ownerDocument||e).createElement("link"));var s=a;return s._p=new Promise(function(e,n){s.onload=e,s.onerror=n}),uA(a,"link",r),n.state.loading|=4,XA(a,t.precedence,e),n.instance=a;case"script":return a=JA(t.src),(o=e.querySelector(ZA(a)))?(n.instance=o,en(o),o):(r=t,(o=FA.get(a))&&eu(r=f({},t),o),en(o=(e=e.ownerDocument||e).createElement("script")),uA(o,"link",r),e.head.appendChild(o),n.instance=o);case"void":return null;default:throw Error(i(443,n.type))}else"stylesheet"===n.type&&!(4&n.state.loading)&&(r=n.instance,n.state.loading|=4,XA(r,t.precedence,e));return n.instance}function XA(e,n,t){for(var r=t.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),o=r.length?r[r.length-1]:null,a=o,i=0;i<r.length;i++){var s=r[i];if(s.dataset.precedence===n)a=s;else if(a!==o)break}a?a.parentNode.insertBefore(e,a.nextSibling):(n=9===t.nodeType?t.head:t).insertBefore(e,n.firstChild)}function GA(e,n){null==e.crossOrigin&&(e.crossOrigin=n.crossOrigin),null==e.referrerPolicy&&(e.referrerPolicy=n.referrerPolicy),null==e.title&&(e.title=n.title)}function eu(e,n){null==e.crossOrigin&&(e.crossOrigin=n.crossOrigin),null==e.referrerPolicy&&(e.referrerPolicy=n.referrerPolicy),null==e.integrity&&(e.integrity=n.integrity)}var nu=null;function tu(e,n,t){if(null===nu){var r=new Map,o=nu=new Map;o.set(t,r)}else(r=(o=nu).get(t))||(r=new Map,o.set(t,r));if(r.has(e))return r;for(r.set(e,null),t=t.getElementsByTagName(e),o=0;o<t.length;o++){var a=t[o];if(!(a[He]||a[Ue]||"link"===e&&"stylesheet"===a.getAttribute("rel"))&&"http://www.w3.org/2000/svg"!==a.namespaceURI){var i=a.getAttribute(n)||"";i=e+i;var s=r.get(i);s?s.push(a):r.set(i,[a])}}return r}function ru(e,n,t){(e=e.ownerDocument||e).head.insertBefore(t,"title"===n?e.querySelector("head > title"):null)}function ou(e){return!!("stylesheet"!==e.type||3&e.state.loading)}var au=0;function iu(){if(this.count--,0===this.count&&(0===this.imgCount||!this.waitingForImages))if(this.stylesheets)lu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}var su=null;function lu(e,n){e.stylesheets=null,null!==e.unsuspend&&(e.count++,su=new Map,n.forEach(cu,e),su=null,iu.call(e))}function cu(e,n){if(!(4&n.state.loading)){var t=su.get(e);if(t)var r=t.get(null);else{t=new Map,su.set(e,t);for(var o=e.querySelectorAll("link[data-precedence],style[data-precedence]"),a=0;a<o.length;a++){var i=o[a];"LINK"!==i.nodeName&&"not all"===i.getAttribute("media")||(t.set(i.dataset.precedence,i),r=i)}r&&t.set(null,r)}i=(o=n.instance).getAttribute("data-precedence"),(a=t.get(i)||r)===r&&t.set(null,o),t.set(i,o),this.count++,r=iu.bind(this),o.addEventListener("load",r),o.addEventListener("error",r),a?a.parentNode.insertBefore(o,a.nextSibling):(e=9===e.nodeType?e.head:e).insertBefore(o,e.firstChild),n.state.loading|=4}}var du={$$typeof:C,Provider:null,Consumer:null,_currentValue:R,_currentValue2:R,_threadCount:0};function Au(e,n,t,r,o,a,i,s,l){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Pe(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Pe(0),this.hiddenUpdates=Pe(null),this.identifierPrefix=r,this.onUncaughtError=o,this.onCaughtError=a,this.onRecoverableError=i,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=l,this.incompleteTransitions=new Map}function uu(e,n,t,r,o,a,i,s,l,c,d,A){return e=new Au(e,n,t,i,l,c,d,A,s),n=1,!0===a&&(n|=24),a=Lr(3,null,null,n),e.current=a,a.stateNode=e,(n=Io()).refCount++,e.pooledCache=n,n.refCount++,a.memoizedState={element:r,isDehydrated:t,cache:n},ga(a),e}function fu(e){return e?e=Rr:Rr}function pu(e,n,t,r,o,a){o=fu(o),null===r.context?r.context=o:r.pendingContext=o,(r=Ea(n)).payload={element:t},null!==(a=void 0===a?null:a)&&(r.callback=a),null!==(t=xa(e,r,n))&&(Hc(t,0,n),Ca(t,e,n))}function hu(e,n){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var t=e.retryLane;e.retryLane=0!==t&&t<n?t:n}}function mu(e,n){hu(e,n),(e=e.alternate)&&hu(e,n)}function gu(e){if(13===e.tag||31===e.tag){var n=Or(e,67108864);null!==n&&Hc(n,0,67108864),mu(e,67108864)}}function bu(e){if(13===e.tag||31===e.tag){var n=Wc(),t=Or(e,n=Re(n));null!==t&&Hc(t,0,n),mu(e,n)}}var Eu=!0;function xu(e,n,t,r){var o=T.T;T.T=null;var a=M.p;try{M.p=2,Bu(e,n,t,r)}finally{M.p=a,T.T=o}}function Cu(e,n,t,r){var o=T.T;T.T=null;var a=M.p;try{M.p=8,Bu(e,n,t,r)}finally{M.p=a,T.T=o}}function Bu(e,n,t,r){if(Eu){var o=yu(r);if(null===o)nA(e,n,r,vu,t),Mu(e,r);else if(function(e,n,t,r,o){switch(n){case"focusin":return ju=Ru(ju,e,n,t,r,o),!0;case"dragenter":return Nu=Ru(Nu,e,n,t,r,o),!0;case"mouseover":return zu=Ru(zu,e,n,t,r,o),!0;case"pointerover":var a=o.pointerId;return Pu.set(a,Ru(Pu.get(a)||null,e,n,t,r,o)),!0;case"gotpointercapture":return a=o.pointerId,_u.set(a,Ru(_u.get(a)||null,e,n,t,r,o)),!0}return!1}(o,e,n,t,r))r.stopPropagation();else if(Mu(e,r),4&n&&-1<Tu.indexOf(e)){for(;null!==o;){var a=Ke(o);if(null!==a)switch(a.tag){case 3:if((a=a.stateNode).current.memoizedState.isDehydrated){var i=we(a.pendingLanes);if(0!==i){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;i;){var l=1<<31-xe(i);s.entanglements[1]|=l,i&=~l}Md(a),!(6&fc)&&(Tc=le()+500,Rd(0,!1))}}break;case 31:case 13:null!==(s=Or(a,2))&&Hc(s,0,2),Gc(),mu(a,2)}if(null===(a=yu(r))&&nA(e,n,r,vu,t),a===o)break;o=a}null!==o&&r.stopPropagation()}else nA(e,n,r,null,t)}}function yu(e){return ku(e=Mn(e))}var vu=null;function ku(e){if(vu=null,null!==(e=Ze(e))){var n=l(e);if(null===n)e=null;else{var t=n.tag;if(13===t){if(null!==(e=c(n)))return e;e=null}else if(31===t){if(null!==(e=d(n)))return e;e=null}else if(3===t){if(n.stateNode.current.memoizedState.isDehydrated)return 3===n.tag?n.stateNode.containerInfo:null;e=null}else n!==e&&(e=null)}}return vu=e,null}function wu(e){switch(e){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(ce()){case de:return 2;case Ae:return 8;case ue:case fe:return 32;case pe:return 268435456;default:return 32}default:return 32}}var Su=!1,ju=null,Nu=null,zu=null,Pu=new Map,_u=new Map,Ou=[],Tu="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function Mu(e,n){switch(e){case"focusin":case"focusout":ju=null;break;case"dragenter":case"dragleave":Nu=null;break;case"mouseover":case"mouseout":zu=null;break;case"pointerover":case"pointerout":Pu.delete(n.pointerId);break;case"gotpointercapture":case"lostpointercapture":_u.delete(n.pointerId)}}function Ru(e,n,t,r,o,a){return null===e||e.nativeEvent!==a?(e={blockedOn:n,domEventName:t,eventSystemFlags:r,nativeEvent:a,targetContainers:[o]},null!==n&&null!==(n=Ke(n))&&gu(n),e):(e.eventSystemFlags|=r,n=e.targetContainers,null!==o&&-1===n.indexOf(o)&&n.push(o),e)}function Du(e){var n=Ze(e.target);if(null!==n){var t=l(n);if(null!==t)if(13===(n=t.tag)){if(null!==(n=c(t)))return e.blockedOn=n,void Fe(e.priority,function(){bu(t)})}else if(31===n){if(null!==(n=d(t)))return e.blockedOn=n,void Fe(e.priority,function(){bu(t)})}else if(3===n&&t.stateNode.current.memoizedState.isDehydrated)return void(e.blockedOn=3===t.tag?t.stateNode.containerInfo:null)}e.blockedOn=null}function Lu(e){if(null!==e.blockedOn)return!1;for(var n=e.targetContainers;0<n.length;){var t=yu(e.nativeEvent);if(null!==t)return null!==(n=Ke(t))&&gu(n),e.blockedOn=t,!1;var r=new(t=e.nativeEvent).constructor(t.type,t);Tn=r,t.target.dispatchEvent(r),Tn=null,n.shift()}return!0}function Fu(e,n,t){Lu(e)&&t.delete(n)}function Iu(){Su=!1,null!==ju&&Lu(ju)&&(ju=null),null!==Nu&&Lu(Nu)&&(Nu=null),null!==zu&&Lu(zu)&&(zu=null),Pu.forEach(Fu),_u.forEach(Fu)}function Uu(e,n){e.blockedOn===n&&(e.blockedOn=null,Su||(Su=!0,r.unstable_scheduleCallback(r.unstable_NormalPriority,Iu)))}var qu=null;function Yu(e){qu!==e&&(qu=e,r.unstable_scheduleCallback(r.unstable_NormalPriority,function(){qu===e&&(qu=null);for(var n=0;n<e.length;n+=3){var t=e[n],r=e[n+1],o=e[n+2];if("function"!=typeof r){if(null===ku(r||t))continue;break}var a=Ke(t);null!==a&&(e.splice(n,3),n-=3,ns(a,{pending:!0,data:o,method:t.method,action:r},r,o))}}))}function $u(e){function n(n){return Uu(n,e)}null!==ju&&Uu(ju,e),null!==Nu&&Uu(Nu,e),null!==zu&&Uu(zu,e),Pu.forEach(n),_u.forEach(n);for(var t=0;t<Ou.length;t++){var r=Ou[t];r.blockedOn===e&&(r.blockedOn=null)}for(;0<Ou.length&&null===(t=Ou[0]).blockedOn;)Du(t),null===t.blockedOn&&Ou.shift();if(null!=(t=(e.ownerDocument||e).$$reactFormReplay))for(r=0;r<t.length;r+=3){var o=t[r],a=t[r+1],i=o[qe]||null;if("function"==typeof a)i||Yu(t);else if(i){var s=null;if(a&&a.hasAttribute("formAction")){if(o=a,i=a[qe]||null)s=i.formAction;else if(null!==ku(o))continue}else s=i.action;"function"==typeof s?t[r+1]=s:(t.splice(r,3),r-=3),Yu(t)}}}function Vu(){function e(e){e.canIntercept&&"react-transition"===e.info&&e.intercept({handler:function(){return new Promise(function(e){return o=e})},focusReset:"manual",scroll:"manual"})}function n(){null!==o&&(o(),o=null),r||setTimeout(t,20)}function t(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&null!=e.url&&navigation.navigate(e.url,{state:e.getState(),info:"react-transition",history:"replace"})}}if("object"==typeof navigation){var r=!1,o=null;return navigation.addEventListener("navigate",e),navigation.addEventListener("navigatesuccess",n),navigation.addEventListener("navigateerror",n),setTimeout(t,100),function(){r=!0,navigation.removeEventListener("navigate",e),navigation.removeEventListener("navigatesuccess",n),navigation.removeEventListener("navigateerror",n),null!==o&&(o(),o=null)}}}function Wu(e){this._internalRoot=e}function Qu(e){this._internalRoot=e}Qu.prototype.render=Wu.prototype.render=function(e){var n=this._internalRoot;if(null===n)throw Error(i(409));pu(n.current,Wc(),e,n,null,null)},Qu.prototype.unmount=Wu.prototype.unmount=function(){var e=this._internalRoot;if(null!==e){this._internalRoot=null;var n=e.containerInfo;pu(e.current,2,null,e,null,null),Gc(),n[Ye]=null}},Qu.prototype.unstable_scheduleHydration=function(e){if(e){var n=Le();e={blockedOn:null,target:e,priority:n};for(var t=0;t<Ou.length&&0!==n&&n<Ou[t].priority;t++);Ou.splice(t,0,e),0===t&&Du(e)}};var Hu=o.version;if("19.2.0"!==Hu)throw Error(i(527,Hu,"19.2.0"));M.findDOMNode=function(e){var n=e._reactInternals;if(void 0===n){if("function"==typeof e.render)throw Error(i(188));throw e=Object.keys(e).join(","),Error(i(268,e))}return e=function(e){var n=e.alternate;if(!n){if(null===(n=l(e)))throw Error(i(188));return n!==e?null:e}for(var t=e,r=n;;){var o=t.return;if(null===o)break;var a=o.alternate;if(null===a){if(null!==(r=o.return)){t=r;continue}break}if(o.child===a.child){for(a=o.child;a;){if(a===t)return A(o),e;if(a===r)return A(o),n;a=a.sibling}throw Error(i(188))}if(t.return!==r.return)t=o,r=a;else{for(var s=!1,c=o.child;c;){if(c===t){s=!0,t=o,r=a;break}if(c===r){s=!0,r=o,t=a;break}c=c.sibling}if(!s){for(c=a.child;c;){if(c===t){s=!0,t=a,r=o;break}if(c===r){s=!0,r=a,t=o;break}c=c.sibling}if(!s)throw Error(i(189))}}if(t.alternate!==r)throw Error(i(190))}if(3!==t.tag)throw Error(i(188));return t.stateNode.current===t?e:n}(n),null===(e=null!==e?u(e):null)?null:e.stateNode};var Ju={bundleType:0,version:"19.2.0",rendererPackageName:"react-dom",currentDispatcherRef:T,reconcilerVersion:"19.2.0"};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var Zu=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Zu.isDisabled&&Zu.supportsFiber)try{ge=Zu.inject(Ju),be=Zu}catch(e){}}n.createRoot=function(e,n){if(!s(e))throw Error(i(299));var t=!1,r="",o=vs,a=ks,l=ws;return null!=n&&(!0===n.unstable_strictMode&&(t=!0),void 0!==n.identifierPrefix&&(r=n.identifierPrefix),void 0!==n.onUncaughtError&&(o=n.onUncaughtError),void 0!==n.onCaughtError&&(a=n.onCaughtError),void 0!==n.onRecoverableError&&(l=n.onRecoverableError)),n=uu(e,1,!1,null,0,t,r,null,o,a,l,Vu),e[Ye]=n.current,Gd(e),new Wu(n)},n.hydrateRoot=function(e,n,t){if(!s(e))throw Error(i(299));var r=!1,o="",a=vs,l=ks,c=ws,d=null;return null!=t&&(!0===t.unstable_strictMode&&(r=!0),void 0!==t.identifierPrefix&&(o=t.identifierPrefix),void 0!==t.onUncaughtError&&(a=t.onUncaughtError),void 0!==t.onCaughtError&&(l=t.onCaughtError),void 0!==t.onRecoverableError&&(c=t.onRecoverableError),void 0!==t.formState&&(d=t.formState)),(n=uu(e,1,!0,n,0,r,o,d,a,l,c,Vu)).context=fu(null),t=n.current,(o=Ea(r=Re(r=Wc()))).callback=null,xa(t,o,r),t=r,n.current.lanes=t,_e(n,t),Md(n),e[Ye]=n.current,Gd(e),new Qu(n)},n.version="19.2.0"},1354:e=>{e.exports=function(e){var n=e[1],t=e[3];if(!t)return n;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(t)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),a="/*# ".concat(o," */");return[n].concat([a]).join("\n")}return[n].join("\n")}},1856:function(e,n,t){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(n,"__esModule",{value:!0});const o=t(4848),a=t(6540),i=r(t(7580));n.default=({settings:e,onUpdate:n})=>{const[t,r]=(0,a.useState)(new Set),[s,l]=(0,a.useState)(new Set),[c,d]=(0,a.useState)(null),[A,u]=(0,a.useState)(""),f=()=>{d(null),u("")},p=(t,r)=>{const a=t.isSecret&&!s.has(r);return c===r?(0,o.jsxs)("div",{className:"field-edit-mode",children:[(0,o.jsx)("textarea",{className:"field-edit-input",value:A,onChange:e=>u(e.target.value),rows:2}),(0,o.jsxs)("div",{className:"field-edit-controls",children:[(0,o.jsx)("button",{className:"save-btn",onClick:()=>{const[t,o]=r.split(".");(async(t,r)=>{try{let o;try{o=JSON.parse(A)}catch{o=A}const a=await fetch(`/devserver/api/stores/settings/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({[r]:o})});if(!a.ok)throw new Error(`Failed to update setting: ${a.statusText}`);const i=await a.json(),s={...e};s[t]||(s[t]={}),s[t]=i.fields,n(s),d(null),u("")}catch(e){console.error("Error updating setting:",e),alert(`Failed to update setting: ${e instanceof Error?e.message:String(e)}`)}})(t,o)},children:"Save"}),(0,o.jsx)("button",{className:"cancel-btn",onClick:f,children:"Cancel"})]})]}):a?(0,o.jsx)("span",{className:"hidden-field-value",children:"•".repeat(8)}):null===t.value||void 0===t.value?(0,o.jsx)("span",{className:"empty-field-value",children:"(empty)"}):"string"==typeof t.value?(0,o.jsxs)("span",{className:"string-field-value",children:['"',t.value,'"']}):(0,o.jsx)("span",{className:"complex-field-value",children:JSON.stringify(t.value)})},h=Object.keys(e).sort();return 0===h.length?(0,o.jsx)("div",{className:"settings-store-viewer empty",children:(0,o.jsxs)("div",{className:"empty-message",children:[(0,o.jsx)("span",{className:"empty-icon",children:"⚙️"}),(0,o.jsx)("p",{children:"No settings configured"})]})}):(0,o.jsx)("div",{className:"settings-store-viewer compact-store",children:(0,o.jsx)("div",{className:"store-sections",children:h.map(n=>{const a=e[n],c=Object.keys(a).sort(),A=t.has(n);return(0,o.jsxs)("div",{className:"store-section",children:[(0,o.jsxs)("div",{className:"section-header",onClick:()=>(e=>{const n=new Set(t);n.has(e)?n.delete(e):n.add(e),r(n)})(n),children:[(0,o.jsx)("span",{className:"expand-icon",children:A?"▼":"▶"}),(0,o.jsx)("span",{className:"section-name",children:n}),(0,o.jsxs)("span",{className:"field-count",children:["(",c.length,")"]})]}),A&&(0,o.jsx)("div",{className:"section-fields",children:c.map(e=>{const t=a[e],r=`${n}.${e}`;return(0,o.jsxs)("div",{className:"field-row",children:[(0,o.jsx)("div",{className:"field-key",children:e}),(0,o.jsx)("div",{className:"field-value",children:p(t,r)}),(0,o.jsxs)("div",{className:"field-metadata",children:[t.isSecret&&(0,o.jsx)(i.default,{isVisible:s.has(r),onClick:()=>(e=>{const n=new Set(s);n.has(e)?n.delete(e):n.add(e),l(n)})(r),className:"metadata-icon"}),(0,o.jsx)("button",{className:"edit-icon",onClick:()=>((e,n,t)=>{d(`${e}.${n}`),u("string"==typeof t?t:JSON.stringify(t))})(n,e,t.value),title:"Edit",children:"✏️"}),t.hasLocalValue&&(0,o.jsx)("span",{className:"metadata-badge local",title:"Has local value",children:"local"}),!t.isFromYml&&(0,o.jsx)("span",{className:"metadata-badge local-only",title:"Local only",children:"local only"})]})]},e)})})]},n)})})})}},2225:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0});const r=t(4848),o=t(6540);n.default=({notifications:e,onRefresh:n})=>{const[t,a]=(0,o.useState)(new Set),i=e=>{switch(e){case"info":default:return"ℹ️";case"success":return"✅";case"warn":return"⚠️";case"error":return"❌"}},s=[...e].sort((e,n)=>new Date(n.timestamp).getTime()-new Date(e.timestamp).getTime());return(0,r.jsxs)("div",{className:"notification-viewer",children:[(0,r.jsxs)("div",{className:"notification-controls",children:[(0,r.jsx)("button",{className:"clear-notifications-btn",onClick:async()=>{if(confirm("Are you sure you want to clear all notifications?"))try{(await fetch("/devserver/api/stores/notifications",{method:"DELETE"})).ok&&n&&n()}catch(e){console.error("Error clearing notifications:",e)}},children:"Clear All"}),n&&(0,r.jsx)("button",{className:"refresh-notifications-btn",onClick:n,children:"Refresh"})]}),(0,r.jsx)("div",{className:"notification-list",children:s.length>0?s.map(e=>{const o=t.has(e.id);return(0,r.jsxs)("div",{className:`notification-item notification-${e.status}`,children:[(0,r.jsxs)("div",{className:"notification-header",onClick:()=>(e=>{const n=new Set(t);n.has(e)?n.delete(e):n.add(e),a(n)})(e.id),children:[(0,r.jsx)("div",{className:"notification-main",children:(0,r.jsxs)("div",{className:"notification-single-line",children:[(0,r.jsx)("span",{className:"notification-icon",children:i(e.status)}),(0,r.jsx)("span",{className:"notification-activity",children:e.activity}),(0,r.jsx)("span",{className:"notification-separator",children:"•"}),(0,r.jsx)("span",{className:"notification-title",children:e.title}),(0,r.jsx)("span",{className:"notification-separator",children:"•"}),(0,r.jsx)("span",{className:"notification-summary",children:e.summary}),(0,r.jsx)("span",{className:"notification-timestamp",children:(s=e.timestamp,new Date(s).toLocaleString())})]})}),(0,r.jsxs)("div",{className:"notification-actions",children:[(0,r.jsx)("button",{className:"delete-notification-btn",onClick:t=>{t.stopPropagation(),(async e=>{try{(await fetch(`/devserver/api/stores/notifications/${e}`,{method:"DELETE"})).ok&&n&&n()}catch(e){console.error("Error deleting notification:",e)}})(e.id)},title:"Delete notification",children:"🗑️"}),(0,r.jsx)("span",{className:"expand-icon",children:o?"▼":"▶"})]})]}),o&&e.details&&(0,r.jsx)("div",{className:"notification-details",children:(0,r.jsx)("pre",{children:e.details})})]},e.id);var s}):(0,r.jsx)("div",{className:"no-notifications",children:"No notifications yet"})})]})}},2497:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0});const r=t(4848),o=t(6540),a=t(2648),i=t(3717),s=t(278),l=t(9573),c=t(7370);n.default=({appInstalled:e,buildStatus:n})=>{const t=(0,a.useLocation)(),{getParam:d,setParam:A}=(0,i.useQueryParams)(),[u,f]=(0,o.useState)([]),[p,h]=(0,o.useState)([]),[m,g]=(0,o.useState)([]),b=t.pathname.split("/").filter(Boolean),E=b.length>1?b[1]:null,x=d("execution"),[C,B]=(0,o.useState)(new Set),[y,v]=(0,o.useState)(!1),[k,w]=(0,o.useState)(!1),[S,j]=(0,o.useState)(null),[N,z]=(0,o.useState)(null),P=(0,l.useAppDispatch)(),_=(0,l.useAppSelector)(e=>e.formState.jobs.global||(0,c.getDefaultJobFormState)()),O=(()=>{try{return JSON.parse(_.params)}catch{return{}}})(),T=e=>{const n="function"==typeof e?e(O):e;P((0,c.updateJobState)({id:"global",data:{params:JSON.stringify(n)}}))},{navigateToEntity:M}=(0,s.useEntityNavigation)({basePath:"/jobs",entityName:"job",entities:u,selectedEntityId:E}),R=(0,o.useCallback)((e,n=!1)=>{A("execution",e,n)},[A]);(0,o.useEffect)(()=>{e&&D()},[e]),(0,o.useEffect)(()=>{N&&(clearInterval(N),z(null)),E&&L(E)},[E]),(0,o.useEffect)(()=>{x&&F(x)},[x]),(0,o.useEffect)(()=>{const e=p.some(e=>"running"===e.status);if(e&&E&&!N){const e=setInterval(async()=>{await L(E),x&&await F(x)},2e3);z(e)}else!e&&N&&(clearInterval(N),z(null));return()=>{N&&clearInterval(N)}},[p,E,x,N]),(0,o.useEffect)(()=>{x&&p.length>0&&(p.some(e=>e.id===x)||(console.warn(`Execution '${x}' not found, redirecting to first execution`),R(p[0].id,!0)))},[x,p]),(0,o.useEffect)(()=>{p.length>0&&!x&&R(p[0].id,!0)},[p,x]);const D=async()=>{try{const e=await fetch("/devserver/api/jobs");if(e.ok){const n=await e.json();f(n.jobs||[])}}catch(e){console.error("Error fetching jobs:",e)}},L=async e=>{try{const n=await fetch(`/devserver/api/jobs/executions?jobId=${e}&limit=50`);if(n.ok){const e=await n.json();h(e.executions||[]),e.executions&&0!==e.executions.length||(R(null,!0),g([]))}}catch(e){console.error("Error fetching executions:",e)}},F=async e=>{try{const n=await fetch(`/devserver/api/jobs/executions/${e}/states`);if(n.ok){const e=await n.json();g(e.states||[])}}catch(e){console.error("Error fetching execution states:",e)}},I=e=>new Date(e).toLocaleString(),U=e=>{switch(e){case"completed":return"#28a745";case"running":return"#007bff";case"failed":return"#dc3545";case"interrupted":return"#ffc107";default:return"#6c757d"}},q=(e,n)=>{T(t=>({...t,[e]:n}))};if(n?.buildInProgress||null===n?.lastBuildSuccess&&null===n?.lastBuildTimestamp)return(0,r.jsx)("div",{className:"jobs-not-installed",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Building App..."}),(0,r.jsx)("p",{children:"Please wait while the app is being built."}),(0,r.jsx)("div",{className:"spinner"})]})});if(!1===n?.lastBuildSuccess)return(0,r.jsx)("div",{className:"jobs-not-installed",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Build Failed"}),(0,r.jsx)("p",{children:"The app failed to build. Please check the console for errors."}),n.lastBuildError&&(0,r.jsx)("pre",{className:"error-details",children:n.lastBuildError})]})});if(!e)return(0,r.jsx)("div",{className:"jobs-not-installed",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Jobs Not Available"}),(0,r.jsx)("p",{children:"Install your app first to manage jobs. Jobs will appear here after installation."})]})});const Y=u.find(e=>e.id===E);return(0,r.jsxs)("div",{className:"jobs-view",children:[(0,r.jsxs)("div",{className:"jobs-controls",children:[(0,r.jsxs)("div",{className:"job-selector-group",children:[(0,r.jsx)("label",{htmlFor:"job-select",children:"Job:"}),(0,r.jsx)("select",{id:"job-select",value:E||"",onChange:e=>M(e.target.value),disabled:0===u.length,children:0===u.length?(0,r.jsx)("option",{value:"",children:"No jobs defined"}):u.map(e=>(0,r.jsxs)("option",{value:e.id,children:[e.id,e.isSourceJob&&" (Source)",e.cron&&" (Scheduled)",!e.validation.valid&&" (Invalid)",e.description&&` - ${e.description}`]},e.id))})]}),E&&Y?.validation.valid&&(0,r.jsx)("button",{className:"start-job-btn",onClick:()=>{w(!0),j(null)},disabled:y||n?.buildInProgress,title:n?.buildInProgress?"Build in progress...":"Start job execution",children:"Start Job"})]}),(0,r.jsxs)("div",{className:"jobs-layout",children:[(0,r.jsxs)("div",{className:"executions-panel",children:[(0,r.jsxs)("div",{className:"executions-header",children:[(0,r.jsx)("h4",{children:"Execution History"}),E&&(0,r.jsxs)("span",{className:"selected-job",children:["Job: ",E]})]}),(0,r.jsx)("div",{className:"executions-list",children:0===p.length?(0,r.jsx)("div",{className:"no-executions",children:(0,r.jsx)("p",{children:E?"No executions yet":"Select a job to see executions"})}):p.map(e=>{return(0,r.jsxs)("div",{className:"execution-item "+(x===e.id?"active":""),onClick:()=>R(e.id),children:[(0,r.jsxs)("div",{className:"execution-status",children:["running"===e.status?(0,r.jsx)("span",{className:"status-spinner"}):(0,r.jsx)("span",{className:"status-dot",style:{backgroundColor:U(e.status)}}),(0,r.jsx)("span",{className:"status-text",children:e.status})]}),(0,r.jsxs)("div",{className:"execution-time",children:[(0,r.jsx)("div",{className:"started-at",children:I(e.startedAt)}),e.completedAt&&(0,r.jsxs)("div",{className:"execution-duration",children:["Duration: ",(n=e.executionTime,n?`${n}ms`:"N/A")]})]}),(0,r.jsx)("div",{className:"execution-stats",children:(0,r.jsxs)("span",{className:"state-count",children:[e.stateCount," states"]})}),e.error&&(0,r.jsxs)("div",{className:"execution-error",children:["Error: ",e.error.message]})]},e.id);var n})})]}),(0,r.jsxs)("div",{className:"states-panel",children:[(0,r.jsxs)("div",{className:"states-header",children:[(0,r.jsx)("h4",{children:"Job States"}),x&&(0,r.jsxs)("span",{className:"selected-execution",children:["Execution: ",x.slice(0,8),"..."]})]}),(0,r.jsx)("div",{className:"states-list",children:0===m.length?(0,r.jsx)("div",{className:"no-states",children:(0,r.jsx)("p",{children:x?"No states recorded":"Select an execution to see states"})}):m.map(e=>(0,r.jsxs)("div",{className:"state-item",children:[(0,r.jsxs)("div",{className:"state-header",onClick:()=>(e=>{const n=new Set(C);n.has(e)?n.delete(e):n.add(e),B(n)})(e.id),children:[(0,r.jsxs)("div",{className:"state-meta",children:[(0,r.jsxs)("div",{className:"state-primary-info",children:[(0,r.jsx)("span",{className:"state-timestamp",children:I(e.timestamp)}),(0,r.jsx)("span",{className:`state-phase ${e.phase}`,children:e.phase})]}),e.complete&&(0,r.jsx)("div",{className:"state-secondary-info",children:(()=>{const n=p.find(n=>n.id===e.executionId),t="failed"===n?.status&&n?.error;return(0,r.jsx)("span",{className:"state-status "+(t?"error":"complete"),children:t?"Error":"Completed"})})()})]}),(0,r.jsx)("div",{className:"state-expand",children:(0,r.jsx)("span",{className:"expand-icon "+(C.has(e.id)?"expanded":""),children:"▼"})})]}),C.has(e.id)&&(0,r.jsx)("div",{className:"state-content",children:(0,r.jsx)("pre",{children:JSON.stringify(e.state,null,2)})})]},e.id))})]})]}),k&&(0,r.jsx)("div",{className:"modal-overlay",children:(0,r.jsxs)("div",{className:"modal",children:[(0,r.jsxs)("div",{className:"modal-header",children:[(0,r.jsxs)("h3",{children:["Start Job: ",E]}),(0,r.jsx)("button",{className:"modal-close",onClick:()=>{w(!1),j(null),T({})},children:"×"})]}),(0,r.jsxs)("div",{className:"modal-body",children:[S&&(0,r.jsxs)("div",{className:"start-job-error",children:[(0,r.jsx)("h4",{children:"Error"}),(0,r.jsx)("p",{children:S})]}),(0,r.jsxs)("div",{className:"job-parameters",children:[(0,r.jsx)("h4",{children:"Parameters"}),(0,r.jsxs)("div",{className:"parameter-list",children:[Object.entries(O).map(([e,n])=>(0,r.jsxs)("div",{className:"parameter-row",children:[(0,r.jsx)("input",{type:"text",value:e,onChange:t=>{const r=t.target.value,o={...O};delete o[e],o[r]=n,T(o)},placeholder:"Parameter name",className:"parameter-key"}),(0,r.jsx)("input",{type:"text",value:"string"==typeof n?n:JSON.stringify(n),onChange:n=>{try{q(e,JSON.parse(n.target.value))}catch{q(e,n.target.value)}},placeholder:"Parameter value (JSON or string)",className:"parameter-value"}),(0,r.jsx)("button",{className:"remove-parameter",onClick:()=>(e=>{const n={...O};delete n[e],T(n)})(e),children:"×"})]},e)),(0,r.jsx)("button",{className:"add-parameter",onClick:()=>{const e=`param_${Object.keys(O).length+1}`;q(e,"")},children:"Add Parameter"})]})]})]}),(0,r.jsxs)("div",{className:"modal-footer",children:[(0,r.jsx)("button",{className:"cancel-btn",onClick:()=>{w(!1),j(null),T({})},children:"Cancel"}),S?(0,r.jsx)("button",{className:"start-btn",onClick:()=>{w(!1),j(null),T({})},children:"Close"}):(0,r.jsx)("button",{className:"start-btn",onClick:async()=>{if(E){v(!0),j(null);try{const e=await fetch(`/devserver/api/jobs/${E}/start`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({parameters:O})}),n=await e.json();if(e.ok)w(!1),T({}),j(null),v(!1),n.execution,setTimeout(async()=>{await L(E);const e=setInterval(async()=>{await L(E);const e=await fetch(`/devserver/api/jobs/executions?jobId=${E}&limit=1`);if(e.ok){const n=await e.json();n.executions&&n.executions.length>0&&await F(n.executions[0].id)}},1e3);setTimeout(()=>{clearInterval(e)},15e3)},100),n.success||console.error("Job execution failed to start:",n.error);else{const e=n.error?.message||n.error||"Failed to start job";j(e),console.error("Failed to start job:",n.error)}}catch(e){const n=e instanceof Error?e.message:"Network error occurred";j(n),console.error("Error starting job:",e)}finally{v(!1)}}},disabled:y,children:y?"Starting...":"Start Job"})]})]})})]})}},2648:(e,n,t)=>{t.r(n),t.d(n,{AbortedDeferredError:()=>K,Await:()=>it,BrowserRouter:()=>Ut,Form:()=>Ht,HashRouter:()=>qt,Link:()=>Wt,MemoryRouter:()=>et,NavLink:()=>Qt,Navigate:()=>nt,NavigationType:()=>r,Outlet:()=>tt,Route:()=>rt,Router:()=>ot,RouterProvider:()=>Lt,Routes:()=>at,ScrollRestoration:()=>Jt,UNSAFE_DataRouterContext:()=>sn,UNSAFE_DataRouterStateContext:()=>ln,UNSAFE_ErrorResponseImpl:()=>oe,UNSAFE_FetchersContext:()=>_t,UNSAFE_LocationContext:()=>An,UNSAFE_NavigationContext:()=>dn,UNSAFE_RouteContext:()=>un,UNSAFE_ViewTransitionContext:()=>Pt,UNSAFE_useRouteId:()=>Ln,UNSAFE_useScrollRestoration:()=>dr,createBrowserRouter:()=>St,createHashRouter:()=>jt,createMemoryRouter:()=>pt,createPath:()=>g,createRoutesFromChildren:()=>At,createRoutesFromElements:()=>At,createSearchParams:()=>xt,defer:()=>ee,generatePath:()=>D,isRouteErrorResponse:()=>ae,json:()=>Z,matchPath:()=>L,matchRoutes:()=>y,parsePath:()=>b,redirect:()=>ne,redirectDocument:()=>te,renderMatches:()=>ut,replace:()=>re,resolvePath:()=>U,unstable_HistoryRouter:()=>Yt,unstable_usePrompt:()=>ur,useActionData:()=>$n,useAsyncError:()=>Qn,useAsyncValue:()=>Wn,useBeforeUnload:()=>Ar,useBlocker:()=>Jn,useFetcher:()=>ir,useFetchers:()=>sr,useFormAction:()=>ar,useHref:()=>pn,useInRouterContext:()=>hn,useLinkClickHandler:()=>er,useLoaderData:()=>qn,useLocation:()=>mn,useMatch:()=>bn,useMatches:()=>Un,useNavigate:()=>xn,useNavigation:()=>Fn,useNavigationType:()=>gn,useOutlet:()=>yn,useOutletContext:()=>Bn,useParams:()=>vn,useResolvedPath:()=>kn,useRevalidator:()=>In,useRouteError:()=>Vn,useRouteLoaderData:()=>Yn,useRoutes:()=>wn,useSearchParams:()=>nr,useSubmit:()=>or,useViewTransitionState:()=>fr});var r,o=t(6540),a=t.t(o,2),i=t(961),s=t.t(i,2);function l(){return l=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},l.apply(this,arguments)}!function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"}(r||(r={}));const c="popstate";function d(e){void 0===e&&(e={});let n,{initialEntries:t=["/"],initialIndex:o,v5Compat:a=!1}=e;n=t.map((e,n)=>A(e,"string"==typeof e?null:e.state,0===n?"default":void 0));let i=c(null==o?n.length-1:o),s=r.Pop,l=null;function c(e){return Math.min(Math.max(e,0),n.length-1)}function d(){return n[i]}function A(e,t,r){void 0===t&&(t=null);let o=m(n?d().pathname:"/",e,t,r);return p("/"===o.pathname.charAt(0),"relative pathnames are not supported in memory history: "+JSON.stringify(e)),o}function u(e){return"string"==typeof e?e:g(e)}return{get index(){return i},get action(){return s},get location(){return d()},createHref:u,createURL:e=>new URL(u(e),"http://localhost"),encodeLocation(e){let n="string"==typeof e?b(e):e;return{pathname:n.pathname||"",search:n.search||"",hash:n.hash||""}},push(e,t){s=r.Push;let o=A(e,t);i+=1,n.splice(i,n.length,o),a&&l&&l({action:s,location:o,delta:1})},replace(e,t){s=r.Replace;let o=A(e,t);n[i]=o,a&&l&&l({action:s,location:o,delta:0})},go(e){s=r.Pop;let t=c(i+e),o=n[t];i=t,l&&l({action:s,location:o,delta:e})},listen:e=>(l=e,()=>{l=null})}}function A(e){return void 0===e&&(e={}),E(function(e,n){let{pathname:t,search:r,hash:o}=e.location;return m("",{pathname:t,search:r,hash:o},n.state&&n.state.usr||null,n.state&&n.state.key||"default")},function(e,n){return"string"==typeof n?n:g(n)},null,e)}function u(e){return void 0===e&&(e={}),E(function(e,n){let{pathname:t="/",search:r="",hash:o=""}=b(e.location.hash.substr(1));return t.startsWith("/")||t.startsWith(".")||(t="/"+t),m("",{pathname:t,search:r,hash:o},n.state&&n.state.usr||null,n.state&&n.state.key||"default")},function(e,n){let t=e.document.querySelector("base"),r="";if(t&&t.getAttribute("href")){let n=e.location.href,t=n.indexOf("#");r=-1===t?n:n.slice(0,t)}return r+"#"+("string"==typeof n?n:g(n))},function(e,n){p("/"===e.pathname.charAt(0),"relative pathnames are not supported in hash history.push("+JSON.stringify(n)+")")},e)}function f(e,n){if(!1===e||null==e)throw new Error(n)}function p(e,n){if(!e){"undefined"!=typeof console&&console.warn(n);try{throw new Error(n)}catch(e){}}}function h(e,n){return{usr:e.state,key:e.key,idx:n}}function m(e,n,t,r){return void 0===t&&(t=null),l({pathname:"string"==typeof e?e:e.pathname,search:"",hash:""},"string"==typeof n?b(n):n,{state:t,key:n&&n.key||r||Math.random().toString(36).substr(2,8)})}function g(e){let{pathname:n="/",search:t="",hash:r=""}=e;return t&&"?"!==t&&(n+="?"===t.charAt(0)?t:"?"+t),r&&"#"!==r&&(n+="#"===r.charAt(0)?r:"#"+r),n}function b(e){let n={};if(e){let t=e.indexOf("#");t>=0&&(n.hash=e.substr(t),e=e.substr(0,t));let r=e.indexOf("?");r>=0&&(n.search=e.substr(r),e=e.substr(0,r)),e&&(n.pathname=e)}return n}function E(e,n,t,o){void 0===o&&(o={});let{window:a=document.defaultView,v5Compat:i=!1}=o,s=a.history,d=r.Pop,A=null,u=p();function p(){return(s.state||{idx:null}).idx}function b(){d=r.Pop;let e=p(),n=null==e?null:e-u;u=e,A&&A({action:d,location:x.location,delta:n})}function E(e){let n="null"!==a.location.origin?a.location.origin:a.location.href,t="string"==typeof e?e:g(e);return t=t.replace(/ $/,"%20"),f(n,"No window.location.(origin|href) available to create URL for href: "+t),new URL(t,n)}null==u&&(u=0,s.replaceState(l({},s.state,{idx:u}),""));let x={get action(){return d},get location(){return e(a,s)},listen(e){if(A)throw new Error("A history only accepts one active listener");return a.addEventListener(c,b),A=e,()=>{a.removeEventListener(c,b),A=null}},createHref:e=>n(a,e),createURL:E,encodeLocation(e){let n=E(e);return{pathname:n.pathname,search:n.search,hash:n.hash}},push:function(e,n){d=r.Push;let o=m(x.location,e,n);t&&t(o,e),u=p()+1;let l=h(o,u),c=x.createHref(o);try{s.pushState(l,"",c)}catch(e){if(e instanceof DOMException&&"DataCloneError"===e.name)throw e;a.location.assign(c)}i&&A&&A({action:d,location:x.location,delta:1})},replace:function(e,n){d=r.Replace;let o=m(x.location,e,n);t&&t(o,e),u=p();let a=h(o,u),l=x.createHref(o);s.replaceState(a,"",l),i&&A&&A({action:d,location:x.location,delta:0})},go:e=>s.go(e)};return x}var x;!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(x||(x={}));const C=new Set(["lazy","caseSensitive","path","id","index","children"]);function B(e,n,t,r){return void 0===t&&(t=[]),void 0===r&&(r={}),e.map((e,o)=>{let a=[...t,String(o)],i="string"==typeof e.id?e.id:a.join("-");if(f(!0!==e.index||!e.children,"Cannot specify children on an index route"),f(!r[i],'Found a route id collision on id "'+i+"\". Route id's must be globally unique within Data Router usages"),function(e){return!0===e.index}(e)){let t=l({},e,n(e),{id:i});return r[i]=t,t}{let t=l({},e,n(e),{id:i,children:void 0});return r[i]=t,e.children&&(t.children=B(e.children,n,a,r)),t}})}function y(e,n,t){return void 0===t&&(t="/"),v(e,n,t,!1)}function v(e,n,t,r){let o=I(("string"==typeof n?b(n):n).pathname||"/",t);if(null==o)return null;let a=w(e);!function(e){e.sort((e,n)=>e.score!==n.score?n.score-e.score:function(e,n){return e.length===n.length&&e.slice(0,-1).every((e,t)=>e===n[t])?e[e.length-1]-n[n.length-1]:0}(e.routesMeta.map(e=>e.childrenIndex),n.routesMeta.map(e=>e.childrenIndex)))}(a);let i=null;for(let e=0;null==i&&e<a.length;++e){let n=F(o);i=R(a[e],n,r)}return i}function k(e,n){let{route:t,pathname:r,params:o}=e;return{id:t.id,pathname:r,params:o,data:n[t.id],handle:t.handle}}function w(e,n,t,r){void 0===n&&(n=[]),void 0===t&&(t=[]),void 0===r&&(r="");let o=(e,o,a)=>{let i={relativePath:void 0===a?e.path||"":a,caseSensitive:!0===e.caseSensitive,childrenIndex:o,route:e};i.relativePath.startsWith("/")&&(f(i.relativePath.startsWith(r),'Absolute route path "'+i.relativePath+'" nested under path "'+r+'" is not valid. An absolute child route path must start with the combined path of all its parent routes.'),i.relativePath=i.relativePath.slice(r.length));let s=W([r,i.relativePath]),l=t.concat(i);e.children&&e.children.length>0&&(f(!0!==e.index,'Index routes must not have child routes. Please remove all child routes from route path "'+s+'".'),w(e.children,n,l,s)),(null!=e.path||e.index)&&n.push({path:s,score:M(s,e.index),routesMeta:l})};return e.forEach((e,n)=>{var t;if(""!==e.path&&null!=(t=e.path)&&t.includes("?"))for(let t of S(e.path))o(e,n,t);else o(e,n)}),n}function S(e){let n=e.split("/");if(0===n.length)return[];let[t,...r]=n,o=t.endsWith("?"),a=t.replace(/\?$/,"");if(0===r.length)return o?[a,""]:[a];let i=S(r.join("/")),s=[];return s.push(...i.map(e=>""===e?a:[a,e].join("/"))),o&&s.push(...i),s.map(n=>e.startsWith("/")&&""===n?"/":n)}const j=/^:[\w-]+$/,N=3,z=2,P=1,_=10,O=-2,T=e=>"*"===e;function M(e,n){let t=e.split("/"),r=t.length;return t.some(T)&&(r+=O),n&&(r+=z),t.filter(e=>!T(e)).reduce((e,n)=>e+(j.test(n)?N:""===n?P:_),r)}function R(e,n,t){void 0===t&&(t=!1);let{routesMeta:r}=e,o={},a="/",i=[];for(let e=0;e<r.length;++e){let s=r[e],l=e===r.length-1,c="/"===a?n:n.slice(a.length)||"/",d=L({path:s.relativePath,caseSensitive:s.caseSensitive,end:l},c),A=s.route;if(!d&&l&&t&&!r[r.length-1].route.index&&(d=L({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},c)),!d)return null;Object.assign(o,d.params),i.push({params:o,pathname:W([a,d.pathname]),pathnameBase:Q(W([a,d.pathnameBase])),route:A}),"/"!==d.pathnameBase&&(a=W([a,d.pathnameBase]))}return i}function D(e,n){void 0===n&&(n={});let t=e;t.endsWith("*")&&"*"!==t&&!t.endsWith("/*")&&(p(!1,'Route path "'+t+'" will be treated as if it were "'+t.replace(/\*$/,"/*")+'" because the `*` character must always follow a `/` in the pattern. To get rid of this warning, please change the route path to "'+t.replace(/\*$/,"/*")+'".'),t=t.replace(/\*$/,"/*"));const r=t.startsWith("/")?"/":"",o=e=>null==e?"":"string"==typeof e?e:String(e);return r+t.split(/\/+/).map((e,t,r)=>{if(t===r.length-1&&"*"===e)return o(n["*"]);const a=e.match(/^:([\w-]+)(\??)$/);if(a){const[,e,t]=a;let r=n[e];return f("?"===t||null!=r,'Missing ":'+e+'" param'),o(r)}return e.replace(/\?$/g,"")}).filter(e=>!!e).join("/")}function L(e,n){"string"==typeof e&&(e={path:e,caseSensitive:!1,end:!0});let[t,r]=function(e,n,t){void 0===n&&(n=!1),void 0===t&&(t=!0),p("*"===e||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were "'+e.replace(/\*$/,"/*")+'" because the `*` character must always follow a `/` in the pattern. To get rid of this warning, please change the route path to "'+e.replace(/\*$/,"/*")+'".');let r=[],o="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(e,n,t)=>(r.push({paramName:n,isOptional:null!=t}),t?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),o+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):t?o+="\\/*$":""!==e&&"/"!==e&&(o+="(?:(?=\\/|$))"),[new RegExp(o,n?void 0:"i"),r]}(e.path,e.caseSensitive,e.end),o=n.match(t);if(!o)return null;let a=o[0],i=a.replace(/(.)\/+$/,"$1"),s=o.slice(1);return{params:r.reduce((e,n,t)=>{let{paramName:r,isOptional:o}=n;if("*"===r){let e=s[t]||"";i=a.slice(0,a.length-e.length).replace(/(.)\/+$/,"$1")}const l=s[t];return e[r]=o&&!l?void 0:(l||"").replace(/%2F/g,"/"),e},{}),pathname:a,pathnameBase:i,pattern:e}}function F(e){try{return e.split("/").map(e=>decodeURIComponent(e).replace(/\//g,"%2F")).join("/")}catch(n){return p(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent encoding ('+n+")."),e}}function I(e,n){if("/"===n)return e;if(!e.toLowerCase().startsWith(n.toLowerCase()))return null;let t=n.endsWith("/")?n.length-1:n.length,r=e.charAt(t);return r&&"/"!==r?null:e.slice(t)||"/"}function U(e,n){void 0===n&&(n="/");let{pathname:t,search:r="",hash:o=""}="string"==typeof e?b(e):e,a=t?t.startsWith("/")?t:function(e,n){let t=n.replace(/\/+$/,"").split("/");return e.split("/").forEach(e=>{".."===e?t.length>1&&t.pop():"."!==e&&t.push(e)}),t.length>1?t.join("/"):"/"}(t,n):n;return{pathname:a,search:H(r),hash:J(o)}}function q(e,n,t,r){return"Cannot include a '"+e+"' character in a manually specified `to."+n+"` field ["+JSON.stringify(r)+"]. Please separate it out to the `to."+t+'` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.'}function Y(e){return e.filter((e,n)=>0===n||e.route.path&&e.route.path.length>0)}function $(e,n){let t=Y(e);return n?t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase):t.map(e=>e.pathnameBase)}function V(e,n,t,r){let o;void 0===r&&(r=!1),"string"==typeof e?o=b(e):(o=l({},e),f(!o.pathname||!o.pathname.includes("?"),q("?","pathname","search",o)),f(!o.pathname||!o.pathname.includes("#"),q("#","pathname","hash",o)),f(!o.search||!o.search.includes("#"),q("#","search","hash",o)));let a,i=""===e||""===o.pathname,s=i?"/":o.pathname;if(null==s)a=t;else{let e=n.length-1;if(!r&&s.startsWith("..")){let n=s.split("/");for(;".."===n[0];)n.shift(),e-=1;o.pathname=n.join("/")}a=e>=0?n[e]:"/"}let c=U(o,a),d=s&&"/"!==s&&s.endsWith("/"),A=(i||"."===s)&&t.endsWith("/");return c.pathname.endsWith("/")||!d&&!A||(c.pathname+="/"),c}const W=e=>e.join("/").replace(/\/\/+/g,"/"),Q=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),H=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",J=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"",Z=function(e,n){void 0===n&&(n={});let t="number"==typeof n?{status:n}:n,r=new Headers(t.headers);return r.has("Content-Type")||r.set("Content-Type","application/json; charset=utf-8"),new Response(JSON.stringify(e),l({},t,{headers:r}))};class K extends Error{}class X{constructor(e,n){let t;this.pendingKeysSet=new Set,this.subscribers=new Set,this.deferredKeys=[],f(e&&"object"==typeof e&&!Array.isArray(e),"defer() only accepts plain objects"),this.abortPromise=new Promise((e,n)=>t=n),this.controller=new AbortController;let r=()=>t(new K("Deferred data aborted"));this.unlistenAbortSignal=()=>this.controller.signal.removeEventListener("abort",r),this.controller.signal.addEventListener("abort",r),this.data=Object.entries(e).reduce((e,n)=>{let[t,r]=n;return Object.assign(e,{[t]:this.trackPromise(t,r)})},{}),this.done&&this.unlistenAbortSignal(),this.init=n}trackPromise(e,n){if(!(n instanceof Promise))return n;this.deferredKeys.push(e),this.pendingKeysSet.add(e);let t=Promise.race([n,this.abortPromise]).then(n=>this.onSettle(t,e,void 0,n),n=>this.onSettle(t,e,n));return t.catch(()=>{}),Object.defineProperty(t,"_tracked",{get:()=>!0}),t}onSettle(e,n,t,r){if(this.controller.signal.aborted&&t instanceof K)return this.unlistenAbortSignal(),Object.defineProperty(e,"_error",{get:()=>t}),Promise.reject(t);if(this.pendingKeysSet.delete(n),this.done&&this.unlistenAbortSignal(),void 0===t&&void 0===r){let t=new Error('Deferred data for key "'+n+'" resolved/rejected with `undefined`, you must resolve/reject with a value or `null`.');return Object.defineProperty(e,"_error",{get:()=>t}),this.emit(!1,n),Promise.reject(t)}return void 0===r?(Object.defineProperty(e,"_error",{get:()=>t}),this.emit(!1,n),Promise.reject(t)):(Object.defineProperty(e,"_data",{get:()=>r}),this.emit(!1,n),r)}emit(e,n){this.subscribers.forEach(t=>t(e,n))}subscribe(e){return this.subscribers.add(e),()=>this.subscribers.delete(e)}cancel(){this.controller.abort(),this.pendingKeysSet.forEach((e,n)=>this.pendingKeysSet.delete(n)),this.emit(!0)}async resolveData(e){let n=!1;if(!this.done){let t=()=>this.cancel();e.addEventListener("abort",t),n=await new Promise(n=>{this.subscribe(r=>{e.removeEventListener("abort",t),(r||this.done)&&n(r)})})}return n}get done(){return 0===this.pendingKeysSet.size}get unwrappedData(){return f(null!==this.data&&this.done,"Can only unwrap data on initialized and settled deferreds"),Object.entries(this.data).reduce((e,n)=>{let[t,r]=n;return Object.assign(e,{[t]:G(r)})},{})}get pendingKeys(){return Array.from(this.pendingKeysSet)}}function G(e){if(!function(e){return e instanceof Promise&&!0===e._tracked}(e))return e;if(e._error)throw e._error;return e._data}const ee=function(e,n){return void 0===n&&(n={}),new X(e,"number"==typeof n?{status:n}:n)},ne=function(e,n){void 0===n&&(n=302);let t=n;"number"==typeof t?t={status:t}:void 0===t.status&&(t.status=302);let r=new Headers(t.headers);return r.set("Location",e),new Response(null,l({},t,{headers:r}))},te=(e,n)=>{let t=ne(e,n);return t.headers.set("X-Remix-Reload-Document","true"),t},re=(e,n)=>{let t=ne(e,n);return t.headers.set("X-Remix-Replace","true"),t};class oe{constructor(e,n,t,r){void 0===r&&(r=!1),this.status=e,this.statusText=n||"",this.internal=r,t instanceof Error?(this.data=t.toString(),this.error=t):this.data=t}}function ae(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"boolean"==typeof e.internal&&"data"in e}const ie=["post","put","patch","delete"],se=new Set(ie),le=["get",...ie],ce=new Set(le),de=new Set([301,302,303,307,308]),Ae=new Set([307,308]),ue={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},fe={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},pe={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},he=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,me=e=>({hasErrorBoundary:Boolean(e.hasErrorBoundary)}),ge="remix-router-transitions";function be(e){const n=e.window?e.window:"undefined"!=typeof window?window:void 0,t=void 0!==n&&void 0!==n.document&&void 0!==n.document.createElement,o=!t;let a;if(f(e.routes.length>0,"You must provide a non-empty routes array to createRouter"),e.mapRouteProperties)a=e.mapRouteProperties;else if(e.detectErrorBoundary){let n=e.detectErrorBoundary;a=e=>({hasErrorBoundary:n(e)})}else a=me;let i,s,c,d={},A=B(e.routes,a,void 0,d),u=e.basename||"/",h=e.dataStrategy||je,g=e.patchRoutesOnNavigation,b=l({v7_fetcherPersist:!1,v7_normalizeFormMethod:!1,v7_partialHydration:!1,v7_prependBasename:!1,v7_relativeSplatPath:!1,v7_skipActionErrorRevalidation:!1},e.future),E=null,w=new Set,S=null,j=null,N=null,z=null!=e.hydrationData,P=y(A,e.history.location,u),_=!1,O=null;if(null==P&&!g){let n=Ie(404,{pathname:e.history.location.pathname}),{matches:t,route:r}=Fe(A);P=t,O={[r.id]:n}}if(P&&!e.hydrationData&&An(P,A,e.history.location.pathname).active&&(P=null),P)if(P.some(e=>e.route.lazy))s=!1;else if(P.some(e=>e.route.loader))if(b.v7_partialHydration){let n=e.hydrationData?e.hydrationData.loaderData:null,t=e.hydrationData?e.hydrationData.errors:null;if(t){let e=P.findIndex(e=>void 0!==t[e.route.id]);s=P.slice(0,e+1).every(e=>!ye(e.route,n,t))}else s=P.every(e=>!ye(e.route,n,t))}else s=null!=e.hydrationData;else s=!0;else if(s=!1,P=[],b.v7_partialHydration){let n=An(null,A,e.history.location.pathname);n.active&&n.matches&&(_=!0,P=n.matches)}let T,M,R={historyAction:e.history.action,location:e.history.location,matches:P,initialized:s,navigation:ue,restoreScrollPosition:null==e.hydrationData&&null,preventScrollReset:!1,revalidation:"idle",loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||O,fetchers:new Map,blockers:new Map},D=r.Pop,L=!1,F=!1,U=new Map,q=null,Y=!1,$=!1,V=[],W=new Set,Q=new Map,H=0,J=-1,Z=new Map,K=new Set,X=new Map,G=new Map,ee=new Set,ne=new Map,te=new Map;function re(e,n){void 0===n&&(n={}),R=l({},R,e);let t=[],r=[];b.v7_fetcherPersist&&R.fetchers.forEach((e,n)=>{"idle"===e.state&&(ee.has(n)?r.push(n):t.push(n))}),ee.forEach(e=>{R.fetchers.has(e)||Q.has(e)||r.push(e)}),[...w].forEach(e=>e(R,{deletedFetchers:r,viewTransitionOpts:n.viewTransitionOpts,flushSync:!0===n.flushSync})),b.v7_fetcherPersist?(t.forEach(e=>R.fetchers.delete(e)),r.forEach(e=>Se(e))):r.forEach(e=>ee.delete(e))}function oe(n,t,o){var a,s;let c,{flushSync:d}=void 0===o?{}:o,u=null!=R.actionData&&null!=R.navigation.formMethod&&Je(R.navigation.formMethod)&&"loading"===R.navigation.state&&!0!==(null==(a=n.state)?void 0:a._isRedirect);c=t.actionData?Object.keys(t.actionData).length>0?t.actionData:null:u?R.actionData:null;let f=t.loaderData?Re(R.loaderData,t.loaderData,t.matches||[],t.errors):R.loaderData,p=R.blockers;p.size>0&&(p=new Map(p),p.forEach((e,n)=>p.set(n,pe)));let h,m=!0===L||null!=R.navigation.formMethod&&Je(R.navigation.formMethod)&&!0!==(null==(s=n.state)?void 0:s._isRedirect);if(i&&(A=i,i=void 0),Y||D===r.Pop||(D===r.Push?e.history.push(n,n.state):D===r.Replace&&e.history.replace(n,n.state)),D===r.Pop){let e=U.get(R.location.pathname);e&&e.has(n.pathname)?h={currentLocation:R.location,nextLocation:n}:U.has(n.pathname)&&(h={currentLocation:n,nextLocation:R.location})}else if(F){let e=U.get(R.location.pathname);e?e.add(n.pathname):(e=new Set([n.pathname]),U.set(R.location.pathname,e)),h={currentLocation:R.location,nextLocation:n}}re(l({},t,{actionData:c,loaderData:f,historyAction:D,location:n,initialized:!0,navigation:ue,revalidation:"idle",restoreScrollPosition:dn(n,t.matches||R.matches),preventScrollReset:m,blockers:p}),{viewTransitionOpts:h,flushSync:!0===d}),D=r.Pop,L=!1,F=!1,Y=!1,$=!1,V=[]}async function ie(n,t,o){T&&T.abort(),T=null,D=n,Y=!0===(o&&o.startUninterruptedRevalidation),function(e,n){if(S&&N){let t=cn(e,n);S[t]=N()}}(R.location,R.matches),L=!0===(o&&o.preventScrollReset),F=!0===(o&&o.enableViewTransition);let a=i||A,s=o&&o.overrideNavigation,c=null!=o&&o.initialHydration&&R.matches&&R.matches.length>0&&!_?R.matches:y(a,t,u),d=!0===(o&&o.flushSync);if(c&&R.initialized&&!$&&(f=R.location,p=t,f.pathname===p.pathname&&f.search===p.search&&(""===f.hash?""!==p.hash:f.hash===p.hash||""!==p.hash))&&!(o&&o.submission&&Je(o.submission.formMethod)))return void oe(t,{matches:c},{flushSync:d});var f,p;let h=An(c,a,t.pathname);if(h.active&&h.matches&&(c=h.matches),!c){let{error:e,notFoundMatches:n,route:r}=sn(t.pathname);return void oe(t,{matches:n,loaderData:{},errors:{[r.id]:e}},{flushSync:d})}T=new AbortController;let m,g=_e(e.history,t,T.signal,o&&o.submission);if(o&&o.pendingError)m=[Le(c).route.id,{type:x.error,error:o.pendingError}];else if(o&&o.submission&&Je(o.submission.formMethod)){let n=await async function(e,n,t,o,a,i){void 0===i&&(i={}),be();let s,l=function(e,n){return{state:"submitting",location:e,formMethod:n.formMethod,formAction:n.formAction,formEncType:n.formEncType,formData:n.formData,json:n.json,text:n.text}}(n,t);if(re({navigation:l},{flushSync:!0===i.flushSync}),a){let t=await un(o,n.pathname,e.signal);if("aborted"===t.type)return{shortCircuited:!0};if("error"===t.type){let e=Le(t.partialMatches).route.id;return{matches:t.partialMatches,pendingActionResult:[e,{type:x.error,error:t.error}]}}if(!t.matches){let{notFoundMatches:e,error:t,route:r}=sn(n.pathname);return{matches:e,pendingActionResult:[r.id,{type:x.error,error:t}]}}o=t.matches}let c=en(o,n);if(c.route.action||c.route.lazy){if(s=(await ce("action",R,e,[c],o,null))[c.route.id],e.signal.aborted)return{shortCircuited:!0}}else s={type:x.error,error:Ie(405,{method:e.method,pathname:n.pathname,routeId:c.route.id})};if(We(s)){let n;return n=i&&null!=i.replace?i.replace:Pe(s.response.headers.get("Location"),new URL(e.url),u)===R.location.pathname+R.location.search,await le(e,s,!0,{submission:t,replace:n}),{shortCircuited:!0}}if($e(s))throw Ie(400,{type:"defer-action"});if(Ve(s)){let e=Le(o,c.route.id);return!0!==(i&&i.replace)&&(D=r.Push),{matches:o,pendingActionResult:[e.route.id,s]}}return{matches:o,pendingActionResult:[c.route.id,s]}}(g,t,o.submission,c,h.active,{replace:o.replace,flushSync:d});if(n.shortCircuited)return;if(n.pendingActionResult){let[e,r]=n.pendingActionResult;if(Ve(r)&&ae(r.error)&&404===r.error.status)return T=null,void oe(t,{matches:n.matches,loaderData:{},errors:{[e]:r.error}})}c=n.matches||c,m=n.pendingActionResult,s=tn(t,o.submission),d=!1,h.active=!1,g=_e(e.history,g.url,g.signal)}let{shortCircuited:E,matches:C,loaderData:B,errors:v}=await async function(n,t,r,o,a,s,c,d,f,p,h){let m=a||tn(t,s),g=s||c||nn(m),E=!(Y||b.v7_partialHydration&&f);if(o){if(E){let e=se(h);re(l({navigation:m},void 0!==e?{actionData:e}:{}),{flushSync:p})}let e=await un(r,t.pathname,n.signal);if("aborted"===e.type)return{shortCircuited:!0};if("error"===e.type){let n=Le(e.partialMatches).route.id;return{matches:e.partialMatches,loaderData:{},errors:{[n]:e.error}}}if(!e.matches){let{error:e,notFoundMatches:n,route:r}=sn(t.pathname);return{matches:n,loaderData:{},errors:{[r.id]:e}}}r=e.matches}let x=i||A,[C,B]=Be(e.history,R,r,g,t,b.v7_partialHydration&&!0===f,b.v7_skipActionErrorRevalidation,$,V,W,ee,X,K,x,u,h);if(ln(e=>!(r&&r.some(n=>n.route.id===e))||C&&C.some(n=>n.route.id===e)),J=++H,0===C.length&&0===B.length){let e=qe();return oe(t,l({matches:r,loaderData:{},errors:h&&Ve(h[1])?{[h[0]]:h[1].error}:null},De(h),e?{fetchers:new Map(R.fetchers)}:{}),{flushSync:p}),{shortCircuited:!0}}if(E){let e={};if(!o){e.navigation=m;let n=se(h);void 0!==n&&(e.actionData=n)}B.length>0&&(e.fetchers=function(e){return e.forEach(e=>{let n=R.fetchers.get(e.key),t=rn(void 0,n?n.data:void 0);R.fetchers.set(e.key,t)}),new Map(R.fetchers)}(B)),re(e,{flushSync:p})}B.forEach(e=>{Oe(e.key),e.controller&&Q.set(e.key,e.controller)});let y=()=>B.forEach(e=>Oe(e.key));T&&T.signal.addEventListener("abort",y);let{loaderResults:v,fetcherResults:k}=await de(R,r,C,B,n);if(n.signal.aborted)return{shortCircuited:!0};T&&T.signal.removeEventListener("abort",y),B.forEach(e=>Q.delete(e.key));let w=Ue(v);if(w)return await le(n,w.result,!0,{replace:d}),{shortCircuited:!0};if(w=Ue(k),w)return K.add(w.key),await le(n,w.result,!0,{replace:d}),{shortCircuited:!0};let{loaderData:S,errors:j}=Me(R,r,v,h,B,k,ne);ne.forEach((e,n)=>{e.subscribe(t=>{(t||e.done)&&ne.delete(n)})}),b.v7_partialHydration&&f&&R.errors&&(j=l({},R.errors,j));let N=qe(),z=Qe(J),P=N||z||B.length>0;return l({matches:r,loaderData:S,errors:j},P?{fetchers:new Map(R.fetchers)}:{})}(g,t,c,h.active,s,o&&o.submission,o&&o.fetcherSubmission,o&&o.replace,o&&!0===o.initialHydration,d,m);E||(T=null,oe(t,l({matches:C||c},De(m),{loaderData:B,errors:v})))}function se(e){return e&&!Ve(e[1])?{[e[0]]:e[1].data}:R.actionData?0===Object.keys(R.actionData).length?null:R.actionData:void 0}async function le(o,a,i,s){let{submission:c,fetcherSubmission:d,preventScrollReset:A,replace:p}=void 0===s?{}:s;a.response.headers.has("X-Remix-Revalidate")&&($=!0);let h=a.response.headers.get("Location");f(h,"Expected a Location header on the redirect Response"),h=Pe(h,new URL(o.url),u);let g=m(R.location,h,{_isRedirect:!0});if(t){let t=!1;if(a.response.headers.has("X-Remix-Reload-Document"))t=!0;else if(he.test(h)){const r=e.history.createURL(h);t=r.origin!==n.location.origin||null==I(r.pathname,u)}if(t)return void(p?n.location.replace(h):n.location.assign(h))}T=null;let b=!0===p||a.response.headers.has("X-Remix-Replace")?r.Replace:r.Push,{formMethod:E,formAction:x,formEncType:C}=R.navigation;!c&&!d&&E&&x&&C&&(c=nn(R.navigation));let B=c||d;if(Ae.has(a.response.status)&&B&&Je(B.formMethod))await ie(b,g,{submission:l({},B,{formAction:h}),preventScrollReset:A||L,enableViewTransition:i?F:void 0});else{let e=tn(g,c);await ie(b,g,{overrideNavigation:e,fetcherSubmission:d,preventScrollReset:A||L,enableViewTransition:i?F:void 0})}}async function ce(e,n,t,r,o,i){let s,c={};try{s=await async function(e,n,t,r,o,a,i,s,c,d){let A=a.map(e=>e.route.lazy?async function(e,n,t){if(!e.lazy)return;let r=await e.lazy();if(!e.lazy)return;let o=t[e.id];f(o,"No route found in manifest");let a={};for(let e in r){let n=void 0!==o[e]&&"hasErrorBoundary"!==e;p(!n,'Route "'+o.id+'" has a static property "'+e+'" defined but its lazy function is also returning a value for this property. The lazy route property "'+e+'" will be ignored.'),n||C.has(e)||(a[e]=r[e])}Object.assign(o,a),Object.assign(o,l({},n(o),{lazy:void 0}))}(e.route,c,s):void 0),u=a.map((e,t)=>{let a=A[t],i=o.some(n=>n.route.id===e.route.id);return l({},e,{shouldLoad:i,resolve:async t=>(t&&"GET"===r.method&&(e.route.lazy||e.route.loader)&&(i=!0),i?async function(e,n,t,r,o,a){let i,s,l=r=>{let i,l=new Promise((e,n)=>i=n);s=()=>i(),n.signal.addEventListener("abort",s);let c=o=>"function"!=typeof r?Promise.reject(new Error('You cannot call the handler for a route which defines a boolean "'+e+'" [routeId: '+t.route.id+"]")):r({request:n,params:t.params,context:a},...void 0!==o?[o]:[]),d=(async()=>{try{return{type:"data",result:await(o?o(e=>c(e)):c())}}catch(e){return{type:"error",result:e}}})();return Promise.race([d,l])};try{let o=t.route[e];if(r)if(o){let e,[n]=await Promise.all([l(o).catch(n=>{e=n}),r]);if(void 0!==e)throw e;i=n}else{if(await r,o=t.route[e],!o){if("action"===e){let e=new URL(n.url),r=e.pathname+e.search;throw Ie(405,{method:n.method,pathname:r,routeId:t.route.id})}return{type:x.data,result:void 0}}i=await l(o)}else{if(!o){let e=new URL(n.url);throw Ie(404,{pathname:e.pathname+e.search})}i=await l(o)}f(void 0!==i.result,"You defined "+("action"===e?"an action":"a loader")+' for route "'+t.route.id+"\" but didn't return anything from your `"+e+"` function. Please return a value or `null`.")}catch(e){return{type:x.error,result:e}}finally{s&&n.signal.removeEventListener("abort",s)}return i}(n,r,e,a,t,d):Promise.resolve({type:x.data,result:void 0}))})}),h=await e({matches:u,request:r,params:a[0].params,fetcherKey:i,context:d});try{await Promise.all(A)}catch(e){}return h}(h,e,0,t,r,o,i,d,a)}catch(e){return r.forEach(n=>{c[n.route.id]={type:x.error,error:e}}),c}for(let[e,n]of Object.entries(s))if(Ye(n)){let r=n.result;c[e]={type:x.redirect,response:ze(r,t,e,o,u,b.v7_relativeSplatPath)}}else c[e]=await Ne(n);return c}async function de(n,t,r,o,a){let i=n.matches,s=ce("loader",0,a,r,t,null),l=Promise.all(o.map(async n=>{if(n.matches&&n.match&&n.controller){let t=(await ce("loader",0,_e(e.history,n.path,n.controller.signal),[n.match],n.matches,n.key))[n.match.route.id];return{[n.key]:t}}return Promise.resolve({[n.key]:{type:x.error,error:Ie(404,{pathname:n.path})}})})),c=await s,d=(await l).reduce((e,n)=>Object.assign(e,n),{});return await Promise.all([Ze(t,c,a.signal,i,n.loaderData),Ke(t,d,o)]),{loaderResults:c,fetcherResults:d}}function be(){$=!0,V.push(...ln()),X.forEach((e,n)=>{Q.has(n)&&W.add(n),Oe(n)})}function Ce(e,n,t){void 0===t&&(t={}),R.fetchers.set(e,n),re({fetchers:new Map(R.fetchers)},{flushSync:!0===(t&&t.flushSync)})}function ve(e,n,t,r){void 0===r&&(r={});let o=Le(R.matches,n);Se(e),re({errors:{[o.route.id]:t},fetchers:new Map(R.fetchers)},{flushSync:!0===(r&&r.flushSync)})}function ke(e){return G.set(e,(G.get(e)||0)+1),ee.has(e)&&ee.delete(e),R.fetchers.get(e)||fe}function Se(e){let n=R.fetchers.get(e);!Q.has(e)||n&&"loading"===n.state&&Z.has(e)||Oe(e),X.delete(e),Z.delete(e),K.delete(e),b.v7_fetcherPersist&&ee.delete(e),W.delete(e),R.fetchers.delete(e)}function Oe(e){let n=Q.get(e);n&&(n.abort(),Q.delete(e))}function Te(e){for(let n of e){let e=on(ke(n).data);R.fetchers.set(n,e)}}function qe(){let e=[],n=!1;for(let t of K){let r=R.fetchers.get(t);f(r,"Expected fetcher: "+t),"loading"===r.state&&(K.delete(t),e.push(t),n=!0)}return Te(e),n}function Qe(e){let n=[];for(let[t,r]of Z)if(r<e){let e=R.fetchers.get(t);f(e,"Expected fetcher: "+t),"loading"===e.state&&(Oe(t),Z.delete(t),n.push(t))}return Te(n),n.length>0}function He(e){R.blockers.delete(e),te.delete(e)}function Ge(e,n){let t=R.blockers.get(e)||pe;f("unblocked"===t.state&&"blocked"===n.state||"blocked"===t.state&&"blocked"===n.state||"blocked"===t.state&&"proceeding"===n.state||"blocked"===t.state&&"unblocked"===n.state||"proceeding"===t.state&&"unblocked"===n.state,"Invalid blocker state transition: "+t.state+" -> "+n.state);let r=new Map(R.blockers);r.set(e,n),re({blockers:r})}function an(e){let{currentLocation:n,nextLocation:t,historyAction:r}=e;if(0===te.size)return;te.size>1&&p(!1,"A router only supports one blocker at a time");let o=Array.from(te.entries()),[a,i]=o[o.length-1],s=R.blockers.get(a);return s&&"proceeding"===s.state?void 0:i({currentLocation:n,nextLocation:t,historyAction:r})?a:void 0}function sn(e){let n=Ie(404,{pathname:e}),t=i||A,{matches:r,route:o}=Fe(t);return ln(),{notFoundMatches:r,route:o,error:n}}function ln(e){let n=[];return ne.forEach((t,r)=>{e&&!e(r)||(t.cancel(),n.push(r),ne.delete(r))}),n}function cn(e,n){return j&&j(e,n.map(e=>k(e,R.loaderData)))||e.key}function dn(e,n){if(S){let t=cn(e,n),r=S[t];if("number"==typeof r)return r}return null}function An(e,n,t){if(g){if(!e)return{active:!0,matches:v(n,t,u,!0)||[]};if(Object.keys(e[0].params).length>0)return{active:!0,matches:v(n,t,u,!0)}}return{active:!1,matches:null}}async function un(e,n,t,r){if(!g)return{type:"success",matches:e};let o=e;for(;;){let e=null==i,s=i||A,l=d;try{await g({signal:t,path:n,matches:o,fetcherKey:r,patch:(e,n)=>{t.aborted||we(e,n,s,l,a)}})}catch(e){return{type:"error",error:e,partialMatches:o}}finally{e&&!t.aborted&&(A=[...A])}if(t.aborted)return{type:"aborted"};let c=y(s,n,u);if(c)return{type:"success",matches:c};let f=v(s,n,u,!0);if(!f||o.length===f.length&&o.every((e,n)=>e.route.id===f[n].route.id))return{type:"success",matches:null};o=f}}return c={get basename(){return u},get future(){return b},get state(){return R},get routes(){return A},get window(){return n},initialize:function(){if(E=e.history.listen(n=>{let{action:t,location:r,delta:o}=n;if(M)return M(),void(M=void 0);p(0===te.size||null!=o,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let a=an({currentLocation:R.location,nextLocation:r,historyAction:t});if(a&&null!=o){let n=new Promise(e=>{M=e});return e.history.go(-1*o),void Ge(a,{state:"blocked",location:r,proceed(){Ge(a,{state:"proceeding",proceed:void 0,reset:void 0,location:r}),n.then(()=>e.history.go(o))},reset(){let e=new Map(R.blockers);e.set(a,pe),re({blockers:e})}})}return ie(t,r)}),t){!function(e,n){try{let t=e.sessionStorage.getItem(ge);if(t){let e=JSON.parse(t);for(let[t,r]of Object.entries(e||{}))r&&Array.isArray(r)&&n.set(t,new Set(r||[]))}}catch(e){}}(n,U);let e=()=>function(e,n){if(n.size>0){let t={};for(let[e,r]of n)t[e]=[...r];try{e.sessionStorage.setItem(ge,JSON.stringify(t))}catch(e){p(!1,"Failed to save applied view transitions in sessionStorage ("+e+").")}}}(n,U);n.addEventListener("pagehide",e),q=()=>n.removeEventListener("pagehide",e)}return R.initialized||ie(r.Pop,R.location,{initialHydration:!0}),c},subscribe:function(e){return w.add(e),()=>w.delete(e)},enableScrollRestoration:function(e,n,t){if(S=e,N=n,j=t||null,!z&&R.navigation===ue){z=!0;let e=dn(R.location,R.matches);null!=e&&re({restoreScrollPosition:e})}return()=>{S=null,N=null,j=null}},navigate:async function n(t,o){if("number"==typeof t)return void e.history.go(t);let a=Ee(R.location,R.matches,u,b.v7_prependBasename,t,b.v7_relativeSplatPath,null==o?void 0:o.fromRouteId,null==o?void 0:o.relative),{path:i,submission:s,error:c}=xe(b.v7_normalizeFormMethod,!1,a,o),d=R.location,A=m(R.location,i,o&&o.state);A=l({},A,e.history.encodeLocation(A));let f=o&&null!=o.replace?o.replace:void 0,p=r.Push;!0===f?p=r.Replace:!1===f||null!=s&&Je(s.formMethod)&&s.formAction===R.location.pathname+R.location.search&&(p=r.Replace);let h=o&&"preventScrollReset"in o?!0===o.preventScrollReset:void 0,g=!0===(o&&o.flushSync),E=an({currentLocation:d,nextLocation:A,historyAction:p});if(!E)return await ie(p,A,{submission:s,pendingError:c,preventScrollReset:h,replace:o&&o.replace,enableViewTransition:o&&o.viewTransition,flushSync:g});Ge(E,{state:"blocked",location:A,proceed(){Ge(E,{state:"proceeding",proceed:void 0,reset:void 0,location:A}),n(t,o)},reset(){let e=new Map(R.blockers);e.set(E,pe),re({blockers:e})}})},fetch:function(n,t,r,a){if(o)throw new Error("router.fetch() was called during the server render, but it shouldn't be. You are likely calling a useFetcher() method in the body of your component. Try moving it to a useEffect or a callback.");Oe(n);let s=!0===(a&&a.flushSync),l=i||A,c=Ee(R.location,R.matches,u,b.v7_prependBasename,r,b.v7_relativeSplatPath,t,null==a?void 0:a.relative),d=y(l,c,u),p=An(d,l,c);if(p.active&&p.matches&&(d=p.matches),!d)return void ve(n,t,Ie(404,{pathname:c}),{flushSync:s});let{path:h,submission:m,error:g}=xe(b.v7_normalizeFormMethod,!0,c,a);if(g)return void ve(n,t,g,{flushSync:s});let E=en(d,h),x=!0===(a&&a.preventScrollReset);m&&Je(m.formMethod)?async function(n,t,r,o,a,s,l,c,d){function p(e){if(!e.route.action&&!e.route.lazy){let e=Ie(405,{method:d.formMethod,pathname:r,routeId:t});return ve(n,t,e,{flushSync:l}),!0}return!1}if(be(),X.delete(n),!s&&p(o))return;let h=R.fetchers.get(n);Ce(n,function(e,n){return{state:"submitting",formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:n?n.data:void 0}}(d,h),{flushSync:l});let m=new AbortController,g=_e(e.history,r,m.signal,d);if(s){let e=await un(a,new URL(g.url).pathname,g.signal,n);if("aborted"===e.type)return;if("error"===e.type)return void ve(n,t,e.error,{flushSync:l});if(!e.matches)return void ve(n,t,Ie(404,{pathname:r}),{flushSync:l});if(p(o=en(a=e.matches,r)))return}Q.set(n,m);let E=H,x=(await ce("action",0,g,[o],a,n))[o.route.id];if(g.signal.aborted)return void(Q.get(n)===m&&Q.delete(n));if(b.v7_fetcherPersist&&ee.has(n)){if(We(x)||Ve(x))return void Ce(n,on(void 0))}else{if(We(x))return Q.delete(n),J>E?void Ce(n,on(void 0)):(K.add(n),Ce(n,rn(d)),le(g,x,!1,{fetcherSubmission:d,preventScrollReset:c}));if(Ve(x))return void ve(n,t,x.error)}if($e(x))throw Ie(400,{type:"defer-action"});let C=R.navigation.location||R.location,B=_e(e.history,C,m.signal),v=i||A,k="idle"!==R.navigation.state?y(v,R.navigation.location,u):R.matches;f(k,"Didn't find any matches after fetcher action");let w=++H;Z.set(n,w);let S=rn(d,x.data);R.fetchers.set(n,S);let[j,N]=Be(e.history,R,k,d,C,!1,b.v7_skipActionErrorRevalidation,$,V,W,ee,X,K,v,u,[o.route.id,x]);N.filter(e=>e.key!==n).forEach(e=>{let n=e.key,t=R.fetchers.get(n),r=rn(void 0,t?t.data:void 0);R.fetchers.set(n,r),Oe(n),e.controller&&Q.set(n,e.controller)}),re({fetchers:new Map(R.fetchers)});let z=()=>N.forEach(e=>Oe(e.key));m.signal.addEventListener("abort",z);let{loaderResults:P,fetcherResults:_}=await de(R,k,j,N,B);if(m.signal.aborted)return;m.signal.removeEventListener("abort",z),Z.delete(n),Q.delete(n),N.forEach(e=>Q.delete(e.key));let O=Ue(P);if(O)return le(B,O.result,!1,{preventScrollReset:c});if(O=Ue(_),O)return K.add(O.key),le(B,O.result,!1,{preventScrollReset:c});let{loaderData:M,errors:L}=Me(R,k,P,void 0,N,_,ne);if(R.fetchers.has(n)){let e=on(x.data);R.fetchers.set(n,e)}Qe(w),"loading"===R.navigation.state&&w>J?(f(D,"Expected pending action"),T&&T.abort(),oe(R.navigation.location,{matches:k,loaderData:M,errors:L,fetchers:new Map(R.fetchers)})):(re({errors:L,loaderData:Re(R.loaderData,M,k,L),fetchers:new Map(R.fetchers)}),$=!1)}(n,t,h,E,d,p.active,s,x,m):(X.set(n,{routeId:t,path:h}),async function(n,t,r,o,a,i,s,l,c){let d=R.fetchers.get(n);Ce(n,rn(c,d?d.data:void 0),{flushSync:s});let A=new AbortController,u=_e(e.history,r,A.signal);if(i){let e=await un(a,new URL(u.url).pathname,u.signal,n);if("aborted"===e.type)return;if("error"===e.type)return void ve(n,t,e.error,{flushSync:s});if(!e.matches)return void ve(n,t,Ie(404,{pathname:r}),{flushSync:s});o=en(a=e.matches,r)}Q.set(n,A);let p=H,h=(await ce("loader",0,u,[o],a,n))[o.route.id];if($e(h)&&(h=await Xe(h,u.signal,!0)||h),Q.get(n)===A&&Q.delete(n),!u.signal.aborted){if(!ee.has(n))return We(h)?J>p?void Ce(n,on(void 0)):(K.add(n),void await le(u,h,!1,{preventScrollReset:l})):void(Ve(h)?ve(n,t,h.error):(f(!$e(h),"Unhandled fetcher deferred data"),Ce(n,on(h.data))));Ce(n,on(void 0))}}(n,t,h,E,d,p.active,s,x,m))},revalidate:function(){be(),re({revalidation:"loading"}),"submitting"!==R.navigation.state&&("idle"!==R.navigation.state?ie(D||R.historyAction,R.navigation.location,{overrideNavigation:R.navigation,enableViewTransition:!0===F}):ie(R.historyAction,R.location,{startUninterruptedRevalidation:!0}))},createHref:n=>e.history.createHref(n),encodeLocation:n=>e.history.encodeLocation(n),getFetcher:ke,deleteFetcher:function(e){let n=(G.get(e)||0)-1;n<=0?(G.delete(e),ee.add(e),b.v7_fetcherPersist||Se(e)):G.set(e,n),re({fetchers:new Map(R.fetchers)})},dispose:function(){E&&E(),q&&q(),w.clear(),T&&T.abort(),R.fetchers.forEach((e,n)=>Se(n)),R.blockers.forEach((e,n)=>He(n))},getBlocker:function(e,n){let t=R.blockers.get(e)||pe;return te.get(e)!==n&&te.set(e,n),t},deleteBlocker:He,patchRoutes:function(e,n){let t=null==i;we(e,n,i||A,d,a),t&&(A=[...A],re({}))},_internalFetchControllers:Q,_internalActiveDeferreds:ne,_internalSetRoutes:function(e){d={},i=B(e,a,void 0,d)}},c}function Ee(e,n,t,r,o,a,i,s){let l,c;if(i){l=[];for(let e of n)if(l.push(e),e.route.id===i){c=e;break}}else l=n,c=n[n.length-1];let d=V(o||".",$(l,a),I(e.pathname,t)||e.pathname,"path"===s);if(null==o&&(d.search=e.search,d.hash=e.hash),(null==o||""===o||"."===o)&&c){let e=Ge(d.search);if(c.route.index&&!e)d.search=d.search?d.search.replace(/^\?/,"?index&"):"?index";else if(!c.route.index&&e){let e=new URLSearchParams(d.search),n=e.getAll("index");e.delete("index"),n.filter(e=>e).forEach(n=>e.append("index",n));let t=e.toString();d.search=t?"?"+t:""}}return r&&"/"!==t&&(d.pathname="/"===d.pathname?t:W([t,d.pathname])),g(d)}function xe(e,n,t,r){if(!r||!function(e){return null!=e&&("formData"in e&&null!=e.formData||"body"in e&&void 0!==e.body)}(r))return{path:t};if(r.formMethod&&(o=r.formMethod,!ce.has(o.toLowerCase())))return{path:t,error:Ie(405,{method:r.formMethod})};var o;let a,i,s=()=>({path:t,error:Ie(400,{type:"invalid-body"})}),l=r.formMethod||"get",c=e?l.toUpperCase():l.toLowerCase(),d=qe(t);if(void 0!==r.body){if("text/plain"===r.formEncType){if(!Je(c))return s();let e="string"==typeof r.body?r.body:r.body instanceof FormData||r.body instanceof URLSearchParams?Array.from(r.body.entries()).reduce((e,n)=>{let[t,r]=n;return""+e+t+"="+r+"\n"},""):String(r.body);return{path:t,submission:{formMethod:c,formAction:d,formEncType:r.formEncType,formData:void 0,json:void 0,text:e}}}if("application/json"===r.formEncType){if(!Je(c))return s();try{let e="string"==typeof r.body?JSON.parse(r.body):r.body;return{path:t,submission:{formMethod:c,formAction:d,formEncType:r.formEncType,formData:void 0,json:e,text:void 0}}}catch(e){return s()}}}if(f("function"==typeof FormData,"FormData is not available in this environment"),r.formData)a=Oe(r.formData),i=r.formData;else if(r.body instanceof FormData)a=Oe(r.body),i=r.body;else if(r.body instanceof URLSearchParams)a=r.body,i=Te(a);else if(null==r.body)a=new URLSearchParams,i=new FormData;else try{a=new URLSearchParams(r.body),i=Te(a)}catch(e){return s()}let A={formMethod:c,formAction:d,formEncType:r&&r.formEncType||"application/x-www-form-urlencoded",formData:i,json:void 0,text:void 0};if(Je(A.formMethod))return{path:t,submission:A};let u=b(t);return n&&u.search&&Ge(u.search)&&a.append("index",""),u.search="?"+a,{path:g(u),submission:A}}function Ce(e,n,t){void 0===t&&(t=!1);let r=e.findIndex(e=>e.route.id===n);return r>=0?e.slice(0,t?r+1:r):e}function Be(e,n,t,r,o,a,i,s,c,d,A,u,f,p,h,m){let g=m?Ve(m[1])?m[1].error:m[1].data:void 0,b=e.createURL(n.location),E=e.createURL(o),x=t;a&&n.errors?x=Ce(t,Object.keys(n.errors)[0],!0):m&&Ve(m[1])&&(x=Ce(t,m[0]));let C=m?m[1].statusCode:void 0,B=i&&C&&C>=400,v=x.filter((e,t)=>{let{route:o}=e;if(o.lazy)return!0;if(null==o.loader)return!1;if(a)return ye(o,n.loaderData,n.errors);if(function(e,n,t){let r=!n||t.route.id!==n.route.id,o=void 0===e[t.route.id];return r||o}(n.loaderData,n.matches[t],e)||c.some(n=>n===e.route.id))return!0;let i=n.matches[t],d=e;return ke(e,l({currentUrl:b,currentParams:i.params,nextUrl:E,nextParams:d.params},r,{actionResult:g,actionStatus:C,defaultShouldRevalidate:!B&&(s||b.pathname+b.search===E.pathname+E.search||b.search!==E.search||ve(i,d))}))}),k=[];return u.forEach((e,o)=>{if(a||!t.some(n=>n.route.id===e.routeId)||A.has(o))return;let i=y(p,e.path,h);if(!i)return void k.push({key:o,routeId:e.routeId,path:e.path,matches:null,match:null,controller:null});let c=n.fetchers.get(o),u=en(i,e.path),m=!1;f.has(o)?m=!1:d.has(o)?(d.delete(o),m=!0):m=c&&"idle"!==c.state&&void 0===c.data?s:ke(u,l({currentUrl:b,currentParams:n.matches[n.matches.length-1].params,nextUrl:E,nextParams:t[t.length-1].params},r,{actionResult:g,actionStatus:C,defaultShouldRevalidate:!B&&s})),m&&k.push({key:o,routeId:e.routeId,path:e.path,matches:i,match:u,controller:new AbortController})}),[v,k]}function ye(e,n,t){if(e.lazy)return!0;if(!e.loader)return!1;let r=null!=n&&void 0!==n[e.id],o=null!=t&&void 0!==t[e.id];return!(!r&&o)&&("function"==typeof e.loader&&!0===e.loader.hydrate||!r&&!o)}function ve(e,n){let t=e.route.path;return e.pathname!==n.pathname||null!=t&&t.endsWith("*")&&e.params["*"]!==n.params["*"]}function ke(e,n){if(e.route.shouldRevalidate){let t=e.route.shouldRevalidate(n);if("boolean"==typeof t)return t}return n.defaultShouldRevalidate}function we(e,n,t,r,o){var a;let i;if(e){let n=r[e];f(n,"No route found to patch children into: routeId = "+e),n.children||(n.children=[]),i=n.children}else i=t;let s=B(n.filter(e=>!i.some(n=>Se(e,n))),o,[e||"_","patch",String((null==(a=i)?void 0:a.length)||"0")],r);i.push(...s)}function Se(e,n){return"id"in e&&"id"in n&&e.id===n.id||e.index===n.index&&e.path===n.path&&e.caseSensitive===n.caseSensitive&&(!(e.children&&0!==e.children.length||n.children&&0!==n.children.length)||e.children.every((e,t)=>{var r;return null==(r=n.children)?void 0:r.some(n=>Se(e,n))}))}async function je(e){let{matches:n}=e,t=n.filter(e=>e.shouldLoad);return(await Promise.all(t.map(e=>e.resolve()))).reduce((e,n,r)=>Object.assign(e,{[t[r].route.id]:n}),{})}async function Ne(e){let{result:n,type:t}=e;if(He(n)){let e;try{let t=n.headers.get("Content-Type");e=t&&/\bapplication\/json\b/.test(t)?null==n.body?null:await n.json():await n.text()}catch(e){return{type:x.error,error:e}}return t===x.error?{type:x.error,error:new oe(n.status,n.statusText,e),statusCode:n.status,headers:n.headers}:{type:x.data,data:e,statusCode:n.status,headers:n.headers}}var r,o,a,i,s,l,c,d;return t===x.error?Qe(n)?n.data instanceof Error?{type:x.error,error:n.data,statusCode:null==(a=n.init)?void 0:a.status,headers:null!=(i=n.init)&&i.headers?new Headers(n.init.headers):void 0}:{type:x.error,error:new oe((null==(r=n.init)?void 0:r.status)||500,void 0,n.data),statusCode:ae(n)?n.status:void 0,headers:null!=(o=n.init)&&o.headers?new Headers(n.init.headers):void 0}:{type:x.error,error:n,statusCode:ae(n)?n.status:void 0}:function(e){let n=e;return n&&"object"==typeof n&&"object"==typeof n.data&&"function"==typeof n.subscribe&&"function"==typeof n.cancel&&"function"==typeof n.resolveData}(n)?{type:x.deferred,deferredData:n,statusCode:null==(s=n.init)?void 0:s.status,headers:(null==(l=n.init)?void 0:l.headers)&&new Headers(n.init.headers)}:Qe(n)?{type:x.data,data:n.data,statusCode:null==(c=n.init)?void 0:c.status,headers:null!=(d=n.init)&&d.headers?new Headers(n.init.headers):void 0}:{type:x.data,data:n}}function ze(e,n,t,r,o,a){let i=e.headers.get("Location");if(f(i,"Redirects returned/thrown from loaders/actions must have a Location header"),!he.test(i)){let s=r.slice(0,r.findIndex(e=>e.route.id===t)+1);i=Ee(new URL(n.url),s,o,!0,i,a),e.headers.set("Location",i)}return e}function Pe(e,n,t){if(he.test(e)){let r=e,o=r.startsWith("//")?new URL(n.protocol+r):new URL(r),a=null!=I(o.pathname,t);if(o.origin===n.origin&&a)return o.pathname+o.search+o.hash}return e}function _e(e,n,t,r){let o=e.createURL(qe(n)).toString(),a={signal:t};if(r&&Je(r.formMethod)){let{formMethod:e,formEncType:n}=r;a.method=e.toUpperCase(),"application/json"===n?(a.headers=new Headers({"Content-Type":n}),a.body=JSON.stringify(r.json)):"text/plain"===n?a.body=r.text:"application/x-www-form-urlencoded"===n&&r.formData?a.body=Oe(r.formData):a.body=r.formData}return new Request(o,a)}function Oe(e){let n=new URLSearchParams;for(let[t,r]of e.entries())n.append(t,"string"==typeof r?r:r.name);return n}function Te(e){let n=new FormData;for(let[t,r]of e.entries())n.append(t,r);return n}function Me(e,n,t,r,o,a,i){let{loaderData:s,errors:c}=function(e,n,t,r,o){let a,i={},s=null,l=!1,c={},d=t&&Ve(t[1])?t[1].error:void 0;return e.forEach(t=>{if(!(t.route.id in n))return;let A=t.route.id,u=n[A];if(f(!We(u),"Cannot handle redirect results in processLoaderData"),Ve(u)){let n=u.error;if(void 0!==d&&(n=d,d=void 0),s=s||{},o)s[A]=n;else{let t=Le(e,A);null==s[t.route.id]&&(s[t.route.id]=n)}i[A]=void 0,l||(l=!0,a=ae(u.error)?u.error.status:500),u.headers&&(c[A]=u.headers)}else $e(u)?(r.set(A,u.deferredData),i[A]=u.deferredData.data,null==u.statusCode||200===u.statusCode||l||(a=u.statusCode),u.headers&&(c[A]=u.headers)):(i[A]=u.data,u.statusCode&&200!==u.statusCode&&!l&&(a=u.statusCode),u.headers&&(c[A]=u.headers))}),void 0!==d&&t&&(s={[t[0]]:d},i[t[0]]=void 0),{loaderData:i,errors:s,statusCode:a||200,loaderHeaders:c}}(n,t,r,i,!1);return o.forEach(n=>{let{key:t,match:r,controller:o}=n,i=a[t];if(f(i,"Did not find corresponding fetcher result"),!o||!o.signal.aborted)if(Ve(i)){let n=Le(e.matches,null==r?void 0:r.route.id);c&&c[n.route.id]||(c=l({},c,{[n.route.id]:i.error})),e.fetchers.delete(t)}else if(We(i))f(!1,"Unhandled fetcher revalidation redirect");else if($e(i))f(!1,"Unhandled fetcher deferred data");else{let n=on(i.data);e.fetchers.set(t,n)}}),{loaderData:s,errors:c}}function Re(e,n,t,r){let o=l({},n);for(let a of t){let t=a.route.id;if(n.hasOwnProperty(t)?void 0!==n[t]&&(o[t]=n[t]):void 0!==e[t]&&a.route.loader&&(o[t]=e[t]),r&&r.hasOwnProperty(t))break}return o}function De(e){return e?Ve(e[1])?{actionData:{}}:{actionData:{[e[0]]:e[1].data}}:{}}function Le(e,n){return(n?e.slice(0,e.findIndex(e=>e.route.id===n)+1):[...e]).reverse().find(e=>!0===e.route.hasErrorBoundary)||e[0]}function Fe(e){let n=1===e.length?e[0]:e.find(e=>e.index||!e.path||"/"===e.path)||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:n}],route:n}}function Ie(e,n){let{pathname:t,routeId:r,method:o,type:a,message:i}=void 0===n?{}:n,s="Unknown Server Error",l="Unknown @remix-run/router error";return 400===e?(s="Bad Request",o&&t&&r?l="You made a "+o+' request to "'+t+'" but did not provide a `loader` for route "'+r+'", so there is no way to handle the request.':"defer-action"===a?l="defer() is not supported in actions":"invalid-body"===a&&(l="Unable to encode submission body")):403===e?(s="Forbidden",l='Route "'+r+'" does not match URL "'+t+'"'):404===e?(s="Not Found",l='No route matches URL "'+t+'"'):405===e&&(s="Method Not Allowed",o&&t&&r?l="You made a "+o.toUpperCase()+' request to "'+t+'" but did not provide an `action` for route "'+r+'", so there is no way to handle the request.':o&&(l='Invalid request method "'+o.toUpperCase()+'"')),new oe(e||500,s,new Error(l),!0)}function Ue(e){let n=Object.entries(e);for(let e=n.length-1;e>=0;e--){let[t,r]=n[e];if(We(r))return{key:t,result:r}}}function qe(e){return g(l({},"string"==typeof e?b(e):e,{hash:""}))}function Ye(e){return He(e.result)&&de.has(e.result.status)}function $e(e){return e.type===x.deferred}function Ve(e){return e.type===x.error}function We(e){return(e&&e.type)===x.redirect}function Qe(e){return"object"==typeof e&&null!=e&&"type"in e&&"data"in e&&"init"in e&&"DataWithResponseInit"===e.type}function He(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"object"==typeof e.headers&&void 0!==e.body}function Je(e){return se.has(e.toLowerCase())}async function Ze(e,n,t,r,o){let a=Object.entries(n);for(let i=0;i<a.length;i++){let[s,l]=a[i],c=e.find(e=>(null==e?void 0:e.route.id)===s);if(!c)continue;let d=r.find(e=>e.route.id===c.route.id),A=null!=d&&!ve(d,c)&&void 0!==(o&&o[c.route.id]);$e(l)&&A&&await Xe(l,t,!1).then(e=>{e&&(n[s]=e)})}}async function Ke(e,n,t){for(let r=0;r<t.length;r++){let{key:o,routeId:a,controller:i}=t[r],s=n[o];e.find(e=>(null==e?void 0:e.route.id)===a)&&$e(s)&&(f(i,"Expected an AbortController for revalidating fetcher deferred result"),await Xe(s,i.signal,!0).then(e=>{e&&(n[o]=e)}))}}async function Xe(e,n,t){if(void 0===t&&(t=!1),!await e.deferredData.resolveData(n)){if(t)try{return{type:x.data,data:e.deferredData.unwrappedData}}catch(e){return{type:x.error,error:e}}return{type:x.data,data:e.deferredData.data}}}function Ge(e){return new URLSearchParams(e).getAll("index").some(e=>""===e)}function en(e,n){let t="string"==typeof n?b(n).search:n.search;if(e[e.length-1].route.index&&Ge(t||""))return e[e.length-1];let r=Y(e);return r[r.length-1]}function nn(e){let{formMethod:n,formAction:t,formEncType:r,text:o,formData:a,json:i}=e;if(n&&t&&r)return null!=o?{formMethod:n,formAction:t,formEncType:r,formData:void 0,json:void 0,text:o}:null!=a?{formMethod:n,formAction:t,formEncType:r,formData:a,json:void 0,text:void 0}:void 0!==i?{formMethod:n,formAction:t,formEncType:r,formData:void 0,json:i,text:void 0}:void 0}function tn(e,n){return n?{state:"loading",location:e,formMethod:n.formMethod,formAction:n.formAction,formEncType:n.formEncType,formData:n.formData,json:n.json,text:n.text}:{state:"loading",location:e,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function rn(e,n){return e?{state:"loading",formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:n}:{state:"loading",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:n}}function on(e){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}function an(){return an=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},an.apply(this,arguments)}Symbol("deferred");const sn=o.createContext(null),ln=o.createContext(null),cn=o.createContext(null),dn=o.createContext(null),An=o.createContext(null),un=o.createContext({outlet:null,matches:[],isDataRoute:!1}),fn=o.createContext(null);function pn(e,n){let{relative:t}=void 0===n?{}:n;hn()||f(!1);let{basename:r,navigator:a}=o.useContext(dn),{hash:i,pathname:s,search:l}=kn(e,{relative:t}),c=s;return"/"!==r&&(c="/"===s?r:W([r,s])),a.createHref({pathname:c,search:l,hash:i})}function hn(){return null!=o.useContext(An)}function mn(){return hn()||f(!1),o.useContext(An).location}function gn(){return o.useContext(An).navigationType}function bn(e){hn()||f(!1);let{pathname:n}=mn();return o.useMemo(()=>L(e,F(n)),[n,e])}function En(e){o.useContext(dn).static||o.useLayoutEffect(e)}function xn(){let{isDataRoute:e}=o.useContext(un);return e?function(){let{router:e}=Mn(On.UseNavigateStable),n=Dn(Tn.UseNavigateStable),t=o.useRef(!1);return En(()=>{t.current=!0}),o.useCallback(function(r,o){void 0===o&&(o={}),t.current&&("number"==typeof r?e.navigate(r):e.navigate(r,an({fromRouteId:n},o)))},[e,n])}():function(){hn()||f(!1);let e=o.useContext(sn),{basename:n,future:t,navigator:r}=o.useContext(dn),{matches:a}=o.useContext(un),{pathname:i}=mn(),s=JSON.stringify($(a,t.v7_relativeSplatPath)),l=o.useRef(!1);return En(()=>{l.current=!0}),o.useCallback(function(t,o){if(void 0===o&&(o={}),!l.current)return;if("number"==typeof t)return void r.go(t);let a=V(t,JSON.parse(s),i,"path"===o.relative);null==e&&"/"!==n&&(a.pathname="/"===a.pathname?n:W([n,a.pathname])),(o.replace?r.replace:r.push)(a,o.state,o)},[n,r,s,i,e])}()}const Cn=o.createContext(null);function Bn(){return o.useContext(Cn)}function yn(e){let n=o.useContext(un).outlet;return n?o.createElement(Cn.Provider,{value:e},n):n}function vn(){let{matches:e}=o.useContext(un),n=e[e.length-1];return n?n.params:{}}function kn(e,n){let{relative:t}=void 0===n?{}:n,{future:r}=o.useContext(dn),{matches:a}=o.useContext(un),{pathname:i}=mn(),s=JSON.stringify($(a,r.v7_relativeSplatPath));return o.useMemo(()=>V(e,JSON.parse(s),i,"path"===t),[e,s,i,t])}function wn(e,n){return Sn(e,n)}function Sn(e,n,t,a){hn()||f(!1);let{navigator:i}=o.useContext(dn),{matches:s}=o.useContext(un),l=s[s.length-1],c=l?l.params:{},d=(l&&l.pathname,l?l.pathnameBase:"/");l&&l.route;let A,u=mn();if(n){var p;let e="string"==typeof n?b(n):n;"/"===d||(null==(p=e.pathname)?void 0:p.startsWith(d))||f(!1),A=e}else A=u;let h=A.pathname||"/",m=h;if("/"!==d){let e=d.replace(/^\//,"").split("/");m="/"+h.replace(/^\//,"").split("/").slice(e.length).join("/")}let g=y(e,{pathname:m}),E=_n(g&&g.map(e=>Object.assign({},e,{params:Object.assign({},c,e.params),pathname:W([d,i.encodeLocation?i.encodeLocation(e.pathname).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?d:W([d,i.encodeLocation?i.encodeLocation(e.pathnameBase).pathname:e.pathnameBase])})),s,t,a);return n&&E?o.createElement(An.Provider,{value:{location:an({pathname:"/",search:"",hash:"",state:null,key:"default"},A),navigationType:r.Pop}},E):E}function jn(){let e=Vn(),n=ae(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),t=e instanceof Error?e.stack:null,r={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return o.createElement(o.Fragment,null,o.createElement("h2",null,"Unexpected Application Error!"),o.createElement("h3",{style:{fontStyle:"italic"}},n),t?o.createElement("pre",{style:r},t):null,null)}const Nn=o.createElement(jn,null);class zn extends o.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,n){return n.location!==e.location||"idle"!==n.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:void 0!==e.error?e.error:n.error,location:n.location,revalidation:e.revalidation||n.revalidation}}componentDidCatch(e,n){console.error("React Router caught the following error during render",e,n)}render(){return void 0!==this.state.error?o.createElement(un.Provider,{value:this.props.routeContext},o.createElement(fn.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Pn(e){let{routeContext:n,match:t,children:r}=e,a=o.useContext(sn);return a&&a.static&&a.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=t.route.id),o.createElement(un.Provider,{value:n},r)}function _n(e,n,t,r){var a;if(void 0===n&&(n=[]),void 0===t&&(t=null),void 0===r&&(r=null),null==e){var i;if(!t)return null;if(t.errors)e=t.matches;else{if(!(null!=(i=r)&&i.v7_partialHydration&&0===n.length&&!t.initialized&&t.matches.length>0))return null;e=t.matches}}let s=e,l=null==(a=t)?void 0:a.errors;if(null!=l){let e=s.findIndex(e=>e.route.id&&void 0!==(null==l?void 0:l[e.route.id]));e>=0||f(!1),s=s.slice(0,Math.min(s.length,e+1))}let c=!1,d=-1;if(t&&r&&r.v7_partialHydration)for(let e=0;e<s.length;e++){let n=s[e];if((n.route.HydrateFallback||n.route.hydrateFallbackElement)&&(d=e),n.route.id){let{loaderData:e,errors:r}=t,o=n.route.loader&&void 0===e[n.route.id]&&(!r||void 0===r[n.route.id]);if(n.route.lazy||o){c=!0,s=d>=0?s.slice(0,d+1):[s[0]];break}}}return s.reduceRight((e,r,a)=>{let i,A=!1,u=null,f=null;var p;t&&(i=l&&r.route.id?l[r.route.id]:void 0,u=r.route.errorElement||Nn,c&&(d<0&&0===a?(Zn[p="route-fallback"]||(Zn[p]=!0),A=!0,f=null):d===a&&(A=!0,f=r.route.hydrateFallbackElement||null)));let h=n.concat(s.slice(0,a+1)),m=()=>{let n;return n=i?u:A?f:r.route.Component?o.createElement(r.route.Component,null):r.route.element?r.route.element:e,o.createElement(Pn,{match:r,routeContext:{outlet:e,matches:h,isDataRoute:null!=t},children:n})};return t&&(r.route.ErrorBoundary||r.route.errorElement||0===a)?o.createElement(zn,{location:t.location,revalidation:t.revalidation,component:u,error:i,children:m(),routeContext:{outlet:null,matches:h,isDataRoute:!0}}):m()},null)}var On=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(On||{}),Tn=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(Tn||{});function Mn(e){let n=o.useContext(sn);return n||f(!1),n}function Rn(e){let n=o.useContext(ln);return n||f(!1),n}function Dn(e){let n=function(){let e=o.useContext(un);return e||f(!1),e}(),t=n.matches[n.matches.length-1];return t.route.id||f(!1),t.route.id}function Ln(){return Dn(Tn.UseRouteId)}function Fn(){return Rn(Tn.UseNavigation).navigation}function In(){let e=Mn(On.UseRevalidator),n=Rn(Tn.UseRevalidator);return o.useMemo(()=>({revalidate:e.router.revalidate,state:n.revalidation}),[e.router.revalidate,n.revalidation])}function Un(){let{matches:e,loaderData:n}=Rn(Tn.UseMatches);return o.useMemo(()=>e.map(e=>k(e,n)),[e,n])}function qn(){let e=Rn(Tn.UseLoaderData),n=Dn(Tn.UseLoaderData);if(!e.errors||null==e.errors[n])return e.loaderData[n];console.error("You cannot `useLoaderData` in an errorElement (routeId: "+n+")")}function Yn(e){return Rn(Tn.UseRouteLoaderData).loaderData[e]}function $n(){let e=Rn(Tn.UseActionData),n=Dn(Tn.UseLoaderData);return e.actionData?e.actionData[n]:void 0}function Vn(){var e;let n=o.useContext(fn),t=Rn(Tn.UseRouteError),r=Dn(Tn.UseRouteError);return void 0!==n?n:null==(e=t.errors)?void 0:e[r]}function Wn(){let e=o.useContext(cn);return null==e?void 0:e._data}function Qn(){let e=o.useContext(cn);return null==e?void 0:e._error}let Hn=0;function Jn(e){let{router:n,basename:t}=Mn(On.UseBlocker),r=Rn(Tn.UseBlocker),[a,i]=o.useState(""),s=o.useCallback(n=>{if("function"!=typeof e)return!!e;if("/"===t)return e(n);let{currentLocation:r,nextLocation:o,historyAction:a}=n;return e({currentLocation:an({},r,{pathname:I(r.pathname,t)||r.pathname}),nextLocation:an({},o,{pathname:I(o.pathname,t)||o.pathname}),historyAction:a})},[t,e]);return o.useEffect(()=>{let e=String(++Hn);return i(e),()=>n.deleteBlocker(e)},[n]),o.useEffect(()=>{""!==a&&n.getBlocker(a,s)},[n,a,s]),a&&r.blockers.has(a)?r.blockers.get(a):pe}const Zn={},Kn=(e,n,t)=>{};function Xn(e,n){void 0===(null==e?void 0:e.v7_startTransition)&&Kn("v7_startTransition","React Router will begin wrapping state updates in `React.startTransition` in v7","https://reactrouter.com/v6/upgrading/future#v7_starttransition"),void 0!==(null==e?void 0:e.v7_relativeSplatPath)||n&&void 0!==n.v7_relativeSplatPath||Kn("v7_relativeSplatPath","Relative route resolution within Splat routes is changing in v7","https://reactrouter.com/v6/upgrading/future#v7_relativesplatpath"),n&&(void 0===n.v7_fetcherPersist&&Kn("v7_fetcherPersist","The persistence behavior of fetchers is changing in v7","https://reactrouter.com/v6/upgrading/future#v7_fetcherpersist"),void 0===n.v7_normalizeFormMethod&&Kn("v7_normalizeFormMethod","Casing of `formMethod` fields is being normalized to uppercase in v7","https://reactrouter.com/v6/upgrading/future#v7_normalizeformmethod"),void 0===n.v7_partialHydration&&Kn("v7_partialHydration","`RouterProvider` hydration behavior is changing in v7","https://reactrouter.com/v6/upgrading/future#v7_partialhydration"),void 0===n.v7_skipActionErrorRevalidation&&Kn("v7_skipActionErrorRevalidation","The revalidation behavior after 4xx/5xx `action` responses is changing in v7","https://reactrouter.com/v6/upgrading/future#v7_skipactionerrorrevalidation"))}const Gn=a.startTransition;function et(e){let{basename:n,children:t,initialEntries:r,initialIndex:a,future:i}=e,s=o.useRef();null==s.current&&(s.current=d({initialEntries:r,initialIndex:a,v5Compat:!0}));let l=s.current,[c,A]=o.useState({action:l.action,location:l.location}),{v7_startTransition:u}=i||{},f=o.useCallback(e=>{u&&Gn?Gn(()=>A(e)):A(e)},[A,u]);return o.useLayoutEffect(()=>l.listen(f),[l,f]),o.useEffect(()=>Xn(i),[i]),o.createElement(ot,{basename:n,children:t,location:c.location,navigationType:c.action,navigator:l,future:i})}function nt(e){let{to:n,replace:t,state:r,relative:a}=e;hn()||f(!1);let{future:i,static:s}=o.useContext(dn),{matches:l}=o.useContext(un),{pathname:c}=mn(),d=xn(),A=V(n,$(l,i.v7_relativeSplatPath),c,"path"===a),u=JSON.stringify(A);return o.useEffect(()=>d(JSON.parse(u),{replace:t,state:r,relative:a}),[d,u,a,t,r]),null}function tt(e){return yn(e.context)}function rt(e){f(!1)}function ot(e){let{basename:n="/",children:t=null,location:a,navigationType:i=r.Pop,navigator:s,static:l=!1,future:c}=e;hn()&&f(!1);let d=n.replace(/^\/*/,"/"),A=o.useMemo(()=>({basename:d,navigator:s,static:l,future:an({v7_relativeSplatPath:!1},c)}),[d,c,s,l]);"string"==typeof a&&(a=b(a));let{pathname:u="/",search:p="",hash:h="",state:m=null,key:g="default"}=a,E=o.useMemo(()=>{let e=I(u,d);return null==e?null:{location:{pathname:e,search:p,hash:h,state:m,key:g},navigationType:i}},[d,u,p,h,m,g,i]);return null==E?null:o.createElement(dn.Provider,{value:A},o.createElement(An.Provider,{children:t,value:E}))}function at(e){let{children:n,location:t}=e;return wn(At(n),t)}function it(e){let{children:n,errorElement:t,resolve:r}=e;return o.createElement(ct,{resolve:r,errorElement:t},o.createElement(dt,null,n))}var st=function(e){return e[e.pending=0]="pending",e[e.success=1]="success",e[e.error=2]="error",e}(st||{});const lt=new Promise(()=>{});class ct extends o.Component{constructor(e){super(e),this.state={error:null}}static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,n){console.error("<Await> caught the following error during render",e,n)}render(){let{children:e,errorElement:n,resolve:t}=this.props,r=null,a=st.pending;if(t instanceof Promise)if(this.state.error){a=st.error;let e=this.state.error;r=Promise.reject().catch(()=>{}),Object.defineProperty(r,"_tracked",{get:()=>!0}),Object.defineProperty(r,"_error",{get:()=>e})}else t._tracked?(r=t,a="_error"in r?st.error:"_data"in r?st.success:st.pending):(a=st.pending,Object.defineProperty(t,"_tracked",{get:()=>!0}),r=t.then(e=>Object.defineProperty(t,"_data",{get:()=>e}),e=>Object.defineProperty(t,"_error",{get:()=>e})));else a=st.success,r=Promise.resolve(),Object.defineProperty(r,"_tracked",{get:()=>!0}),Object.defineProperty(r,"_data",{get:()=>t});if(a===st.error&&r._error instanceof K)throw lt;if(a===st.error&&!n)throw r._error;if(a===st.error)return o.createElement(cn.Provider,{value:r,children:n});if(a===st.success)return o.createElement(cn.Provider,{value:r,children:e});throw r}}function dt(e){let{children:n}=e,t=Wn(),r="function"==typeof n?n(t):n;return o.createElement(o.Fragment,null,r)}function At(e,n){void 0===n&&(n=[]);let t=[];return o.Children.forEach(e,(e,r)=>{if(!o.isValidElement(e))return;let a=[...n,r];if(e.type===o.Fragment)return void t.push.apply(t,At(e.props.children,a));e.type!==rt&&f(!1),e.props.index&&e.props.children&&f(!1);let i={id:e.props.id||a.join("-"),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,loader:e.props.loader,action:e.props.action,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:null!=e.props.ErrorBoundary||null!=e.props.errorElement,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(i.children=At(e.props.children,a)),t.push(i)}),t}function ut(e){return _n(e)}function ft(e){let n={hasErrorBoundary:null!=e.ErrorBoundary||null!=e.errorElement};return e.Component&&Object.assign(n,{element:o.createElement(e.Component),Component:void 0}),e.HydrateFallback&&Object.assign(n,{hydrateFallbackElement:o.createElement(e.HydrateFallback),HydrateFallback:void 0}),e.ErrorBoundary&&Object.assign(n,{errorElement:o.createElement(e.ErrorBoundary),ErrorBoundary:void 0}),n}function pt(e,n){return be({basename:null==n?void 0:n.basename,future:an({},null==n?void 0:n.future,{v7_prependBasename:!0}),history:d({initialEntries:null==n?void 0:n.initialEntries,initialIndex:null==n?void 0:n.initialIndex}),hydrationData:null==n?void 0:n.hydrationData,routes:e,mapRouteProperties:ft,dataStrategy:null==n?void 0:n.dataStrategy,patchRoutesOnNavigation:null==n?void 0:n.patchRoutesOnNavigation}).initialize()}function ht(){return ht=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},ht.apply(this,arguments)}function mt(e,n){if(null==e)return{};var t,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||(o[t]=e[t]);return o}const gt="get",bt="application/x-www-form-urlencoded";function Et(e){return null!=e&&"string"==typeof e.tagName}function xt(e){return void 0===e&&(e=""),new URLSearchParams("string"==typeof e||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((n,t)=>{let r=e[t];return n.concat(Array.isArray(r)?r.map(e=>[t,e]):[[t,r]])},[]))}let Ct=null;const Bt=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function yt(e){return null==e||Bt.has(e)?e:null}const vt=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],kt=["aria-current","caseSensitive","className","end","style","to","viewTransition","children"],wt=["fetcherKey","navigate","reloadDocument","replace","state","method","action","onSubmit","relative","preventScrollReset","viewTransition"];try{window.__reactRouterVersion="6"}catch(e){}function St(e,n){return be({basename:null==n?void 0:n.basename,future:ht({},null==n?void 0:n.future,{v7_prependBasename:!0}),history:A({window:null==n?void 0:n.window}),hydrationData:(null==n?void 0:n.hydrationData)||Nt(),routes:e,mapRouteProperties:ft,dataStrategy:null==n?void 0:n.dataStrategy,patchRoutesOnNavigation:null==n?void 0:n.patchRoutesOnNavigation,window:null==n?void 0:n.window}).initialize()}function jt(e,n){return be({basename:null==n?void 0:n.basename,future:ht({},null==n?void 0:n.future,{v7_prependBasename:!0}),history:u({window:null==n?void 0:n.window}),hydrationData:(null==n?void 0:n.hydrationData)||Nt(),routes:e,mapRouteProperties:ft,dataStrategy:null==n?void 0:n.dataStrategy,patchRoutesOnNavigation:null==n?void 0:n.patchRoutesOnNavigation,window:null==n?void 0:n.window}).initialize()}function Nt(){var e;let n=null==(e=window)?void 0:e.__staticRouterHydrationData;return n&&n.errors&&(n=ht({},n,{errors:zt(n.errors)})),n}function zt(e){if(!e)return null;let n=Object.entries(e),t={};for(let[e,r]of n)if(r&&"RouteErrorResponse"===r.__type)t[e]=new oe(r.status,r.statusText,r.data,!0===r.internal);else if(r&&"Error"===r.__type){if(r.__subType){let n=window[r.__subType];if("function"==typeof n)try{let o=new n(r.message);o.stack="",t[e]=o}catch(e){}}if(null==t[e]){let n=new Error(r.message);n.stack="",t[e]=n}}else t[e]=r;return t}const Pt=o.createContext({isTransitioning:!1}),_t=o.createContext(new Map),Ot=a.startTransition,Tt=s.flushSync,Mt=a.useId;function Rt(e){Tt?Tt(e):e()}class Dt{constructor(){this.status="pending",this.promise=new Promise((e,n)=>{this.resolve=n=>{"pending"===this.status&&(this.status="resolved",e(n))},this.reject=e=>{"pending"===this.status&&(this.status="rejected",n(e))}})}}function Lt(e){let{fallbackElement:n,router:t,future:r}=e,[a,i]=o.useState(t.state),[s,l]=o.useState(),[c,d]=o.useState({isTransitioning:!1}),[A,u]=o.useState(),[f,p]=o.useState(),[h,m]=o.useState(),g=o.useRef(new Map),{v7_startTransition:b}=r||{},E=o.useCallback(e=>{b?function(e){Ot?Ot(e):e()}(e):e()},[b]),x=o.useCallback((e,n)=>{let{deletedFetchers:r,flushSync:o,viewTransitionOpts:a}=n;e.fetchers.forEach((e,n)=>{void 0!==e.data&&g.current.set(n,e.data)}),r.forEach(e=>g.current.delete(e));let s=null==t.window||null==t.window.document||"function"!=typeof t.window.document.startViewTransition;if(a&&!s){if(o){Rt(()=>{f&&(A&&A.resolve(),f.skipTransition()),d({isTransitioning:!0,flushSync:!0,currentLocation:a.currentLocation,nextLocation:a.nextLocation})});let n=t.window.document.startViewTransition(()=>{Rt(()=>i(e))});return n.finished.finally(()=>{Rt(()=>{u(void 0),p(void 0),l(void 0),d({isTransitioning:!1})})}),void Rt(()=>p(n))}f?(A&&A.resolve(),f.skipTransition(),m({state:e,currentLocation:a.currentLocation,nextLocation:a.nextLocation})):(l(e),d({isTransitioning:!0,flushSync:!1,currentLocation:a.currentLocation,nextLocation:a.nextLocation}))}else o?Rt(()=>i(e)):E(()=>i(e))},[t.window,f,A,g,E]);o.useLayoutEffect(()=>t.subscribe(x),[t,x]),o.useEffect(()=>{c.isTransitioning&&!c.flushSync&&u(new Dt)},[c]),o.useEffect(()=>{if(A&&s&&t.window){let e=s,n=A.promise,r=t.window.document.startViewTransition(async()=>{E(()=>i(e)),await n});r.finished.finally(()=>{u(void 0),p(void 0),l(void 0),d({isTransitioning:!1})}),p(r)}},[E,s,A,t.window]),o.useEffect(()=>{A&&s&&a.location.key===s.location.key&&A.resolve()},[A,f,a.location,s]),o.useEffect(()=>{!c.isTransitioning&&h&&(l(h.state),d({isTransitioning:!0,flushSync:!1,currentLocation:h.currentLocation,nextLocation:h.nextLocation}),m(void 0))},[c.isTransitioning,h]),o.useEffect(()=>{},[]);let C=o.useMemo(()=>({createHref:t.createHref,encodeLocation:t.encodeLocation,go:e=>t.navigate(e),push:(e,n,r)=>t.navigate(e,{state:n,preventScrollReset:null==r?void 0:r.preventScrollReset}),replace:(e,n,r)=>t.navigate(e,{replace:!0,state:n,preventScrollReset:null==r?void 0:r.preventScrollReset})}),[t]),B=t.basename||"/",y=o.useMemo(()=>({router:t,navigator:C,static:!1,basename:B}),[t,C,B]),v=o.useMemo(()=>({v7_relativeSplatPath:t.future.v7_relativeSplatPath}),[t.future.v7_relativeSplatPath]);return o.useEffect(()=>Xn(r,t.future),[r,t.future]),o.createElement(o.Fragment,null,o.createElement(sn.Provider,{value:y},o.createElement(ln.Provider,{value:a},o.createElement(_t.Provider,{value:g.current},o.createElement(Pt.Provider,{value:c},o.createElement(ot,{basename:B,location:a.location,navigationType:a.historyAction,navigator:C,future:v},a.initialized||t.future.v7_partialHydration?o.createElement(Ft,{routes:t.routes,future:t.future,state:a}):n))))),null)}const Ft=o.memo(It);function It(e){let{routes:n,future:t,state:r}=e;return Sn(n,void 0,r,t)}function Ut(e){let{basename:n,children:t,future:r,window:a}=e,i=o.useRef();null==i.current&&(i.current=A({window:a,v5Compat:!0}));let s=i.current,[l,c]=o.useState({action:s.action,location:s.location}),{v7_startTransition:d}=r||{},u=o.useCallback(e=>{d&&Ot?Ot(()=>c(e)):c(e)},[c,d]);return o.useLayoutEffect(()=>s.listen(u),[s,u]),o.useEffect(()=>Xn(r),[r]),o.createElement(ot,{basename:n,children:t,location:l.location,navigationType:l.action,navigator:s,future:r})}function qt(e){let{basename:n,children:t,future:r,window:a}=e,i=o.useRef();null==i.current&&(i.current=u({window:a,v5Compat:!0}));let s=i.current,[l,c]=o.useState({action:s.action,location:s.location}),{v7_startTransition:d}=r||{},A=o.useCallback(e=>{d&&Ot?Ot(()=>c(e)):c(e)},[c,d]);return o.useLayoutEffect(()=>s.listen(A),[s,A]),o.useEffect(()=>Xn(r),[r]),o.createElement(ot,{basename:n,children:t,location:l.location,navigationType:l.action,navigator:s,future:r})}function Yt(e){let{basename:n,children:t,future:r,history:a}=e,[i,s]=o.useState({action:a.action,location:a.location}),{v7_startTransition:l}=r||{},c=o.useCallback(e=>{l&&Ot?Ot(()=>s(e)):s(e)},[s,l]);return o.useLayoutEffect(()=>a.listen(c),[a,c]),o.useEffect(()=>Xn(r),[r]),o.createElement(ot,{basename:n,children:t,location:i.location,navigationType:i.action,navigator:a,future:r})}const $t="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,Vt=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Wt=o.forwardRef(function(e,n){let t,{onClick:r,relative:a,reloadDocument:i,replace:s,state:l,target:c,to:d,preventScrollReset:A,viewTransition:u}=e,f=mt(e,vt),{basename:p}=o.useContext(dn),h=!1;if("string"==typeof d&&Vt.test(d)&&(t=d,$t))try{let e=new URL(window.location.href),n=d.startsWith("//")?new URL(e.protocol+d):new URL(d),t=I(n.pathname,p);n.origin===e.origin&&null!=t?d=t+n.search+n.hash:h=!0}catch(e){}let m=pn(d,{relative:a}),g=er(d,{replace:s,state:l,target:c,preventScrollReset:A,relative:a,viewTransition:u});return o.createElement("a",ht({},f,{href:t||m,onClick:h||i?r:function(e){r&&r(e),e.defaultPrevented||g(e)},ref:n,target:c}))}),Qt=o.forwardRef(function(e,n){let{"aria-current":t="page",caseSensitive:r=!1,className:a="",end:i=!1,style:s,to:l,viewTransition:c,children:d}=e,A=mt(e,kt),u=kn(l,{relative:A.relative}),f=mn(),p=o.useContext(ln),{navigator:h,basename:m}=o.useContext(dn),g=null!=p&&fr(u)&&!0===c,b=h.encodeLocation?h.encodeLocation(u).pathname:u.pathname,E=f.pathname,x=p&&p.navigation&&p.navigation.location?p.navigation.location.pathname:null;r||(E=E.toLowerCase(),x=x?x.toLowerCase():null,b=b.toLowerCase()),x&&m&&(x=I(x,m)||x);const C="/"!==b&&b.endsWith("/")?b.length-1:b.length;let B,y=E===b||!i&&E.startsWith(b)&&"/"===E.charAt(C),v=null!=x&&(x===b||!i&&x.startsWith(b)&&"/"===x.charAt(b.length)),k={isActive:y,isPending:v,isTransitioning:g},w=y?t:void 0;B="function"==typeof a?a(k):[a,y?"active":null,v?"pending":null,g?"transitioning":null].filter(Boolean).join(" ");let S="function"==typeof s?s(k):s;return o.createElement(Wt,ht({},A,{"aria-current":w,className:B,ref:n,style:S,to:l,viewTransition:c}),"function"==typeof d?d(k):d)}),Ht=o.forwardRef((e,n)=>{let{fetcherKey:t,navigate:r,reloadDocument:a,replace:i,state:s,method:l=gt,action:c,onSubmit:d,relative:A,preventScrollReset:u,viewTransition:f}=e,p=mt(e,wt),h=or(),m=ar(c,{relative:A}),g="get"===l.toLowerCase()?"get":"post";return o.createElement("form",ht({ref:n,method:g,action:m,onSubmit:a?d:e=>{if(d&&d(e),e.defaultPrevented)return;e.preventDefault();let n=e.nativeEvent.submitter,o=(null==n?void 0:n.getAttribute("formmethod"))||l;h(n||e.currentTarget,{fetcherKey:t,method:o,navigate:r,replace:i,state:s,relative:A,preventScrollReset:u,viewTransition:f})}},p))});function Jt(e){let{getKey:n,storageKey:t}=e;return dr({getKey:n,storageKey:t}),null}var Zt,Kt;function Xt(e){let n=o.useContext(sn);return n||f(!1),n}function Gt(e){let n=o.useContext(ln);return n||f(!1),n}function er(e,n){let{target:t,replace:r,state:a,preventScrollReset:i,relative:s,viewTransition:l}=void 0===n?{}:n,c=xn(),d=mn(),A=kn(e,{relative:s});return o.useCallback(n=>{if(function(e,n){return!(0!==e.button||n&&"_self"!==n||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e))}(n,t)){n.preventDefault();let t=void 0!==r?r:g(d)===g(A);c(e,{replace:t,state:a,preventScrollReset:i,relative:s,viewTransition:l})}},[d,c,A,r,a,t,e,i,s,l])}function nr(e){let n=o.useRef(xt(e)),t=o.useRef(!1),r=mn(),a=o.useMemo(()=>function(e,n){let t=xt(e);return n&&n.forEach((e,r)=>{t.has(r)||n.getAll(r).forEach(e=>{t.append(r,e)})}),t}(r.search,t.current?null:n.current),[r.search]),i=xn(),s=o.useCallback((e,n)=>{const r=xt("function"==typeof e?e(a):e);t.current=!0,i("?"+r,n)},[i,a]);return[a,s]}(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(Zt||(Zt={})),function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"}(Kt||(Kt={}));let tr=0,rr=()=>"__"+String(++tr)+"__";function or(){let{router:e}=Xt(Zt.UseSubmit),{basename:n}=o.useContext(dn),t=Ln();return o.useCallback(function(r,o){void 0===o&&(o={}),function(){if("undefined"==typeof document)throw new Error("You are calling submit during the server render. Try calling submit within a `useEffect` or callback instead.")}();let{action:a,method:i,encType:s,formData:l,body:c}=function(e,n){let t,r,o,a,i;if(Et(s=e)&&"form"===s.tagName.toLowerCase()){let i=e.getAttribute("action");r=i?I(i,n):null,t=e.getAttribute("method")||gt,o=yt(e.getAttribute("enctype"))||bt,a=new FormData(e)}else if(function(e){return Et(e)&&"button"===e.tagName.toLowerCase()}(e)||function(e){return Et(e)&&"input"===e.tagName.toLowerCase()}(e)&&("submit"===e.type||"image"===e.type)){let i=e.form;if(null==i)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let s=e.getAttribute("formaction")||i.getAttribute("action");if(r=s?I(s,n):null,t=e.getAttribute("formmethod")||i.getAttribute("method")||gt,o=yt(e.getAttribute("formenctype"))||yt(i.getAttribute("enctype"))||bt,a=new FormData(i,e),!function(){if(null===Ct)try{new FormData(document.createElement("form"),0),Ct=!1}catch(e){Ct=!0}return Ct}()){let{name:n,type:t,value:r}=e;if("image"===t){let e=n?n+".":"";a.append(e+"x","0"),a.append(e+"y","0")}else n&&a.append(n,r)}}else{if(Et(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');t=gt,r=null,o=bt,i=e}var s;return a&&"text/plain"===o&&(i=a,a=void 0),{action:r,method:t.toLowerCase(),encType:o,formData:a,body:i}}(r,n);if(!1===o.navigate){let n=o.fetcherKey||rr();e.fetch(n,t,o.action||a,{preventScrollReset:o.preventScrollReset,formData:l,body:c,formMethod:o.method||i,formEncType:o.encType||s,flushSync:o.flushSync})}else e.navigate(o.action||a,{preventScrollReset:o.preventScrollReset,formData:l,body:c,formMethod:o.method||i,formEncType:o.encType||s,replace:o.replace,state:o.state,fromRouteId:t,flushSync:o.flushSync,viewTransition:o.viewTransition})},[e,n,t])}function ar(e,n){let{relative:t}=void 0===n?{}:n,{basename:r}=o.useContext(dn),a=o.useContext(un);a||f(!1);let[i]=a.matches.slice(-1),s=ht({},kn(e||".",{relative:t})),l=mn();if(null==e){s.search=l.search;let e=new URLSearchParams(s.search),n=e.getAll("index");if(n.some(e=>""===e)){e.delete("index"),n.filter(e=>e).forEach(n=>e.append("index",n));let t=e.toString();s.search=t?"?"+t:""}}return e&&"."!==e||!i.route.index||(s.search=s.search?s.search.replace(/^\?/,"?index&"):"?index"),"/"!==r&&(s.pathname="/"===s.pathname?r:W([r,s.pathname])),g(s)}function ir(e){var n;let{key:t}=void 0===e?{}:e,{router:r}=Xt(Zt.UseFetcher),a=Gt(Kt.UseFetcher),i=o.useContext(_t),s=o.useContext(un),l=null==(n=s.matches[s.matches.length-1])?void 0:n.route.id;i||f(!1),s||f(!1),null==l&&f(!1);let c=Mt?Mt():"",[d,A]=o.useState(t||c);t&&t!==d?A(t):d||A(rr()),o.useEffect(()=>(r.getFetcher(d),()=>{r.deleteFetcher(d)}),[r,d]);let u=o.useCallback((e,n)=>{l||f(!1),r.fetch(d,l,e,n)},[d,l,r]),p=or(),h=o.useCallback((e,n)=>{p(e,ht({},n,{navigate:!1,fetcherKey:d}))},[d,p]),m=o.useMemo(()=>o.forwardRef((e,n)=>o.createElement(Ht,ht({},e,{navigate:!1,fetcherKey:d,ref:n}))),[d]),g=a.fetchers.get(d)||fe,b=i.get(d);return o.useMemo(()=>ht({Form:m,submit:h,load:u},g,{data:b}),[m,h,u,g,b])}function sr(){let e=Gt(Kt.UseFetchers);return Array.from(e.fetchers.entries()).map(e=>{let[n,t]=e;return ht({},t,{key:n})})}const lr="react-router-scroll-positions";let cr={};function dr(e){let{getKey:n,storageKey:t}=void 0===e?{}:e,{router:r}=Xt(Zt.UseScrollRestoration),{restoreScrollPosition:a,preventScrollReset:i}=Gt(Kt.UseScrollRestoration),{basename:s}=o.useContext(dn),l=mn(),c=Un(),d=Fn();o.useEffect(()=>(window.history.scrollRestoration="manual",()=>{window.history.scrollRestoration="auto"}),[]),function(e){let{capture:n}={};o.useEffect(()=>{let t=null!=n?{capture:n}:void 0;return window.addEventListener("pagehide",e,t),()=>{window.removeEventListener("pagehide",e,t)}},[e,n])}(o.useCallback(()=>{if("idle"===d.state){let e=(n?n(l,c):null)||l.key;cr[e]=window.scrollY}try{sessionStorage.setItem(t||lr,JSON.stringify(cr))}catch(e){}window.history.scrollRestoration="auto"},[t,n,d.state,l,c])),"undefined"!=typeof document&&(o.useLayoutEffect(()=>{try{let e=sessionStorage.getItem(t||lr);e&&(cr=JSON.parse(e))}catch(e){}},[t]),o.useLayoutEffect(()=>{let e=n&&"/"!==s?(e,t)=>n(ht({},e,{pathname:I(e.pathname,s)||e.pathname}),t):n,t=null==r?void 0:r.enableScrollRestoration(cr,()=>window.scrollY,e);return()=>t&&t()},[r,s,n]),o.useLayoutEffect(()=>{if(!1!==a)if("number"!=typeof a){if(l.hash){let e=document.getElementById(decodeURIComponent(l.hash.slice(1)));if(e)return void e.scrollIntoView()}!0!==i&&window.scrollTo(0,0)}else window.scrollTo(0,a)},[l,a,i]))}function Ar(e,n){let{capture:t}=n||{};o.useEffect(()=>{let n=null!=t?{capture:t}:void 0;return window.addEventListener("beforeunload",e,n),()=>{window.removeEventListener("beforeunload",e,n)}},[e,t])}function ur(e){let{when:n,message:t}=e,r=Jn(n);o.useEffect(()=>{"blocked"===r.state&&(window.confirm(t)?setTimeout(r.proceed,0):r.reset())},[r,t]),o.useEffect(()=>{"blocked"!==r.state||n||r.reset()},[r,n])}function fr(e,n){void 0===n&&(n={});let t=o.useContext(Pt);null==t&&f(!1);let{basename:r}=Xt(Zt.useViewTransitionState),a=kn(e,{relative:n.relative});if(!t.isTransitioning)return!1;let i=I(t.currentLocation.pathname,r)||t.currentLocation.pathname,s=I(t.nextLocation.pathname,r)||t.nextLocation.pathname;return null!=L(a.pathname,s)||null!=L(a.pathname,i)}},3259:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.SourceDataViewer=void 0;const r=t(4848),o=t(6540);n.SourceDataViewer=({sourceId:e,apiBaseUrl:n,context:t})=>{const[a,i]=(0,o.useState)([]),[s,l]=(0,o.useState)(!1),[c,d]=(0,o.useState)(null),[A,u]=(0,o.useState)(!0),f=(0,o.useRef)(null);(0,o.useEffect)(()=>(p(),A&&(f.current=setInterval(p,2e3)),()=>{f.current&&clearInterval(f.current)}),[e,t,A]);const p=async()=>{try{l(!0);let r=`${n}/sources/${e}/data`;t&&(r+=`?context=${t}`);const o=await fetch(r);if(!o.ok){const e=await o.json();throw new Error(e.error||"Failed to fetch data")}const a=await o.json();i(a.data||[]),d(null)}catch(e){d(`Failed to load data: ${e.message}`),console.error(e)}finally{l(!1)}};return(0,r.jsxs)("div",{className:"source-data-viewer",children:[(0,r.jsxs)("div",{className:"data-viewer-header",children:[(0,r.jsx)("h3",{children:"Emitted Data"}),(0,r.jsxs)("div",{className:"data-viewer-controls",children:[(0,r.jsxs)("label",{className:"auto-refresh-toggle",children:[(0,r.jsx)("input",{type:"checkbox",checked:A,onChange:e=>u(e.target.checked)}),"Auto-refresh"]}),(0,r.jsx)("button",{onClick:p,disabled:s,children:"Refresh"}),(0,r.jsx)("button",{onClick:()=>{const n=JSON.stringify(a,null,2),t=new Blob([n],{type:"application/json"}),r=URL.createObjectURL(t),o=document.createElement("a");o.href=r,o.download=`source-${e}-data-${Date.now()}.json`,o.click(),URL.revokeObjectURL(r)},disabled:0===a.length,children:"Export"}),(0,r.jsx)("button",{onClick:async()=>{try{let r=`${n}/sources/${e}/data`;if(t&&(r+=`?context=${t}`),!(await fetch(r,{method:"DELETE"})).ok)throw new Error("Failed to clear data");i([])}catch(e){d(`Failed to clear data: ${e.message}`),console.error(e)}},disabled:0===a.length,children:"Clear"})]})]}),c&&(0,r.jsx)("div",{className:"data-viewer-error",children:c}),(0,r.jsx)("div",{className:"data-entries",children:0===a.length?(0,r.jsxs)("div",{className:"no-data",children:[(0,r.jsx)("p",{children:"No data emitted yet"}),(0,r.jsx)("p",{className:"hint",children:"Data emitted via source.emit() will appear here"})]}):(0,r.jsx)("div",{className:"entries-list",children:a.slice().reverse().map((e,n)=>{return(0,r.jsxs)("div",{className:"data-entry",children:[(0,r.jsxs)("div",{className:"entry-header",children:[(0,r.jsx)("span",{className:"entry-timestamp",children:(t=e.timestamp,new Date(t).toLocaleString())}),e.metadata&&(0,r.jsxs)("span",{className:"entry-metadata",children:[Object.keys(e.metadata).length," metadata fields"]})]}),(0,r.jsx)("div",{className:"entry-data",children:(0,r.jsx)("pre",{children:JSON.stringify(e.data,null,2)})}),e.metadata&&(0,r.jsxs)("details",{className:"entry-metadata-details",children:[(0,r.jsx)("summary",{children:"Metadata"}),(0,r.jsx)("pre",{children:JSON.stringify(e.metadata,null,2)})]})]},n);var t})})}),(0,r.jsx)("div",{className:"data-viewer-footer",children:(0,r.jsxs)("span",{children:[a.length," entries (max 50)"]})})]})}},3357:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.SourceWebhookEditor=void 0;const r=t(4848),o=t(6540),a=t(9573),i=t(3717),s=t(7370);n.SourceWebhookEditor=({sourceId:e,apiBaseUrl:n,webhookUrl:t})=>{const l=(0,a.useAppDispatch)(),c=(0,a.useAppSelector)(n=>n.formState.sources[e]||(0,s.getDefaultSourceFormState)()),{webhookHttpMethod:d,webhookUrl:A,webhookBody:u,webhookParams:f,webhookHeaders:p}=c,h=A||t,m=n=>{l((0,s.updateSourceState)({id:e,data:n}))},{getParam:g,setParam:b}=(0,i.useQueryParams)(),E=g("requestTab"),x=E&&["params","headers","body"].includes(E)?E:"body",C=(0,o.useCallback)(e=>{b("requestTab",e)},[b]),[B,y]=(0,o.useState)(null),[v,k]=(0,o.useState)(!1),[w,S]=(0,o.useState)(null),[j,N]=(0,o.useState)("body");(0,o.useEffect)(()=>{y(null),S(null)},[e]),(0,o.useEffect)(()=>{if(w){const e=setTimeout(()=>{S(null)},1e4);return()=>clearTimeout(e)}},[w]);const z=e=>{m("params"===e?{webhookParams:[...f,{key:"",value:"",enabled:!0}]}:{webhookHeaders:[...p,{key:"",value:"",enabled:!0}]})},P=(e,n,t,r)=>{if("params"===e){const e=[...f];e[n]={...e[n],[t]:r},m({webhookParams:e})}else{const e=[...p];e[n]={...e[n],[t]:r},m({webhookHeaders:e})}},_=(e,n)=>{m("params"===e?{webhookParams:f.filter((e,t)=>t!==n)}:{webhookHeaders:p.filter((e,t)=>t!==n)})};return(0,r.jsxs)("div",{className:"webhook-editor",children:[(0,r.jsxs)("div",{className:"request-section",children:[(0,r.jsxs)("div",{className:"url-bar",children:[(0,r.jsxs)("select",{className:"http-method-select",value:d,onChange:e=>m({webhookHttpMethod:e.target.value}),children:[(0,r.jsx)("option",{value:"GET",children:"GET"}),(0,r.jsx)("option",{value:"POST",children:"POST"}),(0,r.jsx)("option",{value:"PUT",children:"PUT"}),(0,r.jsx)("option",{value:"DELETE",children:"DELETE"}),(0,r.jsx)("option",{value:"PATCH",children:"PATCH"})]}),(0,r.jsx)("input",{type:"text",className:"url-input",value:h,onChange:e=>m({webhookUrl:e.target.value}),placeholder:"Webhook URL"}),(0,r.jsx)("button",{className:"send-button",onClick:async()=>{try{k(!0),S(null),y(null);const e=performance.now();let n={};if(u.trim())try{n=JSON.parse(u)}catch(n){const t=Math.round(performance.now()-e);return y({result:null,input:u,executionTime:t,error:{message:"Invalid JSON in request body",stack:String(n)}}),void k(!1)}const t=await fetch(h,{method:d,headers:{"Content-Type":"application/json"},body:"GET"!==d&&"HEAD"!==d?JSON.stringify(n):void 0}),r=t.status,o=t.statusText,a=[];t.headers.forEach((e,n)=>{a.push([n,e])});const i=await t.text();let s;try{s=JSON.parse(i)}catch(e){s=i}const l=Math.round(performance.now()-e);y({result:s,input:"GET"===d||"HEAD"===d?null:n,executionTime:l,status:r,statusText:o,headers:a})}catch(e){const n=Math.round(performance.now()-Date.now());y({result:null,input:"GET"===d||"HEAD"===d?null:u,executionTime:n,error:{message:e.message||"Unknown error",stack:e.stack}})}finally{k(!1)}},disabled:v,children:v?"Sending...":"Send"})]}),(0,r.jsxs)("div",{className:"request-tabs",children:[(0,r.jsxs)("div",{className:"tab-headers",children:[(0,r.jsx)("button",{className:"tab-header "+("params"===x?"active":""),onClick:()=>C("params"),children:"Params"}),(0,r.jsx)("button",{className:"tab-header "+("headers"===x?"active":""),onClick:()=>C("headers"),children:"Headers"}),(0,r.jsx)("button",{className:"tab-header "+("body"===x?"active":""),onClick:()=>C("body"),children:"Body"})]}),(0,r.jsxs)("div",{className:"tab-content",children:["params"===x&&(0,r.jsxs)("div",{className:"key-value-editor",children:[(0,r.jsxs)("div",{className:"key-value-header",children:[(0,r.jsx)("span",{className:"col-checkbox"}),(0,r.jsx)("span",{className:"col-key",children:"Key"}),(0,r.jsx)("span",{className:"col-value",children:"Value"}),(0,r.jsx)("span",{className:"col-actions"})]}),f.map((e,n)=>(0,r.jsxs)("div",{className:"key-value-row",children:[(0,r.jsx)("input",{type:"checkbox",checked:e.enabled,onChange:e=>P("params",n,"enabled",e.target.checked)}),(0,r.jsx)("input",{type:"text",value:e.key,onChange:e=>P("params",n,"key",e.target.value),placeholder:"Key"}),(0,r.jsx)("input",{type:"text",value:e.value,onChange:e=>P("params",n,"value",e.target.value),placeholder:"Value"}),(0,r.jsx)("button",{className:"remove-btn",onClick:()=>_("params",n),children:"×"})]},n)),(0,r.jsx)("button",{className:"add-btn",onClick:()=>z("params"),children:"Add Parameter"})]}),"headers"===x&&(0,r.jsxs)("div",{className:"key-value-editor",children:[(0,r.jsxs)("div",{className:"key-value-header",children:[(0,r.jsx)("span",{className:"col-checkbox"}),(0,r.jsx)("span",{className:"col-key",children:"Key"}),(0,r.jsx)("span",{className:"col-value",children:"Value"}),(0,r.jsx)("span",{className:"col-actions"})]}),p.map((e,n)=>(0,r.jsxs)("div",{className:"key-value-row",children:[(0,r.jsx)("input",{type:"checkbox",checked:e.enabled,onChange:e=>P("headers",n,"enabled",e.target.checked)}),(0,r.jsx)("input",{type:"text",value:e.key,onChange:e=>P("headers",n,"key",e.target.value),placeholder:"Key"}),(0,r.jsx)("input",{type:"text",value:e.value,onChange:e=>P("headers",n,"value",e.target.value),placeholder:"Value"}),(0,r.jsx)("button",{className:"remove-btn",onClick:()=>_("headers",n),children:"×"})]},n)),(0,r.jsx)("button",{className:"add-btn",onClick:()=>z("headers"),children:"Add Header"})]}),"body"===x&&(0,r.jsxs)("div",{className:"body-editor",children:[(0,r.jsx)("div",{className:"body-actions",children:(0,r.jsx)("button",{className:"action-button secondary",onClick:async()=>{try{k(!0),S(null);const t=await fetch(`${n}/sources/${e}/generate-mock`,{method:"POST",headers:{"Content-Type":"application/json"}});if(!t.ok){const e=await t.json();throw new Error(e.error||"Failed to generate mock data")}const r=await t.json();m({webhookBody:JSON.stringify(r.data,null,2)})}catch(e){S(`Failed to generate mock data: ${e.message}`),console.error(e)}finally{k(!1)}},disabled:v,children:"Generate Mock Data (from Schema)"})}),(0,r.jsx)("textarea",{className:"body-textarea",value:u,onChange:e=>m({webhookBody:e.target.value}),placeholder:"Enter JSON request body..."}),(0,r.jsx)("div",{className:"body-note",children:"Note: Data sent to the source does not need to follow the schema. Only data emitted from the source must follow the schema."})]})]})]})]}),(0,r.jsxs)("div",{className:"response-section",children:[(0,r.jsxs)("div",{className:"response-header",children:[(0,r.jsx)("h4",{children:"Response"}),B&&(0,r.jsxs)("div",{className:"response-meta",children:[(0,r.jsxs)("span",{className:"execution-time",children:[B.executionTime,"ms"]}),B.status&&(0,r.jsxs)("span",{className:`http-status status-${Math.floor(B.status/100)}xx`,children:[B.status," ",B.statusText]})]})]}),B?(0,r.jsxs)("div",{className:"response-tabs",children:[(0,r.jsxs)("div",{className:"tab-headers",children:[(0,r.jsx)("button",{className:"tab-header "+("body"===j?"active":""),onClick:()=>N("body"),children:"Body"}),(0,r.jsx)("button",{className:"tab-header "+("headers"===j?"active":""),onClick:()=>N("headers"),children:"Headers"})]}),(0,r.jsxs)("div",{className:"tab-content",children:["body"===j&&(0,r.jsx)("div",{className:"response-data",children:B.error?(0,r.jsxs)("div",{className:"response-error",children:[(0,r.jsx)("h5",{children:"Execution Error"}),(0,r.jsx)("pre",{children:B.error.message}),B.error.stack&&(0,r.jsxs)("details",{children:[(0,r.jsx)("summary",{children:"Stack trace"}),(0,r.jsx)("pre",{children:B.error.stack})]})]}):(0,r.jsx)("div",{className:"response-body",children:(0,r.jsx)("pre",{children:"string"==typeof B.result?B.result:JSON.stringify(B.result,null,2)})})}),"headers"===j&&(0,r.jsx)("div",{className:"response-headers",children:B.headers&&B.headers.length>0?(0,r.jsxs)("div",{className:"key-value-editor",children:[(0,r.jsxs)("div",{className:"key-value-header",children:[(0,r.jsx)("span",{className:"col-key",children:"Key"}),(0,r.jsx)("span",{className:"col-value",children:"Value"})]}),B.headers.map(([e,n],t)=>(0,r.jsxs)("div",{className:"key-value-row",children:[(0,r.jsx)("input",{type:"text",value:e,readOnly:!0,className:"header-key"}),(0,r.jsx)("input",{type:"text",value:n,readOnly:!0,className:"header-value"})]},t))]}):(0,r.jsx)("div",{className:"no-headers",children:(0,r.jsx)("p",{children:"No response headers"})})})]})]}):(0,r.jsx)("div",{className:"response-content",children:(0,r.jsx)("div",{className:"no-response",children:(0,r.jsx)("p",{children:"Send a request to see the response"})})})]}),w&&(0,r.jsx)("div",{className:"toast-notification toast-error",children:(0,r.jsxs)("div",{className:"toast-content",children:[(0,r.jsx)("strong",{children:"Error"}),(0,r.jsx)("div",{className:"toast-message",children:w})]})})]})}},3468:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.SourceJobsSection=void 0;const r=t(4848),o=t(6540),a=t(3717),i=t(3259);n.SourceJobsSection=({sourceId:e,jobs:n,apiBaseUrl:t})=>{const{getParam:s,setParams:l}=(0,a.useQueryParams)(),[c,d]=(0,o.useState)([]),[A,u]=(0,o.useState)(!1),[f,p]=(0,o.useState)(!1),[h,m]=(0,o.useState)(null),g=Object.entries(n),b=s("sourceJob"),E=s("execution"),x=g.find(([e])=>e===b)?.[0]||null,C=c.find(e=>e.timestamp?.toString()===E)||null,B=(0,o.useCallback)((e,n=!1)=>{l({sourceJob:e,execution:null},n)},[l]),y=(0,o.useCallback)((e,n=!1)=>{l({execution:e.timestamp.toString()},n)},[l]);(0,o.useEffect)(()=>{g.length>0&&!b&&B(g[0][0],!0)},[g,b]),(0,o.useEffect)(()=>{x&&v(x)},[x]),(0,o.useEffect)(()=>{c.length>0&&!E&&y(c[0],!0)},[c,E]);const v=async n=>{try{const r=await fetch(`${t}/sources/${e}/jobs/${n}/executions`);if(!r.ok)throw new Error("Failed to fetch executions");const o=(await r.json()).executions||[];d(o),0===o.length&&l({execution:null})}catch(e){console.error(`Failed to fetch executions for job ${n}:`,e),d([]),l({execution:null})}},k=e=>new Date(e).toLocaleString();return(0,r.jsxs)("div",{className:"source-jobs-container",children:[(0,r.jsxs)("div",{className:"source-jobs-controls",children:[(0,r.jsxs)("div",{className:"job-selector-group",children:[(0,r.jsx)("label",{htmlFor:"job-select",children:"Source Job:"}),(0,r.jsx)("select",{id:"job-select",value:x||"",onChange:e=>B(e.target.value),disabled:0===g.length,children:0===g.length?(0,r.jsx)("option",{value:"",children:"No jobs defined"}):g.map(([e,n])=>(0,r.jsxs)("option",{value:e,children:[e," - ",n.description||"No description"]},e))})]}),x&&(0,r.jsx)("button",{className:"start-job-btn",onClick:()=>(async n=>{try{p(!0),m(null);const r=await fetch(`${t}/sources/${e}/jobs/${n}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({parameters:{}})});if(!r.ok){const e=await r.json();throw new Error(e.error||"Failed to run job")}await v(n)}catch(e){m(`Failed to run job ${n}: ${e.message}`),console.error(e)}finally{p(!1)}})(x),disabled:f,children:f?"Running...":"Run Job"})]}),(0,r.jsxs)("div",{className:"source-jobs-panels",children:[(0,r.jsxs)("div",{className:"executions-panel",children:[(0,r.jsxs)("div",{className:"executions-header",children:[(0,r.jsx)("h4",{children:"Execution History"}),x&&(0,r.jsxs)("span",{className:"selected-job",children:["Job: ",x]})]}),(0,r.jsx)("div",{className:"executions-list",children:0===c.length?(0,r.jsx)("div",{className:"no-executions",children:(0,r.jsx)("p",{children:x?"No executions yet":"Select a job to see executions"})}):c.map((e,n)=>{return(0,r.jsxs)("div",{className:"execution-item "+(C===e?"active":""),onClick:()=>y(e),children:[(0,r.jsxs)("div",{className:"execution-status",children:[(0,r.jsx)("span",{className:"status-dot",style:{backgroundColor:(t=e.success,t?"#28a745":"#dc3545")}}),(0,r.jsx)("span",{className:"status-text",children:e.success?"Completed":"Failed"})]}),(0,r.jsxs)("div",{className:"execution-time",children:[(0,r.jsx)("div",{className:"started-at",children:k(e.timestamp)}),(0,r.jsxs)("div",{className:"execution-duration",children:["Duration: ",e.executionTime,"ms"]})]}),(0,r.jsx)("div",{className:"execution-stats",children:(0,r.jsx)("span",{className:"state-count",children:"1 state"})}),e.error&&(0,r.jsxs)("div",{className:"execution-error",children:["Error: ",e.error]})]},n);var t})})]}),(0,r.jsxs)("div",{className:"source-jobs-right-column",children:[(0,r.jsxs)("div",{className:"states-panel",children:[(0,r.jsxs)("div",{className:"states-header",children:[(0,r.jsx)("h4",{children:"Job States"}),C&&(0,r.jsxs)("span",{className:"selected-execution",children:["Execution: ",C.timestamp.toString().slice(0,8),"..."]})]}),(0,r.jsx)("div",{className:"states-list",children:C?(0,r.jsxs)(r.Fragment,{children:[C.result&&(0,r.jsxs)("div",{className:"state-item",children:[(0,r.jsxs)("div",{className:"state-header",onClick:()=>u(!A),children:[(0,r.jsxs)("div",{className:"state-meta",children:[(0,r.jsxs)("div",{className:"state-primary-info",children:[(0,r.jsx)("span",{className:"state-timestamp",children:k(C.timestamp)}),(0,r.jsx)("span",{className:"state-phase perform",children:"PERFORM"})]}),(0,r.jsx)("div",{className:"state-secondary-info",children:(0,r.jsx)("span",{className:"state-status "+(C.success?"complete":"error"),children:C.success?"Completed":"Error"})})]}),(0,r.jsx)("div",{className:"state-expand",children:(0,r.jsx)("span",{className:"expand-icon "+(A?"expanded":""),children:"▼"})})]}),A&&(0,r.jsx)("div",{className:"state-content",children:(0,r.jsx)("pre",{children:JSON.stringify(C.result,null,2)})})]}),C.error&&!C.result&&(0,r.jsxs)("div",{className:"state-item",children:[(0,r.jsxs)("div",{className:"state-header",onClick:()=>u(!A),children:[(0,r.jsxs)("div",{className:"state-meta",children:[(0,r.jsxs)("div",{className:"state-primary-info",children:[(0,r.jsx)("span",{className:"state-timestamp",children:k(C.timestamp)}),(0,r.jsx)("span",{className:"state-phase perform",children:"PERFORM"})]}),(0,r.jsx)("div",{className:"state-secondary-info",children:(0,r.jsx)("span",{className:"state-status error",children:"Error"})})]}),(0,r.jsx)("div",{className:"state-expand",children:(0,r.jsx)("span",{className:"expand-icon "+(A?"expanded":""),children:"▼"})})]}),A&&(0,r.jsx)("div",{className:"state-content",children:(0,r.jsx)("pre",{children:C.error})})]})]}):(0,r.jsx)("div",{className:"no-states",children:(0,r.jsx)("p",{children:"Select an execution to see states"})})})]}),(0,r.jsx)("div",{className:"source-panel",children:(0,r.jsx)(i.SourceDataViewer,{sourceId:e,apiBaseUrl:t,context:"job"})})]})]}),h&&(0,r.jsx)("div",{className:"toast-notification toast-error",children:(0,r.jsxs)("div",{className:"toast-content",children:[(0,r.jsx)("strong",{children:"Error"}),(0,r.jsx)("div",{className:"toast-message",children:h})]})})]})}},3717:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.useQueryParams=function(){const[e,n]=(0,r.useSearchParams)();return{getParam:(0,o.useCallback)(n=>e.get(n),[e]),setParam:(0,o.useCallback)((e,t,r)=>{n(n=>{const r=new URLSearchParams(n);return null==t?r.delete(e):r.set(e,t),r},{replace:r})},[n]),setParams:(0,o.useCallback)((e,t)=>{n(n=>{const t=new URLSearchParams(n);return Object.entries(e).forEach(([e,n])=>{null==n?t.delete(e):t.set(e,n)}),t},{replace:t})},[n]),searchParams:e}};const r=t(2648),o=t(6540)},3729:(e,n,t)=>{e.exports=t(7372)},3808:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.SourceLifecycleSection=void 0;const r=t(4848),o=t(6540);n.SourceLifecycleSection=({sourceId:e,apiBaseUrl:n})=>{const[t,a]=(0,o.useState)({}),[i,s]=(0,o.useState)(null);return(0,r.jsx)("div",{className:"source-lifecycle-container",children:(0,r.jsxs)("div",{className:"lifecycle-two-panel",children:[(0,r.jsxs)("div",{className:"lifecycle-methods-panel",children:[(0,r.jsxs)("div",{className:"panel-header",children:[(0,r.jsx)("h3",{children:"Lifecycle Hooks"}),(0,r.jsxs)("p",{className:"panel-description",children:["Trigger lifecycle callbacks for ",(0,r.jsx)("strong",{children:e})]})]}),(0,r.jsx)("div",{className:"lifecycle-methods-list",children:[{id:"create",label:"Create",description:"Setup source webhooks"},{id:"update",label:"Update",description:"Update source configuration"},{id:"delete",label:"Delete",description:"Cleanup tasks"},{id:"enable",label:"Enable",description:"Enable source"},{id:"pause",label:"Pause",description:"Pause source"}].map(o=>(0,r.jsx)("div",{className:"lifecycle-method-item",children:(0,r.jsxs)("div",{className:"method-header",children:[(0,r.jsxs)("div",{className:"method-info",children:[(0,r.jsx)("h4",{children:o.label}),(0,r.jsx)("p",{children:o.description})]}),(0,r.jsx)("button",{className:"lifecycle-trigger-btn",onClick:()=>(async t=>{try{a(e=>({...e,[t]:!0}));const r=await fetch(`${n}/sources/${e}/${t}`,{method:"POST",headers:{"Content-Type":"application/json"}});if(!r.ok){const e=await r.json();throw new Error(e.error||`Failed to execute ${t}`)}const o=(await r.json()).result;s({action:t,timestamp:Date.now(),success:o.success,message:o.message})}catch(e){s({action:t,timestamp:Date.now(),success:!1,message:e.message}),console.error(e)}finally{a(e=>({...e,[t]:!1}))}})(o.id),disabled:t[o.id],children:t[o.id]?"Running...":"Trigger"})]})},o.id))})]}),(0,r.jsxs)("div",{className:"lifecycle-response-panel",children:[(0,r.jsx)("div",{className:"panel-header",children:(0,r.jsx)("h3",{children:"Response"})}),(0,r.jsx)("div",{className:"response-content",children:i?(0,r.jsxs)("div",{className:"response-details",children:[(0,r.jsxs)("div",{className:"response-header",children:[(0,r.jsxs)("div",{className:"response-status "+(i.success?"success":"error"),children:[(0,r.jsx)("span",{className:"status-dot"}),(0,r.jsx)("span",{className:"status-text",children:i.success?"Success":"Error"})]}),(0,r.jsxs)("div",{className:"response-meta",children:[(0,r.jsx)("span",{className:"response-action",children:i.action}),(0,r.jsx)("span",{className:"response-time",children:(l=i.timestamp,new Date(l).toLocaleString())})]})]}),i.message&&(0,r.jsxs)("div",{className:"response-message",children:[(0,r.jsx)("label",{children:"Message:"}),(0,r.jsx)("pre",{children:i.message})]})]}):(0,r.jsxs)("div",{className:"no-response",children:[(0,r.jsx)("p",{children:"No lifecycle hook has been triggered yet."}),(0,r.jsx)("p",{className:"hint",children:'Click a "Trigger" button to execute a lifecycle hook.'})]})})]})]})});var l}},4029:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.SourcesView=void 0;const r=t(4848),o=t(6540),a=t(2648),i=t(278),s=t(4202),l=t(3357),c=t(3259),d=t(3468),A=t(3808);n.SourcesView=({apiBaseUrl:e,appInstalled:n,buildStatus:t})=>{const u=(0,a.useLocation)(),[f,p]=(0,o.useState)([]),[h,m]=(0,o.useState)(!0),[g,b]=(0,o.useState)(null),E=u.pathname.split("/").filter(Boolean),x=E.length>1?E[1]:null,{navigateToEntity:C,activeTab:B,setActiveTab:y}=(0,i.useEntityNavigation)({basePath:"/sources",entityName:"source",entities:f,selectedEntityId:x,defaultTab:"schema",validTabs:["schema","webhook","jobs","lifecycle"]});(0,o.useEffect)(()=>{n&&v()},[n]);const v=async()=>{try{m(!0);const n=await fetch(`${e}/sources`),t=await n.json();p(t.sources||[]),b(null)}catch(e){b(`Failed to load sources: ${e.message}`)}finally{m(!1)}};if(t?.buildInProgress||null===t?.lastBuildSuccess&&null===t?.lastBuildTimestamp)return(0,r.jsx)("div",{className:"sources-not-installed",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Building App..."}),(0,r.jsx)("p",{children:"Please wait while the app is being built."}),(0,r.jsx)("div",{className:"spinner"})]})});if(!1===t?.lastBuildSuccess)return(0,r.jsx)("div",{className:"sources-not-installed",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Build Failed"}),(0,r.jsx)("p",{children:"The app failed to build. Please check the console for errors."}),t.lastBuildError&&(0,r.jsx)("pre",{className:"error-details",children:t.lastBuildError})]})});if(!n)return(0,r.jsx)("div",{className:"sources-not-installed",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Sources Not Available"}),(0,r.jsx)("p",{children:"Install your app first to configure sources. Sources will appear here after installation."})]})});if(h)return(0,r.jsx)("div",{className:"destinations-view",children:(0,r.jsx)("div",{className:"placeholder-content",children:(0,r.jsx)("p",{children:"Loading sources..."})})});if(g)return(0,r.jsx)("div",{className:"destinations-view",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Error"}),(0,r.jsx)("p",{children:g})]})});if(0===f.length)return(0,r.jsx)("div",{className:"destinations-view",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"No Sources Found"}),(0,r.jsx)("p",{children:"No sources defined in app.yml"})]})});const k=f.find(e=>e.id===x);return(0,r.jsx)("div",{className:"destinations-view",children:(0,r.jsxs)("div",{className:"destinations-layout",children:[(0,r.jsxs)("div",{className:"destinations-sidebar",children:[(0,r.jsx)("div",{className:"destinations-header",children:(0,r.jsx)("h4",{children:"Sources"})}),(0,r.jsx)("div",{className:"destinations-list",children:f.map(e=>(0,r.jsxs)("div",{className:"destination-item "+(x===e.id?"active":""),onClick:()=>C(e.id),children:[(0,r.jsx)("div",{className:"destination-name",children:e.id}),(0,r.jsx)("div",{className:"destination-description",children:e.description})]},e.id))})]}),(0,r.jsx)("div",{className:"destinations-content",children:x&&k?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"source-tabs",children:[(0,r.jsx)("button",{className:"source-tab "+("schema"===B?"active":""),onClick:()=>y?.("schema"),children:"Schema"}),(0,r.jsx)("button",{className:"source-tab "+("webhook"===B?"active":""),onClick:()=>y?.("webhook"),children:"Function"}),k?.jobs&&Object.keys(k.jobs).length>0&&(0,r.jsx)("button",{className:"source-tab "+("jobs"===B?"active":""),onClick:()=>y?.("jobs"),children:"Jobs"}),(0,r.jsx)("button",{className:"source-tab "+("lifecycle"===B?"active":""),onClick:()=>y?.("lifecycle"),children:"Lifecycle"})]}),(0,r.jsxs)("div",{className:"source-tab-content",children:["schema"===B&&(0,r.jsx)("div",{className:"source-schema-full-width",children:(0,r.jsx)(s.SourceSchemaViewer,{sourceId:x,apiBaseUrl:e})}),"webhook"===B&&(0,r.jsxs)("div",{className:"source-tab-panel",children:[(0,r.jsx)("div",{className:"source-main-section",children:(0,r.jsx)("div",{className:"source-panel",children:(0,r.jsx)(l.SourceWebhookEditor,{sourceId:x,apiBaseUrl:e,webhookUrl:k.webhookUrl})})}),(0,r.jsx)("div",{className:"source-side-panels",children:(0,r.jsx)("div",{className:"source-panel",children:(0,r.jsx)(c.SourceDataViewer,{sourceId:x,apiBaseUrl:e,context:"webhook"})})})]}),"jobs"===B&&(0,r.jsx)("div",{className:"source-jobs-full-width",children:(0,r.jsx)(d.SourceJobsSection,{sourceId:x,jobs:k.jobs||{},apiBaseUrl:e})}),"lifecycle"===B&&(0,r.jsx)("div",{className:"source-lifecycle-full-width",children:(0,r.jsx)(A.SourceLifecycleSection,{sourceId:x,apiBaseUrl:e})})]})]}):(0,r.jsx)("div",{className:"no-destination-selected",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Select a Source"}),(0,r.jsx)("p",{children:"Choose a source from the sidebar to view its schema and test it"})]})})})]})})}},4202:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.SourceSchemaViewer=void 0;const r=t(4848),o=t(6540);n.SourceSchemaViewer=({sourceId:e,apiBaseUrl:n})=>{const[t,a]=(0,o.useState)(null),[i,s]=(0,o.useState)(!0),[l,c]=(0,o.useState)(null),[d,A]=(0,o.useState)(new Set);(0,o.useEffect)(()=>{u()},[e]);const u=async()=>{try{s(!0),c(null);const t=await fetch(`${n}/sources/${e}/schema`);if(!t.ok){const e=await t.json();throw new Error(e.error||"Failed to load schema")}const r=await t.json();a(r.schema)}catch(e){c(e.message),console.error("Failed to load schema:",e)}finally{s(!1)}},f=e=>(0,r.jsxs)("tr",{className:e.primary?"primary-field":"",children:[(0,r.jsx)("td",{className:"field-name",children:e.name}),(0,r.jsx)("td",{className:"field-display-name",children:e.display_name}),(0,r.jsxs)("td",{className:"field-type",children:[(0,r.jsx)("span",{className:`type-badge type-${e.type.replace(/[^a-z]/gi,"")}`,children:e.type}),e.primary&&(0,r.jsx)("span",{className:"primary-badge",children:"PRIMARY"})]}),(0,r.jsx)("td",{className:"field-description",children:e.description})]},e.name);return i?(0,r.jsx)("div",{className:"schema-viewer",children:"Loading schema..."}):l?(0,r.jsxs)("div",{className:"schema-viewer error",children:[(0,r.jsx)("h3",{children:"Schema Error"}),(0,r.jsx)("p",{children:l})]}):t?"string"==typeof t?(0,r.jsx)("div",{className:"schema-viewer",children:(0,r.jsxs)("div",{className:"schema-header",children:[(0,r.jsxs)("h4",{children:["Schema Type: ",t]}),(0,r.jsx)("p",{className:"schema-description",children:"Static schema identifier"})]})}):(0,r.jsxs)("div",{className:"schema-viewer",children:[(0,r.jsxs)("div",{className:"schema-header",children:[(0,r.jsx)("h4",{children:t.display_name||"Schema"}),(0,r.jsx)("p",{className:"schema-description",children:t.description||""})]}),t.fields&&t.fields.length>0&&(0,r.jsxs)("div",{className:"schema-fields",children:[(0,r.jsx)("h4",{children:"Fields"}),(0,r.jsxs)("table",{className:"fields-table",children:[(0,r.jsx)("thead",{children:(0,r.jsxs)("tr",{children:[(0,r.jsx)("th",{children:"Name"}),(0,r.jsx)("th",{children:"Display Name"}),(0,r.jsx)("th",{children:"Type"}),(0,r.jsx)("th",{children:"Description"})]})}),(0,r.jsx)("tbody",{children:t.fields.map(f)})]})]}),t.custom_types&&t.custom_types.length>0&&(0,r.jsxs)("div",{className:"schema-custom-types",children:[(0,r.jsx)("h4",{children:"Custom Types"}),t.custom_types.map(e=>(0,r.jsxs)("div",{className:"custom-type",children:[(0,r.jsxs)("div",{className:"custom-type-header",onClick:()=>{return n=e.name,void A(e=>{const t=new Set(e);return t.has(n)?t.delete(n):t.add(n),t});var n},children:[(0,r.jsx)("span",{className:"expand-icon",children:d.has(e.name)?"▼":"▶"}),(0,r.jsx)("span",{className:"custom-type-name",children:e.display_name}),(0,r.jsx)("span",{className:"custom-type-description",children:e.description})]}),d.has(e.name)&&(0,r.jsxs)("table",{className:"fields-table",children:[(0,r.jsx)("thead",{children:(0,r.jsxs)("tr",{children:[(0,r.jsx)("th",{children:"Name"}),(0,r.jsx)("th",{children:"Display Name"}),(0,r.jsx)("th",{children:"Type"}),(0,r.jsx)("th",{children:"Description"})]})}),(0,r.jsx)("tbody",{children:e.fields.map(f)})]})]},e.name))]})]}):(0,r.jsx)("div",{className:"schema-viewer",children:"No schema available"})}},4217:function(e,n,t){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(n,"__esModule",{value:!0});const o=t(4848),a=t(6540),i=r(t(8281)),s=t(3717);n.default=({logs:e,onClearLogs:n,storeTimestamps:t,onRefreshStores:r,notificationCount:l=0})=>{const{getParam:c,setParam:d}=(0,s.useQueryParams)(),A=c("console")||"console",[u,f]=(0,a.useState)(()=>{const e=localStorage.getItem("consoleExpanded");return!!e&&JSON.parse(e)}),[p,h]=(0,a.useState)(()=>{const e=localStorage.getItem("consoleHeight");return e?parseInt(e,10):200}),[m,g]=(0,a.useState)("app"),[b,E]=(0,a.useState)("all"),[x,C]=(0,a.useState)("all"),B=(0,a.useRef)({isMouseDown:!1,isDragging:!1,startY:0,startHeight:200}),y=["function","lifecycle","jobs","notifications"],v=["build","destination","kvstore","settings","secrets","config","ipc","process"];(0,a.useEffect)(()=>{localStorage.setItem("consoleExpanded",JSON.stringify(u))},[u]),(0,a.useEffect)(()=>{localStorage.setItem("consoleHeight",String(p))},[p]);const k=e=>{d("console",e),u||f(!0)};return(0,o.jsxs)("div",{className:"console-panel "+(u?"expanded":"collapsed"),style:{height:u?`${p}px`:"32px"},children:[u&&(0,o.jsx)("div",{className:"console-resize-handle",onMouseDown:e=>{e.preventDefault(),e.stopPropagation(),B.current={isMouseDown:!0,isDragging:!1,startY:e.clientY,startHeight:p};const n=e=>{const n=B.current;if(n.isMouseDown){if(!n.isDragging){if(Math.abs(n.startY-e.clientY)<5)return;n.isDragging=!0,document.body.style.cursor="ns-resize",document.body.style.userSelect="none"}if(n.isDragging){const t=n.startY-e.clientY,r=n.startHeight+t,o=100,a=.8*window.innerHeight,i=Math.max(o,Math.min(a,r));h(i)}}},t=()=>{B.current={isMouseDown:!1,isDragging:!1,startY:0,startHeight:p},document.body.style.cursor="",document.body.style.userSelect="",document.removeEventListener("mousemove",n),document.removeEventListener("mouseup",t)};document.addEventListener("mousemove",n),document.addEventListener("mouseup",t)}}),(0,o.jsxs)("div",{className:"console-tab-headers",children:[(0,o.jsxs)("button",{className:"console-tab "+("console"===A?"active":""),onClick:()=>k("console"),children:[(0,o.jsx)("span",{className:"tab-icon",children:"📋"}),(0,o.jsx)("span",{className:"tab-label",children:"Console"}),(0,o.jsxs)("span",{className:"tab-count",children:["(",e.length,")"]})]}),(0,o.jsxs)("button",{className:"console-tab "+("settings"===A?"active":""),onClick:()=>k("settings"),children:[(0,o.jsx)("span",{className:"tab-icon",children:"⚙️"}),(0,o.jsx)("span",{className:"tab-label",children:"Settings"})]}),(0,o.jsxs)("button",{className:"console-tab "+("secrets"===A?"active":""),onClick:()=>k("secrets"),children:[(0,o.jsx)("span",{className:"tab-icon",children:"🔐"}),(0,o.jsx)("span",{className:"tab-label",children:"Secrets"})]}),(0,o.jsxs)("button",{className:"console-tab "+("kv"===A?"active":""),onClick:()=>k("kv"),children:[(0,o.jsx)("span",{className:"tab-icon",children:"🗃️"}),(0,o.jsx)("span",{className:"tab-label",children:"KV Store"})]}),(0,o.jsxs)("button",{className:"console-tab "+("sharedKv"===A?"active":""),onClick:()=>k("sharedKv"),children:[(0,o.jsx)("span",{className:"tab-icon",children:"🔗"}),(0,o.jsx)("span",{className:"tab-label",children:"Shared KV"})]}),(0,o.jsxs)("button",{className:"console-tab "+("notifications"===A?"active":""),onClick:()=>k("notifications"),children:[(0,o.jsx)("span",{className:"tab-icon",children:"🔔"}),(0,o.jsx)("span",{className:"tab-label",children:"Notifications"}),l>0&&(0,o.jsx)("span",{className:"notification-badge",children:l})]}),(0,o.jsx)("button",{className:"console-toggle",onClick:()=>f(!u),children:u?"▼":"▲"})]}),u&&(0,o.jsx)("div",{className:"console-content",children:(0,o.jsx)("div",{className:"console-tab-body",children:(()=>{switch(A){case"console":const a=(e=>{let n=e;if("app"===m?n=n.filter(e=>"app"===e.source):"engine"===m&&(n=n.filter(e=>"system"===e.source)),"all"!==b&&(n=n.filter(e=>e.category===b)),"all"!==x){const e=["debug","info","warn","error"],t=e.indexOf(x);n=n.filter(n=>e.indexOf(n.level)>=t)}return n})(e);return(0,o.jsxs)("div",{className:"console-tab-content",children:[(0,o.jsxs)("div",{className:"console-controls",children:[(0,o.jsxs)("div",{className:"filter-row",children:[(0,o.jsxs)("div",{className:"filter-group",children:[(0,o.jsx)("label",{className:"filter-label",children:"Source:"}),(0,o.jsxs)("select",{className:"filter-select",value:m,onChange:e=>g(e.target.value),children:[(0,o.jsx)("option",{value:"app",children:"App"}),(0,o.jsx)("option",{value:"engine",children:"Engine (System)"}),(0,o.jsx)("option",{value:"all",children:"All Sources"})]})]}),(0,o.jsxs)("div",{className:"filter-group",children:[(0,o.jsx)("label",{className:"filter-label",children:"Level:"}),(0,o.jsxs)("select",{className:"filter-select",value:x,onChange:e=>C(e.target.value),children:[(0,o.jsx)("option",{value:"all",children:"All Levels"}),(0,o.jsx)("option",{value:"debug",children:"Debug+"}),(0,o.jsx)("option",{value:"info",children:"Info+"}),(0,o.jsx)("option",{value:"warn",children:"Warn+"}),(0,o.jsx)("option",{value:"error",children:"Error Only"})]})]}),(0,o.jsxs)("div",{className:"filter-group",children:[(0,o.jsx)("label",{className:"filter-label",children:"Category:"}),(0,o.jsxs)("select",{className:"filter-select",value:b,onChange:e=>E(e.target.value),children:[(0,o.jsx)("option",{value:"all",children:"All Categories"}),(0,o.jsx)("optgroup",{label:"─── App ───",children:y.map(e=>(0,o.jsx)("option",{value:e,children:e},e))}),(0,o.jsx)("optgroup",{label:"─── System ───",children:v.map(e=>(0,o.jsx)("option",{value:e,children:e},e))})]})]})]}),(0,o.jsx)("button",{className:"clear-logs-btn",onClick:n,children:"Clear Logs"})]}),(0,o.jsx)("div",{className:"log-container",children:a.length>0?a.map(e=>{const n=new Date(e.timestamp).toLocaleTimeString(),t=e.context?.id||"unknown",r=`${e.source}:${e.category}:${t}`,a=e.level.toUpperCase(),i=`[${n}] ${r.toUpperCase()} ${a}: ${e.message}`;return(0,o.jsx)("div",{className:`log-line log-${e.level} log-source-${e.source} log-category-${e.category}`,children:i},e.id)}):(0,o.jsx)("div",{className:"no-logs",children:"No console output yet"})})]});case"settings":case"secrets":case"kv":case"sharedKv":case"notifications":return(0,o.jsx)("div",{className:"store-tab-content",children:(0,o.jsx)(i.default,{initialTab:A,hideTabs:!0,storeTimestamps:t,onRefreshStores:r})});default:return null}})()})})]})}},4477:(e,n)=>{function t(e,n){var t=e.length;e.push(n);e:for(;0<t;){var r=t-1>>>1,o=e[r];if(!(0<a(o,n)))break e;e[r]=n,e[t]=o,t=r}}function r(e){return 0===e.length?null:e[0]}function o(e){if(0===e.length)return null;var n=e[0],t=e.pop();if(t!==n){e[0]=t;e:for(var r=0,o=e.length,i=o>>>1;r<i;){var s=2*(r+1)-1,l=e[s],c=s+1,d=e[c];if(0>a(l,t))c<o&&0>a(d,l)?(e[r]=d,e[c]=t,r=c):(e[r]=l,e[s]=t,r=s);else{if(!(c<o&&0>a(d,t)))break e;e[r]=d,e[c]=t,r=c}}}return n}function a(e,n){var t=e.sortIndex-n.sortIndex;return 0!==t?t:e.id-n.id}if(n.unstable_now=void 0,"object"==typeof performance&&"function"==typeof performance.now){var i=performance;n.unstable_now=function(){return i.now()}}else{var s=Date,l=s.now();n.unstable_now=function(){return s.now()-l}}var c=[],d=[],A=1,u=null,f=3,p=!1,h=!1,m=!1,g=!1,b="function"==typeof setTimeout?setTimeout:null,E="function"==typeof clearTimeout?clearTimeout:null,x="undefined"!=typeof setImmediate?setImmediate:null;function C(e){for(var n=r(d);null!==n;){if(null===n.callback)o(d);else{if(!(n.startTime<=e))break;o(d),n.sortIndex=n.expirationTime,t(c,n)}n=r(d)}}function B(e){if(m=!1,C(e),!h)if(null!==r(c))h=!0,v||(v=!0,y());else{var n=r(d);null!==n&&_(B,n.startTime-e)}}var y,v=!1,k=-1,w=5,S=-1;function j(){return!(!g&&n.unstable_now()-S<w)}function N(){if(g=!1,v){var e=n.unstable_now();S=e;var t=!0;try{e:{h=!1,m&&(m=!1,E(k),k=-1),p=!0;var a=f;try{n:{for(C(e),u=r(c);null!==u&&!(u.expirationTime>e&&j());){var i=u.callback;if("function"==typeof i){u.callback=null,f=u.priorityLevel;var s=i(u.expirationTime<=e);if(e=n.unstable_now(),"function"==typeof s){u.callback=s,C(e),t=!0;break n}u===r(c)&&o(c),C(e)}else o(c);u=r(c)}if(null!==u)t=!0;else{var l=r(d);null!==l&&_(B,l.startTime-e),t=!1}}break e}finally{u=null,f=a,p=!1}t=void 0}}finally{t?y():v=!1}}}if("function"==typeof x)y=function(){x(N)};else if("undefined"!=typeof MessageChannel){var z=new MessageChannel,P=z.port2;z.port1.onmessage=N,y=function(){P.postMessage(null)}}else y=function(){b(N,0)};function _(e,t){k=b(function(){e(n.unstable_now())},t)}n.unstable_IdlePriority=5,n.unstable_ImmediatePriority=1,n.unstable_LowPriority=4,n.unstable_NormalPriority=3,n.unstable_Profiling=null,n.unstable_UserBlockingPriority=2,n.unstable_cancelCallback=function(e){e.callback=null},n.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):w=0<e?Math.floor(1e3/e):5},n.unstable_getCurrentPriorityLevel=function(){return f},n.unstable_next=function(e){switch(f){case 1:case 2:case 3:var n=3;break;default:n=f}var t=f;f=n;try{return e()}finally{f=t}},n.unstable_requestPaint=function(){g=!0},n.unstable_runWithPriority=function(e,n){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var t=f;f=e;try{return n()}finally{f=t}},n.unstable_scheduleCallback=function(e,o,a){var i=n.unstable_now();switch(a="object"==typeof a&&null!==a&&"number"==typeof(a=a.delay)&&0<a?i+a:i,e){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return e={id:A++,callback:o,priorityLevel:e,startTime:a,expirationTime:s=a+s,sortIndex:-1},a>i?(e.sortIndex=a,t(d,e),null===r(c)&&e===r(d)&&(m?(E(k),k=-1):m=!0,_(B,a-i))):(e.sortIndex=s,t(c,e),h||p||(h=!0,v||(v=!0,y()))),e},n.unstable_shouldYield=j,n.unstable_wrapCallback=function(e){var n=f;return function(){var t=f;f=n;try{return e.apply(this,arguments)}finally{f=t}}}},4628:(e,n,t)=>{t.d(n,{A:()=>s});var r=t(1354),o=t.n(r),a=t(6314),i=t.n(a)()(o());i.push([e.id,"/* Global styles */\n* {\n box-sizing: border-box;\n}\n\nbody {\n margin: 0;\n padding: 0;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', 'Source Code Pro', monospace;\n background-color: #1e1e1e;\n color: #cccccc;\n overflow: hidden;\n font-size: 13px;\n}\n\n/* Compact developer layout */\n.app.postman-layout {\n height: 100vh;\n display: flex;\n flex-direction: column;\n}\n\n/* Beta Banner */\n.beta-banner {\n background: linear-gradient(135deg, #2d4a5c 0%, #3d2d5c 100%);\n color: #ffffff;\n padding: 8px 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n border-bottom: 1px solid #5c4a8f;\n font-size: 12px;\n font-weight: 500;\n}\n\n.beta-banner-icon {\n font-size: 14px;\n}\n\n.beta-banner-text {\n color: #d4d4d4;\n}\n\n.beta-banner-text strong {\n color: #ffffff;\n font-weight: 600;\n}\n\n.beta-banner-close {\n background: transparent;\n border: none;\n color: #ffffff;\n font-size: 16px;\n cursor: pointer;\n padding: 4px 8px;\n margin-left: auto;\n display: flex;\n align-items: center;\n justify-content: center;\n opacity: 0.7;\n transition: opacity 0.2s;\n}\n\n.beta-banner-close:hover {\n opacity: 1;\n}\n\n.beta-banner-close:focus {\n outline: 1px solid #ffffff;\n outline-offset: 2px;\n opacity: 1;\n}\n\n.beta-banner-link {\n color: #ffffff;\n text-decoration: underline;\n font-weight: 600;\n transition: opacity 0.2s;\n}\n\n.beta-banner-link:hover {\n opacity: 0.8;\n}\n\n.beta-banner-link:focus {\n outline: 2px solid #ffffff;\n outline-offset: 2px;\n}\n\n/* Top Navigation Bar - Compact */\n.top-nav {\n background: #2d2d30;\n color: #cccccc;\n padding: 0 12px;\n height: 35px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-bottom: 1px solid #3e3e42;\n font-size: 12px;\n}\n\n.nav-left {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.app-title h1 {\n margin: 0;\n font-size: 13px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.app-info-nav {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 3px 8px;\n background: #3c3c3c;\n border-radius: 3px;\n font-size: 11px;\n border: 1px solid #4a4a4a;\n}\n\n.app-name {\n font-weight: 400;\n color: #ffffff;\n}\n\n.app-version {\n background: #555555;\n color: #e0e0e0;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 10px;\n}\n\n.nav-center {\n display: flex;\n align-items: center;\n}\n\n.build-status-nav {\n display: flex;\n align-items: center;\n}\n\n.build-indicator {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 3px 8px;\n border-radius: 3px;\n font-size: 11px;\n font-weight: 400;\n border: 1px solid #4a4a4a;\n}\n\n.build-indicator.building {\n background: #2d2d30;\n border-color: #ffd700;\n color: #ffd700;\n}\n\n.build-indicator.success {\n background: #2d2d30;\n border-color: #4caf50;\n color: #4caf50;\n}\n\n.build-indicator.error {\n background: #2d2d30;\n border-color: #f44336;\n color: #f44336;\n}\n\n.build-indicator.idle {\n background: #3c3c3c;\n border-color: #666666;\n color: #cccccc;\n}\n\n.status-dot {\n width: 6px;\n height: 6px;\n border-radius: 50%;\n display: inline-block;\n}\n\n.building .status-dot {\n background: #ffd700;\n animation: pulse 1.5s infinite;\n}\n\n.success .status-dot {\n background: #4caf50;\n}\n\n.error .status-dot {\n background: #f44336;\n}\n\n.idle .status-dot {\n background: #666666;\n}\n\n@keyframes pulse {\n 0% { opacity: 1; }\n 50% { opacity: 0.5; }\n 100% { opacity: 1; }\n}\n\n.nav-right {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n/* Feedback button */\n.feedback-btn,\n.docs-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 11px;\n font-weight: 400;\n cursor: pointer;\n transition: all 0.15s ease;\n text-decoration: none;\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.feedback-btn:hover,\n.docs-btn:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.feedback-btn:focus,\n.docs-btn:focus {\n outline: 1px solid #007acc;\n outline-offset: 2px;\n}\n\n/* Nav separator (vertical) */\n.nav-separator-vertical {\n width: 1px;\n height: 16px;\n background: #4a4a4a;\n margin: 0 4px;\n}\n\n.rebuild-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 10px;\n border-radius: 3px;\n font-size: 11px;\n font-weight: 400;\n cursor: pointer;\n transition: all 0.15s ease;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.rebuild-btn:hover:not(:disabled) {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.rebuild-btn:disabled {\n cursor: not-allowed;\n}\n\n.rebuild-btn.building {\n border-color: #ffd700;\n}\n\n.rebuild-btn.success {\n border-color: #4caf50;\n}\n\n.rebuild-btn.error {\n border-color: #f44336;\n}\n\n.rebuild-status-dot {\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background: #666666;\n}\n\n.rebuild-btn.building .rebuild-status-dot {\n background: #ffd700;\n animation: pulse 1.5s infinite;\n}\n\n.rebuild-btn.success .rebuild-status-dot {\n background: #4caf50;\n}\n\n.rebuild-btn.error .rebuild-status-dot {\n background: #f44336;\n}\n\n.connection-status {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 11px;\n padding: 3px 6px;\n background: #3c3c3c;\n border-radius: 2px;\n border: 1px solid #4a4a4a;\n}\n\n.connection-dot {\n width: 4px;\n height: 4px;\n border-radius: 50%;\n}\n\n.connection-dot.connected {\n background: #4caf50;\n}\n\n.connection-dot.disconnected {\n background: #f44336;\n}\n\n/* Main Layout */\n.main-layout {\n display: flex;\n flex: 1;\n overflow: hidden;\n}\n\n/* Left Sidebar - Compact */\n.sidebar {\n width: 160px;\n background: #252526;\n border-right: 1px solid #3e3e42;\n display: flex;\n flex-direction: column;\n}\n\n.sidebar-nav {\n padding: 4px 0;\n}\n\n.nav-item {\n width: 100%;\n background: none;\n border: none;\n color: #cccccc;\n padding: 4px 8px;\n display: flex;\n align-items: center;\n gap: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n font-size: 11px;\n text-align: left;\n border-left: 2px solid transparent;\n height: 28px;\n}\n\n.nav-item:hover {\n background: #2a2d2e;\n color: #ffffff;\n}\n\n.nav-item.active {\n background: #37373d;\n color: #ffffff;\n border-left-color: #ffffff;\n}\n\n.nav-icon {\n font-size: 12px;\n width: 14px;\n text-align: center;\n color: #858585;\n flex-shrink: 0;\n}\n\n.nav-item.active .nav-icon {\n color: #ffffff;\n}\n\n.nav-label {\n font-weight: 400;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n/* Content Area */\n.content-area {\n flex: 1;\n display: flex;\n flex-direction: column;\n background: #1e1e1e;\n overflow: hidden;\n}\n\n.content-header {\n padding: 12px 16px;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n display: flex;\n align-items: center;\n justify-content: space-between;\n min-height: 40px;\n}\n\n.content-header h2 {\n margin: 0;\n font-size: 14px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.validation-errors-banner {\n display: flex;\n align-items: center;\n gap: 6px;\n background: #2d2d30;\n color: #ffa500;\n padding: 4px 8px;\n border-radius: 3px;\n border: 1px solid #664400;\n font-size: 11px;\n}\n\n.error-icon {\n font-size: 12px;\n}\n\n.content-body {\n flex: 1;\n padding: 12px 16px;\n overflow-y: auto;\n background: #1e1e1e;\n}\n\n/* Settings View */\n.settings-view {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.validation-errors {\n background: #2d2d30;\n border: 1px solid #664400;\n border-radius: 4px;\n padding: 12px;\n margin-bottom: 12px;\n}\n\n.validation-errors h4 {\n margin: 0 0 8px 0;\n color: #ffa500;\n font-size: 12px;\n}\n\n.validation-errors ul {\n margin: 0;\n padding-left: 16px;\n color: #ffa500;\n font-size: 11px;\n}\n\n.settings-loading-container {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.settings-iframe-container {\n flex: 1;\n background: #ffffff;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n overflow: hidden;\n}\n\n/* Placeholder Content */\n.placeholder-content {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n padding: 24px;\n text-align: center;\n}\n\n.placeholder-content h3 {\n margin: 0 0 12px 0;\n color: #ffffff;\n font-size: 14px;\n font-weight: 500;\n}\n\n.placeholder-content p {\n margin: 0;\n color: #cccccc;\n font-size: 12px;\n}\n\n/* Spinner */\n.spinner {\n margin: 20px auto;\n width: 40px;\n height: 40px;\n border: 3px solid #3e3e42;\n border-top-color: #007acc;\n border-radius: 50%;\n animation: spin 1s linear infinite;\n}\n\n@keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n\n/* Error details */\n.error-details {\n margin: 16px 0 0 0;\n padding: 12px;\n background: #1e1e1e;\n border: 1px solid #f48771;\n border-radius: 4px;\n color: #f48771;\n font-size: 11px;\n text-align: left;\n overflow-x: auto;\n max-height: 200px;\n overflow-y: auto;\n}\n\n/* Bottom Console - Compact */\n.console-panel {\n background: #1e1e1e;\n border-top: 1px solid #3e3e42;\n transition: height 0.2s ease;\n display: flex;\n flex-direction: column;\n}\n\n.console-panel.collapsed {\n /* Height managed by inline style */\n}\n\n.console-panel.expanded {\n /* Height managed by inline style */\n}\n\n.console-header {\n height: 28px;\n background: #2d2d30;\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0 12px;\n cursor: pointer;\n border-bottom: 1px solid #3e3e42;\n font-size: 11px;\n}\n\n.console-header:hover {\n background: #37373d;\n}\n\n.console-title {\n display: flex;\n align-items: center;\n gap: 6px;\n color: #cccccc;\n font-weight: 400;\n}\n\n.console-icon {\n font-size: 11px;\n color: #858585;\n}\n\n.log-count {\n color: #858585;\n font-size: 10px;\n}\n\n.console-toggle {\n background: none;\n border: none;\n color: #858585;\n font-size: 11px;\n cursor: pointer;\n padding: 2px;\n border-radius: 2px;\n transition: background 0.15s ease;\n}\n\n.console-toggle:hover {\n background: #3e3e42;\n color: #cccccc;\n}\n\n.console-content {\n flex: 1;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n}\n\n.log-container {\n height: 100%;\n padding: 8px 12px;\n overflow-y: auto;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 11px;\n line-height: 1.3;\n}\n\n.log-line {\n color: #cccccc;\n margin-bottom: 2px;\n white-space: pre-wrap;\n}\n\n.log-line.log-error {\n color: #f48771;\n border-left: 2px solid #f48771;\n padding-left: 6px;\n background: rgba(244, 135, 113, 0.05);\n}\n\n.log-line.log-warn {\n color: #dcdcaa;\n border-left: 2px solid #dcdcaa;\n padding-left: 6px;\n background: rgba(220, 220, 170, 0.05);\n}\n\n.log-line.log-debug {\n color: #858585;\n font-style: italic;\n}\n\n.log-line.log-info {\n color: #cccccc;\n}\n\n/* Log source styling */\n.log-source-app {\n color: #61dafb;\n border-left: 3px solid #61dafb;\n padding-left: 8px;\n}\n\n.log-source-system {\n color: #cccccc;\n border-left: 3px solid #666666;\n padding-left: 8px;\n}\n\n/* Optional: Category-specific styling */\n.log-category-function {\n /* Function-specific styling if desired */\n}\n\n.log-category-build {\n /* Build-specific styling if desired */\n}\n\n.log-category-lifecycle {\n /* Lifecycle-specific styling if desired */\n}\n\n.log-category-destination {\n /* Destination-specific styling if desired */\n}\n\n/* Filter buttons */\n.log-filter-buttons {\n display: flex;\n gap: 8px;\n margin-right: 12px;\n}\n\n.filter-btn {\n padding: 4px 12px;\n border: 1px solid #444;\n background: #2a2a2a;\n color: #ccc;\n border-radius: 4px;\n cursor: pointer;\n font-size: 12px;\n transition: all 0.2s;\n}\n\n.filter-btn:hover {\n background: #3a3a3a;\n border-color: #555;\n}\n\n.filter-btn.active {\n background: #61dafb;\n color: #1a1a1a;\n border-color: #61dafb;\n font-weight: 600;\n}\n\n/* Update console controls to use flexbox */\n.console-controls {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n background: #1e1e1e;\n border-bottom: 1px solid #333;\n}\n\n/* Filter row layout */\n.filter-row {\n display: flex;\n align-items: center;\n gap: 16px;\n flex: 1;\n}\n\n.filter-group {\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.filter-label {\n font-size: 11px;\n color: #858585;\n white-space: nowrap;\n}\n\n.filter-select {\n background: #2a2a2a;\n color: #ccc;\n border: 1px solid #444;\n border-radius: 4px;\n padding: 4px 8px;\n font-size: 11px;\n cursor: pointer;\n min-width: 120px;\n}\n\n.filter-select:hover {\n background: #3a3a3a;\n border-color: #555;\n}\n\n.filter-select:focus {\n outline: none;\n border-color: #61dafb;\n}\n\n.clear-logs-btn {\n background: #0e639c;\n color: white;\n border: none;\n padding: 4px 8px;\n border-radius: 2px;\n font-size: 11px;\n cursor: pointer;\n transition: background 0.15s ease;\n}\n\n.clear-logs-btn:hover {\n background: #1177bb;\n}\n\n.no-logs {\n color: #858585;\n font-style: italic;\n text-align: center;\n padding: 16px;\n font-size: 11px;\n}\n\n/* Scrollbar styling for webkit browsers */\n.log-container::-webkit-scrollbar {\n width: 6px;\n}\n\n.log-container::-webkit-scrollbar-track {\n background: #1e1e1e;\n}\n\n.log-container::-webkit-scrollbar-thumb {\n background: #3e3e42;\n border-radius: 3px;\n}\n\n.log-container::-webkit-scrollbar-thumb:hover {\n background: #4a4a4a;\n}\n\n/* Console Tab Navigation */\n.console-tab-headers {\n display: flex;\n align-items: center;\n background: #2d2d30;\n border-bottom: 1px solid #3e3e42;\n padding: 0 8px;\n gap: 2px;\n min-height: 32px;\n position: relative;\n}\n\n.console-tab {\n background: none;\n border: none;\n padding: 6px 12px;\n color: #858585;\n font-size: 11px;\n cursor: pointer;\n border-radius: 3px;\n display: flex;\n align-items: center;\n gap: 4px;\n transition: all 0.15s ease;\n white-space: nowrap;\n}\n\n.console-tab:hover {\n background: #37373d;\n color: #cccccc;\n}\n\n.console-tab.active {\n background: #1e1e1e;\n color: #ffffff;\n border: 1px solid #3e3e42;\n}\n\n.console-tab .tab-icon {\n font-size: 10px;\n}\n\n.console-tab .tab-label {\n font-weight: 400;\n}\n\n.console-tab .tab-count {\n color: #858585;\n font-size: 10px;\n margin-left: 2px;\n}\n\n.console-tab.active .tab-count {\n color: #cccccc;\n}\n\n.notification-badge {\n background: #f44336;\n color: #ffffff;\n padding: 1px 5px;\n border-radius: 10px;\n font-size: 9px;\n font-weight: 600;\n margin-left: 4px;\n min-width: 16px;\n text-align: center;\n display: inline-block;\n}\n\n.console-tab-body {\n flex: 1;\n overflow-y: auto;\n display: flex;\n flex-direction: column;\n}\n\n.store-tab-content {\n flex: 1;\n overflow-y: auto;\n display: flex;\n flex-direction: column;\n}\n\n/* Console toggle button in tab header */\n.console-tab-headers .console-toggle {\n margin-left: auto;\n background: none;\n border: none;\n color: #858585;\n font-size: 11px;\n cursor: pointer;\n padding: 4px 6px;\n border-radius: 2px;\n transition: all 0.15s ease;\n}\n\n.console-tab-headers .console-toggle:hover {\n background: #3e3e42;\n color: #cccccc;\n}\n\n/* Console resize handle */\n.console-resize-handle {\n height: 6px;\n background: #3e3e42;\n cursor: ns-resize;\n border-top: 1px solid #5a5a5a;\n border-bottom: 1px solid #2d2d30;\n transition: all 0.15s ease;\n flex-shrink: 0;\n user-select: none;\n z-index: 10;\n position: relative;\n}\n\n.console-resize-handle:hover {\n background: #5a5a5a;\n border-top: 1px solid #7a7a7a;\n height: 6px;\n}\n\n.console-resize-handle:active {\n background: #6a6a6a;\n border-top: 1px solid #8a8a8a;\n}\n\n.console-resize-handle::after {\n content: '≡';\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n color: #cccccc;\n font-size: 12px;\n font-weight: bold;\n pointer-events: none;\n}\n\n/* Compact Store Layout */\n.compact-store {\n padding: 8px;\n}\n\n.store-sections {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.store-section {\n border-radius: 3px;\n overflow: hidden;\n}\n\n.section-header {\n display: flex;\n align-items: center;\n padding: 6px 8px;\n background: #2d2d30;\n cursor: pointer;\n font-size: 11px;\n line-height: 1.2;\n gap: 6px;\n}\n\n.section-header:hover {\n background: #37373d;\n}\n\n.expand-icon {\n color: #858585;\n font-size: 10px;\n width: 12px;\n}\n\n.section-name {\n color: #9cdcfe;\n font-weight: 500;\n}\n\n.field-count {\n color: #858585;\n font-size: 10px;\n}\n\n.add-section-btn {\n margin-left: auto;\n background: none;\n border: none;\n color: #858585;\n cursor: pointer;\n padding: 2px 4px;\n border-radius: 2px;\n font-size: 10px;\n}\n\n.add-section-btn:hover {\n background: #3e3e42;\n color: #cccccc;\n}\n\n.section-fields {\n background: #1e1e1e;\n border-top: 1px solid #3e3e42;\n}\n\n.field-row {\n display: flex;\n align-items: center;\n padding: 4px 16px;\n font-size: 11px;\n line-height: 1.2;\n min-height: 20px;\n}\n\n.field-row:hover {\n background: #2d2d30;\n}\n\n.field-row.add-form {\n background: #2d2d30;\n border-top: 1px solid #3e3e42;\n}\n\n.field-key {\n flex: 0 0 120px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n color: #9cdcfe;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.field-value {\n flex: 1;\n padding: 0 8px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n color: #cccccc;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.field-metadata {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.string-value {\n color: #ce9178;\n}\n\n.json-value {\n color: #dcdcaa;\n}\n\n.hidden-field-value {\n color: #858585;\n}\n\n.empty-field-value {\n color: #858585;\n font-style: italic;\n}\n\n.empty-section {\n padding: 8px 16px;\n color: #858585;\n font-style: italic;\n font-size: 10px;\n}\n\n.section-actions {\n margin-left: auto;\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.primitive-value {\n padding: 6px 16px;\n background: #1e1e1e;\n border-top: 1px solid #3e3e42;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 11px;\n}\n\n.add-entry-section {\n margin-top: 8px;\n padding: 4px 0;\n}\n\n.add-entry-btn {\n background: #0e639c;\n color: white;\n border: none;\n padding: 6px 12px;\n border-radius: 3px;\n font-size: 11px;\n cursor: pointer;\n transition: background 0.15s ease;\n}\n\n.add-entry-btn:hover {\n background: #1177bb;\n}\n\n.store-section.add-form .section-header {\n background: #2d2d30;\n}\n\n.store-section.add-form .key-input {\n background: none;\n border: none;\n color: #9cdcfe;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n outline: none;\n flex: 1;\n}\n\n.store-section.add-form .value-input {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n color: #cccccc;\n padding: 4px;\n border-radius: 2px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n resize: vertical;\n width: 100%;\n}\n\n.metadata-icon,\n.edit-icon,\n.delete-icon,\n.add-icon {\n background: none;\n border: none;\n color: #858585;\n cursor: pointer;\n padding: 2px;\n border-radius: 2px;\n font-size: 10px;\n transition: all 0.15s ease;\n}\n\n.metadata-icon:hover,\n.edit-icon:hover,\n.delete-icon:hover,\n.add-icon:hover {\n background: #3e3e42;\n color: #cccccc;\n}\n\n.metadata-badge {\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n font-weight: 500;\n text-transform: uppercase;\n}\n\n.metadata-badge.local {\n background: #0e639c;\n color: white;\n}\n\n.metadata-badge.local-only {\n background: #f48771;\n color: white;\n}\n\n.edit-mode {\n display: flex;\n flex-direction: column;\n gap: 4px;\n width: 100%;\n}\n\n.edit-input {\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n color: #cccccc;\n padding: 4px;\n border-radius: 2px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n resize: vertical;\n min-height: 20px;\n}\n\n.edit-controls {\n display: flex;\n gap: 4px;\n}\n\n.save-btn,\n.cancel-btn {\n background: #0e639c;\n color: white;\n border: none;\n padding: 2px 6px;\n border-radius: 2px;\n font-size: 10px;\n cursor: pointer;\n}\n\n.cancel-btn {\n background: #858585;\n}\n\n.save-btn:hover {\n background: #1177bb;\n}\n\n.cancel-btn:hover {\n background: #9a9a9a;\n}\n\n.add-form {\n background: #1e1e1e !important;\n border: 1px solid #3e3e42;\n}\n\n.key-input,\n.value-input {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n color: #cccccc;\n padding: 4px;\n border-radius: 2px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.empty-store {\n padding: 16px;\n text-align: center;\n color: #858585;\n font-style: italic;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n}\n\n.empty-store button {\n background: #0e639c;\n color: white;\n border: none;\n padding: 4px 8px;\n border-radius: 2px;\n font-size: 11px;\n cursor: pointer;\n}\n\n/* Scrollbar styling for console tab content */\n.console-tab-body::-webkit-scrollbar,\n.store-tab-content::-webkit-scrollbar {\n width: 6px;\n}\n\n.console-tab-body::-webkit-scrollbar-track,\n.store-tab-content::-webkit-scrollbar-track {\n background: #1e1e1e;\n}\n\n.console-tab-body::-webkit-scrollbar-thumb,\n.store-tab-content::-webkit-scrollbar-thumb {\n background: #3e3e42;\n border-radius: 3px;\n}\n\n.console-tab-body::-webkit-scrollbar-thumb:hover,\n.store-tab-content::-webkit-scrollbar-thumb:hover {\n background: #4a4a4a;\n}\n\n/* Responsive design */\n@media (max-width: 1024px) {\n .sidebar {\n width: 140px;\n }\n\n .content-header {\n padding: 10px 12px;\n }\n\n .content-body {\n padding: 10px 12px;\n }\n}\n\n@media (max-width: 768px) {\n .nav-left {\n gap: 8px;\n }\n\n .app-title h1 {\n font-size: 12px;\n }\n\n .app-info-nav {\n display: none;\n }\n\n .sidebar {\n width: 44px;\n }\n\n .nav-item {\n padding: 4px 6px;\n justify-content: center;\n height: 32px;\n }\n\n .nav-label {\n display: none;\n }\n\n .nav-icon {\n font-size: 14px;\n width: 16px;\n }\n\n .content-header {\n padding: 8px 12px;\n }\n\n .content-body {\n padding: 8px 12px;\n }\n\n .console-panel.expanded {\n height: 160px;\n }\n}\n\n@media (max-width: 480px) {\n .top-nav {\n padding: 0 8px;\n }\n\n .nav-right {\n gap: 6px;\n }\n\n .rebuild-btn {\n padding: 3px 6px;\n font-size: 10px;\n }\n\n .connection-status {\n font-size: 10px;\n padding: 2px 4px;\n }\n}\n\n/* Functions View */\n.functions-view {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.functions-not-installed {\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.functions-layout {\n display: flex;\n height: 100%;\n overflow: hidden;\n}\n\n/* Functions Sidebar */\n.functions-sidebar {\n width: 200px;\n background: #252526;\n border-right: 1px solid #3e3e42;\n display: flex;\n flex-direction: column;\n}\n\n.functions-header {\n padding: 8px 12px;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n}\n\n.functions-header h4 {\n margin: 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.functions-list {\n flex: 1;\n overflow-y: auto;\n padding: 4px 0;\n}\n\n.no-functions {\n padding: 16px 12px;\n text-align: center;\n}\n\n.no-functions p {\n margin: 0;\n font-size: 11px;\n color: #858585;\n}\n\n.function-item {\n padding: 8px 12px;\n cursor: pointer;\n border-bottom: 1px solid #3e3e42;\n transition: background 0.15s ease;\n}\n\n.function-item:hover {\n background: #2a2d2e;\n}\n\n.function-item.active {\n background: #37373d;\n border-left: 2px solid #ffffff;\n}\n\n.function-name {\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n margin-bottom: 2px;\n}\n\n.function-description {\n font-size: 10px;\n color: #858585;\n line-height: 1.3;\n margin-bottom: 4px;\n}\n\n.function-badge {\n display: inline-block;\n background: #3c3c3c;\n color: #cccccc;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n border: 1px solid #4a4a4a;\n}\n\n/* Functions Content */\n.functions-content {\n flex: 1;\n display: flex;\n flex-direction: column;\n background: #1e1e1e;\n overflow: hidden;\n}\n\n.no-function-selected {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Request Section */\n.request-section {\n flex: 1;\n display: flex;\n flex-direction: column;\n border-bottom: 1px solid #3e3e42;\n min-height: 0;\n}\n\n/* URL Bar */\n.url-bar {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 12px 16px;\n background: #2d2d30;\n border-bottom: 1px solid #3e3e42;\n}\n\n.http-method-select {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 6px 8px;\n border-radius: 3px;\n font-size: 11px;\n min-width: 80px;\n}\n\n.url-input {\n flex: 1;\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 6px 8px;\n border-radius: 3px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.url-input:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.url-input:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.send-button {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 6px 16px;\n border-radius: 3px;\n font-size: 11px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.send-button:hover:not(:disabled) {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.send-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n/* Request Tabs */\n.request-tabs {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.tab-headers {\n display: flex;\n background: #252526;\n border-bottom: 1px solid #3e3e42;\n}\n\n.tab-header {\n background: none;\n border: none;\n color: #cccccc;\n padding: 8px 16px;\n font-size: 11px;\n cursor: pointer;\n border-bottom: 2px solid transparent;\n transition: all 0.15s ease;\n}\n\n.tab-header:hover {\n background: #2a2d2e;\n color: #ffffff;\n}\n\n.tab-header.active {\n color: #ffffff;\n border-bottom-color: #ffffff;\n background: #37373d;\n}\n\n.tab-content {\n flex: 1;\n padding: 12px 16px;\n overflow-y: auto;\n background: #1e1e1e;\n}\n\n/* Key-Value Editor */\n.key-value-editor {\n font-size: 11px;\n}\n\n.key-value-header {\n display: grid;\n grid-template-columns: 30px 1fr 1fr 30px;\n gap: 8px;\n padding: 4px 0 8px 0;\n color: #858585;\n font-weight: 500;\n border-bottom: 1px solid #3e3e42;\n margin-bottom: 8px;\n}\n\n/* Headers tab specific styles */\n.response-headers .key-value-header {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 8px;\n padding: 4px 0 8px 0;\n color: #858585;\n font-weight: 500;\n border-bottom: 1px solid #3e3e42;\n margin-bottom: 8px;\n}\n\n.response-headers .key-value-row {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 8px;\n margin-bottom: 6px;\n align-items: center;\n}\n\n.response-headers input[type=\"text\"] {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 6px;\n border-radius: 2px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.response-headers input[type=\"text\"]:read-only {\n background: #2d2d30;\n border-color: #3e3e42;\n color: #e0e0e0;\n}\n\n.no-headers {\n padding: 16px;\n text-align: center;\n color: #858585;\n font-style: italic;\n font-size: 11px;\n}\n\n/* Response tabs specific styling */\n.response-tabs {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.response-tabs .tab-content {\n flex: 1;\n overflow-y: auto;\n padding: 12px 16px;\n background: #1e1e1e;\n max-height: 400px; /* Limit height to ensure scrolling is visible */\n}\n\n.response-data {\n font-size: 11px;\n}\n\n.response-headers {\n max-height: 350px;\n overflow-y: auto;\n}\n\n.response-headers .key-value-editor {\n margin-bottom: 0;\n}\n\n/* Custom scrollbars for response areas */\n.response-tabs .tab-content::-webkit-scrollbar,\n.response-headers::-webkit-scrollbar,\n.response-success pre::-webkit-scrollbar,\n.response-error pre::-webkit-scrollbar,\n.response-body pre::-webkit-scrollbar {\n width: 6px;\n height: 6px;\n}\n\n.response-tabs .tab-content::-webkit-scrollbar-track,\n.response-headers::-webkit-scrollbar-track,\n.response-success pre::-webkit-scrollbar-track,\n.response-error pre::-webkit-scrollbar-track,\n.response-body pre::-webkit-scrollbar-track {\n background: #1e1e1e;\n}\n\n.response-tabs .tab-content::-webkit-scrollbar-thumb,\n.response-headers::-webkit-scrollbar-thumb,\n.response-success pre::-webkit-scrollbar-thumb,\n.response-error pre::-webkit-scrollbar-thumb,\n.response-body pre::-webkit-scrollbar-thumb {\n background: #3e3e42;\n border-radius: 3px;\n}\n\n.response-tabs .tab-content::-webkit-scrollbar-thumb:hover,\n.response-headers::-webkit-scrollbar-thumb:hover,\n.response-success pre::-webkit-scrollbar-thumb:hover,\n.response-error pre::-webkit-scrollbar-thumb:hover,\n.response-body pre::-webkit-scrollbar-thumb:hover {\n background: #4a4a4a;\n}\n\n.key-value-row {\n display: grid;\n grid-template-columns: 30px 1fr 1fr 30px;\n gap: 8px;\n margin-bottom: 6px;\n align-items: center;\n}\n\n.key-value-row input[type=\"checkbox\"] {\n width: 14px;\n height: 14px;\n cursor: pointer;\n}\n\n.key-value-row input[type=\"text\"] {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 6px;\n border-radius: 2px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.key-value-row input[type=\"text\"]:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.remove-btn {\n background: none;\n border: none;\n color: #858585;\n font-size: 14px;\n cursor: pointer;\n width: 20px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 2px;\n transition: all 0.15s ease;\n}\n\n.remove-btn:hover {\n background: #f44336;\n color: #ffffff;\n}\n\n.add-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 10px;\n cursor: pointer;\n margin-top: 8px;\n transition: all 0.15s ease;\n}\n\n.add-btn:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n/* Body Editor */\n.body-editor {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.body-actions {\n display: flex;\n gap: 8px;\n margin-bottom: 8px;\n}\n\n.body-textarea {\n width: 100%;\n flex: 1;\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 8px;\n border-radius: 3px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n resize: vertical;\n min-height: 200px;\n}\n\n.body-textarea:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.body-note {\n margin-top: 8px;\n padding: 8px;\n background: #2d2d2d;\n border-left: 3px solid #4a90e2;\n color: #cccccc;\n font-size: 11px;\n line-height: 1.4;\n}\n\n/* Response Section */\n.response-section {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.response-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 16px;\n background: #2d2d30;\n border-bottom: 1px solid #3e3e42;\n}\n\n.response-header h4 {\n margin: 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.response-meta {\n display: flex;\n align-items: center;\n gap: 12px;\n font-size: 11px;\n}\n\n.execution-time {\n color: #858585;\n}\n\n.http-status {\n color: #cccccc;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n padding: 2px 6px;\n border-radius: 3px;\n font-weight: 500;\n font-size: 11px;\n}\n\n/* 2xx - Success (Green) */\n.http-status.status-2xx {\n background: #2d2d30;\n color: #4caf50;\n border: 1px solid #4caf50;\n}\n\n/* 3xx - Redirection (Yellow) */\n.http-status.status-3xx {\n background: #2d2d30;\n color: #ffc107;\n border: 1px solid #ffc107;\n}\n\n/* 4xx - Client Error (Yellow) */\n.http-status.status-4xx {\n background: #2d2d30;\n color: #ffc107;\n border: 1px solid #ffc107;\n}\n\n/* 5xx - Server Error (Red) */\n.http-status.status-5xx {\n background: #2d2d30;\n color: #f44336;\n border: 1px solid #f44336;\n}\n\n.status-indicator {\n padding: 2px 6px;\n border-radius: 3px;\n font-weight: 500;\n}\n\n.status-indicator.success {\n background: #2d2d30;\n color: #4caf50;\n border: 1px solid #4caf50;\n}\n\n.status-indicator.error {\n background: #2d2d30;\n color: #f44336;\n border: 1px solid #f44336;\n}\n\n.response-content {\n flex: 1;\n padding: 12px 16px;\n overflow-y: auto;\n background: #1e1e1e;\n}\n\n.no-response {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n color: #858585;\n font-style: italic;\n font-size: 11px;\n}\n\n.response-data {\n font-size: 11px;\n}\n\n.response-success h5,\n.response-error h5,\n.response-logs h5,\n.response-body h5 {\n margin: 0 0 8px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.status-badge {\n background: #3c3c3c;\n color: #cccccc;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 10px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.response-success pre,\n.response-error pre,\n.response-body pre {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 8px;\n border-radius: 3px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n white-space: pre-wrap;\n word-wrap: break-word;\n margin: 0;\n overflow: auto;\n max-height: 300px;\n}\n\n.response-error {\n margin-bottom: 16px;\n}\n\n.response-error pre {\n color: #f44336;\n}\n\n.response-error details {\n margin-top: 8px;\n}\n\n.response-error summary {\n color: #858585;\n cursor: pointer;\n font-size: 10px;\n}\n\n.response-logs {\n margin-top: 16px;\n}\n\n.log-entries {\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n border-radius: 3px;\n max-height: 150px;\n overflow-y: auto;\n}\n\n.log-entry {\n padding: 4px 8px;\n border-bottom: 1px solid #4a4a4a;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n color: #cccccc;\n font-size: 10px;\n}\n\n.log-entry:last-child {\n border-bottom: none;\n}\n\n/* Store Viewer Styles */\n.store-viewer {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: #1e1e1e;\n}\n\n.store-viewer.loading,\n.store-viewer.error,\n.store-viewer.no-data {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n}\n\n.loading-message,\n.error-message,\n.no-data-message {\n text-align: center;\n color: #858585;\n font-size: 12px;\n}\n\n.error-message {\n display: flex;\n align-items: center;\n gap: 8px;\n color: #f44336;\n}\n\n.retry-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 10px;\n cursor: pointer;\n margin-left: 8px;\n}\n\n.retry-btn:hover {\n background: #4a4a4a;\n}\n\n/* Store Tabs */\n.store-tabs {\n display: flex;\n background: #252526;\n border-bottom: 1px solid #3e3e42;\n align-items: center;\n justify-content: space-between;\n padding-right: 8px;\n}\n\n.store-tabs-container {\n display: flex;\n overflow-x: auto;\n}\n\n.store-tab {\n background: none;\n border: none;\n color: #cccccc;\n padding: 8px 16px;\n font-size: 11px;\n cursor: pointer;\n border-bottom: 2px solid transparent;\n transition: all 0.15s ease;\n display: flex;\n align-items: center;\n gap: 6px;\n white-space: nowrap;\n}\n\n.store-tab:hover {\n background: #2a2d2e;\n color: #ffffff;\n}\n\n.store-tab.active {\n color: #ffffff;\n border-bottom-color: #ffffff;\n background: #37373d;\n}\n\n.tab-icon {\n font-size: 12px;\n}\n\n.tab-label {\n font-weight: 400;\n}\n\n.tab-count {\n background: #3c3c3c;\n color: #858585;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n}\n\n.store-tab.active .tab-count {\n background: #4a4a4a;\n color: #cccccc;\n}\n\n/* Refresh Button */\n.refresh-btn {\n background: none;\n border: none;\n color: #858585;\n cursor: pointer;\n padding: 6px 8px;\n border-radius: 3px;\n font-size: 14px;\n transition: all 0.15s ease;\n margin-left: auto;\n}\n\n.refresh-btn:hover {\n background: #3e3e42;\n color: #cccccc;\n}\n\n.refresh-btn:active {\n background: #4a4a4a;\n}\n\n/* Store header for hidden tabs mode */\n.store-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n}\n\n\n/* Store Content */\n.store-content {\n flex: 1;\n overflow-y: auto;\n background: #1e1e1e;\n}\n\n.store-header {\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.store-description {\n margin: 0;\n font-size: 11px;\n color: #858585;\n}\n\n.add-entry-btn,\n.add-section-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 10px;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.add-entry-btn:hover,\n.add-section-btn:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n/* Empty States */\n.empty-store,\n.empty-message,\n.empty-section {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 32px 16px;\n text-align: center;\n color: #858585;\n}\n\n.empty-icon {\n font-size: 32px;\n margin-bottom: 12px;\n}\n\n.empty-message p {\n margin: 0 0 12px 0;\n font-size: 12px;\n}\n\n.add-first-entry-btn,\n.add-first-secret-btn {\n background: #0e639c;\n color: white;\n border: none;\n padding: 6px 12px;\n border-radius: 3px;\n font-size: 11px;\n cursor: pointer;\n transition: background 0.15s ease;\n}\n\n.add-first-entry-btn:hover,\n.add-first-secret-btn:hover {\n background: #1177bb;\n}\n\n/* Settings Store Viewer */\n.settings-store-viewer {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.settings-sections {\n flex: 1;\n overflow-y: auto;\n padding: 8px 16px;\n}\n\n.settings-section {\n margin-bottom: 12px;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n background: #2d2d30;\n}\n\n.section-header {\n padding: 8px 12px;\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: 6px;\n background: #37373d;\n border-radius: 4px 4px 0 0;\n transition: background 0.15s ease;\n}\n\n.section-header:hover {\n background: #3e3e42;\n}\n\n.section-header-left {\n display: flex;\n align-items: center;\n gap: 6px;\n flex: 1;\n cursor: pointer;\n}\n\n.expand-icon {\n font-size: 10px;\n color: #858585;\n width: 12px;\n}\n\n.section-name {\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.field-count,\n.secret-count {\n font-size: 10px;\n color: #858585;\n}\n\n.section-fields,\n.section-secrets {\n padding: 8px 12px;\n}\n\n.settings-field,\n.secret-field {\n margin-bottom: 12px;\n padding: 8px;\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n}\n\n.field-header,\n.secret-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 6px;\n}\n\n.field-name-info {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.field-name,\n.secret-name {\n font-size: 11px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.field-type-info {\n font-size: 9px;\n color: #858585;\n}\n\n.field-controls,\n.secret-controls {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.edit-field-btn,\n.edit-secret-btn,\n.delete-secret-btn,\n.edit-entry-btn,\n.delete-entry-btn {\n background: none;\n border: none;\n font-size: 10px;\n cursor: pointer;\n padding: 2px;\n border-radius: 2px;\n transition: background 0.15s ease;\n}\n\n.edit-field-btn:hover,\n.edit-secret-btn:hover,\n.edit-entry-btn:hover {\n background: #3c3c3c;\n}\n\n.delete-secret-btn:hover,\n.delete-entry-btn:hover {\n background: #f44336;\n}\n\n.field-value-container,\n.secret-value-container,\n.entry-value {\n margin-bottom: 6px;\n}\n\n.hidden-field-value,\n.hidden-secret-value {\n color: #858585;\n font-style: italic;\n font-size: 11px;\n}\n\n.empty-field-value,\n.empty-secret-value {\n color: #858585;\n font-style: italic;\n font-size: 10px;\n}\n\n.string-field-value,\n.string-secret-value {\n color: #ce9178;\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 10px;\n}\n\n.complex-field-value,\n.complex-secret-value {\n color: #9cdcfe;\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 10px;\n}\n\n.field-description {\n font-size: 10px;\n color: #858585;\n margin-bottom: 6px;\n font-style: italic;\n}\n\n.field-metadata {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n}\n\n.metadata-badge {\n background: #3c3c3c;\n color: #cccccc;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n border: 1px solid #4a4a4a;\n}\n\n.metadata-badge.has-local {\n background: #2d4a3e;\n color: #4caf50;\n border-color: #4caf50;\n}\n\n.metadata-badge.no-local {\n background: #4a3e2d;\n color: #ffc107;\n border-color: #ffc107;\n}\n\n.metadata-badge.default-value {\n background: #2d2d4a;\n color: #9c88ff;\n border-color: #9c88ff;\n}\n\n/* Edit Mode */\n.field-edit-mode,\n.secret-edit-mode,\n.entry-edit-mode {\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n border-radius: 3px;\n padding: 6px;\n}\n\n.field-edit-input,\n.secret-edit-input,\n.entry-edit-input {\n width: 100%;\n background: #1e1e1e;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 6px;\n border-radius: 2px;\n font-size: 10px;\n font-family: 'SF Mono', 'Monaco', monospace;\n resize: vertical;\n min-height: 40px;\n}\n\n.field-edit-input:focus,\n.secret-edit-input:focus,\n.entry-edit-input:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.field-edit-controls,\n.secret-edit-controls,\n.entry-edit-controls {\n display: flex;\n gap: 6px;\n margin-top: 6px;\n}\n\n.save-btn {\n background: #0e639c;\n color: white;\n border: none;\n padding: 4px 8px;\n border-radius: 2px;\n font-size: 10px;\n cursor: pointer;\n transition: background 0.15s ease;\n}\n\n.save-btn:hover {\n background: #1177bb;\n}\n\n.cancel-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 2px;\n font-size: 10px;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.cancel-btn:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n/* Eye Icon */\n.eye-icon {\n background: none;\n border: none;\n font-size: 10px;\n cursor: pointer;\n padding: 2px;\n border-radius: 2px;\n transition: background 0.15s ease;\n color: #858585;\n}\n\n.eye-icon:hover {\n background: #3c3c3c;\n color: #cccccc;\n}\n\n.eye-icon.visible {\n color: #4caf50;\n}\n\n.eye-icon.hidden {\n color: #858585;\n}\n\n/* Secrets Store Viewer */\n.secrets-store-viewer {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.secrets-sections {\n flex: 1;\n overflow-y: auto;\n padding: 8px 16px;\n}\n\n.secrets-section {\n margin-bottom: 12px;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n background: #2d2d30;\n}\n\n.add-secret-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 2px 6px;\n border-radius: 2px;\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s ease;\n font-weight: bold;\n}\n\n.add-secret-btn:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n/* KV Store Viewer */\n.kv-store-viewer {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.kv-entries {\n flex: 1;\n overflow-y: auto;\n padding: 8px 16px;\n}\n\n.kv-entry {\n margin-bottom: 12px;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n background: #2d2d30;\n}\n\n.entry-header {\n padding: 8px 12px;\n background: #37373d;\n border-radius: 4px 4px 0 0;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.entry-key {\n font-size: 11px;\n font-weight: 500;\n color: #ffffff;\n font-family: 'SF Mono', 'Monaco', monospace;\n}\n\n.entry-value {\n padding: 8px 12px;\n}\n\n/* Add Entry Form */\n.add-entry-form {\n padding: 12px 16px;\n background: #2d2d30;\n border-bottom: 1px solid #3e3e42;\n}\n\n.form-field {\n margin-bottom: 8px;\n}\n\n.form-field label {\n display: block;\n font-size: 10px;\n color: #cccccc;\n margin-bottom: 4px;\n}\n\n.key-input,\n.value-input {\n width: 100%;\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 6px;\n border-radius: 2px;\n font-size: 10px;\n font-family: 'SF Mono', 'Monaco', monospace;\n}\n\n.key-input:focus,\n.value-input:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.value-input {\n resize: vertical;\n min-height: 60px;\n}\n\n.form-controls {\n display: flex;\n gap: 6px;\n margin-top: 8px;\n}\n\n/* Data Tree */\n.data-tree-item {\n margin-bottom: 4px;\n}\n\n.data-tree-item.primitive {\n margin-left: 0;\n}\n\n.data-tree-item.object,\n.data-tree-item.array {\n margin-left: 0;\n}\n\n.data-tree-item.depth-1 { margin-left: 12px; }\n.data-tree-item.depth-2 { margin-left: 24px; }\n.data-tree-item.depth-3 { margin-left: 36px; }\n.data-tree-item.depth-4 { margin-left: 48px; }\n\n.item-header {\n display: flex;\n align-items: center;\n gap: 4px;\n cursor: pointer;\n padding: 2px 4px;\n border-radius: 2px;\n transition: background 0.15s ease;\n}\n\n.item-header:hover {\n background: #3c3c3c;\n}\n\n.item-title {\n font-size: 10px;\n color: #9cdcfe;\n font-weight: 500;\n}\n\n.item-value {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.value {\n font-size: 10px;\n font-family: 'SF Mono', 'Monaco', monospace;\n}\n\n.value.editable {\n cursor: pointer;\n padding: 1px 3px;\n border-radius: 2px;\n transition: background 0.15s ease;\n}\n\n.value.editable:hover {\n background: #3c3c3c;\n}\n\n.value.readonly {\n cursor: default;\n}\n\n.null-value {\n color: #569cd6;\n font-style: italic;\n}\n\n.undefined-value {\n color: #858585;\n font-style: italic;\n}\n\n.boolean-value {\n color: #569cd6;\n}\n\n.number-value {\n color: #b5cea8;\n}\n\n.string-value {\n color: #ce9178;\n}\n\n.hidden-value {\n color: #858585;\n font-style: italic;\n}\n\n.empty-value {\n color: #858585;\n font-style: italic;\n}\n\n.object-info,\n.array-info {\n font-size: 9px;\n color: #858585;\n}\n\n.item-children {\n margin-left: 12px;\n border-left: 1px solid #3e3e42;\n padding-left: 8px;\n}\n\n.edit-mode {\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n border-radius: 2px;\n padding: 4px;\n}\n\n.edit-input {\n width: 100%;\n background: #1e1e1e;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 2px 4px;\n border-radius: 2px;\n font-size: 9px;\n font-family: 'SF Mono', 'Monaco', monospace;\n resize: vertical;\n}\n\n.edit-input:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.edit-controls {\n display: flex;\n gap: 4px;\n margin-top: 4px;\n}\n\n/* Notification Viewer Styles */\n.notification-viewer {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: #1e1e1e;\n}\n\n.notification-controls {\n display: flex;\n gap: 8px;\n padding: 8px 12px;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n}\n\n.clear-notifications-btn,\n.refresh-notifications-btn {\n background: #0e639c;\n color: white;\n border: none;\n padding: 4px 8px;\n border-radius: 2px;\n font-size: 11px;\n cursor: pointer;\n transition: background 0.15s ease;\n}\n\n.clear-notifications-btn:hover,\n.refresh-notifications-btn:hover {\n background: #1177bb;\n}\n\n.notification-list {\n flex: 1;\n overflow-y: auto;\n padding: 8px;\n}\n\n.notification-item {\n margin-bottom: 8px;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n background: #2d2d30;\n transition: all 0.15s ease;\n}\n\n.notification-item:hover {\n background: #3c3c3c;\n}\n\n.notification-item.notification-info {\n border-left: 3px solid #569cd6;\n}\n\n.notification-item.notification-success {\n border-left: 3px solid #4caf50;\n}\n\n.notification-item.notification-warn {\n border-left: 3px solid #ffc107;\n}\n\n.notification-item.notification-error {\n border-left: 3px solid #f44336;\n}\n\n.notification-header {\n padding: 8px 12px;\n cursor: pointer;\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n gap: 8px;\n}\n\n.notification-main {\n flex: 1;\n min-width: 0;\n}\n\n.notification-single-line {\n display: flex;\n align-items: center;\n gap: 6px;\n flex-wrap: wrap;\n width: 100%;\n}\n\n.notification-icon {\n font-size: 12px;\n flex-shrink: 0;\n}\n\n.notification-activity {\n font-size: 11px;\n color: #9cdcfe;\n font-weight: 500;\n flex-shrink: 0;\n}\n\n.notification-separator {\n color: #858585;\n font-size: 10px;\n flex-shrink: 0;\n}\n\n.notification-title {\n font-size: 11px;\n font-weight: 500;\n color: #ffffff;\n flex-shrink: 0;\n max-width: 200px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.notification-summary {\n font-size: 11px;\n color: #cccccc;\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.notification-timestamp {\n font-size: 9px;\n color: #858585;\n margin-left: auto;\n flex-shrink: 0;\n}\n\n.notification-actions {\n display: flex;\n align-items: flex-start;\n gap: 4px;\n flex-shrink: 0;\n}\n\n.delete-notification-btn {\n background: none;\n border: none;\n color: #858585;\n cursor: pointer;\n padding: 2px;\n border-radius: 2px;\n font-size: 10px;\n transition: all 0.15s ease;\n}\n\n.delete-notification-btn:hover {\n background: #f44336;\n color: #ffffff;\n}\n\n.expand-icon {\n color: #858585;\n font-size: 10px;\n width: 12px;\n text-align: center;\n}\n\n.notification-details {\n padding: 8px 12px;\n border-top: 1px solid #3e3e42;\n background: #1e1e1e;\n}\n\n.notification-details pre {\n margin: 0;\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n border-radius: 3px;\n padding: 8px;\n color: #cccccc;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 10px;\n white-space: pre-wrap;\n word-wrap: break-word;\n overflow-x: auto;\n max-height: 200px;\n overflow-y: auto;\n}\n\n.no-notifications {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100px;\n color: #858585;\n font-style: italic;\n font-size: 11px;\n}\n\n/* Notification scrollbars */\n.notification-list::-webkit-scrollbar,\n.notification-details pre::-webkit-scrollbar {\n width: 6px;\n height: 6px;\n}\n\n.notification-list::-webkit-scrollbar-track,\n.notification-details pre::-webkit-scrollbar-track {\n background: #1e1e1e;\n}\n\n.notification-list::-webkit-scrollbar-thumb,\n.notification-details pre::-webkit-scrollbar-thumb {\n background: #3e3e42;\n border-radius: 3px;\n}\n\n.notification-list::-webkit-scrollbar-thumb:hover,\n.notification-details pre::-webkit-scrollbar-thumb:hover {\n background: #4a4a4a;\n}\n\n/* Responsive Store Viewer */\n@media (max-width: 1024px) {\n .store-tabs {\n overflow-x: auto;\n }\n\n .tab-label {\n display: none;\n }\n\n .store-tab {\n min-width: 50px;\n justify-content: center;\n }\n\n .notification-single-line {\n flex-direction: column;\n align-items: flex-start;\n gap: 2px;\n }\n\n .notification-timestamp {\n margin-left: 0;\n }\n\n .notification-title {\n max-width: none;\n }\n}\n\n@media (max-width: 768px) {\n .store-header {\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n }\n\n .field-header,\n .secret-header,\n .entry-header {\n flex-direction: column;\n align-items: flex-start;\n gap: 6px;\n }\n\n .field-controls,\n .secret-controls {\n align-self: flex-end;\n }\n}\n\n/* Responsive Functions View */\n@media (max-width: 1024px) {\n .functions-sidebar {\n width: 160px;\n }\n}\n\n@media (max-width: 768px) {\n .functions-layout {\n flex-direction: column;\n }\n\n .functions-sidebar {\n width: 100%;\n height: 120px;\n border-right: none;\n border-bottom: 1px solid #3e3e42;\n }\n\n .functions-list {\n display: flex;\n overflow-x: auto;\n overflow-y: hidden;\n padding: 4px;\n }\n\n .function-item {\n min-width: 140px;\n margin-right: 4px;\n border-bottom: none;\n border-radius: 3px;\n border: 1px solid #3e3e42;\n }\n\n .function-item.active {\n border-left: 1px solid #ffffff;\n border-color: #ffffff;\n }\n\n .url-bar {\n flex-direction: column;\n gap: 6px;\n align-items: stretch;\n }\n\n .url-bar > * {\n width: 100%;\n }\n\n .http-method-select {\n min-width: unset;\n }\n\n .response-section {\n min-height: 200px;\n }\n}\n\n/* Jobs View */\n.jobs-view {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.jobs-not-installed {\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.sources-not-installed {\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.destinations-not-installed {\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Jobs Controls (dropdown at top) */\n.jobs-controls {\n padding: 12px 16px;\n background: #252526;\n border-bottom: 1px solid #3e3e42;\n display: flex;\n align-items: center;\n gap: 12px;\n flex-shrink: 0;\n}\n\n.job-selector-group {\n display: flex;\n align-items: center;\n gap: 8px;\n flex: 1;\n}\n\n.job-selector-group label {\n font-size: 11px;\n font-weight: 500;\n color: #cccccc;\n white-space: nowrap;\n}\n\n.job-selector-group select {\n flex: 1;\n max-width: 600px;\n padding: 6px 8px;\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n font-size: 11px;\n cursor: pointer;\n}\n\n.job-selector-group select:focus {\n outline: 1px solid #007acc;\n border-color: #007acc;\n}\n\n.job-selector-group select:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.start-job-btn {\n background: #007acc;\n color: #ffffff;\n border: 1px solid #007acc;\n padding: 6px 12px;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.2s;\n white-space: nowrap;\n}\n\n.start-job-btn:hover:not(:disabled) {\n background: #005a9e;\n border-color: #005a9e;\n}\n\n.start-job-btn:disabled {\n background: #3e3e42;\n border-color: #3e3e42;\n color: #858585;\n cursor: not-allowed;\n opacity: 0.6;\n}\n\n.jobs-layout {\n display: grid;\n grid-template-columns: 320px 1fr;\n gap: 0;\n flex: 1;\n min-height: 0;\n padding: 16px;\n}\n\n.no-jobs {\n padding: 16px 12px;\n text-align: center;\n}\n\n.no-jobs p {\n margin: 0;\n font-size: 11px;\n color: #858585;\n}\n\n/* Legacy job-item styles - kept for source jobs compatibility */\n.job-item {\n padding: 8px 12px;\n cursor: pointer;\n border-bottom: 1px solid #3e3e42;\n transition: background 0.15s ease;\n}\n\n.job-item:hover {\n background: #2a2d2e;\n}\n\n.job-item.active {\n background: #37373d;\n border-left: 2px solid #ffffff;\n}\n\n.job-item.invalid {\n border-left: 2px solid #dc3545;\n}\n\n.job-name {\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n margin-bottom: 2px;\n}\n\n.job-description {\n font-size: 10px;\n color: #858585;\n line-height: 1.3;\n margin-bottom: 4px;\n}\n\n.job-meta {\n display: flex;\n gap: 4px;\n flex-wrap: wrap;\n}\n\n.job-badge {\n display: inline-block;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n border: 1px solid;\n}\n\n.job-badge.source {\n background: #3c3c3c;\n color: #cccccc;\n border-color: #4a4a4a;\n}\n\n.job-badge.cron {\n background: #2d5200;\n color: #7bb300;\n border-color: #5c8f00;\n}\n\n.job-badge.error {\n background: #5c2d2d;\n color: #ff6b6b;\n border-color: #8f3f3f;\n}\n\n/* Executions Panel */\n.executions-panel {\n width: 300px;\n background: #252526;\n border-right: 1px solid #3e3e42;\n display: flex;\n flex-direction: column;\n}\n\n.executions-header {\n padding: 8px 12px;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n}\n\n.executions-header h4 {\n margin: 0 0 4px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.selected-job {\n font-size: 10px;\n color: #858585;\n}\n\n.executions-list {\n flex: 1;\n overflow-y: auto;\n padding: 4px 0;\n}\n\n.no-executions {\n padding: 16px 12px;\n text-align: center;\n}\n\n.no-executions p {\n margin: 0;\n font-size: 11px;\n color: #858585;\n}\n\n.execution-item {\n padding: 8px 12px;\n cursor: pointer;\n border-bottom: 1px solid #3e3e42;\n transition: background 0.15s ease;\n}\n\n.execution-item:hover {\n background: #2a2d2e;\n}\n\n.execution-item.active {\n background: #37373d;\n border-left: 2px solid #ffffff;\n}\n\n.execution-status {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-bottom: 4px;\n}\n\n.status-dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n}\n\n.status-spinner {\n width: 8px;\n height: 8px;\n border: 1px solid #3e3e42;\n border-top: 1px solid #007bff;\n border-radius: 50%;\n animation: spin 1s linear infinite;\n display: inline-block;\n}\n\n@keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n\n.status-text {\n font-size: 11px;\n font-weight: 500;\n color: #ffffff;\n text-transform: capitalize;\n}\n\n.execution-time {\n font-size: 10px;\n color: #858585;\n margin-bottom: 4px;\n}\n\n.started-at {\n margin-bottom: 2px;\n}\n\n.execution-duration {\n font-size: 9px;\n color: #999999;\n}\n\n.execution-stats {\n font-size: 10px;\n color: #858585;\n margin-bottom: 4px;\n}\n\n.state-count {\n background: #3c3c3c;\n color: #cccccc;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n border: 1px solid #4a4a4a;\n}\n\n.execution-error {\n font-size: 9px;\n color: #ff6b6b;\n background: #4a2828;\n padding: 2px 4px;\n border-radius: 2px;\n margin-top: 4px;\n border: 1px solid #6b3333;\n}\n\n/* States Panel */\n.states-panel {\n flex: 1;\n background: #1e1e1e;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n\n.states-header {\n padding: 8px 12px;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n}\n\n.states-header h4 {\n margin: 0 0 4px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.selected-execution {\n font-size: 10px;\n color: #858585;\n}\n\n.states-list {\n flex: 1;\n overflow-y: auto;\n padding: 4px 0;\n}\n\n.no-states {\n padding: 16px 12px;\n text-align: center;\n}\n\n.no-states p {\n margin: 0;\n font-size: 11px;\n color: #858585;\n}\n\n.state-item {\n border-bottom: 1px solid #3e3e42;\n}\n\n.state-header {\n padding: 8px 12px;\n cursor: pointer;\n display: flex;\n justify-content: space-between;\n align-items: center;\n transition: background 0.15s ease;\n}\n\n.state-header:hover {\n background: #2a2d2e;\n}\n\n.state-meta {\n display: flex;\n flex-direction: column;\n gap: 4px;\n flex: 1;\n}\n\n.state-primary-info {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.state-secondary-info {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.state-timestamp {\n font-size: 11px;\n color: #ffffff;\n font-weight: 500;\n}\n\n.state-phase {\n font-size: 9px;\n padding: 1px 4px;\n border-radius: 2px;\n border: 1px solid;\n font-weight: 500;\n text-transform: uppercase;\n}\n\n.state-phase.prepare {\n background: #3d2d5c;\n color: #9b7bb3;\n border-color: #5c4a8f;\n}\n\n.state-phase.perform {\n background: #2d4a5c;\n color: #7bb3d4;\n border-color: #4a7c8f;\n}\n\n.state-status {\n font-size: 10px;\n padding: 1px 4px;\n border-radius: 2px;\n border: 1px solid;\n}\n\n.state-status.complete {\n background: #2d5200;\n color: #7bb300;\n border-color: #5c8f00;\n}\n\n.state-status.error {\n background: #5c2d2d;\n color: #ff6b6b;\n border-color: #8f3f3f;\n}\n\n.state-status.incomplete {\n background: #5c5200;\n color: #d4b300;\n border-color: #8f7c00;\n}\n\n.state-expand {\n display: flex;\n align-items: center;\n}\n\n.expand-icon {\n font-size: 10px;\n color: #858585;\n transition: transform 0.15s ease;\n}\n\n.expand-icon.expanded {\n transform: rotate(180deg);\n}\n\n.state-content {\n padding: 12px;\n background: #1a1a1a;\n border-top: 1px solid #3e3e42;\n}\n\n.state-content pre {\n font-size: 10px;\n color: #cccccc;\n margin: 0;\n white-space: pre-wrap;\n word-break: break-word;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n max-height: 300px;\n overflow-y: auto;\n background: #181818;\n padding: 8px;\n border: 1px solid #3e3e42;\n border-radius: 2px;\n}\n\n.execution-summary {\n font-size: 11px;\n color: #cccccc;\n}\n\n.execution-summary div {\n margin-bottom: 6px;\n}\n\n.execution-summary strong {\n color: #ffffff;\n margin-right: 8px;\n}\n\n.execution-details-content {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n/* Modal Styles */\n.modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.7);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000;\n}\n\n.modal {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n min-width: 400px;\n max-width: 600px;\n max-height: 80vh;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n}\n\n.modal-header {\n padding: 12px 16px;\n background: #252526;\n border-bottom: 1px solid #3e3e42;\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.modal-header h3 {\n margin: 0;\n font-size: 14px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.modal-close {\n background: none;\n border: none;\n color: #858585;\n font-size: 18px;\n cursor: pointer;\n padding: 0;\n width: 20px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.modal-close:hover {\n color: #ffffff;\n}\n\n.modal-body {\n padding: 16px;\n flex: 1;\n overflow-y: auto;\n}\n\n.modal-footer {\n padding: 12px 16px;\n background: #252526;\n border-top: 1px solid #3e3e42;\n display: flex;\n justify-content: flex-end;\n gap: 8px;\n}\n\n.cancel-btn, .start-btn {\n padding: 6px 12px;\n border-radius: 3px;\n font-size: 11px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.cancel-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n}\n\n.cancel-btn:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.start-btn {\n background: #007acc;\n color: #ffffff;\n border: 1px solid #0e639c;\n}\n\n.start-btn:hover:not(:disabled) {\n background: #1177bb;\n border-color: #1177bb;\n}\n\n.start-btn:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n/* Start Job Error */\n.start-job-error {\n background: #5c2d2d;\n border: 1px solid #8f3f3f;\n border-radius: 3px;\n padding: 12px;\n margin-bottom: 16px;\n}\n\n.start-job-error h4 {\n margin: 0 0 8px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ff6b6b;\n}\n\n.start-job-error p {\n margin: 0;\n font-size: 11px;\n color: #ffcccc;\n line-height: 1.4;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n/* Job Parameters */\n.job-parameters h4 {\n margin: 0 0 12px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.parameter-list {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.parameter-row {\n display: flex;\n gap: 8px;\n align-items: center;\n}\n\n.parameter-key, .parameter-value {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 6px 8px;\n border-radius: 3px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.parameter-key {\n flex: 0 0 120px;\n}\n\n.parameter-value {\n flex: 1;\n}\n\n.parameter-key:focus, .parameter-value:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.remove-parameter {\n background: #dc3545;\n color: #ffffff;\n border: 1px solid #c82333;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s ease;\n width: 24px;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.remove-parameter:hover {\n background: #c82333;\n border-color: #bd2130;\n}\n\n.add-parameter {\n background: #28a745;\n color: #ffffff;\n border: 1px solid #1e7e34;\n padding: 6px 12px;\n border-radius: 3px;\n font-size: 11px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n align-self: flex-start;\n}\n\n.add-parameter:hover {\n background: #218838;\n border-color: #1e7e34;\n}\n\n/* Responsive Jobs View */\n@media (max-width: 1024px) {\n .jobs-sidebar {\n width: 180px;\n }\n\n .executions-panel {\n width: 280px;\n }\n}\n\n@media (max-width: 768px) {\n .jobs-layout {\n flex-direction: column;\n }\n\n .jobs-sidebar {\n width: 100%;\n height: 150px;\n }\n\n .executions-panel {\n width: 100%;\n height: 200px;\n }\n\n .states-panel {\n height: 250px;\n }\n}\n/* Destinations View */\n.destinations-view {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.destinations-layout {\n display: flex;\n height: 100%;\n overflow: hidden;\n}\n\n/* Destinations Sidebar */\n.destinations-sidebar {\n width: 200px;\n background: #252526;\n border-right: 1px solid #3e3e42;\n display: flex;\n flex-direction: column;\n}\n\n.destinations-header {\n padding: 8px 12px;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n}\n\n.destinations-header h4 {\n margin: 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.destinations-list {\n flex: 1;\n overflow-y: auto;\n padding: 4px 0;\n}\n\n.destination-item {\n padding: 8px 12px;\n cursor: pointer;\n border-bottom: 1px solid #3e3e42;\n transition: background 0.15s ease;\n}\n\n.destination-item:hover {\n background: #2a2d2e;\n}\n\n.destination-item.active {\n background: #37373d;\n border-left: 2px solid #ffffff;\n}\n\n.destination-name {\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n margin-bottom: 2px;\n}\n\n.destination-description {\n font-size: 10px;\n color: #858585;\n line-height: 1.3;\n margin-bottom: 4px;\n}\n\n/* Destinations Content */\n.destinations-content {\n flex: 1;\n display: flex;\n flex-direction: column;\n background: #1e1e1e;\n overflow: hidden;\n}\n\n.no-destination-selected {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.schema-section {\n flex: 1;\n display: flex;\n flex-direction: column;\n border-bottom: 1px solid #3e3e42;\n overflow-y: auto;\n padding: 12px 16px;\n}\n\n.batch-section {\n flex: 1;\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n padding: 12px 16px;\n border-bottom: 2px solid #4a4a4a;\n}\n\n/* Schema Viewer */\n.schema-viewer {\n color: #cccccc;\n}\n\n.schema-viewer.error {\n color: #f48771;\n}\n\n.schema-header h4 {\n margin-top: 0;\n color: #ffffff;\n font-size: 12px;\n font-weight: 500;\n}\n\n.schema-description {\n color: #858585;\n font-size: 11px;\n margin-bottom: 16px;\n}\n\n.schema-fields h4,\n.schema-custom-types h4 {\n color: #ffffff;\n font-size: 12px;\n font-weight: 500;\n margin-top: 16px;\n margin-bottom: 8px;\n}\n\n.fields-table {\n width: 100%;\n border-collapse: collapse;\n margin-bottom: 16px;\n font-size: 11px;\n}\n\n.fields-table th {\n background: #2d2d30;\n padding: 6px 8px;\n text-align: left;\n border-bottom: 1px solid #3e3e42;\n font-weight: 500;\n color: #cccccc;\n}\n\n.fields-table td {\n padding: 6px 8px;\n border-bottom: 1px solid #3e3e42;\n}\n\n.fields-table tr.primary-field {\n background: rgba(79, 195, 247, 0.1);\n}\n\n.field-name {\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n color: #4fc3f7;\n font-size: 10px;\n}\n\n.field-display-name {\n color: #ffffff;\n font-size: 10px;\n}\n\n.field-type {\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 10px;\n}\n\n.type-badge {\n display: inline-block;\n padding: 2px 6px;\n border-radius: 2px;\n font-size: 9px;\n background: #3c3c3c;\n color: #cccccc;\n margin-right: 4px;\n border: 1px solid #4a4a4a;\n}\n\n.type-badge.type-string {\n background: #2d5200;\n color: #7bb300;\n border-color: #5c8f00;\n}\n\n.type-badge.type-integer {\n background: #2d4a5c;\n color: #7bb3d4;\n border-color: #4a7c8f;\n}\n\n.type-badge.type-decimal {\n background: #2d4a5c;\n color: #7bb3d4;\n border-color: #4a7c8f;\n}\n\n.type-badge.type-boolean {\n background: #5c5200;\n color: #d4b300;\n border-color: #8f7c00;\n}\n\n.primary-badge {\n display: inline-block;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n background: #5c2d2d;\n color: #ff6b6b;\n border: 1px solid #8f3f3f;\n font-weight: 500;\n}\n\n.field-description {\n color: #858585;\n font-size: 10px;\n}\n\n.custom-type {\n margin-bottom: 12px;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n overflow: hidden;\n}\n\n.custom-type-header {\n padding: 8px 12px;\n background: #2d2d30;\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: 8px;\n transition: background 0.15s ease;\n}\n\n.custom-type-header:hover {\n background: #37373d;\n}\n\n.expand-icon {\n color: #858585;\n font-size: 10px;\n width: 12px;\n}\n\n.custom-type-name {\n font-weight: 500;\n color: #4fc3f7;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 11px;\n}\n\n.custom-type-description {\n color: #858585;\n font-size: 10px;\n}\n\n.custom-type .fields-table {\n margin: 0;\n}\n\n/* Batch Editor */\n.batch-editor {\n color: #cccccc;\n}\n\n.batch-editor h4 {\n margin-top: 0;\n color: #ffffff;\n font-size: 12px;\n font-weight: 500;\n}\n\n/* All buttons section */\n.all-buttons-section {\n display: flex;\n gap: 12px;\n margin-bottom: 16px;\n align-items: center;\n}\n\n.settings-icon-button {\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n font-size: 18px;\n cursor: pointer;\n padding: 10px 16px;\n color: #858585;\n transition: all 0.15s;\n border-radius: 3px;\n flex-shrink: 0;\n}\n\n.settings-icon-button:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n color: #cccccc;\n}\n\n.button-separator {\n width: 1px;\n background: #4a4a4a;\n margin: 0 4px;\n}\n\n.generate-button {\n flex: 1;\n padding: 10px 16px;\n font-size: 14px;\n font-weight: 500;\n background-color: #3c3c3c;\n border: 1px solid #4a4a4a;\n color: #cccccc;\n border-radius: 3px;\n cursor: pointer;\n transition: background-color 0.15s, border-color 0.15s;\n}\n\n.generate-button:hover:not(:disabled) {\n background-color: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.generate-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n/* JSON Editor - maximize space */\n.batch-json-editor {\n margin-bottom: 16px;\n}\n\n.batch-json-editor label {\n display: block;\n margin-bottom: 4px;\n color: #858585;\n font-size: 10px;\n}\n\n.batch-json-editor textarea {\n width: 100%;\n min-height: 300px;\n padding: 8px;\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n border-radius: 3px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 11px;\n resize: vertical;\n}\n\n.batch-json-editor textarea:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.batch-json-editor textarea.valid {\n border-color: #4caf50;\n}\n\n.batch-json-editor textarea.invalid {\n border-color: #f48771;\n}\n\n.json-error {\n color: #f48771;\n font-size: 10px;\n margin-top: 4px;\n}\n\n.deliver-button {\n flex: 1;\n padding: 12px 20px;\n font-size: 16px;\n font-weight: 600;\n border-radius: 3px;\n cursor: pointer;\n transition: background-color 0.15s, border-color 0.15s;\n}\n\n.deliver-button.primary {\n background-color: #0e639c;\n color: white;\n border: 1px solid #0e639c;\n}\n\n.deliver-button.primary:hover:not(:disabled) {\n background-color: #1177bb;\n border-color: #1177bb;\n}\n\n.deliver-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.ready-button {\n flex: 1;\n padding: 12px 20px;\n font-size: 15px;\n font-weight: 500;\n border-radius: 3px;\n cursor: pointer;\n transition: background-color 0.15s, border-color 0.15s;\n}\n\n.ready-button.secondary {\n background-color: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n}\n\n.ready-button.secondary:hover:not(:disabled) {\n background-color: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.ready-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.deliver-button:focus,\n.ready-button:focus,\n.generate-button:focus {\n outline: none;\n border-color: #ffffff;\n box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.2);\n}\n\n/* Toast Notifications */\n.toast-notification {\n position: fixed;\n top: 60px;\n right: 20px;\n min-width: 300px;\n max-width: 400px;\n padding: 16px;\n border-radius: 4px;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);\n z-index: 2000;\n animation: slideInRight 0.3s ease-out;\n border-left: 4px solid;\n}\n\n@keyframes slideInRight {\n from {\n transform: translateX(100%);\n opacity: 0;\n }\n to {\n transform: translateX(0);\n opacity: 1;\n }\n}\n\n.toast-notification.toast-success {\n background: #2d5200;\n border-color: #7bb300;\n}\n\n.toast-notification.toast-error {\n background: #5c2d2d;\n border-color: #ff6b6b;\n}\n\n.toast-notification.toast-warning {\n background: #5c5200;\n border-color: #d4b300;\n}\n\n.toast-content {\n color: #ffffff;\n}\n\n.toast-content strong {\n display: block;\n font-size: 13px;\n margin-bottom: 6px;\n font-weight: 600;\n}\n\n.toast-message {\n font-size: 12px;\n line-height: 1.4;\n color: #cccccc;\n}\n\n.toast-detail {\n font-size: 11px;\n margin-top: 4px;\n color: #999999;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n/* Responsive Destinations View */\n@media (max-width: 1024px) {\n .destinations-sidebar {\n width: 180px;\n }\n}\n\n@media (max-width: 768px) {\n .destinations-layout {\n flex-direction: column;\n }\n\n .destinations-sidebar {\n width: 100%;\n height: 150px;\n border-right: none;\n border-bottom: 1px solid #3e3e42;\n }\n\n .destinations-list {\n display: flex;\n overflow-x: auto;\n overflow-y: hidden;\n padding: 4px;\n }\n\n .destination-item {\n min-width: 140px;\n margin-right: 4px;\n border-bottom: none;\n border-radius: 3px;\n border: 1px solid #3e3e42;\n }\n\n .destination-item.active {\n border-left: 1px solid #ffffff;\n border-color: #ffffff;\n }\n\n .schema-section,\n .batch-section {\n flex: none;\n min-height: 200px;\n }\n}\n\n/* Sources - Specific Styles (reuses destinations-* classes for layout) */\n\n/* Source webhook and data section - 2-column grid */\n.source-webhook-and-data-section {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 12px;\n margin-bottom: 12px;\n padding: 12px 16px;\n}\n\n.source-webhook-section,\n.source-data-section {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n padding: 12px;\n}\n\n/* Source webhook editor */\n.source-webhook-section h3,\n.source-data-section h3 {\n margin: 0 0 12px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.webhook-controls {\n display: flex;\n gap: 8px;\n margin-bottom: 12px;\n align-items: center;\n flex-wrap: wrap;\n}\n\n.method-selector {\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.method-selector label {\n font-size: 11px;\n color: #858585;\n}\n\n.method-selector select {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 11px;\n}\n\n.webhook-payload-editor label {\n display: block;\n margin-bottom: 6px;\n font-size: 11px;\n color: #858585;\n}\n\n.webhook-payload-editor textarea {\n width: 100%;\n min-height: 120px;\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 8px;\n border-radius: 3px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', monospace;\n resize: vertical;\n}\n\n.webhook-payload-editor textarea.valid {\n border-color: #4caf50;\n}\n\n.webhook-payload-editor textarea.invalid {\n border-color: #f48771;\n}\n\n.webhook-response {\n margin-top: 12px;\n padding: 8px;\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n border-radius: 3px;\n}\n\n.webhook-response h4 {\n margin: 0 0 6px 0;\n font-size: 11px;\n color: #ffffff;\n}\n\n.response-status {\n margin-bottom: 6px;\n font-size: 10px;\n font-weight: 500;\n}\n\n.response-body pre {\n margin: 0;\n font-size: 10px;\n overflow-x: auto;\n}\n\n/* Source data viewer */\n.source-data-viewer {\n display: flex;\n flex-direction: column;\n min-height: 0;\n height: 100%;\n}\n\n.data-viewer-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 12px;\n flex-shrink: 0;\n}\n\n.data-viewer-header h3 {\n margin: 0;\n}\n\n.data-viewer-controls {\n display: flex;\n gap: 6px;\n align-items: center;\n}\n\n.data-viewer-controls button {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 10px;\n cursor: pointer;\n}\n\n.data-viewer-controls button:hover:not(:disabled) {\n background: #4a4a4a;\n}\n\n.data-viewer-controls button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.auto-refresh-toggle {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 10px;\n color: #858585;\n}\n\n.data-entries {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n}\n\n.entries-list {\n padding: 6px;\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.data-entry {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n padding: 8px;\n}\n\n.entry-header {\n display: flex;\n justify-content: space-between;\n margin-bottom: 6px;\n font-size: 10px;\n color: #858585;\n}\n\n.entry-timestamp {\n font-weight: 500;\n color: #9cdcfe;\n}\n\n.entry-data pre {\n margin: 0;\n font-size: 10px;\n font-family: 'SF Mono', 'Monaco', monospace;\n color: #cccccc;\n overflow-x: auto;\n}\n\n.entry-metadata-details {\n margin-top: 6px;\n}\n\n.entry-metadata-details summary {\n cursor: pointer;\n font-size: 10px;\n color: #858585;\n}\n\n.entry-metadata-details pre {\n margin: 4px 0 0 0;\n font-size: 9px;\n color: #cccccc;\n}\n\n.data-viewer-footer {\n margin-top: 8px;\n font-size: 10px;\n color: #858585;\n flex-shrink: 0;\n text-align: right;\n}\n\n.no-data {\n padding: 24px;\n text-align: center;\n color: #858585;\n font-size: 11px;\n}\n\n.no-data .hint {\n font-size: 10px;\n margin-top: 6px;\n font-style: italic;\n}\n\n/* Source jobs wrapper */\n.source-jobs-wrapper {\n padding: 12px 16px;\n margin-bottom: 12px;\n}\n\n.source-jobs-section {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n padding: 12px;\n}\n\n.source-jobs-section h3 {\n margin: 0 0 12px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.source-jobs-section .job-item {\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n margin-bottom: 8px;\n}\n\n.source-jobs-section .job-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px;\n}\n\n.source-jobs-section .job-info {\n display: flex;\n align-items: center;\n gap: 6px;\n cursor: pointer;\n flex: 1;\n}\n\n.source-jobs-section .job-name {\n font-size: 11px;\n font-weight: 500;\n color: #ffffff;\n margin-bottom: 2px;\n}\n\n.source-jobs-section .job-description {\n font-size: 10px;\n color: #858585;\n}\n\n.run-job-button {\n background: #0e639c;\n color: white;\n border: none;\n padding: 4px 12px;\n border-radius: 3px;\n font-size: 10px;\n cursor: pointer;\n font-weight: 500;\n}\n\n.run-job-button:hover:not(:disabled) {\n background: #1177bb;\n}\n\n.run-job-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.job-executions {\n padding: 8px;\n border-top: 1px solid #3e3e42;\n background: #252526;\n}\n\n.job-executions h4 {\n margin: 0 0 8px 0;\n font-size: 11px;\n color: #ffffff;\n}\n\n.execution-item {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n margin-bottom: 6px;\n}\n\n.execution-item.success {\n border-left: 3px solid #4caf50;\n}\n\n.execution-item.failure {\n border-left: 3px solid #f48771;\n}\n\n.execution-header {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 6px 8px;\n cursor: pointer;\n}\n\n.execution-header:hover {\n background: #37373d;\n}\n\n.execution-status {\n font-size: 12px;\n}\n\n.execution-timestamp {\n flex: 1;\n font-size: 10px;\n color: #cccccc;\n}\n\n.execution-time {\n font-size: 10px;\n color: #858585;\n}\n\n.execution-details {\n padding: 8px;\n border-top: 1px solid #3e3e42;\n background: #1e1e1e;\n}\n\n.execution-error,\n.execution-logs,\n.execution-result {\n margin-bottom: 8px;\n}\n\n.execution-error strong,\n.execution-logs strong,\n.execution-result strong {\n display: block;\n margin-bottom: 4px;\n font-size: 10px;\n color: #ffffff;\n}\n\n.execution-logs pre,\n.execution-result pre {\n margin: 0;\n padding: 6px;\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n border-radius: 3px;\n font-size: 9px;\n color: #cccccc;\n overflow-x: auto;\n font-family: 'SF Mono', 'Monaco', monospace;\n}\n\n.no-executions {\n padding: 16px;\n text-align: center;\n color: #858585;\n font-size: 10px;\n font-style: italic;\n}\n\n/* Source Tabs */\n.source-tabs {\n display: flex;\n gap: 0;\n border-bottom: 1px solid #3e3e42;\n margin-bottom: 16px;\n}\n\n.source-tab {\n padding: 10px 20px;\n background: transparent;\n border: none;\n border-bottom: 2px solid transparent;\n color: #858585;\n cursor: pointer;\n font-size: 11px;\n font-weight: 500;\n transition: all 0.2s;\n}\n\n.source-tab:hover {\n color: #cccccc;\n background: #2a2a2a;\n}\n\n.source-tab.active {\n color: #ffffff;\n border-bottom-color: #007acc;\n background: transparent;\n}\n\n/* Source Tab Content */\n.source-tab-content {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n}\n\n.source-tab-panel {\n display: grid;\n grid-template-columns: 1fr 400px;\n gap: 16px;\n flex: 1;\n min-height: 0;\n}\n\n.source-main-section {\n display: flex;\n flex-direction: column;\n gap: 16px;\n min-height: 0;\n height: 100%;\n padding-left: 16px;\n}\n\n.source-main-section > *:first-child {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n\n.source-main-section > *:last-child {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n\n.source-side-panels {\n display: flex;\n flex-direction: column;\n min-height: 0;\n height: 100%;\n overflow: hidden;\n}\n\n.source-panel {\n background: #252526;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n padding: 12px;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n}\n\n.source-full-width-panel {\n background: #252526;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n padding: 12px;\n flex-shrink: 0;\n}\n\n/* Webhook Editor */\n.webhook-editor {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n}\n\n.webhook-editor h3 {\n margin: 0 0 12px 0;\n flex-shrink: 0;\n}\n\n/* Webhook URL Display */\n.webhook-url-display {\n margin-bottom: 12px;\n flex-shrink: 0;\n}\n\n.webhook-url-display label {\n display: block;\n margin-bottom: 4px;\n font-size: 11px;\n color: #cccccc;\n font-weight: 500;\n}\n\n.webhook-url-display .url-value {\n padding: 8px 12px;\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 11px;\n color: #d4d4d4;\n word-break: break-all;\n}\n\n/* Action buttons (matching destination button style) */\n.action-button {\n flex: 1;\n padding: 12px 20px;\n border-radius: 4px;\n border: 1px solid #4a4a4a;\n cursor: pointer;\n font-size: 12px;\n font-weight: 500;\n transition: all 0.2s;\n}\n\n.action-button.primary {\n background-color: #0e639c;\n color: white;\n border-color: #0e639c;\n}\n\n.action-button.primary:hover:not(:disabled) {\n background-color: #1177bb;\n border-color: #1177bb;\n}\n\n.action-button.secondary {\n background-color: #3c3c3c;\n color: #cccccc;\n border-color: #4a4a4a;\n}\n\n.action-button.secondary:hover:not(:disabled) {\n background-color: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.action-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.action-button:focus {\n outline: none;\n border-color: #ffffff;\n box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1);\n}\n\n/* Schema Viewer in Panel */\n.source-panel .schema-viewer {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n overflow-y: auto;\n}\n\n/* Source Jobs Section in Panel */\n.source-panel .source-jobs-section {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n}\n\n.source-panel .source-jobs-section h3 {\n margin: 0 0 12px 0;\n flex-shrink: 0;\n}\n\n.source-panel .jobs-list {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n\n/* Full-width source jobs layout */\n.source-jobs-full-width {\n flex: 1;\n min-height: 0;\n display: flex;\n height: 100%;\n padding-left: 16px;\n}\n\n.source-jobs-full-width .source-jobs-container {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n overflow: hidden;\n}\n\n/* Source Jobs Controls */\n.source-jobs-controls {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px;\n background: #252526;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n margin-bottom: 16px;\n flex-shrink: 0;\n}\n\n.job-selector-group {\n display: flex;\n align-items: center;\n gap: 8px;\n flex: 1;\n}\n\n.job-selector-group label {\n color: #cccccc;\n font-size: 12px;\n white-space: nowrap;\n}\n\n.job-selector-group select {\n flex: 1;\n padding: 6px 8px;\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n color: #cccccc;\n font-size: 12px;\n cursor: pointer;\n}\n\n.job-selector-group select:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.job-selector-group select:focus {\n outline: none;\n border-color: #007acc;\n}\n\n/* Source Jobs Panels (2-column layout) */\n.source-jobs-panels {\n flex: 1;\n display: flex;\n gap: 16px;\n min-height: 0;\n overflow: hidden;\n}\n\n.source-jobs-panels .executions-panel {\n flex: 1;\n min-width: 0;\n}\n\n/* Right column with vertical split */\n.source-jobs-right-column {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n\n.source-jobs-right-column .states-panel {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n\n.source-jobs-right-column .source-panel {\n flex: 1;\n min-height: 0;\n}\n\n/* Responsive adjustments */\n@media (max-width: 1200px) {\n .source-tab-panel {\n grid-template-columns: 1fr;\n }\n\n .source-side-panels {\n flex-direction: row;\n }\n\n .source-panel {\n flex: 1;\n }\n}\n\n/* ===================================\n Source Lifecycle Section Styles\n =================================== */\n\n.source-lifecycle-container {\n height: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.source-lifecycle-full-width {\n width: 100%;\n height: 100%;\n overflow-y: auto;\n}\n\n.source-schema-full-width {\n width: 100%;\n height: 100%;\n overflow-y: auto;\n padding: 16px;\n}\n\n/* Two Panel Layout */\n.lifecycle-two-panel {\n display: grid;\n grid-template-columns: 400px 1fr;\n gap: 16px;\n height: 100%;\n min-height: 0;\n}\n\n/* Left Panel - Methods List */\n.lifecycle-methods-panel {\n background: #252526;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.lifecycle-methods-panel .panel-header {\n padding: 12px;\n border-bottom: 1px solid #3e3e42;\n flex-shrink: 0;\n}\n\n.lifecycle-methods-panel .panel-header h3 {\n margin: 0 0 4px 0;\n font-size: 13px;\n font-weight: 600;\n color: #cccccc;\n}\n\n.lifecycle-methods-panel .panel-description {\n margin: 0;\n font-size: 11px;\n color: #858585;\n}\n\n.lifecycle-methods-panel .panel-description strong {\n color: #d4d4d4;\n font-weight: 500;\n}\n\n.lifecycle-methods-list {\n flex: 1;\n overflow-y: auto;\n min-height: 0;\n}\n\n.lifecycle-method-item {\n border-bottom: 1px solid #3e3e42;\n}\n\n.lifecycle-method-item:last-child {\n border-bottom: none;\n}\n\n.lifecycle-method-item .method-header {\n padding: 12px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n transition: background 0.2s;\n}\n\n.lifecycle-method-item .method-header:hover {\n background: #2a2a2a;\n}\n\n.lifecycle-method-item .method-info {\n flex: 1;\n min-width: 0;\n}\n\n.lifecycle-method-item .method-info h4 {\n margin: 0 0 4px 0;\n font-size: 12px;\n font-weight: 600;\n color: #cccccc;\n}\n\n.lifecycle-method-item .method-info p {\n margin: 0;\n font-size: 11px;\n color: #858585;\n line-height: 1.4;\n}\n\n.lifecycle-trigger-btn {\n padding: 6px 12px;\n background: #007acc;\n color: #ffffff;\n border: 1px solid #007acc;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.2s;\n flex-shrink: 0;\n min-width: 70px;\n}\n\n.lifecycle-trigger-btn:hover:not(:disabled) {\n background: #005a9e;\n border-color: #005a9e;\n}\n\n.lifecycle-trigger-btn:disabled {\n background: #3e3e42;\n border-color: #3e3e42;\n color: #858585;\n cursor: not-allowed;\n opacity: 0.6;\n}\n\n/* Right Panel - Response */\n.lifecycle-response-panel {\n background: #252526;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.lifecycle-response-panel .panel-header {\n padding: 12px;\n border-bottom: 1px solid #3e3e42;\n flex-shrink: 0;\n}\n\n.lifecycle-response-panel .panel-header h3 {\n margin: 0;\n font-size: 13px;\n font-weight: 600;\n color: #cccccc;\n}\n\n.response-content {\n flex: 1;\n overflow-y: auto;\n padding: 12px;\n min-height: 0;\n}\n\n.no-response {\n text-align: center;\n padding: 40px 20px;\n color: #858585;\n}\n\n.no-response p {\n margin: 0 0 8px 0;\n font-size: 11px;\n}\n\n.no-response .hint {\n font-size: 11px;\n color: #6a6a6a;\n}\n\n.response-details {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.response-header {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.response-status {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.response-status .status-dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n flex-shrink: 0;\n}\n\n.response-status.success .status-dot {\n background: #28a745;\n}\n\n.response-status.error .status-dot {\n background: #dc3545;\n}\n\n.response-status .status-text {\n font-size: 12px;\n font-weight: 600;\n}\n\n.response-status.success .status-text {\n color: #28a745;\n}\n\n.response-status.error .status-text {\n color: #dc3545;\n}\n\n.response-meta {\n display: flex;\n gap: 12px;\n font-size: 11px;\n color: #858585;\n}\n\n.response-action {\n font-weight: 500;\n color: #cccccc;\n}\n\n.response-time {\n color: #6a6a6a;\n}\n\n.response-message {\n padding: 12px;\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n}\n\n.response-message label {\n display: block;\n margin-bottom: 8px;\n font-size: 11px;\n font-weight: 600;\n color: #cccccc;\n}\n\n.response-message pre {\n margin: 0;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 11px;\n color: #d4d4d4;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n/* Responsive Design */\n@media (max-width: 768px) {\n .lifecycle-two-panel {\n grid-template-columns: 1fr;\n grid-template-rows: auto 1fr;\n }\n}\n","",{version:3,sources:["webpack://./src/ui/styles.css"],names:[],mappings:"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",sourcesContent:["/* Global styles */\n* {\n box-sizing: border-box;\n}\n\nbody {\n margin: 0;\n padding: 0;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', 'Source Code Pro', monospace;\n background-color: #1e1e1e;\n color: #cccccc;\n overflow: hidden;\n font-size: 13px;\n}\n\n/* Compact developer layout */\n.app.postman-layout {\n height: 100vh;\n display: flex;\n flex-direction: column;\n}\n\n/* Beta Banner */\n.beta-banner {\n background: linear-gradient(135deg, #2d4a5c 0%, #3d2d5c 100%);\n color: #ffffff;\n padding: 8px 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n border-bottom: 1px solid #5c4a8f;\n font-size: 12px;\n font-weight: 500;\n}\n\n.beta-banner-icon {\n font-size: 14px;\n}\n\n.beta-banner-text {\n color: #d4d4d4;\n}\n\n.beta-banner-text strong {\n color: #ffffff;\n font-weight: 600;\n}\n\n.beta-banner-close {\n background: transparent;\n border: none;\n color: #ffffff;\n font-size: 16px;\n cursor: pointer;\n padding: 4px 8px;\n margin-left: auto;\n display: flex;\n align-items: center;\n justify-content: center;\n opacity: 0.7;\n transition: opacity 0.2s;\n}\n\n.beta-banner-close:hover {\n opacity: 1;\n}\n\n.beta-banner-close:focus {\n outline: 1px solid #ffffff;\n outline-offset: 2px;\n opacity: 1;\n}\n\n.beta-banner-link {\n color: #ffffff;\n text-decoration: underline;\n font-weight: 600;\n transition: opacity 0.2s;\n}\n\n.beta-banner-link:hover {\n opacity: 0.8;\n}\n\n.beta-banner-link:focus {\n outline: 2px solid #ffffff;\n outline-offset: 2px;\n}\n\n/* Top Navigation Bar - Compact */\n.top-nav {\n background: #2d2d30;\n color: #cccccc;\n padding: 0 12px;\n height: 35px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-bottom: 1px solid #3e3e42;\n font-size: 12px;\n}\n\n.nav-left {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.app-title h1 {\n margin: 0;\n font-size: 13px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.app-info-nav {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 3px 8px;\n background: #3c3c3c;\n border-radius: 3px;\n font-size: 11px;\n border: 1px solid #4a4a4a;\n}\n\n.app-name {\n font-weight: 400;\n color: #ffffff;\n}\n\n.app-version {\n background: #555555;\n color: #e0e0e0;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 10px;\n}\n\n.nav-center {\n display: flex;\n align-items: center;\n}\n\n.build-status-nav {\n display: flex;\n align-items: center;\n}\n\n.build-indicator {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 3px 8px;\n border-radius: 3px;\n font-size: 11px;\n font-weight: 400;\n border: 1px solid #4a4a4a;\n}\n\n.build-indicator.building {\n background: #2d2d30;\n border-color: #ffd700;\n color: #ffd700;\n}\n\n.build-indicator.success {\n background: #2d2d30;\n border-color: #4caf50;\n color: #4caf50;\n}\n\n.build-indicator.error {\n background: #2d2d30;\n border-color: #f44336;\n color: #f44336;\n}\n\n.build-indicator.idle {\n background: #3c3c3c;\n border-color: #666666;\n color: #cccccc;\n}\n\n.status-dot {\n width: 6px;\n height: 6px;\n border-radius: 50%;\n display: inline-block;\n}\n\n.building .status-dot {\n background: #ffd700;\n animation: pulse 1.5s infinite;\n}\n\n.success .status-dot {\n background: #4caf50;\n}\n\n.error .status-dot {\n background: #f44336;\n}\n\n.idle .status-dot {\n background: #666666;\n}\n\n@keyframes pulse {\n 0% { opacity: 1; }\n 50% { opacity: 0.5; }\n 100% { opacity: 1; }\n}\n\n.nav-right {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n/* Feedback button */\n.feedback-btn,\n.docs-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 11px;\n font-weight: 400;\n cursor: pointer;\n transition: all 0.15s ease;\n text-decoration: none;\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.feedback-btn:hover,\n.docs-btn:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.feedback-btn:focus,\n.docs-btn:focus {\n outline: 1px solid #007acc;\n outline-offset: 2px;\n}\n\n/* Nav separator (vertical) */\n.nav-separator-vertical {\n width: 1px;\n height: 16px;\n background: #4a4a4a;\n margin: 0 4px;\n}\n\n.rebuild-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 10px;\n border-radius: 3px;\n font-size: 11px;\n font-weight: 400;\n cursor: pointer;\n transition: all 0.15s ease;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.rebuild-btn:hover:not(:disabled) {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.rebuild-btn:disabled {\n cursor: not-allowed;\n}\n\n.rebuild-btn.building {\n border-color: #ffd700;\n}\n\n.rebuild-btn.success {\n border-color: #4caf50;\n}\n\n.rebuild-btn.error {\n border-color: #f44336;\n}\n\n.rebuild-status-dot {\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background: #666666;\n}\n\n.rebuild-btn.building .rebuild-status-dot {\n background: #ffd700;\n animation: pulse 1.5s infinite;\n}\n\n.rebuild-btn.success .rebuild-status-dot {\n background: #4caf50;\n}\n\n.rebuild-btn.error .rebuild-status-dot {\n background: #f44336;\n}\n\n.connection-status {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 11px;\n padding: 3px 6px;\n background: #3c3c3c;\n border-radius: 2px;\n border: 1px solid #4a4a4a;\n}\n\n.connection-dot {\n width: 4px;\n height: 4px;\n border-radius: 50%;\n}\n\n.connection-dot.connected {\n background: #4caf50;\n}\n\n.connection-dot.disconnected {\n background: #f44336;\n}\n\n/* Main Layout */\n.main-layout {\n display: flex;\n flex: 1;\n overflow: hidden;\n}\n\n/* Left Sidebar - Compact */\n.sidebar {\n width: 160px;\n background: #252526;\n border-right: 1px solid #3e3e42;\n display: flex;\n flex-direction: column;\n}\n\n.sidebar-nav {\n padding: 4px 0;\n}\n\n.nav-item {\n width: 100%;\n background: none;\n border: none;\n color: #cccccc;\n padding: 4px 8px;\n display: flex;\n align-items: center;\n gap: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n font-size: 11px;\n text-align: left;\n border-left: 2px solid transparent;\n height: 28px;\n}\n\n.nav-item:hover {\n background: #2a2d2e;\n color: #ffffff;\n}\n\n.nav-item.active {\n background: #37373d;\n color: #ffffff;\n border-left-color: #ffffff;\n}\n\n.nav-icon {\n font-size: 12px;\n width: 14px;\n text-align: center;\n color: #858585;\n flex-shrink: 0;\n}\n\n.nav-item.active .nav-icon {\n color: #ffffff;\n}\n\n.nav-label {\n font-weight: 400;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n/* Content Area */\n.content-area {\n flex: 1;\n display: flex;\n flex-direction: column;\n background: #1e1e1e;\n overflow: hidden;\n}\n\n.content-header {\n padding: 12px 16px;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n display: flex;\n align-items: center;\n justify-content: space-between;\n min-height: 40px;\n}\n\n.content-header h2 {\n margin: 0;\n font-size: 14px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.validation-errors-banner {\n display: flex;\n align-items: center;\n gap: 6px;\n background: #2d2d30;\n color: #ffa500;\n padding: 4px 8px;\n border-radius: 3px;\n border: 1px solid #664400;\n font-size: 11px;\n}\n\n.error-icon {\n font-size: 12px;\n}\n\n.content-body {\n flex: 1;\n padding: 12px 16px;\n overflow-y: auto;\n background: #1e1e1e;\n}\n\n/* Settings View */\n.settings-view {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.validation-errors {\n background: #2d2d30;\n border: 1px solid #664400;\n border-radius: 4px;\n padding: 12px;\n margin-bottom: 12px;\n}\n\n.validation-errors h4 {\n margin: 0 0 8px 0;\n color: #ffa500;\n font-size: 12px;\n}\n\n.validation-errors ul {\n margin: 0;\n padding-left: 16px;\n color: #ffa500;\n font-size: 11px;\n}\n\n.settings-loading-container {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.settings-iframe-container {\n flex: 1;\n background: #ffffff;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n overflow: hidden;\n}\n\n/* Placeholder Content */\n.placeholder-content {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n padding: 24px;\n text-align: center;\n}\n\n.placeholder-content h3 {\n margin: 0 0 12px 0;\n color: #ffffff;\n font-size: 14px;\n font-weight: 500;\n}\n\n.placeholder-content p {\n margin: 0;\n color: #cccccc;\n font-size: 12px;\n}\n\n/* Spinner */\n.spinner {\n margin: 20px auto;\n width: 40px;\n height: 40px;\n border: 3px solid #3e3e42;\n border-top-color: #007acc;\n border-radius: 50%;\n animation: spin 1s linear infinite;\n}\n\n@keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n\n/* Error details */\n.error-details {\n margin: 16px 0 0 0;\n padding: 12px;\n background: #1e1e1e;\n border: 1px solid #f48771;\n border-radius: 4px;\n color: #f48771;\n font-size: 11px;\n text-align: left;\n overflow-x: auto;\n max-height: 200px;\n overflow-y: auto;\n}\n\n/* Bottom Console - Compact */\n.console-panel {\n background: #1e1e1e;\n border-top: 1px solid #3e3e42;\n transition: height 0.2s ease;\n display: flex;\n flex-direction: column;\n}\n\n.console-panel.collapsed {\n /* Height managed by inline style */\n}\n\n.console-panel.expanded {\n /* Height managed by inline style */\n}\n\n.console-header {\n height: 28px;\n background: #2d2d30;\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0 12px;\n cursor: pointer;\n border-bottom: 1px solid #3e3e42;\n font-size: 11px;\n}\n\n.console-header:hover {\n background: #37373d;\n}\n\n.console-title {\n display: flex;\n align-items: center;\n gap: 6px;\n color: #cccccc;\n font-weight: 400;\n}\n\n.console-icon {\n font-size: 11px;\n color: #858585;\n}\n\n.log-count {\n color: #858585;\n font-size: 10px;\n}\n\n.console-toggle {\n background: none;\n border: none;\n color: #858585;\n font-size: 11px;\n cursor: pointer;\n padding: 2px;\n border-radius: 2px;\n transition: background 0.15s ease;\n}\n\n.console-toggle:hover {\n background: #3e3e42;\n color: #cccccc;\n}\n\n.console-content {\n flex: 1;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n}\n\n.log-container {\n height: 100%;\n padding: 8px 12px;\n overflow-y: auto;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 11px;\n line-height: 1.3;\n}\n\n.log-line {\n color: #cccccc;\n margin-bottom: 2px;\n white-space: pre-wrap;\n}\n\n.log-line.log-error {\n color: #f48771;\n border-left: 2px solid #f48771;\n padding-left: 6px;\n background: rgba(244, 135, 113, 0.05);\n}\n\n.log-line.log-warn {\n color: #dcdcaa;\n border-left: 2px solid #dcdcaa;\n padding-left: 6px;\n background: rgba(220, 220, 170, 0.05);\n}\n\n.log-line.log-debug {\n color: #858585;\n font-style: italic;\n}\n\n.log-line.log-info {\n color: #cccccc;\n}\n\n/* Log source styling */\n.log-source-app {\n color: #61dafb;\n border-left: 3px solid #61dafb;\n padding-left: 8px;\n}\n\n.log-source-system {\n color: #cccccc;\n border-left: 3px solid #666666;\n padding-left: 8px;\n}\n\n/* Optional: Category-specific styling */\n.log-category-function {\n /* Function-specific styling if desired */\n}\n\n.log-category-build {\n /* Build-specific styling if desired */\n}\n\n.log-category-lifecycle {\n /* Lifecycle-specific styling if desired */\n}\n\n.log-category-destination {\n /* Destination-specific styling if desired */\n}\n\n/* Filter buttons */\n.log-filter-buttons {\n display: flex;\n gap: 8px;\n margin-right: 12px;\n}\n\n.filter-btn {\n padding: 4px 12px;\n border: 1px solid #444;\n background: #2a2a2a;\n color: #ccc;\n border-radius: 4px;\n cursor: pointer;\n font-size: 12px;\n transition: all 0.2s;\n}\n\n.filter-btn:hover {\n background: #3a3a3a;\n border-color: #555;\n}\n\n.filter-btn.active {\n background: #61dafb;\n color: #1a1a1a;\n border-color: #61dafb;\n font-weight: 600;\n}\n\n/* Update console controls to use flexbox */\n.console-controls {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n background: #1e1e1e;\n border-bottom: 1px solid #333;\n}\n\n/* Filter row layout */\n.filter-row {\n display: flex;\n align-items: center;\n gap: 16px;\n flex: 1;\n}\n\n.filter-group {\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.filter-label {\n font-size: 11px;\n color: #858585;\n white-space: nowrap;\n}\n\n.filter-select {\n background: #2a2a2a;\n color: #ccc;\n border: 1px solid #444;\n border-radius: 4px;\n padding: 4px 8px;\n font-size: 11px;\n cursor: pointer;\n min-width: 120px;\n}\n\n.filter-select:hover {\n background: #3a3a3a;\n border-color: #555;\n}\n\n.filter-select:focus {\n outline: none;\n border-color: #61dafb;\n}\n\n.clear-logs-btn {\n background: #0e639c;\n color: white;\n border: none;\n padding: 4px 8px;\n border-radius: 2px;\n font-size: 11px;\n cursor: pointer;\n transition: background 0.15s ease;\n}\n\n.clear-logs-btn:hover {\n background: #1177bb;\n}\n\n.no-logs {\n color: #858585;\n font-style: italic;\n text-align: center;\n padding: 16px;\n font-size: 11px;\n}\n\n/* Scrollbar styling for webkit browsers */\n.log-container::-webkit-scrollbar {\n width: 6px;\n}\n\n.log-container::-webkit-scrollbar-track {\n background: #1e1e1e;\n}\n\n.log-container::-webkit-scrollbar-thumb {\n background: #3e3e42;\n border-radius: 3px;\n}\n\n.log-container::-webkit-scrollbar-thumb:hover {\n background: #4a4a4a;\n}\n\n/* Console Tab Navigation */\n.console-tab-headers {\n display: flex;\n align-items: center;\n background: #2d2d30;\n border-bottom: 1px solid #3e3e42;\n padding: 0 8px;\n gap: 2px;\n min-height: 32px;\n position: relative;\n}\n\n.console-tab {\n background: none;\n border: none;\n padding: 6px 12px;\n color: #858585;\n font-size: 11px;\n cursor: pointer;\n border-radius: 3px;\n display: flex;\n align-items: center;\n gap: 4px;\n transition: all 0.15s ease;\n white-space: nowrap;\n}\n\n.console-tab:hover {\n background: #37373d;\n color: #cccccc;\n}\n\n.console-tab.active {\n background: #1e1e1e;\n color: #ffffff;\n border: 1px solid #3e3e42;\n}\n\n.console-tab .tab-icon {\n font-size: 10px;\n}\n\n.console-tab .tab-label {\n font-weight: 400;\n}\n\n.console-tab .tab-count {\n color: #858585;\n font-size: 10px;\n margin-left: 2px;\n}\n\n.console-tab.active .tab-count {\n color: #cccccc;\n}\n\n.notification-badge {\n background: #f44336;\n color: #ffffff;\n padding: 1px 5px;\n border-radius: 10px;\n font-size: 9px;\n font-weight: 600;\n margin-left: 4px;\n min-width: 16px;\n text-align: center;\n display: inline-block;\n}\n\n.console-tab-body {\n flex: 1;\n overflow-y: auto;\n display: flex;\n flex-direction: column;\n}\n\n.store-tab-content {\n flex: 1;\n overflow-y: auto;\n display: flex;\n flex-direction: column;\n}\n\n/* Console toggle button in tab header */\n.console-tab-headers .console-toggle {\n margin-left: auto;\n background: none;\n border: none;\n color: #858585;\n font-size: 11px;\n cursor: pointer;\n padding: 4px 6px;\n border-radius: 2px;\n transition: all 0.15s ease;\n}\n\n.console-tab-headers .console-toggle:hover {\n background: #3e3e42;\n color: #cccccc;\n}\n\n/* Console resize handle */\n.console-resize-handle {\n height: 6px;\n background: #3e3e42;\n cursor: ns-resize;\n border-top: 1px solid #5a5a5a;\n border-bottom: 1px solid #2d2d30;\n transition: all 0.15s ease;\n flex-shrink: 0;\n user-select: none;\n z-index: 10;\n position: relative;\n}\n\n.console-resize-handle:hover {\n background: #5a5a5a;\n border-top: 1px solid #7a7a7a;\n height: 6px;\n}\n\n.console-resize-handle:active {\n background: #6a6a6a;\n border-top: 1px solid #8a8a8a;\n}\n\n.console-resize-handle::after {\n content: '≡';\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n color: #cccccc;\n font-size: 12px;\n font-weight: bold;\n pointer-events: none;\n}\n\n/* Compact Store Layout */\n.compact-store {\n padding: 8px;\n}\n\n.store-sections {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.store-section {\n border-radius: 3px;\n overflow: hidden;\n}\n\n.section-header {\n display: flex;\n align-items: center;\n padding: 6px 8px;\n background: #2d2d30;\n cursor: pointer;\n font-size: 11px;\n line-height: 1.2;\n gap: 6px;\n}\n\n.section-header:hover {\n background: #37373d;\n}\n\n.expand-icon {\n color: #858585;\n font-size: 10px;\n width: 12px;\n}\n\n.section-name {\n color: #9cdcfe;\n font-weight: 500;\n}\n\n.field-count {\n color: #858585;\n font-size: 10px;\n}\n\n.add-section-btn {\n margin-left: auto;\n background: none;\n border: none;\n color: #858585;\n cursor: pointer;\n padding: 2px 4px;\n border-radius: 2px;\n font-size: 10px;\n}\n\n.add-section-btn:hover {\n background: #3e3e42;\n color: #cccccc;\n}\n\n.section-fields {\n background: #1e1e1e;\n border-top: 1px solid #3e3e42;\n}\n\n.field-row {\n display: flex;\n align-items: center;\n padding: 4px 16px;\n font-size: 11px;\n line-height: 1.2;\n min-height: 20px;\n}\n\n.field-row:hover {\n background: #2d2d30;\n}\n\n.field-row.add-form {\n background: #2d2d30;\n border-top: 1px solid #3e3e42;\n}\n\n.field-key {\n flex: 0 0 120px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n color: #9cdcfe;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.field-value {\n flex: 1;\n padding: 0 8px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n color: #cccccc;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.field-metadata {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.string-value {\n color: #ce9178;\n}\n\n.json-value {\n color: #dcdcaa;\n}\n\n.hidden-field-value {\n color: #858585;\n}\n\n.empty-field-value {\n color: #858585;\n font-style: italic;\n}\n\n.empty-section {\n padding: 8px 16px;\n color: #858585;\n font-style: italic;\n font-size: 10px;\n}\n\n.section-actions {\n margin-left: auto;\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.primitive-value {\n padding: 6px 16px;\n background: #1e1e1e;\n border-top: 1px solid #3e3e42;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 11px;\n}\n\n.add-entry-section {\n margin-top: 8px;\n padding: 4px 0;\n}\n\n.add-entry-btn {\n background: #0e639c;\n color: white;\n border: none;\n padding: 6px 12px;\n border-radius: 3px;\n font-size: 11px;\n cursor: pointer;\n transition: background 0.15s ease;\n}\n\n.add-entry-btn:hover {\n background: #1177bb;\n}\n\n.store-section.add-form .section-header {\n background: #2d2d30;\n}\n\n.store-section.add-form .key-input {\n background: none;\n border: none;\n color: #9cdcfe;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n outline: none;\n flex: 1;\n}\n\n.store-section.add-form .value-input {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n color: #cccccc;\n padding: 4px;\n border-radius: 2px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n resize: vertical;\n width: 100%;\n}\n\n.metadata-icon,\n.edit-icon,\n.delete-icon,\n.add-icon {\n background: none;\n border: none;\n color: #858585;\n cursor: pointer;\n padding: 2px;\n border-radius: 2px;\n font-size: 10px;\n transition: all 0.15s ease;\n}\n\n.metadata-icon:hover,\n.edit-icon:hover,\n.delete-icon:hover,\n.add-icon:hover {\n background: #3e3e42;\n color: #cccccc;\n}\n\n.metadata-badge {\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n font-weight: 500;\n text-transform: uppercase;\n}\n\n.metadata-badge.local {\n background: #0e639c;\n color: white;\n}\n\n.metadata-badge.local-only {\n background: #f48771;\n color: white;\n}\n\n.edit-mode {\n display: flex;\n flex-direction: column;\n gap: 4px;\n width: 100%;\n}\n\n.edit-input {\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n color: #cccccc;\n padding: 4px;\n border-radius: 2px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n resize: vertical;\n min-height: 20px;\n}\n\n.edit-controls {\n display: flex;\n gap: 4px;\n}\n\n.save-btn,\n.cancel-btn {\n background: #0e639c;\n color: white;\n border: none;\n padding: 2px 6px;\n border-radius: 2px;\n font-size: 10px;\n cursor: pointer;\n}\n\n.cancel-btn {\n background: #858585;\n}\n\n.save-btn:hover {\n background: #1177bb;\n}\n\n.cancel-btn:hover {\n background: #9a9a9a;\n}\n\n.add-form {\n background: #1e1e1e !important;\n border: 1px solid #3e3e42;\n}\n\n.key-input,\n.value-input {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n color: #cccccc;\n padding: 4px;\n border-radius: 2px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.empty-store {\n padding: 16px;\n text-align: center;\n color: #858585;\n font-style: italic;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n}\n\n.empty-store button {\n background: #0e639c;\n color: white;\n border: none;\n padding: 4px 8px;\n border-radius: 2px;\n font-size: 11px;\n cursor: pointer;\n}\n\n/* Scrollbar styling for console tab content */\n.console-tab-body::-webkit-scrollbar,\n.store-tab-content::-webkit-scrollbar {\n width: 6px;\n}\n\n.console-tab-body::-webkit-scrollbar-track,\n.store-tab-content::-webkit-scrollbar-track {\n background: #1e1e1e;\n}\n\n.console-tab-body::-webkit-scrollbar-thumb,\n.store-tab-content::-webkit-scrollbar-thumb {\n background: #3e3e42;\n border-radius: 3px;\n}\n\n.console-tab-body::-webkit-scrollbar-thumb:hover,\n.store-tab-content::-webkit-scrollbar-thumb:hover {\n background: #4a4a4a;\n}\n\n/* Responsive design */\n@media (max-width: 1024px) {\n .sidebar {\n width: 140px;\n }\n\n .content-header {\n padding: 10px 12px;\n }\n\n .content-body {\n padding: 10px 12px;\n }\n}\n\n@media (max-width: 768px) {\n .nav-left {\n gap: 8px;\n }\n\n .app-title h1 {\n font-size: 12px;\n }\n\n .app-info-nav {\n display: none;\n }\n\n .sidebar {\n width: 44px;\n }\n\n .nav-item {\n padding: 4px 6px;\n justify-content: center;\n height: 32px;\n }\n\n .nav-label {\n display: none;\n }\n\n .nav-icon {\n font-size: 14px;\n width: 16px;\n }\n\n .content-header {\n padding: 8px 12px;\n }\n\n .content-body {\n padding: 8px 12px;\n }\n\n .console-panel.expanded {\n height: 160px;\n }\n}\n\n@media (max-width: 480px) {\n .top-nav {\n padding: 0 8px;\n }\n\n .nav-right {\n gap: 6px;\n }\n\n .rebuild-btn {\n padding: 3px 6px;\n font-size: 10px;\n }\n\n .connection-status {\n font-size: 10px;\n padding: 2px 4px;\n }\n}\n\n/* Functions View */\n.functions-view {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.functions-not-installed {\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.functions-layout {\n display: flex;\n height: 100%;\n overflow: hidden;\n}\n\n/* Functions Sidebar */\n.functions-sidebar {\n width: 200px;\n background: #252526;\n border-right: 1px solid #3e3e42;\n display: flex;\n flex-direction: column;\n}\n\n.functions-header {\n padding: 8px 12px;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n}\n\n.functions-header h4 {\n margin: 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.functions-list {\n flex: 1;\n overflow-y: auto;\n padding: 4px 0;\n}\n\n.no-functions {\n padding: 16px 12px;\n text-align: center;\n}\n\n.no-functions p {\n margin: 0;\n font-size: 11px;\n color: #858585;\n}\n\n.function-item {\n padding: 8px 12px;\n cursor: pointer;\n border-bottom: 1px solid #3e3e42;\n transition: background 0.15s ease;\n}\n\n.function-item:hover {\n background: #2a2d2e;\n}\n\n.function-item.active {\n background: #37373d;\n border-left: 2px solid #ffffff;\n}\n\n.function-name {\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n margin-bottom: 2px;\n}\n\n.function-description {\n font-size: 10px;\n color: #858585;\n line-height: 1.3;\n margin-bottom: 4px;\n}\n\n.function-badge {\n display: inline-block;\n background: #3c3c3c;\n color: #cccccc;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n border: 1px solid #4a4a4a;\n}\n\n/* Functions Content */\n.functions-content {\n flex: 1;\n display: flex;\n flex-direction: column;\n background: #1e1e1e;\n overflow: hidden;\n}\n\n.no-function-selected {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Request Section */\n.request-section {\n flex: 1;\n display: flex;\n flex-direction: column;\n border-bottom: 1px solid #3e3e42;\n min-height: 0;\n}\n\n/* URL Bar */\n.url-bar {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 12px 16px;\n background: #2d2d30;\n border-bottom: 1px solid #3e3e42;\n}\n\n.http-method-select {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 6px 8px;\n border-radius: 3px;\n font-size: 11px;\n min-width: 80px;\n}\n\n.url-input {\n flex: 1;\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 6px 8px;\n border-radius: 3px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.url-input:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.url-input:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.send-button {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 6px 16px;\n border-radius: 3px;\n font-size: 11px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.send-button:hover:not(:disabled) {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.send-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n/* Request Tabs */\n.request-tabs {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.tab-headers {\n display: flex;\n background: #252526;\n border-bottom: 1px solid #3e3e42;\n}\n\n.tab-header {\n background: none;\n border: none;\n color: #cccccc;\n padding: 8px 16px;\n font-size: 11px;\n cursor: pointer;\n border-bottom: 2px solid transparent;\n transition: all 0.15s ease;\n}\n\n.tab-header:hover {\n background: #2a2d2e;\n color: #ffffff;\n}\n\n.tab-header.active {\n color: #ffffff;\n border-bottom-color: #ffffff;\n background: #37373d;\n}\n\n.tab-content {\n flex: 1;\n padding: 12px 16px;\n overflow-y: auto;\n background: #1e1e1e;\n}\n\n/* Key-Value Editor */\n.key-value-editor {\n font-size: 11px;\n}\n\n.key-value-header {\n display: grid;\n grid-template-columns: 30px 1fr 1fr 30px;\n gap: 8px;\n padding: 4px 0 8px 0;\n color: #858585;\n font-weight: 500;\n border-bottom: 1px solid #3e3e42;\n margin-bottom: 8px;\n}\n\n/* Headers tab specific styles */\n.response-headers .key-value-header {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 8px;\n padding: 4px 0 8px 0;\n color: #858585;\n font-weight: 500;\n border-bottom: 1px solid #3e3e42;\n margin-bottom: 8px;\n}\n\n.response-headers .key-value-row {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 8px;\n margin-bottom: 6px;\n align-items: center;\n}\n\n.response-headers input[type=\"text\"] {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 6px;\n border-radius: 2px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.response-headers input[type=\"text\"]:read-only {\n background: #2d2d30;\n border-color: #3e3e42;\n color: #e0e0e0;\n}\n\n.no-headers {\n padding: 16px;\n text-align: center;\n color: #858585;\n font-style: italic;\n font-size: 11px;\n}\n\n/* Response tabs specific styling */\n.response-tabs {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.response-tabs .tab-content {\n flex: 1;\n overflow-y: auto;\n padding: 12px 16px;\n background: #1e1e1e;\n max-height: 400px; /* Limit height to ensure scrolling is visible */\n}\n\n.response-data {\n font-size: 11px;\n}\n\n.response-headers {\n max-height: 350px;\n overflow-y: auto;\n}\n\n.response-headers .key-value-editor {\n margin-bottom: 0;\n}\n\n/* Custom scrollbars for response areas */\n.response-tabs .tab-content::-webkit-scrollbar,\n.response-headers::-webkit-scrollbar,\n.response-success pre::-webkit-scrollbar,\n.response-error pre::-webkit-scrollbar,\n.response-body pre::-webkit-scrollbar {\n width: 6px;\n height: 6px;\n}\n\n.response-tabs .tab-content::-webkit-scrollbar-track,\n.response-headers::-webkit-scrollbar-track,\n.response-success pre::-webkit-scrollbar-track,\n.response-error pre::-webkit-scrollbar-track,\n.response-body pre::-webkit-scrollbar-track {\n background: #1e1e1e;\n}\n\n.response-tabs .tab-content::-webkit-scrollbar-thumb,\n.response-headers::-webkit-scrollbar-thumb,\n.response-success pre::-webkit-scrollbar-thumb,\n.response-error pre::-webkit-scrollbar-thumb,\n.response-body pre::-webkit-scrollbar-thumb {\n background: #3e3e42;\n border-radius: 3px;\n}\n\n.response-tabs .tab-content::-webkit-scrollbar-thumb:hover,\n.response-headers::-webkit-scrollbar-thumb:hover,\n.response-success pre::-webkit-scrollbar-thumb:hover,\n.response-error pre::-webkit-scrollbar-thumb:hover,\n.response-body pre::-webkit-scrollbar-thumb:hover {\n background: #4a4a4a;\n}\n\n.key-value-row {\n display: grid;\n grid-template-columns: 30px 1fr 1fr 30px;\n gap: 8px;\n margin-bottom: 6px;\n align-items: center;\n}\n\n.key-value-row input[type=\"checkbox\"] {\n width: 14px;\n height: 14px;\n cursor: pointer;\n}\n\n.key-value-row input[type=\"text\"] {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 6px;\n border-radius: 2px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.key-value-row input[type=\"text\"]:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.remove-btn {\n background: none;\n border: none;\n color: #858585;\n font-size: 14px;\n cursor: pointer;\n width: 20px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 2px;\n transition: all 0.15s ease;\n}\n\n.remove-btn:hover {\n background: #f44336;\n color: #ffffff;\n}\n\n.add-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 10px;\n cursor: pointer;\n margin-top: 8px;\n transition: all 0.15s ease;\n}\n\n.add-btn:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n/* Body Editor */\n.body-editor {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.body-actions {\n display: flex;\n gap: 8px;\n margin-bottom: 8px;\n}\n\n.body-textarea {\n width: 100%;\n flex: 1;\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 8px;\n border-radius: 3px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n resize: vertical;\n min-height: 200px;\n}\n\n.body-textarea:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.body-note {\n margin-top: 8px;\n padding: 8px;\n background: #2d2d2d;\n border-left: 3px solid #4a90e2;\n color: #cccccc;\n font-size: 11px;\n line-height: 1.4;\n}\n\n/* Response Section */\n.response-section {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.response-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 16px;\n background: #2d2d30;\n border-bottom: 1px solid #3e3e42;\n}\n\n.response-header h4 {\n margin: 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.response-meta {\n display: flex;\n align-items: center;\n gap: 12px;\n font-size: 11px;\n}\n\n.execution-time {\n color: #858585;\n}\n\n.http-status {\n color: #cccccc;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n padding: 2px 6px;\n border-radius: 3px;\n font-weight: 500;\n font-size: 11px;\n}\n\n/* 2xx - Success (Green) */\n.http-status.status-2xx {\n background: #2d2d30;\n color: #4caf50;\n border: 1px solid #4caf50;\n}\n\n/* 3xx - Redirection (Yellow) */\n.http-status.status-3xx {\n background: #2d2d30;\n color: #ffc107;\n border: 1px solid #ffc107;\n}\n\n/* 4xx - Client Error (Yellow) */\n.http-status.status-4xx {\n background: #2d2d30;\n color: #ffc107;\n border: 1px solid #ffc107;\n}\n\n/* 5xx - Server Error (Red) */\n.http-status.status-5xx {\n background: #2d2d30;\n color: #f44336;\n border: 1px solid #f44336;\n}\n\n.status-indicator {\n padding: 2px 6px;\n border-radius: 3px;\n font-weight: 500;\n}\n\n.status-indicator.success {\n background: #2d2d30;\n color: #4caf50;\n border: 1px solid #4caf50;\n}\n\n.status-indicator.error {\n background: #2d2d30;\n color: #f44336;\n border: 1px solid #f44336;\n}\n\n.response-content {\n flex: 1;\n padding: 12px 16px;\n overflow-y: auto;\n background: #1e1e1e;\n}\n\n.no-response {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n color: #858585;\n font-style: italic;\n font-size: 11px;\n}\n\n.response-data {\n font-size: 11px;\n}\n\n.response-success h5,\n.response-error h5,\n.response-logs h5,\n.response-body h5 {\n margin: 0 0 8px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.status-badge {\n background: #3c3c3c;\n color: #cccccc;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 10px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.response-success pre,\n.response-error pre,\n.response-body pre {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 8px;\n border-radius: 3px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n white-space: pre-wrap;\n word-wrap: break-word;\n margin: 0;\n overflow: auto;\n max-height: 300px;\n}\n\n.response-error {\n margin-bottom: 16px;\n}\n\n.response-error pre {\n color: #f44336;\n}\n\n.response-error details {\n margin-top: 8px;\n}\n\n.response-error summary {\n color: #858585;\n cursor: pointer;\n font-size: 10px;\n}\n\n.response-logs {\n margin-top: 16px;\n}\n\n.log-entries {\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n border-radius: 3px;\n max-height: 150px;\n overflow-y: auto;\n}\n\n.log-entry {\n padding: 4px 8px;\n border-bottom: 1px solid #4a4a4a;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n color: #cccccc;\n font-size: 10px;\n}\n\n.log-entry:last-child {\n border-bottom: none;\n}\n\n/* Store Viewer Styles */\n.store-viewer {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: #1e1e1e;\n}\n\n.store-viewer.loading,\n.store-viewer.error,\n.store-viewer.no-data {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n}\n\n.loading-message,\n.error-message,\n.no-data-message {\n text-align: center;\n color: #858585;\n font-size: 12px;\n}\n\n.error-message {\n display: flex;\n align-items: center;\n gap: 8px;\n color: #f44336;\n}\n\n.retry-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 10px;\n cursor: pointer;\n margin-left: 8px;\n}\n\n.retry-btn:hover {\n background: #4a4a4a;\n}\n\n/* Store Tabs */\n.store-tabs {\n display: flex;\n background: #252526;\n border-bottom: 1px solid #3e3e42;\n align-items: center;\n justify-content: space-between;\n padding-right: 8px;\n}\n\n.store-tabs-container {\n display: flex;\n overflow-x: auto;\n}\n\n.store-tab {\n background: none;\n border: none;\n color: #cccccc;\n padding: 8px 16px;\n font-size: 11px;\n cursor: pointer;\n border-bottom: 2px solid transparent;\n transition: all 0.15s ease;\n display: flex;\n align-items: center;\n gap: 6px;\n white-space: nowrap;\n}\n\n.store-tab:hover {\n background: #2a2d2e;\n color: #ffffff;\n}\n\n.store-tab.active {\n color: #ffffff;\n border-bottom-color: #ffffff;\n background: #37373d;\n}\n\n.tab-icon {\n font-size: 12px;\n}\n\n.tab-label {\n font-weight: 400;\n}\n\n.tab-count {\n background: #3c3c3c;\n color: #858585;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n}\n\n.store-tab.active .tab-count {\n background: #4a4a4a;\n color: #cccccc;\n}\n\n/* Refresh Button */\n.refresh-btn {\n background: none;\n border: none;\n color: #858585;\n cursor: pointer;\n padding: 6px 8px;\n border-radius: 3px;\n font-size: 14px;\n transition: all 0.15s ease;\n margin-left: auto;\n}\n\n.refresh-btn:hover {\n background: #3e3e42;\n color: #cccccc;\n}\n\n.refresh-btn:active {\n background: #4a4a4a;\n}\n\n/* Store header for hidden tabs mode */\n.store-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n}\n\n\n/* Store Content */\n.store-content {\n flex: 1;\n overflow-y: auto;\n background: #1e1e1e;\n}\n\n.store-header {\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.store-description {\n margin: 0;\n font-size: 11px;\n color: #858585;\n}\n\n.add-entry-btn,\n.add-section-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 10px;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.add-entry-btn:hover,\n.add-section-btn:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n/* Empty States */\n.empty-store,\n.empty-message,\n.empty-section {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 32px 16px;\n text-align: center;\n color: #858585;\n}\n\n.empty-icon {\n font-size: 32px;\n margin-bottom: 12px;\n}\n\n.empty-message p {\n margin: 0 0 12px 0;\n font-size: 12px;\n}\n\n.add-first-entry-btn,\n.add-first-secret-btn {\n background: #0e639c;\n color: white;\n border: none;\n padding: 6px 12px;\n border-radius: 3px;\n font-size: 11px;\n cursor: pointer;\n transition: background 0.15s ease;\n}\n\n.add-first-entry-btn:hover,\n.add-first-secret-btn:hover {\n background: #1177bb;\n}\n\n/* Settings Store Viewer */\n.settings-store-viewer {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.settings-sections {\n flex: 1;\n overflow-y: auto;\n padding: 8px 16px;\n}\n\n.settings-section {\n margin-bottom: 12px;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n background: #2d2d30;\n}\n\n.section-header {\n padding: 8px 12px;\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: 6px;\n background: #37373d;\n border-radius: 4px 4px 0 0;\n transition: background 0.15s ease;\n}\n\n.section-header:hover {\n background: #3e3e42;\n}\n\n.section-header-left {\n display: flex;\n align-items: center;\n gap: 6px;\n flex: 1;\n cursor: pointer;\n}\n\n.expand-icon {\n font-size: 10px;\n color: #858585;\n width: 12px;\n}\n\n.section-name {\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.field-count,\n.secret-count {\n font-size: 10px;\n color: #858585;\n}\n\n.section-fields,\n.section-secrets {\n padding: 8px 12px;\n}\n\n.settings-field,\n.secret-field {\n margin-bottom: 12px;\n padding: 8px;\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n}\n\n.field-header,\n.secret-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 6px;\n}\n\n.field-name-info {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.field-name,\n.secret-name {\n font-size: 11px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.field-type-info {\n font-size: 9px;\n color: #858585;\n}\n\n.field-controls,\n.secret-controls {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.edit-field-btn,\n.edit-secret-btn,\n.delete-secret-btn,\n.edit-entry-btn,\n.delete-entry-btn {\n background: none;\n border: none;\n font-size: 10px;\n cursor: pointer;\n padding: 2px;\n border-radius: 2px;\n transition: background 0.15s ease;\n}\n\n.edit-field-btn:hover,\n.edit-secret-btn:hover,\n.edit-entry-btn:hover {\n background: #3c3c3c;\n}\n\n.delete-secret-btn:hover,\n.delete-entry-btn:hover {\n background: #f44336;\n}\n\n.field-value-container,\n.secret-value-container,\n.entry-value {\n margin-bottom: 6px;\n}\n\n.hidden-field-value,\n.hidden-secret-value {\n color: #858585;\n font-style: italic;\n font-size: 11px;\n}\n\n.empty-field-value,\n.empty-secret-value {\n color: #858585;\n font-style: italic;\n font-size: 10px;\n}\n\n.string-field-value,\n.string-secret-value {\n color: #ce9178;\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 10px;\n}\n\n.complex-field-value,\n.complex-secret-value {\n color: #9cdcfe;\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 10px;\n}\n\n.field-description {\n font-size: 10px;\n color: #858585;\n margin-bottom: 6px;\n font-style: italic;\n}\n\n.field-metadata {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n}\n\n.metadata-badge {\n background: #3c3c3c;\n color: #cccccc;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n border: 1px solid #4a4a4a;\n}\n\n.metadata-badge.has-local {\n background: #2d4a3e;\n color: #4caf50;\n border-color: #4caf50;\n}\n\n.metadata-badge.no-local {\n background: #4a3e2d;\n color: #ffc107;\n border-color: #ffc107;\n}\n\n.metadata-badge.default-value {\n background: #2d2d4a;\n color: #9c88ff;\n border-color: #9c88ff;\n}\n\n/* Edit Mode */\n.field-edit-mode,\n.secret-edit-mode,\n.entry-edit-mode {\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n border-radius: 3px;\n padding: 6px;\n}\n\n.field-edit-input,\n.secret-edit-input,\n.entry-edit-input {\n width: 100%;\n background: #1e1e1e;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 6px;\n border-radius: 2px;\n font-size: 10px;\n font-family: 'SF Mono', 'Monaco', monospace;\n resize: vertical;\n min-height: 40px;\n}\n\n.field-edit-input:focus,\n.secret-edit-input:focus,\n.entry-edit-input:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.field-edit-controls,\n.secret-edit-controls,\n.entry-edit-controls {\n display: flex;\n gap: 6px;\n margin-top: 6px;\n}\n\n.save-btn {\n background: #0e639c;\n color: white;\n border: none;\n padding: 4px 8px;\n border-radius: 2px;\n font-size: 10px;\n cursor: pointer;\n transition: background 0.15s ease;\n}\n\n.save-btn:hover {\n background: #1177bb;\n}\n\n.cancel-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 2px;\n font-size: 10px;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.cancel-btn:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n/* Eye Icon */\n.eye-icon {\n background: none;\n border: none;\n font-size: 10px;\n cursor: pointer;\n padding: 2px;\n border-radius: 2px;\n transition: background 0.15s ease;\n color: #858585;\n}\n\n.eye-icon:hover {\n background: #3c3c3c;\n color: #cccccc;\n}\n\n.eye-icon.visible {\n color: #4caf50;\n}\n\n.eye-icon.hidden {\n color: #858585;\n}\n\n/* Secrets Store Viewer */\n.secrets-store-viewer {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.secrets-sections {\n flex: 1;\n overflow-y: auto;\n padding: 8px 16px;\n}\n\n.secrets-section {\n margin-bottom: 12px;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n background: #2d2d30;\n}\n\n.add-secret-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 2px 6px;\n border-radius: 2px;\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s ease;\n font-weight: bold;\n}\n\n.add-secret-btn:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n/* KV Store Viewer */\n.kv-store-viewer {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.kv-entries {\n flex: 1;\n overflow-y: auto;\n padding: 8px 16px;\n}\n\n.kv-entry {\n margin-bottom: 12px;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n background: #2d2d30;\n}\n\n.entry-header {\n padding: 8px 12px;\n background: #37373d;\n border-radius: 4px 4px 0 0;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.entry-key {\n font-size: 11px;\n font-weight: 500;\n color: #ffffff;\n font-family: 'SF Mono', 'Monaco', monospace;\n}\n\n.entry-value {\n padding: 8px 12px;\n}\n\n/* Add Entry Form */\n.add-entry-form {\n padding: 12px 16px;\n background: #2d2d30;\n border-bottom: 1px solid #3e3e42;\n}\n\n.form-field {\n margin-bottom: 8px;\n}\n\n.form-field label {\n display: block;\n font-size: 10px;\n color: #cccccc;\n margin-bottom: 4px;\n}\n\n.key-input,\n.value-input {\n width: 100%;\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 6px;\n border-radius: 2px;\n font-size: 10px;\n font-family: 'SF Mono', 'Monaco', monospace;\n}\n\n.key-input:focus,\n.value-input:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.value-input {\n resize: vertical;\n min-height: 60px;\n}\n\n.form-controls {\n display: flex;\n gap: 6px;\n margin-top: 8px;\n}\n\n/* Data Tree */\n.data-tree-item {\n margin-bottom: 4px;\n}\n\n.data-tree-item.primitive {\n margin-left: 0;\n}\n\n.data-tree-item.object,\n.data-tree-item.array {\n margin-left: 0;\n}\n\n.data-tree-item.depth-1 { margin-left: 12px; }\n.data-tree-item.depth-2 { margin-left: 24px; }\n.data-tree-item.depth-3 { margin-left: 36px; }\n.data-tree-item.depth-4 { margin-left: 48px; }\n\n.item-header {\n display: flex;\n align-items: center;\n gap: 4px;\n cursor: pointer;\n padding: 2px 4px;\n border-radius: 2px;\n transition: background 0.15s ease;\n}\n\n.item-header:hover {\n background: #3c3c3c;\n}\n\n.item-title {\n font-size: 10px;\n color: #9cdcfe;\n font-weight: 500;\n}\n\n.item-value {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.value {\n font-size: 10px;\n font-family: 'SF Mono', 'Monaco', monospace;\n}\n\n.value.editable {\n cursor: pointer;\n padding: 1px 3px;\n border-radius: 2px;\n transition: background 0.15s ease;\n}\n\n.value.editable:hover {\n background: #3c3c3c;\n}\n\n.value.readonly {\n cursor: default;\n}\n\n.null-value {\n color: #569cd6;\n font-style: italic;\n}\n\n.undefined-value {\n color: #858585;\n font-style: italic;\n}\n\n.boolean-value {\n color: #569cd6;\n}\n\n.number-value {\n color: #b5cea8;\n}\n\n.string-value {\n color: #ce9178;\n}\n\n.hidden-value {\n color: #858585;\n font-style: italic;\n}\n\n.empty-value {\n color: #858585;\n font-style: italic;\n}\n\n.object-info,\n.array-info {\n font-size: 9px;\n color: #858585;\n}\n\n.item-children {\n margin-left: 12px;\n border-left: 1px solid #3e3e42;\n padding-left: 8px;\n}\n\n.edit-mode {\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n border-radius: 2px;\n padding: 4px;\n}\n\n.edit-input {\n width: 100%;\n background: #1e1e1e;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 2px 4px;\n border-radius: 2px;\n font-size: 9px;\n font-family: 'SF Mono', 'Monaco', monospace;\n resize: vertical;\n}\n\n.edit-input:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.edit-controls {\n display: flex;\n gap: 4px;\n margin-top: 4px;\n}\n\n/* Notification Viewer Styles */\n.notification-viewer {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: #1e1e1e;\n}\n\n.notification-controls {\n display: flex;\n gap: 8px;\n padding: 8px 12px;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n}\n\n.clear-notifications-btn,\n.refresh-notifications-btn {\n background: #0e639c;\n color: white;\n border: none;\n padding: 4px 8px;\n border-radius: 2px;\n font-size: 11px;\n cursor: pointer;\n transition: background 0.15s ease;\n}\n\n.clear-notifications-btn:hover,\n.refresh-notifications-btn:hover {\n background: #1177bb;\n}\n\n.notification-list {\n flex: 1;\n overflow-y: auto;\n padding: 8px;\n}\n\n.notification-item {\n margin-bottom: 8px;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n background: #2d2d30;\n transition: all 0.15s ease;\n}\n\n.notification-item:hover {\n background: #3c3c3c;\n}\n\n.notification-item.notification-info {\n border-left: 3px solid #569cd6;\n}\n\n.notification-item.notification-success {\n border-left: 3px solid #4caf50;\n}\n\n.notification-item.notification-warn {\n border-left: 3px solid #ffc107;\n}\n\n.notification-item.notification-error {\n border-left: 3px solid #f44336;\n}\n\n.notification-header {\n padding: 8px 12px;\n cursor: pointer;\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n gap: 8px;\n}\n\n.notification-main {\n flex: 1;\n min-width: 0;\n}\n\n.notification-single-line {\n display: flex;\n align-items: center;\n gap: 6px;\n flex-wrap: wrap;\n width: 100%;\n}\n\n.notification-icon {\n font-size: 12px;\n flex-shrink: 0;\n}\n\n.notification-activity {\n font-size: 11px;\n color: #9cdcfe;\n font-weight: 500;\n flex-shrink: 0;\n}\n\n.notification-separator {\n color: #858585;\n font-size: 10px;\n flex-shrink: 0;\n}\n\n.notification-title {\n font-size: 11px;\n font-weight: 500;\n color: #ffffff;\n flex-shrink: 0;\n max-width: 200px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.notification-summary {\n font-size: 11px;\n color: #cccccc;\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.notification-timestamp {\n font-size: 9px;\n color: #858585;\n margin-left: auto;\n flex-shrink: 0;\n}\n\n.notification-actions {\n display: flex;\n align-items: flex-start;\n gap: 4px;\n flex-shrink: 0;\n}\n\n.delete-notification-btn {\n background: none;\n border: none;\n color: #858585;\n cursor: pointer;\n padding: 2px;\n border-radius: 2px;\n font-size: 10px;\n transition: all 0.15s ease;\n}\n\n.delete-notification-btn:hover {\n background: #f44336;\n color: #ffffff;\n}\n\n.expand-icon {\n color: #858585;\n font-size: 10px;\n width: 12px;\n text-align: center;\n}\n\n.notification-details {\n padding: 8px 12px;\n border-top: 1px solid #3e3e42;\n background: #1e1e1e;\n}\n\n.notification-details pre {\n margin: 0;\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n border-radius: 3px;\n padding: 8px;\n color: #cccccc;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 10px;\n white-space: pre-wrap;\n word-wrap: break-word;\n overflow-x: auto;\n max-height: 200px;\n overflow-y: auto;\n}\n\n.no-notifications {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100px;\n color: #858585;\n font-style: italic;\n font-size: 11px;\n}\n\n/* Notification scrollbars */\n.notification-list::-webkit-scrollbar,\n.notification-details pre::-webkit-scrollbar {\n width: 6px;\n height: 6px;\n}\n\n.notification-list::-webkit-scrollbar-track,\n.notification-details pre::-webkit-scrollbar-track {\n background: #1e1e1e;\n}\n\n.notification-list::-webkit-scrollbar-thumb,\n.notification-details pre::-webkit-scrollbar-thumb {\n background: #3e3e42;\n border-radius: 3px;\n}\n\n.notification-list::-webkit-scrollbar-thumb:hover,\n.notification-details pre::-webkit-scrollbar-thumb:hover {\n background: #4a4a4a;\n}\n\n/* Responsive Store Viewer */\n@media (max-width: 1024px) {\n .store-tabs {\n overflow-x: auto;\n }\n\n .tab-label {\n display: none;\n }\n\n .store-tab {\n min-width: 50px;\n justify-content: center;\n }\n\n .notification-single-line {\n flex-direction: column;\n align-items: flex-start;\n gap: 2px;\n }\n\n .notification-timestamp {\n margin-left: 0;\n }\n\n .notification-title {\n max-width: none;\n }\n}\n\n@media (max-width: 768px) {\n .store-header {\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n }\n\n .field-header,\n .secret-header,\n .entry-header {\n flex-direction: column;\n align-items: flex-start;\n gap: 6px;\n }\n\n .field-controls,\n .secret-controls {\n align-self: flex-end;\n }\n}\n\n/* Responsive Functions View */\n@media (max-width: 1024px) {\n .functions-sidebar {\n width: 160px;\n }\n}\n\n@media (max-width: 768px) {\n .functions-layout {\n flex-direction: column;\n }\n\n .functions-sidebar {\n width: 100%;\n height: 120px;\n border-right: none;\n border-bottom: 1px solid #3e3e42;\n }\n\n .functions-list {\n display: flex;\n overflow-x: auto;\n overflow-y: hidden;\n padding: 4px;\n }\n\n .function-item {\n min-width: 140px;\n margin-right: 4px;\n border-bottom: none;\n border-radius: 3px;\n border: 1px solid #3e3e42;\n }\n\n .function-item.active {\n border-left: 1px solid #ffffff;\n border-color: #ffffff;\n }\n\n .url-bar {\n flex-direction: column;\n gap: 6px;\n align-items: stretch;\n }\n\n .url-bar > * {\n width: 100%;\n }\n\n .http-method-select {\n min-width: unset;\n }\n\n .response-section {\n min-height: 200px;\n }\n}\n\n/* Jobs View */\n.jobs-view {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.jobs-not-installed {\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.sources-not-installed {\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.destinations-not-installed {\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Jobs Controls (dropdown at top) */\n.jobs-controls {\n padding: 12px 16px;\n background: #252526;\n border-bottom: 1px solid #3e3e42;\n display: flex;\n align-items: center;\n gap: 12px;\n flex-shrink: 0;\n}\n\n.job-selector-group {\n display: flex;\n align-items: center;\n gap: 8px;\n flex: 1;\n}\n\n.job-selector-group label {\n font-size: 11px;\n font-weight: 500;\n color: #cccccc;\n white-space: nowrap;\n}\n\n.job-selector-group select {\n flex: 1;\n max-width: 600px;\n padding: 6px 8px;\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n font-size: 11px;\n cursor: pointer;\n}\n\n.job-selector-group select:focus {\n outline: 1px solid #007acc;\n border-color: #007acc;\n}\n\n.job-selector-group select:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.start-job-btn {\n background: #007acc;\n color: #ffffff;\n border: 1px solid #007acc;\n padding: 6px 12px;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.2s;\n white-space: nowrap;\n}\n\n.start-job-btn:hover:not(:disabled) {\n background: #005a9e;\n border-color: #005a9e;\n}\n\n.start-job-btn:disabled {\n background: #3e3e42;\n border-color: #3e3e42;\n color: #858585;\n cursor: not-allowed;\n opacity: 0.6;\n}\n\n.jobs-layout {\n display: grid;\n grid-template-columns: 320px 1fr;\n gap: 0;\n flex: 1;\n min-height: 0;\n padding: 16px;\n}\n\n.no-jobs {\n padding: 16px 12px;\n text-align: center;\n}\n\n.no-jobs p {\n margin: 0;\n font-size: 11px;\n color: #858585;\n}\n\n/* Legacy job-item styles - kept for source jobs compatibility */\n.job-item {\n padding: 8px 12px;\n cursor: pointer;\n border-bottom: 1px solid #3e3e42;\n transition: background 0.15s ease;\n}\n\n.job-item:hover {\n background: #2a2d2e;\n}\n\n.job-item.active {\n background: #37373d;\n border-left: 2px solid #ffffff;\n}\n\n.job-item.invalid {\n border-left: 2px solid #dc3545;\n}\n\n.job-name {\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n margin-bottom: 2px;\n}\n\n.job-description {\n font-size: 10px;\n color: #858585;\n line-height: 1.3;\n margin-bottom: 4px;\n}\n\n.job-meta {\n display: flex;\n gap: 4px;\n flex-wrap: wrap;\n}\n\n.job-badge {\n display: inline-block;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n border: 1px solid;\n}\n\n.job-badge.source {\n background: #3c3c3c;\n color: #cccccc;\n border-color: #4a4a4a;\n}\n\n.job-badge.cron {\n background: #2d5200;\n color: #7bb300;\n border-color: #5c8f00;\n}\n\n.job-badge.error {\n background: #5c2d2d;\n color: #ff6b6b;\n border-color: #8f3f3f;\n}\n\n/* Executions Panel */\n.executions-panel {\n width: 300px;\n background: #252526;\n border-right: 1px solid #3e3e42;\n display: flex;\n flex-direction: column;\n}\n\n.executions-header {\n padding: 8px 12px;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n}\n\n.executions-header h4 {\n margin: 0 0 4px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.selected-job {\n font-size: 10px;\n color: #858585;\n}\n\n.executions-list {\n flex: 1;\n overflow-y: auto;\n padding: 4px 0;\n}\n\n.no-executions {\n padding: 16px 12px;\n text-align: center;\n}\n\n.no-executions p {\n margin: 0;\n font-size: 11px;\n color: #858585;\n}\n\n.execution-item {\n padding: 8px 12px;\n cursor: pointer;\n border-bottom: 1px solid #3e3e42;\n transition: background 0.15s ease;\n}\n\n.execution-item:hover {\n background: #2a2d2e;\n}\n\n.execution-item.active {\n background: #37373d;\n border-left: 2px solid #ffffff;\n}\n\n.execution-status {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-bottom: 4px;\n}\n\n.status-dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n}\n\n.status-spinner {\n width: 8px;\n height: 8px;\n border: 1px solid #3e3e42;\n border-top: 1px solid #007bff;\n border-radius: 50%;\n animation: spin 1s linear infinite;\n display: inline-block;\n}\n\n@keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n\n.status-text {\n font-size: 11px;\n font-weight: 500;\n color: #ffffff;\n text-transform: capitalize;\n}\n\n.execution-time {\n font-size: 10px;\n color: #858585;\n margin-bottom: 4px;\n}\n\n.started-at {\n margin-bottom: 2px;\n}\n\n.execution-duration {\n font-size: 9px;\n color: #999999;\n}\n\n.execution-stats {\n font-size: 10px;\n color: #858585;\n margin-bottom: 4px;\n}\n\n.state-count {\n background: #3c3c3c;\n color: #cccccc;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n border: 1px solid #4a4a4a;\n}\n\n.execution-error {\n font-size: 9px;\n color: #ff6b6b;\n background: #4a2828;\n padding: 2px 4px;\n border-radius: 2px;\n margin-top: 4px;\n border: 1px solid #6b3333;\n}\n\n/* States Panel */\n.states-panel {\n flex: 1;\n background: #1e1e1e;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n\n.states-header {\n padding: 8px 12px;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n}\n\n.states-header h4 {\n margin: 0 0 4px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.selected-execution {\n font-size: 10px;\n color: #858585;\n}\n\n.states-list {\n flex: 1;\n overflow-y: auto;\n padding: 4px 0;\n}\n\n.no-states {\n padding: 16px 12px;\n text-align: center;\n}\n\n.no-states p {\n margin: 0;\n font-size: 11px;\n color: #858585;\n}\n\n.state-item {\n border-bottom: 1px solid #3e3e42;\n}\n\n.state-header {\n padding: 8px 12px;\n cursor: pointer;\n display: flex;\n justify-content: space-between;\n align-items: center;\n transition: background 0.15s ease;\n}\n\n.state-header:hover {\n background: #2a2d2e;\n}\n\n.state-meta {\n display: flex;\n flex-direction: column;\n gap: 4px;\n flex: 1;\n}\n\n.state-primary-info {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.state-secondary-info {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.state-timestamp {\n font-size: 11px;\n color: #ffffff;\n font-weight: 500;\n}\n\n.state-phase {\n font-size: 9px;\n padding: 1px 4px;\n border-radius: 2px;\n border: 1px solid;\n font-weight: 500;\n text-transform: uppercase;\n}\n\n.state-phase.prepare {\n background: #3d2d5c;\n color: #9b7bb3;\n border-color: #5c4a8f;\n}\n\n.state-phase.perform {\n background: #2d4a5c;\n color: #7bb3d4;\n border-color: #4a7c8f;\n}\n\n.state-status {\n font-size: 10px;\n padding: 1px 4px;\n border-radius: 2px;\n border: 1px solid;\n}\n\n.state-status.complete {\n background: #2d5200;\n color: #7bb300;\n border-color: #5c8f00;\n}\n\n.state-status.error {\n background: #5c2d2d;\n color: #ff6b6b;\n border-color: #8f3f3f;\n}\n\n.state-status.incomplete {\n background: #5c5200;\n color: #d4b300;\n border-color: #8f7c00;\n}\n\n.state-expand {\n display: flex;\n align-items: center;\n}\n\n.expand-icon {\n font-size: 10px;\n color: #858585;\n transition: transform 0.15s ease;\n}\n\n.expand-icon.expanded {\n transform: rotate(180deg);\n}\n\n.state-content {\n padding: 12px;\n background: #1a1a1a;\n border-top: 1px solid #3e3e42;\n}\n\n.state-content pre {\n font-size: 10px;\n color: #cccccc;\n margin: 0;\n white-space: pre-wrap;\n word-break: break-word;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n max-height: 300px;\n overflow-y: auto;\n background: #181818;\n padding: 8px;\n border: 1px solid #3e3e42;\n border-radius: 2px;\n}\n\n.execution-summary {\n font-size: 11px;\n color: #cccccc;\n}\n\n.execution-summary div {\n margin-bottom: 6px;\n}\n\n.execution-summary strong {\n color: #ffffff;\n margin-right: 8px;\n}\n\n.execution-details-content {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n/* Modal Styles */\n.modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.7);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000;\n}\n\n.modal {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n min-width: 400px;\n max-width: 600px;\n max-height: 80vh;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n}\n\n.modal-header {\n padding: 12px 16px;\n background: #252526;\n border-bottom: 1px solid #3e3e42;\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.modal-header h3 {\n margin: 0;\n font-size: 14px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.modal-close {\n background: none;\n border: none;\n color: #858585;\n font-size: 18px;\n cursor: pointer;\n padding: 0;\n width: 20px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.modal-close:hover {\n color: #ffffff;\n}\n\n.modal-body {\n padding: 16px;\n flex: 1;\n overflow-y: auto;\n}\n\n.modal-footer {\n padding: 12px 16px;\n background: #252526;\n border-top: 1px solid #3e3e42;\n display: flex;\n justify-content: flex-end;\n gap: 8px;\n}\n\n.cancel-btn, .start-btn {\n padding: 6px 12px;\n border-radius: 3px;\n font-size: 11px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.cancel-btn {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n}\n\n.cancel-btn:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.start-btn {\n background: #007acc;\n color: #ffffff;\n border: 1px solid #0e639c;\n}\n\n.start-btn:hover:not(:disabled) {\n background: #1177bb;\n border-color: #1177bb;\n}\n\n.start-btn:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n/* Start Job Error */\n.start-job-error {\n background: #5c2d2d;\n border: 1px solid #8f3f3f;\n border-radius: 3px;\n padding: 12px;\n margin-bottom: 16px;\n}\n\n.start-job-error h4 {\n margin: 0 0 8px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ff6b6b;\n}\n\n.start-job-error p {\n margin: 0;\n font-size: 11px;\n color: #ffcccc;\n line-height: 1.4;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n/* Job Parameters */\n.job-parameters h4 {\n margin: 0 0 12px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.parameter-list {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.parameter-row {\n display: flex;\n gap: 8px;\n align-items: center;\n}\n\n.parameter-key, .parameter-value {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 6px 8px;\n border-radius: 3px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.parameter-key {\n flex: 0 0 120px;\n}\n\n.parameter-value {\n flex: 1;\n}\n\n.parameter-key:focus, .parameter-value:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.remove-parameter {\n background: #dc3545;\n color: #ffffff;\n border: 1px solid #c82333;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s ease;\n width: 24px;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.remove-parameter:hover {\n background: #c82333;\n border-color: #bd2130;\n}\n\n.add-parameter {\n background: #28a745;\n color: #ffffff;\n border: 1px solid #1e7e34;\n padding: 6px 12px;\n border-radius: 3px;\n font-size: 11px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n align-self: flex-start;\n}\n\n.add-parameter:hover {\n background: #218838;\n border-color: #1e7e34;\n}\n\n/* Responsive Jobs View */\n@media (max-width: 1024px) {\n .jobs-sidebar {\n width: 180px;\n }\n\n .executions-panel {\n width: 280px;\n }\n}\n\n@media (max-width: 768px) {\n .jobs-layout {\n flex-direction: column;\n }\n\n .jobs-sidebar {\n width: 100%;\n height: 150px;\n }\n\n .executions-panel {\n width: 100%;\n height: 200px;\n }\n\n .states-panel {\n height: 250px;\n }\n}\n/* Destinations View */\n.destinations-view {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.destinations-layout {\n display: flex;\n height: 100%;\n overflow: hidden;\n}\n\n/* Destinations Sidebar */\n.destinations-sidebar {\n width: 200px;\n background: #252526;\n border-right: 1px solid #3e3e42;\n display: flex;\n flex-direction: column;\n}\n\n.destinations-header {\n padding: 8px 12px;\n border-bottom: 1px solid #3e3e42;\n background: #2d2d30;\n}\n\n.destinations-header h4 {\n margin: 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.destinations-list {\n flex: 1;\n overflow-y: auto;\n padding: 4px 0;\n}\n\n.destination-item {\n padding: 8px 12px;\n cursor: pointer;\n border-bottom: 1px solid #3e3e42;\n transition: background 0.15s ease;\n}\n\n.destination-item:hover {\n background: #2a2d2e;\n}\n\n.destination-item.active {\n background: #37373d;\n border-left: 2px solid #ffffff;\n}\n\n.destination-name {\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n margin-bottom: 2px;\n}\n\n.destination-description {\n font-size: 10px;\n color: #858585;\n line-height: 1.3;\n margin-bottom: 4px;\n}\n\n/* Destinations Content */\n.destinations-content {\n flex: 1;\n display: flex;\n flex-direction: column;\n background: #1e1e1e;\n overflow: hidden;\n}\n\n.no-destination-selected {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.schema-section {\n flex: 1;\n display: flex;\n flex-direction: column;\n border-bottom: 1px solid #3e3e42;\n overflow-y: auto;\n padding: 12px 16px;\n}\n\n.batch-section {\n flex: 1;\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n padding: 12px 16px;\n border-bottom: 2px solid #4a4a4a;\n}\n\n/* Schema Viewer */\n.schema-viewer {\n color: #cccccc;\n}\n\n.schema-viewer.error {\n color: #f48771;\n}\n\n.schema-header h4 {\n margin-top: 0;\n color: #ffffff;\n font-size: 12px;\n font-weight: 500;\n}\n\n.schema-description {\n color: #858585;\n font-size: 11px;\n margin-bottom: 16px;\n}\n\n.schema-fields h4,\n.schema-custom-types h4 {\n color: #ffffff;\n font-size: 12px;\n font-weight: 500;\n margin-top: 16px;\n margin-bottom: 8px;\n}\n\n.fields-table {\n width: 100%;\n border-collapse: collapse;\n margin-bottom: 16px;\n font-size: 11px;\n}\n\n.fields-table th {\n background: #2d2d30;\n padding: 6px 8px;\n text-align: left;\n border-bottom: 1px solid #3e3e42;\n font-weight: 500;\n color: #cccccc;\n}\n\n.fields-table td {\n padding: 6px 8px;\n border-bottom: 1px solid #3e3e42;\n}\n\n.fields-table tr.primary-field {\n background: rgba(79, 195, 247, 0.1);\n}\n\n.field-name {\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n color: #4fc3f7;\n font-size: 10px;\n}\n\n.field-display-name {\n color: #ffffff;\n font-size: 10px;\n}\n\n.field-type {\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 10px;\n}\n\n.type-badge {\n display: inline-block;\n padding: 2px 6px;\n border-radius: 2px;\n font-size: 9px;\n background: #3c3c3c;\n color: #cccccc;\n margin-right: 4px;\n border: 1px solid #4a4a4a;\n}\n\n.type-badge.type-string {\n background: #2d5200;\n color: #7bb300;\n border-color: #5c8f00;\n}\n\n.type-badge.type-integer {\n background: #2d4a5c;\n color: #7bb3d4;\n border-color: #4a7c8f;\n}\n\n.type-badge.type-decimal {\n background: #2d4a5c;\n color: #7bb3d4;\n border-color: #4a7c8f;\n}\n\n.type-badge.type-boolean {\n background: #5c5200;\n color: #d4b300;\n border-color: #8f7c00;\n}\n\n.primary-badge {\n display: inline-block;\n padding: 1px 4px;\n border-radius: 2px;\n font-size: 9px;\n background: #5c2d2d;\n color: #ff6b6b;\n border: 1px solid #8f3f3f;\n font-weight: 500;\n}\n\n.field-description {\n color: #858585;\n font-size: 10px;\n}\n\n.custom-type {\n margin-bottom: 12px;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n overflow: hidden;\n}\n\n.custom-type-header {\n padding: 8px 12px;\n background: #2d2d30;\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: 8px;\n transition: background 0.15s ease;\n}\n\n.custom-type-header:hover {\n background: #37373d;\n}\n\n.expand-icon {\n color: #858585;\n font-size: 10px;\n width: 12px;\n}\n\n.custom-type-name {\n font-weight: 500;\n color: #4fc3f7;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 11px;\n}\n\n.custom-type-description {\n color: #858585;\n font-size: 10px;\n}\n\n.custom-type .fields-table {\n margin: 0;\n}\n\n/* Batch Editor */\n.batch-editor {\n color: #cccccc;\n}\n\n.batch-editor h4 {\n margin-top: 0;\n color: #ffffff;\n font-size: 12px;\n font-weight: 500;\n}\n\n/* All buttons section */\n.all-buttons-section {\n display: flex;\n gap: 12px;\n margin-bottom: 16px;\n align-items: center;\n}\n\n.settings-icon-button {\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n font-size: 18px;\n cursor: pointer;\n padding: 10px 16px;\n color: #858585;\n transition: all 0.15s;\n border-radius: 3px;\n flex-shrink: 0;\n}\n\n.settings-icon-button:hover {\n background: #4a4a4a;\n border-color: #5a5a5a;\n color: #cccccc;\n}\n\n.button-separator {\n width: 1px;\n background: #4a4a4a;\n margin: 0 4px;\n}\n\n.generate-button {\n flex: 1;\n padding: 10px 16px;\n font-size: 14px;\n font-weight: 500;\n background-color: #3c3c3c;\n border: 1px solid #4a4a4a;\n color: #cccccc;\n border-radius: 3px;\n cursor: pointer;\n transition: background-color 0.15s, border-color 0.15s;\n}\n\n.generate-button:hover:not(:disabled) {\n background-color: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.generate-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n/* JSON Editor - maximize space */\n.batch-json-editor {\n margin-bottom: 16px;\n}\n\n.batch-json-editor label {\n display: block;\n margin-bottom: 4px;\n color: #858585;\n font-size: 10px;\n}\n\n.batch-json-editor textarea {\n width: 100%;\n min-height: 300px;\n padding: 8px;\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n border-radius: 3px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 11px;\n resize: vertical;\n}\n\n.batch-json-editor textarea:focus {\n outline: none;\n border-color: #ffffff;\n}\n\n.batch-json-editor textarea.valid {\n border-color: #4caf50;\n}\n\n.batch-json-editor textarea.invalid {\n border-color: #f48771;\n}\n\n.json-error {\n color: #f48771;\n font-size: 10px;\n margin-top: 4px;\n}\n\n.deliver-button {\n flex: 1;\n padding: 12px 20px;\n font-size: 16px;\n font-weight: 600;\n border-radius: 3px;\n cursor: pointer;\n transition: background-color 0.15s, border-color 0.15s;\n}\n\n.deliver-button.primary {\n background-color: #0e639c;\n color: white;\n border: 1px solid #0e639c;\n}\n\n.deliver-button.primary:hover:not(:disabled) {\n background-color: #1177bb;\n border-color: #1177bb;\n}\n\n.deliver-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.ready-button {\n flex: 1;\n padding: 12px 20px;\n font-size: 15px;\n font-weight: 500;\n border-radius: 3px;\n cursor: pointer;\n transition: background-color 0.15s, border-color 0.15s;\n}\n\n.ready-button.secondary {\n background-color: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n}\n\n.ready-button.secondary:hover:not(:disabled) {\n background-color: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.ready-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.deliver-button:focus,\n.ready-button:focus,\n.generate-button:focus {\n outline: none;\n border-color: #ffffff;\n box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.2);\n}\n\n/* Toast Notifications */\n.toast-notification {\n position: fixed;\n top: 60px;\n right: 20px;\n min-width: 300px;\n max-width: 400px;\n padding: 16px;\n border-radius: 4px;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);\n z-index: 2000;\n animation: slideInRight 0.3s ease-out;\n border-left: 4px solid;\n}\n\n@keyframes slideInRight {\n from {\n transform: translateX(100%);\n opacity: 0;\n }\n to {\n transform: translateX(0);\n opacity: 1;\n }\n}\n\n.toast-notification.toast-success {\n background: #2d5200;\n border-color: #7bb300;\n}\n\n.toast-notification.toast-error {\n background: #5c2d2d;\n border-color: #ff6b6b;\n}\n\n.toast-notification.toast-warning {\n background: #5c5200;\n border-color: #d4b300;\n}\n\n.toast-content {\n color: #ffffff;\n}\n\n.toast-content strong {\n display: block;\n font-size: 13px;\n margin-bottom: 6px;\n font-weight: 600;\n}\n\n.toast-message {\n font-size: 12px;\n line-height: 1.4;\n color: #cccccc;\n}\n\n.toast-detail {\n font-size: 11px;\n margin-top: 4px;\n color: #999999;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n/* Responsive Destinations View */\n@media (max-width: 1024px) {\n .destinations-sidebar {\n width: 180px;\n }\n}\n\n@media (max-width: 768px) {\n .destinations-layout {\n flex-direction: column;\n }\n\n .destinations-sidebar {\n width: 100%;\n height: 150px;\n border-right: none;\n border-bottom: 1px solid #3e3e42;\n }\n\n .destinations-list {\n display: flex;\n overflow-x: auto;\n overflow-y: hidden;\n padding: 4px;\n }\n\n .destination-item {\n min-width: 140px;\n margin-right: 4px;\n border-bottom: none;\n border-radius: 3px;\n border: 1px solid #3e3e42;\n }\n\n .destination-item.active {\n border-left: 1px solid #ffffff;\n border-color: #ffffff;\n }\n\n .schema-section,\n .batch-section {\n flex: none;\n min-height: 200px;\n }\n}\n\n/* Sources - Specific Styles (reuses destinations-* classes for layout) */\n\n/* Source webhook and data section - 2-column grid */\n.source-webhook-and-data-section {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 12px;\n margin-bottom: 12px;\n padding: 12px 16px;\n}\n\n.source-webhook-section,\n.source-data-section {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n padding: 12px;\n}\n\n/* Source webhook editor */\n.source-webhook-section h3,\n.source-data-section h3 {\n margin: 0 0 12px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.webhook-controls {\n display: flex;\n gap: 8px;\n margin-bottom: 12px;\n align-items: center;\n flex-wrap: wrap;\n}\n\n.method-selector {\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.method-selector label {\n font-size: 11px;\n color: #858585;\n}\n\n.method-selector select {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 11px;\n}\n\n.webhook-payload-editor label {\n display: block;\n margin-bottom: 6px;\n font-size: 11px;\n color: #858585;\n}\n\n.webhook-payload-editor textarea {\n width: 100%;\n min-height: 120px;\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 8px;\n border-radius: 3px;\n font-size: 11px;\n font-family: 'SF Mono', 'Monaco', monospace;\n resize: vertical;\n}\n\n.webhook-payload-editor textarea.valid {\n border-color: #4caf50;\n}\n\n.webhook-payload-editor textarea.invalid {\n border-color: #f48771;\n}\n\n.webhook-response {\n margin-top: 12px;\n padding: 8px;\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n border-radius: 3px;\n}\n\n.webhook-response h4 {\n margin: 0 0 6px 0;\n font-size: 11px;\n color: #ffffff;\n}\n\n.response-status {\n margin-bottom: 6px;\n font-size: 10px;\n font-weight: 500;\n}\n\n.response-body pre {\n margin: 0;\n font-size: 10px;\n overflow-x: auto;\n}\n\n/* Source data viewer */\n.source-data-viewer {\n display: flex;\n flex-direction: column;\n min-height: 0;\n height: 100%;\n}\n\n.data-viewer-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 12px;\n flex-shrink: 0;\n}\n\n.data-viewer-header h3 {\n margin: 0;\n}\n\n.data-viewer-controls {\n display: flex;\n gap: 6px;\n align-items: center;\n}\n\n.data-viewer-controls button {\n background: #3c3c3c;\n color: #cccccc;\n border: 1px solid #4a4a4a;\n padding: 4px 8px;\n border-radius: 3px;\n font-size: 10px;\n cursor: pointer;\n}\n\n.data-viewer-controls button:hover:not(:disabled) {\n background: #4a4a4a;\n}\n\n.data-viewer-controls button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.auto-refresh-toggle {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 10px;\n color: #858585;\n}\n\n.data-entries {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n}\n\n.entries-list {\n padding: 6px;\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.data-entry {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n padding: 8px;\n}\n\n.entry-header {\n display: flex;\n justify-content: space-between;\n margin-bottom: 6px;\n font-size: 10px;\n color: #858585;\n}\n\n.entry-timestamp {\n font-weight: 500;\n color: #9cdcfe;\n}\n\n.entry-data pre {\n margin: 0;\n font-size: 10px;\n font-family: 'SF Mono', 'Monaco', monospace;\n color: #cccccc;\n overflow-x: auto;\n}\n\n.entry-metadata-details {\n margin-top: 6px;\n}\n\n.entry-metadata-details summary {\n cursor: pointer;\n font-size: 10px;\n color: #858585;\n}\n\n.entry-metadata-details pre {\n margin: 4px 0 0 0;\n font-size: 9px;\n color: #cccccc;\n}\n\n.data-viewer-footer {\n margin-top: 8px;\n font-size: 10px;\n color: #858585;\n flex-shrink: 0;\n text-align: right;\n}\n\n.no-data {\n padding: 24px;\n text-align: center;\n color: #858585;\n font-size: 11px;\n}\n\n.no-data .hint {\n font-size: 10px;\n margin-top: 6px;\n font-style: italic;\n}\n\n/* Source jobs wrapper */\n.source-jobs-wrapper {\n padding: 12px 16px;\n margin-bottom: 12px;\n}\n\n.source-jobs-section {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n padding: 12px;\n}\n\n.source-jobs-section h3 {\n margin: 0 0 12px 0;\n font-size: 12px;\n font-weight: 500;\n color: #ffffff;\n}\n\n.source-jobs-section .job-item {\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n margin-bottom: 8px;\n}\n\n.source-jobs-section .job-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px;\n}\n\n.source-jobs-section .job-info {\n display: flex;\n align-items: center;\n gap: 6px;\n cursor: pointer;\n flex: 1;\n}\n\n.source-jobs-section .job-name {\n font-size: 11px;\n font-weight: 500;\n color: #ffffff;\n margin-bottom: 2px;\n}\n\n.source-jobs-section .job-description {\n font-size: 10px;\n color: #858585;\n}\n\n.run-job-button {\n background: #0e639c;\n color: white;\n border: none;\n padding: 4px 12px;\n border-radius: 3px;\n font-size: 10px;\n cursor: pointer;\n font-weight: 500;\n}\n\n.run-job-button:hover:not(:disabled) {\n background: #1177bb;\n}\n\n.run-job-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.job-executions {\n padding: 8px;\n border-top: 1px solid #3e3e42;\n background: #252526;\n}\n\n.job-executions h4 {\n margin: 0 0 8px 0;\n font-size: 11px;\n color: #ffffff;\n}\n\n.execution-item {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n margin-bottom: 6px;\n}\n\n.execution-item.success {\n border-left: 3px solid #4caf50;\n}\n\n.execution-item.failure {\n border-left: 3px solid #f48771;\n}\n\n.execution-header {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 6px 8px;\n cursor: pointer;\n}\n\n.execution-header:hover {\n background: #37373d;\n}\n\n.execution-status {\n font-size: 12px;\n}\n\n.execution-timestamp {\n flex: 1;\n font-size: 10px;\n color: #cccccc;\n}\n\n.execution-time {\n font-size: 10px;\n color: #858585;\n}\n\n.execution-details {\n padding: 8px;\n border-top: 1px solid #3e3e42;\n background: #1e1e1e;\n}\n\n.execution-error,\n.execution-logs,\n.execution-result {\n margin-bottom: 8px;\n}\n\n.execution-error strong,\n.execution-logs strong,\n.execution-result strong {\n display: block;\n margin-bottom: 4px;\n font-size: 10px;\n color: #ffffff;\n}\n\n.execution-logs pre,\n.execution-result pre {\n margin: 0;\n padding: 6px;\n background: #3c3c3c;\n border: 1px solid #4a4a4a;\n border-radius: 3px;\n font-size: 9px;\n color: #cccccc;\n overflow-x: auto;\n font-family: 'SF Mono', 'Monaco', monospace;\n}\n\n.no-executions {\n padding: 16px;\n text-align: center;\n color: #858585;\n font-size: 10px;\n font-style: italic;\n}\n\n/* Source Tabs */\n.source-tabs {\n display: flex;\n gap: 0;\n border-bottom: 1px solid #3e3e42;\n margin-bottom: 16px;\n}\n\n.source-tab {\n padding: 10px 20px;\n background: transparent;\n border: none;\n border-bottom: 2px solid transparent;\n color: #858585;\n cursor: pointer;\n font-size: 11px;\n font-weight: 500;\n transition: all 0.2s;\n}\n\n.source-tab:hover {\n color: #cccccc;\n background: #2a2a2a;\n}\n\n.source-tab.active {\n color: #ffffff;\n border-bottom-color: #007acc;\n background: transparent;\n}\n\n/* Source Tab Content */\n.source-tab-content {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n}\n\n.source-tab-panel {\n display: grid;\n grid-template-columns: 1fr 400px;\n gap: 16px;\n flex: 1;\n min-height: 0;\n}\n\n.source-main-section {\n display: flex;\n flex-direction: column;\n gap: 16px;\n min-height: 0;\n height: 100%;\n padding-left: 16px;\n}\n\n.source-main-section > *:first-child {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n\n.source-main-section > *:last-child {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n\n.source-side-panels {\n display: flex;\n flex-direction: column;\n min-height: 0;\n height: 100%;\n overflow: hidden;\n}\n\n.source-panel {\n background: #252526;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n padding: 12px;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n}\n\n.source-full-width-panel {\n background: #252526;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n padding: 12px;\n flex-shrink: 0;\n}\n\n/* Webhook Editor */\n.webhook-editor {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n}\n\n.webhook-editor h3 {\n margin: 0 0 12px 0;\n flex-shrink: 0;\n}\n\n/* Webhook URL Display */\n.webhook-url-display {\n margin-bottom: 12px;\n flex-shrink: 0;\n}\n\n.webhook-url-display label {\n display: block;\n margin-bottom: 4px;\n font-size: 11px;\n color: #cccccc;\n font-weight: 500;\n}\n\n.webhook-url-display .url-value {\n padding: 8px 12px;\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 11px;\n color: #d4d4d4;\n word-break: break-all;\n}\n\n/* Action buttons (matching destination button style) */\n.action-button {\n flex: 1;\n padding: 12px 20px;\n border-radius: 4px;\n border: 1px solid #4a4a4a;\n cursor: pointer;\n font-size: 12px;\n font-weight: 500;\n transition: all 0.2s;\n}\n\n.action-button.primary {\n background-color: #0e639c;\n color: white;\n border-color: #0e639c;\n}\n\n.action-button.primary:hover:not(:disabled) {\n background-color: #1177bb;\n border-color: #1177bb;\n}\n\n.action-button.secondary {\n background-color: #3c3c3c;\n color: #cccccc;\n border-color: #4a4a4a;\n}\n\n.action-button.secondary:hover:not(:disabled) {\n background-color: #4a4a4a;\n border-color: #5a5a5a;\n}\n\n.action-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.action-button:focus {\n outline: none;\n border-color: #ffffff;\n box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1);\n}\n\n/* Schema Viewer in Panel */\n.source-panel .schema-viewer {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n overflow-y: auto;\n}\n\n/* Source Jobs Section in Panel */\n.source-panel .source-jobs-section {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n}\n\n.source-panel .source-jobs-section h3 {\n margin: 0 0 12px 0;\n flex-shrink: 0;\n}\n\n.source-panel .jobs-list {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n\n/* Full-width source jobs layout */\n.source-jobs-full-width {\n flex: 1;\n min-height: 0;\n display: flex;\n height: 100%;\n padding-left: 16px;\n}\n\n.source-jobs-full-width .source-jobs-container {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n overflow: hidden;\n}\n\n/* Source Jobs Controls */\n.source-jobs-controls {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px;\n background: #252526;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n margin-bottom: 16px;\n flex-shrink: 0;\n}\n\n.job-selector-group {\n display: flex;\n align-items: center;\n gap: 8px;\n flex: 1;\n}\n\n.job-selector-group label {\n color: #cccccc;\n font-size: 12px;\n white-space: nowrap;\n}\n\n.job-selector-group select {\n flex: 1;\n padding: 6px 8px;\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n border-radius: 3px;\n color: #cccccc;\n font-size: 12px;\n cursor: pointer;\n}\n\n.job-selector-group select:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.job-selector-group select:focus {\n outline: none;\n border-color: #007acc;\n}\n\n/* Source Jobs Panels (2-column layout) */\n.source-jobs-panels {\n flex: 1;\n display: flex;\n gap: 16px;\n min-height: 0;\n overflow: hidden;\n}\n\n.source-jobs-panels .executions-panel {\n flex: 1;\n min-width: 0;\n}\n\n/* Right column with vertical split */\n.source-jobs-right-column {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n\n.source-jobs-right-column .states-panel {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n\n.source-jobs-right-column .source-panel {\n flex: 1;\n min-height: 0;\n}\n\n/* Responsive adjustments */\n@media (max-width: 1200px) {\n .source-tab-panel {\n grid-template-columns: 1fr;\n }\n\n .source-side-panels {\n flex-direction: row;\n }\n\n .source-panel {\n flex: 1;\n }\n}\n\n/* ===================================\n Source Lifecycle Section Styles\n =================================== */\n\n.source-lifecycle-container {\n height: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.source-lifecycle-full-width {\n width: 100%;\n height: 100%;\n overflow-y: auto;\n}\n\n.source-schema-full-width {\n width: 100%;\n height: 100%;\n overflow-y: auto;\n padding: 16px;\n}\n\n/* Two Panel Layout */\n.lifecycle-two-panel {\n display: grid;\n grid-template-columns: 400px 1fr;\n gap: 16px;\n height: 100%;\n min-height: 0;\n}\n\n/* Left Panel - Methods List */\n.lifecycle-methods-panel {\n background: #252526;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.lifecycle-methods-panel .panel-header {\n padding: 12px;\n border-bottom: 1px solid #3e3e42;\n flex-shrink: 0;\n}\n\n.lifecycle-methods-panel .panel-header h3 {\n margin: 0 0 4px 0;\n font-size: 13px;\n font-weight: 600;\n color: #cccccc;\n}\n\n.lifecycle-methods-panel .panel-description {\n margin: 0;\n font-size: 11px;\n color: #858585;\n}\n\n.lifecycle-methods-panel .panel-description strong {\n color: #d4d4d4;\n font-weight: 500;\n}\n\n.lifecycle-methods-list {\n flex: 1;\n overflow-y: auto;\n min-height: 0;\n}\n\n.lifecycle-method-item {\n border-bottom: 1px solid #3e3e42;\n}\n\n.lifecycle-method-item:last-child {\n border-bottom: none;\n}\n\n.lifecycle-method-item .method-header {\n padding: 12px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n transition: background 0.2s;\n}\n\n.lifecycle-method-item .method-header:hover {\n background: #2a2a2a;\n}\n\n.lifecycle-method-item .method-info {\n flex: 1;\n min-width: 0;\n}\n\n.lifecycle-method-item .method-info h4 {\n margin: 0 0 4px 0;\n font-size: 12px;\n font-weight: 600;\n color: #cccccc;\n}\n\n.lifecycle-method-item .method-info p {\n margin: 0;\n font-size: 11px;\n color: #858585;\n line-height: 1.4;\n}\n\n.lifecycle-trigger-btn {\n padding: 6px 12px;\n background: #007acc;\n color: #ffffff;\n border: 1px solid #007acc;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.2s;\n flex-shrink: 0;\n min-width: 70px;\n}\n\n.lifecycle-trigger-btn:hover:not(:disabled) {\n background: #005a9e;\n border-color: #005a9e;\n}\n\n.lifecycle-trigger-btn:disabled {\n background: #3e3e42;\n border-color: #3e3e42;\n color: #858585;\n cursor: not-allowed;\n opacity: 0.6;\n}\n\n/* Right Panel - Response */\n.lifecycle-response-panel {\n background: #252526;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.lifecycle-response-panel .panel-header {\n padding: 12px;\n border-bottom: 1px solid #3e3e42;\n flex-shrink: 0;\n}\n\n.lifecycle-response-panel .panel-header h3 {\n margin: 0;\n font-size: 13px;\n font-weight: 600;\n color: #cccccc;\n}\n\n.response-content {\n flex: 1;\n overflow-y: auto;\n padding: 12px;\n min-height: 0;\n}\n\n.no-response {\n text-align: center;\n padding: 40px 20px;\n color: #858585;\n}\n\n.no-response p {\n margin: 0 0 8px 0;\n font-size: 11px;\n}\n\n.no-response .hint {\n font-size: 11px;\n color: #6a6a6a;\n}\n\n.response-details {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.response-header {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.response-status {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.response-status .status-dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n flex-shrink: 0;\n}\n\n.response-status.success .status-dot {\n background: #28a745;\n}\n\n.response-status.error .status-dot {\n background: #dc3545;\n}\n\n.response-status .status-text {\n font-size: 12px;\n font-weight: 600;\n}\n\n.response-status.success .status-text {\n color: #28a745;\n}\n\n.response-status.error .status-text {\n color: #dc3545;\n}\n\n.response-meta {\n display: flex;\n gap: 12px;\n font-size: 11px;\n color: #858585;\n}\n\n.response-action {\n font-weight: 500;\n color: #cccccc;\n}\n\n.response-time {\n color: #6a6a6a;\n}\n\n.response-message {\n padding: 12px;\n background: #1e1e1e;\n border: 1px solid #3e3e42;\n border-radius: 4px;\n}\n\n.response-message label {\n display: block;\n margin-bottom: 8px;\n font-size: 11px;\n font-weight: 600;\n color: #cccccc;\n}\n\n.response-message pre {\n margin: 0;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n font-size: 11px;\n color: #d4d4d4;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n/* Responsive Design */\n@media (max-width: 768px) {\n .lifecycle-two-panel {\n grid-template-columns: 1fr;\n grid-template-rows: auto 1fr;\n }\n}\n"],sourceRoot:""}]);const s=i},4848:(e,n,t)=>{e.exports=t(9698)},5044:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0});const r=t(4848),o=t(6540),a=t(2648),i=t(278),s=t(3717),l=t(9573),c=t(7370);n.default=({appInstalled:e,buildStatus:n})=>{const t=(0,a.useLocation)(),[d,A]=(0,o.useState)([]),u=t.pathname.split("/").filter(Boolean),f=u.length>1?u[1]:null,p=(0,l.useAppDispatch)(),h=(0,l.useAppSelector)(e=>e.formState.functions),[m,g]=(0,o.useState)({}),b=e=>h[e]||(0,c.getDefaultFunctionFormState)(),E=e=>m[e]||{response:null,loading:!1,responseTab:"body"},x=e=>{f&&p((0,c.updateFunctionState)({id:f,data:e}))},C=e=>{f&&g(n=>({...n,[f]:{...E(f),...e}}))},{navigateToEntity:B}=(0,i.useEntityNavigation)({basePath:"/functions",entityName:"function",entities:d,selectedEntityId:f}),{getParam:y,setParam:v}=(0,s.useQueryParams)(),k=y("requestTab"),w=k&&["params","headers","body"].includes(k)?k:"body",S=(0,o.useCallback)(e=>{v("requestTab",e)},[v]),j=f?{...b(f),...E(f)}:{...(0,c.getDefaultFunctionFormState)(),response:null,loading:!1,responseTab:"body"};(0,o.useEffect)(()=>{e&&N()},[e]),(0,o.useEffect)(()=>{if(f){const e=d.find(e=>e.id===f);let n="";n=e&&e.url?e.url:`/devserver/api/functions/${f}/execute`,b(f).requestUrl||x({requestUrl:n})}},[f,d]);const N=async()=>{try{const e=await fetch("/devserver/api/functions");if(e.ok){const n=await e.json();A(n)}}catch(e){console.error("Error fetching functions:",e)}},z=e=>{x("params"===e?{params:[...j.params,{key:"",value:"",enabled:!0}]}:{headers:[...j.headers,{key:"",value:"",enabled:!0}]})},P=(e,n,t,r)=>{if("params"===e){const e=[...j.params];e[n]={...e[n],[t]:r},x({params:e})}else{const e=[...j.headers];e[n]={...e[n],[t]:r},x({headers:e})}},_=(e,n)=>{x("params"===e?{params:j.params.filter((e,t)=>t!==n)}:{headers:j.headers.filter((e,t)=>t!==n)})},O=(0,o.useCallback)(e=>{S(e)},[S]),T=(0,o.useCallback)(e=>{f&&g(n=>({...n,[f]:{...n[f]||{response:null,loading:!1,responseTab:"body"},responseTab:e}}))},[f]);return n?.buildInProgress||null===n?.lastBuildSuccess&&null===n?.lastBuildTimestamp?(0,r.jsx)("div",{className:"functions-not-installed",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Building App..."}),(0,r.jsx)("p",{children:"Please wait while the app is being built."}),(0,r.jsx)("div",{className:"spinner"})]})}):!1===n?.lastBuildSuccess?(0,r.jsx)("div",{className:"functions-not-installed",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Build Failed"}),(0,r.jsx)("p",{children:"The app failed to build. Please check the console for errors."}),n.lastBuildError&&(0,r.jsx)("pre",{className:"error-details",children:n.lastBuildError})]})}):e?(0,r.jsx)("div",{className:"functions-view",children:(0,r.jsxs)("div",{className:"functions-layout",children:[(0,r.jsxs)("div",{className:"functions-sidebar",children:[(0,r.jsx)("div",{className:"functions-header",children:(0,r.jsx)("h4",{children:"Functions"})}),(0,r.jsx)("div",{className:"functions-list",children:0===d.length?(0,r.jsx)("div",{className:"no-functions",children:(0,r.jsx)("p",{children:"No functions defined in app.yml"})}):d.map(e=>(0,r.jsxs)("div",{className:"function-item "+(f===e.id?"active":""),onClick:()=>B(e.id),children:[(0,r.jsx)("div",{className:"function-name",children:e.id}),(0,r.jsx)("div",{className:"function-description",children:e.description}),e.global&&(0,r.jsx)("div",{className:"function-badge",children:"Global"})]},e.id))})]}),(0,r.jsx)("div",{className:"functions-content",children:f?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"request-section",children:[(0,r.jsxs)("div",{className:"url-bar",children:[(0,r.jsxs)("select",{className:"http-method-select",value:j.httpMethod,onChange:e=>x({httpMethod:e.target.value}),children:[(0,r.jsx)("option",{value:"GET",children:"GET"}),(0,r.jsx)("option",{value:"POST",children:"POST"}),(0,r.jsx)("option",{value:"PUT",children:"PUT"}),(0,r.jsx)("option",{value:"DELETE",children:"DELETE"}),(0,r.jsx)("option",{value:"PATCH",children:"PATCH"})]}),(0,r.jsx)("input",{type:"text",className:"url-input",value:j.requestUrl,onChange:e=>x({requestUrl:e.target.value}),placeholder:e?"Function URL with GUID":"Install app to get function URL",disabled:!e}),(0,r.jsx)("button",{className:"send-button",onClick:async()=>{if(!f||!j.requestUrl)return void C({response:{result:null,input:j.requestBody,logs:[],executionTime:0,error:{message:"Function URL not available. Make sure the app is installed.",stack:void 0}}});C({loading:!0});const e=performance.now();try{let n={};if(j.requestBody.trim())try{n=JSON.parse(j.requestBody)}catch(e){return void C({response:{result:null,input:j.requestBody,logs:[],executionTime:0,error:{message:"Invalid JSON in request body",stack:String(e)}},loading:!1})}const t={method:j.httpMethod,headers:{"Content-Type":"application/json"}};"GET"!==j.httpMethod&&"HEAD"!==j.httpMethod&&(t.body=JSON.stringify(n));const r=await fetch(j.requestUrl,t),o=r.status,a=r.statusText,i=[];r.headers.forEach((e,n)=>{i.push([n,e])});const s=await r.text();let l;try{l=JSON.parse(s)}catch(e){l=s}const c=Math.round(performance.now()-e),d={result:l,input:"GET"===j.httpMethod||"HEAD"===j.httpMethod?null:n,logs:[],executionTime:c,status:o,statusText:a,headers:i};C({response:d,loading:!1})}catch(n){const t=Math.round(performance.now()-e);C({response:{result:null,input:"GET"===j.httpMethod||"HEAD"===j.httpMethod?null:j.requestBody,logs:[],executionTime:t,error:{message:n instanceof Error?n.message:"Unknown error",stack:n instanceof Error?n.stack:void 0}},loading:!1})}},disabled:j.loading||!e||n?.buildInProgress,title:n?.buildInProgress?"Build in progress...":"Send request",children:j.loading?"Sending...":"Send"})]}),(0,r.jsxs)("div",{className:"request-tabs",children:[(0,r.jsxs)("div",{className:"tab-headers",children:[(0,r.jsx)("button",{className:"tab-header "+("params"===w?"active":""),onClick:()=>O("params"),children:"Params"}),(0,r.jsx)("button",{className:"tab-header "+("headers"===w?"active":""),onClick:()=>O("headers"),children:"Headers"}),(0,r.jsx)("button",{className:"tab-header "+("body"===w?"active":""),onClick:()=>O("body"),children:"Body"})]}),(0,r.jsxs)("div",{className:"tab-content",children:["params"===w&&(0,r.jsxs)("div",{className:"key-value-editor",children:[(0,r.jsxs)("div",{className:"key-value-header",children:[(0,r.jsx)("span",{className:"col-checkbox"}),(0,r.jsx)("span",{className:"col-key",children:"Key"}),(0,r.jsx)("span",{className:"col-value",children:"Value"}),(0,r.jsx)("span",{className:"col-actions"})]}),j.params.map((e,n)=>(0,r.jsxs)("div",{className:"key-value-row",children:[(0,r.jsx)("input",{type:"checkbox",checked:e.enabled,onChange:e=>P("params",n,"enabled",e.target.checked)}),(0,r.jsx)("input",{type:"text",value:e.key,onChange:e=>P("params",n,"key",e.target.value),placeholder:"Key"}),(0,r.jsx)("input",{type:"text",value:e.value,onChange:e=>P("params",n,"value",e.target.value),placeholder:"Value"}),(0,r.jsx)("button",{className:"remove-btn",onClick:()=>_("params",n),children:"×"})]},n)),(0,r.jsx)("button",{className:"add-btn",onClick:()=>z("params"),children:"Add Parameter"})]}),"headers"===w&&(0,r.jsxs)("div",{className:"key-value-editor",children:[(0,r.jsxs)("div",{className:"key-value-header",children:[(0,r.jsx)("span",{className:"col-checkbox"}),(0,r.jsx)("span",{className:"col-key",children:"Key"}),(0,r.jsx)("span",{className:"col-value",children:"Value"}),(0,r.jsx)("span",{className:"col-actions"})]}),j.headers.map((e,n)=>(0,r.jsxs)("div",{className:"key-value-row",children:[(0,r.jsx)("input",{type:"checkbox",checked:e.enabled,onChange:e=>P("headers",n,"enabled",e.target.checked)}),(0,r.jsx)("input",{type:"text",value:e.key,onChange:e=>P("headers",n,"key",e.target.value),placeholder:"Key"}),(0,r.jsx)("input",{type:"text",value:e.value,onChange:e=>P("headers",n,"value",e.target.value),placeholder:"Value"}),(0,r.jsx)("button",{className:"remove-btn",onClick:()=>_("headers",n),children:"×"})]},n)),(0,r.jsx)("button",{className:"add-btn",onClick:()=>z("headers"),children:"Add Header"})]}),"body"===w&&(0,r.jsx)("div",{className:"body-editor",children:(0,r.jsx)("textarea",{className:"body-textarea",value:j.requestBody,onChange:e=>x({requestBody:e.target.value}),placeholder:"Enter JSON request body..."})})]})]})]}),(0,r.jsxs)("div",{className:"response-section",children:[(0,r.jsxs)("div",{className:"response-header",children:[(0,r.jsx)("h4",{children:"Response"}),j.response&&(0,r.jsxs)("div",{className:"response-meta",children:[(0,r.jsxs)("span",{className:"execution-time",children:[j.response.executionTime,"ms"]}),j.response.status&&(0,r.jsxs)("span",{className:`http-status status-${Math.floor(j.response.status/100)}xx`,children:[j.response.status," ",j.response.statusText]})]})]}),j.response?(0,r.jsxs)("div",{className:"response-tabs",children:[(0,r.jsxs)("div",{className:"tab-headers",children:[(0,r.jsx)("button",{className:"tab-header "+("body"===j.responseTab?"active":""),onClick:()=>T("body"),children:"Body"}),(0,r.jsx)("button",{className:"tab-header "+("headers"===j.responseTab?"active":""),onClick:()=>T("headers"),children:"Headers"})]}),(0,r.jsxs)("div",{className:"tab-content",children:["body"===j.responseTab&&(0,r.jsxs)("div",{className:"response-data",children:[j.response.error?(0,r.jsxs)("div",{className:"response-error",children:[(0,r.jsx)("h5",{children:"Execution Error"}),(0,r.jsx)("pre",{children:j.response.error.message}),j.response.error.stack&&(0,r.jsxs)("details",{children:[(0,r.jsx)("summary",{children:"Stack trace"}),(0,r.jsx)("pre",{children:j.response.error.stack})]})]}):(0,r.jsx)("div",{className:"response-body",children:(0,r.jsx)("pre",{children:"string"==typeof j.response.result?j.response.result:JSON.stringify(j.response.result,null,2)})}),j.response.logs&&j.response.logs.length>0&&(0,r.jsxs)("div",{className:"response-logs",children:[(0,r.jsx)("h5",{children:"Execution Logs"}),(0,r.jsx)("div",{className:"log-entries",children:j.response.logs.map((e,n)=>(0,r.jsx)("div",{className:"log-entry",children:e},n))})]})]}),"headers"===j.responseTab&&(0,r.jsx)("div",{className:"response-headers",children:j.response.headers&&j.response.headers.length>0?(0,r.jsxs)("div",{className:"key-value-editor",children:[(0,r.jsxs)("div",{className:"key-value-header",children:[(0,r.jsx)("span",{className:"col-key",children:"Key"}),(0,r.jsx)("span",{className:"col-value",children:"Value"})]}),j.response.headers.map(([e,n],t)=>(0,r.jsxs)("div",{className:"key-value-row",children:[(0,r.jsx)("input",{type:"text",value:e,readOnly:!0,className:"header-key"}),(0,r.jsx)("input",{type:"text",value:n,readOnly:!0,className:"header-value"})]},t))]}):(0,r.jsx)("div",{className:"no-headers",children:(0,r.jsx)("p",{children:"No response headers"})})})]})]}):(0,r.jsx)("div",{className:"response-content",children:(0,r.jsx)("div",{className:"no-response",children:(0,r.jsx)("p",{children:"Send a request to see the response"})})})]})]}):(0,r.jsx)("div",{className:"no-function-selected",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Select a Function"}),(0,r.jsx)("p",{children:"Choose a function from the sidebar to test it"})]})})})]})}):(0,r.jsx)("div",{className:"functions-not-installed",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Functions Not Available"}),(0,r.jsx)("p",{children:"Install your app first to test its functions. Functions will appear here after installation."})]})})}},5056:(e,n,t)=>{e.exports=function(e){var n=t.nc;n&&e.setAttribute("nonce",n)}},5072:e=>{var n=[];function t(e){for(var t=-1,r=0;r<n.length;r++)if(n[r].identifier===e){t=r;break}return t}function r(e,r){for(var a={},i=[],s=0;s<e.length;s++){var l=e[s],c=r.base?l[0]+r.base:l[0],d=a[c]||0,A="".concat(c," ").concat(d);a[c]=d+1;var u=t(A),f={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==u)n[u].references++,n[u].updater(f);else{var p=o(f,r);r.byIndex=s,n.splice(s,0,{identifier:A,updater:p,references:1})}i.push(A)}return i}function o(e,n){var t=n.domAPI(n);return t.update(e),function(n){if(n){if(n.css===e.css&&n.media===e.media&&n.sourceMap===e.sourceMap&&n.supports===e.supports&&n.layer===e.layer)return;t.update(e=n)}else t.remove()}}e.exports=function(e,o){var a=r(e=e||[],o=o||{});return function(e){e=e||[];for(var i=0;i<a.length;i++){var s=t(a[i]);n[s].references--}for(var l=r(e,o),c=0;c<a.length;c++){var d=t(a[c]);0===n[d].references&&(n[d].updater(),n.splice(d,1))}a=l}}},5160:(e,n,t)=>{var r=t(6540),o="function"==typeof Object.is?Object.is:function(e,n){return e===n&&(0!==e||1/e==1/n)||e!=e&&n!=n},a=r.useSyncExternalStore,i=r.useRef,s=r.useEffect,l=r.useMemo,c=r.useDebugValue;n.useSyncExternalStoreWithSelector=function(e,n,t,r,d){var A=i(null);if(null===A.current){var u={hasValue:!1,value:null};A.current=u}else u=A.current;A=l(function(){function e(e){if(!s){if(s=!0,a=e,e=r(e),void 0!==d&&u.hasValue){var n=u.value;if(d(n,e))return i=n}return i=e}if(n=i,o(a,e))return n;var t=r(e);return void 0!==d&&d(n,t)?(a=e,n):(a=e,i=t)}var a,i,s=!1,l=void 0===t?null:t;return[function(){return e(n())},null===l?void 0:function(){return e(l())}]},[n,t,r,d]);var f=a(e,A[0],A[1]);return s(function(){u.hasValue=!0,u.value=f},[f]),c(f),f}},5338:(e,n,t)=>{!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),e.exports=t(1247)},5796:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0});const r=t(4848),o=t(6540);n.default=({data:e,title:n,apiEndpoint:t,onUpdate:a})=>{const[i,s]=(0,o.useState)(null),[l,c]=(0,o.useState)(""),[d,A]=(0,o.useState)(""),[u,f]=(0,o.useState)(""),[p,h]=(0,o.useState)(!1),m=()=>{s(null),c("")},g=Object.keys(e).sort(),[b,E]=(0,o.useState)(new Set),x=(n,o)=>i===n?(0,r.jsxs)("div",{className:"edit-mode",children:[(0,r.jsx)("textarea",{className:"edit-input",value:l,onChange:e=>c(e.target.value),placeholder:"Enter JSON document",rows:8,style:{width:"100%",fontFamily:"monospace"}}),(0,r.jsxs)("div",{className:"edit-controls",children:[(0,r.jsx)("button",{className:"save-btn",onClick:()=>(async n=>{try{let r;try{r=JSON.parse(l)}catch(e){return void alert("Invalid JSON format. Please check your syntax.")}const o=await fetch(`${t}/${encodeURIComponent(n)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});if(!o.ok)throw new Error(`Failed to update KV value: ${o.statusText}`);await o.json();const i={...e,[n]:r};a(i),s(null),c("")}catch(e){console.error("Error updating KV value:",e),alert(`Failed to update value: ${e instanceof Error?e.message:String(e)}`)}})(n),children:"Save"}),(0,r.jsx)("button",{className:"cancel-btn",onClick:m,children:"Cancel"})]})]}):(0,r.jsx)("div",{className:"json-display",children:(0,r.jsx)("pre",{style:{margin:0,padding:"8px",background:"#3c3c3c",border:"1px solid #4a4a4a",borderRadius:"3px",color:"#cccccc",fontFamily:"monospace",fontSize:"11px",whiteSpace:"pre-wrap",wordWrap:"break-word",overflowX:"auto"},children:JSON.stringify(o,null,2)})});return(0,r.jsx)("div",{className:"kv-store-viewer compact-store",children:(0,r.jsxs)("div",{className:"store-sections",children:[g.map(n=>{const o=e[n],i=b.has(n);return(0,r.jsxs)("div",{className:"store-section",children:[(0,r.jsxs)("div",{className:"section-header",onClick:()=>(e=>{const n=new Set(b);n.has(e)?n.delete(e):n.add(e),E(n)})(n),style:{cursor:"pointer"},children:[(0,r.jsx)("span",{className:"expand-icon",children:i?"▼":"▶"}),(0,r.jsx)("span",{className:"section-name",children:n}),(0,r.jsxs)("div",{className:"section-actions",children:[(0,r.jsx)("button",{className:"edit-icon",onClick:e=>{e.stopPropagation(),((e,n)=>{s(e),c(JSON.stringify(n,null,2))})(n,o)},title:"Edit JSON",children:"✏️"}),(0,r.jsx)("button",{className:"delete-icon",onClick:r=>{r.stopPropagation(),(async n=>{if(confirm(`Are you sure you want to delete the key "${n}"?`))try{const r=await fetch(`${t}/${encodeURIComponent(n)}`,{method:"DELETE"});if(!r.ok)throw new Error(`Failed to delete KV value: ${r.statusText}`);const o={...e};delete o[n],a(o)}catch(e){console.error("Error deleting KV value:",e),alert(`Failed to delete value: ${e instanceof Error?e.message:String(e)}`)}})(n)},title:"Delete Entry",children:"🗑️"})]})]}),i&&(0,r.jsx)("div",{className:"json-content",children:x(n,o)})]},n)}),p&&(0,r.jsxs)("div",{className:"store-section add-form",children:[(0,r.jsxs)("div",{className:"section-header",children:[(0,r.jsx)("span",{className:"expand-icon"}),(0,r.jsx)("input",{type:"text",value:d,onChange:e=>A(e.target.value),placeholder:"Key name",className:"key-input"}),(0,r.jsxs)("div",{className:"section-actions",children:[(0,r.jsx)("button",{className:"save-btn",onClick:async()=>{if(d.trim())try{let n;try{n=JSON.parse(u)}catch(e){return void alert("Invalid JSON format. Please check your syntax.")}const r=await fetch(`${t}/${encodeURIComponent(d)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:n})});if(!r.ok)throw new Error(`Failed to add KV value: ${r.statusText}`);await r.json();const o={...e,[d]:n};a(o),A(""),f(""),h(!1)}catch(e){console.error("Error adding KV value:",e),alert(`Failed to add value: ${e instanceof Error?e.message:String(e)}`)}else alert("Please enter a key name")},children:"Save"}),(0,r.jsx)("button",{className:"cancel-btn",onClick:()=>{A(""),f(""),h(!1)},children:"Cancel"})]})]}),(0,r.jsx)("div",{className:"primitive-value",children:(0,r.jsx)("textarea",{value:u,onChange:e=>f(e.target.value),placeholder:'Enter JSON document (e.g., {"field1": "value1", "field2": "value2"})',className:"value-input",rows:4,style:{width:"100%",fontFamily:"monospace"}})})]}),(0,r.jsx)("div",{className:"add-entry-section",children:(0,r.jsx)("button",{className:"add-entry-btn",onClick:()=>h(!p),children:p?"Cancel":"+ Add Entry"})}),0===g.length&&!p&&(0,r.jsx)("div",{className:"empty-store",children:"No entries in this store"})]})})}},6141:function(e,n,t){var r,o=this&&this.__createBinding||(Object.create?function(e,n,t,r){void 0===r&&(r=t);var o=Object.getOwnPropertyDescriptor(n,t);o&&!("get"in o?!n.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return n[t]}}),Object.defineProperty(e,r,o)}:function(e,n,t,r){void 0===r&&(r=t),e[r]=n[t]}),a=this&&this.__setModuleDefault||(Object.create?function(e,n){Object.defineProperty(e,"default",{enumerable:!0,value:n})}:function(e,n){e.default=n}),i=this&&this.__importStar||(r=function(e){return r=Object.getOwnPropertyNames||function(e){var n=[];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(n[n.length]=t);return n},r(e)},function(e){if(e&&e.__esModule)return e;var n={};if(null!=e)for(var t=r(e),i=0;i<t.length;i++)"default"!==t[i]&&o(n,e,t[i]);return a(n,e),n});Object.defineProperty(n,"__esModule",{value:!0}),n.store=void 0,n.initializeStore=function(e){const t=function(e){try{const n=`${c}-${e}`,t=localStorage.getItem(n);if(null===t)return;const r=JSON.parse(t);if(r.appName!==e)return;return r}catch(e){return void console.warn("Failed to load form state from localStorage:",e)}}(e);t?n.store.dispatch((0,l.hydrateFromStorage)(t)):n.store.dispatch((0,l.setAppName)(e))};const s=t(9879),l=i(t(7370)),c="ocp-local-tool-state";n.store=(0,s.configureStore)({reducer:{formState:l.default}});const d=function(){let e=null;return(...n)=>{e&&clearTimeout(e),e=setTimeout(()=>(e=>{!function(e){try{if(!e.appName)return;const n=`${c}-${e.appName}`,t=JSON.stringify(e);localStorage.setItem(n,t)}catch(e){console.warn("Failed to save form state to localStorage:",e)}}(e)})(...n),500)}}();n.store.subscribe(()=>{const e=n.store.getState().formState;d(e)})},6221:(e,n,t)=>{var r=t(6540);function o(e){var n="https://react.dev/errors/"+e;if(1<arguments.length){n+="?args[]="+encodeURIComponent(arguments[1]);for(var t=2;t<arguments.length;t++)n+="&args[]="+encodeURIComponent(arguments[t])}return"Minified React error #"+e+"; visit "+n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function a(){}var i={d:{f:a,r:function(){throw Error(o(522))},D:a,C:a,L:a,m:a,X:a,S:a,M:a},p:0,findDOMNode:null},s=Symbol.for("react.portal"),l=r.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(e,n){return"font"===e?"":"string"==typeof n?"use-credentials"===n?n:"":void 0}n.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,n.createPortal=function(e,n){var t=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!n||1!==n.nodeType&&9!==n.nodeType&&11!==n.nodeType)throw Error(o(299));return function(e,n,t){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:s,key:null==r?null:""+r,children:e,containerInfo:n,implementation:t}}(e,n,null,t)},n.flushSync=function(e){var n=l.T,t=i.p;try{if(l.T=null,i.p=2,e)return e()}finally{l.T=n,i.p=t,i.d.f()}},n.preconnect=function(e,n){"string"==typeof e&&(n=n?"string"==typeof(n=n.crossOrigin)?"use-credentials"===n?n:"":void 0:null,i.d.C(e,n))},n.prefetchDNS=function(e){"string"==typeof e&&i.d.D(e)},n.preinit=function(e,n){if("string"==typeof e&&n&&"string"==typeof n.as){var t=n.as,r=c(t,n.crossOrigin),o="string"==typeof n.integrity?n.integrity:void 0,a="string"==typeof n.fetchPriority?n.fetchPriority:void 0;"style"===t?i.d.S(e,"string"==typeof n.precedence?n.precedence:void 0,{crossOrigin:r,integrity:o,fetchPriority:a}):"script"===t&&i.d.X(e,{crossOrigin:r,integrity:o,fetchPriority:a,nonce:"string"==typeof n.nonce?n.nonce:void 0})}},n.preinitModule=function(e,n){if("string"==typeof e)if("object"==typeof n&&null!==n){if(null==n.as||"script"===n.as){var t=c(n.as,n.crossOrigin);i.d.M(e,{crossOrigin:t,integrity:"string"==typeof n.integrity?n.integrity:void 0,nonce:"string"==typeof n.nonce?n.nonce:void 0})}}else null==n&&i.d.M(e)},n.preload=function(e,n){if("string"==typeof e&&"object"==typeof n&&null!==n&&"string"==typeof n.as){var t=n.as,r=c(t,n.crossOrigin);i.d.L(e,t,{crossOrigin:r,integrity:"string"==typeof n.integrity?n.integrity:void 0,nonce:"string"==typeof n.nonce?n.nonce:void 0,type:"string"==typeof n.type?n.type:void 0,fetchPriority:"string"==typeof n.fetchPriority?n.fetchPriority:void 0,referrerPolicy:"string"==typeof n.referrerPolicy?n.referrerPolicy:void 0,imageSrcSet:"string"==typeof n.imageSrcSet?n.imageSrcSet:void 0,imageSizes:"string"==typeof n.imageSizes?n.imageSizes:void 0,media:"string"==typeof n.media?n.media:void 0})}},n.preloadModule=function(e,n){if("string"==typeof e)if(n){var t=c(n.as,n.crossOrigin);i.d.m(e,{as:"string"==typeof n.as&&"script"!==n.as?n.as:void 0,crossOrigin:t,integrity:"string"==typeof n.integrity?n.integrity:void 0})}else i.d.m(e)},n.requestFormReset=function(e){i.d.r(e)},n.unstable_batchedUpdates=function(e,n){return e(n)},n.useFormState=function(e,n,t){return l.H.useFormState(e,n,t)},n.useFormStatus=function(){return l.H.useHostTransitionStatus()},n.version="19.2.0"},6314:e=>{e.exports=function(e){var n=[];return n.toString=function(){return this.map(function(n){var t="",r=void 0!==n[5];return n[4]&&(t+="@supports (".concat(n[4],") {")),n[2]&&(t+="@media ".concat(n[2]," {")),r&&(t+="@layer".concat(n[5].length>0?" ".concat(n[5]):""," {")),t+=e(n),r&&(t+="}"),n[2]&&(t+="}"),n[4]&&(t+="}"),t}).join("")},n.i=function(e,t,r,o,a){"string"==typeof e&&(e=[[null,e,void 0]]);var i={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(i[l]=!0)}for(var c=0;c<e.length;c++){var d=[].concat(e[c]);r&&i[d[0]]||(void 0!==a&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=a),t&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=t):d[2]=t),o&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=o):d[4]="".concat(o)),n.push(d))}},n}},6393:function(e,n,t){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(n,"__esModule",{value:!0});const o=t(4848),a=r(t(6540)),i=t(5338),s=t(2648),l=t(3729),c=t(6141),d=r(t(8449));t(9679);const A=document.getElementById("root");if(!A)throw new Error("Could not find root element");(0,i.createRoot)(A).render((0,o.jsx)(a.default.StrictMode,{children:(0,o.jsx)(l.Provider,{store:c.store,children:(0,o.jsx)(s.BrowserRouter,{children:(0,o.jsx)(d.default,{})})})}))},6540:(e,n,t)=>{e.exports=t(9869)},6734:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.DestinationsView=void 0;const r=t(4848),o=t(6540),a=t(2648),i=t(8623),s=t(8717),l=t(278);n.DestinationsView=({apiBaseUrl:e,appInstalled:n,buildStatus:t})=>{const c=(0,a.useLocation)(),[d,A]=(0,o.useState)([]),[u,f]=(0,o.useState)(!0),[p,h]=(0,o.useState)(null),m=c.pathname.split("/").filter(Boolean),g=m.length>1?m[1]:null,{navigateToEntity:b}=(0,l.useEntityNavigation)({basePath:"/destinations",entityName:"destination",entities:d,selectedEntityId:g});(0,o.useEffect)(()=>{n&&E()},[n]);const E=async()=>{try{f(!0);const n=await fetch(`${e}/destinations`),t=await n.json();A(t.destinations||[]),h(null)}catch(e){h(`Failed to load destinations: ${e.message}`)}finally{f(!1)}};return t?.buildInProgress||null===t?.lastBuildSuccess&&null===t?.lastBuildTimestamp?(0,r.jsx)("div",{className:"destinations-not-installed",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Building App..."}),(0,r.jsx)("p",{children:"Please wait while the app is being built."}),(0,r.jsx)("div",{className:"spinner"})]})}):!1===t?.lastBuildSuccess?(0,r.jsx)("div",{className:"destinations-not-installed",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Build Failed"}),(0,r.jsx)("p",{children:"The app failed to build. Please check the console for errors."}),t.lastBuildError&&(0,r.jsx)("pre",{className:"error-details",children:t.lastBuildError})]})}):n?u?(0,r.jsx)("div",{className:"destinations-view",children:(0,r.jsx)("div",{className:"placeholder-content",children:(0,r.jsx)("p",{children:"Loading destinations..."})})}):p?(0,r.jsx)("div",{className:"destinations-view",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Error"}),(0,r.jsx)("p",{children:p})]})}):0===d.length?(0,r.jsx)("div",{className:"destinations-view",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"No Destinations Found"}),(0,r.jsx)("p",{children:"No destinations defined in app.yml"})]})}):(0,r.jsx)("div",{className:"destinations-view",children:(0,r.jsxs)("div",{className:"destinations-layout",children:[(0,r.jsxs)("div",{className:"destinations-sidebar",children:[(0,r.jsx)("div",{className:"destinations-header",children:(0,r.jsx)("h4",{children:"Destinations"})}),(0,r.jsx)("div",{className:"destinations-list",children:d.map(e=>(0,r.jsxs)("div",{className:"destination-item "+(g===e.id?"active":""),onClick:()=>b(e.id),children:[(0,r.jsx)("div",{className:"destination-name",children:e.id}),(0,r.jsx)("div",{className:"destination-description",children:e.description})]},e.id))})]}),(0,r.jsx)("div",{className:"destinations-content",children:g?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"batch-section",children:(0,r.jsx)(s.DestinationBatchEditor,{destinationId:g,apiBaseUrl:e})}),(0,r.jsx)("div",{className:"schema-section",children:(0,r.jsx)(i.DestinationSchemaViewer,{destinationId:g,apiBaseUrl:e})})]}):(0,r.jsx)("div",{className:"no-destination-selected",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Select a Destination"}),(0,r.jsx)("p",{children:"Choose a destination from the sidebar to view its schema and test it"})]})})})]})}):(0,r.jsx)("div",{className:"destinations-not-installed",children:(0,r.jsxs)("div",{className:"placeholder-content",children:[(0,r.jsx)("h3",{children:"Destinations Not Available"}),(0,r.jsx)("p",{children:"Install your app first to configure destinations. Destinations will appear here after installation."})]})})}},7333:(e,n,t)=>{t.d(n,{A:()=>s});var r=t(1354),o=t.n(r),a=t(6314),i=t.n(a)()(o());i.push([e.id,".metadata-modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.5);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000;\n}\n\n.metadata-modal-content {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 8px;\n padding: 0;\n min-width: 400px;\n max-width: 500px;\n box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);\n}\n\n.metadata-modal-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 20px;\n border-bottom: 1px solid #3e3e42;\n background: #252526;\n}\n\n.metadata-modal-header h3 {\n margin: 0;\n font-size: 18px;\n font-weight: 600;\n color: #ffffff;\n}\n\n.metadata-modal-close {\n background: none;\n border: none;\n font-size: 28px;\n line-height: 1;\n color: #858585;\n cursor: pointer;\n padding: 0;\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: all 0.15s ease;\n}\n\n.metadata-modal-close:hover {\n color: #ffffff;\n}\n\n.metadata-modal-body {\n padding: 20px;\n background: #1e1e1e;\n}\n\n.metadata-modal-field {\n margin-bottom: 16px;\n}\n\n.metadata-modal-field:last-child {\n margin-bottom: 0;\n}\n\n.metadata-modal-field label {\n display: block;\n margin-bottom: 6px;\n font-weight: 500;\n font-size: 14px;\n color: #cccccc;\n}\n\n.metadata-modal-field input {\n width: 100%;\n padding: 8px 12px;\n border: 1px solid #4a4a4a;\n border-radius: 4px;\n font-size: 14px;\n background: #3c3c3c;\n color: #cccccc;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.metadata-modal-field input:focus {\n outline: none;\n border-color: #ffffff;\n box-shadow: none;\n}\n\n.metadata-modal-footer {\n padding: 12px 20px;\n border-top: 1px solid #3e3e42;\n text-align: center;\n background: #252526;\n}\n\n.auto-save-indicator {\n margin: 0;\n font-size: 12px;\n color: #858585;\n font-style: italic;\n}\n","",{version:3,sources:["webpack://./src/ui/components/MetadataModal.css"],names:[],mappings:"AAAA;EACE,eAAe;EACf,MAAM;EACN,OAAO;EACP,QAAQ;EACR,SAAS;EACT,oCAAoC;EACpC,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,aAAa;AACf;;AAEA;EACE,mBAAmB;EACnB,yBAAyB;EACzB,kBAAkB;EAClB,UAAU;EACV,gBAAgB;EAChB,gBAAgB;EAChB,wCAAwC;AAC1C;;AAEA;EACE,aAAa;EACb,8BAA8B;EAC9B,mBAAmB;EACnB,aAAa;EACb,gCAAgC;EAChC,mBAAmB;AACrB;;AAEA;EACE,SAAS;EACT,eAAe;EACf,gBAAgB;EAChB,cAAc;AAChB;;AAEA;EACE,gBAAgB;EAChB,YAAY;EACZ,eAAe;EACf,cAAc;EACd,cAAc;EACd,eAAe;EACf,UAAU;EACV,WAAW;EACX,YAAY;EACZ,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,0BAA0B;AAC5B;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,cAAc;EACd,kBAAkB;EAClB,gBAAgB;EAChB,eAAe;EACf,cAAc;AAChB;;AAEA;EACE,WAAW;EACX,iBAAiB;EACjB,yBAAyB;EACzB,kBAAkB;EAClB,eAAe;EACf,mBAAmB;EACnB,cAAc;EACd,yEAAyE;AAC3E;;AAEA;EACE,aAAa;EACb,qBAAqB;EACrB,gBAAgB;AAClB;;AAEA;EACE,kBAAkB;EAClB,6BAA6B;EAC7B,kBAAkB;EAClB,mBAAmB;AACrB;;AAEA;EACE,SAAS;EACT,eAAe;EACf,cAAc;EACd,kBAAkB;AACpB",sourcesContent:[".metadata-modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.5);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000;\n}\n\n.metadata-modal-content {\n background: #2d2d30;\n border: 1px solid #3e3e42;\n border-radius: 8px;\n padding: 0;\n min-width: 400px;\n max-width: 500px;\n box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);\n}\n\n.metadata-modal-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 20px;\n border-bottom: 1px solid #3e3e42;\n background: #252526;\n}\n\n.metadata-modal-header h3 {\n margin: 0;\n font-size: 18px;\n font-weight: 600;\n color: #ffffff;\n}\n\n.metadata-modal-close {\n background: none;\n border: none;\n font-size: 28px;\n line-height: 1;\n color: #858585;\n cursor: pointer;\n padding: 0;\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: all 0.15s ease;\n}\n\n.metadata-modal-close:hover {\n color: #ffffff;\n}\n\n.metadata-modal-body {\n padding: 20px;\n background: #1e1e1e;\n}\n\n.metadata-modal-field {\n margin-bottom: 16px;\n}\n\n.metadata-modal-field:last-child {\n margin-bottom: 0;\n}\n\n.metadata-modal-field label {\n display: block;\n margin-bottom: 6px;\n font-weight: 500;\n font-size: 14px;\n color: #cccccc;\n}\n\n.metadata-modal-field input {\n width: 100%;\n padding: 8px 12px;\n border: 1px solid #4a4a4a;\n border-radius: 4px;\n font-size: 14px;\n background: #3c3c3c;\n color: #cccccc;\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;\n}\n\n.metadata-modal-field input:focus {\n outline: none;\n border-color: #ffffff;\n box-shadow: none;\n}\n\n.metadata-modal-footer {\n padding: 12px 20px;\n border-top: 1px solid #3e3e42;\n text-align: center;\n background: #252526;\n}\n\n.auto-save-indicator {\n margin: 0;\n font-size: 12px;\n color: #858585;\n font-style: italic;\n}\n"],sourceRoot:""}]);const s=i},7370:(e,n,t)=>{var r;Object.defineProperty(n,"__esModule",{value:!0}),n.hydrateFromStorage=n.clearAllState=n.updateSourceState=n.updateDestinationState=n.updateJobState=n.updateFunctionState=n.setAppName=n.getDefaultSourceFormState=n.getDefaultDestinationFormState=n.getDefaultJobFormState=n.getDefaultFunctionFormState=void 0;const o=t(9879);n.getDefaultFunctionFormState=()=>({httpMethod:"POST",requestUrl:"",params:[{key:"",value:"",enabled:!0}],headers:[{key:"Content-Type",value:"application/json",enabled:!0}],requestBody:"{\n \n}"}),n.getDefaultJobFormState=()=>({params:"{}"}),n.getDefaultDestinationFormState=()=>({batchJson:"",attempt:"1",syncId:"mock-sync-id",syncName:"Mock Data Sync"}),n.getDefaultSourceFormState=()=>({webhookHttpMethod:"POST",webhookUrl:"",webhookBody:"{\n \n}",webhookParams:[{key:"",value:"",enabled:!0}],webhookHeaders:[{key:"Content-Type",value:"application/json",enabled:!0}]});const a=(0,o.createSlice)({name:"formState",initialState:{appName:"",functions:{},jobs:{},destinations:{},sources:{}},reducers:{setAppName(e,n){e.appName!==n.payload&&(e.appName=n.payload,e.functions={},e.jobs={},e.destinations={},e.sources={})},updateFunctionState(e,t){const{id:r,data:o}=t.payload,a=e.functions[r]||(0,n.getDefaultFunctionFormState)();e.functions[r]={...a,...o}},updateJobState(e,t){const{id:r,data:o}=t.payload,a=e.jobs[r]||(0,n.getDefaultJobFormState)();e.jobs[r]={...a,...o}},updateDestinationState(e,t){const{id:r,data:o}=t.payload,a=e.destinations[r]||(0,n.getDefaultDestinationFormState)();e.destinations[r]={...a,...o}},updateSourceState(e,t){const{id:r,data:o}=t.payload,a=e.sources[r]||(0,n.getDefaultSourceFormState)();e.sources[r]={...a,...o}},clearAllState(e){e.functions={},e.jobs={},e.destinations={},e.sources={}},hydrateFromStorage:(e,n)=>n.payload}});r=a.actions,n.setAppName=r.setAppName,n.updateFunctionState=r.updateFunctionState,n.updateJobState=r.updateJobState,n.updateDestinationState=r.updateDestinationState,n.updateSourceState=r.updateSourceState,n.clearAllState=r.clearAllState,n.hydrateFromStorage=r.hydrateFromStorage,n.default=a.reducer},7372:(e,n,t)=>{var r,o=Object.create,a=Object.defineProperty,i=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,l=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,d=(e,n,t,r)=>{if(n&&"object"==typeof n||"function"==typeof n)for(let o of s(n))!c.call(e,o)&&o!==t&&a(e,o,{get:()=>n[o],enumerable:!(r=i(n,o))||r.enumerable});return e},A={};((e,n)=>{for(var t in n)a(e,t,{get:n[t],enumerable:!0})})(A,{Provider:()=>se,ReactReduxContext:()=>te,batch:()=>be,connect:()=>ie,createDispatchHook:()=>ue,createSelectorHook:()=>me,createStoreHook:()=>de,shallowEqual:()=>U,useDispatch:()=>fe,useSelector:()=>ge,useStore:()=>Ae}),e.exports=(r=A,d(a({},"__esModule",{value:!0}),r));var u=((e,n,t)=>(t=null!=e?o(l(e)):{},d(e&&e.__esModule?t:a(t,"default",{value:e,enumerable:!0}),e)))(t(6540)),f=u.version.startsWith("19"),p=Symbol.for(f?"react.transitional.element":"react.element"),h=Symbol.for("react.portal"),m=Symbol.for("react.fragment"),g=Symbol.for("react.strict_mode"),b=Symbol.for("react.profiler"),E=Symbol.for("react.consumer"),x=Symbol.for("react.context"),C=Symbol.for("react.forward_ref"),B=Symbol.for("react.suspense"),y=Symbol.for("react.suspense_list"),v=Symbol.for("react.memo"),k=Symbol.for("react.lazy"),w=C,S=v;function j(e,n,t,r,{areStatesEqual:o,areOwnPropsEqual:a,areStatePropsEqual:i}){let s,l,c,d,A,u=!1;return function(f,p){return u?function(u,f){let p=!a(f,l),h=!o(u,s,f,l);return s=u,l=f,p&&h?(c=e(s,l),n.dependsOnOwnProps&&(d=n(r,l)),A=t(c,d,l),A):p?(e.dependsOnOwnProps&&(c=e(s,l)),n.dependsOnOwnProps&&(d=n(r,l)),A=t(c,d,l),A):h?function(){let n=e(s,l),r=!i(n,c);return c=n,r&&(A=t(c,d,l)),A}():A}(f,p):function(o,a){return s=o,l=a,c=e(s,l),d=n(r,l),A=t(c,d,l),u=!0,A}(f,p)}}function N(e){return function(n){let t=e(n);function r(){return t}return r.dependsOnOwnProps=!1,r}}function z(e){return e.dependsOnOwnProps?!!e.dependsOnOwnProps:1!==e.length}function P(e,n){return function(n,{displayName:t}){let r=function(e,n){return r.dependsOnOwnProps?r.mapToProps(e,n):r.mapToProps(e,void 0)};return r.dependsOnOwnProps=!0,r.mapToProps=function(n,t){r.mapToProps=e,r.dependsOnOwnProps=z(e);let o=r(n,t);return"function"==typeof o&&(r.mapToProps=o,r.dependsOnOwnProps=z(o),o=r(n,t)),o},r}}function _(e,n){return(t,r)=>{throw new Error(`Invalid value of type ${typeof e} for ${n} argument when connecting component ${r.wrappedComponentName}.`)}}function O(e,n,t){return{...t,...e,...n}}function T(e){e()}var M={notify(){},get:()=>[]};function R(e,n){let t,r=M,o=0,a=!1;function i(){c.onStateChange&&c.onStateChange()}function s(){o++,t||(t=n?n.addNestedSub(i):e.subscribe(i),r=function(){let e=null,n=null;return{clear(){e=null,n=null},notify(){T(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){let n=[],t=e;for(;t;)n.push(t),t=t.next;return n},subscribe(t){let r=!0,o=n={callback:t,next:null,prev:n};return o.prev?o.prev.next=o:e=o,function(){!r||null===e||(r=!1,o.next?o.next.prev=o.prev:n=o.prev,o.prev?o.prev.next=o.next:e=o.next)}}}}())}function l(){o--,t&&0===o&&(t(),t=void 0,r.clear(),r=M)}let c={addNestedSub:function(e){s();let n=r.subscribe(e),t=!1;return()=>{t||(t=!0,n(),l())}},notifyNestedSubs:function(){r.notify()},handleChangeWrapper:i,isSubscribed:function(){return a},trySubscribe:function(){a||(a=!0,s())},tryUnsubscribe:function(){a&&(a=!1,l())},getListeners:()=>r};return c}var D=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",L=typeof navigator<"u"&&"ReactNative"===navigator.product,F=D||L?u.useLayoutEffect:u.useEffect;function I(e,n){return e===n?0!==e||0!==n||1/e==1/n:e!=e&&n!=n}function U(e,n){if(I(e,n))return!0;if("object"!=typeof e||null===e||"object"!=typeof n||null===n)return!1;let t=Object.keys(e),r=Object.keys(n);if(t.length!==r.length)return!1;for(let r=0;r<t.length;r++)if(!Object.prototype.hasOwnProperty.call(n,t[r])||!I(e[t[r]],n[t[r]]))return!1;return!0}var q={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},Y={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},$={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},V={[w]:{$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},[S]:$};function W(e){return function(e){return function(e){if("object"==typeof e&&null!==e){let{$$typeof:n}=e;switch(n){case p:switch(e=e.type){case m:case b:case g:case B:case y:return e;default:switch(e=e&&e.$$typeof){case x:case C:case k:case v:case E:return e;default:return n}}case h:return n}}}(e)===v}(e)?$:V[e.$$typeof]||q}var Q=Object.defineProperty,H=Object.getOwnPropertyNames,J=Object.getOwnPropertySymbols,Z=Object.getOwnPropertyDescriptor,K=Object.getPrototypeOf,X=Object.prototype;function G(e,n){if("string"!=typeof n){if(X){let t=K(n);t&&t!==X&&G(e,t)}let t=H(n);J&&(t=t.concat(J(n)));let r=W(e),o=W(n);for(let a=0;a<t.length;++a){let i=t[a];if(!(Y[i]||o&&o[i]||r&&r[i])){let t=Z(n,i);try{Q(e,i,t)}catch{}}}}return e}var ee=Symbol.for("react-redux-context"),ne=typeof globalThis<"u"?globalThis:{},te=function(){if(!u.createContext)return{};let e=ne[ee]??=new Map,n=e.get(u.createContext);return n||(n=u.createContext(null),e.set(u.createContext,n)),n}(),re=[null,null];function oe(e,n,t,r,o,a){e.current=r,t.current=!1,o.current&&(o.current=null,a())}function ae(e,n){return e===n}var ie=function(e,n,t,{pure:r,areStatesEqual:o=ae,areOwnPropsEqual:a=U,areStatePropsEqual:i=U,areMergedPropsEqual:s=U,forwardRef:l=!1,context:c=te}={}){let d=c,A=function(e){return e?"function"==typeof e?P(e):_(e,"mapStateToProps"):N(()=>({}))}(e),f=function(e){return e&&"object"==typeof e?N(n=>function(e,n){let t={};for(let r in e){let o=e[r];"function"==typeof o&&(t[r]=(...e)=>n(o(...e)))}return t}(e,n)):e?"function"==typeof e?P(e):_(e,"mapDispatchToProps"):N(e=>({dispatch:e}))}(n),p=function(e){return e?"function"==typeof e?function(e){return function(n,{displayName:t,areMergedPropsEqual:r}){let o,a=!1;return function(n,t,i){let s=e(n,t,i);return a?r(s,o)||(o=s):(a=!0,o=s),o}}}(e):_(e,"mergeProps"):()=>O}(t),h=!!e;return e=>{let n=e.displayName||e.name||"Component",t=`Connect(${n})`,r={shouldHandleStateChanges:h,displayName:t,wrappedComponentName:n,WrappedComponent:e,initMapStateToProps:A,initMapDispatchToProps:f,initMergeProps:p,areStatesEqual:o,areStatePropsEqual:i,areOwnPropsEqual:a,areMergedPropsEqual:s};function c(n){let[t,o,a]=u.useMemo(()=>{let{reactReduxForwardedRef:e,...t}=n;return[n.context,e,t]},[n]),i=u.useMemo(()=>d,[t,d]),s=u.useContext(i),l=!!n.store&&!!n.store.getState&&!!n.store.dispatch,c=!!s&&!!s.store,A=l?n.store:s.store,f=c?s.getServerState:A.getState,p=u.useMemo(()=>function(e,{initMapStateToProps:n,initMapDispatchToProps:t,initMergeProps:r,...o}){return j(n(e,o),t(e,o),r(e,o),e,o)}(A.dispatch,r),[A]),[m,g]=u.useMemo(()=>{if(!h)return re;let e=R(A,l?void 0:s.subscription),n=e.notifyNestedSubs.bind(e);return[e,n]},[A,l,s]),b=u.useMemo(()=>l?s:{...s,subscription:m},[l,s,m]),E=u.useRef(void 0),x=u.useRef(a),C=u.useRef(void 0),B=u.useRef(!1),y=u.useRef(!1),v=u.useRef(void 0);F(()=>(y.current=!0,()=>{y.current=!1}),[]);let k,w=u.useMemo(()=>()=>C.current&&a===x.current?C.current:p(A.getState(),a),[A,a]),S=u.useMemo(()=>e=>m?function(e,n,t,r,o,a,i,s,l,c,d){if(!e)return()=>{};let A=!1,u=null,f=()=>{if(A||!s.current)return;let e,t,f=n.getState();try{e=r(f,o.current)}catch(e){t=e,u=e}t||(u=null),e===a.current?i.current||c():(a.current=e,l.current=e,i.current=!0,d())};return t.onStateChange=f,t.trySubscribe(),f(),()=>{if(A=!0,t.tryUnsubscribe(),t.onStateChange=null,u)throw u}}(h,A,m,p,x,E,B,y,C,g,e):()=>{},[m]);!function(e,n){F(()=>e(...n),void 0)}(oe,[x,E,B,a,C,g]);try{k=u.useSyncExternalStore(S,w,f?()=>p(f(),a):w)}catch(e){throw v.current&&(e.message+=`\nThe error may be correlated with this previous error:\n${v.current.stack}\n\n`),e}F(()=>{v.current=void 0,C.current=void 0,E.current=k});let N=u.useMemo(()=>u.createElement(e,{...k,ref:o}),[o,e,k]);return u.useMemo(()=>h?u.createElement(i.Provider,{value:b},N):N,[i,N,b])}let m=u.memo(c);if(m.WrappedComponent=e,m.displayName=c.displayName=t,l){let n=u.forwardRef(function(e,n){return u.createElement(m,{...e,reactReduxForwardedRef:n})});return n.displayName=t,n.WrappedComponent=e,G(n,e)}return G(m,e)}},se=function(e){let{children:n,context:t,serverState:r,store:o}=e,a=u.useMemo(()=>{let e=R(o);return{store:o,subscription:e,getServerState:r?()=>r:void 0}},[o,r]),i=u.useMemo(()=>o.getState(),[o]);return F(()=>{let{subscription:e}=a;return e.onStateChange=e.notifyNestedSubs,e.trySubscribe(),i!==o.getState()&&e.notifyNestedSubs(),()=>{e.tryUnsubscribe(),e.onStateChange=void 0}},[a,i]),u.createElement((t||te).Provider,{value:a},n)};function le(e=te){return function(){return u.useContext(e)}}var ce=le();function de(e=te){let n=e===te?ce:le(e),t=()=>{let{store:e}=n();return e};return Object.assign(t,{withTypes:()=>t}),t}var Ae=de();function ue(e=te){let n=e===te?Ae:de(e),t=()=>n().dispatch;return Object.assign(t,{withTypes:()=>t}),t}var fe=ue(),pe=t(8418),he=(e,n)=>e===n;function me(e=te){let n=e===te?ce:le(e),t=(e,t={})=>{let{equalityFn:r=he}="function"==typeof t?{equalityFn:t}:t,o=n(),{store:a,subscription:i,getServerState:s}=o,l=(u.useRef(!0),u.useCallback({[e.name]:n=>e(n)}[e.name],[e])),c=(0,pe.useSyncExternalStoreWithSelector)(i.addNestedSub,a.getState,s||a.getState,l,r);return u.useDebugValue(c),c};return Object.assign(t,{withTypes:()=>t}),t}var ge=me(),be=T},7580:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0});const r=t(4848);n.default=({isVisible:e,onClick:n,className:t=""})=>(0,r.jsx)("button",{className:`eye-icon ${e?"visible":"hidden"} ${t}`,onClick:n,title:e?"Hide value":"Show value",type:"button",children:e?"👁️":"👁️🗨️"})},7659:e=>{var n={};e.exports=function(e,t){var r=function(e){if(void 0===n[e]){var t=document.querySelector(e);if(window.HTMLIFrameElement&&t instanceof window.HTMLIFrameElement)try{t=t.contentDocument.head}catch(e){t=null}n[e]=t}return n[e]}(e);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(t)}},7825:e=>{e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var n=e.insertStyleElement(e);return{update:function(t){!function(e,n,t){var r="";t.supports&&(r+="@supports (".concat(t.supports,") {")),t.media&&(r+="@media ".concat(t.media," {"));var o=void 0!==t.layer;o&&(r+="@layer".concat(t.layer.length>0?" ".concat(t.layer):""," {")),r+=t.css,o&&(r+="}"),t.media&&(r+="}"),t.supports&&(r+="}");var a=t.sourceMap;a&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),n.styleTagTransform(r,e,n.options)}(n,e,t)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(n)}}}},8281:function(e,n,t){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(n,"__esModule",{value:!0});const o=t(4848),a=t(6540),i=r(t(1856)),s=r(t(9906)),l=r(t(5796)),c=r(t(2225));n.default=({initialTab:e="settings",hideTabs:n=!1,storeTimestamps:t,onRefreshStores:r})=>{const[d,A]=(0,a.useState)(e),[u,f]=(0,a.useState)(null),[p,h]=(0,a.useState)(!0),[m,g]=(0,a.useState)(null),[b,E]=(0,a.useState)(null),x=async()=>{try{h(!0),g(null);const e=await fetch("/devserver/api/stores");if(!e.ok)throw new Error(`HTTP ${e.status}: ${e.statusText}`);const n=await e.json();f(n)}catch(e){console.error("Error fetching store data:",e),g(e instanceof Error?e.message:String(e))}finally{h(!1)}};(0,a.useEffect)(()=>{x()},[]),(0,a.useEffect)(()=>{A(e)},[e]),(0,a.useEffect)(()=>{t&&b?(t.settings!==b.settings||t.secrets!==b.secrets||t.kv!==b.kv||t.sharedKv!==b.sharedKv||t.notifications!==b.notifications)&&(console.log("Store files changed, refreshing data..."),x(),E(t)):t&&(x(),E(t))},[t]);const C=e=>{u&&f({...u,...e})};return p?(0,o.jsx)("div",{className:"store-viewer loading",children:(0,o.jsx)("div",{className:"loading-message",children:"Loading store data..."})}):m?(0,o.jsx)("div",{className:"store-viewer error",children:(0,o.jsxs)("div",{className:"error-message",children:[(0,o.jsx)("span",{className:"error-icon",children:"⚠️"}),(0,o.jsxs)("span",{children:["Failed to load store data: ",m]}),(0,o.jsx)("button",{className:"retry-btn",onClick:x,children:"Retry"})]})}):u?(0,o.jsxs)("div",{className:"store-viewer",children:[!n&&(0,o.jsxs)("div",{className:"store-tabs",children:[(0,o.jsxs)("div",{className:"store-tabs-container",children:[(0,o.jsxs)("button",{className:"store-tab "+("settings"===d?"active":""),onClick:()=>A("settings"),children:[(0,o.jsx)("span",{className:"tab-icon",children:"⚙️"}),(0,o.jsx)("span",{className:"tab-label",children:"Settings"}),(0,o.jsxs)("span",{className:"tab-count",children:["(",Object.keys(u.settings).length,")"]})]}),(0,o.jsxs)("button",{className:"store-tab "+("secrets"===d?"active":""),onClick:()=>A("secrets"),children:[(0,o.jsx)("span",{className:"tab-icon",children:"🔐"}),(0,o.jsx)("span",{className:"tab-label",children:"Secrets"}),(0,o.jsxs)("span",{className:"tab-count",children:["(",Object.keys(u.secrets).length,")"]})]}),(0,o.jsxs)("button",{className:"store-tab "+("kv"===d?"active":""),onClick:()=>A("kv"),children:[(0,o.jsx)("span",{className:"tab-icon",children:"🗃️"}),(0,o.jsx)("span",{className:"tab-label",children:"KV Store"}),(0,o.jsxs)("span",{className:"tab-count",children:["(",Object.keys(u.kv).length,")"]})]}),(0,o.jsxs)("button",{className:"store-tab "+("sharedKv"===d?"active":""),onClick:()=>A("sharedKv"),children:[(0,o.jsx)("span",{className:"tab-icon",children:"🔗"}),(0,o.jsx)("span",{className:"tab-label",children:"Shared KV"}),(0,o.jsxs)("span",{className:"tab-count",children:["(",Object.keys(u.sharedKv).length,")"]})]}),(0,o.jsxs)("button",{className:"store-tab "+("notifications"===d?"active":""),onClick:()=>A("notifications"),children:[(0,o.jsx)("span",{className:"tab-icon",children:"🔔"}),(0,o.jsx)("span",{className:"tab-label",children:"Notifications"}),(0,o.jsxs)("span",{className:"tab-count",children:["(",u.notifications.length,")"]})]})]}),r&&(0,o.jsx)("button",{className:"refresh-btn",onClick:r,title:"Refresh store data",children:"🔄"})]}),(0,o.jsxs)("div",{className:"store-content",children:[n&&r&&"notifications"!==d&&(0,o.jsx)("div",{className:"store-header",children:(0,o.jsx)("button",{className:"refresh-btn",onClick:r,title:"Refresh store data",children:"🔄"})}),"settings"===d&&(0,o.jsx)(i.default,{settings:u.settings,onUpdate:e=>C({settings:e})}),"secrets"===d&&(0,o.jsx)(s.default,{secrets:u.secrets,onUpdate:e=>C({secrets:e})}),"kv"===d&&(0,o.jsx)(l.default,{data:u.kv,title:"KV Store",apiEndpoint:"/devserver/api/stores/kv",onUpdate:e=>C({kv:e})}),"sharedKv"===d&&(0,o.jsx)(l.default,{data:u.sharedKv,title:"Shared KV Store",apiEndpoint:"/devserver/api/stores/shared-kv",onUpdate:e=>C({sharedKv:e})}),"notifications"===d&&(0,o.jsx)(c.default,{notifications:u.notifications,onRefresh:r})]})]}):(0,o.jsx)("div",{className:"store-viewer no-data",children:(0,o.jsx)("div",{className:"no-data-message",children:"No store data available"})})}},8418:(e,n,t)=>{e.exports=t(5160)},8449:function(e,n,t){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(n,"__esModule",{value:!0});const o=t(4848),a=t(6540),i=t(2648),s=r(t(5044)),l=r(t(2497)),c=r(t(4217)),d=t(6734),A=t(4029),u=t(3717),f=t(6141),p=/^\[iFrameSizer]app_directory_frame_directory:\d+:\d+:[a-zA-Z]+$/;n.default=()=>{const e=(0,i.useNavigate)(),n=(0,i.useLocation)(),{getParam:t}=(0,u.useQueryParams)(),r=n.pathname.split("/")[1]||"settings",h=n=>{const r=t("console");e(r?`${n}?console=${r}`:n,{replace:!1})},[m,g]=(0,a.useState)(!0),[b,E]=(0,a.useState)(null),[x,C]=(0,a.useState)([]),[B,y]=(0,a.useState)(null),[v,k]=(0,a.useState)(null),[w,S]=(0,a.useState)(!1),[j,N]=(0,a.useState)(0),[z,P]=(0,a.useState)({showZaiusAdminSections:!1}),[_,O]=(0,a.useState)(!0);(0,a.useEffect)(()=>{b?.name&&(0,f.initializeStore)(b.name)},[b?.name]);const T=(0,a.useRef)({logs:null,status:null}),M=(0,a.useRef)(null);(0,a.useEffect)(()=>{(async()=>{try{const e=await fetch("/devserver/api/config");if(e.ok){const n=await e.json();P(n)}}catch(e){console.error("Error fetching config:",e)}})(),R(),D(),L(),F(),I();const e=new EventSource("/devserver/api/events");return e.onmessage=e=>{const n=JSON.parse(e.data);switch(n.type){case"buildStart":y(e=>e?{...e,buildInProgress:!0}:{buildInProgress:!0,lastBuildSuccess:null,lastBuildTimestamp:null,lastBuildError:null});break;case"buildSuccess":y({buildInProgress:!1,lastBuildSuccess:!0,lastBuildTimestamp:n.timestamp,lastBuildError:null}),L(),D();break;case"buildError":y({buildInProgress:!1,lastBuildSuccess:!1,lastBuildTimestamp:n.timestamp,lastBuildError:n.error}),L();break;case"status":y({buildInProgress:n.buildInProgress,lastBuildSuccess:n.lastBuildSuccess,lastBuildTimestamp:n.lastBuildTimestamp,lastBuildError:n.lastBuildError})}},e.onerror=()=>{g(!1),T.current.status||(T.current.status=setInterval(D,3e3))},e.onopen=()=>{g(!0),T.current.status&&(clearInterval(T.current.status),T.current.status=null)},T.current.logs=setInterval(L,2e3),()=>{e.close(),T.current.logs&&clearInterval(T.current.logs),T.current.status&&clearInterval(T.current.status)}},[]),(0,a.useEffect)(()=>{const e=e=>{if(e.origin===window.location.origin){console.log("Received message from iframe:",e.data),console.log("Message origin:",e.origin),console.log("Full event:",e);const n=(e=>{const n=e.startsWith("[iFrameSizer]app_directory_frame_directory"),t=e.indexOf("message:");if(n&&-1!==t)return JSON.parse(e.substring(t+8));if(p.test(e)){const n=e.split(":");return{method:"resizeIframe",params:{height:n[1],width:n[2]}}}return{method:"unknownMessageFromIframeResizer"}})(e.data);if("getTracker"===n.method){const n="[iFrameSizer]message:"+JSON.stringify({method:"setTracker",params:"local-development-tracker-id"});M.current?.contentWindow?.postMessage(n,e.origin),console.log("getTracker sent")}if("event"===n.method){const{type:e,action:t}=n.params||{};if("app"===e)switch(t){case"install_success":console.log("Installation successful, updating app state"),S(!0),g(!0);break;case"uninstall_success":console.log("Uninstallation successful, updating app state"),S(!1),g(!1);break;case"install_failure":console.error(`Installation operation failed: ${t}`),S(!1),g(!1);break;case"uninstall_failure":console.error(`Uninstallation operation failed: ${t}`),S(!0),g(!0)}}}};return window.addEventListener("message",e),()=>{window.removeEventListener("message",e)}},[]);const R=async()=>{try{const e=await fetch("/devserver/api/app");if(e.ok){const n=await e.json();E(n),g(!0)}else g(!1)}catch(e){console.error("Error fetching app info:",e),g(!1)}},D=async()=>{try{const e=await fetch("/devserver/api/status");if(e.ok){const n=await e.json();y(n.build),k(n.stores.lastModified),g(!0),I()}else g(!1)}catch(e){console.error("Error fetching status:",e),g(!1)}},L=async()=>{try{const e=await fetch("/devserver/api/console/logs?limit=50");if(e.ok){const n=await e.json();n.logs&&n.logs.length>0?C(n.logs):C([]),g(!0)}else g(!1)}catch(e){console.error("Error fetching console logs:",e),g(!1)}},F=async()=>{try{const e=await fetch("/v1/accounts/local-tracker/installs");if(e.ok){const n=await e.json();S(n.installations&&n.installations.length>0),g(!0)}else g(!1)}catch(e){console.error("Error fetching installation status:",e),g(!1)}},I=async()=>{try{const e=await fetch("/devserver/api/stores");if(e.ok){const n=await e.json();n.notifications&&Array.isArray(n.notifications)?N(n.notifications.length):N(0),g(!0)}else g(!1)}catch(e){console.error("Error fetching notification count:",e),g(!1)}};return(0,o.jsxs)("div",{className:"app postman-layout",children:[_&&(0,o.jsxs)("div",{className:"beta-banner",children:[(0,o.jsx)("span",{className:"beta-banner-icon",children:"⚠️"}),(0,o.jsxs)("span",{className:"beta-banner-text",children:[(0,o.jsx)("strong",{children:"BETA:"})," This tool is in beta - we welcome your"," ",(0,o.jsx)("a",{href:"https://github.com/optimizely/ocp-developer-feedback/issues/new/choose",target:"_blank",rel:"noopener noreferrer",className:"beta-banner-link",children:"feedback"})]}),(0,o.jsx)("button",{className:"beta-banner-close",onClick:()=>O(!1),"aria-label":"Close banner",children:"✕"})]}),(0,o.jsxs)("header",{className:"top-nav",children:[(0,o.jsxs)("div",{className:"nav-left",children:[(0,o.jsx)("div",{className:"app-title",children:(0,o.jsx)("h1",{children:"OCP Local Environment"})}),b&&(0,o.jsxs)("div",{className:"app-info-nav",children:[(0,o.jsx)("span",{className:"app-name",children:b.displayName||b.name}),(0,o.jsxs)("span",{className:"app-version",children:["v",b.version]})]})]}),(0,o.jsxs)("div",{className:"nav-right",children:[(0,o.jsxs)("button",{className:"rebuild-btn "+(B?.buildInProgress?"building":!0===B?.lastBuildSuccess?"success":!1===B?.lastBuildSuccess?"error":""),onClick:async()=>{try{(await fetch("/devserver/api/build",{method:"POST",headers:{"Content-Type":"application/json"}})).ok?(D(),L()):console.error("Failed to trigger build")}catch(e){console.error("Error triggering build:",e)}},disabled:B?.buildInProgress,children:[(0,o.jsx)("span",{className:"rebuild-status-dot"}),B?.buildInProgress?"Building...":"Rebuild"]}),(0,o.jsx)("div",{className:"nav-separator-vertical"}),(0,o.jsx)("a",{href:"https://github.com/optimizely/ocp-developer-feedback/issues/new/choose",target:"_blank",rel:"noopener noreferrer",className:"feedback-btn",title:"Provide Feedback",children:"💬 Feedback"}),(0,o.jsxs)("a",{href:"https://docs.developers.optimizely.com/optimizely-connect-platform/docs/local-testing-tool-ocp2",target:"_blank",rel:"noopener noreferrer",className:"docs-btn",title:"Documentation",children:[(0,o.jsx)("span",{className:"docs-icon",children:"📖"})," Docs"]})]})]}),(0,o.jsxs)("div",{className:"main-layout",children:[(0,o.jsx)("aside",{className:"sidebar",children:(0,o.jsxs)("nav",{className:"sidebar-nav",children:[(0,o.jsxs)("button",{className:"nav-item "+("settings"===r?"active":""),onClick:()=>h("/settings"),children:[(0,o.jsx)("span",{className:"nav-icon",children:"⚙️"}),(0,o.jsx)("span",{className:"nav-label",children:"App Settings"})]}),b&&b.functions&&b.functions.length>0&&(0,o.jsxs)("button",{className:"nav-item "+("functions"===r?"active":""),onClick:()=>h("/functions"),children:[(0,o.jsx)("span",{className:"nav-icon",children:"⚡"}),(0,o.jsx)("span",{className:"nav-label",children:"Functions"})]}),b&&b.jobs&&b.jobs.length>0&&(0,o.jsxs)("button",{className:"nav-item "+("jobs"===r?"active":""),onClick:()=>h("/jobs"),children:[(0,o.jsx)("span",{className:"nav-icon",children:"📋"}),(0,o.jsx)("span",{className:"nav-label",children:"Jobs"})]}),b&&b.destinations&&b.destinations.length>0&&(0,o.jsxs)("button",{className:"nav-item "+("destinations"===r?"active":""),onClick:()=>h("/destinations"),children:[(0,o.jsx)("span",{className:"nav-icon",children:"📤"}),(0,o.jsx)("span",{className:"nav-label",children:"Destinations"})]}),b&&b.sources&&b.sources.length>0&&(0,o.jsxs)("button",{className:"nav-item "+("sources"===r?"active":""),onClick:()=>h("/sources"),children:[(0,o.jsx)("span",{className:"nav-icon",children:"📥"}),(0,o.jsx)("span",{className:"nav-label",children:"Sources"})]})]})}),(0,o.jsxs)("main",{className:"content-area",children:[(0,o.jsxs)("div",{className:"content-header",children:[(0,o.jsxs)("h2",{children:["settings"===r&&"App Settings","functions"===r&&"Functions","jobs"===r&&"Jobs","destinations"===r&&"Destinations","sources"===r&&"Sources"]}),b&&!b.isValid&&(0,o.jsxs)("div",{className:"validation-errors-banner",children:[(0,o.jsx)("span",{className:"error-icon",children:"⚠️"}),(0,o.jsx)("span",{children:"App has validation errors"})]})]}),(0,o.jsx)("div",{className:"content-body",children:(0,o.jsxs)(i.Routes,{children:[(0,o.jsx)(i.Route,{path:"/",element:(0,o.jsx)(i.Navigate,{to:"/settings",replace:!0})}),(0,o.jsx)(i.Route,{path:"/settings",element:(0,o.jsxs)("div",{className:"settings-view",children:[b&&!b.isValid&&b.errors&&b.errors.length>0&&(0,o.jsxs)("div",{className:"validation-errors",children:[(0,o.jsx)("h4",{children:"Validation Errors:"}),(0,o.jsx)("ul",{children:b.errors.map((e,n)=>(0,o.jsx)("li",{children:e},n))})]}),B?.buildInProgress||null===B?.lastBuildSuccess&&null===B?.lastBuildTimestamp?(0,o.jsx)("div",{className:"settings-loading-container",children:(0,o.jsxs)("div",{className:"placeholder-content",children:[(0,o.jsx)("h3",{children:"Building App..."}),(0,o.jsx)("p",{children:"Please wait while the app is being built."}),(0,o.jsx)("div",{className:"spinner"})]})}):!1===B?.lastBuildSuccess?(0,o.jsx)("div",{className:"settings-loading-container",children:(0,o.jsxs)("div",{className:"placeholder-content",children:[(0,o.jsx)("h3",{children:"Build Failed"}),(0,o.jsx)("p",{children:"The app failed to build. Please check the console for errors."}),B.lastBuildError&&(0,o.jsx)("pre",{className:"error-details",children:B.lastBuildError})]})}):(0,o.jsx)("div",{className:"settings-iframe-container",children:(0,o.jsx)("iframe",{id:"app_directory_frame",style:{width:"100%",height:"100%",border:"none",overflow:"hidden"},ref:e=>{M.current=e},src:`${window.location.origin}/app/${b?.name||"unknown"}`,onLoad:()=>{try{const e=M.current;e&&e.contentWindow&&setTimeout(()=>{if(M.current&&M.current.contentWindow){M.current.contentWindow.postMessage('[iFrameSizer]message:{"method":"ready"}',window.location.origin),M.current.contentWindow.postMessage("[iFrameSizer]app_directory_frame_directory:8:false:false:32:true:true:null:bodyOffset:null:null:0:false:parent:scroll:true",window.location.origin);const e=`[iFrameSizer]message:${JSON.stringify({method:"userFeatures",params:{features:{feature_zaius_only_access:z.showZaiusAdminSections}}})}`;M.current.contentWindow.postMessage(e,"http://localhost:3000"),console.log("Sent ready event to iframe after 2 second delay")}},2e3)}catch(e){console.error("Error sending ready event to iframe:",e)}}})})]})}),(0,o.jsx)(i.Route,{path:"/functions/*",element:b?b.functions&&b.functions.length>0?(0,o.jsx)(s.default,{appInstalled:w,buildStatus:B}):(0,o.jsx)(i.Navigate,{to:"/settings",replace:!0}):(0,o.jsx)("div",{className:"functions-view",children:(0,o.jsx)("div",{className:"placeholder-content",children:(0,o.jsx)("p",{children:"Loading..."})})})}),(0,o.jsx)(i.Route,{path:"/jobs/*",element:b?b.jobs&&b.jobs.length>0?(0,o.jsx)(l.default,{appInstalled:w,buildStatus:B}):(0,o.jsx)(i.Navigate,{to:"/settings",replace:!0}):(0,o.jsx)("div",{className:"jobs-view",children:(0,o.jsx)("div",{className:"placeholder-content",children:(0,o.jsx)("p",{children:"Loading..."})})})}),(0,o.jsx)(i.Route,{path:"/destinations/*",element:b?b.destinations&&b.destinations.length>0?(0,o.jsx)(d.DestinationsView,{apiBaseUrl:"/devserver/api",appInstalled:w,buildStatus:B}):(0,o.jsx)(i.Navigate,{to:"/settings",replace:!0}):(0,o.jsx)("div",{className:"destinations-view",children:(0,o.jsx)("div",{className:"placeholder-content",children:(0,o.jsx)("p",{children:"Loading..."})})})}),(0,o.jsx)(i.Route,{path:"/sources/*",element:b?b.sources&&b.sources.length>0?(0,o.jsx)(A.SourcesView,{apiBaseUrl:"/devserver/api",appInstalled:w,buildStatus:B}):(0,o.jsx)(i.Navigate,{to:"/settings",replace:!0}):(0,o.jsx)("div",{className:"sources-view",children:(0,o.jsx)("div",{className:"placeholder-content",children:(0,o.jsx)("p",{children:"Loading..."})})})}),(0,o.jsx)(i.Route,{path:"*",element:(0,o.jsxs)("div",{className:"not-found-view",style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100%",gap:"1rem"},children:[(0,o.jsx)("h2",{children:"404 - Page Not Found"}),(0,o.jsx)("p",{children:"The page you're looking for doesn't exist."}),(0,o.jsx)("button",{onClick:()=>h("/settings"),style:{padding:"0.5rem 1rem",fontSize:"1rem",cursor:"pointer",backgroundColor:"#007bff",color:"white",border:"none",borderRadius:"4px"},children:"Go to Settings"})]})})]})})]})]}),(0,o.jsx)(c.default,{logs:x,onClearLogs:async()=>{try{await fetch("/devserver/api/console/logs",{method:"DELETE"}),L()}catch(e){console.error("Error clearing logs:",e)}},storeTimestamps:v,onRefreshStores:D,notificationCount:j})]})}},8623:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.DestinationSchemaViewer=void 0;const r=t(4848),o=t(6540);n.DestinationSchemaViewer=({destinationId:e,apiBaseUrl:n})=>{const[t,a]=(0,o.useState)(null),[i,s]=(0,o.useState)(!0),[l,c]=(0,o.useState)(null),[d,A]=(0,o.useState)(new Set);(0,o.useEffect)(()=>{u()},[e]);const u=async()=>{try{s(!0),c(null);const t=await fetch(`${n}/destinations/${e}/schema`);if(!t.ok){const e=await t.json();throw new Error(e.error||"Failed to load schema")}const r=await t.json();a(r.schema)}catch(e){c(e.message),console.error("Failed to load schema:",e)}finally{s(!1)}},f=e=>(0,r.jsxs)("tr",{className:e.primary?"primary-field":"",children:[(0,r.jsx)("td",{className:"field-name",children:e.name}),(0,r.jsx)("td",{className:"field-display-name",children:e.display_name}),(0,r.jsxs)("td",{className:"field-type",children:[(0,r.jsx)("span",{className:`type-badge type-${e.type.replace(/[^a-z]/gi,"")}`,children:e.type}),e.primary&&(0,r.jsx)("span",{className:"primary-badge",children:"PRIMARY"})]}),(0,r.jsx)("td",{className:"field-description",children:e.description})]},e.name);return i?(0,r.jsx)("div",{className:"schema-viewer",children:"Loading schema..."}):l?(0,r.jsxs)("div",{className:"schema-viewer error",children:[(0,r.jsx)("h3",{children:"Schema Error"}),(0,r.jsx)("p",{children:l})]}):t?(0,r.jsxs)("div",{className:"schema-viewer",children:[(0,r.jsxs)("div",{className:"schema-header",children:[(0,r.jsx)("h4",{children:t.display_name}),(0,r.jsx)("p",{className:"schema-description",children:t.description})]}),(0,r.jsxs)("div",{className:"schema-fields",children:[(0,r.jsx)("h4",{children:"Fields"}),(0,r.jsxs)("table",{className:"fields-table",children:[(0,r.jsx)("thead",{children:(0,r.jsxs)("tr",{children:[(0,r.jsx)("th",{children:"Name"}),(0,r.jsx)("th",{children:"Display Name"}),(0,r.jsx)("th",{children:"Type"}),(0,r.jsx)("th",{children:"Description"})]})}),(0,r.jsx)("tbody",{children:t.fields.map(f)})]})]}),t.custom_types&&t.custom_types.length>0&&(0,r.jsxs)("div",{className:"schema-custom-types",children:[(0,r.jsx)("h4",{children:"Custom Types"}),t.custom_types.map(e=>(0,r.jsxs)("div",{className:"custom-type",children:[(0,r.jsxs)("div",{className:"custom-type-header",onClick:()=>{return n=e.name,void A(e=>{const t=new Set(e);return t.has(n)?t.delete(n):t.add(n),t});var n},children:[(0,r.jsx)("span",{className:"expand-icon",children:d.has(e.name)?"▼":"▶"}),(0,r.jsx)("span",{className:"custom-type-name",children:e.display_name}),(0,r.jsx)("span",{className:"custom-type-description",children:e.description})]}),d.has(e.name)&&(0,r.jsxs)("table",{className:"fields-table",children:[(0,r.jsx)("thead",{children:(0,r.jsxs)("tr",{children:[(0,r.jsx)("th",{children:"Name"}),(0,r.jsx)("th",{children:"Display Name"}),(0,r.jsx)("th",{children:"Type"}),(0,r.jsx)("th",{children:"Description"})]})}),(0,r.jsx)("tbody",{children:e.fields.map(f)})]})]},e.name))]})]}):(0,r.jsx)("div",{className:"schema-viewer",children:"No schema available"})}},8717:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.DestinationBatchEditor=void 0;const r=t(4848),o=t(6540),a=t(846),i=t(9573),s=t(7370);n.DestinationBatchEditor=({destinationId:e,apiBaseUrl:n})=>{const t=(0,i.useAppDispatch)(),l=(0,i.useAppSelector)(n=>n.formState.destinations[e]||(0,s.getDefaultDestinationFormState)()),{batchJson:c,attempt:d,syncId:A,syncName:u}=l,f=n=>{t((0,s.updateDestinationState)({id:e,data:n}))},[p,h]=(0,o.useState)(null),[m,g]=(0,o.useState)(null),[b,E]=(0,o.useState)(!1),[x,C]=(0,o.useState)(null),[B,y]=(0,o.useState)(!1);(0,o.useEffect)(()=>{if(p){const e=setTimeout(()=>{h(null)},1e4);return()=>clearTimeout(e)}},[p]),(0,o.useEffect)(()=>{if(m){const e=setTimeout(()=>{g(null)},1e4);return()=>clearTimeout(e)}},[m]),(0,o.useEffect)(()=>{if(x){const e=setTimeout(()=>{C(null)},1e4);return()=>clearTimeout(e)}},[x]);const v=()=>{if(!c.trim())return!1;try{return JSON.parse(c),!0}catch{return!1}};return(0,r.jsxs)("div",{className:"batch-editor",children:[(0,r.jsxs)("div",{className:"all-buttons-section",children:[(0,r.jsx)("button",{className:"generate-button",onClick:async()=>{try{E(!0),C(null);const t=await fetch(`${n}/destinations/${e}/generate-mock`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({itemCount:1})});if(!t.ok){const e=await t.json();throw new Error(e.error||"Failed to generate mock batch")}const r=await t.json();f({batchJson:JSON.stringify(r.batch.items,null,2),attempt:r.batch.attempt.toString(),syncId:r.batch.sync.id,syncName:r.batch.sync.name})}catch(e){C(`Failed to generate mock batch: ${e.message}`),console.error(e)}finally{E(!1)}},disabled:b,children:"Generate Sample Batch"}),(0,r.jsx)("button",{className:"deliver-button primary",onClick:async()=>{try{let t;E(!0),C(null),g(null);try{t=JSON.parse(c)}catch(e){throw new Error("Invalid JSON in batch editor")}const r={items:Array.isArray(t)?t:[t],attempt:parseInt(d,10),sync:{id:A,name:u}},o=await fetch(`${n}/destinations/${e}/deliver`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({batch:r})});if(!o.ok){const e=await o.json();throw new Error(e.error||"Failed to deliver batch")}const a=await o.json();g(a.result)}catch(e){C(`Failed to deliver batch: ${e.message}`),console.error(e)}finally{E(!1)}},disabled:b||!v(),children:"Deliver Batch"}),(0,r.jsx)("div",{className:"button-separator"}),(0,r.jsx)("button",{className:"ready-button secondary",onClick:async()=>{try{E(!0),C(null),h(null);const t=await fetch(`${n}/destinations/${e}/ready`,{method:"POST",headers:{"Content-Type":"application/json"}});if(!t.ok){const e=await t.json();throw new Error(e.error||"Failed to test ready")}const r=await t.json();h(r.result)}catch(e){C(`Failed to test ready: ${e.message}`),console.error(e)}finally{E(!1)}},disabled:b,children:"Ready"}),(0,r.jsx)("button",{className:"settings-icon-button",onClick:()=>y(!0),title:"Batch Metadata Settings",children:"⚙️"})]}),(0,r.jsxs)("div",{className:"batch-json-editor",children:[(0,r.jsx)("label",{children:"Batch Items (JSON):"}),(0,r.jsx)("textarea",{value:c,onChange:e=>f({batchJson:e.target.value}),placeholder:"Click 'Generate Sample Batch' or paste JSON array",className:v()?"valid":c?"invalid":""}),c&&!v()&&(0,r.jsx)("div",{className:"json-error",children:"Invalid JSON syntax"})]}),x&&(0,r.jsx)("div",{className:"toast-notification toast-error",children:(0,r.jsxs)("div",{className:"toast-content",children:[(0,r.jsx)("strong",{children:"Error"}),(0,r.jsx)("div",{className:"toast-message",children:x})]})}),p&&(0,r.jsx)("div",{className:"toast-notification "+(p.ready?"toast-success":"toast-warning"),children:(0,r.jsxs)("div",{className:"toast-content",children:[(0,r.jsx)("strong",{children:"Ready Check"}),(0,r.jsxs)("div",{className:"toast-message",children:[p.ready?"Destination is ready":"Destination not ready",p.message&&(0,r.jsx)("div",{children:p.message})]})]})}),m&&(0,r.jsx)("div",{className:"toast-notification "+(m.success?"toast-success":"toast-error"),children:(0,r.jsxs)("div",{className:"toast-content",children:[(0,r.jsxs)("strong",{children:["Delivery ",m.success?"Successful":"Failed"]}),(0,r.jsxs)("div",{className:"toast-message",children:[m.failureReason&&(0,r.jsx)("div",{children:m.failureReason}),void 0!==m.retryable&&(0,r.jsxs)("div",{className:"toast-detail",children:["Retryable: ",m.retryable?"Yes":"No"]})]})]})}),(0,r.jsx)(a.MetadataModal,{isOpen:B,onClose:()=>y(!1),attempt:d,syncId:A,syncName:u,onAttemptChange:e=>f({attempt:e}),onSyncIdChange:e=>f({syncId:e}),onSyncNameChange:e=>f({syncName:e})})]})}},9410:(e,n,t)=>{t.r(n),t.d(n,{default:()=>g});var r=t(5072),o=t.n(r),a=t(7825),i=t.n(a),s=t(7659),l=t.n(s),c=t(5056),d=t.n(c),A=t(540),u=t.n(A),f=t(1113),p=t.n(f),h=t(7333),m={};m.styleTagTransform=p(),m.setAttributes=d(),m.insert=l().bind(null,"head"),m.domAPI=i(),m.insertStyleElement=u(),o()(h.A,m);const g=h.A&&h.A.locals?h.A.locals:void 0},9573:(e,n,t)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.useAppSelector=n.useAppDispatch=void 0;const r=t(3729);n.useAppDispatch=()=>(0,r.useDispatch)(),n.useAppSelector=r.useSelector},9679:(e,n,t)=>{t.r(n),t.d(n,{default:()=>g});var r=t(5072),o=t.n(r),a=t(7825),i=t.n(a),s=t(7659),l=t.n(s),c=t(5056),d=t.n(c),A=t(540),u=t.n(A),f=t(1113),p=t.n(f),h=t(4628),m={};m.styleTagTransform=p(),m.setAttributes=d(),m.insert=l().bind(null,"head"),m.domAPI=i(),m.insertStyleElement=u(),o()(h.A,m);const g=h.A&&h.A.locals?h.A.locals:void 0},9698:(e,n)=>{var t=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function o(e,n,r){var o=null;if(void 0!==r&&(o=""+r),void 0!==n.key&&(o=""+n.key),"key"in n)for(var a in r={},n)"key"!==a&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:o,ref:void 0!==n?n:null,props:r}}n.Fragment=r,n.jsx=o,n.jsxs=o},9869:(e,n)=>{var t=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),s=Symbol.for("react.consumer"),l=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),A=Symbol.for("react.memo"),u=Symbol.for("react.lazy"),f=Symbol.for("react.activity"),p=Symbol.iterator,h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},m=Object.assign,g={};function b(e,n,t){this.props=e,this.context=n,this.refs=g,this.updater=t||h}function E(){}function x(e,n,t){this.props=e,this.context=n,this.refs=g,this.updater=t||h}b.prototype.isReactComponent={},b.prototype.setState=function(e,n){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,n,"setState")},b.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},E.prototype=b.prototype;var C=x.prototype=new E;C.constructor=x,m(C,b.prototype),C.isPureReactComponent=!0;var B=Array.isArray;function y(){}var v={H:null,A:null,T:null,S:null},k=Object.prototype.hasOwnProperty;function w(e,n,r){var o=r.ref;return{$$typeof:t,type:e,key:n,ref:void 0!==o?o:null,props:r}}function S(e){return"object"==typeof e&&null!==e&&e.$$typeof===t}var j=/\/+/g;function N(e,n){return"object"==typeof e&&null!==e&&null!=e.key?(t=""+e.key,r={"=":"=0",":":"=2"},"$"+t.replace(/[=:]/g,function(e){return r[e]})):n.toString(36);var t,r}function z(e,n,o,a,i){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var l,c,d=!1;if(null===e)d=!0;else switch(s){case"bigint":case"string":case"number":d=!0;break;case"object":switch(e.$$typeof){case t:case r:d=!0;break;case u:return z((d=e._init)(e._payload),n,o,a,i)}}if(d)return i=i(e),d=""===a?"."+N(e,0):a,B(i)?(o="",null!=d&&(o=d.replace(j,"$&/")+"/"),z(i,n,o,"",function(e){return e})):null!=i&&(S(i)&&(l=i,c=o+(null==i.key||e&&e.key===i.key?"":(""+i.key).replace(j,"$&/")+"/")+d,i=w(l.type,c,l.props)),n.push(i)),1;d=0;var A,f=""===a?".":a+":";if(B(e))for(var h=0;h<e.length;h++)d+=z(a=e[h],n,o,s=f+N(a,h),i);else if("function"==typeof(h=null===(A=e)||"object"!=typeof A?null:"function"==typeof(A=p&&A[p]||A["@@iterator"])?A:null))for(e=h.call(e),h=0;!(a=e.next()).done;)d+=z(a=a.value,n,o,s=f+N(a,h++),i);else if("object"===s){if("function"==typeof e.then)return z(function(e){switch(e.status){case"fulfilled":return e.value;case"rejected":throw e.reason;default:switch("string"==typeof e.status?e.then(y,y):(e.status="pending",e.then(function(n){"pending"===e.status&&(e.status="fulfilled",e.value=n)},function(n){"pending"===e.status&&(e.status="rejected",e.reason=n)})),e.status){case"fulfilled":return e.value;case"rejected":throw e.reason}}throw e}(e),n,o,a,i);throw n=String(e),Error("Objects are not valid as a React child (found: "+("[object Object]"===n?"object with keys {"+Object.keys(e).join(", ")+"}":n)+"). If you meant to render a collection of children, use an array instead.")}return d}function P(e,n,t){if(null==e)return e;var r=[],o=0;return z(e,r,"","",function(e){return n.call(t,e,o++)}),r}function _(e){if(-1===e._status){var n=e._result;(n=n()).then(function(n){0!==e._status&&-1!==e._status||(e._status=1,e._result=n)},function(n){0!==e._status&&-1!==e._status||(e._status=2,e._result=n)}),-1===e._status&&(e._status=0,e._result=n)}if(1===e._status)return e._result.default;throw e._result}var O="function"==typeof reportError?reportError:function(e){if("object"==typeof window&&"function"==typeof window.ErrorEvent){var n=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"==typeof e&&null!==e&&"string"==typeof e.message?String(e.message):String(e),error:e});if(!window.dispatchEvent(n))return}else if("object"==typeof process&&"function"==typeof process.emit)return void process.emit("uncaughtException",e);console.error(e)},T={map:P,forEach:function(e,n,t){P(e,function(){n.apply(this,arguments)},t)},count:function(e){var n=0;return P(e,function(){n++}),n},toArray:function(e){return P(e,function(e){return e})||[]},only:function(e){if(!S(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};n.Activity=f,n.Children=T,n.Component=b,n.Fragment=o,n.Profiler=i,n.PureComponent=x,n.StrictMode=a,n.Suspense=d,n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=v,n.__COMPILER_RUNTIME={__proto__:null,c:function(e){return v.H.useMemoCache(e)}},n.cache=function(e){return function(){return e.apply(null,arguments)}},n.cacheSignal=function(){return null},n.cloneElement=function(e,n,t){if(null==e)throw Error("The argument must be a React element, but you passed "+e+".");var r=m({},e.props),o=e.key;if(null!=n)for(a in void 0!==n.key&&(o=""+n.key),n)!k.call(n,a)||"key"===a||"__self"===a||"__source"===a||"ref"===a&&void 0===n.ref||(r[a]=n[a]);var a=arguments.length-2;if(1===a)r.children=t;else if(1<a){for(var i=Array(a),s=0;s<a;s++)i[s]=arguments[s+2];r.children=i}return w(e.type,o,r)},n.createContext=function(e){return(e={$$typeof:l,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider=e,e.Consumer={$$typeof:s,_context:e},e},n.createElement=function(e,n,t){var r,o={},a=null;if(null!=n)for(r in void 0!==n.key&&(a=""+n.key),n)k.call(n,r)&&"key"!==r&&"__self"!==r&&"__source"!==r&&(o[r]=n[r]);var i=arguments.length-2;if(1===i)o.children=t;else if(1<i){for(var s=Array(i),l=0;l<i;l++)s[l]=arguments[l+2];o.children=s}if(e&&e.defaultProps)for(r in i=e.defaultProps)void 0===o[r]&&(o[r]=i[r]);return w(e,a,o)},n.createRef=function(){return{current:null}},n.forwardRef=function(e){return{$$typeof:c,render:e}},n.isValidElement=S,n.lazy=function(e){return{$$typeof:u,_payload:{_status:-1,_result:e},_init:_}},n.memo=function(e,n){return{$$typeof:A,type:e,compare:void 0===n?null:n}},n.startTransition=function(e){var n=v.T,t={};v.T=t;try{var r=e(),o=v.S;null!==o&&o(t,r),"object"==typeof r&&null!==r&&"function"==typeof r.then&&r.then(y,O)}catch(e){O(e)}finally{null!==n&&null!==t.types&&(n.types=t.types),v.T=n}},n.unstable_useCacheRefresh=function(){return v.H.useCacheRefresh()},n.use=function(e){return v.H.use(e)},n.useActionState=function(e,n,t){return v.H.useActionState(e,n,t)},n.useCallback=function(e,n){return v.H.useCallback(e,n)},n.useContext=function(e){return v.H.useContext(e)},n.useDebugValue=function(){},n.useDeferredValue=function(e,n){return v.H.useDeferredValue(e,n)},n.useEffect=function(e,n){return v.H.useEffect(e,n)},n.useEffectEvent=function(e){return v.H.useEffectEvent(e)},n.useId=function(){return v.H.useId()},n.useImperativeHandle=function(e,n,t){return v.H.useImperativeHandle(e,n,t)},n.useInsertionEffect=function(e,n){return v.H.useInsertionEffect(e,n)},n.useLayoutEffect=function(e,n){return v.H.useLayoutEffect(e,n)},n.useMemo=function(e,n){return v.H.useMemo(e,n)},n.useOptimistic=function(e,n){return v.H.useOptimistic(e,n)},n.useReducer=function(e,n,t){return v.H.useReducer(e,n,t)},n.useRef=function(e){return v.H.useRef(e)},n.useState=function(e){return v.H.useState(e)},n.useSyncExternalStore=function(e,n,t){return v.H.useSyncExternalStore(e,n,t)},n.useTransition=function(){return v.H.useTransition()},n.version="19.2.0"},9879:(e,n,t)=>{function r(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}t.r(n),t.d(n,{ReducerType:()=>Mn,SHOULD_AUTOBATCH:()=>sn,TaskAbortError:()=>ot,Tuple:()=>Ze,__DO_NOT_USE__ActionTypes:()=>i,addListener:()=>Bt,applyMiddleware:()=>p,asyncThunkCreator:()=>Tn,autoBatchEnhancer:()=>dn,bindActionCreators:()=>u,buildCreateSlice:()=>Dn,clearAllListeners:()=>yt,combineReducers:()=>d,combineSlices:()=>Rt,compose:()=>f,configureStore:()=>un,createAction:()=>Ve,createActionCreatorInvariantMiddleware:()=>Je,createAsyncThunk:()=>Pn,createDraftSafeSelector:()=>qe,createDraftSafeSelectorCreator:()=>Ue,createDynamicMiddleware:()=>jt,createEntityAdapter:()=>Zn,createImmutableStateInvariantMiddleware:()=>en,createListenerMiddleware:()=>wt,createNextState:()=>ke,createReducer:()=>pn,createSelector:()=>Re,createSelectorCreator:()=>Me,createSerializableStateInvariantMiddleware:()=>on,createSlice:()=>Fn,createStore:()=>l,current:()=>ye,findNonSerializableValue:()=>tn,formatProdErrorMessage:()=>Dt,freeze:()=>H,isAction:()=>h,isActionCreator:()=>We,isAllOf:()=>gn,isAnyOf:()=>mn,isAsyncThunkAction:()=>vn,isDraft:()=>j,isFluxStandardAction:()=>Qe,isFulfilled:()=>yn,isImmutableDefault:()=>Ge,isPending:()=>xn,isPlain:()=>nn,isPlainObject:()=>s,isRejected:()=>Cn,isRejectedWithValue:()=>Bn,legacy_createStore:()=>c,lruMemoize:()=>Ne,miniSerializeError:()=>Nn,nanoid:()=>kn,original:()=>O,prepareAutoBatched:()=>ln,removeListener:()=>vt,unwrapResult:()=>_n,weakMapMemoize:()=>Te});var o=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")(),a=()=>Math.random().toString(36).substring(7).split("").join("."),i={INIT:`@@redux/INIT${a()}`,REPLACE:`@@redux/REPLACE${a()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${a()}`};function s(e){if("object"!=typeof e||null===e)return!1;let n=e;for(;null!==Object.getPrototypeOf(n);)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n||null===Object.getPrototypeOf(e)}function l(e,n,t){if("function"!=typeof e)throw new Error(r(2));if("function"==typeof n&&"function"==typeof t||"function"==typeof t&&"function"==typeof arguments[3])throw new Error(r(0));if("function"==typeof n&&void 0===t&&(t=n,n=void 0),void 0!==t){if("function"!=typeof t)throw new Error(r(1));return t(l)(e,n)}let a=e,c=n,d=new Map,A=d,u=0,f=!1;function p(){A===d&&(A=new Map,d.forEach((e,n)=>{A.set(n,e)}))}function h(){if(f)throw new Error(r(3));return c}function m(e){if("function"!=typeof e)throw new Error(r(4));if(f)throw new Error(r(5));let n=!0;p();const t=u++;return A.set(t,e),function(){if(n){if(f)throw new Error(r(6));n=!1,p(),A.delete(t),d=null}}}function g(e){if(!s(e))throw new Error(r(7));if(void 0===e.type)throw new Error(r(8));if("string"!=typeof e.type)throw new Error(r(17));if(f)throw new Error(r(9));try{f=!0,c=a(c,e)}finally{f=!1}return(d=A).forEach(e=>{e()}),e}return g({type:i.INIT}),{dispatch:g,subscribe:m,getState:h,replaceReducer:function(e){if("function"!=typeof e)throw new Error(r(10));a=e,g({type:i.REPLACE})},[o]:function(){const e=m;return{subscribe(n){if("object"!=typeof n||null===n)throw new Error(r(11));function t(){const e=n;e.next&&e.next(h())}return t(),{unsubscribe:e(t)}},[o](){return this}}}}}function c(e,n,t){return l(e,n,t)}function d(e){const n=Object.keys(e),t={};for(let r=0;r<n.length;r++){const o=n[r];"function"==typeof e[o]&&(t[o]=e[o])}const o=Object.keys(t);let a;try{!function(e){Object.keys(e).forEach(n=>{const t=e[n];if(void 0===t(void 0,{type:i.INIT}))throw new Error(r(12));if(void 0===t(void 0,{type:i.PROBE_UNKNOWN_ACTION()}))throw new Error(r(13))})}(t)}catch(e){a=e}return function(e={},n){if(a)throw a;let i=!1;const s={};for(let a=0;a<o.length;a++){const l=o[a],c=t[l],d=e[l],A=c(d,n);if(void 0===A)throw n&&n.type,new Error(r(14));s[l]=A,i=i||A!==d}return i=i||o.length!==Object.keys(e).length,i?s:e}}function A(e,n){return function(...t){return n(e.apply(this,t))}}function u(e,n){if("function"==typeof e)return A(e,n);if("object"!=typeof e||null===e)throw new Error(r(16));const t={};for(const r in e){const o=e[r];"function"==typeof o&&(t[r]=A(o,n))}return t}function f(...e){return 0===e.length?e=>e:1===e.length?e[0]:e.reduce((e,n)=>(...t)=>e(n(...t)))}function p(...e){return n=>(t,o)=>{const a=n(t,o);let i=()=>{throw new Error(r(15))};const s={getState:a.getState,dispatch:(e,...n)=>i(e,...n)},l=e.map(e=>e(s));return i=f(...l)(a.dispatch),{...a,dispatch:i}}}function h(e){return s(e)&&"type"in e&&"string"==typeof e.type}var m=Symbol.for("immer-nothing"),g=Symbol.for("immer-draftable"),b=Symbol.for("immer-state");function E(e,...n){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var x=Object,C=x.getPrototypeOf,B="constructor",y="prototype",v="configurable",k="enumerable",w="writable",S="value",j=e=>!!e&&!!e[b];function N(e){return!!e&&(_(e)||F(e)||!!e[g]||!!e[B]?.[g]||I(e)||U(e))}var z=x[y][B].toString(),P=new WeakMap;function _(e){if(!e||!q(e))return!1;const n=C(e);if(null===n||n===x[y])return!0;const t=x.hasOwnProperty.call(n,B)&&n[B];if(t===Object)return!0;if(!Y(t))return!1;let r=P.get(t);return void 0===r&&(r=Function.toString.call(t),P.set(t,r)),r===z}function O(e){return j(e)||E(15),e[b].base_}function T(e,n,t=!0){0===M(e)?(t?Reflect.ownKeys(e):x.keys(e)).forEach(t=>{n(t,e[t],e)}):e.forEach((t,r)=>n(r,t,e))}function M(e){const n=e[b];return n?n.type_:F(e)?1:I(e)?2:U(e)?3:0}var R=(e,n,t=M(e))=>2===t?e.has(n):x[y].hasOwnProperty.call(e,n),D=(e,n,t=M(e))=>2===t?e.get(n):e[n],L=(e,n,t,r=M(e))=>{2===r?e.set(n,t):3===r?e.add(t):e[n]=t},F=Array.isArray,I=e=>e instanceof Map,U=e=>e instanceof Set,q=e=>"object"==typeof e,Y=e=>"function"==typeof e,$=e=>"boolean"==typeof e,V=e=>e.copy_||e.base_,W=e=>e.modified_?e.copy_:e.base_;function Q(e,n){if(I(e))return new Map(e);if(U(e))return new Set(e);if(F(e))return Array[y].slice.call(e);const t=_(e);if(!0===n||"class_only"===n&&!t){const n=x.getOwnPropertyDescriptors(e);delete n[b];let t=Reflect.ownKeys(n);for(let r=0;r<t.length;r++){const o=t[r],a=n[o];!1===a[w]&&(a[w]=!0,a[v]=!0),(a.get||a.set)&&(n[o]={[v]:!0,[w]:!0,[k]:a[k],[S]:e[o]})}return x.create(C(e),n)}{const n=C(e);if(null!==n&&t)return{...e};const r=x.create(n);return x.assign(r,e)}}function H(e,n=!1){return Z(e)||j(e)||!N(e)||(M(e)>1&&x.defineProperties(e,{set:J,add:J,clear:J,delete:J}),x.freeze(e),n&&T(e,(e,n)=>{H(n,!0)},!1)),e}var J={[S]:function(){E(2)}};function Z(e){return null===e||!q(e)||x.isFrozen(e)}var K,X="MapSet",G="Patches",ee={};function ne(e){const n=ee[e];return n||E(0),n}var te=()=>K;function re(e,n){n&&(e.patchPlugin_=ne(G),e.patches_=[],e.inversePatches_=[],e.patchListener_=n)}function oe(e){ae(e),e.drafts_.forEach(se),e.drafts_=null}function ae(e){e===K&&(K=e.parent_)}var ie=e=>{return K={drafts_:[],parent_:K,immer_:e,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:(n=X,ee[n]?ne(X):void 0)};var n};function se(e){const n=e[b];0===n.type_||1===n.type_?n.revoke_():n.revoked_=!0}function le(e,n){n.unfinalizedDrafts_=n.drafts_.length;const t=n.drafts_[0];if(void 0!==e&&e!==t){t[b].modified_&&(oe(n),E(4)),N(e)&&(e=ce(n,e));const{patchPlugin_:r}=n;r&&r.generateReplacementPatches_(t[b].base_,e,n)}else e=ce(n,t);return function(e,n,t=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&H(n,t)}(n,e,!0),oe(n),n.patches_&&n.patchListener_(n.patches_,n.inversePatches_),e!==m?e:void 0}function ce(e,n){if(Z(n))return n;const t=n[b];if(!t)return he(n,e.handledSet_,e);if(!Ae(t,e))return n;if(!t.modified_)return t.base_;if(!t.finalized_){const{callbacks_:n}=t;if(n)for(;n.length>0;)n.pop()(e);pe(t,e)}return t.copy_}function de(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Ae=(e,n)=>e.scope_===n,ue=[];function fe(e,n,t,r){const o=V(e),a=e.type_;if(void 0!==r&&D(o,r,a)===n)return void L(o,r,t,a);if(!e.draftLocations_){const n=e.draftLocations_=new Map;T(o,(e,t)=>{if(j(t)){const r=n.get(t)||[];r.push(e),n.set(t,r)}})}const i=e.draftLocations_.get(n)??ue;for(const e of i)L(o,e,t,a)}function pe(e,n){if(e.modified_&&!e.finalized_&&(3===e.type_||(e.assigned_?.size??0)>0)){const{patchPlugin_:t}=n;if(t){const r=t.getPath(e);r&&t.generatePatches_(e,r,n)}de(e)}}function he(e,n,t){return!t.immer_.autoFreeze_&&t.unfinalizedDrafts_<1||j(e)||n.has(e)||!N(e)||Z(e)||(n.add(e),T(e,(r,o)=>{if(j(o)){const n=o[b];if(Ae(n,t)){const t=W(n);L(e,r,t,e.type_),de(n)}}else N(o)&&he(o,n,t)})),e}var me={get(e,n){if(n===b)return e;const t=V(e);if(!R(t,n,e.type_))return function(e,n,t){const r=Ee(n,t);return r?S in r?r[S]:r.get?.call(e.draft_):void 0}(e,t,n);const r=t[n];if(e.finalized_||!N(r))return r;if(r===be(e.base_,n)){Ce(e);const t=1===e.type_?+n:n,o=Be(e.scope_,r,e,t);return e.copy_[t]=o}return r},has:(e,n)=>n in V(e),ownKeys:e=>Reflect.ownKeys(V(e)),set(e,n,t){const r=Ee(V(e),n);if(r?.set)return r.set.call(e.draft_,t),!0;if(!e.modified_){const r=be(V(e),n),i=r?.[b];if(i&&i.base_===t)return e.copy_[n]=t,e.assigned_.set(n,!1),!0;if(((o=t)===(a=r)?0!==o||1/o==1/a:o!=o&&a!=a)&&(void 0!==t||R(e.base_,n,e.type_)))return!0;Ce(e),xe(e)}var o,a;return e.copy_[n]===t&&(void 0!==t||n in e.copy_)||Number.isNaN(t)&&Number.isNaN(e.copy_[n])||(e.copy_[n]=t,e.assigned_.set(n,!0),function(e,n,t){const{scope_:r}=e;if(j(t)){const o=t[b];Ae(o,r)&&o.callbacks_.push(function(){Ce(e);const r=W(o);fe(e,t,r,n)})}else N(t)&&e.callbacks_.push(function(){const o=V(e);D(o,n,e.type_)===t&&r.drafts_.length>1&&!0===(e.assigned_.get(n)??!1)&&e.copy_&&he(D(e.copy_,n,e.type_),r.handledSet_,r)})}(e,n,t)),!0},deleteProperty:(e,n)=>(Ce(e),void 0!==be(e.base_,n)||n in e.base_?(e.assigned_.set(n,!1),xe(e)):e.assigned_.delete(n),e.copy_&&delete e.copy_[n],!0),getOwnPropertyDescriptor(e,n){const t=V(e),r=Reflect.getOwnPropertyDescriptor(t,n);return r?{[w]:!0,[v]:1!==e.type_||"length"!==n,[k]:r[k],[S]:t[n]}:r},defineProperty(){E(11)},getPrototypeOf:e=>C(e.base_),setPrototypeOf(){E(12)}},ge={};function be(e,n){const t=e[b];return(t?V(t):e)[n]}function Ee(e,n){if(!(n in e))return;let t=C(e);for(;t;){const e=Object.getOwnPropertyDescriptor(t,n);if(e)return e;t=C(t)}}function xe(e){e.modified_||(e.modified_=!0,e.parent_&&xe(e.parent_))}function Ce(e){e.copy_||(e.assigned_=new Map,e.copy_=Q(e.base_,e.scope_.immer_.useStrictShallowCopy_))}function Be(e,n,t,r){const[o,a]=I(n)?ne(X).proxyMap_(n,t):U(n)?ne(X).proxySet_(n,t):function(e,n){const t=F(e),r={type_:t?1:0,scope_:n?n.scope_:te(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:n,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let o=r,a=me;t&&(o=[r],a=ge);const{revoke:i,proxy:s}=Proxy.revocable(o,a);return r.draft_=s,r.revoke_=i,[s,r]}(n,t);return(t?.scope_??te()).drafts_.push(o),a.callbacks_=t?.callbacks_??[],a.key_=r,t&&void 0!==r?function(e,n,t){e.callbacks_.push(function(r){const o=n;if(!o||!Ae(o,r))return;r.mapSetPlugin_?.fixSetContents(o);const a=W(o);fe(e,o.draft_??o,a,t),pe(o,r)})}(t,a,r):a.callbacks_.push(function(e){e.mapSetPlugin_?.fixSetContents(a);const{patchPlugin_:n}=e;a.modified_&&n&&n.generatePatches_(a,[],e)}),o}function ye(e){return j(e)||E(10),ve(e)}function ve(e){if(!N(e)||Z(e))return e;const n=e[b];let t,r=!0;if(n){if(!n.modified_)return n.base_;n.finalized_=!0,t=Q(e,n.scope_.immer_.useStrictShallowCopy_),r=n.scope_.immer_.shouldUseStrictIteration()}else t=Q(e,!0);return T(t,(e,n)=>{L(t,e,ve(n))},r),n&&(n.finalized_=!1),t}T(me,(e,n)=>{ge[e]=function(){const e=arguments;return e[0]=e[0][0],n.apply(this,e)}}),ge.deleteProperty=function(e,n){return ge.set.call(this,e,n,void 0)},ge.set=function(e,n,t){return me.set.call(this,e[0],n,t,e[0])};var ke=(new class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(e,n,t)=>{if(Y(e)&&!Y(n)){const t=n;n=e;const r=this;return function(e=t,...o){return r.produce(e,e=>n.call(this,e,...o))}}let r;if(Y(n)||E(6),void 0===t||Y(t)||E(7),N(e)){const o=ie(this),a=Be(0,e,void 0);let i=!0;try{r=n(a),i=!1}finally{i?oe(o):ae(o)}return re(o,t),le(r,o)}if(!e||!q(e)){if(r=n(e),void 0===r&&(r=e),r===m&&(r=void 0),this.autoFreeze_&&H(r,!0),t){const n=[],o=[];ne(G).generateReplacementPatches_(e,r,{patches_:n,inversePatches_:o}),t(n,o)}return r}E(1)},this.produceWithPatches=(e,n)=>{if(Y(e))return(n,...t)=>this.produceWithPatches(n,n=>e(n,...t));let t,r;return[this.produce(e,n,(e,n)=>{t=e,r=n}),t,r]},$(e?.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),$(e?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),$(e?.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){N(e)||E(8),j(e)&&(e=ye(e));const n=ie(this),t=Be(0,e,void 0);return t[b].isManual_=!0,ae(n),t}finishDraft(e,n){const t=e&&e[b];t&&t.isManual_||E(9);const{scope_:r}=t;return re(r,n),le(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,n){let t;for(t=n.length-1;t>=0;t--){const r=n[t];if(0===r.path.length&&"replace"===r.op){e=r.value;break}}t>-1&&(n=n.slice(t+1));const r=ne(G).applyPatches_;return j(e)?r(e,n):this.produce(e,e=>r(e,n))}}).produce,we=Symbol("NOT_FOUND");var Se=e=>Array.isArray(e)?e:[e];Symbol(),Object.getPrototypeOf({});var je=(e,n)=>e===n;function Ne(e,n){const t="object"==typeof n?n:{equalityCheck:n},{equalityCheck:r=je,maxSize:o=1,resultEqualityCheck:a}=t,i=function(e){return function(n,t){if(null===n||null===t||n.length!==t.length)return!1;const{length:r}=n;for(let o=0;o<r;o++)if(!e(n[o],t[o]))return!1;return!0}}(r);let s=0;const l=o<=1?function(e){let n;return{get:t=>n&&e(n.key,t)?n.value:we,put(e,t){n={key:e,value:t}},getEntries:()=>n?[n]:[],clear(){n=void 0}}}(i):function(e,n){let t=[];function r(e){const r=t.findIndex(t=>n(e,t.key));if(r>-1){const e=t[r];return r>0&&(t.splice(r,1),t.unshift(e)),e.value}return we}return{get:r,put:function(n,o){r(n)===we&&(t.unshift({key:n,value:o}),t.length>e&&t.pop())},getEntries:function(){return t},clear:function(){t=[]}}}(o,i);function c(){let n=l.get(arguments);if(n===we){if(n=e.apply(null,arguments),s++,a){const e=l.getEntries().find(e=>a(e.value,n));e&&(n=e.value,0!==s&&s--)}l.put(arguments,n)}return n}return c.clearCache=()=>{l.clear(),c.resetResultsCount()},c.resultsCount=()=>s,c.resetResultsCount=()=>{s=0},c}var ze="undefined"!=typeof WeakRef?WeakRef:class{constructor(e){this.value=e}deref(){return this.value}},Pe=0,_e=1;function Oe(){return{s:Pe,v:void 0,o:null,p:null}}function Te(e,n={}){let t=Oe();const{resultEqualityCheck:r}=n;let o,a=0;function i(){let n=t;const{length:i}=arguments;for(let e=0,t=i;e<t;e++){const t=arguments[e];if("function"==typeof t||"object"==typeof t&&null!==t){let e=n.o;null===e&&(n.o=e=new WeakMap);const r=e.get(t);void 0===r?(n=Oe(),e.set(t,n)):n=r}else{let e=n.p;null===e&&(n.p=e=new Map);const r=e.get(t);void 0===r?(n=Oe(),e.set(t,n)):n=r}}const s=n;let l;if(n.s===_e)l=n.v;else if(l=e.apply(null,arguments),a++,r){const e=o?.deref?.()??o;null!=e&&r(e,l)&&(l=e,0!==a&&a--),o="object"==typeof l&&null!==l||"function"==typeof l?new ze(l):l}return s.s=_e,s.v=l,l}return i.clearCache=()=>{t=Oe(),i.resetResultsCount()},i.resultsCount=()=>a,i.resetResultsCount=()=>{a=0},i}function Me(e,...n){const t="function"==typeof e?{memoize:e,memoizeOptions:n}:e,r=(...e)=>{let n,r=0,o=0,a={},i=e.pop();"object"==typeof i&&(a=i,i=e.pop()),function(e,n="expected a function, instead received "+typeof e){if("function"!=typeof e)throw new TypeError(n)}(i,`createSelector expects an output function after the inputs, but received: [${typeof i}]`);const s={...t,...a},{memoize:l,memoizeOptions:c=[],argsMemoize:d=Te,argsMemoizeOptions:A=[],devModeChecks:u={}}=s,f=Se(c),p=Se(A),h=function(e){const n=Array.isArray(e[0])?e[0]:e;return function(e,n="expected all items to be functions, instead received the following types: "){if(!e.every(e=>"function"==typeof e)){const t=e.map(e=>"function"==typeof e?`function ${e.name||"unnamed"}()`:typeof e).join(", ");throw new TypeError(`${n}[${t}]`)}}(n,"createSelector expects all input-selectors to be functions, but received the following types: "),n}(e),m=l(function(){return r++,i.apply(null,arguments)},...f),g=d(function(){o++;const e=function(e,n){const t=[],{length:r}=e;for(let o=0;o<r;o++)t.push(e[o].apply(null,n));return t}(h,arguments);return n=m.apply(null,e),n},...p);return Object.assign(g,{resultFunc:i,memoizedResultFunc:m,dependencies:h,dependencyRecomputations:()=>o,resetDependencyRecomputations:()=>{o=0},lastResult:()=>n,recomputations:()=>r,resetRecomputations:()=>{r=0},memoize:l,argsMemoize:d})};return Object.assign(r,{withTypes:()=>r}),r}var Re=Me(Te),De=Object.assign((e,n=Re)=>{!function(e,n="expected an object, instead received "+typeof e){if("object"!=typeof e)throw new TypeError(n)}(e,"createStructuredSelector expects first argument to be an object where each property is a selector, instead received a "+typeof e);const t=Object.keys(e);return n(t.map(n=>e[n]),(...e)=>e.reduce((e,n,r)=>(e[t[r]]=n,e),{}))},{withTypes:()=>De});function Le(e){return({dispatch:n,getState:t})=>r=>o=>"function"==typeof o?o(n,t,e):r(o)}var Fe=Le(),Ie=Le,Ue=(...e)=>{const n=Me(...e),t=Object.assign((...e)=>{const t=n(...e),r=(e,...n)=>t(j(e)?ye(e):e,...n);return Object.assign(r,t),r},{withTypes:()=>t});return t},qe=Ue(Te),Ye="undefined"!=typeof window&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(0!==arguments.length)return"object"==typeof arguments[0]?f:f.apply(null,arguments)},$e=("undefined"!=typeof window&&window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__,e=>e&&"function"==typeof e.match);function Ve(e,n){function t(...t){if(n){let r=n(...t);if(!r)throw new Error(Dt(0));return{type:e,payload:r.payload,..."meta"in r&&{meta:r.meta},..."error"in r&&{error:r.error}}}return{type:e,payload:t[0]}}return t.toString=()=>`${e}`,t.type=e,t.match=n=>h(n)&&n.type===e,t}function We(e){return"function"==typeof e&&"type"in e&&$e(e)}function Qe(e){return h(e)&&Object.keys(e).every(He)}function He(e){return["type","payload","error","meta"].indexOf(e)>-1}function Je(e={}){return()=>e=>n=>e(n)}var Ze=class e extends Array{constructor(...n){super(...n),Object.setPrototypeOf(this,e.prototype)}static get[Symbol.species](){return e}concat(...e){return super.concat.apply(this,e)}prepend(...n){return 1===n.length&&Array.isArray(n[0])?new e(...n[0].concat(this)):new e(...n.concat(this))}};function Ke(e){return N(e)?ke(e,()=>{}):e}function Xe(e,n,t){return e.has(n)?e.get(n):e.set(n,t(n)).get(n)}function Ge(e){return"object"!=typeof e||null==e||Object.isFrozen(e)}function en(e={}){return()=>e=>n=>e(n)}function nn(e){const n=typeof e;return null==e||"string"===n||"boolean"===n||"number"===n||Array.isArray(e)||s(e)}function tn(e,n="",t=nn,r,o=[],a){let i;if(!t(e))return{keyPath:n||"<root>",value:e};if("object"!=typeof e||null===e)return!1;if(a?.has(e))return!1;const s=null!=r?r(e):Object.entries(e),l=o.length>0;for(const[e,c]of s){const s=n?n+"."+e:e;if(!l||!o.some(e=>e instanceof RegExp?e.test(s):s===e)){if(!t(c))return{keyPath:s,value:c};if("object"==typeof c&&(i=tn(c,s,t,r,o,a),i))return i}}return a&&rn(e)&&a.add(e),!1}function rn(e){if(!Object.isFrozen(e))return!1;for(const n of Object.values(e))if("object"==typeof n&&null!==n&&!rn(n))return!1;return!0}function on(e={}){return()=>e=>n=>e(n)}var an=()=>function(e){const{thunk:n=!0,immutableCheck:t=!0,serializableCheck:r=!0,actionCreatorCheck:o=!0}=e??{};let a=new Ze;return n&&("boolean"==typeof n?a.push(Fe):a.push(Ie(n.extraArgument))),a},sn="RTK_autoBatch",ln=()=>e=>({payload:e,meta:{[sn]:!0}}),cn=e=>n=>{setTimeout(n,e)},dn=(e={type:"raf"})=>n=>(...t)=>{const r=n(...t);let o=!0,a=!1,i=!1;const s=new Set,l="tick"===e.type?queueMicrotask:"raf"===e.type?"undefined"!=typeof window&&window.requestAnimationFrame?window.requestAnimationFrame:cn(10):"callback"===e.type?e.queueNotification:cn(e.timeout),c=()=>{i=!1,a&&(a=!1,s.forEach(e=>e()))};return Object.assign({},r,{subscribe(e){const n=r.subscribe(()=>o&&e());return s.add(e),()=>{n(),s.delete(e)}},dispatch(e){try{return o=!e?.meta?.[sn],a=!o,a&&(i||(i=!0,l(c))),r.dispatch(e)}finally{o=!0}}})},An=e=>function(n){const{autoBatch:t=!0}=n??{};let r=new Ze(e);return t&&r.push(dn("object"==typeof t?t:void 0)),r};function un(e){const n=an(),{reducer:t,middleware:r,devTools:o=!0,duplicateMiddlewareCheck:a=!0,preloadedState:i,enhancers:c}=e||{};let A,u;if("function"==typeof t)A=t;else{if(!s(t))throw new Error(Dt(1));A=d(t)}u="function"==typeof r?r(n):n();let h=f;o&&(h=Ye({trace:!1,..."object"==typeof o&&o}));const m=p(...u),g=An(m);return l(A,i,h(..."function"==typeof c?c(g):g()))}function fn(e){const n={},t=[];let r;const o={addCase(e,t){const r="string"==typeof e?e:e.type;if(!r)throw new Error(Dt(28));if(r in n)throw new Error(Dt(29));return n[r]=t,o},addAsyncThunk:(e,r)=>(r.pending&&(n[e.pending.type]=r.pending),r.rejected&&(n[e.rejected.type]=r.rejected),r.fulfilled&&(n[e.fulfilled.type]=r.fulfilled),r.settled&&t.push({matcher:e.settled,reducer:r.settled}),o),addMatcher:(e,n)=>(t.push({matcher:e,reducer:n}),o),addDefaultCase:e=>(r=e,o)};return e(o),[n,t,r]}function pn(e,n){let t,[r,o,a]=fn(n);if("function"==typeof e)t=()=>Ke(e());else{const n=Ke(e);t=()=>n}function i(e=t(),n){let i=[r[n.type],...o.filter(({matcher:e})=>e(n)).map(({reducer:e})=>e)];return 0===i.filter(e=>!!e).length&&(i=[a]),i.reduce((e,t)=>{if(t){if(j(e)){const r=t(e,n);return void 0===r?e:r}if(N(e))return ke(e,e=>t(e,n));{const r=t(e,n);if(void 0===r){if(null===e)return e;throw Error("A case reducer on a non-draftable value must not return undefined")}return r}}return e},e)}return i.getInitialState=t,i}var hn=(e,n)=>$e(e)?e.match(n):e(n);function mn(...e){return n=>e.some(e=>hn(e,n))}function gn(...e){return n=>e.every(e=>hn(e,n))}function bn(e,n){if(!e||!e.meta)return!1;const t="string"==typeof e.meta.requestId,r=n.indexOf(e.meta.requestStatus)>-1;return t&&r}function En(e){return"function"==typeof e[0]&&"pending"in e[0]&&"fulfilled"in e[0]&&"rejected"in e[0]}function xn(...e){return 0===e.length?e=>bn(e,["pending"]):En(e)?mn(...e.map(e=>e.pending)):xn()(e[0])}function Cn(...e){return 0===e.length?e=>bn(e,["rejected"]):En(e)?mn(...e.map(e=>e.rejected)):Cn()(e[0])}function Bn(...e){return 0===e.length||En(e)?gn(Cn(...e),e=>e&&e.meta&&e.meta.rejectedWithValue):Bn()(e[0])}function yn(...e){return 0===e.length?e=>bn(e,["fulfilled"]):En(e)?mn(...e.map(e=>e.fulfilled)):yn()(e[0])}function vn(...e){return 0===e.length?e=>bn(e,["pending","fulfilled","rejected"]):En(e)?mn(...e.flatMap(e=>[e.pending,e.rejected,e.fulfilled])):vn()(e[0])}var kn=(e=21)=>{let n="",t=e;for(;t--;)n+="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW"[64*Math.random()|0];return n},wn=["name","message","stack","code"],Sn=class{constructor(e,n){this.payload=e,this.meta=n}_type},jn=class{constructor(e,n){this.payload=e,this.meta=n}_type},Nn=e=>{if("object"==typeof e&&null!==e){const n={};for(const t of wn)"string"==typeof e[t]&&(n[t]=e[t]);return n}return{message:String(e)}},zn="External signal was aborted",Pn=(()=>{function e(e,n,t){const r=Ve(e+"/fulfilled",(e,n,t,r)=>({payload:e,meta:{...r||{},arg:t,requestId:n,requestStatus:"fulfilled"}})),o=Ve(e+"/pending",(e,n,t)=>({payload:void 0,meta:{...t||{},arg:n,requestId:e,requestStatus:"pending"}})),a=Ve(e+"/rejected",(e,n,r,o,a)=>({payload:o,error:(t&&t.serializeError||Nn)(e||"Rejected"),meta:{...a||{},arg:r,requestId:n,rejectedWithValue:!!o,requestStatus:"rejected",aborted:"AbortError"===e?.name,condition:"ConditionError"===e?.name}}));return Object.assign(function(e,{signal:i}={}){return(s,l,c)=>{const d=t?.idGenerator?t.idGenerator(e):kn(),A=new AbortController;let u,f;function p(e){f=e,A.abort()}i&&(i.aborted?p(zn):i.addEventListener("abort",()=>p(zn),{once:!0}));const h=async function(){let i;try{let a=t?.condition?.(e,{getState:l,extra:c});if(null!==(h=a)&&"object"==typeof h&&"function"==typeof h.then&&(a=await a),!1===a||A.signal.aborted)throw{name:"ConditionError",message:"Aborted due to condition callback returning false."};const m=new Promise((e,n)=>{u=()=>{n({name:"AbortError",message:f||"Aborted"})},A.signal.addEventListener("abort",u,{once:!0})});s(o(d,e,t?.getPendingMeta?.({requestId:d,arg:e},{getState:l,extra:c}))),i=await Promise.race([m,Promise.resolve(n(e,{dispatch:s,getState:l,extra:c,requestId:d,signal:A.signal,abort:p,rejectWithValue:(e,n)=>new Sn(e,n),fulfillWithValue:(e,n)=>new jn(e,n)})).then(n=>{if(n instanceof Sn)throw n;return n instanceof jn?r(n.payload,d,e,n.meta):r(n,d,e)})])}catch(n){i=n instanceof Sn?a(null,d,e,n.payload,n.meta):a(n,d,e)}finally{u&&A.signal.removeEventListener("abort",u)}var h;return t&&!t.dispatchConditionRejection&&a.match(i)&&i.meta.condition||s(i),i}();return Object.assign(h,{abort:p,requestId:d,arg:e,unwrap:()=>h.then(_n)})}},{pending:o,rejected:a,fulfilled:r,settled:mn(a,r),typePrefix:e})}return e.withTypes=()=>e,e})();function _n(e){if(e.meta&&e.meta.rejectedWithValue)throw e.payload;if(e.error)throw e.error;return e.payload}var On=Symbol.for("rtk-slice-createasyncthunk"),Tn={[On]:Pn},Mn=(e=>(e.reducer="reducer",e.reducerWithPrepare="reducerWithPrepare",e.asyncThunk="asyncThunk",e))(Mn||{});function Rn(e,n){return`${e}/${n}`}function Dn({creators:e}={}){const n=e?.asyncThunk?.[On];return function(e){const{name:t,reducerPath:r=t}=e;if(!t)throw new Error(Dt(11));const o=("function"==typeof e.reducers?e.reducers(function(){function e(e,n){return{_reducerDefinitionType:"asyncThunk",payloadCreator:e,...n}}return e.withTypes=()=>e,{reducer:e=>Object.assign({[e.name]:(...n)=>e(...n)}[e.name],{_reducerDefinitionType:"reducer"}),preparedReducer:(e,n)=>({_reducerDefinitionType:"reducerWithPrepare",prepare:e,reducer:n}),asyncThunk:e}}()):e.reducers)||{},a=Object.keys(o),i={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},s={addCase(e,n){const t="string"==typeof e?e:e.type;if(!t)throw new Error(Dt(12));if(t in i.sliceCaseReducersByType)throw new Error(Dt(13));return i.sliceCaseReducersByType[t]=n,s},addMatcher:(e,n)=>(i.sliceMatchers.push({matcher:e,reducer:n}),s),exposeAction:(e,n)=>(i.actionCreators[e]=n,s),exposeCaseReducer:(e,n)=>(i.sliceCaseReducersByName[e]=n,s)};function l(){const[n={},t=[],r]="function"==typeof e.extraReducers?fn(e.extraReducers):[e.extraReducers],o={...n,...i.sliceCaseReducersByType};return pn(e.initialState,e=>{for(let n in o)e.addCase(n,o[n]);for(let n of i.sliceMatchers)e.addMatcher(n.matcher,n.reducer);for(let n of t)e.addMatcher(n.matcher,n.reducer);r&&e.addDefaultCase(r)})}a.forEach(r=>{const a=o[r],i={reducerName:r,type:Rn(t,r),createNotation:"function"==typeof e.reducers};!function(e){return"asyncThunk"===e._reducerDefinitionType}(a)?function({type:e,reducerName:n,createNotation:t},r,o){let a,i;if("reducer"in r){if(t&&!function(e){return"reducerWithPrepare"===e._reducerDefinitionType}(r))throw new Error(Dt(17));a=r.reducer,i=r.prepare}else a=r;o.addCase(e,a).exposeCaseReducer(n,a).exposeAction(n,i?Ve(e,i):Ve(e))}(i,a,s):function({type:e,reducerName:n},t,r,o){if(!o)throw new Error(Dt(18));const{payloadCreator:a,fulfilled:i,pending:s,rejected:l,settled:c,options:d}=t,A=o(e,a,d);r.exposeAction(n,A),i&&r.addCase(A.fulfilled,i),s&&r.addCase(A.pending,s),l&&r.addCase(A.rejected,l),c&&r.addMatcher(A.settled,c),r.exposeCaseReducer(n,{fulfilled:i||In,pending:s||In,rejected:l||In,settled:c||In})}(i,a,s,n)});const c=e=>e,d=new Map,A=new WeakMap;let u;function f(e,n){return u||(u=l()),u(e,n)}function p(){return u||(u=l()),u.getInitialState()}function h(n,t=!1){function r(e){let o=e[n];return void 0===o&&t&&(o=Xe(A,r,p)),o}function o(n=c){const r=Xe(d,t,()=>new WeakMap);return Xe(r,n,()=>{const r={};for(const[o,a]of Object.entries(e.selectors??{}))r[o]=Ln(a,n,()=>Xe(A,n,p),t);return r})}return{reducerPath:n,getSelectors:o,get selectors(){return o(r)},selectSlice:r}}const m={name:t,reducer:f,actions:i.actionCreators,caseReducers:i.sliceCaseReducersByName,getInitialState:p,...h(r),injectInto(e,{reducerPath:n,...t}={}){const o=n??r;return e.inject({reducerPath:o,reducer:f},t),{...m,...h(o,!0)}}};return m}}function Ln(e,n,t,r){function o(o,...a){let i=n(o);return void 0===i&&r&&(i=t()),e(i,...a)}return o.unwrapped=e,o}var Fn=Dn();function In(){}var Un=j;function qn(e){const n=Yn((n,t)=>e(t));return function(e){return n(e,void 0)}}function Yn(e){return function(n,t){const r=n=>{Qe(t)?e(t.payload,n):e(t,n)};return Un(n)?(r(n),n):ke(n,r)}}function $n(e,n){return n(e)}function Vn(e){return Array.isArray(e)||(e=Object.values(e)),e}function Wn(e){return j(e)?ye(e):e}function Qn(e,n,t){e=Vn(e);const r=Wn(t.ids),o=new Set(r),a=[],i=new Set([]),s=[];for(const t of e){const e=$n(t,n);o.has(e)||i.has(e)?s.push({id:e,changes:t}):(i.add(e),a.push(t))}return[a,s,r]}function Hn(e){function n(n,t){const r=$n(n,e);r in t.entities||(t.ids.push(r),t.entities[r]=n)}function t(e,t){e=Vn(e);for(const r of e)n(r,t)}function r(n,t){const r=$n(n,e);r in t.entities||t.ids.push(r),t.entities[r]=n}function o(e,n){let t=!1;e.forEach(e=>{e in n.entities&&(delete n.entities[e],t=!0)}),t&&(n.ids=n.ids.filter(e=>e in n.entities))}function a(n,t){const r={},o={};if(n.forEach(e=>{e.id in t.entities&&(o[e.id]={id:e.id,changes:{...o[e.id]?.changes,...e.changes}})}),(n=Object.values(o)).length>0){const o=n.filter(n=>function(n,t,r){const o=r.entities[t.id];if(void 0===o)return!1;const a=Object.assign({},o,t.changes),i=$n(a,e),s=i!==t.id;return s&&(n[t.id]=i,delete r.entities[t.id]),r.entities[i]=a,s}(r,n,t)).length>0;o&&(t.ids=Object.values(t.entities).map(n=>$n(n,e)))}}function i(n,r){const[o,i]=Qn(n,e,r);t(o,r),a(i,r)}return{removeAll:qn(function(e){Object.assign(e,{ids:[],entities:{}})}),addOne:Yn(n),addMany:Yn(t),setOne:Yn(r),setMany:Yn(function(e,n){e=Vn(e);for(const t of e)r(t,n)}),setAll:Yn(function(e,n){e=Vn(e),n.ids=[],n.entities={},t(e,n)}),updateOne:Yn(function(e,n){return a([e],n)}),updateMany:Yn(a),upsertOne:Yn(function(e,n){return i([e],n)}),upsertMany:Yn(i),removeOne:Yn(function(e,n){return o([e],n)}),removeMany:Yn(o)}}function Jn(e,n,t){const r=function(e,n,t){let r=0,o=e.length;for(;r<o;){let a=r+o>>>1;t(n,e[a])>=0?r=a+1:o=a}return r}(e,n,t);return e.splice(r,0,n),e}function Zn(e={}){const{selectId:n,sortComparer:t}={sortComparer:!1,selectId:e=>e.id,...e},r=t?function(e,n){const{removeOne:t,removeMany:r,removeAll:o}=Hn(e);function a(n,t,r){n=Vn(n);const o=new Set(r??Wn(t.ids)),a=new Set,i=n.filter(n=>{const t=$n(n,e),r=!a.has(t);return r&&a.add(t),!o.has(t)&&r});0!==i.length&&c(t,i)}function i(n,t){let r={};if(0!==(n=Vn(n)).length){for(const o of n){const n=e(o);r[n]=o,delete t.entities[n]}n=Vn(r),c(t,n)}}function s(n,t){let r=!1,o=!1;for(let a of n){const n=t.entities[a.id];if(!n)continue;r=!0,Object.assign(n,a.changes);const i=e(n);if(a.id!==i){o=!0,delete t.entities[a.id];const e=t.ids.indexOf(a.id);t.ids[e]=i,t.entities[i]=n}}r&&c(t,[],r,o)}function l(n,t){const[r,o,i]=Qn(n,e,t);r.length&&a(r,t,i),o.length&&s(o,t)}const c=(t,r,o,a)=>{const i=Wn(t.entities),s=Wn(t.ids),l=t.entities;let c=s;a&&(c=new Set(s));let d=[];for(const e of c){const n=i[e];n&&d.push(n)}const A=0===d.length;for(const t of r)l[e(t)]=t,A||Jn(d,t,n);A?d=r.slice().sort(n):o&&d.sort(n);const u=d.map(e);(function(e,n){if(e.length!==n.length)return!1;for(let t=0;t<e.length;t++)if(e[t]!==n[t])return!1;return!0})(s,u)||(t.ids=u)};return{removeOne:t,removeMany:r,removeAll:o,addOne:Yn(function(e,n){return a([e],n)}),updateOne:Yn(function(e,n){return s([e],n)}),upsertOne:Yn(function(e,n){return l([e],n)}),setOne:Yn(function(e,n){return i([e],n)}),setMany:Yn(i),setAll:Yn(function(e,n){e=Vn(e),n.entities={},n.ids=[],a(e,n,[])}),addMany:Yn(a),updateMany:Yn(s),upsertMany:Yn(l)}}(n,t):Hn(n),o=function(e){return{getInitialState:function(n={},t){const r=Object.assign({ids:[],entities:{}},n);return t?e.setAll(r,t):r}}}(r),a={getSelectors:function(e,n={}){const{createSelector:t=qe}=n,r=e=>e.ids,o=e=>e.entities,a=t(r,o,(e,n)=>e.map(e=>n[e])),i=(e,n)=>n,s=(e,n)=>e[n],l=t(r,e=>e.length);if(!e)return{selectIds:r,selectEntities:o,selectAll:a,selectTotal:l,selectById:t(o,i,s)};const c=t(e,o);return{selectIds:t(e,r),selectEntities:c,selectAll:t(e,a),selectTotal:t(e,l),selectById:t(c,i,s)}}};return{selectId:n,sortComparer:t,...o,...a,...r}}var Kn="listener",Xn="completed",Gn="cancelled",et=`task-${Gn}`,nt=`task-${Xn}`,tt=`${Kn}-${Gn}`,rt=`${Kn}-${Xn}`,ot=class{constructor(e){this.code=e,this.message=`task ${Gn} (reason: ${e})`}name="TaskAbortError";message},at=(e,n)=>{if("function"!=typeof e)throw new TypeError(Dt(32))},it=()=>{},st=(e,n=it)=>(e.catch(n),e),lt=(e,n)=>(e.addEventListener("abort",n,{once:!0}),()=>e.removeEventListener("abort",n)),ct=e=>{if(e.aborted)throw new ot(e.reason)};function dt(e,n){let t=it;return new Promise((r,o)=>{const a=()=>o(new ot(e.reason));e.aborted?a():(t=lt(e,a),n.finally(()=>t()).then(r,o))}).finally(()=>{t=it})}var At=e=>n=>st(dt(e,n).then(n=>(ct(e),n))),ut=e=>{const n=At(e);return e=>n(new Promise(n=>setTimeout(n,e)))},{assign:ft}=Object,pt={},ht="listenerMiddleware",mt=(e,n)=>(t,r)=>{at(t);const o=new AbortController;var a;a=o,lt(e,()=>a.abort(e.reason));const i=(async()=>{try{return await Promise.resolve(),{status:"ok",value:await(async()=>{ct(e),ct(o.signal);const n=await t({pause:At(o.signal),delay:ut(o.signal),signal:o.signal});return ct(o.signal),n})()}}catch(e){return{status:e instanceof ot?"cancelled":"rejected",error:e}}finally{o.abort(nt)}})();return r?.autoJoin&&n.push(i.catch(it)),{result:At(e)(i),cancel(){o.abort(et)}}},gt=e=>{let{type:n,actionCreator:t,matcher:r,predicate:o,effect:a}=e;if(n)o=Ve(n).match;else if(t)n=t.type,o=t.match;else if(r)o=r;else if(!o)throw new Error(Dt(21));return at(a),{predicate:o,type:n,effect:a}},bt=ft(e=>{const{type:n,predicate:t,effect:r}=gt(e);return{id:kn(),effect:r,type:n,predicate:t,pending:new Set,unsubscribe:()=>{throw new Error(Dt(22))}}},{withTypes:()=>bt}),Et=(e,n)=>{const{type:t,effect:r,predicate:o}=gt(n);return Array.from(e.values()).find(e=>("string"==typeof t?e.type===t:e.predicate===o)&&e.effect===r)},xt=e=>{e.pending.forEach(e=>{e.abort(tt)})},Ct=(e,n,t)=>{try{e(n,t)}catch(e){setTimeout(()=>{throw e},0)}},Bt=ft(Ve(`${ht}/add`),{withTypes:()=>Bt}),yt=Ve(`${ht}/removeAll`),vt=ft(Ve(`${ht}/remove`),{withTypes:()=>vt}),kt=(...e)=>{console.error(`${ht}/error`,...e)},wt=(e={})=>{const n=new Map,t=new Map,{extra:r,onError:o=kt}=e;at(o);const a=e=>{return(t=Et(n,e)??bt(e)).unsubscribe=()=>n.delete(t.id),n.set(t.id,t),e=>{t.unsubscribe(),e?.cancelActive&&xt(t)};var t};ft(a,{withTypes:()=>a});const i=e=>{const t=Et(n,e);return t&&(t.unsubscribe(),e.cancelActive&&xt(t)),!!t};ft(i,{withTypes:()=>i});const s=async(e,i,s,l)=>{const c=new AbortController,d=((e,n)=>(t,r)=>st((async(t,r)=>{ct(n);let o=()=>{};const a=[new Promise((n,r)=>{let a=e({predicate:t,effect:(e,t)=>{t.unsubscribe(),n([e,t.getState(),t.getOriginalState()])}});o=()=>{a(),r()}})];null!=r&&a.push(new Promise(e=>setTimeout(e,r,null)));try{const e=await dt(n,Promise.race(a));return ct(n),e}finally{o()}})(t,r)))(a,c.signal),A=[];try{e.pending.add(c),(e=>{const n=t.get(e)??0;t.set(e,n+1)})(e),await Promise.resolve(e.effect(i,ft({},s,{getOriginalState:l,condition:(e,n)=>d(e,n).then(Boolean),take:d,delay:ut(c.signal),pause:At(c.signal),extra:r,signal:c.signal,fork:mt(c.signal,A),unsubscribe:e.unsubscribe,subscribe:()=>{n.set(e.id,e)},cancelActiveListeners:()=>{e.pending.forEach((e,n,t)=>{e!==c&&(e.abort(tt),t.delete(e))})},cancel:()=>{c.abort(tt),e.pending.delete(c)},throwIfCancelled:()=>{ct(c.signal)}})))}catch(e){e instanceof ot||Ct(o,e,{raisedBy:"effect"})}finally{await Promise.all(A),c.abort(rt),(e=>{const n=t.get(e)??1;1===n?t.delete(e):t.set(e,n-1)})(e),e.pending.delete(c)}},l=((e,n)=>()=>{for(const e of n.keys())xt(e);e.clear()})(n,t);return{middleware:e=>t=>r=>{if(!h(r))return t(r);if(Bt.match(r))return a(r.payload);if(yt.match(r))return void l();if(vt.match(r))return i(r.payload);let c=e.getState();const d=()=>{if(c===pt)throw new Error(Dt(23));return c};let A;try{if(A=t(r),n.size>0){const t=e.getState(),a=Array.from(n.values());for(const n of a){let a=!1;try{a=n.predicate(r,t,c)}catch(e){a=!1,Ct(o,e,{raisedBy:"predicate"})}a&&s(n,r,e,d)}}}finally{c=pt}return A},startListening:a,stopListening:i,clearListeners:l}},St=e=>({middleware:e,applied:new Map}),jt=()=>{const e=kn(),n=new Map,t=Object.assign(Ve("dynamicMiddleware/add",(...n)=>({payload:n,meta:{instanceId:e}})),{withTypes:()=>t}),r=Object.assign(function(...e){e.forEach(e=>{Xe(n,e,St)})},{withTypes:()=>r}),o=gn(t,(e=>n=>n?.meta?.instanceId===e)(e));return{middleware:e=>t=>a=>o(a)?(r(...a.payload),e.dispatch):(e=>f(...Array.from(n.values()).map(n=>Xe(n.applied,e,n.middleware))))(e)(t)(a),addMiddleware:r,withMiddleware:t,instanceId:e}},Nt=e=>e.flatMap(e=>{return"reducerPath"in(n=e)&&"string"==typeof n.reducerPath?[[e.reducerPath,e.reducer]]:Object.entries(e);var n}),zt=Symbol.for("rtk-state-proxy-original"),Pt=new WeakMap,_t=(e,n,t)=>Xe(Pt,e,()=>new Proxy(e,{get:(e,r,o)=>{if(r===zt)return e;const a=Reflect.get(e,r,o);if(void 0===a){const e=t[r];if(void 0!==e)return e;const o=n[r];if(o){const e=o(void 0,{type:kn()});if(void 0===e)throw new Error(Dt(24));return t[r]=e,e}}return a}})),Ot=e=>{if(!(n=e)||!n[zt])throw new Error(Dt(25));var n;return e[zt]},Tt={},Mt=(e=Tt)=>e;function Rt(...e){const n=Object.fromEntries(Nt(e)),t=()=>Object.keys(n).length?d(n):Mt;let r=t();function o(e,n){return r(e,n)}o.withLazyLoadedSlices=()=>o;const a={},i=Object.assign(function(e,t){return function(r,...o){return e(_t(t?t(r,...o):r,n,a),...o)}},{original:Ot});return Object.assign(o,{inject:(e,i={})=>{const{reducerPath:s,reducer:l}=e,c=n[s];return!i.overrideExisting&&c&&c!==l||(i.overrideExisting&&c!==l&&delete a[s],n[s]=l,r=t()),o},selector:i})}function Dt(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}},9906:function(e,n,t){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(n,"__esModule",{value:!0});const o=t(4848),a=t(6540),i=r(t(7580));n.default=({secrets:e,onUpdate:n})=>{const[t,r]=(0,a.useState)(new Set),[s,l]=(0,a.useState)(new Set),[c,d]=(0,a.useState)(null),[A,u]=(0,a.useState)(""),f=()=>{d(null),u("")},p=(t,r)=>{const a=s.has(r);return c===r?(0,o.jsxs)("div",{className:"secret-edit-mode",children:[(0,o.jsx)("textarea",{className:"secret-edit-input",value:A,onChange:e=>u(e.target.value),rows:2,placeholder:"Enter secret value..."}),(0,o.jsxs)("div",{className:"secret-edit-controls",children:[(0,o.jsx)("button",{className:"save-btn",onClick:()=>{const[t,o]=r.split(".");(async(t,r)=>{try{let o;try{o=JSON.parse(A)}catch{o=A}const a=await fetch(`/devserver/api/stores/secrets/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({[r]:o})});if(!a.ok)throw new Error(`Failed to update secret: ${a.statusText}`);const i=await a.json(),s={...e};s[t]||(s[t]={}),s[t]=i.secrets,n(s),d(null),u("")}catch(e){console.error("Error updating secret:",e),alert(`Failed to update secret: ${e instanceof Error?e.message:String(e)}`)}})(t,o)},children:"Save"}),(0,o.jsx)("button",{className:"cancel-btn",onClick:f,children:"Cancel"})]})]}):a?null==t?(0,o.jsx)("span",{className:"empty-secret-value",children:"(empty)"}):"string"==typeof t?(0,o.jsxs)("span",{className:"string-secret-value",children:['"',t,'"']}):(0,o.jsx)("span",{className:"complex-secret-value",children:JSON.stringify(t)}):(0,o.jsx)("span",{className:"hidden-secret-value",children:"•".repeat(12)})},h=Object.keys(e).sort();return 0===h.length?(0,o.jsx)("div",{className:"secrets-store-viewer empty",children:(0,o.jsxs)("div",{className:"empty-message",children:[(0,o.jsx)("span",{className:"empty-icon",children:"🔐"}),(0,o.jsx)("p",{children:"No secrets stored"}),(0,o.jsx)("button",{className:"add-section-btn",onClick:()=>(async t=>{const r=prompt("Enter secret name:");if(!r)return;const o=prompt("Enter secret value:");if(null!==o)try{const a=await fetch(`/devserver/api/stores/secrets/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({[r]:o})});if(!a.ok)throw new Error(`Failed to add secret: ${a.statusText}`);const i=await a.json(),s={...e};s[t]||(s[t]={}),s[t]=i.secrets,n(s)}catch(e){console.error("Error adding secret:",e),alert(`Failed to add secret: ${e instanceof Error?e.message:String(e)}`)}})("default"),children:"Add First Secret"})]})}):(0,o.jsx)("div",{className:"secrets-store-viewer compact-store",children:(0,o.jsxs)("div",{className:"store-sections",children:[h.map(a=>{const c=e[a],A=Object.keys(c).sort(),f=t.has(a);return(0,o.jsxs)("div",{className:"store-section",children:[(0,o.jsxs)("div",{className:"section-header",onClick:()=>(e=>{const n=new Set(t);n.has(e)?n.delete(e):n.add(e),r(n)})(a),children:[(0,o.jsx)("span",{className:"expand-icon",children:f?"▼":"▶"}),(0,o.jsx)("span",{className:"section-name",children:a}),(0,o.jsxs)("span",{className:"field-count",children:["(",A.length,")"]})]}),f&&(0,o.jsx)("div",{className:"section-fields",children:A.map(t=>{const r=c[t],A=`${a}.${t}`;return(0,o.jsxs)("div",{className:"field-row",children:[(0,o.jsx)("div",{className:"field-key",children:t}),(0,o.jsx)("div",{className:"field-value",children:p(r,A)}),(0,o.jsxs)("div",{className:"field-metadata",children:[(0,o.jsx)(i.default,{isVisible:s.has(A),onClick:()=>(e=>{const n=new Set(s);n.has(e)?n.delete(e):n.add(e),l(n)})(A),className:"metadata-icon"}),(0,o.jsx)("button",{className:"edit-icon",onClick:()=>((e,n,t)=>{d(`${e}.${n}`),u("string"==typeof t?t:JSON.stringify(t))})(a,t,r),title:"Edit",children:"✏️"}),(0,o.jsx)("button",{className:"delete-icon",onClick:()=>(async(t,r)=>{if(confirm(`Are you sure you want to delete the secret "${r}" from section "${t}"?`))try{const o={...e[t]};delete o[r];const a=await fetch(`/devserver/api/stores/secrets/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)});if(!a.ok)throw new Error(`Failed to delete secret: ${a.statusText}`);const i=await a.json(),s={...e};s[t]=i.secrets,n(s)}catch(e){console.error("Error deleting secret:",e),alert(`Failed to delete secret: ${e instanceof Error?e.message:String(e)}`)}})(a,t),title:"Delete",children:"🗑️"})]})]},t)})})]},a)}),0===h.length&&(0,o.jsx)("div",{className:"empty-store",children:"No secrets configured"})]})})}},9982:(e,n,t)=>{e.exports=t(4477)}},r={};function o(e){var n=r[e];if(void 0!==n)return n.exports;var a=r[e]={id:e,exports:{}};return t[e].call(a.exports,a,a.exports,o),a.exports}o.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return o.d(n,{a:n}),n},n=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,o.t=function(t,r){if(1&r&&(t=this(t)),8&r)return t;if("object"==typeof t&&t){if(4&r&&t.__esModule)return t;if(16&r&&"function"==typeof t.then)return t}var a=Object.create(null);o.r(a);var i={};e=e||[null,n({}),n([]),n(n)];for(var s=2&r&&t;("object"==typeof s||"function"==typeof s)&&!~e.indexOf(s);s=n(s))Object.getOwnPropertyNames(s).forEach(e=>i[e]=()=>t[e]);return i.default=()=>t,o.d(a,i),a},o.d=(e,n)=>{for(var t in n)o.o(n,t)&&!o.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:n[t]})},o.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nc=void 0,o(6393)})();
|
|
3
|
+
//# sourceMappingURL=bundle.82dc5d29fffb9f205051.js.map
|