@openhands/agent-canvas 1.9.0 → 1.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/README.windows.md +2 -2
- package/build/assets/{acp-providers-C921BlYB.js → acp-providers-BkL3HWa3.js} +1 -1
- package/build/assets/active-backend-context-BBvP-bI2.js +2 -0
- package/build/assets/agent-context-settings-Bno1nwPL.js +1 -0
- package/build/assets/{agent-profiles-settings-BymJf3EP.js → agent-profiles-settings-DqoS7RL3.js} +1 -1
- package/build/assets/agent-server-conversation-service.api-0RztSdJJ.js +86 -0
- package/build/assets/agent-settings-BJHryp65.js +1 -0
- package/build/assets/{agent-settings-WzqXk6B4.js → agent-settings-h8hQz-IU.js} +2 -2
- package/build/assets/alert-banner-lrK-2_0Y.js +1 -0
- package/build/assets/{api-key-entry-screen-DI0I04O3.js → api-key-entry-screen-Qsb83VX1.js} +1 -1
- package/build/assets/{app-settings-DGistSFV.js → app-settings-r1RUbgGi.js} +1 -1
- package/build/assets/automation-detail-7LkL91j9.js +3 -0
- package/build/assets/automation-export-U2QNyNy6.js +2 -0
- package/build/assets/automation-setup-route-Bel9_Lue.js +1 -0
- package/build/assets/automation-templates-CRLDssaI.js +1 -0
- package/build/assets/automations-list-B2iV3ZKW.js +1 -0
- package/build/assets/{back-nav-button-D4ngzpSh.js → back-nav-button-B3pYwmUJ.js} +1 -1
- package/build/assets/backend-form-modal-OroTqnAv.js +1 -0
- package/build/assets/{backend-synced-settings-badge-BnzI8Ysj.js → backend-synced-settings-badge-DB4717Iu.js} +1 -1
- package/build/assets/{badge-1Mf1iPcX.js → badge-yR53enbU.js} +1 -1
- package/build/assets/{base-modal-BBuy0WQQ.js → base-modal-3NmIOKDm.js} +1 -1
- package/build/assets/bot-DuN83i3p.js +1 -0
- package/build/assets/{brand-button-DGN6Y9o6.js → brand-button-CJcwjnfb.js} +1 -1
- package/build/assets/{browser-D_ekTlTS.js → browser--eoQOo4M.js} +2 -2
- package/build/assets/{browser-tab-D4a4Ou_w.js → browser-tab-A94o33Vn.js} +1 -1
- package/build/assets/{chat-send-button-CgbcjD97.js → chat-send-button-B8n6-DQA.js} +1 -1
- package/build/assets/check-DLOKoFU9.js +1 -0
- package/build/assets/{checkmark-CxdXtM3b.js → checkmark-XZyokq_Y.js} +1 -1
- package/build/assets/chevron-down-CnIbtM6i.js +1 -0
- package/build/assets/circle-check-CxCYJrpZ.js +1 -0
- package/build/assets/{circle-plus-check-toggle-yTAS-nX3.js → circle-plus-check-toggle-BVzv5EkZ.js} +1 -1
- package/build/assets/{close-CDAVqnTn.js → close-ScPlnwyq.js} +1 -1
- package/build/assets/{cloud-funnel-analytics-CEOl5Gxr.js → cloud-funnel-analytics-CBQdPZl_.js} +1 -1
- package/build/assets/{combobox-caret-Bd2yySnF.js → combobox-caret-BlmRwiM8.js} +1 -1
- package/build/assets/command-menu-PsRXVBz2.js +1 -0
- package/build/assets/condenser-settings-w7L3EFvm.js +1 -0
- package/build/assets/{confirmation-modal-NCUPr2-O.js → confirmation-modal-DAH0XtOp.js} +1 -1
- package/build/assets/context-menu-list-item-BQhmFVEK.js +1 -0
- package/build/assets/{conversation-CUJ0Vo8g.js → conversation-BUzBZAc-.js} +7 -7
- package/build/assets/conversation-panel-pzAKsSDb.js +1 -0
- package/build/assets/conversation-pzAKsSDb.js +1 -0
- package/build/assets/{conversation-state-store-F62HvuI1.js → conversation-state-store-Bs8gA263.js} +1 -1
- package/build/assets/{conversation-store-C6hSXHw0.js → conversation-store-B8Eahyeg.js} +1 -1
- package/build/assets/{conversation-tab-empty-state-BCZ7rUMH.js → conversation-tab-empty-state-C9sfDOlt.js} +1 -1
- package/build/assets/{copy-z7idLzWO.js → copy-Drmhc2jD.js} +1 -1
- package/build/assets/{copy-to-clipboard-button-D_Lp6-Fl.js → copy-to-clipboard-button-DatoElj8.js} +1 -1
- package/build/assets/{device-verify-DLmolX8Q.js → device-verify-BIjXeW9N.js} +1 -1
- package/build/assets/{dist-hOnv1nn2.js → dist-Bl64nBZL.js} +1 -1
- package/build/assets/{dropdown-classes-BB8rzqXL.js → dropdown-classes-zFW7qPSK.js} +1 -1
- package/build/assets/entry.client-DzbDyLkV.js +2 -0
- package/build/assets/enum-filter-dropdown-CctILg5t.js +1 -0
- package/build/assets/{environment-switch-overlay-BepBBX66.js → environment-switch-overlay-Cvmo6clk.js} +1 -1
- package/build/assets/{extensions-hub-R3KNv-5V.js → extensions-hub-DOmHPGTA.js} +1 -1
- package/build/assets/{extensions-navigation-CfWFmI1I.js → extensions-navigation-6zU5M1pa.js} +1 -1
- package/build/assets/{external-link-BdBSg8rk.js → external-link-zWbg5KXS.js} +1 -1
- package/build/assets/file-text-RecuaId_.js +1 -0
- package/build/assets/files-tab-BzofBmF4.js +1 -0
- package/build/assets/{folder-C86qXV7M.js → folder-C1ou4_DT.js} +1 -1
- package/build/assets/{form-control-classes-DAfsCJTe.js → form-control-classes-DLN3Qgub.js} +1 -1
- package/build/assets/format-relative-time-DGPQlPx0.js +1 -0
- package/build/assets/format-time-delta-BIR5Os7T.js +1 -0
- package/build/assets/{git-provider-icon-BZqqUPlm.js → git-provider-icon-BLMlwy02.js} +1 -1
- package/build/assets/{git-repo-dropdown-DEpOwUez.js → git-repo-dropdown-B7RvO70z.js} +1 -1
- package/build/assets/git-repo-dropdown-B_PTq4ol.js +1 -0
- package/build/assets/{highlighted-source-view-CX9oIoVT.js → highlighted-source-view-CgJfD5VT.js} +1 -1
- package/build/assets/home-DEZaZqYv.js +1 -0
- package/build/assets/home-r89Vj2td.js +1 -0
- package/build/assets/{home-store-Ch1ErdBc.js → home-store-D7CjMN_-.js} +1 -1
- package/build/assets/{iconBase-B2rQun3J.js → iconBase-C2sR-uAp.js} +1 -1
- package/build/assets/index-home-r89Vj2td.js +1 -0
- package/build/assets/install-server-modal-BTwK5lbi.js +1 -0
- package/build/assets/kebab-menu-item-content-C4CkeiJO.js +1 -0
- package/build/assets/{launch-B1POpHuP.js → launch-DVlx4v9o.js} +1 -1
- package/build/assets/{link-external-BDBCz-_z.js → link-external-BNZzCM1I.js} +1 -1
- package/build/assets/{list-todo-DtiL3lTp.js → list-todo-CheUtB7F.js} +1 -1
- package/build/assets/llm-not-configured-banner-CwKu8C6g.js +27 -0
- package/build/assets/llm-settings-BJotLQND.js +1 -0
- package/build/assets/llm-settings-CDM-5H2A.js +1 -0
- package/build/assets/{llm-subscription-service-DBJbfd8Z.js → llm-subscription-service-7eVfDIE1.js} +1 -1
- package/build/assets/loader-circle-C5AnEN8r.js +1 -0
- package/build/assets/{loading-spinner-DfZ_bhV7.js → loading-spinner-CN3riY7k.js} +1 -1
- package/build/assets/{manage-backends-modal-CwyWsiag.js → manage-backends-modal-HNWKLYhq.js} +1 -1
- package/build/assets/manifest-2a36a8f8.js +1 -0
- package/build/assets/manifest-subpage-layout-D-m-h8_t.js +1 -0
- package/build/assets/map-provider-7Bp2aih5.js +1 -0
- package/build/assets/markdown-renderer-BiiiIznl.js +8 -0
- package/build/assets/mcp-gLgPP7AS.js +9 -0
- package/build/assets/mcp-marketplace-utils-Dr_HG_ol.js +1 -0
- package/build/assets/messages-D1cbVhRK.js +40 -0
- package/build/assets/{modal-backdrop-X-vKo61e.js → modal-backdrop-BSzNhM4r.js} +1 -1
- package/build/assets/{modal-body-CMsDpalT.js → modal-body-duRaxj_K.js} +1 -1
- package/build/assets/{modal-classes-B6PDrxXo.js → modal-classes-CLEXO6dj.js} +1 -1
- package/build/assets/{modal-close-button-DyxBZaAb.js → modal-close-button-D0aT02hs.js} +1 -1
- package/build/assets/mouse-pointer-click-Px-dXWcS.js +1 -0
- package/build/assets/{navigation-context-BOGzIng3.js → navigation-context-CQZwH_tC.js} +1 -1
- package/build/assets/navigation-link-Bxo3-4vo.js +1 -0
- package/build/assets/npm-DRzJF5Zn.js +1 -0
- package/build/assets/onboarding-DSr8hOpk.js +1 -0
- package/build/assets/onboarding-modal-C6Euf7N4.js +1 -0
- package/build/assets/{openhands-logo-CmYvJXBa.js → openhands-logo-BS-Epajy.js} +1 -1
- package/build/assets/{organization-service.api-UDy63-oC.js → organization-service.api-C4GYWwj9.js} +1 -1
- package/build/assets/{pencil-BjgtZmWp.js → pencil-Bl3GWhgq.js} +1 -1
- package/build/assets/{planner-tab-BWk8885v.js → planner-tab-CZcguxTK.js} +1 -1
- package/build/assets/{plugins-management-service-CjkgF2dd.js → plugins-management-service-BmDzOQsd.js} +1 -1
- package/build/assets/plus-CtzlyAoF.js +1 -0
- package/build/assets/{profiles-service.api-CukSFLzz.js → profiles-service.api-CoLTwjc1.js} +1 -1
- package/build/assets/{providers-CqUWC85T.js → providers-tBzTpz1w.js} +1 -1
- package/build/assets/{proxy-BBUG3sd2.js → proxy-DCI9S-LA.js} +1 -1
- package/build/assets/{puzzle-BoNc6zZ8.js → puzzle-B3v361yY.js} +1 -1
- package/build/assets/recommended-automations-launcher-BbJAJVED.js +1 -0
- package/build/assets/{refresh-cw-BrM5ZAZD.js → refresh-cw-B9GhC3QC.js} +1 -1
- package/build/assets/root-BfM_kC_d.css +1 -0
- package/build/assets/root-gstBEjty.js +2 -0
- package/build/assets/root-layout-BIAFLP9p.js +2 -0
- package/build/assets/{schema-field-nImDoY6-.js → schema-field-zhsVDllR.js} +1 -1
- package/build/assets/{sdk-section-page-BxMrtUNV.js → sdk-section-page-CS4GWn0y.js} +1 -1
- package/build/assets/{search-7DRiGm4Z.js → search-BatSpWed.js} +1 -1
- package/build/assets/search-CYaiKHRp.js +1 -0
- package/build/assets/{secrets-service-Dhjh3HhH.js → secrets-service-DjgGduXk.js} +1 -1
- package/build/assets/{secrets-settings-CPdxceT_.js → secrets-settings-f-qahfbi.js} +1 -1
- package/build/assets/{segmented-toggle-Do6oyepX.js → segmented-toggle-SmvsR3jW.js} +1 -1
- package/build/assets/settings-CWFxymAf.js +1 -0
- package/build/assets/settings-DQd0xLEw.js +1 -0
- package/build/assets/{settings-dropdown-input-DYCULKpp.js → settings-dropdown-input-TWIeiG02.js} +1 -1
- package/build/assets/{settings-gear-TYXnELES.js → settings-gear-DaJj6Pde.js} +1 -1
- package/build/assets/{settings-index-C9o2NBO0.js → settings-index-BVwy9JEp.js} +1 -1
- package/build/assets/{settings-input-B-q2gkVy.js → settings-input-D61Vzp9e.js} +1 -1
- package/build/assets/settings-like-page-layout-classes-Cw4Yzv_P.js +1 -0
- package/build/assets/{settings-list-classes-WpQi0q1L.js → settings-list-classes-sE0ASr1s.js} +1 -1
- package/build/assets/{settings-modal-CEK0AIx6.js → settings-modal-D6D5ngET.js} +1 -1
- package/build/assets/{settings-section-header-context-CnIIQAUn.js → settings-section-header-context-BOJ_Fbak.js} +1 -1
- package/build/assets/settings-service.api-DZp7E7A9.js +1 -0
- package/build/assets/{settings-switch-LqKdGxHL.js → settings-switch-Drt-rF5s.js} +1 -1
- package/build/assets/{settings-utils-BL_Z9uIe.js → settings-utils-gw2ppAvw.js} +1 -1
- package/build/assets/{shared-conversation-Bu-dQlgp.js → shared-conversation-DIxZjElr.js} +1 -1
- package/build/assets/shield-check-D2cpEpv3.js +1 -0
- package/build/assets/{sidebar-layout-oHBGQmLh.js → sidebar-layout-Dxg6zc2K.js} +1 -1
- package/build/assets/sidebar-mobile-menu-toggle-OoZBHxaT.js +1 -0
- package/build/assets/{sidebar-nav-link-CrujNA09.js → sidebar-nav-link-CxLoG-dG.js} +1 -1
- package/build/assets/sidebar-store-BJeYY-E9.js +1 -0
- package/build/assets/{skill-card-pill-row-CZBI7OqH.js → skill-card-pill-row-B_BYBONu.js} +1 -1
- package/build/assets/{skill-icon-badge-BOov_phZ.js → skill-icon-badge-CN41Hy9l.js} +1 -1
- package/build/assets/skill-scope-B1Per5XI.js +1 -0
- package/build/assets/{skills-CYFLsN5U.js → skills-B0IliMxw.js} +1 -1
- package/build/assets/{skills-plugins-D0PiHWAD.js → skills-plugins-B3AO6sMz.js} +1 -1
- package/build/assets/skills-settings-DmmgJ6CT.js +2 -0
- package/build/assets/sparkles-g7y3r-Ut.js +1 -0
- package/build/assets/{styled-tooltip-C7grwnOX.js → styled-tooltip-C5C07RQC.js} +1 -1
- package/build/assets/{switch-skeleton-BQoOhQTB.js → switch-skeleton-DwOoCqaL.js} +1 -1
- package/build/assets/{syntax-highlighter-B92AFGMy.js → syntax-highlighter-BGDg_7w9.js} +1 -1
- package/build/assets/{task-list-tab-R3ac6m7O.js → task-list-tab-C19Q_JNf.js} +1 -1
- package/build/assets/{terminal-cMS3RgVE.js → terminal-BUpID2wS.js} +1 -1
- package/build/assets/{terminal-yqkNdEAx.js → terminal-CbuMRYal.js} +1 -1
- package/build/assets/{toggle-switch-BeSrbgCg.js → toggle-switch-CIioisto.js} +1 -1
- package/build/assets/{trash-2-wW5TWcdN.js → trash-2-CzDVN-Iw.js} +1 -1
- package/build/assets/{typography-iYhzLlHO.js → typography-D9tiHct7.js} +1 -1
- package/build/assets/{u-check-circle-DBEvndTS.js → u-check-circle-BKn1spCL.js} +1 -1
- package/build/assets/{u-edit-809W9D9T.js → u-edit-DAkcF52u.js} +1 -1
- package/build/assets/{u-robot-CJtSzy5X.js → u-robot-BvAOA2ZD.js} +1 -1
- package/build/assets/{use-acp-credential-form-DUxbxmbq.js → use-acp-credential-form-DJmmJKMo.js} +1 -1
- package/build/assets/{use-activate-agent-profile-CDHA52tC.js → use-activate-agent-profile-CeFfYwu_.js} +1 -1
- package/build/assets/{use-agent-profiles-TsOdIyw5.js → use-agent-profiles-BHLkLbRR.js} +1 -1
- package/build/assets/{use-breakpoint-DA7JqsRN.js → use-breakpoint-DWtihr9g.js} +1 -1
- package/build/assets/{use-can-manage-org-profiles-Bt1M71u5.js → use-can-manage-org-profiles-Bu4y8gSx.js} +1 -1
- package/build/assets/{use-click-outside-element-DKqpqEEm.js → use-click-outside-element-W6Os4Nlb.js} +1 -1
- package/build/assets/{use-cloud-current-user-id-DWt7HCgf.js → use-cloud-current-user-id-QD9x3ySO.js} +1 -1
- package/build/assets/{use-config-CxlEdf_v.js → use-config-CPwqciXN.js} +1 -1
- package/build/assets/{use-create-conversation-nOJ6Um5h.js → use-create-conversation-DWaSVUOB.js} +1 -1
- package/build/assets/{use-create-secret-Dj5ang9x.js → use-create-secret-BsOfOLvg.js} +1 -1
- package/build/assets/use-is-authed-Bka89Xmm.js +1 -0
- package/build/assets/{use-is-creating-conversation-CAggrM75.js → use-is-creating-conversation-CVefC9Ns.js} +1 -1
- package/build/assets/{use-launch-skill-in-chat-DKzCTMt0.js → use-launch-skill-in-chat-BcKNjxxd.js} +1 -1
- package/build/assets/use-llm-profiles-CU8ah1pz.js +1 -0
- package/build/assets/use-manifest-capabilities-DBYPjyV6.js +1 -0
- package/build/assets/{use-onboarding-completion-gxQlcEy2.js → use-onboarding-completion-CtNJxkXG.js} +1 -1
- package/build/assets/{use-plugins-marketplace-CVO7sXYR.js → use-plugins-marketplace-ZEA-gyM9.js} +1 -1
- package/build/assets/use-save-agent-profile-DgI_Uz9a.js +1 -0
- package/build/assets/{use-save-settings-L3aMaDeS.js → use-save-settings-pSjRhD_m.js} +1 -1
- package/build/assets/{use-settings-8nt3DGxW.js → use-settings-BHWsOcIG.js} +1 -1
- package/build/assets/use-settings-nav-items-CQgkxUbV.js +16 -0
- package/build/assets/use-tracking-CGCsBWhg.js +3 -0
- package/build/assets/{use-user-conversation-BIIpGUgM.js → use-user-conversation-DRfEU8x0.js} +1 -1
- package/build/assets/{useInfiniteQuery-BLRVmVPU.js → useInfiniteQuery-DbCv0Jzd.js} +1 -1
- package/build/assets/{useMutation-CaSHLnX0.js → useMutation-ChpkYxI5.js} +1 -1
- package/build/assets/{useQueries--d_WWAzc.js → useQueries-Cjv3E8_1.js} +1 -1
- package/build/assets/useQuery-BCnzy4LX.js +1 -0
- package/build/assets/utils-DPQfkd-7.js +1 -0
- package/build/assets/{vendor-markdown-BML7QbqS.js → vendor-markdown-j0kYzV48.js} +1 -1
- package/build/assets/{vendor-styling-Bcgpimp9.js → vendor-styling-Ck5D_A2Q.js} +6 -6
- package/build/assets/{vendor~browser-jaN4ilxM.js → vendor~browser-C6uXH-dw.js} +2 -2
- package/build/assets/vendor~browser-DJ1pl_wn.js +47 -0
- package/build/assets/{vendor~browser-tab-_-VCXq8n.js → vendor~browser-tab-C5uuAxZX.js} +1 -1
- package/build/assets/vendor~entry.client-CgNUwtQL.js +1 -0
- package/build/assets/{vendor~entry.client-BcYIVQvB.js → vendor~entry.client-zSIea5EO.js} +2 -2
- package/build/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~cy4jtuc2-rfV8mQ9m.js +1 -0
- package/build/assets/{vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~b0bpqexo-CbTboogo.js → vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kv3pap4j-oGvLV0dO.js} +4 -4
- package/build/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~lq5hicxx-cHFhpUBq.js +26 -0
- package/build/assets/{vendor~files-tab-C7RmQJwN.js → vendor~files-tab-C87pjSpi.js} +1 -1
- package/build/assets/{vendor~index-home~home~conversation-panel~conversation-Bqp1ZqJM.js → vendor~index-home~home~conversation-panel~conversation-DiXf0dkj.js} +1 -1
- package/build/assets/{vendor~conversation-panel~conversation~alert-banner-BNzz5FuZ.js → vendor~index-home~home~conversation-panel~conversation~alert-banner-B3qC_oj8.js} +1 -1
- package/build/assets/{vendor~launch-ChXCOGw8.js → vendor~launch-CHwEQG6e.js} +1 -1
- package/build/assets/vendor~module-DyG7x7JT.js +2 -0
- package/build/assets/{vendor~root-layout~conversation-panel~conversation-BCn8lzeG.js → vendor~root-layout~conversation-panel~conversation-DEzjR4K7.js} +1 -1
- package/build/assets/{vendor~root-layout~conversation-panel~conversation~shared-conversation-DRblkyXD.js → vendor~root-layout~conversation-panel~conversation~shared-conversation-DOuig0C0.js} +1 -1
- package/build/assets/vendor~root-layout~conversation-panel~conversation~skills-settings~automations-list~shared-~bovqqk8e-U-xdsAEx.js +1 -0
- package/build/assets/{vendor~root-layout~index-home~home~conversation-panel~conversation~automation-setup-route-B_L-gcOG.js → vendor~root-layout~index-home~home~conversation-panel~conversation~automation-setup-route-CjECvSl5.js} +1 -1
- package/build/assets/{vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation-sjx0x5ac.js → vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation-CQR5Sa0H.js} +1 -1
- package/build/assets/{vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~gy8zbn65-CGt6bWRT.js → vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~gxu4j2ea-Cwhh3zLe.js} +1 -1
- package/build/assets/{vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~dfc8ddxy-tTyxnjXT.js → vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~hjcjabwg-CuQhkiS7.js} +1 -1
- package/build/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~9pstowjp-BOVIFA_g.js +73 -0
- package/build/assets/{vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~dufan6ng-Dtdw8H0q.js → vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~ht43enc2-C0JXQb_q.js} +162 -54
- package/build/assets/{verification-settings-DBsnSXC3.js → verification-settings-BItwt998.js} +1 -1
- package/build/assets/wrench-B1_H-tL1.js +1 -0
- package/build/assets/x-RYDBg-e2.js +1 -0
- package/build/assets/{x-mark-jcTkPiOB.js → x-mark-BopmFoBq.js} +1 -1
- package/build/assets/zap-tbKDzCe3.js +1 -0
- package/build/index.html +4 -4
- package/build/locales/ar/openhands.json +108 -5
- package/build/locales/ca/openhands.json +108 -5
- package/build/locales/de/openhands.json +108 -5
- package/build/locales/en/openhands.json +108 -5
- package/build/locales/es/openhands.json +108 -5
- package/build/locales/fr/openhands.json +108 -5
- package/build/locales/it/openhands.json +108 -5
- package/build/locales/ja/openhands.json +108 -5
- package/build/locales/ko-KR/openhands.json +108 -5
- package/build/locales/no/openhands.json +108 -5
- package/build/locales/pt/openhands.json +108 -5
- package/build/locales/tr/openhands.json +108 -5
- package/build/locales/uk/openhands.json +108 -5
- package/build/locales/zh-CN/openhands.json +108 -5
- package/build/locales/zh-TW/openhands.json +108 -5
- package/build/mockServiceWorker.js +21 -9
- package/config/defaults.json +3 -3
- package/dist/api/agent-server-adapter.cjs +3 -3
- package/dist/api/agent-server-adapter.cjs.map +1 -1
- package/dist/api/agent-server-adapter.d.ts +32 -5
- package/dist/api/agent-server-adapter.js +120 -91
- package/dist/api/agent-server-adapter.js.map +1 -1
- package/dist/api/automation-service/automation-service.api.cjs +1 -1
- package/dist/api/automation-service/automation-service.api.cjs.map +1 -1
- package/dist/api/automation-service/automation-service.api.d.ts +5 -0
- package/dist/api/automation-service/automation-service.api.js +11 -0
- package/dist/api/automation-service/automation-service.api.js.map +1 -1
- package/dist/api/backend-registry/active-store.cjs +1 -1
- package/dist/api/backend-registry/active-store.cjs.map +1 -1
- package/dist/api/backend-registry/active-store.js +36 -31
- package/dist/api/backend-registry/active-store.js.map +1 -1
- package/dist/api/backend-registry/url-selection.cjs +2 -0
- package/dist/api/backend-registry/url-selection.cjs.map +1 -0
- package/dist/api/backend-registry/url-selection.d.ts +31 -0
- package/dist/api/backend-registry/url-selection.js +29 -0
- package/dist/api/backend-registry/url-selection.js.map +1 -0
- package/dist/api/cloud/conversation-service.api.cjs +1 -1
- package/dist/api/cloud/conversation-service.api.cjs.map +1 -1
- package/dist/api/cloud/conversation-service.api.d.ts +19 -2
- package/dist/api/cloud/conversation-service.api.js +51 -47
- package/dist/api/cloud/conversation-service.api.js.map +1 -1
- package/dist/api/conversation-file-upload.api.cjs +1 -1
- package/dist/api/conversation-file-upload.api.js +10 -10
- package/dist/api/conversation-service/agent-server-conversation-service.api.cjs +1 -1
- package/dist/api/conversation-service/agent-server-conversation-service.api.cjs.map +1 -1
- package/dist/api/conversation-service/agent-server-conversation-service.api.js +55 -61
- package/dist/api/conversation-service/agent-server-conversation-service.api.js.map +1 -1
- package/dist/api/event-service/event-service.api.cjs +1 -1
- package/dist/api/event-service/event-service.api.js +12 -12
- package/dist/api/launch-child-conversation-client-tool.cjs +47 -0
- package/dist/api/launch-child-conversation-client-tool.cjs.map +1 -0
- package/dist/api/launch-child-conversation-client-tool.d.ts +3 -0
- package/dist/api/launch-child-conversation-client-tool.js +93 -0
- package/dist/api/launch-child-conversation-client-tool.js.map +1 -0
- package/dist/api/mcp-service/mcp-redacted-credentials.cjs +1 -1
- package/dist/api/mcp-service/mcp-redacted-credentials.cjs.map +1 -1
- package/dist/api/mcp-service/mcp-redacted-credentials.d.ts +3 -2
- package/dist/api/mcp-service/mcp-redacted-credentials.js +32 -27
- package/dist/api/mcp-service/mcp-redacted-credentials.js.map +1 -1
- package/dist/api/mcp-service/mcp-service.api.cjs +1 -1
- package/dist/api/mcp-service/mcp-service.api.cjs.map +1 -1
- package/dist/api/mcp-service/mcp-service.api.js +19 -19
- package/dist/api/mcp-service/mcp-service.api.js.map +1 -1
- package/dist/api/open-hands.types.d.ts +1 -1
- package/dist/api/settings-service/settings-service.api.cjs +1 -1
- package/dist/api/settings-service/settings-service.api.cjs.map +1 -1
- package/dist/api/settings-service/settings-service.api.d.ts +10 -0
- package/dist/api/settings-service/settings-service.api.js +90 -100
- package/dist/api/settings-service/settings-service.api.js.map +1 -1
- package/dist/api/skills-service.cjs +1 -1
- package/dist/api/skills-service.cjs.map +1 -1
- package/dist/api/skills-service.js +1 -0
- package/dist/api/skills-service.js.map +1 -1
- package/dist/api/workspace-upload-path.cjs +1 -1
- package/dist/api/workspace-upload-path.js +8 -8
- package/dist/assets/chevron-left.d.ts +1 -1
- package/dist/assets/chevron-right.d.ts +1 -1
- package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.cjs +1 -1
- package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.cjs.map +1 -1
- package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.js +24 -18
- package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.js.map +1 -1
- package/dist/components/conversation-events/chat/event-content-helpers/get-event-content.cjs +1 -1
- package/dist/components/conversation-events/chat/event-content-helpers/get-event-content.cjs.map +1 -1
- package/dist/components/conversation-events/chat/event-content-helpers/get-event-content.js +5 -0
- package/dist/components/conversation-events/chat/event-content-helpers/get-event-content.js.map +1 -1
- package/dist/components/conversation-events/chat/event-content-helpers/should-render-event.cjs +2 -2
- package/dist/components/conversation-events/chat/event-content-helpers/should-render-event.cjs.map +1 -1
- package/dist/components/conversation-events/chat/event-content-helpers/should-render-event.js +11 -7
- package/dist/components/conversation-events/chat/event-content-helpers/should-render-event.js.map +1 -1
- package/dist/components/conversation-events/chat/event-message-components/collapsible-thinking.d.ts +2 -1
- package/dist/components/conversation-events/chat/event-message-components/critic-result-display.d.ts +2 -1
- package/dist/components/conversation-events/chat/event-message-components/error-event-message.d.ts +2 -1
- package/dist/components/conversation-events/chat/event-message-components/event-group.d.ts +1 -1
- package/dist/components/conversation-events/chat/event-message-components/finish-event-message.d.ts +1 -1
- package/dist/components/conversation-events/chat/event-message-components/generic-event-message-wrapper.d.ts +1 -1
- package/dist/components/conversation-events/chat/event-message-components/observation-pair-event-message.d.ts +2 -1
- package/dist/components/conversation-events/chat/event-message-components/skill-item-expanded.d.ts +1 -1
- package/dist/components/conversation-events/chat/event-message-components/skill-ready-content-list.d.ts +2 -1
- package/dist/components/conversation-events/chat/event-message-components/thought-event-message.d.ts +1 -1
- package/dist/components/conversation-events/chat/event-message-components/user-assistant-event-message.d.ts +2 -1
- package/dist/components/conversation-events/chat/event-message.d.ts +2 -1
- package/dist/components/conversation-events/chat/task-tracking/task-item.d.ts +1 -1
- package/dist/components/conversation-events/chat/task-tracking/task-list-section.d.ts +1 -1
- package/dist/components/features/alerts/alert-banner.d.ts +1 -1
- package/dist/components/features/analytics/telemetry-consent-banner.d.ts +2 -1
- package/dist/components/features/automations/add-automation-modal.d.ts +1 -1
- package/dist/components/features/automations/automation-card-skeleton.d.ts +1 -1
- package/dist/components/features/automations/automation-card.d.ts +9 -1
- package/dist/components/features/automations/automation-group.d.ts +9 -1
- package/dist/components/features/automations/automation-health-badge.d.ts +8 -0
- package/dist/components/features/automations/automation-list-row.d.ts +3 -1
- package/dist/components/features/automations/automation-run-insights.d.ts +17 -0
- package/dist/components/features/automations/automation-view-toggle.d.ts +1 -1
- package/dist/components/features/automations/backend-not-configured.d.ts +1 -1
- package/dist/components/features/automations/create-instructions.d.ts +2 -2
- package/dist/components/features/automations/dashboard/automations-dashboard-controls.d.ts +18 -0
- package/dist/components/features/automations/dashboard/automations-filtered-empty-state.d.ts +9 -0
- package/dist/components/features/automations/dashboard/use-automation-sub-page-nav.d.ts +12 -0
- package/dist/components/features/automations/delete-confirmation-modal.d.ts +1 -1
- package/dist/components/features/automations/detail/active-status-badge.d.ts +1 -1
- package/dist/components/features/automations/detail/activity-log-item.d.ts +1 -1
- package/dist/components/features/automations/detail/activity-log-section.d.ts +3 -1
- package/dist/components/features/automations/detail/activity-section.d.ts +1 -1
- package/dist/components/features/automations/detail/back-link.d.ts +1 -1
- package/dist/components/features/automations/detail/branch-badge.d.ts +1 -1
- package/dist/components/features/automations/detail/config-field.d.ts +1 -1
- package/dist/components/features/automations/detail/configuration-section.d.ts +1 -1
- package/dist/components/features/automations/detail/debug-automation-button.d.ts +1 -1
- package/dist/components/features/automations/detail/detail-header.d.ts +1 -1
- package/dist/components/features/automations/detail/detail-skeleton.d.ts +1 -1
- package/dist/components/features/automations/detail/edit-automation-modal.d.ts +1 -1
- package/dist/components/features/automations/detail/not-found-state.d.ts +1 -1
- package/dist/components/features/automations/detail/plugin-chip.d.ts +1 -1
- package/dist/components/features/automations/detail/plugins-section.d.ts +1 -1
- package/dist/components/features/automations/detail/prompt-section.d.ts +2 -1
- package/dist/components/features/automations/detail/run-logs-modal.d.ts +1 -1
- package/dist/components/features/automations/detail/run-status-badge.d.ts +10 -1
- package/dist/components/features/automations/detail/section-card.d.ts +1 -1
- package/dist/components/features/automations/empty-state.d.ts +1 -1
- package/dist/components/features/automations/error-state.d.ts +1 -1
- package/dist/components/features/automations/import-automation-modal.d.ts +1 -1
- package/dist/components/features/automations/kebab-menu-item-content.d.ts +1 -1
- package/dist/components/features/automations/kebab-menu.d.ts +1 -1
- package/dist/components/features/automations/metadata-chip.d.ts +1 -1
- package/dist/components/features/automations/recommended-automations-launcher.d.ts +1 -1
- package/dist/components/features/automations/recommended-automations-section.d.ts +1 -1
- package/dist/components/features/automations/responder-deployment-modal.d.ts +1 -1
- package/dist/components/features/automations/search-input.d.ts +1 -1
- package/dist/components/features/automations/status-badge.d.ts +1 -1
- package/dist/components/features/automations/turn-off-confirmation-modal.d.ts +8 -0
- package/dist/components/features/automations/view-menu-item-content.d.ts +1 -1
- package/dist/components/features/backends/add-backend-modal.d.ts +1 -1
- package/dist/components/features/backends/api-key-entry-screen.d.ts +2 -1
- package/dist/components/features/backends/backend-form-modal.d.ts +3 -3
- package/dist/components/features/backends/backend-row.d.ts +1 -1
- package/dist/components/features/backends/backend-selector.d.ts +2 -1
- package/dist/components/features/backends/backend-status-dot.d.ts +2 -1
- package/dist/components/features/backends/backend-version.d.ts +1 -1
- package/dist/components/features/backends/device-flow-auth.d.ts +1 -1
- package/dist/components/features/backends/manage-backends-modal.d.ts +2 -1
- package/dist/components/features/browser/browser-chrome-bar.d.ts +1 -1
- package/dist/components/features/browser/browser-snapshot.d.ts +1 -1
- package/dist/components/features/browser/browser.d.ts +1 -1
- package/dist/components/features/browser/empty-browser-message.d.ts +1 -1
- package/dist/components/features/chat/btw-messages.d.ts +1 -1
- package/dist/components/features/chat/change-agent-button.d.ts +2 -1
- package/dist/components/features/chat/change-agent-context-menu.d.ts +1 -1
- package/dist/components/features/chat/chat-action-tooltip.d.ts +1 -1
- package/dist/components/features/chat/chat-add-file-button.d.ts +2 -1
- package/dist/components/features/chat/chat-interface.d.ts +2 -1
- package/dist/components/features/chat/chat-message.d.ts +1 -1
- package/dist/components/features/chat/chat-messages-skeleton.d.ts +2 -1
- package/dist/components/features/chat/chat-play-button.d.ts +1 -1
- package/dist/components/features/chat/chat-send-button.d.ts +1 -1
- package/dist/components/features/chat/chat-status-indicator.d.ts +1 -1
- package/dist/components/features/chat/chat-stop-button.d.ts +1 -1
- package/dist/components/features/chat/chat-suggestions.d.ts +1 -1
- package/dist/components/features/chat/components/chat-input-actions.d.ts +2 -1
- package/dist/components/features/chat/components/chat-input-container.d.ts +1 -1
- package/dist/components/features/chat/components/chat-input-field.d.ts +1 -1
- package/dist/components/features/chat/components/chat-input-grip.d.ts +1 -1
- package/dist/components/features/chat/components/chat-input-llm-profile-picker.d.ts +3 -2
- package/dist/components/features/chat/components/chat-input-model.d.ts +3 -2
- package/dist/components/features/chat/components/chat-input-profile-picker.d.ts +1 -1
- package/dist/components/features/chat/components/chat-input-row.d.ts +1 -1
- package/dist/components/features/chat/components/hidden-file-input.d.ts +1 -1
- package/dist/components/features/chat/components/slash-command-menu.d.ts +2 -1
- package/dist/components/features/chat/confirmation-mode-enabled.d.ts +1 -1
- package/dist/components/features/chat/custom-chat-input.d.ts +1 -1
- package/dist/components/features/chat/drag-over.d.ts +1 -1
- package/dist/components/features/chat/error-message-banner.d.ts +2 -1
- package/dist/components/features/chat/error-message.d.ts +2 -1
- package/dist/components/features/chat/generic-event-message.d.ts +1 -1
- package/dist/components/features/chat/git-control-bar-branch-button.d.ts +1 -1
- package/dist/components/features/chat/git-control-bar-pr-button.d.ts +1 -1
- package/dist/components/features/chat/git-control-bar-pull-button.d.ts +1 -1
- package/dist/components/features/chat/git-control-bar-push-button.d.ts +1 -1
- package/dist/components/features/chat/git-control-bar-repo-button.d.ts +1 -1
- package/dist/components/features/chat/git-control-bar-tooltip-wrapper.d.ts +1 -1
- package/dist/components/features/chat/git-control-bar.d.ts +1 -1
- package/dist/components/features/chat/git-external-link-icon.d.ts +1 -1
- package/dist/components/features/chat/goal-status-banner.d.ts +1 -1
- package/dist/components/features/chat/goal-status-content.d.ts +1 -1
- package/dist/components/features/chat/got-it-button.d.ts +1 -1
- package/dist/components/features/chat/interactive-chat-box.d.ts +1 -1
- package/dist/components/features/chat/model-messages.d.ts +2 -1
- package/dist/components/features/chat/mono-component.d.ts +1 -1
- package/dist/components/features/chat/open-repository-modal.d.ts +2 -1
- package/dist/components/features/chat/pasted-image-upload-as-file-button.d.ts +1 -1
- package/dist/components/features/chat/path-component.d.ts +1 -1
- package/dist/components/features/chat/pending-stop-icon.d.ts +1 -1
- package/dist/components/features/chat/pending-user-messages.d.ts +2 -1
- package/dist/components/features/chat/plan-preview.d.ts +1 -1
- package/dist/components/features/chat/remove-file-button.d.ts +1 -1
- package/dist/components/features/chat/skill-install-restart-banner.d.ts +1 -1
- package/dist/components/features/chat/success-indicator.d.ts +1 -1
- package/dist/components/features/chat/task-tracking/status-badge.d.ts +1 -1
- package/dist/components/features/chat/task-tracking/status-icon.d.ts +1 -1
- package/dist/components/features/chat/task-tracking/task-item.d.ts +1 -1
- package/dist/components/features/chat/task-tracking/task-list-section.d.ts +1 -1
- package/dist/components/features/chat/tool-visualizers/primitives/code-block.d.ts +2 -1
- package/dist/components/features/chat/tool-visualizers/primitives/diff-view.d.ts +2 -1
- package/dist/components/features/chat/tool-visualizers/primitives/file-path-chip.d.ts +2 -1
- package/dist/components/features/chat/tool-visualizers/primitives/key-value-grid.d.ts +1 -1
- package/dist/components/features/chat/tool-visualizers/primitives/output-pane.d.ts +2 -1
- package/dist/components/features/chat/typing-indicator.d.ts +1 -1
- package/dist/components/features/chat/uploaded-file.d.ts +1 -1
- package/dist/components/features/chat/uploaded-files.d.ts +1 -1
- package/dist/components/features/chat/uploaded-image.d.ts +2 -1
- package/dist/components/features/chat/user-message-body.d.ts +2 -2
- package/dist/components/features/chat/waiting-for-runtime-message.d.ts +1 -1
- package/dist/components/features/chat/workspace-mode-icon.d.ts +1 -1
- package/dist/components/features/chat/workspace-mode-selector.d.ts +1 -1
- package/dist/components/features/command-menu/command-menu-trigger.d.ts +2 -1
- package/dist/components/features/context-menu/archived-disabled-tooltip.d.ts +1 -1
- package/dist/components/features/context-menu/context-menu-icon-text-with-description.d.ts +1 -1
- package/dist/components/features/context-menu/context-menu-icon-text.d.ts +1 -1
- package/dist/components/features/context-menu/context-menu-list-item.cjs +1 -1
- package/dist/components/features/context-menu/context-menu-list-item.cjs.map +1 -1
- package/dist/components/features/context-menu/context-menu-list-item.d.ts +2 -1
- package/dist/components/features/context-menu/context-menu-list-item.js +2 -1
- package/dist/components/features/context-menu/context-menu-list-item.js.map +1 -1
- package/dist/components/features/controls/agent-loading.d.ts +1 -1
- package/dist/components/features/controls/agent-status.d.ts +1 -1
- package/dist/components/features/controls/git-tools-submenu.d.ts +1 -1
- package/dist/components/features/controls/macros-submenu.d.ts +1 -1
- package/dist/components/features/controls/server-status-context-menu-icon-text.d.ts +1 -1
- package/dist/components/features/controls/server-status-context-menu.d.ts +1 -1
- package/dist/components/features/controls/server-status.d.ts +1 -1
- package/dist/components/features/controls/tools-context-menu-icon-text.d.ts +1 -1
- package/dist/components/features/controls/tools-context-menu.d.ts +1 -1
- package/dist/components/features/controls/tools.d.ts +2 -1
- package/dist/components/features/conversation/conversation-loading.d.ts +1 -1
- package/dist/components/features/conversation/conversation-main/chat-interface-wrapper.d.ts +1 -1
- package/dist/components/features/conversation/conversation-main/conversation-main.d.ts +1 -1
- package/dist/components/features/conversation/conversation-main/conversation-mobile-panel-page.d.ts +2 -1
- package/dist/components/features/conversation/conversation-name-context-menu-icon-text.d.ts +1 -1
- package/dist/components/features/conversation/conversation-name-context-menu.d.ts +1 -1
- package/dist/components/features/conversation/conversation-name-with-status.d.ts +2 -1
- package/dist/components/features/conversation/conversation-name.d.ts +2 -1
- package/dist/components/features/conversation/conversation-tab-empty-state.d.ts +1 -1
- package/dist/components/features/conversation/conversation-tabs/conversation-tab-content/conversation-tab-content-crossfade.d.ts +1 -1
- package/dist/components/features/conversation/conversation-tabs/conversation-tab-content/conversation-tab-content.d.ts +1 -1
- package/dist/components/features/conversation/conversation-tabs/conversation-tab-content/suspense-pending-fallback.d.ts +1 -1
- package/dist/components/features/conversation/conversation-tabs/conversation-tab-content/tab-container.d.ts +1 -1
- package/dist/components/features/conversation/conversation-tabs/conversation-tab-content/tab-content-area.d.ts +1 -1
- package/dist/components/features/conversation/conversation-tabs/conversation-tab-content/tab-wrapper.d.ts +1 -1
- package/dist/components/features/conversation/conversation-tabs/conversation-tab-nav.d.ts +1 -1
- package/dist/components/features/conversation/conversation-tabs/conversation-tabs-context-menu.d.ts +1 -1
- package/dist/components/features/conversation/conversation-tabs/conversation-tabs.d.ts +1 -1
- package/dist/components/features/conversation/conversation-tabs/drawer-vscode-link.d.ts +1 -1
- package/dist/components/features/conversation/metrics-modal/context-window-section.d.ts +1 -1
- package/dist/components/features/conversation/metrics-modal/cost-section.d.ts +1 -1
- package/dist/components/features/conversation/metrics-modal/empty-state.d.ts +1 -1
- package/dist/components/features/conversation/metrics-modal/metric-row.d.ts +1 -1
- package/dist/components/features/conversation/metrics-modal/metrics-modal-header.d.ts +1 -1
- package/dist/components/features/conversation/metrics-modal/metrics-modal.d.ts +1 -1
- package/dist/components/features/conversation/metrics-modal/usage-section.d.ts +1 -1
- package/dist/components/features/conversation/right-panel-toggle.d.ts +1 -1
- package/dist/components/features/conversation/transcript-export-modal.d.ts +2 -1
- package/dist/components/features/conversation-panel/budget-display.d.ts +2 -1
- package/dist/components/features/conversation-panel/budget-progress-bar.d.ts +1 -1
- package/dist/components/features/conversation-panel/budget-usage-text.d.ts +2 -1
- package/dist/components/features/conversation-panel/cloud-new-conversation-menu.d.ts +1 -1
- package/dist/components/features/conversation-panel/compact-conversation-row.cjs +1 -1
- package/dist/components/features/conversation-panel/compact-conversation-row.cjs.map +1 -1
- package/dist/components/features/conversation-panel/compact-conversation-row.d.ts +2 -1
- package/dist/components/features/conversation-panel/compact-conversation-row.js +38 -37
- package/dist/components/features/conversation-panel/compact-conversation-row.js.map +1 -1
- package/dist/components/features/conversation-panel/confirm-delete-modal.d.ts +1 -1
- package/dist/components/features/conversation-panel/confirm-stop-modal.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-actions.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-context-menu.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-footer.cjs +1 -2
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-footer.cjs.map +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-footer.d.ts +3 -9
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-footer.js +48 -51
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-footer.js.map +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-header.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-meta-chip.cjs +2 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-meta-chip.cjs.map +1 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-meta-chip.d.ts +12 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-meta-chip.js +6 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-meta-chip.js.map +1 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-preview.cjs +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-preview.cjs.map +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-preview.d.ts +16 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-preview.js +95 -78
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-preview.js.map +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-skeleton.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-card-title.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-card.d.ts +2 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-repo-link.cjs +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-repo-link.cjs.map +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-repo-link.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-repo-link.js +40 -38
- package/dist/components/features/conversation-panel/conversation-card/conversation-repo-link.js.map +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-status-badges.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-chips.cjs +2 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-chips.cjs.map +1 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-chips.d.ts +14 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-chips.js +167 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-chips.js.map +1 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-display.cjs +2 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-display.cjs.map +1 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-display.d.ts +63 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-display.js +66 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-display.js.map +1 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-icons.cjs +2 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-icons.cjs.map +1 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-icons.d.ts +15 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-icons.js +117 -0
- package/dist/components/features/conversation-panel/conversation-card/conversation-tag-icons.js.map +1 -0
- package/dist/components/features/conversation-panel/conversation-card/no-repository.cjs +1 -1
- package/dist/components/features/conversation-panel/conversation-card/no-repository.cjs.map +1 -1
- package/dist/components/features/conversation-panel/conversation-card/no-repository.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-card/no-repository.js +30 -19
- package/dist/components/features/conversation-panel/conversation-card/no-repository.js.map +1 -1
- package/dist/components/features/conversation-panel/conversation-group-folder-list.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-group-folder-row.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-panel-filter-menu.cjs +1 -1
- package/dist/components/features/conversation-panel/conversation-panel-filter-menu.cjs.map +1 -1
- package/dist/components/features/conversation-panel/conversation-panel-filter-menu.d.ts +7 -2
- package/dist/components/features/conversation-panel/conversation-panel-filter-menu.js +146 -104
- package/dist/components/features/conversation-panel/conversation-panel-filter-menu.js.map +1 -1
- package/dist/components/features/conversation-panel/conversation-panel-list-helpers.cjs +1 -1
- package/dist/components/features/conversation-panel/conversation-panel-list-helpers.cjs.map +1 -1
- package/dist/components/features/conversation-panel/conversation-panel-list-helpers.d.ts +20 -0
- package/dist/components/features/conversation-panel/conversation-panel-list-helpers.js +53 -27
- package/dist/components/features/conversation-panel/conversation-panel-list-helpers.js.map +1 -1
- package/dist/components/features/conversation-panel/conversation-panel-new-thread-picker.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-panel-pinned-section.d.ts +1 -1
- package/dist/components/features/conversation-panel/conversation-panel.cjs +1 -1
- package/dist/components/features/conversation-panel/conversation-panel.cjs.map +1 -1
- package/dist/components/features/conversation-panel/conversation-panel.d.ts +2 -1
- package/dist/components/features/conversation-panel/conversation-panel.js +169 -155
- package/dist/components/features/conversation-panel/conversation-panel.js.map +1 -1
- package/dist/components/features/conversation-panel/conversation-status-dot.d.ts +1 -1
- package/dist/components/features/conversation-panel/exit-conversation-modal.d.ts +1 -1
- package/dist/components/features/conversation-panel/hook-event-item.d.ts +1 -1
- package/dist/components/features/conversation-panel/hook-matcher-content.d.ts +1 -1
- package/dist/components/features/conversation-panel/hooks-empty-state.d.ts +1 -1
- package/dist/components/features/conversation-panel/hooks-loading-state.d.ts +1 -1
- package/dist/components/features/conversation-panel/hooks-modal-header.d.ts +1 -1
- package/dist/components/features/conversation-panel/hooks-modal.d.ts +1 -1
- package/dist/components/features/conversation-panel/local-new-conversation-menu.d.ts +1 -1
- package/dist/components/features/conversation-panel/menu-heading.d.ts +1 -1
- package/dist/components/features/conversation-panel/menu-row.d.ts +1 -1
- package/dist/components/features/conversation-panel/menu-separator.d.ts +1 -1
- package/dist/components/features/conversation-panel/new-conversation-button.d.ts +2 -1
- package/dist/components/features/conversation-panel/plugins-modal.d.ts +1 -1
- package/dist/components/features/conversation-panel/runtime-waiting-state.d.ts +1 -1
- package/dist/components/features/conversation-panel/skill-content.d.ts +1 -1
- package/dist/components/features/conversation-panel/skill-item.d.ts +1 -1
- package/dist/components/features/conversation-panel/skill-triggers.d.ts +1 -1
- package/dist/components/features/conversation-panel/skills-empty-state.d.ts +1 -1
- package/dist/components/features/conversation-panel/skills-loading-state.d.ts +1 -1
- package/dist/components/features/conversation-panel/skills-modal-header.d.ts +1 -1
- package/dist/components/features/conversation-panel/skills-modal-section.d.ts +1 -1
- package/dist/components/features/conversation-panel/skills-modal.d.ts +1 -1
- package/dist/components/features/conversation-panel/start-task-card/start-task-card-footer.d.ts +1 -1
- package/dist/components/features/conversation-panel/start-task-card/start-task-card-header.d.ts +1 -1
- package/dist/components/features/conversation-panel/start-task-card/start-task-card.d.ts +1 -1
- package/dist/components/features/conversation-panel/start-task-card/start-task-status-badge.d.ts +1 -1
- package/dist/components/features/conversation-panel/start-task-card/start-task-status-indicator.d.ts +1 -1
- package/dist/components/features/conversation-panel/system-message-modal/empty-tools-state.d.ts +1 -1
- package/dist/components/features/conversation-panel/system-message-modal/system-message-content.d.ts +1 -1
- package/dist/components/features/conversation-panel/system-message-modal/system-message-header.d.ts +1 -1
- package/dist/components/features/conversation-panel/system-message-modal/tab-button.d.ts +1 -1
- package/dist/components/features/conversation-panel/system-message-modal/tab-content.d.ts +1 -1
- package/dist/components/features/conversation-panel/system-message-modal/tab-navigation.d.ts +1 -1
- package/dist/components/features/conversation-panel/system-message-modal/toggle-button.d.ts +1 -1
- package/dist/components/features/conversation-panel/system-message-modal/tool-item.d.ts +1 -1
- package/dist/components/features/conversation-panel/system-message-modal/tool-parameters.d.ts +1 -1
- package/dist/components/features/conversation-panel/system-message-modal/tools-list.d.ts +1 -1
- package/dist/components/features/conversation-panel/system-message-modal.d.ts +1 -1
- package/dist/components/features/diff-viewer/commit-list.d.ts +2 -1
- package/dist/components/features/diff-viewer/commit-row.d.ts +2 -1
- package/dist/components/features/diff-viewer/diff-drawer-icon.d.ts +1 -1
- package/dist/components/features/diff-viewer/editor-container.d.ts +1 -1
- package/dist/components/features/diff-viewer/empty-changes-message.d.ts +1 -1
- package/dist/components/features/diff-viewer/file-diff-viewer.d.ts +2 -1
- package/dist/components/features/diff-viewer/loading-spinner.d.ts +1 -1
- package/dist/components/features/files/file-item.d.ts +1 -1
- package/dist/components/features/files/file-list.d.ts +2 -1
- package/dist/components/features/files-tab/file-content-viewer.d.ts +1 -1
- package/dist/components/features/files-tab/file-quick-row.d.ts +1 -1
- package/dist/components/features/files-tab/file-tree-view.d.ts +1 -1
- package/dist/components/features/files-tab/highlighted-source-view.d.ts +1 -1
- package/dist/components/features/files-tab/no-file-selected-message.d.ts +1 -1
- package/dist/components/features/files-tab/segmented-toggle.d.ts +1 -1
- package/dist/components/features/files-tab/tree-node.d.ts +1 -1
- package/dist/components/features/home/featured-automations/automation-health-indicator.d.ts +11 -0
- package/dist/components/features/home/featured-automations/automation-run-activity-metrics.d.ts +18 -0
- package/dist/components/features/home/featured-automations/automation-run-activity-sparkline.d.ts +14 -0
- package/dist/components/features/home/featured-automations/automation-run-health.d.ts +25 -0
- package/dist/components/features/home/featured-automations/build-home-automation-menu-items.d.ts +39 -0
- package/dist/components/features/home/featured-automations/build-pinned-automation-menu-items.d.ts +22 -0
- package/dist/components/features/home/featured-automations/home-automation-activity.d.ts +23 -0
- package/dist/components/features/home/featured-automations/home-automation-menu.d.ts +13 -0
- package/dist/components/features/home/featured-automations/home-automation-run-tooltip.d.ts +12 -0
- package/dist/components/features/home/featured-automations/pinned-automation-card.d.ts +21 -0
- package/dist/components/features/home/featured-automations/pinned-automations-dashboard.d.ts +6 -0
- package/dist/components/features/home/featured-automations/running-automations-list.d.ts +6 -0
- package/dist/components/features/home/git-branch-dropdown/branch-dropdown-menu.d.ts +1 -1
- package/dist/components/features/home/git-branch-dropdown/git-branch-dropdown.d.ts +2 -1
- package/dist/components/features/home/git-provider-dropdown/git-provider-dropdown.d.ts +2 -1
- package/dist/components/features/home/git-repo-dropdown/git-repo-dropdown.d.ts +2 -1
- package/dist/components/features/home/home-chat-launcher.d.ts +1 -1
- package/dist/components/features/home/home-git-control-bar-preview.d.ts +1 -1
- package/dist/components/features/home/home-header/guide-message.d.ts +1 -1
- package/dist/components/features/home/home-header/home-header-title.d.ts +1 -1
- package/dist/components/features/home/home-header/home-header.d.ts +1 -1
- package/dist/components/features/home/llm-not-configured-banner.d.ts +1 -1
- package/dist/components/features/home/new-conversation/create-conversation-button.d.ts +1 -1
- package/dist/components/features/home/new-conversation/new-conversation.d.ts +1 -1
- package/dist/components/features/home/new-conversation.d.ts +1 -1
- package/dist/components/features/home/open-launcher-button.d.ts +1 -1
- package/dist/components/features/home/open-repository-dialog.d.ts +1 -1
- package/dist/components/features/home/open-workspace-dialog.d.ts +1 -1
- package/dist/components/features/home/repo-selection-form.d.ts +2 -1
- package/dist/components/features/home/shared/clear-button.d.ts +2 -1
- package/dist/components/features/home/shared/dropdown-item.d.ts +1 -1
- package/dist/components/features/home/shared/empty-state.d.ts +2 -1
- package/dist/components/features/home/shared/error-message.d.ts +2 -1
- package/dist/components/features/home/shared/generic-dropdown-menu.d.ts +1 -1
- package/dist/components/features/home/shared/loading-spinner.d.ts +2 -1
- package/dist/components/features/home/shared/toggle-button.d.ts +1 -1
- package/dist/components/features/home/tasks/task-card.d.ts +1 -1
- package/dist/components/features/home/tasks/task-group.d.ts +1 -1
- package/dist/components/features/home/tasks/task-issue-number.d.ts +1 -1
- package/dist/components/features/home/tasks/task-item-title.d.ts +1 -1
- package/dist/components/features/home/tasks/task-suggestions-skeleton.d.ts +1 -1
- package/dist/components/features/home/tasks/task-suggestions.d.ts +1 -1
- package/dist/components/features/home/workspace-dropdown/folder-browser-modal.d.ts +2 -1
- package/dist/components/features/home/workspace-dropdown/manage-workspaces-modal.d.ts +2 -1
- package/dist/components/features/home/workspace-dropdown/workspace-dropdown.d.ts +2 -1
- package/dist/components/features/home/workspace-selection-form.d.ts +2 -1
- package/dist/components/features/images/image-carousel.d.ts +2 -1
- package/dist/components/features/images/image-preview.d.ts +1 -1
- package/dist/components/features/images/thumbnail.d.ts +1 -1
- package/dist/components/features/launch/plugin-launch-modal.d.ts +2 -1
- package/dist/components/features/launch/plugin-launch-parameter-input.d.ts +1 -1
- package/dist/components/features/launch/plugin-launch-plugin-section.d.ts +1 -1
- package/dist/components/features/manifest/manifest-form-field.d.ts +1 -1
- package/dist/components/features/manifest/manifest-icons.d.ts +13 -0
- package/dist/components/features/manifest/manifest-overview-tiles.d.ts +19 -0
- package/dist/components/features/manifest/manifest-prerequisites-step.d.ts +1 -1
- package/dist/components/features/manifest/manifest-review-step.d.ts +1 -1
- package/dist/components/features/manifest/manifest-setup-dialog.d.ts +1 -1
- package/dist/components/features/manifest/manifest-subpage-layout.d.ts +23 -0
- package/dist/components/features/markdown/anchor.d.ts +1 -1
- package/dist/components/features/markdown/blockquote.d.ts +1 -1
- package/dist/components/features/markdown/code.d.ts +1 -1
- package/dist/components/features/markdown/headings.d.ts +6 -6
- package/dist/components/features/markdown/horizontal-rule.d.ts +1 -1
- package/dist/components/features/markdown/list.d.ts +3 -3
- package/dist/components/features/markdown/markdown-renderer.d.ts +1 -1
- package/dist/components/features/markdown/markdown-table-scroll.d.ts +1 -1
- package/dist/components/features/markdown/paragraph.d.ts +1 -1
- package/dist/components/features/markdown/plan-components.d.ts +36 -36
- package/dist/components/features/markdown/table.d.ts +3 -3
- package/dist/components/features/mcp-logo-badge.d.ts +1 -1
- package/dist/components/features/mcp-page/custom-server-editor.cjs +1 -1
- package/dist/components/features/mcp-page/custom-server-editor.cjs.map +1 -1
- package/dist/components/features/mcp-page/custom-server-editor.d.ts +2 -1
- package/dist/components/features/mcp-page/custom-server-editor.js +5 -0
- package/dist/components/features/mcp-page/custom-server-editor.js.map +1 -1
- package/dist/components/features/mcp-page/install-server-modal.cjs +1 -1
- package/dist/components/features/mcp-page/install-server-modal.cjs.map +1 -1
- package/dist/components/features/mcp-page/install-server-modal.d.ts +2 -1
- package/dist/components/features/mcp-page/install-server-modal.js +117 -118
- package/dist/components/features/mcp-page/install-server-modal.js.map +1 -1
- package/dist/components/features/mcp-page/installed-server-card.d.ts +2 -1
- package/dist/components/features/mcp-page/installed-servers-section.d.ts +1 -1
- package/dist/components/features/mcp-page/marketplace-card.d.ts +1 -1
- package/dist/components/features/mcp-page/marketplace-section.d.ts +1 -1
- package/dist/components/features/mcp-page/mcp-logo-stack-badge.d.ts +1 -1
- package/dist/components/features/mcp-page/mcp-section-filter-dropdown.d.ts +1 -1
- package/dist/components/features/mcp-page/mcp-server-health.d.ts +2 -1
- package/dist/components/features/mcp-page/mcp-toolbar.d.ts +1 -1
- package/dist/components/features/mcp-page/save-as-secret-toggle.d.ts +1 -1
- package/dist/components/features/onboarding/onboarding-host.d.ts +1 -1
- package/dist/components/features/onboarding/onboarding-modal.d.ts +2 -1
- package/dist/components/features/onboarding/onboarding-progress-bar.d.ts +1 -1
- package/dist/components/features/onboarding/steps/check-backend-step.d.ts +2 -1
- package/dist/components/features/onboarding/steps/choose-agent-step.d.ts +3 -2
- package/dist/components/features/onboarding/steps/say-hello-step.d.ts +2 -1
- package/dist/components/features/onboarding/steps/setup-acp-secrets-step.d.ts +2 -1
- package/dist/components/features/onboarding/steps/setup-llm-step.d.ts +2 -1
- package/dist/components/features/plugins/add-plugin-modal.d.ts +2 -1
- package/dist/components/features/plugins/plugin-card.d.ts +2 -1
- package/dist/components/features/plugins/plugin-detail-modal.d.ts +1 -1
- package/dist/components/features/plugins/plugin-files-section.d.ts +2 -1
- package/dist/components/features/plugins/plugin-picker-card.d.ts +1 -1
- package/dist/components/features/plugins/plugin-picker-modal.d.ts +1 -1
- package/dist/components/features/plugins/plugin-picker-trigger.d.ts +1 -1
- package/dist/components/features/plugins/plugin-picker.d.ts +1 -1
- package/dist/components/features/plugins/plugins-toolbar.d.ts +1 -1
- package/dist/components/features/settings/acp-auth-status-banner.d.ts +1 -1
- package/dist/components/features/settings/acp-conflict-warnings.d.ts +2 -1
- package/dist/components/features/settings/acp-credentials-section.d.ts +1 -1
- package/dist/components/features/settings/acp-secret-field.d.ts +2 -1
- package/dist/components/features/settings/agent-canvas-update-card.cjs +1 -1
- package/dist/components/features/settings/agent-canvas-update-card.cjs.map +1 -1
- package/dist/components/features/settings/agent-canvas-update-card.d.ts +10 -5
- package/dist/components/features/settings/agent-canvas-update-card.js +223 -149
- package/dist/components/features/settings/agent-canvas-update-card.js.map +1 -1
- package/dist/components/features/settings/agent-canvas-version-modal.cjs +2 -0
- package/dist/components/features/settings/agent-canvas-version-modal.cjs.map +1 -0
- package/dist/components/features/settings/agent-canvas-version-modal.d.ts +11 -0
- package/dist/components/features/settings/agent-canvas-version-modal.js +166 -0
- package/dist/components/features/settings/agent-canvas-version-modal.js.map +1 -0
- package/dist/components/features/settings/agent-canvas-version-tile.cjs +2 -0
- package/dist/components/features/settings/agent-canvas-version-tile.cjs.map +1 -0
- package/dist/components/features/settings/agent-canvas-version-tile.d.ts +13 -0
- package/dist/components/features/settings/agent-canvas-version-tile.js +60 -0
- package/dist/components/features/settings/agent-canvas-version-tile.js.map +1 -0
- package/dist/components/features/settings/agent-profiles/agent-profile-actions-menu.d.ts +1 -1
- package/dist/components/features/settings/agent-profiles/agent-profile-row.d.ts +1 -1
- package/dist/components/features/settings/agent-profiles/agent-profiles-body.d.ts +1 -1
- package/dist/components/features/settings/agent-profiles/agent-profiles-local-view.d.ts +1 -1
- package/dist/components/features/settings/agent-profiles/agent-profiles-manager.d.ts +1 -1
- package/dist/components/features/settings/agent-profiles/delete-agent-profile-modal.d.ts +1 -1
- package/dist/components/features/settings/agent-server-onboarding.d.ts +2 -1
- package/dist/components/features/settings/api-key-modal-base.d.ts +1 -1
- package/dist/components/features/settings/app-settings/app-settings-inputs-skeleton.d.ts +1 -1
- package/dist/components/features/settings/app-settings/language-input.d.ts +1 -1
- package/dist/components/features/settings/app-settings/theme-input.d.ts +2 -1
- package/dist/components/features/settings/backend-synced-settings-badge.d.ts +1 -1
- package/dist/components/features/settings/banner-message.d.ts +1 -1
- package/dist/components/features/settings/cloud-settings-link.d.ts +1 -1
- package/dist/components/features/settings/input-skeleton.d.ts +1 -1
- package/dist/components/features/settings/integrations-settings-link.d.ts +1 -1
- package/dist/components/features/settings/key-status-icon.d.ts +1 -1
- package/dist/components/features/settings/llm-profiles/delete-profile-modal.d.ts +1 -1
- package/dist/components/features/settings/llm-profiles/llm-profiles-manager.d.ts +1 -1
- package/dist/components/features/settings/llm-profiles/llm-settings-local-view.d.ts +2 -1
- package/dist/components/features/settings/llm-profiles/profile-actions-menu-item.d.ts +1 -1
- package/dist/components/features/settings/llm-profiles/profile-actions-menu.d.ts +1 -1
- package/dist/components/features/settings/llm-profiles/profile-row.d.ts +1 -1
- package/dist/components/features/settings/llm-profiles/profiles-body.d.ts +1 -1
- package/dist/components/features/settings/llm-profiles/rename-profile-modal.d.ts +1 -1
- package/dist/components/features/settings/llm-settings/llm-settings-inputs-skeleton.d.ts +1 -1
- package/dist/components/features/settings/llm-settings/openai-subscription-auth-card.d.ts +2 -1
- package/dist/components/features/settings/mcp-settings/mcp-server-form.cjs +1 -1
- package/dist/components/features/settings/mcp-settings/mcp-server-form.cjs.map +1 -1
- package/dist/components/features/settings/mcp-settings/mcp-server-form.d.ts +2 -1
- package/dist/components/features/settings/mcp-settings/mcp-server-form.js +2 -1
- package/dist/components/features/settings/mcp-settings/mcp-server-form.js.map +1 -1
- package/dist/components/features/settings/mcp-settings/mcp-server-list-item.d.ts +1 -1
- package/dist/components/features/settings/mcp-settings/mcp-server-list.d.ts +1 -1
- package/dist/components/features/settings/mobile-header.d.ts +1 -1
- package/dist/components/features/settings/optional-tag.d.ts +1 -1
- package/dist/components/features/settings/sdk-settings/field-help.d.ts +1 -1
- package/dist/components/features/settings/sdk-settings/schema-field.d.ts +2 -1
- package/dist/components/features/settings/sdk-settings/sdk-section-page.d.ts +1 -1
- package/dist/components/features/settings/sdk-settings/view-toggle.d.ts +1 -1
- package/dist/components/features/settings/secrets-settings/secret-form.d.ts +2 -1
- package/dist/components/features/settings/secrets-settings/secret-list-item.d.ts +2 -2
- package/dist/components/features/settings/settings-desktop-sidebar.cjs +1 -1
- package/dist/components/features/settings/settings-desktop-sidebar.cjs.map +1 -1
- package/dist/components/features/settings/settings-desktop-sidebar.d.ts +1 -1
- package/dist/components/features/settings/settings-desktop-sidebar.js +1 -1
- package/dist/components/features/settings/settings-desktop-sidebar.js.map +1 -1
- package/dist/components/features/settings/settings-dropdown-input.d.ts +1 -1
- package/dist/components/features/settings/settings-layout.d.ts +1 -1
- package/dist/components/features/settings/settings-mobile-drawer.cjs +1 -1
- package/dist/components/features/settings/settings-mobile-drawer.cjs.map +1 -1
- package/dist/components/features/settings/settings-mobile-drawer.d.ts +1 -1
- package/dist/components/features/settings/settings-mobile-drawer.js +1 -1
- package/dist/components/features/settings/settings-mobile-drawer.js.map +1 -1
- package/dist/components/features/settings/settings-mobile-hub.d.ts +1 -1
- package/dist/components/features/settings/settings-nav-divider.d.ts +1 -1
- package/dist/components/features/settings/settings-nav-header.d.ts +1 -1
- package/dist/components/features/settings/settings-nav-link.d.ts +1 -1
- package/dist/components/features/settings/settings-navigation.d.ts +1 -1
- package/dist/components/features/settings/settings-switch.d.ts +1 -1
- package/dist/components/features/settings/subtext-skeleton.d.ts +1 -1
- package/dist/components/features/settings/switch-skeleton.d.ts +1 -1
- package/dist/components/features/settings/upgrade-banner.d.ts +1 -1
- package/dist/components/features/settings/upgrade-button.d.ts +1 -1
- package/dist/components/features/sidebar/avatar.d.ts +1 -1
- package/dist/components/features/sidebar/sidebar-collapsed-icon-slot.d.ts +1 -1
- package/dist/components/features/sidebar/sidebar-conversation-list.d.ts +1 -1
- package/dist/components/features/sidebar/sidebar-mobile-menu-bar.d.ts +1 -1
- package/dist/components/features/sidebar/sidebar-mobile-menu-toggle.d.ts +1 -1
- package/dist/components/features/sidebar/sidebar-mobile-nav-context.d.ts +1 -1
- package/dist/components/features/sidebar/sidebar-nav-link.d.ts +1 -1
- package/dist/components/features/sidebar/sidebar-rail-body.cjs +1 -1
- package/dist/components/features/sidebar/sidebar-rail-body.cjs.map +1 -1
- package/dist/components/features/sidebar/sidebar-rail-body.d.ts +1 -1
- package/dist/components/features/sidebar/sidebar-rail-body.js +109 -108
- package/dist/components/features/sidebar/sidebar-rail-body.js.map +1 -1
- package/dist/components/features/sidebar/sidebar.d.ts +2 -1
- package/dist/components/features/sidebar/user-avatar.d.ts +1 -1
- package/dist/components/features/skills/add-skill-modal.d.ts +2 -1
- package/dist/components/features/skills/extensions-mobile-hub.d.ts +1 -1
- package/dist/components/features/skills/extensions-navigation.cjs +1 -1
- package/dist/components/features/skills/extensions-navigation.cjs.map +1 -1
- package/dist/components/features/skills/extensions-navigation.d.ts +1 -1
- package/dist/components/features/skills/extensions-navigation.js +9 -9
- package/dist/components/features/skills/extensions-navigation.js.map +1 -1
- package/dist/components/features/skills/skill-card-pill-row.d.ts +1 -1
- package/dist/components/features/skills/skill-card.d.ts +2 -1
- package/dist/components/features/skills/skill-detail-modal.d.ts +2 -1
- package/dist/components/features/skills/skill-facet-rail.d.ts +8 -0
- package/dist/components/features/skills/skill-facet-row.d.ts +13 -0
- package/dist/components/features/skills/skill-filter.d.ts +34 -0
- package/dist/components/features/skills/skill-filters-modal.d.ts +10 -0
- package/dist/components/features/skills/skill-icon-badge.d.ts +1 -1
- package/dist/components/features/skills/skill-type-badge.d.ts +1 -1
- package/dist/components/features/skills/skills-toolbar.d.ts +3 -4
- package/dist/components/features/suggestions/suggestion-item.d.ts +1 -1
- package/dist/components/features/suggestions/suggestions.d.ts +1 -1
- package/dist/components/features/terminal/empty-terminal-message.d.ts +1 -1
- package/dist/components/features/terminal/terminal.d.ts +1 -1
- package/dist/components/features/tips/random-tip.d.ts +2 -1
- package/dist/components/providers/agent-server-ui-providers.d.ts +1 -1
- package/dist/components/providers/agent-server-ui-root.d.ts +1 -1
- package/dist/components/providers/telemetry-provider.d.ts +1 -1
- package/dist/components/shared/action-tooltip.d.ts +1 -1
- package/dist/components/shared/agent-brand-icon.d.ts +1 -1
- package/dist/components/shared/badge.d.ts +1 -1
- package/dist/components/shared/buttons/back-nav-button-content.d.ts +1 -1
- package/dist/components/shared/buttons/circle-plus-check-toggle.d.ts +3 -2
- package/dist/components/shared/buttons/conversation-confirmation-buttons.d.ts +1 -1
- package/dist/components/shared/buttons/copy-to-clipboard-button.d.ts +1 -1
- package/dist/components/shared/buttons/copyable-content-wrapper.d.ts +1 -1
- package/dist/components/shared/buttons/modal-button.d.ts +1 -1
- package/dist/components/shared/buttons/openhands-logo-button.d.ts +1 -1
- package/dist/components/shared/buttons/remove-button.d.ts +1 -1
- package/dist/components/shared/buttons/scroll-to-bottom-button.d.ts +1 -1
- package/dist/components/shared/buttons/styled-tooltip.d.ts +1 -1
- package/dist/components/shared/filters/enum-filter-dropdown.cjs +1 -1
- package/dist/components/shared/filters/enum-filter-dropdown.cjs.map +1 -1
- package/dist/components/shared/filters/enum-filter-dropdown.d.ts +6 -2
- package/dist/components/shared/filters/enum-filter-dropdown.js +13 -13
- package/dist/components/shared/filters/enum-filter-dropdown.js.map +1 -1
- package/dist/components/shared/git-provider-icon.d.ts +1 -1
- package/dist/components/shared/hook-execution-event-message.d.ts +2 -1
- package/dist/components/shared/loading-spinner.d.ts +1 -1
- package/dist/components/shared/modals/confirmation-modal.d.ts +1 -1
- package/dist/components/shared/modals/confirmation-modals/base-modal.d.ts +3 -3
- package/dist/components/shared/modals/confirmation-modals/danger-modal.d.ts +1 -1
- package/dist/components/shared/modals/modal-body.d.ts +1 -1
- package/dist/components/shared/modals/modal-close-button.d.ts +1 -1
- package/dist/components/shared/modals/settings/model-selector.d.ts +2 -1
- package/dist/components/shared/modals/settings/settings-form.d.ts +2 -1
- package/dist/components/shared/modals/settings/settings-modal.d.ts +1 -1
- package/dist/components/shared/navigation-link.cjs +1 -1
- package/dist/components/shared/navigation-link.cjs.map +1 -1
- package/dist/components/shared/navigation-link.js +11 -7
- package/dist/components/shared/navigation-link.js.map +1 -1
- package/dist/components/shared/risk-alert.d.ts +1 -1
- package/dist/components/shared/text-shimmer.d.ts +1 -1
- package/dist/components/ui/resize-handle.d.ts +1 -1
- package/dist/config/defaults.cjs +1 -1
- package/dist/config/defaults.cjs.map +1 -1
- package/dist/config/defaults.js +3 -3
- package/dist/config/defaults.js.map +1 -1
- package/dist/constants/child-conversation.cjs +2 -0
- package/dist/constants/child-conversation.cjs.map +1 -0
- package/dist/constants/child-conversation.d.ts +29 -0
- package/dist/constants/child-conversation.js +6 -0
- package/dist/constants/child-conversation.js.map +1 -0
- package/dist/context/navigation-context.d.ts +1 -1
- package/dist/context/scroll-context.d.ts +1 -1
- package/dist/contexts/active-backend-context.d.ts +1 -1
- package/dist/contexts/conversation-websocket-context.cjs +3 -3
- package/dist/contexts/conversation-websocket-context.cjs.map +1 -1
- package/dist/contexts/conversation-websocket-context.d.ts +1 -1
- package/dist/contexts/conversation-websocket-context.js +189 -188
- package/dist/contexts/conversation-websocket-context.js.map +1 -1
- package/dist/contexts/settings-section-header-context.d.ts +1 -1
- package/dist/contexts/websocket-provider-wrapper.d.ts +1 -1
- package/dist/fixtures/home-automations-demo.d.ts +19 -0
- package/dist/hooks/chat/use-model-interceptor.cjs +1 -1
- package/dist/hooks/chat/use-model-interceptor.js +6 -6
- package/dist/hooks/mutation/use-add-mcp-server.cjs +1 -1
- package/dist/hooks/mutation/use-add-mcp-server.cjs.map +1 -1
- package/dist/hooks/mutation/use-add-mcp-server.js +10 -14
- package/dist/hooks/mutation/use-add-mcp-server.js.map +1 -1
- package/dist/hooks/mutation/use-create-conversation.cjs +1 -1
- package/dist/hooks/mutation/use-create-conversation.js +6 -6
- package/dist/hooks/mutation/use-delete-mcp-server.cjs +1 -1
- package/dist/hooks/mutation/use-delete-mcp-server.cjs.map +1 -1
- package/dist/hooks/mutation/use-delete-mcp-server.d.ts +2 -7
- package/dist/hooks/mutation/use-delete-mcp-server.js +8 -34
- package/dist/hooks/mutation/use-delete-mcp-server.js.map +1 -1
- package/dist/hooks/mutation/use-save-settings.cjs +1 -1
- package/dist/hooks/mutation/use-save-settings.cjs.map +1 -1
- package/dist/hooks/mutation/use-save-settings.js +8 -4
- package/dist/hooks/mutation/use-save-settings.js.map +1 -1
- package/dist/hooks/mutation/use-update-mcp-server.cjs +1 -1
- package/dist/hooks/mutation/use-update-mcp-server.cjs.map +1 -1
- package/dist/hooks/mutation/use-update-mcp-server.d.ts +1 -1
- package/dist/hooks/mutation/use-update-mcp-server.js +31 -16
- package/dist/hooks/mutation/use-update-mcp-server.js.map +1 -1
- package/dist/hooks/query/use-active-conversation.d.ts +1 -1
- package/dist/hooks/query/use-agent-profiles.d.ts +1 -1
- package/dist/hooks/query/use-app-installations.d.ts +1 -1
- package/dist/hooks/query/use-automation-detail.d.ts +2 -2
- package/dist/hooks/query/use-automation-health.d.ts +2 -0
- package/dist/hooks/query/use-automations.d.ts +5 -1
- package/dist/hooks/query/use-bash-command-logs.d.ts +1 -1
- package/dist/hooks/query/use-cloud-sandbox.d.ts +1 -1
- package/dist/hooks/query/use-commit-changes.d.ts +1 -1
- package/dist/hooks/query/use-config.d.ts +1 -1
- package/dist/hooks/query/use-conversation-history.d.ts +1 -1
- package/dist/hooks/query/use-conversation-hooks.d.ts +1 -1
- package/dist/hooks/query/use-conversation-skills.d.ts +1 -1
- package/dist/hooks/query/use-get-secrets.d.ts +1 -1
- package/dist/hooks/query/use-home-automations.d.ts +20 -0
- package/dist/hooks/query/use-latest-automation-runs.d.ts +19 -0
- package/dist/hooks/query/use-llm-profiles.d.ts +1 -1
- package/dist/hooks/query/use-llm-subscription-models.d.ts +1 -1
- package/dist/hooks/query/use-llm-subscription-status.d.ts +1 -1
- package/dist/hooks/query/use-local-git-info.d.ts +1 -1
- package/dist/hooks/query/use-local-workspaces.d.ts +1 -1
- package/dist/hooks/query/use-manifest-capabilities.d.ts +2 -0
- package/dist/hooks/query/use-plugin-file-content.d.ts +1 -1
- package/dist/hooks/query/use-plugins-marketplace.d.ts +1 -1
- package/dist/hooks/query/use-provider-models.d.ts +1 -1
- package/dist/hooks/query/use-search-branches.d.ts +1 -1
- package/dist/hooks/query/use-search-providers.d.ts +1 -1
- package/dist/hooks/query/use-search-repositories.d.ts +1 -1
- package/dist/hooks/query/use-search-subdirs.d.ts +2 -2
- package/dist/hooks/query/use-settings.d.ts +2 -2
- package/dist/hooks/query/use-skills.d.ts +1 -1
- package/dist/hooks/query/use-start-tasks.d.ts +1 -1
- package/dist/hooks/query/use-sub-conversation-task-polling.d.ts +1 -1
- package/dist/hooks/query/use-sub-conversations.d.ts +1 -1
- package/dist/hooks/query/use-suggested-tasks.d.ts +1 -1
- package/dist/hooks/query/use-task-polling.d.ts +2 -2
- package/dist/hooks/query/use-unified-get-git-changes.d.ts +1 -1
- package/dist/hooks/query/use-unified-git-diff.d.ts +1 -1
- package/dist/hooks/query/use-user-conversation.d.ts +1 -1
- package/dist/hooks/query/use-workspace-file-content.d.ts +1 -1
- package/dist/hooks/use-backend-scoped-path.cjs +2 -0
- package/dist/hooks/use-backend-scoped-path.cjs.map +1 -0
- package/dist/hooks/use-backend-scoped-path.d.ts +10 -0
- package/dist/hooks/use-backend-scoped-path.js +13 -0
- package/dist/hooks/use-backend-scoped-path.js.map +1 -0
- package/dist/hooks/use-home-automation-actions.d.ts +23 -0
- package/dist/hooks/use-home-pinned-automations.d.ts +26 -0
- package/dist/hooks/use-tracking.cjs +1 -1
- package/dist/hooks/use-tracking.cjs.map +1 -1
- package/dist/hooks/use-tracking.d.ts +4 -0
- package/dist/hooks/use-tracking.js +6 -0
- package/dist/hooks/use-tracking.js.map +1 -1
- package/dist/i18n/declaration.cjs +1 -1
- package/dist/i18n/declaration.cjs.map +1 -1
- package/dist/i18n/declaration.d.ts +105 -2
- package/dist/i18n/declaration.js +1 -1
- package/dist/i18n/declaration.js.map +1 -1
- package/dist/i18n/translation.cjs +2 -2
- package/dist/i18n/translation.cjs.map +1 -1
- package/dist/i18n/translation.js +1813 -62
- package/dist/i18n/translation.js.map +1 -1
- package/dist/icons/code-pill.d.ts +1 -1
- package/dist/icons/docker.cjs +2 -0
- package/dist/icons/docker.cjs.map +1 -0
- package/dist/icons/docker.js +19 -0
- package/dist/icons/docker.js.map +1 -0
- package/dist/icons/npm.cjs +2 -0
- package/dist/icons/npm.cjs.map +1 -0
- package/dist/icons/npm.js +19 -0
- package/dist/icons/npm.js.map +1 -0
- package/dist/locales/ar/openhands.json +108 -5
- package/dist/locales/ca/openhands.json +108 -5
- package/dist/locales/de/openhands.json +108 -5
- package/dist/locales/en/openhands.json +108 -5
- package/dist/locales/es/openhands.json +108 -5
- package/dist/locales/fr/openhands.json +108 -5
- package/dist/locales/it/openhands.json +108 -5
- package/dist/locales/ja/openhands.json +108 -5
- package/dist/locales/ko-KR/openhands.json +108 -5
- package/dist/locales/no/openhands.json +108 -5
- package/dist/locales/pt/openhands.json +108 -5
- package/dist/locales/tr/openhands.json +108 -5
- package/dist/locales/uk/openhands.json +108 -5
- package/dist/locales/zh-CN/openhands.json +108 -5
- package/dist/locales/zh-TW/openhands.json +108 -5
- package/dist/manifests/automation-insights.d.ts +64 -0
- package/dist/manifests/automation-interface.cjs +1 -1
- package/dist/manifests/automation-interface.cjs.map +1 -1
- package/dist/manifests/automation-interface.d.ts +33 -1
- package/dist/manifests/automation-interface.js +2 -1
- package/dist/manifests/automation-interface.js.map +1 -1
- package/dist/manifests/interface-validation.cjs +1 -1
- package/dist/manifests/interface-validation.cjs.map +1 -1
- package/dist/manifests/interface-validation.js +228 -50
- package/dist/manifests/interface-validation.js.map +1 -1
- package/dist/manifests/manifest-template.d.ts +2 -0
- package/dist/manifests/manifest-validation.cjs.map +1 -1
- package/dist/manifests/manifest-validation.js.map +1 -1
- package/dist/manifests/types.cjs +1 -1
- package/dist/manifests/types.cjs.map +1 -1
- package/dist/manifests/types.d.ts +128 -0
- package/dist/manifests/types.js +35 -2
- package/dist/manifests/types.js.map +1 -1
- package/dist/mockServiceWorker.js +21 -9
- package/dist/node_modules/@openhands/extensions/automations/catalog/upstream-fork-sync/manifest.cjs +9 -0
- package/dist/node_modules/@openhands/extensions/automations/catalog/upstream-fork-sync/manifest.cjs.map +1 -0
- package/dist/node_modules/@openhands/extensions/automations/catalog/upstream-fork-sync/manifest.js +74 -0
- package/dist/node_modules/@openhands/extensions/automations/catalog/upstream-fork-sync/manifest.js.map +1 -0
- package/dist/node_modules/@openhands/extensions/automations/catalog-index.cjs +1 -1
- package/dist/node_modules/@openhands/extensions/automations/catalog-index.cjs.map +1 -1
- package/dist/node_modules/@openhands/extensions/automations/catalog-index.js +6 -4
- package/dist/node_modules/@openhands/extensions/automations/catalog-index.js.map +1 -1
- package/dist/node_modules/@openhands/extensions/automations/interface.cjs +1 -1
- package/dist/node_modules/@openhands/extensions/automations/interface.cjs.map +1 -1
- package/dist/node_modules/@openhands/extensions/automations/interface.js +126 -5
- package/dist/node_modules/@openhands/extensions/automations/interface.js.map +1 -1
- package/dist/node_modules/@openhands/extensions/skills/index.cjs +161 -53
- package/dist/node_modules/@openhands/extensions/skills/index.cjs.map +1 -1
- package/dist/node_modules/@openhands/extensions/skills/index.js +112 -50
- package/dist/node_modules/@openhands/extensions/skills/index.js.map +1 -1
- package/dist/node_modules/@openhands/typescript-client/dist/index.cjs +1 -1
- package/dist/node_modules/@openhands/typescript-client/dist/index.js +1 -1
- package/dist/node_modules/@tanstack/query-core/build/modern/utils.cjs +1 -1
- package/dist/node_modules/@tanstack/query-core/build/modern/utils.cjs.map +1 -1
- package/dist/node_modules/@tanstack/query-core/build/modern/utils.js +12 -1
- package/dist/node_modules/@tanstack/query-core/build/modern/utils.js.map +1 -1
- package/dist/node_modules/@tanstack/react-query/build/modern/useBaseQuery.cjs +1 -1
- package/dist/node_modules/@tanstack/react-query/build/modern/useBaseQuery.cjs.map +1 -1
- package/dist/node_modules/@tanstack/react-query/build/modern/useBaseQuery.js +14 -12
- package/dist/node_modules/@tanstack/react-query/build/modern/useBaseQuery.js.map +1 -1
- package/dist/node_modules/html-parse-stringify/dist/esm/html-parse-stringify.cjs +2 -0
- package/dist/node_modules/html-parse-stringify/dist/esm/html-parse-stringify.cjs.map +1 -0
- package/dist/node_modules/html-parse-stringify/dist/esm/html-parse-stringify.js +177 -0
- package/dist/node_modules/html-parse-stringify/dist/esm/html-parse-stringify.js.map +1 -0
- package/dist/node_modules/i18next/dist/esm/i18next.cjs +1 -1
- package/dist/node_modules/i18next/dist/esm/i18next.cjs.map +1 -1
- package/dist/node_modules/i18next/dist/esm/i18next.js +31 -24
- package/dist/node_modules/i18next/dist/esm/i18next.js.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/briefcase.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/briefcase.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/briefcase.js +16 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/briefcase.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/building-2.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/building-2.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/building-2.js +27 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/building-2.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/circle-arrow-up.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/circle-arrow-up.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/circle-arrow-up.js +21 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/circle-arrow-up.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/circle-user-round.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/circle-user-round.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/circle-user-round.js +23 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/circle-user-round.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/cloud-cog.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/cloud-cog.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/cloud-cog.js +43 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/cloud-cog.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/earth.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/earth.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/earth.js +25 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/earth.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/flag.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/flag.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/flag.js +9 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/flag.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/folder-git-2.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/folder-git-2.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/folder-git-2.js +27 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/folder-git-2.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/folder-key.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/folder-key.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/folder-key.js +25 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/folder-key.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/git-pull-request.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/git-pull-request.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/git-pull-request.js +30 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/git-pull-request.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/hash.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/hash.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/hash.js +35 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/hash.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/house.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/house.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/house.js +12 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/house.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/id-card.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/id-card.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/id-card.js +33 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/id-card.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/key-round.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/key-round.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/key-round.js +15 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/key-round.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/layers.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/layers.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/layers.js +19 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/layers.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/link-2.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/link-2.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/link-2.js +22 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/link-2.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/mails.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/mails.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/mails.js +23 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/mails.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/messages-square.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/messages-square.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/messages-square.js +12 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/messages-square.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/plug.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/plug.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/plug.js +23 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/plug.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/square-kanban.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/square-kanban.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/square-kanban.js +27 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/square-kanban.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/ticket.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/ticket.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/ticket.js +23 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/ticket.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/users-round.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/users-round.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/users-round.js +21 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/users-round.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/waypoints.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/waypoints.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/waypoints.js +43 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/waypoints.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/webhook.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/webhook.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/webhook.js +19 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/webhook.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/workflow.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/workflow.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/workflow.js +27 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/workflow.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/wrench.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/wrench.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/wrench.js +9 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/wrench.js.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/zap.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/zap.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/zap.js +9 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/zap.js.map +1 -0
- package/dist/node_modules/posthog-js/dist/module.cjs +2 -2
- package/dist/node_modules/posthog-js/dist/module.cjs.map +1 -1
- package/dist/node_modules/posthog-js/dist/module.js +2055 -1929
- package/dist/node_modules/posthog-js/dist/module.js.map +1 -1
- package/dist/node_modules/react-i18next/dist/es/TransWithoutContext.cjs +1 -1
- package/dist/node_modules/react-i18next/dist/es/TransWithoutContext.cjs.map +1 -1
- package/dist/node_modules/react-i18next/dist/es/TransWithoutContext.js +43 -62
- package/dist/node_modules/react-i18next/dist/es/TransWithoutContext.js.map +1 -1
- package/dist/node_modules/react-i18next/dist/es/useTranslation.cjs +1 -1
- package/dist/node_modules/react-i18next/dist/es/useTranslation.cjs.map +1 -1
- package/dist/node_modules/react-i18next/dist/es/useTranslation.js +12 -6
- package/dist/node_modules/react-i18next/dist/es/useTranslation.js.map +1 -1
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.cjs +1 -1
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.cjs.map +1 -1
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +352 -310
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -1
- package/dist/package.cjs +1 -1
- package/dist/package.cjs.map +1 -1
- package/dist/package.js +39 -35
- package/dist/package.js.map +1 -1
- package/dist/routes/agent-settings.d.ts +3 -2
- package/dist/routes/app-settings.d.ts +2 -1
- package/dist/routes/browser-tab.d.ts +1 -1
- package/dist/routes/changes-tab.d.ts +2 -1
- package/dist/routes/commits-tab.d.ts +1 -1
- package/dist/routes/conversation.d.ts +2 -1
- package/dist/routes/files-tab.d.ts +1 -1
- package/dist/routes/llm-settings.d.ts +3 -2
- package/dist/routes/mcp.cjs +1 -1
- package/dist/routes/mcp.cjs.map +1 -1
- package/dist/routes/mcp.d.ts +2 -1
- package/dist/routes/mcp.js +1 -1
- package/dist/routes/mcp.js.map +1 -1
- package/dist/routes/planner-tab.d.ts +2 -1
- package/dist/routes/secrets-settings.d.ts +2 -1
- package/dist/routes/task-list-tab.d.ts +1 -1
- package/dist/services/child-conversation-launch.cjs +2 -0
- package/dist/services/child-conversation-launch.cjs.map +1 -0
- package/dist/services/child-conversation-launch.d.ts +41 -0
- package/dist/services/child-conversation-launch.js +182 -0
- package/dist/services/child-conversation-launch.js.map +1 -0
- package/dist/services/settings.cjs +1 -1
- package/dist/services/settings.cjs.map +1 -1
- package/dist/services/settings.js +3 -7
- package/dist/services/settings.js.map +1 -1
- package/dist/stores/conversation-panel-preferences-store.cjs +1 -1
- package/dist/stores/conversation-panel-preferences-store.cjs.map +1 -1
- package/dist/stores/conversation-panel-preferences-store.d.ts +5 -1
- package/dist/stores/conversation-panel-preferences-store.js +8 -2
- package/dist/stores/conversation-panel-preferences-store.js.map +1 -1
- package/dist/types/agent-server/core/base/action.d.ts +17 -1
- package/dist/types/agent-server/core/base/base.d.ts +2 -1
- package/dist/types/agent-server/type-guards.cjs +1 -1
- package/dist/types/agent-server/type-guards.cjs.map +1 -1
- package/dist/types/agent-server/type-guards.d.ts +8 -1
- package/dist/types/agent-server/type-guards.js +4 -3
- package/dist/types/agent-server/type-guards.js.map +1 -1
- package/dist/types/automation.d.ts +30 -1
- package/dist/types/mcp-auth.cjs.map +1 -1
- package/dist/types/mcp-auth.d.ts +5 -41
- package/dist/types/mcp-auth.js.map +1 -1
- package/dist/types/mcp-server.d.ts +17 -32
- package/dist/types/settings.d.ts +8 -28
- package/dist/ui/card-title.d.ts +1 -1
- package/dist/ui/card.d.ts +1 -1
- package/dist/ui/combobox-caret.d.ts +3 -3
- package/dist/ui/context-menu.cjs +1 -1
- package/dist/ui/context-menu.cjs.map +1 -1
- package/dist/ui/context-menu.d.ts +3 -2
- package/dist/ui/context-menu.js +10 -9
- package/dist/ui/context-menu.js.map +1 -1
- package/dist/ui/divider.d.ts +1 -1
- package/dist/ui/dropdown/clear-button.d.ts +1 -1
- package/dist/ui/dropdown/dropdown-input.d.ts +1 -1
- package/dist/ui/dropdown/dropdown-menu.d.ts +1 -1
- package/dist/ui/dropdown/dropdown.d.ts +1 -1
- package/dist/ui/dropdown/loading-spinner.d.ts +1 -1
- package/dist/ui/dropdown/toggle-button.d.ts +1 -1
- package/dist/ui/help-link.d.ts +1 -1
- package/dist/ui/pre.d.ts +1 -1
- package/dist/ui/toggle-switch.d.ts +2 -2
- package/dist/ui/typography.d.ts +7 -7
- package/dist/utils/automation-activity-log-export.d.ts +17 -0
- package/dist/utils/automation-timeout.d.ts +4 -6
- package/dist/utils/custom-toast-handlers.cjs +1 -1
- package/dist/utils/custom-toast-handlers.cjs.map +1 -1
- package/dist/utils/custom-toast-handlers.d.ts +2 -2
- package/dist/utils/custom-toast-handlers.js +18 -1
- package/dist/utils/custom-toast-handlers.js.map +1 -1
- package/dist/utils/format-relative-time.d.ts +3 -0
- package/dist/utils/mcp-config.cjs +1 -1
- package/dist/utils/mcp-config.cjs.map +1 -1
- package/dist/utils/mcp-config.d.ts +12 -29
- package/dist/utils/mcp-config.js +161 -143
- package/dist/utils/mcp-config.js.map +1 -1
- package/dist/utils/mcp-installed-servers.cjs +1 -1
- package/dist/utils/mcp-installed-servers.cjs.map +1 -1
- package/dist/utils/mcp-installed-servers.d.ts +2 -2
- package/dist/utils/mcp-installed-servers.js +21 -32
- package/dist/utils/mcp-installed-servers.js.map +1 -1
- package/dist/utils/mcp-server-health-key.cjs.map +1 -1
- package/dist/utils/mcp-server-health-key.d.ts +2 -4
- package/dist/utils/mcp-server-health-key.js.map +1 -1
- package/dist/utils/settings-like-page-layout-classes.cjs +1 -1
- package/dist/utils/settings-like-page-layout-classes.cjs.map +1 -1
- package/dist/utils/settings-like-page-layout-classes.d.ts +6 -2
- package/dist/utils/settings-like-page-layout-classes.js +1 -1
- package/dist/utils/settings-like-page-layout-classes.js.map +1 -1
- package/dist/utils/skill-category.d.ts +12 -0
- package/package.json +41 -35
- package/scripts/brand-dev-electron.mjs +244 -0
- package/scripts/check-sdk-version-sync.mjs +6 -6
- package/scripts/check-translation-completeness.cjs +4 -0
- package/scripts/dev-safe.mjs +2 -2
- package/scripts/dev-with-automation.mjs +3 -2
- package/scripts/generate-icons.mjs +109 -0
- package/build/assets/Trans-Bwpzk1wT.js +0 -1
- package/build/assets/active-backend-context-BiwzkzDy.js +0 -2
- package/build/assets/agent-context-settings-DXNT_dcw.js +0 -1
- package/build/assets/agent-server-conversation-service.api-CYSWw-2g.js +0 -41
- package/build/assets/agent-settings-BjgQQe-_.js +0 -1
- package/build/assets/alert-banner-DR8EVyZM.js +0 -1
- package/build/assets/api-error-message-e16L1kwH.js +0 -1
- package/build/assets/automation-detail-DY6x2FW1.js +0 -2
- package/build/assets/automation-export-C09f-Lua.js +0 -2
- package/build/assets/automation-setup-route-CqKp0717.js +0 -1
- package/build/assets/automations-list-CqWJ7qXW.js +0 -1
- package/build/assets/backend-form-modal-B8D5hBzK.js +0 -1
- package/build/assets/check-CPLXgluF.js +0 -1
- package/build/assets/chevron-down-CP4QHvyc.js +0 -1
- package/build/assets/circle-check-Dpy2_xSI.js +0 -1
- package/build/assets/command-menu-Bj6X4ckE.js +0 -1
- package/build/assets/condenser-settings-EAXQNR2E.js +0 -1
- package/build/assets/context-menu-list-item-CrCrYuPF.js +0 -1
- package/build/assets/conversation-BzyIcSwr.js +0 -1
- package/build/assets/conversation-panel-BzyIcSwr.js +0 -1
- package/build/assets/copy-DCmZtz6n.js +0 -1
- package/build/assets/entry.client-BbIYOsIg.js +0 -2
- package/build/assets/enum-filter-dropdown-C08-srev.js +0 -1
- package/build/assets/files-tab-DEq8MbHu.js +0 -1
- package/build/assets/format-time-delta-CxfPJpzC.js +0 -1
- package/build/assets/git-repo-dropdown-9WKINV6J.js +0 -1
- package/build/assets/home-CY0JaxiY.js +0 -1
- package/build/assets/home-CaNWlVvB.js +0 -1
- package/build/assets/index-home-CaNWlVvB.js +0 -1
- package/build/assets/info-CmWQXtRQ.js +0 -1
- package/build/assets/install-server-modal-BWrudmZU.js +0 -1
- package/build/assets/llm-not-configured-banner-3tMsM4K6.js +0 -27
- package/build/assets/llm-settings-CXo8iPNW.js +0 -1
- package/build/assets/llm-settings-D0W8mJDk.js +0 -1
- package/build/assets/loader-circle-B4QDBARx.js +0 -1
- package/build/assets/manifest-39f4789d.js +0 -1
- package/build/assets/map-provider-CXU6issd.js +0 -1
- package/build/assets/markdown-renderer-DgiLLhW6.js +0 -8
- package/build/assets/mcp-DXG9LWrI.js +0 -9
- package/build/assets/mcp-marketplace-utils-DFmhKc5s.js +0 -1
- package/build/assets/messages-kBjKaAeA.js +0 -40
- package/build/assets/navigation-link-Bxmn-pCs.js +0 -1
- package/build/assets/onboarding-47hh2IHA.js +0 -1
- package/build/assets/onboarding-modal-9BuvvROo.js +0 -1
- package/build/assets/plus-DrKuuvMe.js +0 -1
- package/build/assets/recommended-automations-launcher-ejxy1P27.js +0 -1
- package/build/assets/root-5S-M8SYa.js +0 -2
- package/build/assets/root-DZ39lS5f.css +0 -1
- package/build/assets/root-layout-BPqoa0gv.js +0 -3
- package/build/assets/search-Dc2qR4O2.js +0 -1
- package/build/assets/settings-BRbnfKEm.js +0 -1
- package/build/assets/settings-Chfn5xTD.js +0 -1
- package/build/assets/settings-like-page-layout-classes-DyxyJ0k4.js +0 -1
- package/build/assets/settings-service.api-CZiPD8__.js +0 -1
- package/build/assets/sidebar-mobile-menu-toggle-ND-hgygu.js +0 -1
- package/build/assets/sidebar-store-Bui-WNEr.js +0 -1
- package/build/assets/skills-settings-B43KArIz.js +0 -2
- package/build/assets/use-is-authed-BT7Iud4U.js +0 -1
- package/build/assets/use-llm-profiles-2Wc2db8u.js +0 -1
- package/build/assets/use-save-agent-profile-D0wC5ExW.js +0 -1
- package/build/assets/use-settings-nav-items-DHAAD-zk.js +0 -16
- package/build/assets/use-skills-CE6miQ3r.js +0 -1
- package/build/assets/use-tracking-BGboadaZ.js +0 -68
- package/build/assets/useQuery-DiPh8LRJ.js +0 -1
- package/build/assets/utils-BgGG1znF.js +0 -1
- package/build/assets/v4-DDdyfk2q.js +0 -1
- package/build/assets/vendor~browser-IVYgIgG1.js +0 -47
- package/build/assets/vendor~entry.client-CXM9oiAk.js +0 -1
- package/build/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~d4by102p-C2f0ZhS-.js +0 -26
- package/build/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~emdr2jt4-BrmgjeOw.js +0 -1
- package/build/assets/vendor~module-BZXjBMvd.js +0 -2
- package/build/assets/x-omAzpXkl.js +0 -1
- package/dist/components/features/skills/skill-type-filter.d.ts +0 -3
- package/dist/components/features/skills/skills-type-filter-dropdown.d.ts +0 -7
- package/dist/node_modules/html-parse-stringify/dist/html-parse-stringify.module.cjs +0 -2
- package/dist/node_modules/html-parse-stringify/dist/html-parse-stringify.module.cjs.map +0 -1
- package/dist/node_modules/html-parse-stringify/dist/html-parse-stringify.module.js +0 -81
- package/dist/node_modules/html-parse-stringify/dist/html-parse-stringify.module.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-up.cjs +0 -2
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-up.cjs.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-up.js +0 -9
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-up.js.map +0 -1
- package/dist/node_modules/void-elements/index.cjs +0 -2
- package/dist/node_modules/void-elements/index.cjs.map +0 -1
- package/dist/node_modules/void-elements/index.js +0 -25
- package/dist/node_modules/void-elements/index.js.map +0 -1
- /package/build/assets/{vendor~root-layout~index-home~home~mcp~automations-list~automation-setup-route~onboarding-modal-D7IDevqN.js → vendor~root-layout~index-home~home~mcp~automations-list~automation-templates~automation-set~bxsimjx0-D7IDevqN.js} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-Cyuzqnbw.js";var t=e({Compression:()=>Di,DisplaySurveyType:()=>bi,PostHog:()=>to,ProductTourEventName:()=>xi,ProductTourEventProperties:()=>Si,SurveyEventName:()=>vi,SurveyEventProperties:()=>yi,SurveyEventType:()=>gi,SurveyType:()=>_i,default:()=>Is,posthog:()=>Is}),n=typeof window<`u`?window:void 0,r=typeof globalThis<`u`?globalThis:n;typeof self>`u`&&(r.self=r),typeof File>`u`&&(r.File=function(){});var i=r?.navigator,a=r?.document,o=r?.location,s=r?.fetch,c=r!=null&&r.XMLHttpRequest&&`withCredentials`in new r.XMLHttpRequest?r.XMLHttpRequest:void 0,l=r?.AbortController,u=r?.CompressionStream,d=i?.userAgent,f=n??{},p=`1.380.0`,m={DEBUG:!1,LIB_VERSION:p,LIB_NAME:`web`,JS_SDK_VERSION:p};function h(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){n(e);return}s.done?t(c):Promise.resolve(c).then(r,i)}function g(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){h(a,r,i,o,s,`next`,e)}function s(e){h(a,r,i,o,s,`throw`,e)}o(void 0)}))}}function _(){return _=Object.assign?Object.assign.bind():function(e){for(var t=1;arguments.length>t;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},_.apply(null,arguments)}function v(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var y,b=function(e){return e.GZipJS=`gzip-js`,e.Base64=`base64`,e}({}),x=[`$snapshot`,`$pageview`,`$pageleave`,`$set`,`survey dismissed`,`survey sent`,`survey shown`,`$identify`,`$groupidentify`,`$create_alias`,`$$client_ingestion_warning`,`$web_experiment_applied`,`$feature_enrollment_update`,`$feature_flag_called`],S=`NativeGzipValidationError`,C=e=>e.length>=2&&e[0]===31&&e[1]===139,w=e=>!(!e||typeof e!=`object`)&&(`name`in e?String(e.name):``)===`NotReadableError`,T=e=>{var t=Error(`Native gzip produced invalid output: `+e);throw t.name=S,t},E=function(){var e=g((function*(e,t){18>e.size&&T(`too-short`);var n=new Uint8Array(yield e.slice(0,10).arrayBuffer());C(n)&&n[2]===8||T(`invalid-header`);var r=new DataView(yield e.slice(e.size-8).arrayBuffer());r.getUint32(0,!0)!==(e=>{for(var t=(()=>{if(y)return y;y=[];for(var e=0;256>e;e++){for(var t=e,n=0;8>n;n++)t=1&t?3988292384^t>>>1:t>>>1;y[e]=t>>>0}return y})(),n=4294967295,r=0;e.length>r;r++)n=t[255&(n^e[r])]^n>>>8;return(4294967295^n)>>>0})(t)&&T(`invalid-crc`);var i=t.length>>>0;r.getUint32(4,!0)!==i&&T(`invalid-size`)}));return function(t,n){return e.apply(this,arguments)}}();function ee(){return ee=g((function*(e,t,n){t===void 0&&(t=!0);try{var r=new TextEncoder().encode(e),i=new CompressionStream(`gzip`),a=i.writable.getWriter(),o=a.write(r).then((()=>a.close())).catch(function(){var e=g((function*(e){try{yield a.abort(e)}catch{}throw e}));return function(t){return e.apply(this,arguments)}}()),s=new Response(i.readable).blob(),[c]=yield Promise.all([s,o]);return yield E(c,r),c}catch(e){if(n!=null&&n.rethrow)throw e;return t&&console.error(`Failed to gzip compress data`,e),null}})),ee.apply(this,arguments)}var D=`amazonbot,amazonproductbot,app.hypefactors.com,applebot,archive.org_bot,awariobot,backlinksextendedbot,baiduspider,bingbot,bingpreview,chrome-lighthouse,dataforseobot,deepscan,duckduckbot,facebookexternal,facebookcatalog,http://yandex.com/bots,hubspot,ia_archiver,leikibot,linkedinbot,meta-externalagent,mj12bot,msnbot,nessus,petalbot,pinterest,prerender,rogerbot,screaming frog,sebot-wa,sitebulb,slackbot,slurp,trendictionbot,turnitin,twitterbot,vercel-screenshot,vercelbot,yahoo! slurp,yandexbot,zoombot,bot.htm,bot.php,(bot;,bot/,crawler,ahrefsbot,ahrefssiteaudit,semrushbot,siteauditbot,splitsignalbot,gptbot,oai-searchbot,chatgpt-user,perplexitybot,better uptime bot,sentryuptimebot,uptimerobot,headlesschrome,cypress,google-hoteladsverifier,adsbot-google,apis-google,duplexweb-google,feedfetcher-google,google favicon,google web preview,google-read-aloud,googlebot,googleother,google-cloudvertexbot,googleweblight,mediapartners-google,storebot-google,google-inspectiontool,bytespider`.split(`,`),te=function(e,t){if(t===void 0&&(t=[]),!e)return!1;var n=e.toLowerCase();return D.concat(t).some((e=>{var t=e.toLowerCase();return n.indexOf(t)!==-1}))};function O(e,t){return e.indexOf(t)!==-1}var k=function(e){return e.trim()},ne=function(e){return e.replace(/^\$/,``)},A=Object.prototype,j=A.hasOwnProperty,re=A.toString,M=Array.isArray||function(e){return re.call(e)===`[object Array]`},N=e=>typeof e==`function`,P=e=>e===Object(e)&&!M(e),ie=e=>{if(P(e)){for(var t in e)if(j.call(e,t))return!1;return!0}return!1},F=e=>e===void 0,I=e=>re.call(e)==`[object String]`,ae=e=>I(e)&&e.trim().length===0,L=e=>e===null,R=e=>F(e)||L(e),z=e=>re.call(e)==`[object Number]`&&e==e,oe=e=>z(e)&&e>0,B=e=>re.call(e)===`[object Boolean]`,se=e=>e instanceof FormData,ce=e=>O(x,e);function le(e){return typeof e!=`object`||!e}function ue(e,t){return{}.toString.call(e)===`[object `+t+`]`}function de(e){return typeof Event<`u`&&function(e,t){try{return e instanceof t}catch{return!1}}(e,Event)}var fe=[!0,`true`,1,`1`,`yes`],pe=e=>O(fe,e),me=[!1,`false`,0,`0`,`no`];function he(e,t,n,r,i){return t>n&&(r.warn(`min cannot be greater than max.`),t=n),z(e)?e>n?(r.warn(` cannot be greater than max: `+n+`. Using max value instead.`),n):t>e?(r.warn(` cannot be less than min: `+t+`. Using min value instead.`),t):e:(r.warn(` must be a number. using max or fallback. max: `+n+`, fallback: `+i),he(i||n,t,n,r))}var ge=class{constructor(e){this.$t={},this.zt=e.zt,this.Zt=he(e.bucketSize,0,100,e.Gt),this.Qt=he(e.refillRate,0,this.Zt,e.Gt),this.Jt=he(e.refillInterval,0,864e5,e.Gt)}Kt(e,t){var n=Math.floor((t-e.lastAccess)/this.Jt);n>0&&(e.tokens=Math.min(e.tokens+n*this.Qt,this.Zt),e.lastAccess+=n*this.Jt)}consumeRateLimit(e){var t,n=Date.now(),r=String(e),i=this.$t[r];return i?this.Kt(i,n):this.$t[r]=i={tokens:this.Zt,lastAccess:n},i.tokens===0||(i.tokens--,i.tokens===0&&((t=this.zt)==null||t.call(this,e)),i.tokens===0)}stop(){this.$t={}}},_e,ve,ye,V=`Mobile`,be=`iOS`,xe=`Android`,Se=`Tablet`,Ce=xe+` `+Se,we=`iPad`,Te=`Apple`,Ee=Te+` Watch`,De=`Safari`,Oe=`BlackBerry`,ke=`Samsung`,Ae=ke+`Browser`,je=ke+` Internet`,Me=`Chrome`,Ne=Me+` OS`,Pe=Me+` `+be,Fe=`Internet Explorer`,Ie=Fe+` `+V,Le=`Opera`,Re=Le+` Mini`,ze=`Edge`,Be=`Microsoft `+ze,Ve=`Firefox`,He=Ve+` `+be,Ue=`Nintendo`,We=`PlayStation`,Ge=`Xbox`,Ke=xe+` `+V,qe=V+` `+De,Je=`Windows`,Ye=Je+` Phone`,Xe=`Nokia`,Ze=`Ouya`,Qe=`Generic`,$e=Qe+` `+V.toLowerCase(),et=Qe+` `+Se.toLowerCase(),tt=`Konqueror`,nt=`Oculus Browser`,rt=`Vivaldi`,it=`Yandex`,at=`Whale`,ot=`DuckDuckGo`,st=`Pale Moon`,ct=`Waterfox`,lt=`Brave`,H=`(\\d+(\\.\\d+)?)`,ut=RegExp(`Version/`+H),dt=new RegExp(Ge,`i`),ft=RegExp(We+` \\w+`,`i`),pt=RegExp(Ue+` \\w+`,`i`),mt=RegExp(Oe+`|PlayBook|BB10`,`i`),ht={"NT3.51":`NT 3.11`,"NT4.0":`NT 4.0`,"5.0":`2000`,5.1:`XP`,5.2:`XP`,"6.0":`Vista`,6.1:`7`,6.2:`8`,6.3:`8.1`,6.4:`10`,"10.0":`10`},gt=function(e,t,n){return t||=``,function(e){return e!=null&&e.brave?lt:null}(n)||(O(e,` OPR/`)&&O(e,`Mini`)?Re:O(e,` OPR/`)?Le:mt.test(e)?Oe:O(e,`IE`+V)||O(e,`WPDesktop`)?Ie:O(e,`OculusBrowser`)?nt:O(e,Ae)?je:O(e,ze)||O(e,`Edg/`)?Be:O(e,rt+`/`)?rt:O(e,`YaBrowser/`)?it:O(e,at+`/`)?at:O(e,ot+`/`)||O(e,`Ddg/`)?ot:O(e,`FBIOS`)?`Facebook `+V:O(e,`UCWEB`)||O(e,`UCBrowser`)?`UC Browser`:O(e,`CriOS`)?Pe:O(e,`CrMo`)||O(e,Me)?Me:O(e,xe)&&O(e,De)?Ke:O(e,`FxiOS`)?He:O(e.toLowerCase(),tt.toLowerCase())?tt:O(e,lt+`/`)?lt:((e,t)=>t&&O(t,Te)||function(e){return O(e,De)&&!O(e,Me)&&!O(e,xe)}(e))(e,t)?O(e,V)?qe:De:O(e,`PaleMoon/`)?st:O(e,ct+`/`)?ct:O(e,Ve)?Ve:O(e,`MSIE`)||O(e,`Trident/`)?Fe:O(e,`Gecko`)?Ve:``)},_t={[Ie]:[RegExp(`rv:`+H)],[Be]:[RegExp(ze+`?\\/`+H)],[Me]:[RegExp(`(`+Me+`|CrMo)\\/`+H)],[Pe]:[RegExp(`CriOS\\/`+H)],"UC Browser":[RegExp(`(UCBrowser|UCWEB)\\/`+H)],[De]:[ut],[qe]:[ut],[Le]:[RegExp(`(Opera|OPR)\\/`+H)],[Ve]:[RegExp(Ve+`\\/`+H)],[He]:[RegExp(`FxiOS\\/`+H)],[tt]:[RegExp(`Konqueror[:/]?`+H,`i`)],[Oe]:[RegExp(Oe+` `+H),ut],[Ke]:[RegExp(`android\\s`+H,`i`)],[je]:[RegExp(Ae+`\\/`+H)],[nt]:[RegExp(`OculusBrowser\\/`+H)],[rt]:[RegExp(rt+`\\/`+H)],[it]:[RegExp(`YaBrowser\\/`+H)],[at]:[RegExp(at+`\\/`+H)],[lt]:[RegExp(lt+`\\/`+H)],[ot]:[RegExp(`(DuckDuckGo|Ddg)\\/`+H)],[st]:[RegExp(`PaleMoon\\/`+H)],[ct]:[RegExp(ct+`\\/`+H)],[Fe]:[RegExp(`(rv:|MSIE )`+H)],Mozilla:[RegExp(`rv:`+H)]},vt=function(e,t,n){var r=_t[gt(e,t,n)];if(F(r))return null;for(var i=0;r.length>i;i++){var a=e.match(r[i]);if(a)return parseFloat(a[a.length-2])}return null},yt=[[RegExp(Ge+`; `+Ge+` (.*?)[);]`,`i`),e=>[Ge,e&&e[1]||``]],[new RegExp(Ue,`i`),[Ue,``]],[new RegExp(We,`i`),[We,``]],[mt,[Oe,``]],[new RegExp(Je,`i`),(e,t)=>{if(/Phone/.test(t)||/WPDesktop/.test(t))return[Ye,``];if(new RegExp(V).test(t)&&!/IEMobile\b/.test(t))return[Je+` `+V,``];var n=/Windows NT ([0-9.]+)/i.exec(t);if(n&&n[1]){var r=ht[n[1]]||``;return/arm/i.test(t)&&(r=`RT`),[Je,r]}return[Je,``]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,e=>e&&e[3]?[be,[e[3],e[4],e[5]||`0`].join(`.`)]:[be,``]],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,e=>{var t=``;return e&&e.length>=3&&(t=F(e[2])?e[3]:e[2]),[`watchOS`,t]}],[RegExp(`(`+xe+` (\\d+)\\.(\\d+)\\.?(\\d+)?|`+xe+`)`,`i`),e=>e&&e[2]?[xe,[e[2],e[3],e[4]||`0`].join(`.`)]:[xe,``]],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,e=>{var t=[`Mac OS X`,``];return e&&e[1]&&(t[1]=[e[1],e[2],e[3]||`0`].join(`.`)),t}],[/Mac/i,[`Mac OS X`,``]],[/CrOS/,[Ne,``]],[/Linux|debian/i,[`Linux`,``]]],bt=function(e){return pt.test(e)?Ue:ft.test(e)?We:dt.test(e)?Ge:new RegExp(Ze,`i`).test(e)?Ze:RegExp(`(`+Ye+`|WPDesktop)`,`i`).test(e)?Ye:/iPad/.test(e)?we:/iPod/.test(e)?`iPod Touch`:/iPhone/.test(e)?`iPhone`:/(watch)(?: ?os[,/]|\d,\d\/)[\d.]+/i.test(e)?Ee:mt.test(e)?Oe:/(kobo)\s(ereader|touch)/i.test(e)?`Kobo`:new RegExp(Xe,`i`).test(e)?Xe:/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i.test(e)||/(kf[a-z]+)( bui|\)).+silk\//i.test(e)?`Kindle Fire`:/(Android|ZTE)/i.test(e)?new RegExp(V).test(e)&&!/(9138B|TB782B|Nexus [97]|pixel c|HUAWEISHT|BTV|noble nook|smart ultra 6)/i.test(e)||/pixel[\daxl ]{1,6}/i.test(e)&&!/pixel c/i.test(e)||/(huaweimed-al00|tah-|APA|SM-G92|i980|zte|U304AA)/i.test(e)||/lmy47v/i.test(e)&&!/QTAQZ3/i.test(e)?xe:Ce:RegExp(`(pda|`+V+`)`,`i`).test(e)?$e:new RegExp(Se,`i`).test(e)&&!RegExp(Se+` pc`,`i`).test(e)?et:``},xt=e=>e instanceof Error,St={trace:{text:`TRACE`,number:1},debug:{text:`DEBUG`,number:5},info:{text:`INFO`,number:9},warn:{text:`WARN`,number:13},error:{text:`ERROR`,number:17},fatal:{text:`FATAL`,number:21}},Ct=St.info;function wt(e){if(B(e))return{boolValue:e};if(typeof e==`number`)return Number.isFinite(e)?Number.isInteger(e)?{intValue:e}:{doubleValue:e}:{stringValue:String(e)};if(typeof e==`string`)return{stringValue:e};if(M(e))return{arrayValue:{values:e.map((e=>wt(e)))}};try{return{stringValue:JSON.stringify(e)}}catch{return{stringValue:String(e)}}}function Tt(e){var t=[];for(var n in e){var r=e[n];L(r)||F(r)||t.push({key:n,value:wt(r)})}return t}function Et(e){var t=globalThis._posthogChunkIds;if(t){var n=Object.keys(t);return ye&&n.length===ve||(ve=n.length,ye=n.reduce(((n,r)=>{_e||={};var i=_e[r];if(i)n[i[0]]=i[1];else for(var a=e(r),o=a.length-1;o>=0;o--){var s=a[o]?.filename,c=t[r];if(s&&c){n[s]=c,_e[r]=[s,c];break}}return n}),{})),ye}}var Dt=class{constructor(e,t,n){n===void 0&&(n=[]),this.coercers=e,this.stackParser=t,this.modifiers=n}buildFromUnknown(e,t){t===void 0&&(t={});var n=t&&t.mechanism||{handled:!0,type:`generic`},r=this.buildCoercingContext(n,t,0).apply(e),i=this.buildParsingContext(t),a=this.parseStacktrace(r,i);return{$exception_list:this.convertToExceptionList(a,n),$exception_level:`error`}}modifyFrames(e){var t=this;return g((function*(){for(var n of e)n.stacktrace&&n.stacktrace.frames&&M(n.stacktrace.frames)&&(n.stacktrace.frames=yield t.applyModifiers(n.stacktrace.frames));return e}))()}coerceFallback(e){return{type:`Error`,value:`Unknown error`,stack:e.syntheticException?.stack,synthetic:!0}}parseStacktrace(e,t){var n,r;return e.cause!=null&&(n=this.parseStacktrace(e.cause,t)),e.stack!=``&&e.stack!=null&&(r=this.applyChunkIds(this.stackParser(e.stack,e.synthetic?t.skipFirstLines:0),t.chunkIdMap)),_({},e,{cause:n,stack:r})}applyChunkIds(e,t){return e.map((e=>(e.filename&&t&&(e.chunk_id=t[e.filename]),e)))}applyCoercers(e,t){for(var n of this.coercers)if(n.match(e))return n.coerce(e,t);return this.coerceFallback(t)}applyModifiers(e){var t=this;return g((function*(){var n=e;for(var r of t.modifiers)n=yield r(n);return n}))()}convertToExceptionList(e,t){var n,r,i={type:e.type,value:e.value,mechanism:{type:t.type??`generic`,handled:(n=t.handled)==null||n,synthetic:(r=e.synthetic)!=null&&r}};e.stack&&(i.stacktrace={type:`raw`,frames:e.stack});var a=[i];return e.cause!=null&&a.push(...this.convertToExceptionList(e.cause,_({},t,{handled:!0}))),a}buildParsingContext(e){return{chunkIdMap:Et(this.stackParser),skipFirstLines:e.skipFirstLines??1}}buildCoercingContext(e,t,n){n===void 0&&(n=0);var r=(n,r)=>{if(4>=r){var i=this.buildCoercingContext(e,t,r);return this.applyCoercers(n,i)}};return _({},t,{syntheticException:n==0?t.syntheticException:void 0,mechanism:e,apply:e=>r(e,n),next:e=>r(e,n+1)})}},Ot=`?`;function kt(e,t,n,r,i){var a={platform:e,filename:t,function:n===`<anonymous>`?Ot:n,in_app:!0};return F(r)||(a.lineno=r),F(i)||(a.colno=i),a}var At=(e,t)=>{var n=e.indexOf(`safari-extension`)!==-1,r=e.indexOf(`safari-web-extension`)!==-1;return n||r?[e.indexOf(`@`)===-1?Ot:e.split(`@`)[0],n?`safari-extension:`+t:`safari-web-extension:`+t]:[e,t]},jt=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,Mt=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Nt=/\((\S*)(?::(\d+))(?::(\d+))\)/,Pt=(e,t)=>{var n=jt.exec(e);if(n){var[,r,i,a]=n;return kt(t,r,Ot,+i,+a)}var o=Mt.exec(e);if(o){if(o[2]&&o[2].indexOf(`eval`)===0){var s=Nt.exec(o[2]);s&&(o[2]=s[1],o[3]=s[2],o[4]=s[3])}var[c,l]=At(o[1]||Ot,o[2]);return kt(t,l,c,o[3]?+o[3]:void 0,o[4]?+o[4]:void 0)}},Ft=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,It=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,Lt=(e,t)=>{var n=Ft.exec(e);if(n){if(n[3]&&n[3].indexOf(` > eval`)>-1){var r=It.exec(n[3]);r&&(n[1]=n[1]||`eval`,n[3]=r[1],n[4]=r[2],n[5]=``)}var i=n[3],a=n[1]||Ot;return[a,i]=At(a,i),kt(t,i,a,n[4]?+n[4]:void 0,n[5]?+n[5]:void 0)}},Rt=/\(error: (.*)\)/,zt=class{match(e){return this.isDOMException(e)||this.isDOMError(e)}coerce(e,t){var n=I(e.stack);return{type:this.getType(e),value:this.getValue(e),stack:n?e.stack:void 0,cause:e.cause?t.next(e.cause):void 0,synthetic:!1}}getType(e){return this.isDOMError(e)?`DOMError`:`DOMException`}getValue(e){var t=e.name||(this.isDOMError(e)?`DOMError`:`DOMException`);return e.message?t+`: `+e.message:t}isDOMException(e){return ue(e,`DOMException`)}isDOMError(e){return ue(e,`DOMError`)}},Bt=class{match(e){return(e=>e instanceof Error)(e)}coerce(e,t){return{type:this.getType(e),value:this.getMessage(e,t),stack:this.getStack(e),cause:e.cause?t.next(e.cause):void 0,synthetic:!1}}getType(e){return e.name||e.constructor.name}getMessage(e,t){var n=e.message;return String(n.error&&typeof n.error.message==`string`?n.error.message:n)}getStack(e){return e.stacktrace||e.stack||void 0}},Vt=class{constructor(){}match(e){return ue(e,`ErrorEvent`)&&e.error!=null}coerce(e,t){return t.apply(e.error)||{type:`ErrorEvent`,value:e.message,stack:t.syntheticException?.stack,synthetic:!0}}},Ht=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i,Ut=class{match(e){return typeof e==`string`}coerce(e,t){var[n,r]=this.getInfos(e);return{type:n??`Error`,value:r??e,stack:t.syntheticException?.stack,synthetic:!0}}getInfos(e){var t=`Error`,n=e,r=e.match(Ht);return r&&(t=r[1],n=r[2]),[t,n]}},Wt=[`fatal`,`error`,`warning`,`log`,`info`,`debug`];function Gt(e,t){t===void 0&&(t=40);var n=Object.keys(e);if(n.sort(),!n.length)return`[object has no keys]`;for(var r=n.length;r>0;r--){var i=n.slice(0,r).join(`, `);if(t>=i.length)return r===n.length?i:i.length>t?i.slice(0,t)+`...`:i}return``}var Kt=class{match(e){return typeof e==`object`&&!!e}coerce(e,t){var n=this.getErrorPropertyFromObject(e);return n?t.apply(n):{type:this.getType(e),value:this.getValue(e),stack:t.syntheticException?.stack,level:this.isSeverityLevel(e.level)?e.level:`error`,synthetic:!0}}getType(e){return de(e)?e.constructor.name:`Error`}getValue(e){if(`name`in e&&typeof e.name==`string`){var t=`'`+e.name+`' captured as exception`;return`message`in e&&typeof e.message==`string`&&(t+=` with message: '`+e.message+`'`),t}if(`message`in e&&typeof e.message==`string`)return e.message;var n=this.getObjectClassName(e);return(n&&n!==`Object`?`'`+n+`'`:`Object`)+` captured as exception with keys: `+Gt(e)}isSeverityLevel(e){return I(e)&&!ae(e)&&Wt.indexOf(e)>=0}getErrorPropertyFromObject(e){for(var t in e)if({}.hasOwnProperty.call(e,t)){var n=e[t];if(xt(n))return n}}getObjectClassName(e){try{var t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{return}}},qt=class{match(e){return de(e)}coerce(e,t){var n=e.constructor.name;return{type:n,value:n+` captured as exception with keys: `+Gt(e),stack:t.syntheticException?.stack,synthetic:!0}}},Jt=class{match(e){return le(e)}coerce(e,t){return{type:`Error`,value:`Primitive value captured as exception: `+String(e),stack:t.syntheticException?.stack,synthetic:!0}}},Yt=class{match(e){return ue(e,`PromiseRejectionEvent`)||this.isCustomEventWrappingRejection(e)}isCustomEventWrappingRejection(e){if(!de(e))return!1;try{var t=e.detail;return typeof t==`object`&&!!t&&`reason`in t}catch{return!1}}coerce(e,t){var n=this.getUnhandledRejectionReason(e);return le(n)?{type:`UnhandledRejection`,value:`Non-Error promise rejection captured with value: `+String(n),stack:t.syntheticException?.stack,synthetic:!0}:t.apply(n)}getUnhandledRejectionReason(e){try{if(`reason`in e)return e.reason;if(`detail`in e&&e.detail!=null&&typeof e.detail==`object`&&`reason`in e.detail)return e.detail.reason}catch{}return e}},Xt=`$message`,Zt=`$timestamp`,Qt=new Set([Xt,Zt]),$t={enabled:!0,max_bytes:32768};function en(e){return e?{enabled:e.enabled??$t.enabled,max_bytes:nn(e.max_bytes,$t.max_bytes)}:_({},$t)}var tn=class{constructor(e){this.Yt=[],this.Xt=0,this.qt=en(e)}setConfig(e){this.qt=en(e),this.er()}add(e){var t=function(e){var t=function(e){var t=new WeakSet;try{return JSON.stringify(e,((e,n)=>{if(typeof n==`bigint`)return n.toString();if(typeof n!=`function`&&typeof n!=`symbol`){if(n instanceof Date)return n.toISOString();if(n instanceof Error)return{name:n.name,message:n.message,stack:n.stack};if(n&&typeof n==`object`){if(t.has(n))return`[Circular]`;t.add(n)}return n}}))}catch{return}}(e);if(t)try{var n=JSON.parse(t);if(!P(n))return;var r=n,i=r[Xt],a=r[Zt];return!I(i)||i.trim().length===0||!I(a)&&!z(a)?void 0:{step:r,json:t}}catch{return}}(e);if(t){var n=function(e){if(typeof TextEncoder<`u`)return new TextEncoder().encode(e).length;for(var t=encodeURIComponent(e),n=0,r=0;t.length>r;r++)t[r]===`%`?(n+=1,r+=2):n+=1;return n}(t.json);n>this.qt.max_bytes||(this.Yt.push({step:t.step,bytes:n}),this.Xt+=n,this.er())}}getAttachable(){return this.Yt.map((e=>e.step))}clear(){this.Yt=[],this.Xt=0}size(){return this.Yt.length}er(){for(;this.Xt>this.qt.max_bytes&&this.Yt.length>0;){var e=this.Yt.shift();e&&(this.Xt-=e.bytes)}}};function nn(e,t){if(!z(e)||e===1/0||e===-1/0)return t;var n=Math.floor(e);return 0>n?t:n}var rn=function(e,t){var{debugEnabled:r}=t===void 0?{}:t,i={k(t){if(n&&(m.DEBUG||f.POSTHOG_DEBUG||r)&&!F(n.console)&&n.console){for(var i=(`__rrweb_original__`in n.console[t])?n.console[t].__rrweb_original__:n.console[t],a=arguments.length,o=Array(a>1?a-1:0),s=1;a>s;s++)o[s-1]=arguments[s];i(e,...o)}},debug(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];i.k(`debug`,...t)},info(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];i.k(`log`,...t)},warn(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];i.k(`warn`,...t)},error(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];i.k(`error`,...t)},critical(){for(var t=arguments.length,n=Array(t),r=0;t>r;r++)n[r]=arguments[r];console.error(e,...n)},uninitializedWarning(e){i.error(`You must initialize PostHog before calling `+e)},createLogger:(t,n)=>rn(e+` `+t,n)};return i},U=rn(`[PostHog.js]`),W=U.createLogger,an=W(`[ExternalScriptsLoader]`),on=(e,t,n)=>{if(e.config.disable_external_dependency_loading)return an.warn(t+` was requested but loading of external scripts is disabled.`),n(`Loading of external scripts is disabled`);var r=a?.querySelectorAll(`script`);if(r){for(var i,o=function(){if(r[s].src===t){var e=r[s];return e.__posthog_loading_callback_fired?{v:n()}:(e.addEventListener(`load`,(t=>{e.__posthog_loading_callback_fired=!0,n(void 0,t)})),e.onerror=e=>n(e),{v:void 0})}},s=0;r.length>s;s++)if(i=o())return i.v}var c=()=>{if(!a)return n(`document not found`);var r=a.createElement(`script`);if(r.type=`text/javascript`,r.crossOrigin=`anonymous`,r.src=t,r.onload=e=>{r.__posthog_loading_callback_fired=!0,n(void 0,e)},r.onerror=e=>n(e),e.config.prepare_external_dependency_script&&(r=e.config.prepare_external_dependency_script(r)),!r)return n(`prepare_external_dependency_script returned null`);if(e.config.external_scripts_inject_target===`head`)a.head.appendChild(r);else{var i,o=a.querySelectorAll(`body > script`);o.length>0?(i=o[0].parentNode)==null||i.insertBefore(r,o[0]):a.body.appendChild(r)}};a!=null&&a.body?c():a?.addEventListener(`DOMContentLoaded`,c)};f.__PosthogExtensions__=f.__PosthogExtensions__||{},f.__PosthogExtensions__.loadExternalDependency=(e,t,n)=>{if(t!==`remote-config`){var r;if(e.config.__preview_external_dependency_versioned_paths)r=e.requestRouter.endpointFor(`assets`,`/static/`+e.version+`/`+t+`.js`);else{var i=`/static/`+t+`.js?v=`+e.version;if(t===`toolbar`){var a=3e5;i=i+`&t=`+Math.floor(Date.now()/a)*a}r=e.requestRouter.endpointFor(`assets`,i)}on(e,r,n)}else on(e,e.requestRouter.endpointFor(`assets`,`/array/`+e.config.token+`/config.js`),n)},f.__PosthogExtensions__.loadSiteApp=(e,t,n)=>{on(e,e.requestRouter.endpointFor(`api`,t),n)};var sn=`$people_distinct_id`,cn=`$device_id`,ln=`__alias`,un=`__timers`,dn=`$autocapture_disabled_server_side`,fn=`$heatmaps_enabled_server_side`,pn=`$exception_capture_enabled_server_side`,mn=`$error_tracking_suppression_rules`,hn=`$error_tracking_capture_extension_exceptions`,gn=`$web_vitals_enabled_server_side`,_n=`$dead_clicks_enabled_server_side`,vn=`$product_tours_enabled_server_side`,yn=`$web_vitals_allowed_metrics`,bn=`$session_recording_remote_config`,xn=`$replay_override_sampling`,Sn=`$replay_override_linked_flag`,Cn=`$replay_override_url_trigger`,wn=`$replay_override_event_trigger`,Tn=`$sesid`,En=`$session_is_sampled`,Dn=`$enabled_feature_flags`,On=`$active_feature_flags`,kn=`$early_access_features`,An=`$feature_flag_details`,jn=`$feature_flag_payloads`,Mn=`$feature_flag_request_id`,Nn=`$override_feature_flags`,Pn=`$override_feature_flag_payloads`,Fn=`$stored_person_properties`,In=`$stored_group_properties`,Ln=`$surveys`,Rn=`$surveys_activated`,zn=`ph_product_tours`,Bn=`$flag_call_reported`,Vn=`$flag_call_reported_session_id`,Hn=`$feature_flag_errors`,Un=`$feature_flag_evaluated_at`,Wn=`$user_state`,Gn=`$client_session_props`,Kn=`$capture_rate_limit`,qn=`$initial_campaign_params`,Jn=`$initial_referrer_info`,Yn=`$initial_person_info`,Xn=`$epp`,Zn=`__POSTHOG_TOOLBAR__`,Qn=`$posthog_cookieless`,$n=`$sdk_debug_extensions_init_method`,er=`$sdk_debug_extensions_init_time_ms`,tr=`$sdk_debug_recording_script_not_loaded`,nr=`PostHog loadExternalDependency extension not found.`,rr=`on_reject`,ir=`always`,ar=`anonymous`,or=`identified`,sr=`identified_only`,cr=`visibilitychange`,lr=`beforeunload`,ur=`$pageview`,dr=`$pageleave`,fr=`$identify`,pr=`$groupidentify`;function mr(e,t){M(e)&&e.forEach(t)}function G(e,t){if(!R(e))if(M(e))e.forEach(t);else if(se(e))e.forEach(((e,n)=>t(e,n)));else for(var n in e)j.call(e,n)&&t(e[n],n)}var K=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r];for(var i of n)for(var a in i)i[a]!==void 0&&(e[a]=i[a]);return e};function hr(e){for(var t=Object.keys(e),n=t.length,r=Array(n);n--;)r[n]=[t[n],e[t[n]]];return r}var gr=function(e){try{return e()}catch{return}},_r=function(e){return function(){try{for(var t=arguments.length,n=Array(t),r=0;t>r;r++)n[r]=arguments[r];return e.apply(this,n)}catch(e){U.critical(`Implementation error. Please turn on debug mode and open a ticket on https://app.posthog.com/home#panel=support%3Asupport%3A.`),U.critical(e)}}},vr=function(e){var t={};return G(e,(function(e,n){(I(e)&&e.length>0||z(e))&&(t[n]=e)})),t},yr=[`herokuapp.com`,`vercel.app`,`netlify.app`];function br(e){var t=e?.hostname;if(!I(t))return!1;var n=t.split(`.`).slice(-2).join(`.`);for(var r of yr)if(n===r)return!1;return!0}function q(e,t,n,r){var{capture:i=!1,passive:a=!0}=r??{};e?.addEventListener(t,n,{capture:i,passive:a})}function xr(e){return e.name===`ph_toolbar_internal`}Math.trunc||(Math.trunc=function(e){return 0>e?Math.ceil(e):Math.floor(e)}),Number.isInteger||(Number.isInteger=function(e){return z(e)&&isFinite(e)&&Math.floor(e)===e});var Sr=class e{constructor(e){if(this.bytes=e,e.length!==16)throw TypeError(`not 128-bit length`)}static fromFieldsV7(t,n,r,i){if(!Number.isInteger(t)||!Number.isInteger(n)||!Number.isInteger(r)||!Number.isInteger(i)||0>t||0>n||0>r||0>i||t>0xffffffffffff||n>4095||r>1073741823||i>4294967295)throw RangeError(`invalid field value`);var a=new Uint8Array(16);return a[0]=t/2**40,a[1]=t/2**32,a[2]=t/2**24,a[3]=t/2**16,a[4]=t/2**8,a[5]=t,a[6]=112|n>>>8,a[7]=n,a[8]=128|r>>>24,a[9]=r>>>16,a[10]=r>>>8,a[11]=r,a[12]=i>>>24,a[13]=i>>>16,a[14]=i>>>8,a[15]=i,new e(a)}toString(){for(var e=``,t=0;this.bytes.length>t;t++)e=e+(this.bytes[t]>>>4).toString(16)+(15&this.bytes[t]).toString(16),t!==3&&t!==5&&t!==7&&t!==9||(e+=`-`);if(e.length!==36)throw Error(`Invalid UUIDv7 was generated`);return e}clone(){return new e(this.bytes.slice(0))}equals(e){return this.compareTo(e)===0}compareTo(e){for(var t=0;16>t;t++){var n=this.bytes[t]-e.bytes[t];if(n!==0)return Math.sign(n)}return 0}},Cr=class{constructor(){this.S=0,this.C=0,this.I=new Er}generate(){var e=this.generateOrAbort();if(F(e)){this.S=0;var t=this.generateOrAbort();if(F(t))throw Error(`Could not generate UUID after timestamp reset`);return t}return e}generateOrAbort(){var e=Date.now();if(e>this.S)this.S=e,this.T();else{if(this.S>=e+1e4)return;this.C++,this.C>4398046511103&&(this.S++,this.T())}return Sr.fromFieldsV7(this.S,Math.trunc(this.C/2**30),this.C&2**30-1,this.I.nextUint32())}T(){this.C=1024*this.I.nextUint32()+(1023&this.I.nextUint32())}},wr,Tr=e=>{if(typeof UUIDV7_DENY_WEAK_RNG<`u`&&UUIDV7_DENY_WEAK_RNG)throw Error(`no cryptographically strong RNG available`);for(var t=0;e.length>t;t++)e[t]=65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random());return e};n&&!F(n.crypto)&&crypto.getRandomValues&&(Tr=e=>crypto.getRandomValues(e));var Er=class{constructor(){this.M=new Uint32Array(8),this.R=1/0}nextUint32(){return this.M.length>this.R||(Tr(this.M),this.R=0),this.M[this.R++]}},Dr=()=>Or().toString(),Or=()=>(wr||=new Cr).generate(),kr=``,Ar=/[a-z0-9][a-z0-9-]+\.[a-z]{2,}$/i,jr={O:()=>!!a,D(e){U.error(`cookieStore error: `+e)},A(e){if(a){try{for(var t=e+`=`,n=a.cookie.split(`;`).filter((e=>e.length)),r=0;n.length>r;r++){for(var i=n[r];i.charAt(0)==` `;)i=i.substring(1,i.length);if(i.indexOf(t)===0)return decodeURIComponent(i.substring(t.length,i.length))}}catch{}return null}},F(e){var t;try{t=JSON.parse(jr.A(e))||{}}catch{}return t},N(e,t,n,r,i){if(a)try{var o=``,s=``,c=function(e,t){if(t){var n=function(e,t){if(t===void 0&&(t=a),kr)return kr;if(!t||[`localhost`,`127.0.0.1`].includes(e))return``;for(var n=e.split(`.`),r=Math.min(n.length,8),i=`dmn_chk_`+Dr();!kr&&r--;){var o=n.slice(r).join(`.`),s=i+`=1;domain=.`+o+`;path=/`;t.cookie=s+`;max-age=3`,t.cookie.includes(i)&&(t.cookie=s+`;max-age=0`,kr=o)}return kr}(e);if(!n){var r=(e=>{var t=e.match(Ar);return t?t[0]:``})(e);r!==n&&U.info(`Warning: cookie subdomain discovery mismatch`,r,n),n=r}return n?`; domain=.`+n:``}return``}(a.location.hostname,r);if(n){var l=new Date;l.setTime(l.getTime()+864e5*n),o=`; expires=`+l.toUTCString()}i&&(s=`; secure`);var u=e+`=`+encodeURIComponent(JSON.stringify(t))+o+`; SameSite=Lax; path=/`+c+s;return u.length>3686.4&&U.warn(`cookieStore warning: large cookie, len=`+u.length),a.cookie=u,u}catch{return}},q(e,t){if(a!=null&&a.cookie)try{jr.N(e,``,-1,t)}catch{return}}},Mr=null,J={O(){if(!L(Mr))return Mr;var e=!0;if(F(n))e=!1;else try{var t=`__mplssupport__`;J.N(t,`xyz`),J.A(t)!==`"xyz"`&&(e=!1),J.q(t)}catch{e=!1}return e||U.error(`localStorage unsupported; falling back to cookie store`),Mr=e,e},D(e){U.error(`localStorage error: `+e)},A(e){try{return n?.localStorage.getItem(e)}catch(e){J.D(e)}return null},F(e){try{return JSON.parse(J.A(e))||{}}catch{}return null},N(e,t){try{n?.localStorage.setItem(e,JSON.stringify(t))}catch(e){J.D(e)}},q(e){try{n?.localStorage.removeItem(e)}catch(e){J.D(e)}}},Nr=[cn,`distinct_id`,Tn,En,Xn,Yn,Wn],Pr={},Fr={O:()=>!0,D(e){U.error(`memoryStorage error: `+e)},A:e=>Pr[e]||null,F:e=>Pr[e]||null,N(e,t){Pr[e]=t},q(e){delete Pr[e]}},Ir=null,Y={O(){if(!L(Ir))return Ir;if(Ir=!0,F(n))Ir=!1;else try{var e=`__support__`;Y.N(e,`xyz`),Y.A(e)!==`"xyz"`&&(Ir=!1),Y.q(e)}catch{Ir=!1}return Ir},D(e){U.error(`sessionStorage error: `,e)},A(e){try{return n?.sessionStorage.getItem(e)}catch(e){Y.D(e)}return null},F(e){try{return JSON.parse(Y.A(e))||null}catch{}return null},N(e,t){try{n?.sessionStorage.setItem(e,JSON.stringify(t))}catch(e){Y.D(e)}},q(e){try{n?.sessionStorage.removeItem(e)}catch(e){Y.D(e)}}},Lr=class{constructor(e){this._instance=e}get qt(){return this._instance.config}get consent(){return this.rr()?0:this.ir}isOptedOut(){return this.qt.cookieless_mode===ir||this.isRejected()||this.consent===-1&&this.qt.cookieless_mode===rr}isOptedIn(){return!this.isOptedOut()}isExplicitlyOptedOut(){return this.consent===0}isRejected(){return this.consent===0||this.consent===-1&&this.qt.opt_out_capturing_by_default}optInOut(e){this.nr.N(this.sr,+!!e,this.qt.cookie_expiration,this.qt.cross_subdomain_cookie,this.qt.secure_cookie)}reset(){this.nr.q(this.sr,this.qt.cross_subdomain_cookie)}get sr(){var{token:e,opt_out_capturing_cookie_prefix:t,consent_persistence_name:n}=this._instance.config;return n||(t?t+e:`__ph_opt_in_out_`+e)}get ir(){var e=this.nr.A(this.sr);return pe(e)?1:O(me,e)?0:-1}get nr(){var e=this.qt.opt_out_capturing_persistence_type,t=e===`localStorage`?J:jr;if(!this.ar||this.ar!==t){this.ar=t;var n=e===`localStorage`?jr:J;n.A(this.sr)&&(this.ar.A(this.sr)||this.optInOut(pe(n.A(this.sr))),n.q(this.sr,this.qt.cross_subdomain_cookie))}return this.ar}rr(){return!!this.qt.respect_dnt&&[i?.doNotTrack,i?.msDoNotTrack,f.doNotTrack].some((e=>pe(e)))}},Rr=W(`[Dead Clicks]`),zr=()=>!0,Br=e=>{var t,n=!((t=e.instance.persistence)==null||!t.get_property(_n)),r=e.instance.config.capture_dead_clicks;return B(r)?r:!!P(r)||n},Vr=class{get lazyLoadedDeadClicksAutocapture(){return this.ur}constructor(e,t,n){this.instance=e,this.isEnabled=t,this.onCapture=n,this.startIfEnabledOrStop()}onRemoteConfig(e){`captureDeadClicks`in e&&(this.instance.persistence&&this.instance.persistence.register({[_n]:e.captureDeadClicks}),this.startIfEnabledOrStop())}startIfEnabledOrStop(){this.isEnabled(this)?this.lr((()=>{this.hr()})):this.stop()}lr(e){var t,n;(t=f.__PosthogExtensions__)!=null&&t.initDeadClicksAutocapture&&e(),(n=f.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this.instance,`dead-clicks-autocapture`,(t=>{t?Rr.error(`failed to load script`,t):e()}))}hr(){var e;if(a){if(!this.ur&&(e=f.__PosthogExtensions__)!=null&&e.initDeadClicksAutocapture){var t=P(this.instance.config.capture_dead_clicks)?this.instance.config.capture_dead_clicks:{};t.__onCapture=this.onCapture,this.ur=f.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,t),this.ur.start(a),Rr.info(`starting...`)}}else Rr.error("`document` not found. Cannot start.")}stop(){this.ur&&(this.ur.stop(),this.ur=void 0,Rr.info(`stopping...`))}},Hr=W(`[SegmentIntegration]`),Ur=`posthog-js`;function Wr(e,t){var{organization:n,projectId:r,prefix:i,severityAllowList:a=[`error`],sendExceptionsToPostHog:o=!0}=t===void 0?{}:t;return t=>{if(a!==`*`&&!a.includes(t.level)||!e.__loaded)return t;t.tags||={};var s=e.requestRouter.endpointFor(`ui`,`/project/`+e.config.token+`/person/`+e.get_distinct_id());t.tags[`PostHog Person URL`]=s,e.sessionRecordingStarted()&&(t.tags[`PostHog Recording URL`]=e.get_session_replay_url({withTimestamp:!0}));var c,l=t.exception?.values||[],u=l.map((e=>_({},e,{stacktrace:e.stacktrace?_({},e.stacktrace,{type:`raw`,frames:(e.stacktrace.frames||[]).map((e=>_({},e,{platform:`web:javascript`})))}):void 0}))),d={$exception_message:l[0]?.value||t.message,$exception_type:l[0]?.type,$exception_level:t.level,$exception_list:u,$sentry_event_id:t.event_id,$sentry_exception:t.exception,$sentry_exception_message:l[0]?.value||t.message,$sentry_exception_type:l[0]?.type,$sentry_tags:t.tags};return n&&r&&(d.$sentry_url=(i||`https://sentry.io/organizations/`)+n+`/issues/?project=`+r+`&query=`+t.event_id),o&&((c=e.exceptions)==null||c.sendExceptionEvent(d)),t}}var Gr=class{constructor(e,t,n,r,i,a){this.name=Ur,this.setupOnce=function(o){o(Wr(e,{organization:t,projectId:n,prefix:r,severityAllowList:i,sendExceptionsToPostHog:a==null||a}))}}},Kr=class{constructor(e){this.cr=(e,t,n)=>{n&&(n.noSessionId||n.activityTimeout||n.sessionPastMaximumLength)&&(U.info(`[PageViewManager] Session rotated, clearing pageview state`,{sessionId:e,changeReason:n}),this.dr=void 0,this._instance.scrollManager.resetContext())},this._instance=e,this.vr()}vr(){this.pr=this._instance.sessionManager?.onSessionId(this.cr)}destroy(){var e;(e=this.pr)==null||e.call(this),this.pr=void 0}doPageView(e,t){var r=this.gr(e,t);return this.dr={pathname:n?.location.pathname??``,pageViewId:t,timestamp:e},this._instance.scrollManager.resetContext(),r}doPageLeave(e){return this.gr(e,this.dr?.pageViewId)}doEvent(){return{$pageview_id:this.dr?.pageViewId}}gr(e,t){var n=this.dr;if(!n)return{$pageview_id:t};var r={$pageview_id:t,$prev_pageview_id:n.pageViewId},i=this._instance.scrollManager.getContext();if(i&&!this._instance.config.disable_scroll_properties){var{maxScrollHeight:a,lastScrollY:o,maxScrollY:s,maxContentHeight:c,lastContentY:l,maxContentY:u}=i;if(!(F(a)||F(o)||F(s)||F(c)||F(l)||F(u))){a=Math.ceil(a),o=Math.ceil(o),s=Math.ceil(s),c=Math.ceil(c),l=Math.ceil(l),u=Math.ceil(u);var d=a>1?he(o/a,0,1,U):1,f=a>1?he(s/a,0,1,U):1,p=c>1?he(l/c,0,1,U):1,m=c>1?he(u/c,0,1,U):1;r=K(r,{$prev_pageview_last_scroll:o,$prev_pageview_last_scroll_percentage:d,$prev_pageview_max_scroll:s,$prev_pageview_max_scroll_percentage:f,$prev_pageview_last_content:l,$prev_pageview_last_content_percentage:p,$prev_pageview_max_content:u,$prev_pageview_max_content_percentage:m})}}return n.pathname&&(r.$prev_pageview_pathname=n.pathname),n.timestamp&&(r.$prev_pageview_duration=(e.getTime()-n.timestamp.getTime())/1e3),r}},qr={[sn]:{exposure:`hidden`},[ln]:{exposure:`hidden`},__cmpns:{exposure:`hidden`},[un]:{exposure:`hidden`},[dn]:{exposure:`event`},[fn]:{exposure:`hidden`},[pn]:{exposure:`event`},[mn]:{exposure:`hidden`},[hn]:{exposure:`event`},[gn]:{exposure:`event`},[_n]:{exposure:`event`},[vn]:{exposure:`hidden`},[yn]:{exposure:`event`},[bn]:{exposure:`hidden`},$session_recording_enabled_server_side:{exposure:`hidden`},[Tn]:{exposure:`hidden`},[En]:{exposure:`event`},$session_past_minimum_duration:{exposure:`event`},$session_recording_url_trigger_activated_session:{exposure:`event`},$session_recording_event_trigger_activated_session:{exposure:`event`},$debug_first_full_snapshot_timestamp:{exposure:`event`},[Dn]:{exposure:`derived`,shouldSkipFromEventProperties:(e,t)=>t(),transformToEventProperties(e){if(!P(e))return{};for(var t={},n=Object.keys(e),r=0;n.length>r;r++)t[`$feature/`+n[r]]=e[n[r]];return t}},[On]:{exposure:`event`},[kn]:{exposure:`hidden`},[An]:{exposure:`hidden`},[jn]:{exposure:`event`},[Mn]:{exposure:`event`},[Nn]:{exposure:`event`},[Pn]:{exposure:`hidden`},[Fn]:{exposure:`hidden`},[In]:{exposure:`hidden`},[Ln]:{exposure:`hidden`},[Rn]:{exposure:`event`},[zn]:{exposure:`hidden`},$product_tours_activated:{exposure:`hidden`},$conversations_widget_session_id:{exposure:`event`},$conversations_ticket_id:{exposure:`event`},$conversations_widget_state:{exposure:`event`},$conversations_user_traits:{exposure:`event`},[Bn]:{exposure:`hidden`},[Vn]:{exposure:`hidden`},[Hn]:{exposure:`hidden`},[Un]:{exposure:`hidden`},[Wn]:{exposure:`hidden`},[Gn]:{exposure:`hidden`},[Kn]:{exposure:`hidden`},[qn]:{exposure:`hidden`},[Jn]:{exposure:`hidden`},[Yn]:{exposure:`hidden`},[Xn]:{exposure:`hidden`},[xn]:{exposure:`event`},[Sn]:{exposure:`event`},[Cn]:{exposure:`event`},[wn]:{exposure:`event`},[$n]:{exposure:`event`},[er]:{exposure:`event`},[tr]:{exposure:`event`},$sdk_debug_replay_event_trigger_status:{exposure:`event`},$sdk_debug_replay_linked_flag_trigger_status:{exposure:`event`},$sdk_debug_replay_matched_recording_trigger_groups:{exposure:`event`},$sdk_debug_replay_remote_trigger_matching_config:{exposure:`event`},$sdk_debug_replay_trigger_groups_count:{exposure:`event`},$sdk_debug_replay_url_trigger_status:{exposure:`event`},$session_recording_start_reason:{exposure:`event`}},Jr=[[`$posthog_sr_group_event_trigger_`,{exposure:`hidden`}],[`$posthog_sr_group_url_trigger_`,{exposure:`hidden`}],[`$posthog_sr_group_sampling_`,{exposure:`hidden`}]],Yr=e=>{var t=a?.createElement(`a`);return F(t)?null:(t.href=e,t)},Xr=function(e,t){for(var n,r=((e.split(`#`)[0]||``).split(/\?(.*)/)[1]||``).replace(/^\?+/g,``).split(`&`),i=0;r.length>i;i++){var a=r[i].split(`=`);if(a[0]===t){n=a;break}}if(!M(n)||2>n.length)return``;var o=n[1];try{o=decodeURIComponent(o)}catch{U.error(`Skipping decoding for malformed query param: `+o)}return o.replace(/\+/g,` `)},Zr=function(e,t,n){if(!e||!t||!t.length)return e;for(var r=e.split(`#`),i=r[1],a=(r[0]||``).split(`?`),o=a[1],s=a[0],c=(o||``).split(`&`),l=[],u=0;c.length>u;u++){var d=c[u].split(`=`);M(d)&&(t.includes(d[0])?l.push(d[0]+`=`+n):l.push(c[u]))}var f=s;return o!=null&&(f+=`?`+l.join(`&`)),i!=null&&(f+=`#`+i),f},Qr=function(e,t){var n=e.match(RegExp(t+`=([^&]*)`));return n?n[1]:null},$r=`https?://(.*)`,ei=[`gclid`,`gclsrc`,`dclid`,`gbraid`,`wbraid`,`fbclid`,`msclkid`,`twclid`,`li_fat_id`,`igshid`,`ttclid`,`rdt_cid`,`epik`,`qclid`,`sccid`,`irclid`,`_kx`],ti=[`utm_source`,`utm_medium`,`utm_campaign`,`utm_content`,`utm_term`,`gad_source`,`mc_cid`,...ei],ni=`<masked>`,ri=[`li_fat_id`];function ii(e,t,n){if(!a)return{};var r,i=t?[...ei,...n||[]]:[],o=ai(Zr(a.URL,i,ni),e);return K((r={},G(ri,(function(e){var t=jr.A(e);r[e]=t||null})),r),o)}function ai(e,t){var n=ti.concat(t||[]),r={};return G(n,(function(t){r[t]=Xr(e,t)||null})),r}function oi(e){var t=function(e){return e?e.search($r+`google.([^/?]*)`)===0?`google`:e.search($r+`bing.com`)===0?`bing`:e.search($r+`yahoo.com`)===0?`yahoo`:e.search($r+`duckduckgo.com`)===0?`duckduckgo`:null:null}(e),n=t==`yahoo`?`p`:`q`,r={};if(!L(t)){r.$search_engine=t;var i=a?Xr(a.referrer,n):``;i.length&&(r.ph_keyword=i)}return r}function si(){return navigator.language||navigator.userLanguage}var ci=`$direct`;function li(){return a?.referrer||ci}function ui(e,t){var n=e?[...ei,...t||[]]:[],r=o?.href.substring(0,1e3);return{r:li().substring(0,1e3),u:r?Zr(r,n,ni):void 0}}function di(e){var{r:t,u:n}=e,r={$referrer:t,$referring_domain:t==null?void 0:t==ci?ci:Yr(t)?.host};if(n){r.$current_url=n;var i=Yr(n);r.$host=i?.host,r.$pathname=i?.pathname,K(r,ai(n))}return t&&K(r,oi(t)),r}function fi(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{return}}function pi(){try{return new Date().getTimezoneOffset()}catch{return}}var mi=[`cookie`,`localstorage`,`localstorage+cookie`,`sessionstorage`,`memory`],hi=class{constructor(e,t){if(this.qt=e,this.props={},this.mr=!1,this.yr=(e=>{var t=``;return e.token&&(t=e.token.replace(/\+/g,`PL`).replace(/\//g,`SL`).replace(/=/g,`EQ`)),e.persistence_name?`ph_`+e.persistence_name:`ph_`+t+`_posthog`})(e),this.nr=this.br(e),this.load(),e.debug&&U.info(`Persistence loaded`,e.persistence,_({},this.props)),this.update_config(e,e,t),this.save(),n){var r=()=>this.flush();q(n,`beforeunload`,r,{capture:!1}),q(n,`pagehide`,r,{capture:!1})}}_r(){var e=this.qt?.persistence_save_debounce_ms;return z(e)&&e>0?e:0}isDisabled(){return!!this.wr}br(e){mi.indexOf(e.persistence.toLowerCase())===-1&&(U.critical(`Unknown persistence type `+e.persistence+`; falling back to localStorage+cookie`),e.persistence=`localStorage+cookie`);var t=function(e){e===void 0&&(e=[]);var t=[...Nr,...e];return _({},J,{F(e){try{var t={};try{t=jr.F(e)||{}}catch{}var n=K(t,JSON.parse(J.A(e)||`{}`));return J.N(e,n),n}catch{}return null},N(e,n,r,i,a,o){try{J.N(e,n,void 0,void 0,o);var s={};t.forEach((e=>{n[e]&&(s[e]=n[e])})),Object.keys(s).length&&jr.N(e,s,r,i,a,o)}catch(e){J.D(e)}},q(e,t){try{n?.localStorage.removeItem(e),jr.q(e,t)}catch(e){J.D(e)}}})}(e.cookie_persisted_properties||[]),r=e.persistence.toLowerCase();return r===`localstorage`&&J.O()?J:r===`localstorage+cookie`&&t.O()?t:r===`sessionstorage`&&Y.O()?Y:r===`memory`?Fr:r===`cookie`?jr:t.O()?t:jr}Sr(e){var t=e??this.qt.feature_flag_cache_ttl_ms;if(!t||0>=t)return!1;var n=this.props[Un];return!n||typeof n!=`number`||Date.now()-n>t}properties(){var e={};return G(this.props,((t,n)=>{var r=(e=>{var t=qr[e];if(t)return t;for(var[n,r]of Jr)if(e.indexOf(n)===0)return r})(n);if(r?.exposure===`derived`){if(r.shouldSkipFromEventProperties!=null&&r.shouldSkipFromEventProperties(t,n===Dn?()=>this.Sr():()=>!1))return;r.transformToEventProperties&&K(e,r.transformToEventProperties(t))}else r&&r.exposure!==`event`||(e[n]=t)})),e}load(){if(!this.wr){var e=this.nr.F(this.yr);e&&(this.props=K({},e))}}refreshKey(e){if(!this.wr){var t=this.nr.F(this.yr);t&&e in t?this.kr(e,t[e]):this.Cr(e)}}save(){if(!this.wr){var e=this._r();e>0?F(this.Ir)&&(this.Ir=setTimeout((()=>{this.Ir=void 0,this.Tr()}),e)):this.Tr()}}flush(){F(this.Ir)||(clearTimeout(this.Ir),this.Ir=void 0,this.Tr())}Tr(){if(!this.wr){try{var e=JSON.stringify(this.props)+`|`+this.Er+`|`+this.Mr+`|`+this.Rr;if(e===this.Pr)return;this.Pr=e}catch{}this.nr.N(this.yr,this.props,this.Er,this.Mr,this.Rr,this.qt.debug)}}remove(){F(this.Ir)||(clearTimeout(this.Ir),this.Ir=void 0),this.nr.q(this.yr,!1),this.nr.q(this.yr,!0),this.Pr=void 0}clear(){this.remove(),this.props={}}register_once(e,t,n){if(P(e)){F(t)&&(t=`None`),this.Er=F(n)?this.Or:n;var r=!1;if(G(e,((e,n)=>{this.props.hasOwnProperty(n)&&this.props[n]!==t||(this.kr(n,e),r=!0)})),r)return this.save(),!0}return!1}register(e,t){if(P(e)){this.Er=F(t)?this.Or:t;var n=!1;if(G(e,((t,r)=>{e.hasOwnProperty(r)&&this.props[r]!==t&&(this.kr(r,t),n=!0)})),n)return this.save(),!0}return!1}unregister(e){e in this.props&&(this.Cr(e),this.save())}update_campaign_params(){if(!this.mr){var e=ii(this.qt.custom_campaign_params,this.qt.mask_personal_data_properties,this.qt.custom_personal_data_properties);ie(vr(e))||this.register(e),this.mr=!0}}update_search_keyword(){var e;this.register((e=a?.referrer)?oi(e):{})}update_referrer_info(){this.register_once({$referrer:li(),$referring_domain:a!=null&&a.referrer&&Yr(a.referrer)?.host||ci},void 0)}set_initial_person_info(){this.props[qn]||this.props[Jn]||this.register_once({[Yn]:ui(this.qt.mask_personal_data_properties,this.qt.custom_personal_data_properties)},void 0)}get_initial_props(){var e={};G([Jn,qn],(t=>{var n=this.props[t];n&&G(n,(function(t,n){e[`$initial_`+ne(n)]=t}))}));var t,n,r=this.props[Yn];return r&&K(e,(t=di(r),n={},G(t,(function(e,t){n[`$initial_`+ne(t)]=e})),n)),e}safe_merge(e){return G(this.props,(function(t,n){n in e||(e[n]=t)})),e}update_config(e,t,n){if(this.Or=this.Er=e.cookie_expiration,this.set_disabled(e.disable_persistence||!!n),this.set_cross_subdomain(e.cross_subdomain_cookie),this.set_secure(e.secure_cookie),e.persistence!==t.persistence||!((e,t)=>{if(e.length!==t.length)return!1;var n=[...e].sort(),r=[...t].sort();return n.every(((e,t)=>e===r[t]))})(e.cookie_persisted_properties||[],t.cookie_persisted_properties||[])){var r=this.br(e),i=this.props;this.clear(),this.nr=r,this.props=i,this.save()}}set_disabled(e){this.wr=e,this.wr?this.remove():this.save()}set_cross_subdomain(e){e!==this.Mr&&(this.Mr=e,this.remove(),this.save())}set_secure(e){e!==this.Rr&&(this.Rr=e,this.remove(),this.save())}set_event_timer(e,t){var n=this.props[un]||{};n[e]=t,this.kr(un,n),this.save()}remove_event_timer(e){var t=this.props[un]||{},n=t[e];return F(n)||(delete t[e],this.kr(un,t),this.save()),n}get_property(e){return this.props[e]}set_property(e,t){this.kr(e,t),this.save()}kr(e,t){this.props[e]=t}Cr(e){delete this.props[e]}},gi={Activation:`events`,Cancellation:`cancelEvents`},_i={Popover:`popover`,API:`api`,Widget:`widget`,ExternalSurvey:`external_survey`},vi={SHOWN:`survey shown`,DISMISSED:`survey dismissed`,SENT:`survey sent`,ABANDONED:`survey abandoned`},yi={SURVEY_ID:`$survey_id`,SURVEY_NAME:`$survey_name`,SURVEY_RESPONSE:`$survey_response`,SURVEY_ITERATION:`$survey_iteration`,SURVEY_ITERATION_START_DATE:`$survey_iteration_start_date`,SURVEY_PARTIALLY_COMPLETED:`$survey_partially_completed`,SURVEY_SUBMISSION_ID:`$survey_submission_id`,SURVEY_QUESTIONS:`$survey_questions`,SURVEY_COMPLETED:`$survey_completed`,PRODUCT_TOUR_ID:`$product_tour_id`,SURVEY_LAST_SEEN_DATE:`$survey_last_seen_date`,SURVEY_LANGUAGE:`$survey_language`},bi={Popover:`popover`,Inline:`inline`},xi={SHOWN:`product tour shown`,DISMISSED:`product tour dismissed`,COMPLETED:`product tour completed`,STEP_SHOWN:`product tour step shown`,STEP_COMPLETED:`product tour step completed`,BUTTON_CLICKED:`product tour button clicked`,STEP_SELECTOR_FAILED:`product tour step selector failed`,BANNER_CONTAINER_SELECTOR_FAILED:`product tour banner container selector failed`,BANNER_ACTION_CLICKED:`product tour banner action clicked`},Si={TOUR_ID:`$product_tour_id`,TOUR_NAME:`$product_tour_name`,TOUR_ITERATION:`$product_tour_iteration`,TOUR_RENDER_REASON:`$product_tour_render_reason`,TOUR_STEP_ID:`$product_tour_step_id`,TOUR_STEP_ORDER:`$product_tour_step_order`,TOUR_STEP_TYPE:`$product_tour_step_type`,TOUR_DISMISS_REASON:`$product_tour_dismiss_reason`,TOUR_BUTTON_TEXT:`$product_tour_button_text`,TOUR_BUTTON_ACTION:`$product_tour_button_action`,TOUR_BUTTON_LINK:`$product_tour_button_link`,TOUR_BUTTON_TOUR_ID:`$product_tour_button_tour_id`,TOUR_STEPS_COUNT:`$product_tour_steps_count`,TOUR_STEP_SELECTOR:`$product_tour_step_selector`,TOUR_STEP_SELECTOR_FOUND:`$product_tour_step_selector_found`,TOUR_STEP_ELEMENT_TAG:`$product_tour_step_element_tag`,TOUR_STEP_ELEMENT_ID:`$product_tour_step_element_id`,TOUR_STEP_ELEMENT_CLASSES:`$product_tour_step_element_classes`,TOUR_STEP_ELEMENT_TEXT:`$product_tour_step_element_text`,TOUR_ERROR:`$product_tour_error`,TOUR_MATCHES_COUNT:`$product_tour_matches_count`,TOUR_FAILURE_PHASE:`$product_tour_failure_phase`,TOUR_WAITED_FOR_ELEMENT:`$product_tour_waited_for_element`,TOUR_WAIT_DURATION_MS:`$product_tour_wait_duration_ms`,TOUR_BANNER_SELECTOR:`$product_tour_banner_selector`,TOUR_LINKED_SURVEY_ID:`$product_tour_linked_survey_id`,USE_MANUAL_SELECTOR:`$use_manual_selector`,INFERENCE_DATA_PRESENT:`$inference_data_present`,TOUR_LAST_SEEN_DATE:`$product_tour_last_seen_date`,TOUR_TYPE:`$product_tour_type`},Ci=W(`[RateLimiter]`),wi=class{constructor(e){this.serverLimits={},this.lastEventRateLimited=!1,this.checkForLimiting=e=>{var t=e.text;if(t&&t.length)try{(JSON.parse(t).quota_limited||[]).forEach((e=>{Ci.info((e||`events`)+` is quota limited.`),this.serverLimits[e]=new Date().getTime()+6e4}))}catch(e){Ci.warn(`could not rate limit - continuing. Error: "`+e?.message+`"`,{text:t});return}},this.instance=e,this.lastEventRateLimited=this.clientRateLimitContext(!0).isRateLimited}get captureEventsPerSecond(){return this.instance.config.rate_limiting?.events_per_second||10}get captureEventsBurstLimit(){return Math.max(this.instance.config.rate_limiting?.events_burst_limit||10*this.captureEventsPerSecond,this.captureEventsPerSecond)}clientRateLimitContext(e){var t;e===void 0&&(e=!1);var{captureEventsBurstLimit:n,captureEventsPerSecond:r}=this,i=new Date().getTime(),a=this.instance.persistence?.get_property(Kn)??{tokens:n,last:i};a.tokens+=(i-a.last)/1e3*r,a.last=i,a.tokens>n&&(a.tokens=n);var o=1>a.tokens;return o||e||(a.tokens=Math.max(0,a.tokens-1)),!o||this.lastEventRateLimited||e||this.instance.capture(`$$client_ingestion_warning`,{$$client_ingestion_warning_message:`posthog-js client rate limited. Config is set to `+r+` events per second and `+n+` events burst limit.`},{skip_client_rate_limiting:!0}),this.lastEventRateLimited=o,(t=this.instance.persistence)==null||t.set_property(Kn,a),{isRateLimited:o,remainingTokens:a.tokens}}isServerRateLimited(e){var t=this.serverLimits[e||`events`]||!1;return!1!==t&&new Date().getTime()<t}},Ti=W(`[RemoteConfig]`),Ei=class{constructor(e){this._instance=e}get remoteConfig(){var e;return(e=f._POSTHOG_REMOTE_CONFIG)==null||(e=e[this._instance.config.token])==null?void 0:e.config}Lr(e){var t,n;(t=f.__PosthogExtensions__)!=null&&t.loadExternalDependency?(n=f.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,`remote-config`,(()=>e(this.remoteConfig))):e()}Fr(e){this._instance._send_request({method:`GET`,url:this._instance.requestRouter.endpointFor(`assets`,`/array/`+this._instance.config.token+`/config`),callback(t){e(t.json)}})}load(){try{if(this.remoteConfig)return Ti.info(`Using preloaded remote config`,this.remoteConfig),this.Ar(this.remoteConfig),void this.Nr();if(this._instance.Dr())return void Ti.warn(`Remote config is disabled. Falling back to local config.`);this.Lr((e=>{if(!e)return Ti.info(`No config found after loading remote JS config. Falling back to JSON.`),void this.Fr((e=>{this.Ar(e),this.Nr()}));this.Ar(e),this.Nr()}))}catch(e){Ti.error(`Error loading remote config`,e)}}stop(){this.$r&&=(clearInterval(this.$r),void 0)}refresh(){!this._instance.Dr()&&a&&a.visibilityState!==`hidden`&&this._instance.reloadFeatureFlags()}Nr(){if(!this.$r){var e=this._instance.config.remote_config_refresh_interval_ms??3e5;e!==0&&(this.$r=setInterval((()=>{this.refresh()}),e))}}Ar(e){var t;e||Ti.error(`Failed to fetch remote config from PostHog.`),this._instance.Ar(e??{}),!1!==e?.hasFeatureFlags&&(this._instance.config.advanced_disable_feature_flags_on_first_load||(t=this._instance.featureFlags)==null||t.ensureFlagsLoaded())}},Di={GZipJS:`gzip-js`,Base64:`base64`},Oi=Uint8Array,X=Uint16Array,ki=Uint32Array,Ai=new Oi([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),ji=new Oi([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),Mi=new Oi([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Ni=function(e,t){for(var n=new X(31),r=0;31>r;++r)n[r]=t+=1<<e[r-1];var i=new ki(n[30]);for(r=1;30>r;++r)for(var a=n[r];n[r+1]>a;++a)i[a]=a-n[r]<<5|r;return[n,i]},Pi=Ni(Ai,2),Fi=Pi[1];Pi[0][28]=258,Fi[258]=28;for(var Ii=Ni(ji,0)[1],Li=new X(32768),Z=0;32768>Z;++Z){var Ri=(43690&Z)>>>1|(21845&Z)<<1;Li[Z]=((65280&(Ri=(61680&(Ri=(52428&Ri)>>>2|(13107&Ri)<<2))>>>4|(3855&Ri)<<4))>>>8|(255&Ri)<<8)>>>1}var zi=function(e,t,n){for(var r=e.length,i=0,a=new X(t);r>i;++i)++a[e[i]-1];var o,s=new X(t);for(i=0;t>i;++i)s[i]=s[i-1]+a[i-1]<<1;if(n){o=new X(1<<t);var c=15-t;for(i=0;r>i;++i)if(e[i])for(var l=i<<4|e[i],u=t-e[i],d=s[e[i]-1]++<<u,f=d|(1<<u)-1;f>=d;++d)o[Li[d]>>>c]=l}else for(o=new X(r),i=0;r>i;++i)o[i]=Li[s[e[i]-1]++]>>>15-e[i];return o},Bi=new Oi(288);for(Z=0;144>Z;++Z)Bi[Z]=8;for(Z=144;256>Z;++Z)Bi[Z]=9;for(Z=256;280>Z;++Z)Bi[Z]=7;for(Z=280;288>Z;++Z)Bi[Z]=8;var Vi=new Oi(32);for(Z=0;32>Z;++Z)Vi[Z]=5;var Hi=zi(Bi,9,0),Ui=zi(Vi,5,0),Wi=function(e){return(e/8>>0)+(7&e&&1)},Gi=function(e,t,n){(n==null||n>e.length)&&(n=e.length);var r=new(e instanceof X?X:e instanceof ki?ki:Oi)(n-t);return r.set(e.subarray(t,n)),r},Ki=function(e,t,n){var r=t/8>>0;e[r]|=n<<=7&t,e[r+1]|=n>>>8},qi=function(e,t,n){var r=t/8>>0;e[r]|=n<<=7&t,e[r+1]|=n>>>8,e[r+2]|=n>>>16},Ji=function(e,t){for(var n=[],r=0;e.length>r;++r)e[r]&&n.push({s:r,f:e[r]});var i=n.length,a=n.slice();if(!i)return[new Oi(0),0];if(i==1){var o=new Oi(n[0].s+1);return o[n[0].s]=1,[o,1]}n.sort((function(e,t){return e.f-t.f})),n.push({s:-1,f:25001});var s=n[0],c=n[1],l=0,u=1,d=2;for(n[0]={s:-1,f:s.f+c.f,l:s,r:c};u!=i-1;)s=n[n[d].f>n[l].f?l++:d++],c=n[l!=u&&n[d].f>n[l].f?l++:d++],n[u++]={s:-1,f:s.f+c.f,l:s,r:c};var f=a[0].s;for(r=1;i>r;++r)a[r].s>f&&(f=a[r].s);var p=new X(f+1),m=Yi(n[u-1],p,0);if(m>t){r=0;var h=0,g=m-t,_=1<<g;for(a.sort((function(e,t){return p[t.s]-p[e.s]||e.f-t.f}));i>r;++r){var v=a[r].s;if(t>=p[v])break;h+=_-(1<<m-p[v]),p[v]=t}for(h>>>=g;h>0;){var y=a[r].s;t>p[y]?h-=1<<t-p[y]++-1:++r}for(;r>=0&&h;--r){var b=a[r].s;p[b]==t&&(--p[b],++h)}m=t}return[new Oi(p),m]},Yi=function(e,t,n){return e.s==-1?Math.max(Yi(e.l,t,n+1),Yi(e.r,t,n+1)):t[e.s]=n},Xi=function(e){for(var t=e.length;t&&!e[--t];);for(var n=new X(++t),r=0,i=e[0],a=1,o=function(e){n[r++]=e},s=1;t>=s;++s)if(e[s]==i&&s!=t)++a;else{if(!i&&a>2){for(;a>138;a-=138)o(32754);a>2&&(o(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(o(i),--a;a>6;a-=6)o(8304);a>2&&(o(a-3<<5|8208),a=0)}for(;a--;)o(i);a=1,i=e[s]}return[n.subarray(0,r),t]},Zi=function(e,t){for(var n=0,r=0;t.length>r;++r)n+=e[r]*t[r];return n},Qi=function(e,t,n){var r=n.length,i=Wi(t+2);e[i]=255&r,e[i+1]=r>>>8,e[i+2]=255^e[i],e[i+3]=255^e[i+1];for(var a=0;r>a;++a)e[i+a+4]=n[a];return 8*(i+4+r)},$i=function(e,t,n,r,i,a,o,s,c,l,u){Ki(t,u++,n),++i[256];for(var d=Ji(i,15),f=d[0],p=d[1],m=Ji(a,15),h=m[0],g=m[1],_=Xi(f),v=_[0],y=_[1],b=Xi(h),x=b[0],S=b[1],C=new X(19),w=0;v.length>w;++w)C[31&v[w]]++;for(w=0;x.length>w;++w)C[31&x[w]]++;for(var T=Ji(C,7),E=T[0],ee=T[1],D=19;D>4&&!E[Mi[D-1]];--D);var te,O,k,ne,A=l+5<<3,j=Zi(i,Bi)+Zi(a,Vi)+o,re=Zi(i,f)+Zi(a,h)+o+14+3*D+Zi(C,E)+(2*C[16]+3*C[17]+7*C[18]);if(j>=A&&re>=A)return Qi(t,u,e.subarray(c,c+l));if(Ki(t,u,1+(j>re)),u+=2,j>re){te=zi(f,p,0),O=f,k=zi(h,g,0),ne=h;var M=zi(E,ee,0);for(Ki(t,u,y-257),Ki(t,u+5,S-1),Ki(t,u+10,D-4),u+=14,w=0;D>w;++w)Ki(t,u+3*w,E[Mi[w]]);u+=3*D;for(var N=[v,x],P=0;2>P;++P){var ie=N[P];for(w=0;ie.length>w;++w)Ki(t,u,M[F=31&ie[w]]),u+=E[F],F>15&&(Ki(t,u,ie[w]>>>5&127),u+=ie[w]>>>12)}}else te=Hi,O=Bi,k=Ui,ne=Vi;for(w=0;s>w;++w)if(r[w]>255){var F;qi(t,u,te[257+(F=r[w]>>>18&31)]),u+=O[F+257],F>7&&(Ki(t,u,r[w]>>>23&31),u+=Ai[F]);var I=31&r[w];qi(t,u,k[I]),u+=ne[I],I>3&&(qi(t,u,r[w]>>>5&8191),u+=ji[I])}else qi(t,u,te[r[w]]),u+=O[r[w]];return qi(t,u,te[256]),u+O[256]},ea=new ki([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),ta=function(){for(var e=new ki(256),t=0;256>t;++t){for(var n=t,r=9;--r;)n=(1&n&&3988292384)^n>>>1;e[t]=n}return e}(),na=function(e,t,n){for(;n;++t)e[t]=n,n>>>=8};function ra(e,t){t===void 0&&(t={});var n=function(){var e=4294967295;return{p(t){for(var n=e,r=0;t.length>r;++r)n=ta[255&n^t[r]]^n>>>8;e=n},d(){return 4294967295^e}}}(),r=e.length;n.p(e);var i,a,o,s,c,l=(s=10+((i=t).filename&&i.filename.length+1||0),c=8,function(e,t,n,r,i,a){var o=e.length,s=new Oi(r+o+5*(1+Math.floor(o/7e3))+i),c=s.subarray(r,s.length-i),l=0;if(!t||8>o)for(var u=0;o>=u;u+=65535){var d=u+65535;o>d?l=Qi(c,l,e.subarray(u,d)):(c[u]=!0,l=Qi(c,l,e.subarray(u,o)))}else{for(var f=ea[t-1],p=f>>>13,m=8191&f,h=(1<<n)-1,g=new X(32768),_=new X(h+1),v=Math.ceil(n/3),y=2*v,b=function(t){return(e[t]^e[t+1]<<v^e[t+2]<<y)&h},x=new ki(25e3),S=new X(288),C=new X(32),w=0,T=0,E=(u=0,0),ee=0,D=0;o>u;++u){var te=b(u),O=32767&u,k=_[te];if(g[O]=k,_[te]=O,u>=ee){var ne=o-u;if((w>7e3||E>24576)&&ne>423){l=$i(e,c,0,x,S,C,T,E,D,u-D,l),E=w=T=0,D=u;for(var A=0;286>A;++A)S[A]=0;for(A=0;30>A;++A)C[A]=0}var j=2,re=0,M=m,N=O-k&32767;if(ne>2&&te==b(u-N))for(var P=Math.min(p,ne)-1,ie=Math.min(32767,u),F=Math.min(258,ne);ie>=N&&--M&&O!=k;){if(e[u+j]==e[u+j-N]){for(var I=0;F>I&&e[u+I]==e[u+I-N];++I);if(I>j){if(j=I,re=N,I>P)break;var ae=Math.min(N,I-2),L=0;for(A=0;ae>A;++A){var R=u-N+A+32768&32767,z=R-g[R]+32768&32767;z>L&&(L=z,k=R)}}}N+=(O=k)-(k=g[O])+32768&32767}if(re){x[E++]=268435456|Fi[j]<<18|Ii[re];var oe=31&Fi[j],B=31&Ii[re];T+=Ai[oe]+ji[B],++S[257+oe],++C[B],ee=u+j,++w}else x[E++]=e[u],++S[e[u]]}}l=$i(e,c,!0,x,S,C,T,E,D,u-D,l)}return Gi(s,0,r+Wi(l)+i)}(a=e,(o=t).level==null?6:o.level,o.mem==null?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(a.length)))):12+o.mem,s,c)),u=l.length;return function(e,t){var n=t.filename;if(e[0]=31,e[1]=139,e[2]=8,e[8]=2>t.level?4:t.level==9?2:0,e[9]=3,t.mtime!=0&&na(e,4,Math.floor(new Date(t.mtime||Date.now())/1e3)),n){e[3]=8;for(var r=0;n.length>=r;++r)e[r+10]=n.charCodeAt(r)}}(l,t),na(l,u-8,n.d()),na(l,u-4,r),l}var ia=!!c||!!s,aa=`text/plain`,oa=!1,sa=(e,t)=>{var[n,r]=e.split(`#`),[i,a]=n.split(`?`);if(!a)return e;var o=a.split(`&`).filter((e=>e.split(`=`)[0]!==t)).join(`&`);return i+(o?`?`+o:``)+(r?`#`+r:``)},ca=function(e,t,n){n===void 0&&(n=!0);var[r,i]=e.split(`?`),a=_({},t),o=i?.split(`&`).map((e=>{var t,[r,i]=e.split(`=`),o=n&&(t=a[r])!=null?t:i;return delete a[r],r+`=`+o}))??[],s=function(e,t){var n,r;t===void 0&&(t=`&`);var i=[];return G(e,(function(e,t){F(e)||F(t)||t===`undefined`||(n=encodeURIComponent((e=>e instanceof File)(e)?e.name:e.toString()),r=encodeURIComponent(t),i[i.length]=r+`=`+n)})),i.join(t)}(a);return s&&o.push(s),r+`?`+o.join(`&`)},la=(e,t)=>JSON.stringify(e,((e,t)=>typeof t==`bigint`?t.toString():t),t),ua=e=>{if(e.tr)return e.tr;var{data:t,compression:n}=e;if(t){if(n===Di.GZipJS){var r=ra(function(e,t){var n=e.length;if(typeof TextEncoder<`u`)return new TextEncoder().encode(e);for(var r=new Oi(e.length+(e.length>>>1)),i=0,a=function(e){r[i++]=e},o=0;n>o;++o){if(i+5>r.length){var s=new Oi(i+8+(n-o<<1));s.set(r),r=s}var c=e.charCodeAt(o);128>c?a(c):2048>c?(a(192|c>>>6),a(128|63&c)):c>55295&&57344>c?(a(240|(c=65536+(1047552&c)|1023&e.charCodeAt(++o))>>>18),a(128|c>>>12&63),a(128|c>>>6&63),a(128|63&c)):(a(224|c>>>12),a(128|c>>>6&63),a(128|63&c))}return Gi(r,0,i)}(la(t)),{mtime:0});return{contentType:aa,body:r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength),estimatedSize:r.byteLength}}if(n===Di.Base64){var i=(e=>`data=`+encodeURIComponent(typeof e==`string`?e:la(e)))(function(e){return e&&btoa(encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,((e,t)=>String.fromCharCode(parseInt(t,16)))))}(la(t)));return{contentType:`application/x-www-form-urlencoded`,body:i,estimatedSize:new Blob([i]).size}}var a=la(t);return{contentType:`application/json`,body:a,estimatedSize:new Blob([a]).size}}},da=e=>{var t,n,r,i=ua(e);return!i||(n=e.compression,r=Xr(e.url,`compression`),n!==b.GZipJS&&r!==b.GZipJS&&r!==`gzip`)||((t=i.body)instanceof ArrayBuffer?C(new Uint8Array(t)):ArrayBuffer.isView(t)&&C(new Uint8Array(t.buffer,t.byteOffset,t.byteLength)))?{url:e.url,encodedBody:i}:(oa=!0,{url:sa(e.url,`compression`),encodedBody:ua(_({},e,{compression:void 0,tr:void 0}))})},fa=function(){var e=g((function*(e){var t=yield function(e,t,n){return ee.apply(this,arguments)}(la(e.data),m.DEBUG,{rethrow:!0});if(!t)return e;var n=yield t.arrayBuffer();return _({},e,{tr:{contentType:aa,body:n,estimatedSize:n.byteLength}})}));return function(t){return e.apply(this,arguments)}}(),pa=(e,t)=>ca(e,{_:new Date().getTime().toString(),ver:m.JS_SDK_VERSION,compression:t}),ma=[];s&&ma.push({transport:`fetch`,method(e){var{url:t,encodedBody:n}=da(e),{contentType:r,body:i,estimatedSize:a}=n??{},o=new Headers;G(e.headers,(function(e,t){o.append(t,e)})),r&&o.append(`Content-Type`,r);var c=null;if(l){var u=new l;c={signal:u.signal,timeout:setTimeout((()=>u.abort()),e.timeout)}}s(t,_({method:e?.method||`GET`,headers:o,keepalive:e.method===`POST`&&52428.8>(a||0),body:i,signal:c?.signal},e.fetchOptions)).then((t=>t.text().then((n=>{var r={statusCode:t.status,text:n};if(t.status===200)try{r.json=JSON.parse(n)}catch(e){U.error(e)}e.callback==null||e.callback(r)})))).catch((t=>{U.error(t),e.callback==null||e.callback({statusCode:0,error:t})})).finally((()=>c?clearTimeout(c.timeout):null))}}),c&&ma.push({transport:`XHR`,method(e){var t=new c,{url:n,encodedBody:r}=da(e);t.open(e.method||`GET`,n,!0);var{contentType:i,body:a}=r??{};G(e.headers,(function(e,n){t.setRequestHeader(n,e)})),i&&t.setRequestHeader(`Content-Type`,i),e.timeout&&(t.timeout=e.timeout),e.disableXHRCredentials||(t.withCredentials=!0),t.onreadystatechange=()=>{if(t.readyState===4){var n={statusCode:t.status,text:t.responseText};if(t.status===200)try{n.json=JSON.parse(t.responseText)}catch{}e.callback==null||e.callback(n)}},t.send(a)}}),i!=null&&i.sendBeacon&&ma.push({transport:`sendBeacon`,method(e){try{var{url:t,encodedBody:n}=da(e),r=ca(t,{beacon:`1`}),{contentType:a,body:o}=n??{};if(!o)return;var s=o instanceof Blob?o:new Blob([o],{type:a});i.sendBeacon(r,s)}catch{}}});var ha=3e3,ga=class{constructor(e,t){this.qr=!0,this.jr=[],this.Hr=he(t?.flush_interval_ms||ha,250,5e3,U.createLogger(`flush interval`),ha),this.Ur=e}enqueue(e){this.jr.push(e),this.Br||this.zr()}unload(){this.Vr();var e=this.jr.length>0?this.Wr():{},t=Object.values(e);[...t.filter((e=>e.url.indexOf(`/e`)===0)),...t.filter((e=>e.url.indexOf(`/e`)!==0))].map((e=>{this.Ur(_({},e,{transport:`sendBeacon`}))}))}enable(){this.qr=!1,this.zr()}zr(){var e=this;this.qr||(this.Br=setTimeout((()=>{if(this.Vr(),this.jr.length>0){var t=this.Wr(),n=function(){var n=t[r],i=new Date().getTime();n.data&&M(n.data)&&G(n.data,(e=>{e.offset=Math.abs(e.timestamp-i),delete e.timestamp})),e.Ur(n)};for(var r in t)n()}}),this.Hr))}Vr(){clearTimeout(this.Br),this.Br=void 0}Wr(){var e={};return G(this.jr,(t=>{var n,r=t,i=(r?r.batchKey:null)||r.url;F(e[i])&&(e[i]=_({},r,{data:[]})),(n=e[i].data)==null||n.push(r.data)})),this.jr=[],e}},_a=[`retriesPerformedSoFar`],va=class{constructor(e){this.Zr=!1,this.Gr=3e3,this.jr=[],this._instance=e,this.jr=[],this.Qr=!0,!F(n)&&`onLine`in n.navigator&&(this.Qr=n.navigator.onLine,this.Jr=()=>{this.Qr=!0,this.Kr()},this.Yr=()=>{this.Qr=!1},q(n,`online`,this.Jr),q(n,`offline`,this.Yr))}get length(){return this.jr.length}retriableRequest(e){var{retriesPerformedSoFar:t}=e,n=v(e,_a);oe(t)&&(n.url=ca(n.url,{retry_count:t})),this._instance._send_request(_({},n,{callback:e=>{e.statusCode===200||e.statusCode>=400&&500>e.statusCode||(t??0)>=10?n.callback==null||n.callback(e):this.Xr(_({retriesPerformedSoFar:t},n))}}))}Xr(e){var t=e.retriesPerformedSoFar||0;e.retriesPerformedSoFar=t+1;var n=function(e){var t=3e3*2**e,n=t/2,r=Math.min(18e5,t),i=Math.random()-.5;return Math.ceil(r+i*(r-n))}(t),r=Date.now()+n;this.jr.push({retryAt:r,requestOptions:e});var i=`Enqueued failed request for retry in `+n;navigator.onLine||(i+=` (Browser is offline)`),U.warn(i),this.Zr||(this.Zr=!0,this.ei())}ei(){if(this.ti&&clearTimeout(this.ti),this.jr.length===0)return this.Zr=!1,void(this.ti=void 0);this.ti=setTimeout((()=>{this.Qr&&this.jr.length>0&&this.Kr(),this.ei()}),this.Gr)}Kr(){var e=Date.now(),t=[],n=this.jr.filter((n=>e>n.retryAt||(t.push(n),!1)));if(this.jr=t,n.length>0)for(var{requestOptions:r}of n)this.retriableRequest(r)}unload(){for(var{requestOptions:e}of(this.ti&&=(clearTimeout(this.ti),void 0),this.Zr=!1,F(n)||(this.Jr&&=(n.removeEventListener(`online`,this.Jr),void 0),this.Yr&&=(n.removeEventListener(`offline`,this.Yr),void 0)),this.jr))try{this._instance._send_request(_({},e,{transport:`sendBeacon`}))}catch(e){U.error(e)}this.jr=[]}},ya=class{constructor(e){this.ri=()=>{this.ii||={};var e=this.scrollElement(),t=this.scrollY(),n=e?Math.max(0,e.scrollHeight-e.clientHeight):0,r=t+(e?.clientHeight||0),i=e?.scrollHeight||0;this.ii.lastScrollY=Math.ceil(t),this.ii.maxScrollY=Math.max(t,this.ii.maxScrollY??0),this.ii.maxScrollHeight=Math.max(n,this.ii.maxScrollHeight??0),this.ii.lastContentY=r,this.ii.maxContentY=Math.max(r,this.ii.maxContentY??0),this.ii.maxContentHeight=Math.max(i,this.ii.maxContentHeight??0)},this._instance=e}get ni(){return this._instance.config.scroll_root_selector}getContext(){return this.ii}resetContext(){var e=this.ii;return setTimeout(this.ri,0),e}startMeasuringScrollPosition(){q(n,`scroll`,this.ri,{capture:!0}),q(n,`scrollend`,this.ri,{capture:!0}),q(n,`resize`,this.ri)}scrollElement(){if(!this.ni)return n?.document.documentElement;for(var e of M(this.ni)?this.ni:[this.ni]){var t=n?.document.querySelector(e);if(t)return t}}scrollY(){if(this.ni){var e=this.scrollElement();return e&&e.scrollTop||0}return n&&(n.scrollY||n.pageYOffset||n.document.documentElement.scrollTop)||0}scrollX(){if(this.ni){var e=this.scrollElement();return e&&e.scrollLeft||0}return n&&(n.scrollX||n.pageXOffset||n.document.documentElement.scrollLeft)||0}},ba=e=>ui(e?.config.mask_personal_data_properties,e?.config.custom_personal_data_properties),xa=class{constructor(e,t,n,r){this.si=e=>{var t=this.oi();if(!t||t.sessionId!==e){var n={sessionId:e,props:this.ai(this._instance)};this.ui.register({[Gn]:n})}},this._instance=e,this.li=t,this.ui=n,this.ai=r||ba,this.li.onSessionId(this.si)}oi(){return this.ui.props[Gn]}getSetOnceProps(){var e=this.oi()?.props;return e?`r`in e?di(e):{$referring_domain:e.referringDomain,$pathname:e.initialPathName,utm_source:e.utm_source,utm_campaign:e.utm_campaign,utm_medium:e.utm_medium,utm_content:e.utm_content,utm_term:e.utm_term}:{}}getSessionProps(){var e={};return G(vr(this.getSetOnceProps()),((t,n)=>{n===`$current_url`&&(n=`url`),e[`$session_entry_`+ne(n)]=t})),e}},Sa=class{constructor(){this.hi={}}on(e,t){return this.hi[e]||(this.hi[e]=[]),this.hi[e].push(t),()=>{this.hi[e]=this.hi[e].filter((e=>e!==t))}}emit(e,t){for(var n of this.hi[e]||[])n(t);for(var r of this.hi[`*`]||[])r(e,t)}},Ca=W(`[SessionId]`),wa=class{on(e,t){return this.ci.on(e,t)}constructor(e,t,n){var r;if(this.di=null,this.vi=[],this.fi=void 0,this.ci=new Sa,this.pi=(e,t)=>!(!oe(e)||!oe(t))&&Math.abs(e-t)>this.sessionTimeoutMs,!e.persistence)throw Error(`SessionIdManager requires a PostHogPersistence instance`);if(e.config.cookieless_mode===ir)throw Error(`SessionIdManager cannot be used with cookieless_mode="always"`);this.qt=e.config,this.ui=e.persistence,this.gi=void 0,this.mi=void 0,this._sessionStartTimestamp=null,this._sessionActivityTimestamp=null,this.yi=t||Dr,this.bi=n||Dr;var i=this.qt.persistence_name||this.qt.token;if(this._sessionTimeoutMs=1e3*he(this.qt.session_idle_timeout_seconds||1800,60,36e3,Ca.createLogger(`session_idle_timeout_seconds`),1800),e.register({$configured_session_timeout_ms:this._sessionTimeoutMs}),this.wi(),this.xi=`ph_`+i+`_window_id`,this.Si=`ph_`+i+`_primary_window_exists`,this.ki()){var a=Y.F(this.xi),o=Y.F(this.Si);a&&!o?this.gi=a:Y.q(this.xi),Y.N(this.Si,!0)}if((r=this.qt.bootstrap)!=null&&r.sessionID)try{var s=(e=>{var t=this.qt.bootstrap.sessionID.replace(/-/g,``);if(t.length!==32)throw Error(`Not a valid UUID`);if(t[12]!==`7`)throw Error(`Not a UUIDv7`);return parseInt(t.substring(0,12),16)})();this.Ci(this.qt.bootstrap.sessionID,new Date().getTime(),s)}catch(e){Ca.error(`Invalid sessionID in bootstrap`,e)}this.Ii()}get sessionTimeoutMs(){return this._sessionTimeoutMs}onSessionId(e){return F(this.vi)&&(this.vi=[]),this.vi.push(e),this.mi&&e(this.mi,this.gi),()=>{this.vi=this.vi.filter((t=>t!==e))}}ki(){return this.qt.persistence!==`memory`&&!this.ui.wr&&Y.O()}Ti(e){e!==this.gi&&(this.gi=e,this.ki()&&Y.N(this.xi,e))}Ei(){return this.gi?this.gi:this.ki()?Y.F(this.xi):null}Mi(e){var t=this.di;return!L(t)&&!L(e)&&5e3>Math.abs(e-t)}Ci(e,t,n){var r=t!==this._sessionActivityTimestamp,i=!(e!==this.mi||n!==this._sessionStartTimestamp);this._sessionStartTimestamp=n,this._sessionActivityTimestamp=t,this.mi=e,i&&!r||i&&this.Mi(t)||(this.di=t,this.ui.register({[Tn]:[t,e,n]}))}Ri(){var e=this.qt?.persistence_save_debounce_ms;return oe(e)&&e>0}Pi(){if(!L(this._sessionActivityTimestamp)&&this._sessionActivityTimestamp!==this.di){this.Ri()?this.ui.refreshKey(Tn):(this.ui.flush(),this.ui.load());var[,e,t]=this.Oi();e===this.mi&&t===this._sessionStartTimestamp&&(this.di=this._sessionActivityTimestamp,this.ui.register({[Tn]:[this._sessionActivityTimestamp,this.mi??null,this._sessionStartTimestamp]}),this.ui.flush())}}Li(){var[e]=this.Oi(),t=oe(e)?e:0,n=oe(this._sessionActivityTimestamp)?this._sessionActivityTimestamp:0;return Math.max(t,n)}Oi(){var e=this.ui.props[Tn];return M(e)&&e.length===2&&e.push(e[0]),e||[0,null,0]}resetSessionId(){this.di=null,clearTimeout(this.Fi),this.Fi=void 0,this.Ci(null,null,null)}destroy(){this.Pi(),clearTimeout(this.Fi),this.Fi=void 0,this.fi&&n&&(n.removeEventListener(lr,this.fi,{capture:!1}),this.fi=void 0),this.vi=[]}Ii(){this.fi=()=>{this.Pi(),this.ki()&&Y.q(this.Si)},q(n,lr,this.fi,{capture:!1})}checkAndGetSessionAndWindowId(e,t){if(e===void 0&&(e=!1),t===void 0&&(t=null),this.qt.cookieless_mode===ir)throw Error(`checkAndGetSessionAndWindowId should not be called with cookieless_mode="always"`);var n=t||new Date().getTime(),[,r,i]=this.Oi(),a=this.Li(),o=this.Ei(),s=oe(i)&&Math.abs(n-i)>864e5,c=!1,l=!r,u=!l&&!e&&this.pi(n,a);l||u||s?(r=this.yi(),o=this.bi(),Ca.info(`new session ID generated`,{sessionId:r,windowId:o,changeReason:{noSessionId:l,activityTimeout:u,sessionPastMaximumLength:s}}),i=n,c=!0):o||(o=this.bi(),c=!0);var d=oe(a)&&e&&!s?a:n,f=oe(i)?i:new Date().getTime();return this.Ti(o),this.Ci(r,d,f),e||this.wi(),c&&this.vi.forEach((e=>e(r,o,c?{noSessionId:l,activityTimeout:u,sessionPastMaximumLength:s}:void 0))),{sessionId:r,windowId:o,sessionStartTimestamp:f,changeReason:c?{noSessionId:l,activityTimeout:u,sessionPastMaximumLength:s}:void 0,lastActivityTimestamp:a}}wi(){clearTimeout(this.Fi),this.Fi=setTimeout((()=>{var e=this.Li();if(this.pi(new Date().getTime(),e)){var t=this.mi;this.resetSessionId(),this.ci.emit(`forcedIdleReset`,{idleSessionId:t})}}),1.1*this.sessionTimeoutMs)}},Ta=function(e,t){if(!e)return!1;var n=e.userAgent;if(n&&te(n,t))return!0;try{var r=e?.userAgentData;if(r!=null&&r.brands&&r.brands.some((e=>te(e?.brand,t))))return!0}catch{}return!!e.webdriver},Ea=function(e,t){if(!function(e){try{new RegExp(e)}catch{return!1}return!0}(t))return!1;try{return new RegExp(t).test(e)}catch{return!1}};function Da(e,t,n){return la({distinct_id:e,userPropertiesToSet:t,userPropertiesToSetOnce:n})}var Oa={exact:(e,t)=>t.some((t=>e.some((e=>t===e)))),is_not:(e,t)=>t.every((t=>e.every((e=>t!==e)))),regex:(e,t)=>t.some((t=>e.some((e=>Ea(t,e))))),not_regex:(e,t)=>t.every((t=>e.every((e=>!Ea(t,e))))),icontains:(e,t)=>t.map(ka).some((t=>e.map(ka).some((e=>t.includes(e))))),not_icontains:(e,t)=>t.map(ka).every((t=>e.map(ka).every((e=>!t.includes(e))))),gt:(e,t)=>t.some((t=>{var n=parseFloat(t);return!isNaN(n)&&e.some((e=>n>parseFloat(e)))})),lt:(e,t)=>t.some((t=>{var n=parseFloat(t);return!isNaN(n)&&e.some((e=>n<parseFloat(e)))}))},ka=e=>e.toLowerCase();function Aa(e,t){return!e||Object.entries(e).every((e=>{var[n,r]=e,i=t?.[n];if(F(i)||L(i))return!1;var a=[String(i)],o=Oa[r.operator];return!!o&&o(r.values,a)}))}var ja=`custom`,Ma=`i.posthog.com`,Na=/^\/static\//,Pa=class{constructor(e){this.Ai={},this.instance=e}get apiHost(){var e=this.instance.config.api_host.trim().replace(/\/$/,``);return e===`https://app.posthog.com`?`https://us.i.posthog.com`:e}get flagsApiHost(){var e=this.instance.config.flags_api_host;return e?e.trim().replace(/\/$/,``):this.apiHost}get uiHost(){var e=this.instance.config.ui_host?.replace(/\/$/,``);return e||=this.apiHost.replace(`.`+Ma,`.posthog.com`),e===`https://app.posthog.com`?`https://us.posthog.com`:e}get region(){return this.Ai[this.apiHost]||(this.Ai[this.apiHost]=/https:\/\/(app|us|us-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?`us`:/https:\/\/(eu|eu-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?`eu`:ja),this.Ai[this.apiHost]}Ni(e){var t=this.instance.config.__preview_external_dependency_versioned_paths;if(typeof t==`string`&&Na.test(e))return t.trim().replace(/\/$/,``)||void 0}endpointFor(e,t){if(t===void 0&&(t=``),t&&=t[0]===`/`?t:`/`+t,e===`ui`)return this.uiHost+t;if(e===`flags`)return this.flagsApiHost+t;if(e===`assets`){var n=this.Ni(t);if(n)return``+n+t}if(this.region===ja)return this.apiHost+t;var r=Ma+t;switch(e){case`assets`:return`https://`+this.region+`-assets.`+r;case`api`:return`https://`+this.region+`.`+r}}},Q=W(`[Surveys]`),Fa=`seenSurvey_`,Ia=[_i.Popover,_i.Widget,_i.API],La={ignoreConditions:!1,ignoreDelay:!1,displayType:bi.Popover},Ra=W(`[PostHog ExternalIntegrations]`),za={intercom:`intercom-integration`,crispChat:`crisp-chat-integration`},Ba=class{constructor(e){this._instance=e}lr(e,t){var n;(n=f.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,e,(e=>{if(e)return Ra.error(`failed to load script`,e);t()}))}startIfEnabledOrStop(){var e=this,t=function(t){var n,i,a;!r||(n=f.__PosthogExtensions__)!=null&&(n=n.integrations)!=null&&n[t]||e.lr(za[t],(()=>{var n;(n=f.__PosthogExtensions__)==null||(n=n.integrations)==null||(n=n[t])==null||n.start(e._instance)})),!r&&(i=f.__PosthogExtensions__)!=null&&(i=i.integrations)!=null&&i[t]&&((a=f.__PosthogExtensions__)==null||(a=a.integrations)==null||(a=a[t])==null||a.stop())};for(var[n,r]of Object.entries((i=this._instance.config.integrations)??{})){var i;t(n)}}},Va,Ha={},Ua=0,Wa=()=>{},Ga=`Consent opt in/out is not valid with cookieless_mode="always" and will be ignored`,Ka=`Surveys module not available`,qa=`sanitize_properties is deprecated. Use before_send instead`,Ja=`Invalid value for property_denylist config: `,Ya=`posthog`,Xa=!ia&&d?.indexOf(`MSIE`)===-1&&d?.indexOf(`Mozilla`)===-1,Za=e=>{var t;return _({api_host:`https://us.i.posthog.com`,flags_api_host:null,ui_host:null,token:``,autocapture:!0,cross_subdomain_cookie:br(a?.location),persistence:`localStorage+cookie`,persistence_name:``,cookie_persisted_properties:[],loaded:Wa,save_campaign_params:!0,custom_campaign_params:[],custom_blocked_useragents:[],save_referrer:!0,capture_pageleave:`if_capture_pageview`,defaults:e??`unset`,__preview_deferred_init_extensions:!1,__preview_external_dependency_versioned_paths:!1,debug:o&&I(o?.search)&&o.search.indexOf(`__posthog_debug=true`)!==-1||!1,cookie_expiration:365,upgrade:!1,disable_session_recording:!1,disable_persistence:!1,disable_web_experiments:!0,disable_surveys:!1,disable_surveys_automatic_display:!1,disable_conversations:!1,disable_product_tours:!1,disable_external_dependency_loading:!1,enable_recording_console_log:void 0,secure_cookie:(n==null||(t=n.location)==null?void 0:t.protocol)===`https:`,ip:!1,opt_out_capturing_by_default:!1,opt_out_persistence_by_default:!1,opt_out_useragent_filter:!1,opt_out_capturing_persistence_type:`localStorage`,consent_persistence_name:null,opt_out_capturing_cookie_prefix:null,opt_in_site_apps:!1,property_denylist:[],respect_dnt:!1,sanitize_properties:null,request_headers:{},request_batching:!0,properties_string_max_length:65535,mask_all_element_attributes:!1,mask_all_text:!1,mask_personal_data_properties:!1,custom_personal_data_properties:[],advanced_disable_flags:!1,advanced_disable_decide:!1,advanced_disable_feature_flags:!1,advanced_disable_feature_flags_on_first_load:!1,advanced_only_evaluate_survey_feature_flags:!1,advanced_feature_flags_dedup_per_session:!1,advanced_enable_surveys:!1,advanced_disable_toolbar_metrics:!1,feature_flag_request_timeout_ms:3e3,surveys_request_timeout_ms:1e4,on_request_error(e){U.error(`Bad HTTP status: `+e.statusCode+` `+e.text)},get_device_id:e=>e,capture_performance:void 0,name:`posthog`,bootstrap:{},disable_compression:!1,session_idle_timeout_seconds:1800,person_profiles:sr,before_send:void 0,request_queue_config:{flush_interval_ms:ha},error_tracking:{},_onCapture:Wa,__preview_eager_load_replay:!1},(e=>({rageclick:!e||`2025-11-30`>e||{content_ignorelist:!0},capture_pageview:!e||`2025-05-24`>e||`history_change`,session_recording:e&&e>=`2025-11-30`?{strictMinimumDuration:!0}:{},external_scripts_inject_target:e&&e>=`2026-01-30`?`head`:`body`,internal_or_test_user_hostname:e&&e>=`2026-01-30`?/^(localhost|127\.0\.0\.1)$/:void 0,persistence_save_debounce_ms:e&&e>=`2026-05-30`?250:0}))(e))},Qa=[[`process_person`,`person_profiles`],[`xhr_headers`,`request_headers`],[`cookie_name`,`persistence_name`],[`disable_cookie`,`disable_persistence`],[`store_google`,`save_campaign_params`],[`verbose`,`debug`]],$a=e=>{var t={};for(var[n,r]of Qa)F(e[n])||(t[r]=e[n]);var i=K({},t,e);return M(e.property_blacklist)&&(F(e.property_denylist)?i.property_denylist=e.property_blacklist:M(e.property_denylist)?i.property_denylist=[...e.property_blacklist,...e.property_denylist]:U.error(Ja+e.property_denylist)),i},eo=class{constructor(){this.__forceAllowLocalhost=!1}get Di(){return this.__forceAllowLocalhost}set Di(e){U.error("WebPerformanceObserver is deprecated and has no impact on network capture. Use `_forceAllowLocalhostNetworkCapture` on `posthog.sessionRecording`"),this.__forceAllowLocalhost=e}},to=class e{$i(e,t){if(e){var n=this.qi.indexOf(e);n!==-1&&this.qi.splice(n,1)}return this.qi.push(t),t.initialize==null||t.initialize(),t}ji(){return this.config.cookieless_mode===ir||this.config.cookieless_mode===rr&&this.consent.isRejected()}get decideEndpointWasHit(){var e;return(e=this.featureFlags?.hasLoadedFlags)!=null&&e}get flagsEndpointWasHit(){var e;return(e=this.featureFlags?.hasLoadedFlags)!=null&&e}constructor(){this.webPerformance=new eo,this.Hi=!1,this.version=m.LIB_VERSION,this.Ui=new Sa,this.qi=[],this._calculate_event_properties=this.calculateEventProperties.bind(this),this.config=Za(),this.SentryIntegration=Gr,this.sentryIntegration=e=>function(e,t){var n=Wr(e,t);return{name:Ur,processEvent:e=>n(e)}}(this,e),this.__request_queue=[],this.__loaded=!1,this.analyticsDefaultEndpoint=`/e/`,this.Bi=!1,this.zi=null,this.Vi=null,this.Wi=null,this.scrollManager=new ya(this),this.pageViewManager=new Kr(this),this.rateLimiter=new wi(this),this.requestRouter=new Pa(this),this.consent=new Lr(this),this.externalIntegrations=new Ba(this);var t=e.__defaultExtensionClasses??{};this.featureFlags=t.featureFlags&&new t.featureFlags(this),this.toolbar=t.toolbar&&new t.toolbar(this),this.surveys=t.surveys&&new t.surveys(this),this.conversations=t.conversations&&new t.conversations(this),this.logs=t.logs&&new t.logs(this),this.experiments=t.experiments&&new t.experiments(this),this.exceptions=t.exceptions&&new t.exceptions(this),this.people={set:(e,t,n)=>{var r=I(e)?{[e]:t}:e;this.setPersonProperties(r),n?.({})},set_once:(e,t,n)=>{var r=I(e)?{[e]:t}:e;this.setPersonProperties(void 0,r),n?.({})}},this.on(`eventCaptured`,(e=>U.info(`send "`+e?.event+`"`,e)))}init(t,n,r){if(r&&r!==Ya){var i=Ha[r]??new e;return i._init(t,n,r),Ha[r]=i,Ha[Ya][r]=i,i}return this._init(t,n,r)}_init(e,t,r){var i;t===void 0&&(t={});var a=I(e)?e.trim():``;if(!a)return U.critical(`PostHog was initialized without a token. This likely indicates a misconfiguration. Please check the first argument passed to posthog.init()`),this;if(this.__loaded)return console.warn(`[PostHog.js]`,`You have already initialized PostHog! Re-initializing is a no-op`),this;this.__loaded=!0,this.config={},t.debug=this.Zi(t.debug),this.Gi=t,this.Qi=[],t.person_profiles?this.Vi=t.person_profiles:t.process_person&&(this.Vi=t.process_person),this.set_config(K({},Za(t.defaults),$a(t),{name:r,token:a})),this.config.on_xhr_error&&U.error(`on_xhr_error is deprecated. Use on_request_error instead`),this.compression=t.disable_compression?void 0:Di.GZipJS;var o=this.Ji();this.persistence=new hi(this.config,o),this.sessionPersistence=this.config.persistence===`sessionStorage`||this.config.persistence===`memory`?this.persistence:new hi(_({},this.config,{persistence:`sessionStorage`}),o);var s=_({},this.persistence.props),c=_({},this.sessionPersistence.props);this.register({$initialization_time:new Date().toISOString()}),this.Ki=new ga((e=>this.Yi(e)),this.config.request_queue_config),this.Xi=new va(this),this.__request_queue=[];var l=this.ji();if(l||(this.sessionManager=new wa(this),this.sessionPropsManager=new xa(this,this.sessionManager,this.persistence)),this.config.__preview_deferred_init_extensions?(U.info(`Deferring extension initialization to improve startup performance`),setTimeout((()=>{this.en(l)}),0)):(U.info(`Initializing extensions synchronously`),this.en(l)),m.DEBUG=m.DEBUG||this.config.debug,m.DEBUG&&U.info(`Starting in debug mode`,{this:this,config:t,thisC:_({},this.config),p:s,s:c}),!this.config.identity_distinct_id||(i=t.bootstrap)!=null&&i.distinctID||(t.bootstrap=_({},t.bootstrap,{distinctID:this.config.identity_distinct_id,isIdentifiedID:!0})),t.bootstrap?.distinctID!==void 0){var u=t.bootstrap.distinctID,d=this.get_distinct_id(),f=this.persistence.get_property(Wn);if(t.bootstrap.isIdentifiedID&&d!=null&&d!==u&&f===ar)this.identify(u);else if(t.bootstrap.isIdentifiedID&&d!=null&&d!==u&&f===or)U.warn(`Bootstrap distinctID differs from an already-identified user. The existing identity is preserved. Call reset() before reinitializing if you intend to switch users.`);else{var p=this.config.get_device_id(Dr()),h=t.bootstrap.isIdentifiedID?p:u;this.persistence.set_property(Wn,t.bootstrap.isIdentifiedID?or:ar),this.register({distinct_id:u,$device_id:h})}}if(l)this.register_once({distinct_id:Qn,$device_id:null},``);else if(!this.get_distinct_id()){var g=this.config.get_device_id(Dr());this.register_once({distinct_id:g,$device_id:g},``),this.persistence.set_property(Wn,ar)}return q(n,`onpagehide`in self?`pagehide`:`unload`,this._handle_unload.bind(this),{passive:!1}),t.segment?function(e,t){var n=e.config.segment;if(!n)return t();(function(e,t){var n=e.config.segment;if(!n)return t();var r=n=>{var r=()=>n.anonymousId()||Dr();e.config.get_device_id=r,n.id()&&(e.register({distinct_id:n.id(),$device_id:r()}),e.persistence.set_property(Wn,or)),t()},i=n.user();`then`in i&&N(i.then)?i.then(r):r(i)})(e,(()=>{n.register((e=>{Promise&&Promise.resolve||Hr.warn(`This browser does not have Promise support, and can not use the segment integration`);var t=(t,n)=>{if(!n)return t;t.event.userId||t.event.anonymousId===e.get_distinct_id()||(Hr.info(`No userId set, resetting PostHog`),e.reset()),t.event.userId&&t.event.userId!==e.get_distinct_id()&&(Hr.info(`UserId set, identifying with PostHog`),e.identify(t.event.userId));var r=e.calculateEventProperties(n,t.event.properties);return t.event.properties=Object.assign({},r,t.event.properties),t};return{name:`PostHog JS`,type:`enrichment`,version:`1.0.0`,isLoaded:()=>!0,load:()=>Promise.resolve(),track:e=>t(e,e.event.event),page:e=>t(e,ur),identify:e=>t(e,fr),screen:e=>t(e,`$screen`)}})(e)).then((()=>{t()}))}))}(this,(()=>this.tn())):this.tn(),N(this.config._onCapture)&&this.config._onCapture!==Wa&&(U.warn("onCapture is deprecated. Please use `before_send` instead"),this.on(`eventCaptured`,(e=>this.config._onCapture(e.event,e)))),this.config.ip&&U.warn('The `ip` config option has NO EFFECT AT ALL and has been deprecated. Use a custom transformation or "Discard IP data" project setting instead. See https://posthog.com/tutorials/web-redact-properties#hiding-customer-ip-address for more information.'),this}en(t){var n=performance.now(),r=_({},e.__defaultExtensionClasses,this.config.__extensionClasses),i=[];r.featureFlags&&this.qi.push(this.featureFlags=this.featureFlags??new r.featureFlags(this)),r.exceptions&&this.qi.push(this.exceptions=this.exceptions??new r.exceptions(this)),r.historyAutocapture&&this.qi.push(this.historyAutocapture=new r.historyAutocapture(this)),r.tracingHeaders&&this.qi.push(this.tracingHeaders=new r.tracingHeaders(this)),r.siteApps&&this.qi.push(this.siteApps=new r.siteApps(this)),r.sessionRecording&&!t&&this.qi.push(this.sessionRecording=new r.sessionRecording(this)),this.config.disable_scroll_properties||i.push((()=>{this.scrollManager.startMeasuringScrollPosition()})),r.autocapture&&this.qi.push(this.autocapture=new r.autocapture(this)),r.surveys&&this.qi.push(this.surveys=this.surveys??new r.surveys(this)),r.logs&&this.qi.push(this.logs=this.logs??new r.logs(this)),r.conversations&&this.qi.push(this.conversations=this.conversations??new r.conversations(this)),r.productTours&&this.qi.push(this.productTours=new r.productTours(this)),r.heatmaps&&this.qi.push(this.heatmaps=new r.heatmaps(this)),r.webVitalsAutocapture&&this.qi.push(this.webVitalsAutocapture=new r.webVitalsAutocapture(this)),r.exceptionObserver&&this.qi.push(this.exceptionObserver=new r.exceptionObserver(this)),r.deadClicksAutocapture&&this.qi.push(this.deadClicksAutocapture=new r.deadClicksAutocapture(this,Br)),r.toolbar&&this.qi.push(this.toolbar=this.toolbar??new r.toolbar(this)),r.experiments&&this.qi.push(this.experiments=this.experiments??new r.experiments(this)),this.qi.forEach((e=>{e.initialize&&i.push((()=>{e.initialize==null||e.initialize()}))})),i.push((()=>{if(this.rn){var e=this.rn;this.rn=void 0,this.Ar(e)}})),this.nn(i,n)}nn(e,t){for(;e.length>0;){if(this.config.__preview_deferred_init_extensions&&performance.now()-t>=30&&e.length>0)return void setTimeout((()=>{this.nn(e,t)}),0);var n=e.shift();if(n)try{n()}catch(e){U.error(`Error initializing extension:`,e)}}var r=Math.round(performance.now()-t);this.register_for_session({[$n]:this.config.__preview_deferred_init_extensions?`deferred`:`synchronous`,[er]:r}),this.config.__preview_deferred_init_extensions&&U.info(`PostHog extensions initialized (`+r+`ms)`)}Ar(e){var t;if(!a||!a.body)return U.info(`document not ready yet, trying again in 500 milliseconds...`),void setTimeout((()=>{this.Ar(e)}),500);this.config.__preview_deferred_init_extensions&&(this.rn=e),this.sn=e,this.compression=void 0,e.supportedCompression&&!this.config.disable_compression&&(this.compression=O(e.supportedCompression,Di.GZipJS)?Di.GZipJS:O(e.supportedCompression,Di.Base64)?Di.Base64:void 0),(t=e.analytics)!=null&&t.endpoint&&(this.analyticsDefaultEndpoint=e.analytics.endpoint),this.set_config({person_profiles:this.Vi?this.Vi:sr}),this.qi.forEach((t=>t.onRemoteConfig==null?void 0:t.onRemoteConfig(e)))}tn(){try{this.config.loaded(this)}catch(e){U.critical("`loaded` function failed",e)}if(this.an(),this.config.internal_or_test_user_hostname&&o!=null&&o.hostname){var e=o.hostname,t=this.config.internal_or_test_user_hostname;(typeof t==`string`?e===t:t.test(e))&&this.setInternalOrTestUser()}this.config.capture_pageview&&setTimeout((()=>{(this.consent.isOptedIn()||this.ji())&&this.un()}),1),this.ln=new Ei(this),this.ln.load()}an(){var e;this.is_capturing()&&this.config.request_batching&&((e=this.Ki)==null||e.enable())}_dom_loaded(){this.is_capturing()&&mr(this.__request_queue,(e=>this.Yi(e))),this.__request_queue=[],this.an()}_handle_unload(){var e,t,n,r;(e=this.surveys)==null||e.handlePageUnload(),this.config.request_batching?(this.hn()&&this.capture(dr),(t=this.logs)==null||t.flushLogs(`sendBeacon`),(n=this.Ki)==null||n.unload(),(r=this.Xi)==null||r.unload()):this.hn()&&this.capture(dr,null,{transport:`sendBeacon`})}_send_request(e){this.__loaded&&(Xa?this.__request_queue.push(e):this.rateLimiter.isServerRateLimited(e.batchKey)||(e.transport=e.transport||this.config.api_transport,e.url=ca(e.url,{ip:+!!this.config.ip}),e.headers=_({},this.config.request_headers,e.headers),e.compression=e.compression===`best-available`?this.compression:e.compression,e.disableXHRCredentials=this.config.__preview_disable_xhr_credentials,this.config.__preview_disable_beacon&&(e.disableTransport=[`sendBeacon`]),e.fetchOptions=e.fetchOptions||this.config.fetch_options,(e=>{var t=_({},e);t.timeout=t.timeout||6e4,t.url=pa(t.url,t.compression);var n=t.transport??`fetch`,r=ma.filter((e=>!t.disableTransport||!e.transport||!t.disableTransport.includes(e.transport))),i=function(e,t){for(var r=0;e.length>r;r++)if(e[r].transport===n)return e[r]}(r)?.method??r[0].method;if(!i)throw Error(`No available transport method`);n!==`sendBeacon`&&t.data&&t.compression===Di.GZipJS&&u&&!oa?fa(t).then((e=>{i(e)})).catch((n=>{if(w(n))return oa=!0,void i(_({},t,{compression:void 0,url:pa(e.url,void 0)}));(e=>{if(!e||typeof e!=`object`)return!1;var t=`name`in e?String(e.name):``;return w(e)||t===S})(n)&&(oa=!0),i(t)})):i(t)})(_({},e,{callback:t=>{var n,r;this.rateLimiter.checkForLimiting(t),400>t.statusCode||(n=(r=this.config).on_request_error)==null||n.call(r,t),e.callback==null||e.callback(t)}}))))}Yi(e){this.Xi?this.Xi.retriableRequest(e):this._send_request(e)}_execute_array(e){Ua++;try{var t,n=[],r=[],i=[];mr(e,(e=>{if(e)if(M(t=e[0]))i.push(e);else if(N(e))try{e.call(this)}catch(t){U.error(`Error executing queued PostHog call`,e,t)}else M(e)&&t===`alias`?n.push(e):M(e)&&t.indexOf(`capture`)!==-1&&N(this[t])?i.push(e):r.push(e)}));var a=function(e,t){mr(e,(function(e){try{if(M(e[0])){var n=t;G(e,(function(e){n=n[e[0]].apply(n,e.slice(1))}))}else t[e[0]].apply(t,e.slice(1))}catch(t){U.error(`Error executing queued PostHog call`,e,t)}}))};a(n,this),a(r,this),a(i,this)}finally{Ua--}}push(t){if(Ua>0&&M(t)&&I(t[0])){var n=e.prototype[t[0]];N(n)&&n.apply(this,t.slice(1))}else this._execute_array([t])}capture(e,t,n){var r,i,a,o;if(this.__loaded&&this.persistence&&this.sessionPersistence&&this.Ki){if(this.is_capturing())if(!F(e)&&I(e)){var s=!this.config.opt_out_useragent_filter&&this._is_bot();if(!s||this.config.__preview_capture_bot_pageviews){var c=n!=null&&n.skip_client_rate_limiting?void 0:this.rateLimiter.clientRateLimitContext();if(c==null||!c.isRateLimited){t!=null&&t.$current_url&&!I(t?.$current_url)&&(U.error("Invalid `$current_url` property provided to `posthog.capture`. Input must be a string. Ignoring provided value."),t==null||delete t.$current_url),e!==`$exception`||n!=null&&n.cn||U.warn("Using `posthog.capture('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureException(error)` instead, which attaches required metadata automatically."),this.sessionPersistence.update_search_keyword(),this.config.save_campaign_params&&this.sessionPersistence.update_campaign_params(),this.config.save_referrer&&this.sessionPersistence.update_referrer_info(),(this.config.save_campaign_params||this.config.save_referrer)&&this.persistence.set_initial_person_info();var l=new Date,u=n?.timestamp||l,d=n?.uuid||Dr(),f={uuid:d,event:e,properties:this.calculateEventProperties(e,t||{},u,d)};e===ur&&this.config.__preview_capture_bot_pageviews&&s&&(f.event=`$bot_pageview`,f.properties.$browser_type=`bot`),c&&(f.properties.$lib_rate_limit_remaining_tokens=c.remainingTokens),n!=null&&n.$set&&(f.$set=n?.$set);var p,m,h,g=this.dn(n?.$set_once,e!==pr,e===fr);if(g&&(f.$set_once=g),n!=null&&n._noTruncate||(r=this.config.properties_string_max_length,i=f,a=e=>I(e)?e.slice(0,r):e,o=new Set,f=function e(t,n){return t===Object(t)?o.has(t)?void 0:(o.add(t),M(t)?(r=[],mr(t,(t=>{r.push(e(t))}))):(r={},G(t,((t,n)=>{o.has(t)||(r[n]=e(t,n))}))),r):a?a(t):t;var r}(i)),f.timestamp=u,F(n?.timestamp)||(f.properties.$event_time_override_provided=!0,f.properties.$event_time_override_system_time=l),e===vi.DISMISSED||e===vi.SENT){var v=t?.[yi.SURVEY_ID],y=t?.[yi.SURVEY_ITERATION];(e=>{try{var t=(e=>((e,t)=>{var n=``+Fa+t.id;return t.current_iteration&&t.current_iteration>0&&(n=``+Fa+t.id+`_`+t.current_iteration),n})(0,e))(e);if(localStorage.getItem(t))return;localStorage.setItem(t,`true`)}catch(e){Q.error(`Failed to persist survey seen state`,e)}})({id:v,current_iteration:y}),f.$set=_({},f.$set,{[(p={id:v,current_iteration:y},m=e===vi.SENT?`responded`:`dismissed`,h=`$survey_`+m+`/`+p.id,p.current_iteration&&p.current_iteration>0&&(h=`$survey_`+m+`/`+p.id+`/`+p.current_iteration),h)]:!0})}else e===vi.SHOWN&&(f.$set=_({},f.$set,{[yi.SURVEY_LAST_SEEN_DATE]:new Date().toISOString()}));if(e===xi.SHOWN){var b=t?.[Si.TOUR_TYPE];b&&(f.$set=_({},f.$set,{[Si.TOUR_LAST_SEEN_DATE+`/`+b]:new Date().toISOString()}))}var x=_({},f.properties.$set,f.$set);if(ie(x)||this.setPersonPropertiesForFlags(x),!R(this.config.before_send)){var S=this.vn(f);if(!S)return;f=S}this.Ui.emit(`eventCaptured`,f);var C={method:`POST`,url:n?._url??this.requestRouter.endpointFor(`api`,this.analyticsDefaultEndpoint),data:f,compression:`best-available`,batchKey:n?._batchKey,transport:n?.transport};return!this.config.request_batching||n&&(n==null||!n._batchKey)||n!=null&&n.send_instantly?this.Yi(C):this.Ki.enqueue(C),f}U.critical(`This capture call is ignored due to client rate limiting.`)}}else U.error(`No event name provided to posthog.capture`)}else U.uninitializedWarning(`posthog.capture`)}_addCaptureHook(e){return this.on(`eventCaptured`,(t=>e(t.event,t)))}calculateEventProperties(e,t,r,i,s){if(r||=new Date,!this.persistence||!this.sessionPersistence)return t;var c=s?void 0:this.persistence.remove_event_timer(e),l=_({},t);if(l.token=this.config.token,l.$config_defaults=this.config.defaults,this.ji()&&(l.$cookieless_mode=!0),e===`$snapshot`){var u=_({},this.persistence.properties(),this.sessionPersistence.properties());return l.distinct_id=u.distinct_id,(!I(l.distinct_id)&&!z(l.distinct_id)||ae(l.distinct_id))&&U.error(`Invalid distinct_id for replay event. This indicates a bug in your implementation`),l}var f,p=function(e,t){var r,i,a;if(!d)return{};var s,c,l,u,f,p=e?[...ei,...t||[]]:[],[h,g]=function(e){for(var t=0;yt.length>t;t++){var[n,r]=yt[t],i=n.exec(e),a=i&&(N(r)?r(i,e):r);if(a)return a}return[``,``]}(d),_=(s=typeof navigator<`u`?navigator:void 0)!=null&&s.brave?{brave:!0}:{},v=K(vr({$os:h,$os_version:g,$browser:gt(d,navigator.vendor,_),$device:bt(d),$device_type:(l=d,u={userAgentDataPlatform:(r=navigator)==null||(r=r.userAgentData)==null?void 0:r.platform,maxTouchPoints:navigator?.maxTouchPoints,screenWidth:n==null||(i=n.screen)==null?void 0:i.width,screenHeight:n==null||(a=n.screen)==null?void 0:a.height,devicePixelRatio:n?.devicePixelRatio},f=bt(l),f===we||f===Ce||f===`Kobo`||f===`Kindle Fire`||f===et?Se:f===Ue||f===Ge||f===We||f===Ze?`Console`:f===Ee?`Wearable`:f?V:u?.userAgentDataPlatform===`Android`&&(u?.maxTouchPoints??0)>0?600>Math.min(u?.screenWidth??0,u?.screenHeight??0)/(u?.devicePixelRatio??1)?V:Se:`Desktop`),$timezone:fi(),$timezone_offset:pi()}),{$current_url:Zr(o?.href,p,ni),$host:o?.host,$pathname:o?.pathname,$raw_user_agent:d.length>1e3?d.substring(0,997)+`...`:d,$browser_version:vt(d,navigator.vendor,_),$browser_language:si(),$browser_language_prefix:(c=si(),typeof c==`string`?c.split(`-`)[0]:void 0),$screen_height:n?.screen.height,$screen_width:n?.screen.width,$viewport_height:n?.innerHeight,$viewport_width:n?.innerWidth,$lib:m.LIB_NAME,$lib_version:m.LIB_VERSION,$insert_id:Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10),$time:Date.now()/1e3});return m.SDK_DIST_CHANNEL&&(v.$sdk_dist_channel=m.SDK_DIST_CHANNEL),v}(this.config.mask_personal_data_properties,this.config.custom_personal_data_properties);if(this.sessionManager){var{sessionId:h,windowId:g}=this.sessionManager.checkAndGetSessionAndWindowId(s,r.getTime());l.$session_id=h,l.$window_id=g}this.sessionPropsManager&&K(l,this.sessionPropsManager.getSessionProps());try{this.sessionRecording&&K(l,this.sessionRecording.sdkDebugProperties),l.$sdk_debug_retry_queue_size=this.Xi?.length}catch(e){l.$sdk_debug_error_capturing_properties=String(e)}if(this.requestRouter.region===ja&&(l.$lib_custom_api_host=this.config.api_host),f=e!==ur||s?e!==dr||s?this.pageViewManager.doEvent():this.pageViewManager.doPageLeave(r):this.pageViewManager.doPageView(r,i),l=K(l,f),e===ur&&a&&(l.title=a.title),!F(c)){var v=r.getTime()-c;l.$duration=parseFloat((v/1e3).toFixed(3))}d&&this.config.opt_out_useragent_filter&&(l.$browser_type=this._is_bot()?`bot`:`browser`),(l=K({},p,this.persistence.properties(),this.sessionPersistence.properties(),l)).$is_identified=this._isIdentified(),M(this.config.property_denylist)?G(this.config.property_denylist,(function(e){delete l[e]})):U.error(Ja+this.config.property_denylist+` or property_blacklist config: `+this.config.property_blacklist);var y=this.config.sanitize_properties;y&&(U.error(qa),l=y(l,e));var b=this.fn();return l.$process_person_profile=b,b&&!s&&this.pn(`_calculate_event_properties`),l}dn(e,t,n){if(t===void 0&&(t=!0),n===void 0&&(n=!1),!this.persistence||!this.fn()||this.Hi&&!n)return e;var r=K({},this.persistence.get_initial_props(),this.sessionPropsManager?.getSetOnceProps()||{},e||{}),i=this.config.sanitize_properties;return i&&(U.error(qa),r=i(r,`$set_once`)),t&&(this.Hi=!0),ie(r)?void 0:r}register(e,t){var n;(n=this.persistence)==null||n.register(e,t)}register_once(e,t,n){var r;(r=this.persistence)==null||r.register_once(e,t,n)}register_for_session(e){var t;(t=this.sessionPersistence)==null||t.register(e)}unregister(e){var t;(t=this.persistence)==null||t.unregister(e)}unregister_for_session(e){var t;(t=this.sessionPersistence)==null||t.unregister(e)}gn(e,t){this.register({[e]:t})}getFeatureFlag(e,t){return this.featureFlags?.getFeatureFlag(e,t)}getFeatureFlagPayload(e){return this.featureFlags?.getFeatureFlagPayload(e)}getFeatureFlagResult(e,t){return this.featureFlags?.getFeatureFlagResult(e,t)}isFeatureEnabled(e,t){return this.featureFlags?.isFeatureEnabled(e,t)}reloadFeatureFlags(){var e;(e=this.featureFlags)==null||e.reloadFeatureFlags()}updateFlags(e,t,n){var r;(r=this.featureFlags)==null||r.updateFlags(e,t,n)}updateEarlyAccessFeatureEnrollment(e,t,n){var r;(r=this.featureFlags)==null||r.updateEarlyAccessFeatureEnrollment(e,t,n)}getEarlyAccessFeatures(e,t,n){return t===void 0&&(t=!1),this.featureFlags?.getEarlyAccessFeatures(e,t,n)}on(e,t){return this.Ui.on(e,t)}onFeatureFlags(e){return this.featureFlags?this.featureFlags.onFeatureFlags(e):(e([],{},{errorsLoading:!0}),()=>{})}onSurveysLoaded(e){return this.surveys?this.surveys.onSurveysLoaded(e):(e([],{isLoaded:!1,error:Ka}),()=>{})}onSessionId(e){return this.sessionManager?.onSessionId(e)??(()=>{})}getSurveys(e,t){t===void 0&&(t=!1),this.surveys?this.surveys.getSurveys(e,t):e([],{isLoaded:!1,error:Ka})}getActiveMatchingSurveys(e,t){t===void 0&&(t=!1),this.surveys?this.surveys.getActiveMatchingSurveys(e,t):e([],{isLoaded:!1,error:Ka})}renderSurvey(e,t){var n;(n=this.surveys)==null||n.renderSurvey(e,t)}displaySurvey(e,t){var n;t===void 0&&(t=La),(n=this.surveys)==null||n.displaySurvey(e,t)}cancelPendingSurvey(e){var t;(t=this.surveys)==null||t.cancelPendingSurvey(e)}canRenderSurvey(e){return this.surveys?.canRenderSurvey(e)??{visible:!1,disabledReason:Ka}}canRenderSurveyAsync(e,t){return t===void 0&&(t=!1),this.surveys?.canRenderSurveyAsync(e,t)??Promise.resolve({visible:!1,disabledReason:Ka})}mn(e){return!e||ae(e)?(U.critical(`Unique user id has not been set in posthog.identify`),!1):e===Qn?(U.critical(`The string "`+e+`" was set in posthog.identify which indicates an error. This ID is only used as a sentinel value.`),!1):![`distinct_id`,`distinctid`].includes(e.toLowerCase())&&![`undefined`,`null`].includes(e.toLowerCase())||(U.critical(`The string "`+e+`" was set in posthog.identify which indicates an error. This ID should be unique to the user and not a hardcoded string.`),!1)}identify(e,t,n){if(!this.__loaded||!this.persistence)return U.uninitializedWarning(`posthog.identify`);if(z(e)&&(e=e.toString(),U.warn(`The first argument to posthog.identify was a number, but it should be a string. It has been converted to a string.`)),this.mn(e)&&this.pn(`posthog.identify`)){var r=this.get_distinct_id();this.register({$user_id:e}),this.get_property(cn)||this.register_once({$had_persisted_distinct_id:!0,$device_id:r},``),e!==r&&e!==this.get_property(ln)&&(this.unregister(ln),this.register({distinct_id:e}));var i,a=(this.persistence.get_property(Wn)||ar)===ar;e!==r&&a?(this.persistence.set_property(Wn,or),this.setPersonPropertiesForFlags({$set:t||{},$set_once:n||{}},!1),this.capture(fr,{distinct_id:e,$anon_distinct_id:r},{$set:t||{},$set_once:n||{}}),this.Wi=Da(e,t,n),(i=this.featureFlags)==null||i.setAnonymousDistinctId(r)):(t||n)&&this.setPersonProperties(t,n),e!==r&&(this.reloadFeatureFlags(),this.unregister(Bn))}}setPersonProperties(e,t){if((e||t)&&this.pn(`posthog.setPersonProperties`)){var n=Da(this.get_distinct_id(),e,t);this.Wi===n?U.info(`A duplicate setPersonProperties call was made with the same properties. It has been ignored.`):(this.setPersonPropertiesForFlags({$set:e||{},$set_once:t||{}},!0),this.capture(`$set`,{$set:e||{},$set_once:t||{}}),this.Wi=n)}}group(e,t,n){if(e&&t){var r=this.getGroups(),i=r[e]!==t;if(i&&this.resetGroupPropertiesForFlags(e),this.register({$groups:_({},r,{[e]:t})}),i||n){var a={$group_type:e,$group_key:t};n&&(a.$group_set=n),this.capture(pr,a)}n&&this.setGroupPropertiesForFlags({[e]:n}),i&&!n&&this.reloadFeatureFlags()}else U.error(`posthog.group requires a group type and group key`)}resetGroups(){this.register({$groups:{}}),this.resetGroupPropertiesForFlags(),this.reloadFeatureFlags()}setPersonPropertiesForFlags(e,t){var n;t===void 0&&(t=!0),(n=this.featureFlags)==null||n.setPersonPropertiesForFlags(e,t)}resetPersonPropertiesForFlags(){var e;(e=this.featureFlags)==null||e.resetPersonPropertiesForFlags()}setGroupPropertiesForFlags(e,t){var n;t===void 0&&(t=!0),this.pn(`posthog.setGroupPropertiesForFlags`)&&((n=this.featureFlags)==null||n.setGroupPropertiesForFlags(e,t))}resetGroupPropertiesForFlags(e){var t;(t=this.featureFlags)==null||t.resetGroupPropertiesForFlags(e)}reset(e){var t,n,r,i,a,o,s,c;if(U.info(`reset`),!this.__loaded)return U.uninitializedWarning(`posthog.reset`);var l,u=this.get_property(cn),d=this.get_property(bn);if(this.consent.reset(),(t=this.persistence)==null||t.clear(),(n=this.sessionPersistence)==null||n.clear(),F(d)||(l=this.persistence)==null||l.register({[bn]:d}),(r=this.surveys)==null||r.reset(),(i=this.ln)==null||i.stop(),(a=this.featureFlags)==null||a.reset(),(o=this.conversations)==null||o.reset(),(s=this.persistence)==null||s.set_property(Wn,ar),(c=this.sessionManager)==null||c.resetSessionId(),this.Wi=null,this.config.cookieless_mode===ir)this.register_once({distinct_id:Qn,$device_id:null},``);else{var f=this.config.get_device_id(Dr());this.register_once({distinct_id:f,$device_id:e?f:u},``)}this.register({$last_posthog_reset:new Date().toISOString()},1),delete this.config.identity_distinct_id,delete this.config.identity_hash,this.reloadFeatureFlags()}setIdentity(e,t){var n;this.config.identity_distinct_id=e,this.config.identity_hash=t,this.alias(e),(n=this.conversations)==null||n.yn()}clearIdentity(){var e;delete this.config.identity_distinct_id,delete this.config.identity_hash,(e=this.conversations)==null||e.bn()}get_distinct_id(){return this.get_property(`distinct_id`)}getGroups(){return this.get_property(`$groups`)||{}}get_session_id(){return this.sessionManager?.checkAndGetSessionAndWindowId(!0).sessionId??``}get_session_replay_url(e){if(!this.sessionManager)return``;var{sessionId:t,sessionStartTimestamp:n}=this.sessionManager.checkAndGetSessionAndWindowId(!0),r=this.requestRouter.endpointFor(`ui`,`/project/`+this.config.token+`/replay/`+t);if(e!=null&&e.withTimestamp&&n){var i=e.timestampLookBack??10;if(!n)return r;r+=`?t=`+Math.max(Math.floor((new Date().getTime()-n)/1e3)-i,0)}return r}alias(e,t){return e===this.get_property(sn)?(U.critical(`Attempting to create alias for existing People user - aborting.`),-2):this.pn(`posthog.alias`)?(F(t)&&(t=this.get_distinct_id()),e===t?(U.warn(`alias matches current distinct_id - skipping api call.`),this.identify(e),-1):(this.gn(ln,e),this.capture(`$create_alias`,{alias:e,distinct_id:t}))):void 0}set_config(e){var t=_({},this.config);if(P(e)){var n,r,i,a,o,s,c,l,u,d,f;K(this.config,$a(e));var p=this.Ji();(n=this.persistence)==null||n.update_config(this.config,t,p),this.sessionPersistence=this.config.persistence===`sessionStorage`||this.config.persistence===`memory`?this.persistence:new hi(_({},this.config,{persistence:`sessionStorage`}),p);var h=this.Zi(this.config.debug);B(h)&&(this.config.debug=h),B(this.config.debug)&&(this.config.debug?(m.DEBUG=!0,J.O()&&J.N(`ph_debug`,!0),U.info(`set_config`,{config:e,oldConfig:t,newConfig:_({},this.config)})):(m.DEBUG=!1,J.O()&&J.q(`ph_debug`))),(r=this.exceptionObserver)==null||r.onConfigChange(),(i=this.exceptions)==null||i.onConfigChange(),(a=this.sessionRecording)==null||a.startIfEnabledOrStop(),(o=this.tracingHeaders)==null||o.startIfEnabledOrStop(),(s=this.autocapture)==null||s.startIfEnabled(),(c=this.heatmaps)==null||c.startIfEnabled(),(l=this.exceptionObserver)==null||l.startIfEnabledOrStop(),(u=this.deadClicksAutocapture)==null||u.startIfEnabledOrStop(),(d=this.surveys)==null||d.loadIfEnabled(),this._n(),(f=this.externalIntegrations)==null||f.startIfEnabledOrStop()}}_overrideSDKInfo(e,t){m.LIB_NAME=e,m.LIB_VERSION=t}startSessionRecording(e){var t,n,r,i,a,o=!0===e,s={sampling:o||!(e==null||!e.sampling),linked_flag:o||!(e==null||!e.linked_flag),url_trigger:o||!(e==null||!e.url_trigger),event_trigger:o||!(e==null||!e.event_trigger)};Object.values(s).some(Boolean)&&((t=this.sessionManager)==null||t.checkAndGetSessionAndWindowId(),s.sampling&&((n=this.sessionRecording)==null||n.overrideSampling()),s.linked_flag&&((r=this.sessionRecording)==null||r.overrideLinkedFlag()),s.url_trigger&&((i=this.sessionRecording)==null||i.overrideTrigger(`url`)),s.event_trigger&&((a=this.sessionRecording)==null||a.overrideTrigger(`event`))),this.set_config({disable_session_recording:!1})}stopSessionRecording(){this.set_config({disable_session_recording:!0})}sessionRecordingStarted(){var e;return!((e=this.sessionRecording)==null||!e.started)}captureException(e,t){if(this.exceptions){var n=Error(`PostHog syntheticException`),r=this.exceptions.buildProperties(e,{handled:!0,syntheticException:n});return this.exceptions.sendExceptionEvent(_({},r,t))}}addExceptionStep(e,t){var n;(n=this.exceptions)==null||n.addExceptionStep(e,t)}captureLog(e){var t;(t=this.logs)==null||t.captureLog(e)}get logger(){return this.logs?.logger??e.wn}startExceptionAutocapture(e){this.set_config({capture_exceptions:e==null||e})}stopExceptionAutocapture(){this.set_config({capture_exceptions:!1})}loadToolbar(e){var t;return(t=this.toolbar?.loadToolbar(e))!=null&&t}get_property(e){return this.persistence?.props[e]}getSessionProperty(e){return this.sessionPersistence?.props[e]}toString(){var e=this.config.name??Ya;return e!==Ya&&(e=Ya+`.`+e),e}_isIdentified(){return this.persistence?.get_property(Wn)===or||this.sessionPersistence?.get_property(Wn)===or}fn(){var e,t;return!(this.config.person_profiles===`never`||this.config.person_profiles===sr&&!this._isIdentified()&&ie(this.getGroups())&&((e=this.persistence)==null||(e=e.props)==null||!e[ln])&&((t=this.persistence)==null||(t=t.props)==null||!t[Xn]))}hn(){return!0===this.config.capture_pageleave||this.config.capture_pageleave===`if_capture_pageview`&&(!0===this.config.capture_pageview||this.config.capture_pageview===`history_change`)}createPersonProfile(){this.fn()||this.pn(`posthog.createPersonProfile`)&&this.setPersonProperties({},{})}setInternalOrTestUser(){this.pn(`posthog.setInternalOrTestUser`)&&this.setPersonProperties({$internal_or_test_user:!0})}pn(e){return this.config.person_profiles===`never`?(U.error(e+` was called, but process_person is set to "never". This call will be ignored.`),!1):(this.gn(Xn,!0),!0)}Ji(){if(this.config.cookieless_mode===`always`)return!0;var e=this.consent.isOptedOut();return this.config.disable_persistence||e&&!(!this.config.opt_out_persistence_by_default&&this.config.cookieless_mode!==rr)}_n(){var e,t,n=this.Ji();return this.persistence?.wr!==n&&((e=this.persistence)==null||e.set_disabled(n)),this.sessionPersistence?.wr!==n&&((t=this.sessionPersistence)==null||t.set_disabled(n)),n}opt_in_capturing(t){var n;if(this.config.cookieless_mode!==ir){if(this.ji()){var r,i;this.reset(!0),(r=this.sessionManager)==null||r.destroy(),(i=this.pageViewManager)==null||i.destroy(),this.sessionManager=new wa(this),this.pageViewManager=new Kr(this),this.persistence&&(this.sessionPropsManager=new xa(this,this.sessionManager,this.persistence));var a,o=this.config.__extensionClasses?.sessionRecording??e.__defaultExtensionClasses?.sessionRecording;o&&(this.sessionRecording=this.$i(this.sessionRecording,new o(this)),this.sn&&((a=this.sessionRecording)==null||a.onRemoteConfig==null||a.onRemoteConfig(this.sn)))}var s;this.consent.optInOut(!0),this._n(),this.an(),(n=this.sessionRecording)==null||n.startIfEnabledOrStop(),this.config.cookieless_mode==rr&&((s=this.surveys)==null||s.loadIfEnabled()),(F(t?.captureEventName)||t!=null&&t.captureEventName)&&this.capture(t?.captureEventName??`$opt_in`,t?.captureProperties,{send_instantly:!0}),this.config.capture_pageview&&this.un()}else U.warn(Ga)}opt_out_capturing(){var e,t,n;this.config.cookieless_mode===ir?U.warn(Ga):(this.config.cookieless_mode===rr&&this.consent.isOptedIn()&&this.reset(!0),this.consent.optInOut(!1),this._n(),this.config.cookieless_mode===rr&&(this.register({distinct_id:Qn,$device_id:null}),(e=this.sessionRecording)==null||e.stopRecording(),this.sessionRecording=void 0,(t=this.sessionManager)==null||t.destroy(),(n=this.pageViewManager)==null||n.destroy(),this.sessionManager=void 0,this.sessionPropsManager=void 0,this.un(),this.an()))}has_opted_in_capturing(){return this.consent.isOptedIn()}has_opted_out_capturing(){return this.consent.isOptedOut()}get_explicit_consent_status(){var e=this.consent.consent;return e===1?`granted`:e===0?`denied`:`pending`}is_capturing(){return this.config.cookieless_mode===ir||(this.config.cookieless_mode===rr?this.consent.isRejected()||this.consent.isOptedIn():!this.has_opted_out_capturing())}clear_opt_in_out_capturing(){this.consent.reset(),this._n()}_is_bot(){return i?Ta(i,this.config.custom_blocked_useragents):void 0}un(){a&&(a.visibilityState===`visible`?this.Bi||(this.Bi=!0,this.capture(ur,{title:a.title},{send_instantly:!0}),this.zi&&=(a.removeEventListener(cr,this.zi),null)):this.zi||(this.zi=this.un.bind(this),q(a,cr,this.zi)))}debug(e){!1===e?(n?.console.log(`You've disabled debug mode.`),this.set_config({debug:!1})):(n?.console.log("You're now in debug mode. All calls to PostHog will be logged in your console.\nYou can disable this with `posthog.debug(false)`."),this.set_config({debug:!0}))}Dr(){var e,t,n,r,i,a,o=this.Gi||{};return`advanced_disable_flags`in o?!!o.advanced_disable_flags:!1===this.config.advanced_disable_flags?!0===this.config.advanced_disable_decide?(U.warn(`Config field 'advanced_disable_decide' is deprecated. Please use 'advanced_disable_flags' instead. The old field will be removed in a future major version.`),!0):(n=`advanced_disable_decide`,r=U,i=(t=`advanced_disable_flags`)in(e=o)&&!R(e[t]),a=n in e&&!R(e[n]),i?e[t]:!!a&&(r&&r.warn(`Config field '`+n+`' is deprecated. Please use '`+t+`' instead. The old field will be removed in a future major version.`),e[n])):!!this.config.advanced_disable_flags}vn(e){if(R(this.config.before_send))return e;var t=M(this.config.before_send)?this.config.before_send:[this.config.before_send],n=e;for(var r of t){if(n=r(n),R(n)){var i=`Event '`+e.event+`' was rejected in beforeSend function`;return ce(e.event)?U.warn(i+`. This can cause unexpected behavior.`):U.info(i),null}n.properties&&!ie(n.properties)||U.warn(`Event '`+e.event+`' has no properties after beforeSend function, this is likely an error.`)}return n}getPageViewId(){return this.pageViewManager.dr?.pageViewId}captureTraceFeedback(e,t){this.capture(`$ai_feedback`,{$ai_trace_id:String(e),$ai_feedback_text:t})}captureTraceMetric(e,t,n){this.capture(`$ai_metric`,{$ai_trace_id:String(e),$ai_metric_name:t,$ai_metric_value:String(n)})}Zi(e){var t=B(e)&&!e,n=J.O()&&J.A(`ph_debug`)===`true`;return!t&&(!!n||e)}};to.__defaultExtensionClasses={},to.wn={trace:Va=()=>{},debug:Va,info:Va,warn:Va,error:Va,fatal:Va},function(e,t){for(var n=0;t.length>n;n++)e.prototype[t[n]]=_r(e.prototype[t[n]])}(to,[`identify`]);var no=1,ro=3,io=11;function ao(e){return e instanceof Element&&(e.id===Zn||!(e.closest==null||!e.closest(`.toolbar-global-fade-container`)))}function oo(e){return!!e&&e.nodeType===no}function so(e,t){return!!e&&!!e.tagName&&e.tagName.toLowerCase()===t.toLowerCase()}function co(e){return!!e&&e.nodeType===ro}function lo(e){return!!e&&e.nodeType===io&&oo(e.host)}function uo(e){return e?k(e).split(/\s+/):[]}function fo(e){var t=n?.location.href;return!!(t&&e&&e.some((e=>t.match(e))))}function po(e){var t=``;switch(typeof e.className){case`string`:t=e.className;break;case`object`:t=(e.className&&`baseVal`in e.className?e.className.baseVal:null)||e.getAttribute(`class`)||``;break;default:t=``}return uo(t)}function mo(e){return R(e)?null:k(e).split(/(\s+)/).filter((e=>Mo(e))).join(``).replace(/[\r\n]/g,` `).replace(/[ ]+/g,` `).substring(0,255)}function ho(e){var t=``;return wo(e)&&!To(e)&&e.childNodes&&e.childNodes.length&&G(e.childNodes,(function(e){co(e)&&e.textContent&&(t+=mo(e.textContent)??``)})),k(t)}function go(e){return F(e.target)?e.srcElement||null:(t=e.target)!=null&&t.shadowRoot?e.composedPath()[0]||null:e.target||null;var t}var _o=[`a`,`button`,`form`,`input`,`select`,`textarea`,`label`];function vo(e,t){if(F(t))return!0;var n,r=function(e){if(t.some((t=>e.matches(t))))return{v:!0}};for(var i of e)if(n=r(i))return n.v;return!1}function yo(e){var t=e.parentNode;return!(!t||!oo(t))&&t}var bo=[`next`,`previous`,`prev`,`>`,`<`],xo=[`.ph-no-rageclick`,`.ph-no-capture`],So=e=>!e||so(e,`html`)||!oo(e),Co=(e,t)=>{if(!n||So(e))return{parentIsUsefulElement:!1,targetElementList:[]};for(var r=!1,i=[e],a=e;a.parentNode&&!so(a,`body`);)if(lo(a.parentNode))i.push(a.parentNode.host),a=a.parentNode.host;else{var o=yo(a);if(!o)break;if(t||_o.indexOf(o.tagName.toLowerCase())>-1)r=!0;else{var s=n.getComputedStyle(o);s&&s.getPropertyValue(`cursor`)===`pointer`&&(r=!0)}i.push(o),a=o}return{parentIsUsefulElement:r,targetElementList:i}};function wo(e){for(var t=e;t.parentNode&&!so(t,`body`);t=t.parentNode){var n=po(t);if(O(n,`ph-sensitive`)||O(n,`ph-no-capture`))return!1}if(O(po(e),`ph-include`))return!0;var r=e.type||``;if(I(r))switch(r.toLowerCase()){case`hidden`:case`password`:return!1}var i=e.name||e.id||``;return!I(i)||!/^cc|cardnum|ccnum|creditcard|csc|cvc|cvv|exp|pass|pwd|routing|seccode|securitycode|securitynum|socialsec|socsec|ssn/i.test(i.replace(/[^a-zA-Z0-9]/g,``))}function To(e){return!!(so(e,`input`)&&![`button`,`checkbox`,`submit`,`reset`].includes(e.type)||so(e,`select`)||so(e,`textarea`)||e.getAttribute(`contenteditable`)===`true`)}var Eo=`(4[0-9]{12}(?:[0-9]{3})?)|(5[1-5][0-9]{14})|(6(?:011|5[0-9]{2})[0-9]{12})|(3[47][0-9]{13})|(3(?:0[0-5]|[68][0-9])[0-9]{11})|((?:2131|1800|35[0-9]{3})[0-9]{11})`,Do=RegExp(`^(?:`+Eo+`)$`),Oo=new RegExp(Eo),ko=`\\d{3}-?\\d{2}-?\\d{4}`,Ao=RegExp(`^(`+ko+`)$`),jo=RegExp(`(`+ko+`)`);function Mo(e,t){return t===void 0&&(t=!0),!(R(e)||I(e)&&(e=k(e),(t?Do:Oo).test((e||``).replace(/[- ]/g,``))||(t?Ao:jo).test(e)))}function No(e){var t=ho(e);return Mo(t=(t+` `+Po(e)).trim())?t:``}function Po(e){var t=``;return e&&e.childNodes&&e.childNodes.length&&G(e.childNodes,(function(e){if(e&&e.tagName?.toLowerCase()===`span`)try{var n=ho(e);t=(t+` `+n).trim(),e.childNodes&&e.childNodes.length&&(t=(t+` `+Po(e)).trim())}catch(e){U.error(`[AutoCapture]`,e)}})),t}function Fo(e){return e.replace(/"|\\"/g,`\\"`)}function Io(e){var t=e.attr__class;return t?M(t)?t:uo(t):void 0}var Lo=class{constructor(e){this.disabled=!1===e;var t=P(e)?e:{};this.thresholdPx=t.threshold_px||30,this.timeoutMs=t.timeout_ms||1e3,this.clickCount=t.click_count||3,this.clicks=[]}isRageClick(e,t,n){if(this.disabled)return!1;var r=this.clicks[this.clicks.length-1];if(r&&Math.abs(e-r.x)+Math.abs(t-r.y)<this.thresholdPx&&this.timeoutMs>n-r.timestamp){if(this.clicks.push({x:e,y:t,timestamp:n}),this.clicks.length===this.clickCount)return!0}else this.clicks=[{x:e,y:t,timestamp:n}];return!1}},Ro=`$copy_autocapture`,zo=W(`[AutoCapture]`);function Bo(e,t){return t.length>e?t.slice(0,e)+`...`:t}function Vo(e){if(e.previousElementSibling)return e.previousElementSibling;var t=e;do t=t.previousSibling;while(t&&!oo(t));return t}function Ho(e,t){var r,{e:i,maskAllElementAttributes:a,maskAllText:o,elementAttributeIgnoreList:s,elementsChainAsString:c}=t;if(!oo(e))return{props:{}};for(var l=[e],u=e;u.parentNode&&!so(u,`body`);)if(lo(u.parentNode))l.push(u.parentNode.host),u=u.parentNode.host;else{if(!oo(u.parentNode))break;l.push(u.parentNode),u=u.parentNode}var d,f,p=[],m={},h=!1,g=!1;if(G(l,(e=>{var t=wo(e);if(so(e,`a`)){var n=e.getAttribute(`href`);h=t&&!!n&&Mo(n)&&n}O(po(e),`ph-no-capture`)&&(g=!0),p.push(function(e,t,n,r){var i=e.tagName.toLowerCase(),a={tag_name:i};_o.indexOf(i)>-1&&!n&&(a.$el_text=i.toLowerCase()===`a`||i.toLowerCase()===`button`?Bo(1024,No(e)):Bo(1024,ho(e)));var o=po(e);o.length>0&&(a.classes=o.filter((function(e){return e!==``}))),G(e.attributes,(function(n){var i;if((!To(e)||[`name`,`id`,`class`,`aria-label`].indexOf(n.name)!==-1)&&(r==null||!r.includes(n.name))&&!t&&Mo(n.value)&&(!I(i=n.name)||i.substring(0,10)!==`_ngcontent`&&i.substring(0,7)!==`_nghost`)){var o=n.value;n.name===`class`&&(o=uo(o).join(` `)),a[`attr__`+n.name]=Bo(1024,o)}}));for(var s=1,c=1,l=e;l=Vo(l);)s++,l.tagName===e.tagName&&c++;return a.nth_child=s,a.nth_of_type=c,a}(e,a,o,s)),K(m,function(e){if(!wo(e))return{};var t={};return G(e.attributes,(function(e){if(e.name&&e.name.indexOf(`data-ph-capture-attribute`)===0){var n=e.name.replace(`data-ph-capture-attribute-`,``),r=e.value;n&&r&&Mo(r)&&(t[n]=r)}})),t}(e))})),g)return{props:{},explicitNoCapture:g};if(o||(p[0].$el_text=so(e,`a`)||so(e,`button`)?No(e):ho(e)),h){var v;p[0].attr__href=h;var y=Yr(h)?.host,b=n==null||(v=n.location)==null?void 0:v.host;y&&b&&y!==b&&(d=h)}return{props:K({$event_type:i.type,$ce_version:1},c?{}:{$elements:p},{$elements_chain:(f=p,function(e){return e.map((e=>{var t=``;if(e.tag_name&&(t+=e.tag_name),e.attr_class)for(var n of(e.attr_class.sort(),e.attr_class))t+=`.`+n.replace(/"/g,``);var r=_({},e.text?{text:e.text}:{},{"nth-child":e.nth_child??0,"nth-of-type":e.nth_of_type??0},e.href?{href:e.href}:{},e.attr_id?{attr_id:e.attr_id}:{},e.attributes),i={};return hr(r).sort(((e,t)=>{var[n]=e,[r]=t;return n.localeCompare(r)})).forEach((e=>{var[t,n]=e;return i[Fo(t.toString())]=Fo(n.toString())})),(t+=`:`)+hr(i).map((e=>{var[t,n]=e;return t+`="`+n+`"`})).join(``)})).join(`;`)}(function(e){return e.map((e=>{var t={text:e.$el_text?.slice(0,400),tag_name:e.tag_name,href:e.attr__href?.slice(0,2048),attr_class:Io(e),attr_id:e.attr__id,nth_child:e.nth_child,nth_of_type:e.nth_of_type,attributes:{}};return hr(e).filter((e=>{var[t]=e;return t.indexOf(`attr__`)===0})).forEach((e=>{var[n,r]=e;return t.attributes[n]=r})),t}))}(f)))},(r=p[0])!=null&&r.$el_text?{$el_text:p[0]?.$el_text}:{},d&&i.type===`click`?{$external_click_url:d}:{},m)}}var Uo=W(`[ExceptionAutocapture]`);function Wo(e,t,n){try{if(!(t in e))return()=>{};var r=e[t],i=n(r);return N(i)&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__posthog_wrapped__:{enumerable:!1,value:!0}})),e[t]=i,()=>{e[t]===i&&(e[t]=r)}}catch{return()=>{}}}var Go=W(`[TracingHeaders]`),Ko=W(`[Web Vitals]`),qo=9e5,Jo=`disabled`,Yo=`lazy_loading`,Xo=`awaiting_config`,Zo=`missing_config`;W(`[SessionRecording]`),W(`[SessionRecording]`);var Qo=`[SessionRecording]`,$o=W(Qo),es=W(`[Heatmaps]`);function ts(e){return P(e)&&`clientX`in e&&`clientY`in e&&z(e.clientX)&&z(e.clientY)}var ns=W(`[Product Tours]`),rs=[`$set_once`,`$set`],is=W(`[SiteApps]`),as=`Error while initializing PostHog app with config id `;function os(e,t,n){if(R(e))return!1;switch(n){case`exact`:return e===t;case`contains`:var r=t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`).replace(/_/g,`.`).replace(/%/g,`.*`);return new RegExp(r,`i`).test(e);case`regex`:try{return new RegExp(t).test(e)}catch{return!1}default:return!1}}var ss=class{constructor(e){this.xn=new Sa,this.Sn=(e,t)=>this.kn(e,t)&&this.Cn(e,t)&&this.In(e,t)&&this.Tn(e,t),this.kn=(e,t)=>t==null||!t.event||e?.event===t?.event,this._instance=e,this.En=new Set,this.Mn=new Set}init(){var e;F(this._instance?._addCaptureHook)||(e=this._instance)==null||e._addCaptureHook(((e,t)=>{this.on(e,t)}))}register(e){var t;if(!F(this._instance?._addCaptureHook)&&(e.forEach((e=>{var t,n;(t=this.Mn)==null||t.add(e),(n=e.steps)==null||n.forEach((e=>{var t;(t=this.En)==null||t.add(e?.event||``)}))})),(t=this._instance)!=null&&t.autocapture)){var n,r=new Set;e.forEach((e=>{var t;(t=e.steps)==null||t.forEach((e=>{e!=null&&e.selector&&r.add(e?.selector)}))})),(n=this._instance)==null||n.autocapture.setElementSelectors(r)}}on(e,t){t!=null&&e.length!=0&&(this.En.has(e)||this.En.has(t?.event))&&this.Mn&&this.Mn?.size>0&&this.Mn.forEach((e=>{this.Rn(t,e)&&this.xn.emit(`actionCaptured`,e.name)}))}Pn(e){this.onAction(`actionCaptured`,(t=>e(t)))}Rn(e,t){if(t?.steps==null)return!1;for(var n of t.steps)if(this.Sn(e,n))return!0;return!1}onAction(e,t){return this.xn.on(e,t)}Cn(e,t){if(t!=null&&t.url){var n,r=e==null||(n=e.properties)==null?void 0:n.$current_url;if(!r||typeof r!=`string`||!os(r,t.url,t.url_matching||`contains`))return!1}return!0}In(e,t){return!!this.On(e,t)&&!!this.Ln(e,t)&&!!this.Fn(e,t)}On(e,t){var n;if(t==null||!t.href)return!0;var r=this.An(e);if(r.length>0)return r.some((e=>os(e.href,t.href,t.href_matching||`exact`)));var i,a=(e==null||(n=e.properties)==null?void 0:n.$elements_chain)||``;return!!a&&os((i=a.match(/(?::|")href="(.*?)"/))?i[1]:``,t.href,t.href_matching||`exact`)}Ln(e,t){var n;if(t==null||!t.text)return!0;var r=this.An(e);if(r.length>0)return r.some((e=>os(e.text,t.text,t.text_matching||`exact`)||os(e.$el_text,t.text,t.text_matching||`exact`)));var i,a,o,s=(e==null||(n=e.properties)==null?void 0:n.$elements_chain)||``;return!!s&&(i=function(e){for(var t,n=[],r=/(?::|")text="(.*?)"/g;!R(t=r.exec(e));)n.includes(t[1])||n.push(t[1]);return n}(s),a=t.text,o=t.text_matching||`exact`,i.some((e=>os(e,a,o))))}Fn(e,t){var n,r;if(t==null||!t.selector)return!0;var i=e==null||(n=e.properties)==null?void 0:n.$element_selectors;if(i!=null&&i.includes(t.selector))return!0;var a=(e==null||(r=e.properties)==null?void 0:r.$elements_chain)||``;if(t.selector_regex&&a)try{return new RegExp(t.selector_regex).test(a)}catch{return!1}return!1}An(e){var t;return(e==null||(t=e.properties)==null?void 0:t.$elements)==null?[]:e?.properties.$elements}Tn(e,t){return t==null||!t.properties||t.properties.length===0||Aa(t.properties.reduce(((e,t)=>{var n=M(t.value)?t.value.map(String):t.value==null?[]:[String(t.value)];return e[t.key]={values:n,operator:t.operator||`exact`},e}),{}),e?.properties)}},cs=class{constructor(e){this._instance=e,this.Nn=new Map,this.Dn=new Map,this.$n=new Map}qn(e,t){return!!e&&Aa(e.propertyFilters,t?.properties)}jn(e,t){var n=new Map;return e.forEach((e=>{var r;(r=e.conditions)==null||(r=r[t])==null||(r=r.values)==null||r.forEach((t=>{if(t!=null&&t.name){var r=n.get(t.name)||[];r.push(e.id),n.set(t.name,r)}}))})),n}Hn(e,t,n){var r=(n===gi.Activation?this.Nn:this.Dn).get(e),i=[];return this.Un((e=>{i=e.filter((e=>r?.includes(e.id)))})),i.filter((r=>{var i,a=(i=r.conditions)==null||(i=i[n])==null||(i=i.values)==null?void 0:i.find((t=>t.name===e));return this.qn(a,t)}))}register(e){F(this._instance?._addCaptureHook)||(this.Bn(e),this.zn(e))}zn(e){var t=e.filter((e=>{var t;return e.conditions?.actions&&((t=e.conditions)==null||(t=t.actions)==null||(t=t.values)==null?void 0:t.length)>0}));t.length!==0&&(this.Vn??(this.Vn=new ss(this._instance),this.Vn.init(),this.Vn.Pn((e=>{this.onAction(e)}))),t.forEach((e=>{var t,n,r,i,a;e.conditions&&(t=e.conditions)!=null&&t.actions&&(n=e.conditions)!=null&&(n=n.actions)!=null&&n.values&&((r=e.conditions)==null||(r=r.actions)==null||(r=r.values)==null?void 0:r.length)>0&&((i=this.Vn)==null||i.register(e.conditions.actions.values),(a=e.conditions)==null||(a=a.actions)==null||(a=a.values)==null||a.forEach((t=>{if(t&&t.name){var n=this.$n.get(t.name);n&&n.push(e.id),this.$n.set(t.name,n||[e.id])}})))})))}Bn(e){var t,n=e.filter((e=>{var t;return e.conditions?.events&&((t=e.conditions)==null||(t=t.events)==null||(t=t.values)==null?void 0:t.length)>0})),r=e.filter((e=>{var t;return e.conditions?.cancelEvents&&((t=e.conditions)==null||(t=t.cancelEvents)==null||(t=t.values)==null?void 0:t.length)>0}));n.length===0&&r.length===0||((t=this._instance)==null||t._addCaptureHook(((e,t)=>{this.onEvent(e,t)})),this.Nn=this.jn(e,gi.Activation),this.Dn=this.jn(e,gi.Cancellation))}onEvent(e,t){var n,r=this.le(),i=this.Wn(),a=this.Zn(),o=((n=this._instance)==null||(n=n.persistence)==null?void 0:n.props[i])||[];if(a===e&&t&&o.length>0){var s,c;r.info(`event matched, removing item from activated items`,{event:e,eventPayload:t,existingActivatedItems:o});var l=(t==null||(s=t.properties)==null?void 0:s.$survey_id)||(t==null||(c=t.properties)==null?void 0:c.$product_tour_id);if(l){var u=o.indexOf(l);0>u||(o.splice(u,1),this.Gn(o))}}else{if(this.Dn.has(e)){var d=this.Hn(e,t,gi.Cancellation);d.length>0&&(r.info(`cancel event matched, cancelling items`,{event:e,itemsToCancel:d.map((e=>e.id))}),d.forEach((e=>{var t=o.indexOf(e.id);0>t||o.splice(t,1),this.Qn(e.id)})),this.Gn(o))}if(this.Nn.has(e)){r.info(`event name matched`,{event:e,eventPayload:t,items:this.Nn.get(e)});var f=this.Hn(e,t,gi.Activation);this.Gn(o.concat(f.map((e=>e.id))||[]))}}}onAction(e){var t,n=this.Wn(),r=((t=this._instance)==null||(t=t.persistence)==null?void 0:t.props[n])||[];this.$n.has(e)&&this.Gn(r.concat(this.$n.get(e)||[]))}Gn(e){var t=this.le(),n=[...new Set(e)].filter((e=>!this.Jn(e)));t.info(`updating activated items`,{activatedItems:n}),this.Kn(n)}getActivatedIds(){var e,t=this.Wn();return((e=this._instance)==null||(e=e.persistence)==null?void 0:e.props[t])||[]}getEventToItemsMap(){return this.Nn}Yn(){return this.Vn}},ls=class extends cs{constructor(e){super(e)}Wn(){return Rn}Zn(){return vi.SHOWN}Un(e){var t;(t=this._instance)==null||t.getSurveys(e)}Qn(e){var t;(t=this._instance)==null||t.cancelPendingSurvey(e)}le(){return Q}Kn(e){var t;(t=this._instance)==null||(t=t.persistence)==null||t.register({[Rn]:e})}Jn(){return!1}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}},us=`SDK is not enabled or survey functionality is not yet loaded`,ds=`Disabled. Not loading surveys.`,fs=n!=null&&n.location?Qr(n.location.hash,`__posthog`)||Qr(location.hash,`state`):null,ps=`_postHogToolbarParams`,ms=W(`[Toolbar]`),$=W(`[FeatureFlags]`),hs=W(`[FeatureFlags]`,{debugEnabled:!0}),gs=`" failed. Feature flags didn't load in time.`,_s=e=>{for(var t={},n=0;e.length>n;n++)t[e[n]]=!0;return t},vs=e=>{var t={};for(var[n,r]of hr(e||{}))r&&(t[n]=r);return t},ys=W(`[Error tracking]`),bs=`Refusing to render web experiment since the viewer is a likely bot`,xs={icontains:(e,t)=>!!n&&t.href.toLowerCase().indexOf(e.toLowerCase())>-1,not_icontains:(e,t)=>!!n&&t.href.toLowerCase().indexOf(e.toLowerCase())===-1,regex:(e,t)=>!!n&&Ea(t.href,e),not_regex:(e,t)=>!!n&&!Ea(t.href,e),exact:(e,t)=>t.href===e,is_not:(e,t)=>t.href!==e},Ss=class e{get qt(){return this._instance.config}constructor(t){var n=this;this.getWebExperimentsAndEvaluateDisplayLogic=function(t){t===void 0&&(t=!1),n.getWebExperiments((t=>{e.Xn(`retrieved web experiments from the server`),n.es=new Map,t.forEach((t=>{if(t.feature_flag_key){var r;n.es&&(e.Xn(`setting flag key `,t.feature_flag_key,` to web experiment `,t),(r=n.es)==null||r.set(t.feature_flag_key,t));var i=n._instance.getFeatureFlag(t.feature_flag_key);I(i)&&t.variants[i]&&n.ts(t.name,i,t.variants[i].transforms)}else if(t.variants)for(var a in t.variants){var o=t.variants[a];e.rs(o)&&n.ts(t.name,a,o.transforms)}}))}),t)},this._instance=t,this._instance.onFeatureFlags((e=>{this.onFeatureFlags(e)}))}initialize(){}onFeatureFlags(t){if(this._is_bot())e.Xn(bs);else if(!this.qt.disable_web_experiments){if(R(this.es))return this.es=new Map,this.loadIfEnabled(),void this.previewWebExperiment();e.Xn(`applying feature flags`,t),t.forEach((e=>{var t;if(this.es&&(t=this.es)!=null&&t.has(e)){var n=this._instance.getFeatureFlag(e),r=this.es?.get(e);n&&r!=null&&r.variants[n]&&this.ts(r.name,n,r.variants[n].transforms)}}))}}previewWebExperiment(){var t=e.getWindowLocation();if(t!=null&&t.search){var n=Xr(t?.search,`__experiment_id`),r=Xr(t?.search,`__experiment_variant`);n&&r&&(e.Xn(`previewing web experiments `+n+` && `+r),this.getWebExperiments((e=>{this.ns(parseInt(n),r,e)}),!1,!0))}}loadIfEnabled(){this.qt.disable_web_experiments||this.getWebExperimentsAndEvaluateDisplayLogic()}getWebExperiments(e,t,n){if(this.qt.disable_web_experiments&&!n)return e([]);var r=this._instance.get_property(`$web_experiments`);if(r&&!t)return e(r);this._instance._send_request({url:this._instance.requestRouter.endpointFor(`api`,`/api/web_experiments/?token=`+this.qt.token),method:`GET`,callback:t=>e(t.statusCode===200&&t.json&&t.json.experiments||[])})}ns(t,n,r){var i=r.filter((e=>e.id===t));i&&i.length>0&&(e.Xn(`Previewing web experiment [`+i[0].name+`] with variant [`+n+`]`),this.ts(i[0].name,n,i[0].variants[n].transforms))}static rs(t){return!R(t.conditions)&&e.ss(t)&&e.os(t)}static ss(t){if(R(t.conditions)||R(t.conditions?.url))return!0;var n,r=e.getWindowLocation();return!!r&&((n=t.conditions)==null||!n.url||xs[t.conditions?.urlMatchType??`icontains`](t.conditions.url,r))}static getWindowLocation(){return n?.location}static os(e){if(R(e.conditions)||R(e.conditions?.utm))return!0;var t=ii();if(t.utm_source){var n,r,i,a,o,s,c,l,u=(n=e.conditions)==null||(n=n.utm)==null||!n.utm_campaign||((r=e.conditions)==null||(r=r.utm)==null?void 0:r.utm_campaign)==t.utm_campaign,d=(i=e.conditions)==null||(i=i.utm)==null||!i.utm_source||((a=e.conditions)==null||(a=a.utm)==null?void 0:a.utm_source)==t.utm_source,f=(o=e.conditions)==null||(o=o.utm)==null||!o.utm_medium||((s=e.conditions)==null||(s=s.utm)==null?void 0:s.utm_medium)==t.utm_medium,p=(c=e.conditions)==null||(c=c.utm)==null||!c.utm_term||((l=e.conditions)==null||(l=l.utm)==null?void 0:l.utm_term)==t.utm_term;return u&&f&&p&&d}return!1}static Xn(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r];U.info(`[WebExperiments] `+e,n)}ts(t,n,r){this._is_bot()?e.Xn(bs):n===`control`?e.Xn(`Control variants leave the page unmodified.`):r.forEach((r=>{r.selector&&(e.Xn(`applying transform of variant `+n+` for experiment `+t+` `,r),(document?.querySelectorAll(r.selector))?.forEach((e=>{var t=e;r.html&&(t.innerHTML=r.html),r.css&&t.setAttribute(`style`,r.css)})))}))}_is_bot(){return i&&this._instance?Ta(i,this.qt.custom_blocked_useragents):void 0}},Cs=W(`[Conversations]`),ws=`Conversations not available yet.`,Ts={featureFlags:class{constructor(e){this.us=!1,this.ls=!1,this.hs=!1,this.cs=!1,this.ds=!1,this.vs=!1,this.fs=!1,this.ps=!1,this._instance=e,this.featureFlagEventHandlers=[]}get qt(){return this._instance.config}get ui(){return this._instance.persistence}gs(e){return this._instance.get_property(e)}ys(){var e;return(e=this.ui?.Sr(this.qt.feature_flag_cache_ttl_ms))!=null&&e}bs(){return!!this.ys()&&(this.ps||this.hs||(this.ps=!0,$.warn(`Feature flag cache is stale, triggering refresh...`),this.reloadFeatureFlags()),!0)}_s(){var e=this.qt.evaluation_contexts??this.qt.evaluation_environments;return!this.qt.evaluation_environments||this.qt.evaluation_contexts||this.fs||($.warn(`evaluation_environments is deprecated. Use evaluation_contexts instead. evaluation_environments will be removed in a future version.`),this.fs=!0),e!=null&&e.length?e.filter((e=>{var t=e&&typeof e==`string`&&e.trim().length>0;return t||$.error(`Invalid evaluation context found:`,e,`Expected non-empty string`),t})):[]}ws(){return this._s().length>0}xs(){var e=this.qt.flag_keys;if(!F(e)){if(M(e))return e.filter((e=>{var t=e&&typeof e==`string`&&e.trim().length>0;return t||$.error(`Invalid flag key found:`,e,`Expected non-empty string`),t}));$.error(`Invalid flag_keys found:`,e,`Expected array of non-empty strings`)}}initialize(){var{config:e}=this._instance,t=e.bootstrap?.featureFlags??{};if(Object.keys(t).length){var n=e.bootstrap?.featureFlagPayloads??{},r=Object.keys(t).filter((e=>!!t[e])).reduce(((e,n)=>(e[n]=t[n]||!1,e)),{}),i=Object.keys(n).filter((e=>r[e])).reduce(((e,t)=>(n[t]&&(e[t]=n[t]),e)),{});this.receivedFeatureFlags({featureFlags:r,featureFlagPayloads:i})}}updateFlags(e,t,n){var r=n!=null&&n.merge?this.getFlagVariants():{},i=n!=null&&n.merge?this.getFlagPayloads():{},a=_({},r,e),o=_({},i,t),s={};for(var[c,l]of Object.entries(a)){var u=typeof l==`string`;s[c]={key:c,enabled:!!u||!!l,variant:u?l:void 0,reason:void 0,metadata:F(o?.[c])?void 0:{id:0,version:void 0,description:void 0,payload:o[c]}}}this.receivedFeatureFlags({flags:s})}get hasLoadedFlags(){return this.ls}getFlags(){return Object.keys(this.getFlagVariants())}getFlagsWithDetails(){var e=this.gs(An),t=this.gs(Nn),n=this.gs(Pn);if(!n&&!t)return e||{};var r=K({},e||{});for(var i of[...new Set([...Object.keys(n||{}),...Object.keys(t||{})])]){var a,o,s=r[i],c=t?.[i],l=F(c)?(a=s?.enabled)!=null&&a:!!c,u=F(c)?s.variant:typeof c==`string`?c:void 0,d=n?.[i],f=_({},s,{enabled:l,variant:l?u??s?.variant:void 0});l!==s?.enabled&&(f.original_enabled=s?.enabled),u!==s?.variant&&(f.original_variant=s?.variant),d&&(f.metadata=_({},s?.metadata,{payload:d,original_payload:s==null||(o=s.metadata)==null?void 0:o.payload})),r[i]=f}return this.us||=($.warn(` Overriding feature flag details!`,{flagDetails:e,overriddenPayloads:n,finalDetails:r}),!0),r}getFlagVariants(){var e=this.gs(Dn),t=this.gs(Nn);if(!t)return e||{};for(var n=K({},e),r=Object.keys(t),i=0;r.length>i;i++)n[r[i]]=t[r[i]];return this.us||=($.warn(` Overriding feature flags!`,{enabledFlags:e,overriddenFlags:t,finalFlags:n}),!0),n}getFlagPayloads(){var e=this.gs(jn),t=this.gs(Pn);if(!t)return e||{};for(var n=K({},e||{}),r=Object.keys(t),i=0;r.length>i;i++)n[r[i]]=t[r[i]];return this.us||=($.warn(` Overriding feature flag payloads!`,{flagPayloads:e,overriddenPayloads:t,finalPayloads:n}),!0),n}reloadFeatureFlags(){this.cs||this.qt.advanced_disable_feature_flags||this.Ss||(this._instance.Ui.emit(`featureFlagsReloading`,!0),this.Ss=setTimeout((()=>{this.ks()}),5))}Cs(){clearTimeout(this.Ss),this.Ss=void 0}ensureFlagsLoaded(){this.ls||this.hs||this.Ss||this.reloadFeatureFlags()}setAnonymousDistinctId(e){this.$anon_distinct_id=e}setReloadingPaused(e){this.cs=e}ks(e){if(this.Cs(),!this._instance.Dr())if(this.hs)this.ds=!0;else{var t=this.qt.token,n=this.gs(cn),r={token:t,distinct_id:this._instance.get_distinct_id(),groups:this._instance.getGroups(),$anon_distinct_id:this.$anon_distinct_id,person_properties:_({},this.ui?.get_initial_props()||{},this.gs(Fn)||{}),group_properties:this.gs(In),timezone:fi()};L(n)||F(n)||(r.$device_id=n),(e!=null&&e.disableFlags||this.qt.advanced_disable_feature_flags)&&(r.disable_flags=!0),this.ws()&&(r.evaluation_contexts=this._s());var i=this.xs();F(i)||(r.flag_keys=i);var a=!!this.qt.advanced_only_evaluate_survey_feature_flags,o=this._instance.requestRouter.endpointFor(`flags`,`/flags/?v=2`+(this.qt.advanced_only_evaluate_survey_feature_flags?`&only_evaluate_survey_feature_flags=true`:``));this.hs=!0,this._instance._send_request({method:`POST`,url:o,data:r,compression:this.qt.disable_compression?void 0:Di.Base64,timeout:this.qt.feature_flag_request_timeout_ms,callback:e=>{var t,n,i,o=!0;if(e.statusCode===200&&(this.ds||(this.$anon_distinct_id=void 0),o=!1),this.hs=!1,!r.disable_flags||this.ds){this.vs=!o;var s=[];e.error?e.error instanceof Error?s.push(e.error.name===`AbortError`?`timeout`:`connection_error`):s.push(`unknown_error`):e.statusCode!==200&&s.push(`api_error_`+e.statusCode),(t=e.json)!=null&&t.errorsWhileComputingFlags&&s.push(`errors_while_computing_flags`);var c=!((n=e.json)==null||(n=n.quotaLimited)==null||!n.includes(`feature_flags`));c&&s.push(`quota_limited`),(i=this.ui)==null||i.register({[Hn]:s}),c?$.warn(`You have hit your feature flags quota limit, and will not be able to load feature flags until the quota is reset. Please visit https://posthog.com/docs/billing/limits-alerts to learn more.`):(r.disable_flags||this.receivedFeatureFlags(e.json??{},o,{partialResponse:a}),this.ds&&(this.ds=!1,this.ks()))}}})}}getFeatureFlag(e,t){if(t===void 0&&(t={}),!t.fresh||this.vs)if(this.ls||this.getFlags()&&this.getFlags().length>0){if(!this.bs()){var n=this.getFeatureFlagResult(e,t);return n?.variant??n?.enabled}}else $.warn(`getFeatureFlag for key "`+e+gs)}getFeatureFlagDetails(e){return this.getFlagsWithDetails()[e]}getFeatureFlagPayload(e){return this.getFeatureFlagResult(e,{send_event:!1})?.payload}getFeatureFlagResult(e,t){if(t===void 0&&(t={}),!t.fresh||this.vs)if(this.ls||this.getFlags()&&this.getFlags().length>0){if(!this.bs()){var n=this.getFlagVariants(),r=e in n,i=n[e],a=this.getFlagPayloads()[e],o=String(i),s=this.gs(Mn)||void 0,c=this.gs(Un)||void 0,l=this.gs(Bn)||{};if(this.qt.advanced_feature_flags_dedup_per_session){var u,d=this._instance.get_session_id(),f=this.gs(Vn);d&&d!==f&&(l={},(u=this.ui)==null||u.register({[Bn]:l,[Vn]:d}))}if((t.send_event||!(`send_event`in t))&&(!(e in l)||!l[e].includes(o))){var p,m,h,g,_,v,y,b;M(l[e])?l[e].push(o):l[e]=[o],(p=this.ui)==null||p.register({[Bn]:l});var x=this.getFeatureFlagDetails(e),S=[...this.gs(Hn)??[]];F(i)&&S.push(`flag_missing`);var C={$feature_flag:e,$feature_flag_response:i,$feature_flag_payload:a||null,$feature_flag_request_id:s,$feature_flag_evaluated_at:c,$feature_flag_bootstrapped_response:((m=this.qt.bootstrap)==null||(m=m.featureFlags)==null?void 0:m[e])||null,$feature_flag_bootstrapped_payload:((h=this.qt.bootstrap)==null||(h=h.featureFlagPayloads)==null?void 0:h[e])||null,$used_bootstrap_value:!this.vs};F(x==null||(g=x.metadata)==null?void 0:g.version)||(C.$feature_flag_version=x.metadata.version);var w,T=(x==null||(_=x.reason)==null?void 0:_.description)??(x==null||(v=x.reason)==null?void 0:v.code);T&&(C.$feature_flag_reason=T),x!=null&&(y=x.metadata)!=null&&y.id&&(C.$feature_flag_id=x.metadata.id),F(x?.original_variant)&&F(x?.original_enabled)||(C.$feature_flag_original_response=F(x.original_variant)?x.original_enabled:x.original_variant),x!=null&&(b=x.metadata)!=null&&b.original_payload&&(C.$feature_flag_original_payload=x==null||(w=x.metadata)==null?void 0:w.original_payload),S.length&&(C.$feature_flag_error=S.join(`,`)),this._instance.capture(`$feature_flag_called`,C)}if(r){var E=a;if(!F(a))try{E=JSON.parse(a)}catch{}return{key:e,enabled:!!i,variant:typeof i==`string`?i:void 0,payload:E}}}}else $.warn(`getFeatureFlagResult for key "`+e+gs)}getRemoteConfigPayload(e,t){var n=this.qt.token,r={distinct_id:this._instance.get_distinct_id(),token:n};this.ws()&&(r.evaluation_contexts=this._s());var i=this.xs();F(i)||(r.flag_keys=i),this._instance._send_request({method:`POST`,url:this._instance.requestRouter.endpointFor(`flags`,`/flags/?v=2`),data:r,compression:this.qt.disable_compression?void 0:Di.Base64,timeout:this.qt.feature_flag_request_timeout_ms,callback(n){var r=n.json?.featureFlagPayloads;t(r?.[e]||void 0)}})}isFeatureEnabled(e,t){if(t===void 0&&(t={}),!t.fresh||this.vs){if(this.ls||this.getFlags()&&this.getFlags().length>0){var n=this.getFeatureFlag(e,t);return F(n)?void 0:!!n}$.warn(`isFeatureEnabled for key "`+e+gs)}}addFeatureFlagsHandler(e){this.featureFlagEventHandlers.push(e)}removeFeatureFlagsHandler(e){this.featureFlagEventHandlers=this.featureFlagEventHandlers.filter((t=>t!==e))}receivedFeatureFlags(e,t,n){if(this.ui){this.ls=!0;var r=this.getFlagVariants(),i=this.getFlagPayloads(),a=this.getFlagsWithDetails();(function(e,t,n,r,i,a){n===void 0&&(n={}),r===void 0&&(r={}),i===void 0&&(i={});var o=(e=>{var t=e.flags;return t?(e.featureFlags=Object.fromEntries(Object.keys(t).map((e=>[e,t[e].variant??t[e].enabled]))),e.featureFlagPayloads=Object.fromEntries(Object.keys(t).filter((e=>t[e].enabled)).filter((e=>t[e].metadata?.payload)).map((e=>[e,t[e].metadata?.payload])))):$.warn(`Using an older version of the feature flags endpoint. Please upgrade your PostHog server to the latest version`),e})(e),s=o.flags,c=o.featureFlags,l=o.featureFlagPayloads;if(c){var u=e.requestId,d=e.evaluatedAt;if(M(c)){$.warn(`v1 of the feature flags endpoint is deprecated. Please use the latest version.`);var f={};if(c)for(var p=0;c.length>p;p++)f[c[p]]=!0;t&&t.register({[On]:c,[Dn]:f})}else{var m=c,h=l,g=s;if(a!=null&&a.partialResponse)m=_({},n,m),h=_({},r,h),g=_({},i,g);else if(e.errorsWhileComputingFlags)if(s){var v=new Set(Object.keys(s).filter((e=>{var t;return!((t=s[e])!=null&&t.failed)})));m=_({},n,Object.fromEntries(Object.entries(m).filter((e=>{var[t]=e;return v.has(t)})))),h=_({},r,Object.fromEntries(Object.entries(h||{}).filter((e=>{var[t]=e;return v.has(t)})))),g=_({},i,Object.fromEntries(Object.entries(g||{}).filter((e=>{var[t]=e;return v.has(t)}))))}else m=_({},n,m),h=_({},r,h),g=_({},i,g);t&&t.register(_({[On]:Object.keys(vs(m)),[Dn]:m||{},[jn]:h||{},[An]:g||{}},u?{[Mn]:u}:{},d?{[Un]:d}:{}))}}})(e,this.ui,r,i,a,n),t||(this.ps=!1),this.Is(t)}}override(e,t){t===void 0&&(t=!1),$.warn(`override is deprecated. Please use overrideFeatureFlags instead.`),this.overrideFeatureFlags({flags:e,suppressWarning:t})}overrideFeatureFlags(e){if(!this._instance.__loaded||!this.ui)return $.uninitializedWarning(`posthog.featureFlags.overrideFeatureFlags`);if(!1===e)return this.ui.unregister(Nn),this.ui.unregister(Pn),this.Is(),hs.info(`All overrides cleared`);if(M(e)){var t=_s(e);return this.ui.register({[Nn]:t}),this.Is(),hs.info(`Flag overrides set`,{flags:e})}if(e&&typeof e==`object`&&(`flags`in e||`payloads`in e)){var n,r=e;if(this.us=!!((n=r.suppressWarning)!=null&&n),`flags`in r){if(!1===r.flags)this.ui.unregister(Nn),hs.info(`Flag overrides cleared`);else if(r.flags){if(M(r.flags)){var i=_s(r.flags);this.ui.register({[Nn]:i})}else this.ui.register({[Nn]:r.flags});hs.info(`Flag overrides set`,{flags:r.flags})}}`payloads`in r&&(!1===r.payloads?(this.ui.unregister(Pn),hs.info(`Payload overrides cleared`)):r.payloads&&(this.ui.register({[Pn]:r.payloads}),hs.info(`Payload overrides set`,{payloads:r.payloads}))),this.Is();return}if(e&&typeof e==`object`)return this.ui.register({[Nn]:e}),this.Is(),hs.info(`Flag overrides set`,{flags:e});$.warn(`Invalid overrideOptions provided to overrideFeatureFlags`,{overrideOptions:e})}onFeatureFlags(e){if(this.addFeatureFlagsHandler(e),this.ls){var{flags:t,flagVariants:n}=this.Ts();e(t,n)}return()=>this.removeFeatureFlagsHandler(e)}updateEarlyAccessFeatureEnrollment(e,t,n){var r,i=(this.gs(kn)||[]).find((t=>t.flagKey===e)),a={[`$feature_enrollment/`+e]:t},o={$feature_flag:e,$feature_enrollment:t,$set:a};i&&(o.$early_access_feature_name=i.name),n&&(o.$feature_enrollment_stage=n),this._instance.capture(`$feature_enrollment_update`,o),this.setPersonPropertiesForFlags(a,!1);var s=_({},this.getFlagVariants(),{[e]:t});(r=this.ui)==null||r.register({[On]:Object.keys(vs(s)),[Dn]:s}),this.Is()}getEarlyAccessFeatures(e,t,n){t===void 0&&(t=!1);var r=this.gs(kn),i=n?`&`+n.map((e=>`stage=`+e)).join(`&`):``;if(r&&!t)return e(r);this._instance._send_request({url:this._instance.requestRouter.endpointFor(`api`,`/api/early_access_features/?token=`+this.qt.token+i),method:`GET`,callback:t=>{var n,r;if(t.json){var i=t.json.earlyAccessFeatures;return(n=this.ui)==null||n.unregister(kn),(r=this.ui)==null||r.register({[kn]:i}),e(i)}}})}Ts(){var e=this.getFlags(),t=this.getFlagVariants();return{flags:e.filter((e=>t[e])),flagVariants:Object.keys(t).filter((e=>t[e])).reduce(((e,n)=>(e[n]=t[n],e)),{})}}Is(e){var{flags:t,flagVariants:n}=this.Ts();this.featureFlagEventHandlers.forEach((r=>r(t,n,{errorsLoading:e})))}setPersonPropertiesForFlags(e,t){t===void 0&&(t=!0);var n=this.gs(Fn)||{},r=e?.$set||(e!=null&&e.$set_once?{}:e),i=e?.$set_once,a={};if(i)for(var o in i)({}).hasOwnProperty.call(i,o)&&(o in n||(a[o]=i[o]));this._instance.register({[Fn]:_({},n,a,r)}),t&&this._instance.reloadFeatureFlags()}resetPersonPropertiesForFlags(){this._instance.unregister(Fn)}setGroupPropertiesForFlags(e,t){t===void 0&&(t=!0);var n=this.gs(In)||{};Object.keys(n).length!==0&&Object.keys(n).forEach((t=>{n[t]=_({},n[t],e[t]),delete e[t]})),this._instance.register({[In]:_({},n,e)}),t&&this._instance.reloadFeatureFlags()}resetGroupPropertiesForFlags(e){if(e){var t=this.gs(In)||{};this._instance.register({[In]:_({},t,{[e]:{}})})}else this._instance.unregister(In)}reset(){this.ls=!1,this.hs=!1,this.cs=!1,this.ds=!1,this.vs=!1,this.$anon_distinct_id=void 0,this.Cs(),this.us=!1}}},Es={sessionRecording:class{get qt(){return this._instance.config}get ui(){return this._instance.persistence}get started(){var e;return!((e=this.Es)==null||!e.isStarted)}get status(){return this.Ms===Xo||this.Ms===Zo?this.Ms:this.Es?.status??this.Ms}constructor(e){if(this._forceAllowLocalhostNetworkCapture=!1,this.Ms=Jo,this.Rs=void 0,this._instance=e,!this._instance.sessionManager)throw $o.error(`started without valid sessionManager`),Error(Qo+` started without valid sessionManager. This is a bug.`);if(this.qt.cookieless_mode===ir)throw Error(Qo+` cannot be used with cookieless_mode="always"`)}initialize(){this.startIfEnabledOrStop()}get Ps(){var e,t=!((e=this._instance.get_property(bn))==null||!e.enabled),r=!this.qt.disable_session_recording,i=this.qt.disable_session_recording||this._instance.consent.isOptedOut();return n&&t&&r&&!i}startIfEnabledOrStop(e){var t;if(!this.Ps||(t=this.Es)==null||!t.isStarted){var n=!F(Object.assign)&&!F(Array.from);this.Ps&&n?(this.Os(e),$o.info(`starting`)):(this.Ms=Jo,this.stopRecording())}}Os(e){var t,n,r;this.Ps&&(this.Ms!==Xo&&this.Ms!==Zo&&(this.Ms=Yo),f!=null&&(t=f.__PosthogExtensions__)!=null&&(t=t.rrweb)!=null&&t.record&&(n=f.__PosthogExtensions__)!=null&&n.initSessionRecording?this.Ls(e):(r=f.__PosthogExtensions__)==null||r.loadExternalDependency==null||r.loadExternalDependency(this._instance,this.Fs,(t=>{if(t)return $o.error(`could not load recorder`,t);this.Ls(e)})))}stopRecording(){var e,t;(e=this.Rs)==null||e.call(this),this.Rs=void 0,(t=this.Es)==null||t.stop()}As(){var e,t;(e=this.Rs)==null||e.call(this),this.Rs=void 0,(t=this.Es)==null||t.discard()}Ns(){var e;(e=this.ui)==null||e.unregister(En)}Ds(e,t){if(R(e))return null;var n,r=z(e)?e:parseFloat(e);return typeof(n=r)!=`number`||!Number.isFinite(n)||0>n||n>1?($o.warn(t+` must be between 0 and 1. Ignoring invalid value:`,e),null):r}$s(e){if(this.ui){var t,n=this.ui,r=()=>{var t=!1===e.sessionRecording?void 0:e.sessionRecording,r=this.Ds(this.qt.session_recording?.sampleRate,`session_recording.sampleRate`),i=this.Ds(t?.sampleRate,`remote config sampleRate`),a=r??i;R(a)&&this.Ns();var o=t?.minimumDurationMilliseconds;n.register({[bn]:_({cache_timestamp:Date.now(),enabled:!!t},t,{networkPayloadCapture:_({capturePerformance:e.capturePerformance},t?.networkPayloadCapture),canvasRecording:{enabled:t?.recordCanvas,fps:t?.canvasFps,quality:t?.canvasQuality},sampleRate:a,minimumDurationMilliseconds:F(o)?null:o,endpoint:t?.endpoint,triggerMatchType:t?.triggerMatchType,masking:t?.masking,urlTriggers:t?.urlTriggers,version:t?.version,triggerGroups:t?.triggerGroups})})};r(),(t=this.Rs)==null||t.call(this),this.Rs=this._instance.sessionManager?.onSessionId(r)}}onRemoteConfig(e){`sessionRecording`in e?!1===e.sessionRecording?(this.$s(e),this.As()):(this.$s(e),this.startIfEnabledOrStop()):(this.Ms===Xo&&(this.Ms=Zo,$o.warn(`config refresh failed, recording will not start until page reload`)),this.startIfEnabledOrStop())}log(e,t){var n;t===void 0&&(t=`log`),(n=this.Es)!=null&&n.log?this.Es.log(e,t):$o.warn(`log called before recorder was ready`)}get Fs(){var e,t,n=(e=this._instance)==null||(e=e.persistence)==null?void 0:e.get_property(bn);return(n==null||(t=n.scriptConfig)==null?void 0:t.script)||`lazy-recorder`}qs(){var e,t=this._instance.get_property(bn);if(!t)return!1;try{e=typeof t==`object`?t:JSON.parse(t)}catch(e){return $o.warn(`persisted remote config for session recording is invalid and will be ignored`,e),!1}var n=e.cache_timestamp??Date.now();return 36e5>=Date.now()-n}Ls(e){var t;if((t=f.__PosthogExtensions__)==null||!t.initSessionRecording)return $o.warn(`Called on script loaded before session recording is available. This can be caused by adblockers.`),void this._instance.register_for_session({[tr]:!0});if(this.Es||(this.Es=f.__PosthogExtensions__?.initSessionRecording(this._instance),this.Es._forceAllowLocalhostNetworkCapture=this._forceAllowLocalhostNetworkCapture),!this.qs()){if(this.Ms===Zo||this.Ms===Xo)return;this.Ms=Xo,$o.info(`persisted remote config is stale, requesting fresh config before starting`),new Ei(this._instance).load();return}this.Ms=Yo,this.Es.start(e)}onRRwebEmit(e){var t;(t=this.Es)==null||t.onRRwebEmit==null||t.onRRwebEmit(e)}overrideLinkedFlag(){var e,t;this.Es||(t=this.ui)==null||t.register({[Sn]:!0}),(e=this.Es)==null||e.overrideLinkedFlag()}overrideSampling(){var e,t;this.Es||(t=this.ui)==null||t.register({[xn]:!0}),(e=this.Es)==null||e.overrideSampling()}overrideTrigger(e){var t,n;this.Es||(n=this.ui)==null||n.register({[e===`url`?Cn:wn]:!0}),(t=this.Es)==null||t.overrideTrigger(e)}get sdkDebugProperties(){return this.Es?.sdkDebugProperties||{$recording_status:this.status}}tryAddCustomEvent(e,t){var n;return!((n=this.Es)==null||!n.tryAddCustomEvent(e,t))}}},Ds={autocapture:class{constructor(e){this.js=!1,this.Hs=null,this.Us=!1,this.instance=e,this.rageclicks=new Lo(e.config.rageclick),this.Bs=null}initialize(){this.startIfEnabled()}get qt(){var e=P(this.instance.config.autocapture)?this.instance.config.autocapture:{};return e.url_allowlist=e.url_allowlist?.map((e=>new RegExp(e))),e.url_ignorelist=e.url_ignorelist?.map((e=>new RegExp(e))),e}zs(){if(this.isBrowserSupported()){if(n&&a){var e=e=>{e||=n?.event;try{this.Vs(e)}catch(e){zo.error(`Failed to capture event`,e)}};if(q(a,`submit`,e,{capture:!0}),q(a,`change`,e,{capture:!0}),q(a,`click`,e,{capture:!0}),this.qt.capture_copied_text){var t=e=>{e||=n?.event;try{this.Vs(e,Ro)}catch(e){zo.error(`Failed to capture copy/cut event`,e)}};q(a,`copy`,t,{capture:!0}),q(a,`cut`,t,{capture:!0})}}}else zo.info(`Disabling Automatic Event Collection because this browser is not supported`)}startIfEnabled(){this.isEnabled&&!this.js&&(this.zs(),this.js=!0)}onRemoteConfig(e){e.elementsChainAsString&&(this.Us=e.elementsChainAsString),this.instance.persistence&&this.instance.persistence.register({[dn]:!!e.autocapture_opt_out}),this.Hs=!!e.autocapture_opt_out,this.startIfEnabled()}setElementSelectors(e){this.Bs=e}getElementSelectors(e){var t,n=[];return(t=this.Bs)==null||t.forEach((t=>{(a?.querySelectorAll(t))?.forEach((r=>{e===r&&n.push(t)}))})),n}get isEnabled(){var e=this.instance.persistence?.props[dn];if(L(this.Hs)&&!B(e)&&!this.instance.Dr())return!1;var t=this.Hs??!!e;return!!this.instance.config.autocapture&&!t}Vs(e,t){if(t===void 0&&(t=`$autocapture`),this.isEnabled){var r,i=go(e);co(i)&&(i=i.parentNode||null),t===`$autocapture`&&e.type===`click`&&e instanceof MouseEvent&&this.instance.config.rageclick&&(r=this.rageclicks)!=null&&r.isRageClick(e.clientX,e.clientY,e.timeStamp||new Date().getTime())&&function(e,t){if(!n||So(e))return!1;var r,i;if(B(t)?(r=!!t&&xo,i=void 0):(r=t?.css_selector_ignorelist??xo,i=t?.content_ignorelist),!1===r)return!1;var{targetElementList:a}=Co(e,!1);return!function(e,t){if(!1===e||F(e))return!1;var n;if(!0===e)n=bo;else{if(!M(e))return!1;if(e.length>10)return U.error(`[PostHog] content_ignorelist array cannot exceed 10 items. Use css_selector_ignorelist for more complex matching.`),!1;n=e.map((e=>e.toLowerCase()))}return t.some((e=>{var{safeText:t,ariaLabel:r}=e;return n.some((e=>t.includes(e)||r.includes(e)))}))}(i,a.map((e=>({safeText:ho(e).toLowerCase(),ariaLabel:e.getAttribute(`aria-label`)?.toLowerCase().trim()||``}))))&&!vo(a,r)}(i,this.instance.config.rageclick)&&this.Vs(e,`$rageclick`);var a=t===Ro;if(i&&function(e,t,r,i,a){var o,s,c;if(r===void 0&&(r=void 0),!n||So(e)||(o=r)!=null&&o.url_allowlist&&!fo(r.url_allowlist)||(s=r)!=null&&s.url_ignorelist&&fo(r.url_ignorelist))return!1;if((c=r)!=null&&c.dom_event_allowlist){var l=r.dom_event_allowlist;if(l&&!l.some((e=>t.type===e)))return!1}var{parentIsUsefulElement:u,targetElementList:d}=Co(e,i);if(!function(e,t){var n=t?.element_allowlist;if(F(n))return!0;var r,i=function(e){if(n.some((t=>e.tagName.toLowerCase()===t)))return{v:!0}};for(var a of e)if(r=i(a))return r.v;return!1}(d,r)||!vo(d,r?.css_selector_allowlist))return!1;var f=n.getComputedStyle(e);if(f&&f.getPropertyValue(`cursor`)===`pointer`&&t.type===`click`)return!0;var p=e.tagName.toLowerCase();switch(p){case`html`:return!1;case`form`:return(a||[`submit`]).indexOf(t.type)>=0;case`input`:case`select`:case`textarea`:return(a||[`change`,`click`]).indexOf(t.type)>=0;default:return u?(a||[`click`]).indexOf(t.type)>=0:(a||[`click`]).indexOf(t.type)>=0&&(_o.indexOf(p)>-1||e.getAttribute(`contenteditable`)===`true`)}}(i,e,this.qt,a,a?[`copy`,`cut`]:void 0)){var{props:o,explicitNoCapture:s}=Ho(i,{e,maskAllElementAttributes:this.instance.config.mask_all_element_attributes,maskAllText:this.instance.config.mask_all_text,elementAttributeIgnoreList:this.qt.element_attribute_ignorelist,elementsChainAsString:this.Us});if(s)return!1;var c=this.getElementSelectors(i);if(c&&c.length>0&&(o.$element_selectors=c),t===Ro){var l,u=mo(n==null||(l=n.getSelection())==null?void 0:l.toString()),d=e.type||`clipboard`;if(!u)return!1;o.$selected_content=u,o.$copy_type=d}return this.instance.capture(t,o),!0}}}isBrowserSupported(){return N(a?.querySelectorAll)}},historyAutocapture:class{constructor(e){var t;this._instance=e,this.Ws=(n==null||(t=n.location)==null?void 0:t.pathname)||``}initialize(){this.startIfEnabled()}get isEnabled(){return this._instance.config.capture_pageview===`history_change`}startIfEnabled(){this.isEnabled&&(U.info(`History API monitoring enabled, starting...`),this.monitorHistoryChanges())}stop(){this.Zs&&this.Zs(),this.Zs=void 0,U.info(`History API monitoring stopped`)}monitorHistoryChanges(){var e,t;if(n&&n.history){var r=this;(e=n.history.pushState)!=null&&e.__posthog_wrapped__||Wo(n.history,`pushState`,(e=>function(t,n,i){e.call(this,t,n,i),r.Gs(`pushState`)})),(t=n.history.replaceState)!=null&&t.__posthog_wrapped__||Wo(n.history,`replaceState`,(e=>function(t,n,i){e.call(this,t,n,i),r.Gs(`replaceState`)})),this.Qs()}}Gs(e){try{var t,r=n==null||(t=n.location)==null?void 0:t.pathname;if(!r)return;r!==this.Ws&&this.isEnabled&&this._instance.capture(ur,{navigation_type:e}),this.Ws=r}catch(t){U.error(`Error capturing `+e+` pageview`,t)}}Qs(){if(!this.Zs){var e=()=>{this.Gs(`popstate`)};q(n,`popstate`,e),this.Zs=()=>{n&&n.removeEventListener(`popstate`,e)}}}},heatmaps:class{get qt(){return this.instance.config}constructor(e){var t;this.Js=!1,this.js=!1,this.Ks=null,this.instance=e,this.Js=!((t=this.instance.persistence)==null||!t.props[fn]),this.rageclicks=new Lo(e.config.rageclick)}initialize(){this.startIfEnabled()}get flushIntervalMilliseconds(){var e=5e3;return P(this.qt.capture_heatmaps)&&this.qt.capture_heatmaps.flush_interval_milliseconds&&(e=this.qt.capture_heatmaps.flush_interval_milliseconds),e}get isEnabled(){return R(this.qt.capture_heatmaps)?R(this.qt.enable_heatmaps)?this.Js:this.qt.enable_heatmaps:!1!==this.qt.capture_heatmaps}startIfEnabled(){if(this.isEnabled){if(this.js)return;es.info(`starting...`),this.Ys(),this.At()}else clearInterval(this.Ks??void 0),this.Xs(),this.getAndClearBuffer()}onRemoteConfig(e){if(`heatmaps`in e){var t=!!e.heatmaps;this.instance.persistence&&this.instance.persistence.register({[fn]:t}),this.Js=t,this.startIfEnabled()}}getAndClearBuffer(){var e=this.M;return this.M=void 0,e}eo(e){this.Mt(e.originalEvent,`deadclick`)}At(){this.Ks&&clearInterval(this.Ks),this.Ks=a?.visibilityState===`visible`?setInterval(this.Kr.bind(this),this.flushIntervalMilliseconds):null}Ys(){n&&a&&(this.ro=this.Kr.bind(this),q(n,lr,this.ro),this.io=e=>this.Mt(e||n?.event),q(a,`click`,this.io,{capture:!0}),this.no=e=>this.so(e||n?.event),q(a,`mousemove`,this.no,{capture:!0}),this.oo=new Vr(this.instance,zr,this.eo.bind(this)),this.oo.startIfEnabledOrStop(),this.ao=this.At.bind(this),q(a,cr,this.ao),this.js=!0)}Xs(){var e;n&&a&&(this.ro&&n.removeEventListener(lr,this.ro),this.io&&a.removeEventListener(`click`,this.io,{capture:!0}),this.no&&a.removeEventListener(`mousemove`,this.no,{capture:!0}),this.ao&&a.removeEventListener(cr,this.ao),clearTimeout(this.uo),(e=this.oo)==null||e.stop(),this.js=!1)}lo(e,t){var r=this.instance.scrollManager.scrollY(),i=this.instance.scrollManager.scrollX(),a=this.instance.scrollManager.scrollElement(),o=function(e,t,r){for(var i=e;i&&oo(i)&&!so(i,`body`);){if(i===r)return!1;if(O(t,n?.getComputedStyle(i).position))return!0;i=yo(i)}return!1}(go(e),[`fixed`,`sticky`],a);return{x:e.clientX+(o?0:i),y:e.clientY+(o?0:r),target_fixed:o,type:t}}Mt(e,t){var n;if(t===void 0&&(t=`click`),!ao(e.target)&&ts(e)){var r=this.lo(e,t);(n=this.rageclicks)!=null&&n.isRageClick(e.clientX,e.clientY,new Date().getTime())&&this.ho(_({},r,{type:`rageclick`})),this.ho(r)}}so(e){!ao(e.target)&&ts(e)&&(clearTimeout(this.uo),this.uo=setTimeout((()=>{this.ho(this.lo(e,`mousemove`))}),500))}ho(e){if(n){var t=n.location.href,r=this.qt.custom_personal_data_properties,i=Zr(t,this.qt.mask_personal_data_properties?[...ei,...r||[]]:[],ni);this.M=this.M||{},this.M[i]||(this.M[i]=[]),this.M[i].push(e)}}Kr(){this.M&&!ie(this.M)&&this.instance.capture(`$$heatmap`,{$heatmap_data:this.getAndClearBuffer()})}},deadClicksAutocapture:Vr,webVitalsAutocapture:class{constructor(e){var t;this.Js=!1,this.js=!1,this.M={url:void 0,metrics:[],firstMetricTimestamp:void 0},this.co=()=>{clearTimeout(this.do),this.M.metrics.length!==0&&(this._instance.capture(`$web_vitals`,this.M.metrics.reduce(((e,t)=>_({},e,{[`$web_vitals_`+t.name+`_event`]:_({},t),[`$web_vitals_`+t.name+`_value`]:t.value})),{})),this.M={url:void 0,metrics:[],firstMetricTimestamp:void 0})},this.dt=e=>{this.M=this.M||{url:void 0,metrics:[],firstMetricTimestamp:void 0};var t=this.vo();if(!F(t))if(R(e?.name)||R(e?.value))Ko.error(`Invalid metric received`,e);else if(!this.fo||this.fo>e.value){this.M.url!==t&&(this.co(),this.do=setTimeout(this.co,this.flushToCaptureTimeoutMs)),F(this.M.url)&&(this.M.url=t),this.M.firstMetricTimestamp=F(this.M.firstMetricTimestamp)?Date.now():this.M.firstMetricTimestamp,e.attribution&&e.attribution.interactionTargetElement&&(e.attribution.interactionTargetElement=void 0);var n=this._instance.sessionManager?.checkAndGetSessionAndWindowId(!0),r=_({},e,{$current_url:t,timestamp:Date.now()});F(n)||(r.$session_id=n.sessionId,r.$window_id=n.windowId),this.M.metrics.push(r),this.M.metrics.length===this.allowedMetrics.length&&this.co()}else Ko.error(`Ignoring metric with value >= `+this.fo,e)},this.po=()=>{if(!this.js){var e,t,n,r,i=f.__PosthogExtensions__;F(i)||F(i.postHogWebVitalsCallbacks)||({onLCP:e,onCLS:t,onFCP:n,onINP:r}=i.postHogWebVitalsCallbacks),e&&t&&n&&r?(this.allowedMetrics.indexOf(`LCP`)>-1&&e(this.dt.bind(this)),this.allowedMetrics.indexOf(`CLS`)>-1&&t(this.dt.bind(this)),this.allowedMetrics.indexOf(`FCP`)>-1&&n(this.dt.bind(this)),this.allowedMetrics.indexOf(`INP`)>-1&&r(this.dt.bind(this)),this.js=!0):Ko.error(`web vitals callbacks not loaded - not starting`)}},this._instance=e,this.Js=!((t=this._instance.persistence)==null||!t.props[gn]),this.startIfEnabled()}get mo(){return this._instance.config.capture_performance}get allowedMetrics(){var e=P(this.mo)?this.mo?.web_vitals_allowed_metrics:void 0;return R(e)?this._instance.persistence?.props[yn]||[`CLS`,`FCP`,`INP`,`LCP`]:e}get flushToCaptureTimeoutMs(){return(P(this.mo)?this.mo.web_vitals_delayed_flush_ms:void 0)||5e3}get useAttribution(){var e=P(this.mo)?this.mo.web_vitals_attribution:void 0;return e!=null&&e}get fo(){var e=P(this.mo)&&z(this.mo.__web_vitals_max_value)?this.mo.__web_vitals_max_value:qo;return e>0&&6e4>=e?qo:e}get isEnabled(){var e=o?.protocol;if(e!==`http:`&&e!==`https:`)return Ko.info(`Web Vitals are disabled on non-http/https protocols`),!1;var t=P(this.mo)?this.mo.web_vitals:B(this.mo)?this.mo:void 0;return B(t)?t:this.Js}startIfEnabled(){this.isEnabled&&!this.js&&(Ko.info(`enabled, starting...`),this.lr(this.po))}onRemoteConfig(e){if(`capturePerformance`in e){var t=P(e.capturePerformance)&&!!e.capturePerformance.web_vitals,n=P(e.capturePerformance)?e.capturePerformance.web_vitals_allowed_metrics:void 0;this._instance.persistence&&(this._instance.persistence.register({[gn]:t}),this._instance.persistence.register({[yn]:n})),this.Js=t,this.startIfEnabled()}}lr(e){var t,n;(t=f.__PosthogExtensions__)!=null&&t.postHogWebVitalsCallbacks?e():(n=f.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,this.useAttribution?`web-vitals-with-attribution`:`web-vitals`,(t=>{t?Ko.error(`failed to load script`,t):e()}))}vo(){var e=n?n.location.href:void 0;if(e){var t=this._instance.config.custom_personal_data_properties;return Zr(e,this._instance.config.mask_personal_data_properties?[...ei,...t||[]]:[],ni)}Ko.error(`Could not determine current URL`)}}},Os={exceptionObserver:class{constructor(e){var t;this.po=()=>{var e;if(n&&this.isEnabled&&(e=f.__PosthogExtensions__)!=null&&e.errorWrappingFunctions){var t=f.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,r=f.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,i=f.__PosthogExtensions__.errorWrappingFunctions.wrapConsoleError;try{!this.yo&&this.qt.capture_unhandled_errors&&(this.yo=t(this.captureException.bind(this))),!this.bo&&this.qt.capture_unhandled_rejections&&(this.bo=r(this.captureException.bind(this))),!this._o&&this.qt.capture_console_errors&&(this._o=i(this.captureException.bind(this)))}catch(e){Uo.error(`failed to start`,e),this.wo()}}},this._instance=e,this.xo=!((t=this._instance.persistence)==null||!t.props[pn]),this.So=new ge({refillRate:this._instance.config.error_tracking.__exceptionRateLimiterRefillRate??1,bucketSize:this._instance.config.error_tracking.__exceptionRateLimiterBucketSize??10,refillInterval:1e4,Gt:Uo}),this.qt=this.ko(),this.startIfEnabledOrStop()}ko(){var e=this._instance.config.capture_exceptions,t={capture_unhandled_errors:!1,capture_unhandled_rejections:!1,capture_console_errors:!1};return P(e)?t=_({},t,e):(F(e)?this.xo:e)&&(t=_({},t,{capture_unhandled_errors:!0,capture_unhandled_rejections:!0})),t}get isEnabled(){return this.qt.capture_console_errors||this.qt.capture_unhandled_errors||this.qt.capture_unhandled_rejections}startIfEnabledOrStop(){this.isEnabled?(Uo.info(`enabled`),this.wo(),this.lr(this.po)):this.wo()}lr(e){var t,n;(t=f.__PosthogExtensions__)!=null&&t.errorWrappingFunctions&&e(),(n=f.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,`exception-autocapture`,(t=>{if(t)return Uo.error(`failed to load script`,t);e()}))}wo(){var e,t,n;(e=this.yo)==null||e.call(this),this.yo=void 0,(t=this.bo)==null||t.call(this),this.bo=void 0,(n=this._o)==null||n.call(this),this._o=void 0}onRemoteConfig(e){`autocaptureExceptions`in e&&(this.xo=!!e.autocaptureExceptions||!1,this._instance.persistence&&this._instance.persistence.register({[pn]:this.xo}),this.qt=this.ko(),this.startIfEnabledOrStop())}onConfigChange(){this.qt=this.ko()}captureException(e){var t,n,r=(e==null||(t=e.$exception_list)==null||(t=t[0])==null?void 0:t.type)??`Exception`;this.So.consumeRateLimit(r)?Uo.info(`Skipping exception capture because of client rate limiting.`,{exception:r}):(n=this._instance.exceptions)==null||n.sendExceptionEvent(e)}},exceptions:class{constructor(e){this.Co=[],this.Io=new Dt([new zt,new Yt,new Vt,new Bt,new qt,new Kt,new Ut,new Jt],function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r];return function(t,r){r===void 0&&(r=0);for(var i=[],a=t.split(`
|
|
2
|
+
`),o=r;a.length>o;o++){var s=a[o];if(1024>=s.length){var c=Rt.test(s)?s.replace(Rt,`$1`):s;if(!c.match(/\S*Error: /)){for(var l of n){var u=l(c,e);if(u){i.push(u);break}}if(i.length>=50)break}}}return function(e){if(!e.length)return[];var t=Array.from(e);return t.reverse(),t.slice(0,50).map((e=>{return _({},e,{filename:e.filename||(n=t,n[n.length-1]||{}).filename,function:e.function||Ot});var n}))}(i)}}(`web:javascript`,Pt,Lt)),this._instance=e,this.Co=this._instance.persistence?.get_property(mn)??[],this.To=en(this.Eo()),this.Mo=new tn(this.To)}onConfigChange(){this.To=en(this.Eo()),this.Mo.setConfig(this.To)}onRemoteConfig(e){if(`errorTracking`in e){var t=e.errorTracking?.suppressionRules??[],n=e.errorTracking?.captureExtensionExceptions;this.Co=t,this._instance.persistence&&this._instance.persistence.register({[mn]:this.Co,[hn]:n})}}get Ro(){var e,t=!!this._instance.get_property(hn);return(e=this._instance.config.error_tracking.captureExtensionExceptions??t)!=null&&e}buildProperties(e,t){return this.Io.buildFromUnknown(e,{syntheticException:t?.syntheticException,mechanism:{handled:t?.handled}})}addExceptionStep(e,t){if(this.To.enabled)try{if(!I(e)||e.trim().length===0)return void ys.warn(`Ignoring exception step because message must be a non-empty string`);var{sanitizedProperties:n,droppedKeys:r}=function(e){if(!e)return{sanitizedProperties:{},droppedKeys:[]};var t=[];return{sanitizedProperties:Object.keys(e).reduce(((n,r)=>Qt.has(r)?(t.push(r),n):(n[r]=e[r],n)),{}),droppedKeys:t}}(this.Po(t));r.length>0&&ys.warn(`Ignoring reserved exception step fields`,{droppedKeys:r}),this.Mo.add(_({[Xt]:e,[Zt]:new Date().toISOString()},n))}catch(e){ys.error(`Failed to add exception step. Ignoring breadcrumb.`,e)}}sendExceptionEvent(e){try{var t=e.$exception_list;if(this.Oo(t)){if(this.Lo(t))return this.Fo(`Exception dropped: matched a suppression rule`),void ys.info(`Skipping exception capture because a suppression rule matched`);if(!this.Ro&&this.Ao(t))return this.Fo(`Exception dropped: thrown by a browser extension`),void ys.info(`Skipping exception capture because it was thrown by an extension`);if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.No(t))return this.Fo(`Exception dropped: thrown by the PostHog SDK`),void ys.info(`Skipping exception capture because it was thrown by the PostHog SDK`)}var n=this.To.enabled&&R(e.$exception_steps)?this.Do(e):e;try{var r=this._instance.capture(`$exception`,n,{_noTruncate:!0,_batchKey:`exceptionEvent`,cn:!0});return r&&this.Mo.clear(),r}catch(e){ys.error(`Failed to capture exception event. Dropping this exception.`,e),this.Mo.clear();return}}catch(e){ys.error(`Failed to process exception event. Ignoring this exception.`,e);return}}Do(e){try{var t=this.Mo.getAttachable();return t.length===0?e:_({},e,{$exception_steps:t})}catch(t){return ys.error(`Failed to read buffered exception steps. Capturing exception without steps.`,t),e}}Fo(e){this.To.enabled&&this.Mo.add({[Xt]:e,[Zt]:new Date().toISOString()})}Po(e){return P(e)?_({},e):{}}Eo(){return this._instance.config.error_tracking?.exception_steps??{}}Lo(e){if(e.length===0)return!1;var t=e.reduce(((e,t)=>{var{type:n,value:r}=t;return I(n)&&n.length>0&&e.$exception_types.push(n),I(r)&&r.length>0&&e.$exception_values.push(r),e}),{$exception_types:[],$exception_values:[]});return this.Co.some((e=>{var n=e.values.map((e=>{var n=Oa[e.operator],r=M(e.value)?e.value:[e.value],i=t[e.key]??[];return r.length>0&&n(r,i)}));return e.type===`OR`?n.some(Boolean):n.every(Boolean)}))}Ao(e){return e.flatMap((e=>e.stacktrace?.frames??[])).some((e=>e.filename&&e.filename.startsWith(`chrome-extension://`)))}No(e){if(e.length>0){var t,n,r=e[0].stacktrace?.frames??[],i=r[r.length-1];return(t=i==null||(n=i.filename)==null?void 0:n.includes(`posthog.com/static`))!=null&&t}return!1}Oo(e){return!R(e)&&M(e)}}},ks=_({productTours:class{get ui(){return this._instance.persistence}constructor(e){this.$o=null,this.qo=null,this._instance=e}initialize(){this.loadIfEnabled()}onRemoteConfig(e){`productTours`in e&&(this.ui&&this.ui.register({[vn]:!!e.productTours}),this.loadIfEnabled())}loadIfEnabled(){var e,t;this.$o||(e=this._instance).config.disable_product_tours||(t=e.persistence)==null||!t.get_property(vn)||this.lr((()=>this.jo()))}lr(e){var t,n;(t=f.__PosthogExtensions__)!=null&&t.generateProductTours?e():(n=f.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,`product-tours`,(t=>{t?ns.error(`Could not load product tours script`,t):e()}))}jo(){var e;!this.$o&&(e=f.__PosthogExtensions__)!=null&&e.generateProductTours&&(this.$o=f.__PosthogExtensions__.generateProductTours(this._instance,!0))}getProductTours(e,t){if(t===void 0&&(t=!1),!M(this.qo)||t){var n=this.ui;if(n){var r=n.props[zn];if(M(r)&&!t)return this.qo=r,void e(r,{isLoaded:!0})}this._instance._send_request({url:this._instance.requestRouter.endpointFor(`api`,`/api/product_tours/?token=`+this._instance.config.token),method:`GET`,callback:t=>{var r=t.statusCode;if(r!==200||!t.json){var i=`Product Tours API could not be loaded, status: `+r;ns.error(i),e([],{isLoaded:!1,error:i});return}var a=M(t.json.product_tours)?t.json.product_tours:[];this.qo=a,n&&n.register({[zn]:a}),e(a,{isLoaded:!0})}})}else e(this.qo,{isLoaded:!0})}getActiveProductTours(e){R(this.$o)?e([],{isLoaded:!1,error:`Product tours not loaded`}):this.$o.getActiveProductTours(e)}showProductTour(e){var t;(t=this.$o)==null||t.showTourById(e)}previewTour(e){this.$o?this.$o.previewTour(e):this.lr((()=>{var t;this.jo(),(t=this.$o)==null||t.previewTour(e)}))}dismissProductTour(){var e;(e=this.$o)==null||e.dismissTour(`user_clicked_skip`)}nextStep(){var e;(e=this.$o)==null||e.nextStep()}previousStep(){var e;(e=this.$o)==null||e.previousStep()}clearCache(){var e;this.qo=null,(e=this.ui)==null||e.unregister(zn)}resetTour(e){var t;(t=this.$o)==null||t.resetTour(e)}resetAllTours(){var e;(e=this.$o)==null||e.resetAllTours()}cancelPendingTour(e){var t;(t=this.$o)==null||t.cancelPendingTour(e)}}},Ts),As={siteApps:class{constructor(e){this._instance=e,this.Ho=[],this.apps={}}get isEnabled(){return!!this._instance.config.opt_in_site_apps}Uo(e,t){if(t){var n=this.globalsForEvent(t);this.Ho.push(n),this.Ho.length>1e3&&(this.Ho=this.Ho.slice(10))}}get siteAppLoaders(){var e;return(e=f._POSTHOG_REMOTE_CONFIG)==null||(e=e[this._instance.config.token])==null?void 0:e.siteApps}initialize(){if(this.isEnabled){var e=this._instance._addCaptureHook(this.Uo.bind(this));this.Bo=()=>{e(),this.Ho=[],this.Bo=void 0}}}globalsForEvent(e){if(!e)throw Error(`Event payload is required`);var t={},n=this._instance.get_property(`$groups`)||[],r=this._instance.get_property(`$stored_group_properties`)||{};for(var[i,a]of Object.entries(r))t[i]={id:n[i],type:i,properties:a};var{$set_once:o,$set:s}=e;return{event:_({},v(e,rs),{properties:_({},e.properties,s?{$set:_({},e.properties?.$set??{},s)}:{},o?{$set_once:_({},e.properties?.$set_once??{},o)}:{}),elements_chain:e.properties?.$elements_chain??``,distinct_id:e.properties?.distinct_id}),person:{properties:this._instance.get_property(`$stored_person_properties`)},groups:t}}setupSiteApp(e){var t=this.apps[e.id],n=()=>{var n;!t.errored&&this.Ho.length&&(is.info(`Processing `+this.Ho.length+` events for site app with id `+e.id),this.Ho.forEach((e=>t.processEvent==null?void 0:t.processEvent(e))),t.processedBuffer=!0),Object.values(this.apps).every((e=>e.processedBuffer||e.errored))&&((n=this.Bo)==null||n.call(this))},r=!1,i=i=>{t.errored=!i,t.loaded=!0,is.info(`Site app with id `+e.id+` `+(i?`loaded`:`errored`)),r&&n()};try{var{processEvent:a}=e.init({posthog:this._instance,callback(e){i(e)}});a&&(t.processEvent=a),r=!0}catch(t){is.error(as+e.id,t),i(!1)}if(r&&t.loaded)try{n()}catch(n){is.error(`Error while processing buffered events PostHog app with config id `+e.id,n),t.errored=!0}}zo(){var e=this.siteAppLoaders||[];for(var t of e)this.apps[t.id]={id:t.id,loaded:!1,errored:!1,processedBuffer:!1};for(var n of e)this.setupSiteApp(n)}Vo(e){if(Object.keys(this.apps).length!==0){var t=this.globalsForEvent(e);for(var n of Object.values(this.apps))try{n.processEvent==null||n.processEvent(t)}catch(t){is.error(`Error while processing event `+e.event+` for site app `+n.id,t)}}}onRemoteConfig(e){var t,n,r,i=this;if((t=this.siteAppLoaders)!=null&&t.length)return this.isEnabled?(this.zo(),void this._instance.on(`eventCaptured`,(e=>this.Vo(e)))):void is.error(`PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.`);if((n=this.Bo)==null||n.call(this),(r=e.siteApps)!=null&&r.length)if(this.isEnabled){var a=function(e){var t;f[`__$$ph_site_app_`+e]=i._instance,(t=f.__PosthogExtensions__)==null||t.loadSiteApp==null||t.loadSiteApp(i._instance,s,(t=>{if(t)return is.error(as+e,t)}))};for(var{id:o,url:s}of e.siteApps)a(o)}else is.error(`PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.`)}}},js={tracingHeaders:class{constructor(e){this.Wo=void 0,this.Zo=void 0,this.Go=void 0,this.po=()=>{var e,t,n=this.Qo();n?(F(this.Wo)&&(this.Wo=(e=f.__PosthogExtensions__)==null||(e=e.tracingHeadersPatchFns)==null?void 0:e._patchXHR(n,(()=>this._instance.get_distinct_id()),this._instance.sessionManager)),F(this.Zo)&&(this.Zo=(t=f.__PosthogExtensions__)==null||(t=t.tracingHeadersPatchFns)==null?void 0:t._patchFetch(n,(()=>this._instance.get_distinct_id()),this._instance.sessionManager))):this.wo()},this._instance=e}initialize(){this.startIfEnabledOrStop()}lr(e){var t,n;(t=f.__PosthogExtensions__)!=null&&t.tracingHeadersPatchFns?e():(n=f.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,`tracing-headers`,(t=>{if(t)return Go.error(`failed to load script`,t);e()}))}Jo(){return this._instance.config.tracing_headers??this._instance.config.addTracingHeaders??this._instance.config.__add_tracing_headers}Qo(){var e=this.Jo();return M(e)?(M(this.Go)?this.Go.splice(0,this.Go.length,...e):this.Go=[...e],e.length>0?this.Go:void 0):(M(this.Go)&&this.Go.splice(0),this.Go=e||void 0,this.Go)}wo(){var e,t;(e=this.Wo)==null||e.call(this),(t=this.Zo)==null||t.call(this),this.Wo=void 0,this.Zo=void 0}startIfEnabledOrStop(){this.Qo()?this.lr(this.po):this.wo()}}},Ms=_({surveys:class{get qt(){return this._instance.config}constructor(e){this.Ko=void 0,this._surveyManager=null,this.Yo=!1,this.Xo=[],this.ea=null,this._instance=e,this._surveyEventReceiver=null}initialize(){this.loadIfEnabled()}onRemoteConfig(e){if(!this.qt.disable_surveys){var t=e.surveys;if(R(t))return Q.warn(`Flags not loaded yet. Not loading surveys.`);var n=M(t);this.Ko=n?t.length>0:t,Q.info(`flags response received, isSurveysEnabled: `+this.Ko),this.loadIfEnabled()}}reset(){localStorage.removeItem(`lastSeenSurveyDate`);for(var e=[],t=0;t<localStorage.length;t++){var n=localStorage.key(t);(n!=null&&n.startsWith(Fa)||n!=null&&n.startsWith(`inProgressSurvey_`))&&e.push(n)}e.forEach((e=>localStorage.removeItem(e)))}loadIfEnabled(){if(!this._surveyManager)if(this.Yo)Q.info(`Already initializing surveys, skipping...`);else if(this.qt.disable_surveys)Q.info(ds);else if(this.qt.cookieless_mode&&this._instance.consent.isOptedOut())Q.info(`Not loading surveys in cookieless mode without consent.`);else{var e=f?.__PosthogExtensions__;if(e){if(!F(this.Ko)||this.qt.advanced_enable_surveys){var t=this.Ko||this.qt.advanced_enable_surveys;this.Yo=!0;try{var n=e.generateSurveys;if(n)return void this.ta(n,t);var r=e.loadExternalDependency;if(!r)return void this.ra(nr);r(this._instance,`surveys`,(n=>{n||!e.generateSurveys?this.ra(`Could not load surveys script`,n):this.ta(e.generateSurveys,t)}))}catch(e){throw this.ra(`Error initializing surveys`,e),e}finally{this.Yo=!1}}}else Q.error(`PostHog Extensions not found.`)}}ta(e,t){this._surveyManager=e(this._instance,t),this._surveyEventReceiver=new ls(this._instance),Q.info(`Surveys loaded successfully`),this.ia({isLoaded:!0})}ra(e,t){Q.error(e,t),this.ia({isLoaded:!1,error:e})}onSurveysLoaded(e){return this.Xo.push(e),this._surveyManager&&this.ia({isLoaded:!0}),()=>{this.Xo=this.Xo.filter((t=>t!==e))}}getSurveys(e,t){if(t===void 0&&(t=!1),this.qt.disable_surveys)return Q.info(ds),e([]);var n,r=this._instance.get_property(Ln);if(r&&!t)return e(r,{isLoaded:!0});typeof Promise<`u`&&this.ea?this.ea.then((t=>{var{surveys:n,context:r}=t;return e(n,r)})):(typeof Promise<`u`&&(this.ea=new Promise((e=>{n=e}))),this._instance._send_request({url:this._instance.requestRouter.endpointFor(`api`,`/api/surveys/?token=`+this.qt.token),method:`GET`,timeout:this.qt.surveys_request_timeout_ms,callback:t=>{var r;this.ea=null;var i=t.statusCode;if(i!==200||!t.json){var a=`Surveys API could not be loaded, status: `+i;Q.error(a);var o={isLoaded:!1,error:a};e([],o),n?.({surveys:[],context:o});return}var s,c=t.json.surveys||[],l=c.filter((e=>function(e){return!(!e.start_date||e.end_date)}(e)&&(function(e){var t;return!((t=e.conditions)==null||(t=t.events)==null||(t=t.values)==null||!t.length)}(e)||function(e){var t;return!((t=e.conditions)==null||(t=t.actions)==null||(t=t.values)==null||!t.length)}(e))));l.length>0&&((s=this._surveyEventReceiver)==null||s.register(l)),(r=this._instance.persistence)==null||r.register({[Ln]:c});var u={isLoaded:!0};e(c,u),n?.({surveys:c,context:u})}}))}ia(e){for(var t of this.Xo)try{if(!e.isLoaded)return t([],e);this.getSurveys(t)}catch(e){Q.error(`Error in survey callback`,e)}}getActiveMatchingSurveys(e,t){if(t===void 0&&(t=!1),!R(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(e,t);Q.warn(`init was not called`)}na(e){var t=null;return this.getSurveys((n=>{t=n.find((t=>t.id===e))??null})),t}sa(e){if(R(this._surveyManager))return{eligible:!1,reason:us};var t=typeof e==`string`?this.na(e):e;return t?this._surveyManager.checkSurveyEligibility(t):{eligible:!1,reason:`Survey not found`}}canRenderSurvey(e){if(R(this._surveyManager))return Q.warn(`init was not called`),{visible:!1,disabledReason:us};var t=this.sa(e);return{visible:t.eligible,disabledReason:t.reason}}canRenderSurveyAsync(e,t){return R(this._surveyManager)?(Q.warn(`init was not called`),Promise.resolve({visible:!1,disabledReason:us})):new Promise((n=>{this.getSurveys((t=>{var r=t.find((t=>t.id===e))??null;if(r){var i=this.sa(r);n({visible:i.eligible,disabledReason:i.reason})}else n({visible:!1,disabledReason:`Survey not found`})}),t)}))}renderSurvey(e,t,n){var r;if(R(this._surveyManager))Q.warn(`init was not called`);else{var i=typeof e==`string`?this.na(e):e;if(i!=null&&i.id)if(Ia.includes(i.type)){var o=a?.querySelector(t);if(o)return(r=i.appearance)!=null&&r.surveyPopupDelaySeconds?(Q.info(`Rendering survey `+i.id+` with delay of `+i.appearance.surveyPopupDelaySeconds+` seconds`),void setTimeout((()=>{var e;Q.info(`Rendering survey `+i.id+` with delay of `+i.appearance?.surveyPopupDelaySeconds+` seconds`),(e=this._surveyManager)==null||e.renderSurvey(i,o,n),Q.info(`Survey `+i.id+` rendered`)}),1e3*i.appearance.surveyPopupDelaySeconds)):void this._surveyManager.renderSurvey(i,o,n);Q.warn(`Survey element not found`)}else Q.warn(`Surveys of type `+i.type+` cannot be rendered in the app`);else Q.warn(`Survey not found`)}}displaySurvey(e,t){var n;if(R(this._surveyManager))Q.warn(`init was not called`);else{var r=this.na(e);if(r){var i=r;if((n=r.appearance)!=null&&n.surveyPopupDelaySeconds&&t.ignoreDelay&&(i=_({},r,{appearance:_({},r.appearance,{surveyPopupDelaySeconds:0})})),t.displayType!==bi.Popover&&t.initialResponses&&Q.warn(`initialResponses is only supported for popover surveys. prefill will not be applied.`),!1===t.ignoreConditions){var a=this.canRenderSurvey(r);if(!a.visible)return void Q.warn(`Survey is not eligible to be displayed: `,a.disabledReason)}t.displayType===bi.Inline?this.renderSurvey(i,t.selector,t.properties):this._surveyManager.handlePopoverSurvey(i,t)}else Q.warn(`Survey not found`)}}cancelPendingSurvey(e){R(this._surveyManager)?Q.warn(`init was not called`):this._surveyManager.cancelSurvey(e)}handlePageUnload(){var e;(e=this._surveyManager)==null||e.handlePageUnload()}}},Ts),Ns={toolbar:class{constructor(e){this.instance=e}oa(e){f.ph_toolbar_state=e}aa(){return f.ph_toolbar_state??0}initialize(){return this.maybeLoadToolbar()}maybeLoadToolbar(e,t,r){if(e===void 0&&(e=void 0),t===void 0&&(t=void 0),r===void 0&&(r=void 0),xr(this.instance.config)||!n||!a)return!1;e??=n.location,r??=n.history;try{if(!t){try{n.localStorage.setItem(`test`,`test`),n.localStorage.removeItem(`test`)}catch{return!1}t=n?.localStorage}var i,o=fs||Qr(e.hash,`__posthog`)||Qr(e.hash,`state`),s=o?gr((()=>JSON.parse(atob(decodeURIComponent(o)))))||gr((()=>JSON.parse(decodeURIComponent(o)))):null;return s&&s.action===`ph_authorize`?((i=s).source=`url`,i&&Object.keys(i).length>0&&(s.desiredHash?e.hash=s.desiredHash:r?r.replaceState(r.state,``,e.pathname+e.search):e.hash=``)):((i=JSON.parse(t.getItem(ps)||`{}`)).source=`localstorage`,delete i.userIntent),!(!i.token||this.instance.config.token!==i.token||(this.loadToolbar(i),0))}catch{return!1}}ua(e){var t=f.ph_load_toolbar||f.ph_load_editor;!R(t)&&N(t)?t(e,this.instance):ms.warn(`No toolbar load function found`)}loadToolbar(e){var t=!(a==null||!a.getElementById(Zn));if(!n||t)return!1;var r=this.instance.requestRouter.region===`custom`&&this.instance.config.advanced_disable_toolbar_metrics,i=_({token:this.instance.config.token},e,{apiURL:this.instance.requestRouter.endpointFor(`ui`)},r?{instrument:!1}:{});if(n.localStorage.setItem(ps,JSON.stringify(_({},i,{source:void 0}))),this.aa()===2)this.ua(i);else if(this.aa()===0){var o;this.oa(1),(o=f.__PosthogExtensions__)==null||o.loadExternalDependency==null||o.loadExternalDependency(this.instance,`toolbar`,(e=>{if(e)return ms.error(`[Toolbar] Failed to load`,e),void this.oa(0);this.oa(2),this.ua(i)})),q(n,`turbolinks:load`,(()=>{this.oa(0),this.loadToolbar(i)}))}return!0}la(e){return this.loadToolbar(e)}maybeLoadEditor(e,t,n){return e===void 0&&(e=void 0),t===void 0&&(t=void 0),n===void 0&&(n=void 0),this.maybeLoadToolbar(e,t,n)}}},Ps=_({experiments:Ss},Ts),Fs=_({},Ts,Es,Ds,Os,ks,As,Ms,js,Ns,Ps,{conversations:class{constructor(e){this.ha=void 0,this._conversationsManager=null,this.ca=!1,this.da=null,this._instance=e}initialize(){this.loadIfEnabled()}onRemoteConfig(e){if(!this._instance.config.disable_conversations){var t=e.conversations;R(t)||(B(t)?this.ha=t:(this.ha=t.enabled,this.da=t),this.loadIfEnabled())}}reset(){var e;(e=this._conversationsManager)==null||e.reset(),this._conversationsManager=null,this.ha=void 0,this.da=null}loadIfEnabled(){if(!(this._conversationsManager||this.ca||this._instance.config.disable_conversations||xr(this._instance.config)||this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())){var e=f?.__PosthogExtensions__;if(e&&!F(this.ha)&&this.ha)if(this.da&&this.da.token){this.ca=!0;try{var t=e.initConversations;if(t)return this.va(t),void(this.ca=!1);var n=e.loadExternalDependency;if(!n)return void this.fa(nr);n(this._instance,`conversations`,(t=>{t||!e.initConversations?this.fa(`Could not load conversations script`,t):this.va(e.initConversations),this.ca=!1}))}catch(e){this.fa(`Error initializing conversations`,e),this.ca=!1}}else Cs.error(`Conversations enabled but missing token in remote config.`)}}va(e){if(this.da)try{this._conversationsManager=e(this.da,this._instance),Cs.info(`Conversations loaded successfully`)}catch(e){this.fa(`Error completing conversations initialization`,e)}else Cs.error(`Cannot complete initialization: remote config is null`)}fa(e,t){Cs.error(e,t),this._conversationsManager=null,this.ca=!1}show(){this._conversationsManager?this._conversationsManager.show():Cs.warn(`Conversations not loaded yet.`)}hide(){this._conversationsManager&&this._conversationsManager.hide()}isAvailable(){return!0===this.ha&&!L(this._conversationsManager)}isVisible(){var e;return(e=this._conversationsManager?.isVisible())!=null&&e}sendMessage(e,t,n){var r=this;return g((function*(){return r._conversationsManager?r._conversationsManager.sendMessage(e,t,n):(Cs.warn(ws),null)}))()}getMessages(e,t){var n=this;return g((function*(){return n._conversationsManager?n._conversationsManager.getMessages(e,t):(Cs.warn(ws),null)}))()}markAsRead(e){var t=this;return g((function*(){return t._conversationsManager?t._conversationsManager.markAsRead(e):(Cs.warn(ws),null)}))()}getTickets(e){var t=this;return g((function*(){return t._conversationsManager?t._conversationsManager.getTickets(e):(Cs.warn(ws),null)}))()}requestRestoreLink(e){var t=this;return g((function*(){return t._conversationsManager?t._conversationsManager.requestRestoreLink(e):(Cs.warn(ws),null)}))()}restoreFromToken(e){var t=this;return g((function*(){return t._conversationsManager?t._conversationsManager.restoreFromToken(e):(Cs.warn(ws),null)}))()}restoreFromUrlToken(){var e=this;return g((function*(){return e._conversationsManager?e._conversationsManager.restoreFromUrlToken():(Cs.warn(ws),null)}))()}getCurrentTicketId(){return this._conversationsManager?.getCurrentTicketId()??null}getWidgetSessionId(){return this._conversationsManager?.getWidgetSessionId()??null}yn(){var e;(e=this._conversationsManager)==null||e.setIdentity()}bn(){var e;(e=this._conversationsManager)==null||e.clearIdentity()}}},{logs:class{constructor(e){var t;this.pa=!1,this.ga=!1,this.Gt=W(`[logs]`),this.ma=[],this.ya=0,this.ba=0,this._a=!1,this._instance=e,this._instance&&(t=this._instance.config.logs)!=null&&t.captureConsoleLogs&&(this.pa=!0)}initialize(){this.loadIfEnabled()}onRemoteConfig(e){var t=e.logs?.captureConsoleLogs;!R(t)&&t&&(this.pa=!0,this.loadIfEnabled())}reset(){this.ma=[],this.Br&&=(clearTimeout(this.Br),void 0),this.ya=0,this.ba=0,this._a=!1}loadIfEnabled(){if(this.pa&&!this.ga){var e=f?.__PosthogExtensions__;if(e){var t=e.loadExternalDependency;t?t(this._instance,`logs`,(t=>{var n;t||(n=e.logs)==null||!n.initializeLogs?this.Gt.error(`Could not load logs script`,t):(e.logs.initializeLogs(this._instance),this.ga=!0)})):this.Gt.error(nr)}else this.Gt.error(`PostHog Extensions not found.`)}}captureLog(e){if(this._instance.is_capturing())if(e&&e.body){var t=this._instance.config.logs?.flushIntervalMs??3e3,n=this._instance.config.logs?.maxLogsPerInterval??1e3,r=Date.now();if(t>r-this.ba||(this.ba=r,this.ya=0,this._a=!1),n>this.ya){this.ya++;var i=function(e,t){var{text:n,number:r}=St[e.level||`info`]||Ct,i=String(Date.now())+`000000`,a={};t.distinctId&&(a.posthogDistinctId=t.distinctId),t.sessionId&&(a.sessionId=t.sessionId),t.currentUrl&&(a[`url.full`]=t.currentUrl),t.screenName&&(a[`screen.name`]=t.screenName),t.appState&&(a[`app.state`]=t.appState),t.activeFeatureFlags&&t.activeFeatureFlags.length>0&&(a.feature_flags=t.activeFeatureFlags);var o=_({},a,e.attributes||{}),s={timeUnixNano:i,observedTimeUnixNano:i,severityNumber:r,severityText:n,body:{stringValue:e.body},attributes:Tt(o)};return e.trace_id&&(s.traceId=e.trace_id),e.span_id&&(s.spanId=e.span_id),F(e.trace_flags)||(s.flags=e.trace_flags),s}(e,this.wa());this.ma.push({record:i}),(this._instance.config.logs?.maxBufferSize??100)>this.ma.length?this.xa():this.flushLogs()}else this._a||=(this.Gt.warn(`captureLog dropping logs: exceeded `+n+` logs per `+t+`ms`),!0)}else this.Gt.warn(`captureLog requires a body`)}get logger(){return this.Sa||={trace:(e,t)=>this.captureLog({body:e,level:`trace`,attributes:t}),debug:(e,t)=>this.captureLog({body:e,level:`debug`,attributes:t}),info:(e,t)=>this.captureLog({body:e,level:`info`,attributes:t}),warn:(e,t)=>this.captureLog({body:e,level:`warn`,attributes:t}),error:(e,t)=>this.captureLog({body:e,level:`error`,attributes:t}),fatal:(e,t)=>this.captureLog({body:e,level:`fatal`,attributes:t})},this.Sa}flushLogs(e){if(this.Br&&=(clearTimeout(this.Br),void 0),this.ma.length!==0){var t=this.ma;this.ma=[];var n=this._instance.config.logs,r=_({"service.name":n?.serviceName||`unknown_service`},n?.environment&&{"deployment.environment":n.environment},n?.serviceVersion&&{"service.version":n.serviceVersion},n?.resourceAttributes),i=function(e,t,n,r){return{resourceLogs:[{resource:{attributes:Tt(t)},scopeLogs:[{scope:{name:n,version:r},logRecords:e}]}]}}(t.map((e=>e.record)),r,m.LIB_NAME,m.LIB_VERSION),a=this._instance.requestRouter.endpointFor(`api`,`/i/v1/logs`)+`?token=`+encodeURIComponent(this._instance.config.token);this._instance.Yi({method:`POST`,url:a,data:i,compression:`best-available`,batchKey:`logs`,transport:e})}}xa(){this.Br||=setTimeout((()=>{this.Br=void 0,this.flushLogs()}),this._instance.config.logs?.flushIntervalMs??3e3)}wa(){var e,t={};if(t.distinctId=this._instance.get_distinct_id(),this._instance.sessionManager){var{sessionId:n}=this._instance.sessionManager.checkAndGetSessionAndWindowId(!0);t.sessionId=n}if(f!=null&&(e=f.location)!=null&&e.href&&(t.currentUrl=f.location.href),this._instance.featureFlags){var r=this._instance.featureFlags.getFlags();r&&r.length>0&&(t.activeFeatureFlags=r)}return t}}});to.__defaultExtensionClasses=_({},Fs);var Is=function(){m.SDK_DIST_CHANNEL=`npm`;var e=Ha[Ya]=new to;return function(){function e(){e.done||(e.done=!0,Xa=!1,G(Ha,(function(e){e._dom_loaded()})))}a!=null&&a.addEventListener?a.readyState===`complete`?e():q(a,`DOMContentLoaded`,e,{capture:!1}):n&&U.error("Browser doesn't support `document.addEventListener` so PostHog couldn't be initialized")}(),e}();export{t};
|