ghost 6.58.0 → 6.59.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/components/tryghost-adapter-base-scheduling-0.2.2.tgz +0 -0
- package/components/tryghost-adapter-base-sso-0.1.2.tgz +0 -0
- package/components/tryghost-i18n-0.0.0.tgz +0 -0
- package/components/tryghost-kg-default-nodes-2.2.0.tgz +0 -0
- package/components/tryghost-kg-html-to-lexical-1.4.0.tgz +0 -0
- package/components/tryghost-kg-lexical-html-renderer-1.5.0.tgz +0 -0
- package/content/themes/casper/.github/workflows/test.yml +11 -1
- package/content/themes/casper/AGENTS.md +25 -0
- package/content/themes/casper/assets/built/screen.css +1 -1
- package/content/themes/casper/assets/css/screen.css +15 -1
- package/content/themes/casper/gulpfile.js +3 -0
- package/content/themes/casper/package.json +8 -8
- package/content/themes/source/.gitattributes +5 -0
- package/content/themes/source/.github/workflows/test.yml +39 -0
- package/content/themes/source/AGENTS.md +25 -0
- package/content/themes/source/README.md +33 -4
- package/content/themes/source/assets/built/screen.css +1 -1
- package/content/themes/source/assets/css/screen.css +15 -0
- package/content/themes/source/gulpfile.js +6 -3
- package/content/themes/source/package.json +13 -10
- package/content/themes/source/pnpm-workspace.yaml +3 -0
- package/core/boot.js +11 -4
- package/core/built/admin/assets/Combination-BCm9FL4o.js +41 -0
- package/core/built/admin/assets/about-BdSCpjXG.js +1 -0
- package/core/built/admin/assets/account-migration-BpKAqo8k.js +1 -0
- package/core/built/admin/assets/activitypub/{account-migration-BpDeIF3G.js → account-migration-DVnYS1XG.js} +8 -8
- package/core/built/admin/assets/activitypub/activitypub.js +2 -2
- package/core/built/admin/assets/activitypub/{bluesky-sharing-aPMtrS3L.js → bluesky-sharing-DLVeE9ii.js} +31 -31
- package/core/built/admin/assets/activitypub/{content-formatters-BORfuA9G.js → content-formatters-DCsVic-t.js} +2 -2
- package/core/built/admin/assets/activitypub/{dist-ByFmDSNP2.js → dist-ByFmDSNP.js} +1 -1
- package/core/built/admin/assets/activitypub/{domain-CPdiB27_.js → domain-rrvDLfnK.js} +8 -8
- package/core/built/admin/assets/activitypub/{edit-profile-BY2PawIe.js → edit-profile-VT-piVxq.js} +23 -23
- package/core/built/admin/assets/activitypub/{explore-Sp9bgAwq.js → explore-DZg3m48P.js} +14 -14
- package/core/built/admin/assets/activitypub/{feed-BjtF4ohL.js → feed-BJqQvDMI.js} +41 -41
- package/core/built/admin/assets/activitypub/{field-BDOYVTg6.js → field-BezS4-1J.js} +2 -2
- package/core/built/admin/assets/activitypub/inbox-Uf0GVrI_.js +1284 -0
- package/core/built/admin/assets/activitypub/{label-1jhN-qhD.js → label-CZ6if4zK.js} +2 -2
- package/core/built/admin/assets/activitypub/layout-DNuYT4Gu.js +1 -0
- package/core/built/admin/assets/activitypub/moderation-CP6mDVky.js +340 -0
- package/core/built/admin/assets/activitypub/{note-nr_m_5yb.js → note-BlFkye2g.js} +16 -16
- package/core/built/admin/assets/activitypub/{notifications-BdcyivbT.js → notifications-GGTrGEdu.js} +163 -126
- package/core/built/admin/assets/activitypub/{preferences-CNqy1x9C.js → preferences-CjZXrZqr.js} +1550 -1551
- package/core/built/admin/assets/activitypub/{profile-DlY4rhbO.js → profile-CcXYxydm.js} +248 -248
- package/core/built/admin/assets/activitypub/{routes-CEHdEZzS.js → routes-nHCKlZl-.js} +1971 -1747
- package/core/built/admin/assets/activitypub/settings-pDzybcb3.js +315 -0
- package/core/built/admin/assets/activitypub/{site-CtBUCPBz.js → site-BZF0F8LN.js} +101 -101
- package/core/built/admin/assets/activitypub/{step-1-D9jGWyAy.js → step-1-C-Ns1Tfg.js} +3 -3
- package/core/built/admin/assets/activitypub/{step-3-KpUqpGWi.js → step-3-rDMNGmLg.js} +8 -8
- package/core/built/admin/assets/activitypub/{tabs-DvlsxTCI.js → tabs-CDjh3_Jp.js} +198 -198
- package/core/built/admin/assets/activitypub/{topic-filter-CIN1E2jg.js → topic-filter-CmTc8hpN.js} +2 -2
- package/core/built/admin/assets/activitypub/{use-activity-pub-queries-CATFd6YV.js → use-activity-pub-queries-DUDEdSdR.js} +286 -243
- package/core/built/admin/assets/activitypub/{use-reply-chain-data-DJ0vhA8V.js → use-reply-chain-data-TunGtmJl.js} +14 -14
- package/core/built/admin/assets/add-integration-modal-CXRQi1x0.js +1 -0
- package/core/built/admin/assets/add-newsletter-modal-t447KRYz.js +1 -0
- package/core/built/admin/assets/add-recommendation-modal-D882MdnR.js +1 -0
- package/core/built/admin/assets/{analytics-BC2oR8ay.js → analytics-Dj-WlzPf.js} +1 -1
- package/core/built/admin/assets/announcement-bar-modal-CwHKKw-a.js +1 -0
- package/core/built/admin/assets/api-keys-Boy5pLbD.js +1 -0
- package/core/built/admin/assets/audience-Cc40y7zQ.js +1 -0
- package/core/built/admin/assets/automations-DNLK5Udr.js +1 -0
- package/core/built/admin/assets/bluesky-sharing-Cm4aFaOl.js +1 -0
- package/core/built/admin/assets/breadcrumb-CcFr_ltt.js +1 -0
- package/core/built/admin/assets/button-BshWPHvn.js +1 -0
- package/core/built/admin/assets/chart-helpers-BsbzoWhK.js +1 -0
- package/core/built/admin/assets/{checkbox-LmClhqcS.js → checkbox-1G6KfK2q.js} +1 -1
- package/core/built/admin/assets/chunk-KS7C4IRE-DCsL4i4D.js +4 -0
- package/core/built/admin/assets/{chunk.408.1a258af360eb8d905508.js → chunk.301.5673a0caf7c49bb00212.js} +3 -3
- package/core/built/admin/assets/{chunk.524.4c693c3a00ac91df34fa.js → chunk.524.86db0d945468c852374b.js} +4 -4
- package/core/built/admin/assets/{chunk.582.20b600e329e58d12d7c2.js → chunk.582.c2f6216d3c4af303e236.js} +6 -6
- package/core/built/admin/assets/{code-editor-view-DqTOUnbM.js → code-editor-view-BVjtWyst.js} +1 -1
- package/core/built/admin/assets/{code-editor-view-bA0lfxUL.js → code-editor-view-y_zVfmCa.js} +1 -1
- package/core/built/admin/assets/color-picker-XEMPgNJE.js +3 -0
- package/core/built/admin/assets/{color-picker-field-Cv9GOJQZ.js → color-picker-field-BhplXcy5.js} +1 -1
- package/core/built/admin/assets/combobox-CRMJrvcQ.js +1 -0
- package/core/built/admin/assets/command-151T2eRx.js +1 -0
- package/core/built/admin/assets/comments-Bjbl9toF.js +1 -0
- package/core/built/admin/assets/confirmation-context-QmFxSjWy.js +1 -0
- package/core/built/admin/assets/{content-api-modal-BOFWRUkC.js → content-api-modal-CpeABXne.js} +1 -1
- package/core/built/admin/assets/{copy-field-8biQvNMD.js → copy-field-CglgRZyG.js} +1 -1
- package/core/built/admin/assets/custom-field-type-option-DSyJw4T4.js +1 -0
- package/core/built/admin/assets/custom-integration-modal-DWB9bRVp.js +1 -0
- package/core/built/admin/assets/date-range-select-kaKtab5O.js +1 -0
- package/core/built/admin/assets/design-and-theme-modal-86s2AaZ-.js +23 -0
- package/core/built/admin/assets/dirty-confirm-dialog-CTFdXXy7.js +1 -0
- package/core/built/admin/assets/disabled-sources-indicator-BFyCxUOx.js +1 -0
- package/core/built/admin/assets/dist-C1-Oy3Db.js +1 -0
- package/core/built/admin/assets/dist-CJJqYPep.js +1 -0
- package/core/built/admin/assets/dist-CNlMj7ML.js +1 -0
- package/core/built/admin/assets/dist-Kll2twSG.js +1 -0
- package/core/built/admin/assets/domain-BOoMvBG3.js +1 -0
- package/core/built/admin/assets/{dropzone-B21Entqz.js → dropzone-B6KWzsrb.js} +2 -2
- package/core/built/admin/assets/edit-profile-BagrYOrN.js +1 -0
- package/core/built/admin/assets/editor-AaJjqbpk.js +8 -0
- package/core/built/admin/assets/embed-signup-form-modal-B8L95KwR.js +8 -0
- package/core/built/admin/assets/explore-xbykZTlO.js +1 -0
- package/core/built/admin/assets/feed-BAHSipWv.js +1 -0
- package/core/built/admin/assets/{field-BQqLTgHM.js → field-kJYZ2T3C.js} +1 -1
- package/core/built/admin/assets/{filter-sources-FgqoUIL7.js → filter-sources-QeqFGNRB.js} +1 -1
- package/core/built/admin/assets/{filters-D0uIMD8n.js → filters-By5KQeV6.js} +1 -1
- package/core/built/admin/assets/filters-DtYpAkDd.js +1 -0
- package/core/built/admin/assets/first-promoter-modal-8A02oyjA.js +1 -0
- package/core/built/admin/assets/{ghost-ba408063a5922b458b4a8f216cf23251.js → ghost-f110822e67868c9fdf9a6c23754b2559.js} +9 -8
- package/core/built/admin/assets/gift-link-modal-DbYCyuhF.js +1 -0
- package/core/built/admin/assets/global-data-context-gAMDH9u1.js +1 -0
- package/core/built/admin/assets/growth-BSOxJGey.js +3 -0
- package/core/built/admin/assets/growth-BZTjURq5.js +1 -0
- package/core/built/admin/assets/history-modal-CCgWtlZE.js +1 -0
- package/core/built/admin/assets/html-field-BQC7XyLA.js +1 -0
- package/core/built/admin/assets/iframe-buffering-DnOlWTD4.js +1 -0
- package/core/built/admin/assets/{images-3cQgwfTD.js → images-D5UKr2SG.js} +1 -1
- package/core/built/admin/assets/{inbox-Dz_JblyJ.js → inbox-DvN15_YH.js} +45 -39
- package/core/built/admin/assets/index-BJz9Zlsc.js +67 -0
- package/core/built/admin/assets/index-Dg8cdR8E.css +1 -0
- package/core/built/admin/assets/{input-group-DpogNUIt.js → input-group-BPAxETpQ.js} +1 -1
- package/core/built/admin/assets/invite-user-modal-jcUaaNkW.js +1 -0
- package/core/built/admin/assets/{koenig-lexical-2KuqRwZI.js → koenig-lexical-CfXTYeli.js} +1 -1
- package/core/built/admin/assets/koenig-loader-DktFM3Uh.js +1 -0
- package/core/built/admin/assets/{kpi-card-Ck3tT2Wg.js → kpi-card-fUHZlzBX.js} +1 -1
- package/core/built/admin/assets/{kpi-card-DDIxptaS.js → kpi-card-o0urVtNL.js} +1 -1
- package/core/built/admin/assets/kpi-helpers-2FTF4a3-.js +1 -0
- package/core/built/admin/assets/kpi-tabs-B8-_k2dQ.js +1 -0
- package/core/built/admin/assets/{label-DodDsMzn.js → label-CiRS3i_f.js} +1 -1
- package/core/built/admin/assets/label-picker-ao7tuPaK.js +1 -0
- package/core/built/admin/assets/layout-DC6QGDaw.js +1 -0
- package/core/built/admin/assets/member-custom-fields-BW756-EV.js +1 -0
- package/core/built/admin/assets/member-detail-CGGgUTSl.js +1 -0
- package/core/built/admin/assets/members-ZcPthwG0.js +11 -0
- package/core/built/admin/assets/moderation-24bElWs3.js +1 -0
- package/core/built/admin/assets/multi-select-combobox-CZPrgz-Z.js +1 -0
- package/core/built/admin/assets/navigation-modal-BiTP4U_J.js +1 -0
- package/core/built/admin/assets/newsletter-B3Ihwizp.js +1 -0
- package/core/built/admin/assets/newsletter-detail-modal-CYsu4qhl.js +1 -0
- package/core/built/admin/assets/newsletter-emails-CDPR4-SP.js +1 -0
- package/core/built/admin/assets/newsletters-bJiYLJWl.js +1 -0
- package/core/built/admin/assets/note-7f6urVVA.js +1 -0
- package/core/built/admin/assets/notifications-rosQCyXH.js +1 -0
- package/core/built/admin/assets/offers-container-modal-J2j6NpDL.js +1 -0
- package/core/built/admin/assets/onboarding-route-DTjcThKl.js +1 -0
- package/core/built/admin/assets/overview-BxvWzGaf.js +1 -0
- package/core/built/admin/assets/overview-D6JG0hkZ.js +1 -0
- package/core/built/admin/assets/{page-header-VLPJfj_d.js → page-header-l7vXmLIw.js} +1 -1
- package/core/built/admin/assets/pintura-modal-BGHmudVB.js +1 -0
- package/core/built/admin/assets/portal-frame-DVc4VHX_.js +1 -0
- package/core/built/admin/assets/portal-modal-BCOcdiRi.js +1 -0
- package/core/built/admin/assets/{post-analytics-Gv81eN_g.js → post-analytics-CTSZMK6I.js} +1 -1
- package/core/built/admin/assets/post-analytics-header-Dt4RQGq0.js +1 -0
- package/core/built/admin/assets/{post-analytics-provider-O2YjZMhN.js → post-analytics-provider-C4ydiboO.js} +1 -1
- package/core/built/admin/assets/post-share-modal-DjH_a_1L.js +1 -0
- package/core/built/admin/assets/preferences-BLo6VJUS.js +5 -0
- package/core/built/admin/assets/preview-modal-BOgjgsJL.js +1 -0
- package/core/built/admin/assets/profile-DG6iCdRH.js +1 -0
- package/core/built/admin/assets/radio-group-ChHD4EQJ.js +1 -0
- package/core/built/admin/assets/router-provider-Bexg1t-V.js +1 -0
- package/core/built/admin/assets/select-ChxknEcT.js +1 -0
- package/core/built/admin/assets/settings-B0VDAhgV.js +1 -0
- package/core/built/admin/assets/settings-Dwo3CeAD.js +4 -0
- package/core/built/admin/assets/settings-breadcrumbs-sLDNedBW.js +1 -0
- package/core/built/admin/assets/share-modal-BDb2nacg.js +1 -0
- package/core/built/admin/assets/skeleton-D7hwjdry.js +1 -0
- package/core/built/admin/assets/slack-modal-CwNAD69x.js +1 -0
- package/core/built/admin/assets/sort-button-DhqpxkrO.js +1 -0
- package/core/built/admin/assets/source-icon-BPsD5ees.js +1 -0
- package/core/built/admin/assets/stats-WdDJ8c_1.js +1 -0
- package/core/built/admin/assets/stats-view-J3PI2eT_.js +1 -0
- package/core/built/admin/assets/step-1-2q1SjerQ.js +1 -0
- package/core/built/admin/assets/step-2-D5mJB3Uu.js +1 -0
- package/core/built/admin/assets/step-3-BpAuYTGZ.js +2 -0
- package/core/built/admin/assets/{stripe-button-Bh4p6Wud.js → stripe-button-DDoUKN5a.js} +1 -1
- package/core/built/admin/assets/stripe-connect-modal-pMdF3t4S.js +1 -0
- package/core/built/admin/assets/switch-B_1yU3Aw.js +1 -0
- package/core/built/admin/assets/{table-DghJxZMH.js → table-CrqQtkR2.js} +1 -1
- package/core/built/admin/assets/tabs-BhzVdh5p.js +1 -0
- package/core/built/admin/assets/tag-detail-CwJhI4qg.js +2 -0
- package/core/built/admin/assets/tags-CvJ0PgrB.js +1 -0
- package/core/built/admin/assets/testimonials-modal-CV82IAnI.js +1 -0
- package/core/built/admin/assets/tier-detail-modal-pLzCOfeg.js +1 -0
- package/core/built/admin/assets/toggle-group-BW_T4yn6.js +1 -0
- package/core/built/admin/assets/topic-filter-DkXjDejV.js +1 -0
- package/core/built/admin/assets/transistor-modal-TMRvHZ6B.js +1 -0
- package/core/built/admin/assets/unsplash-modal-CV92RdPw.js +1 -0
- package/core/built/admin/assets/{use-analytics-data-IxJcSjc9.js → use-analytics-data-BM_uV9SU.js} +1 -1
- package/core/built/admin/assets/use-check-theme-limit-error-DkBnXMSY.js +1 -0
- package/core/built/admin/assets/use-confirm-unload-SzlkOIpm.js +1 -0
- package/core/built/admin/assets/use-feature-flag-cahOlMva.js +1 -0
- package/core/built/admin/assets/use-filter-params-BX5qf0Cg.js +1 -0
- package/core/built/admin/assets/{use-growth-stats-1NW-8eEZ.js → use-growth-stats-D0LlWBe6.js} +1 -1
- package/core/built/admin/assets/{use-hash-link-navigation-guard-B9j6HIrV.js → use-hash-link-navigation-guard-B_Y3FhYH.js} +1 -1
- package/core/built/admin/assets/use-limiter-D3DHSoAj.js +2 -0
- package/core/built/admin/assets/{use-pintura-config-BjFChXV1.js → use-pintura-config-D63Xu0SG.js} +1 -1
- package/core/built/admin/assets/use-pintura-editor-Z51aFnC8.js +1 -0
- package/core/built/admin/assets/{use-post-referrers-Dp1BnTAK.js → use-post-referrers-Cvymr3gt.js} +1 -1
- package/core/built/admin/assets/use-query-params-BfzuqbcD.js +1 -0
- package/core/built/admin/assets/use-reply-chain-data-Dc18Ujqo.js +1 -0
- package/core/built/admin/assets/use-setting-group-DYRIzqC0.js +1 -0
- package/core/built/admin/assets/use-settings-navigation-aDSLtmEl.js +1 -0
- package/core/built/admin/assets/{use-simple-pagination-DsEGSJhe.js → use-simple-pagination-B2TdNX67.js} +1 -1
- package/core/built/admin/assets/{use-tinybird-query-Ci_DiPkX.js → use-tinybird-query-BvQIVuRc.js} +1 -1
- package/core/built/admin/assets/{use-tinybird-token-CsUwc722.js → use-tinybird-token-COQTPIwL.js} +1 -1
- package/core/built/admin/assets/use-upgrade-route-BZf1g59m.js +1 -0
- package/core/built/admin/assets/{use-url-input-BEZJpVgN.js → use-url-input-PcqZadXa.js} +1 -1
- package/core/built/admin/assets/user-detail-modal-DeO3SAZq.js +1 -0
- package/core/built/admin/assets/{virtual-list-D5ugXyZY.js → virtual-list-D3MfPNOh.js} +1 -1
- package/core/built/admin/assets/web-CDdyG7z1.js +2 -0
- package/core/built/admin/assets/web-CwQ8_QUc.js +1 -0
- package/core/built/admin/assets/zapier-modal-a7t75iNI.js +1 -0
- package/core/built/admin/index.html +15 -12
- package/core/frontend/apps/private-blogging/lib/helpers/input_password.js +2 -1
- package/core/frontend/helpers/body_class.js +2 -1
- package/core/frontend/helpers/cancel_link.js +2 -1
- package/core/frontend/helpers/color_to_rgba.js +2 -1
- package/core/frontend/helpers/content_api_key.js +2 -1
- package/core/frontend/helpers/content_api_url.js +2 -1
- package/core/frontend/helpers/contrast_text_color.js +2 -1
- package/core/frontend/helpers/facebook_url.js +2 -1
- package/core/frontend/helpers/ghost_foot.js +2 -1
- package/core/frontend/helpers/ghost_head.js +2 -1
- package/core/frontend/helpers/has.js +4 -2
- package/core/frontend/helpers/link_class.js +2 -1
- package/core/frontend/helpers/meta_description.js +2 -1
- package/core/frontend/helpers/meta_title.js +2 -1
- package/core/frontend/helpers/navigation.js +113 -22
- package/core/frontend/helpers/page_url.js +2 -1
- package/core/frontend/helpers/post_class.js +2 -1
- package/core/frontend/helpers/reading_time.js +2 -1
- package/core/frontend/helpers/social_accounts.js +2 -1
- package/core/frontend/helpers/social_url.js +2 -1
- package/core/frontend/helpers/total_members.js +2 -1
- package/core/frontend/helpers/total_paid_members.js +2 -1
- package/core/frontend/helpers/tpl/navigation.hbs +1 -1
- package/core/frontend/helpers/twitter_url.js +2 -1
- package/core/frontend/public/cards.manifest.json +1 -1
- package/core/server/api/endpoints/posts.js +7 -4
- package/core/server/api/endpoints/utils/permissions.js +2 -1
- package/core/server/api/endpoints/utils/validators/input/settings.js +83 -1
- package/core/server/data/exporter/table-lists.js +1 -0
- package/core/server/data/importer/handlers/json.js +2 -1
- package/core/server/data/migrations/versions/5.19/2022-09-02-20-52-backfill-new-product-columns.js +2 -1
- package/core/server/data/migrations/versions/5.21/2022-10-26-04-50-member-subscription-created-batch-id.js +4 -2
- package/core/server/data/migrations/versions/5.22/2022-10-31-12-03-backfill-new-product-columns.js +2 -1
- package/core/server/data/migrations/versions/6.58/2026-08-11-21-22-48-rename-email-batches-provider-id.js +1 -1
- package/core/server/data/migrations/versions/6.59/2026-08-18-17-06-46-add-gift-delivery-fields-to-gifts.js +26 -0
- package/core/server/data/migrations/versions/6.59/2026-08-18-17-07-01-add-gift-deliveries.js +20 -0
- package/core/server/data/schema/commands.js +48 -24
- package/core/server/data/schema/schema.js +28 -7
- package/core/server/data/seeders/importers/automation-action-revisions-importer.js +3 -36
- package/core/server/data/seeders/importers/automation-actions-importer.js +5 -41
- package/core/server/data/seeders/importers/automation-run-steps-importer.js +3 -36
- package/core/server/data/seeders/importers/automation-runs-importer.js +7 -42
- package/core/server/data/seeders/importers/automations-importer.js +3 -36
- package/core/server/data/seeders/importers/comment-reports-importer.js +5 -5
- package/core/server/data/seeders/importers/comments-importer.js +5 -5
- package/core/server/data/seeders/importers/email-batches-importer.js +5 -4
- package/core/server/data/seeders/importers/email-recipients-importer.js +12 -20
- package/core/server/data/seeders/importers/emails-importer.js +6 -6
- package/core/server/data/seeders/importers/labels-importer.js +3 -3
- package/core/server/data/seeders/importers/members-click-events-importer.js +5 -5
- package/core/server/data/seeders/importers/members-created-events-importer.js +13 -12
- package/core/server/data/seeders/importers/members-feedback-importer.js +7 -7
- package/core/server/data/seeders/importers/members-importer.js +4 -4
- package/core/server/data/seeders/importers/members-login-events-importer.js +3 -3
- package/core/server/data/seeders/importers/members-products-importer.js +2 -2
- package/core/server/data/seeders/importers/members-status-events-importer.js +4 -3
- package/core/server/data/seeders/importers/members-stripe-customers-importer.js +2 -2
- package/core/server/data/seeders/importers/members-stripe-customers-subscriptions-importer.js +7 -7
- package/core/server/data/seeders/importers/members-subscribe-events-importer.js +3 -3
- package/core/server/data/seeders/importers/members-subscription-created-events-importer.js +3 -3
- package/core/server/data/seeders/importers/offer-redemptions-importer.js +7 -7
- package/core/server/data/seeders/importers/offers-importer.js +3 -3
- package/core/server/data/seeders/importers/posts-importer.js +4 -4
- package/core/server/data/seeders/importers/table-importer.js +2 -35
- package/core/server/data/seeders/importers/tags-importer.js +2 -2
- package/core/server/data/seeders/importers/users-importer.js +2 -2
- package/core/server/data/seeders/importers/web-mentions-importer.js +2 -2
- package/core/server/data/seeders/utils/random.js +7 -0
- package/core/server/ghost-server.js +19 -5
- package/core/server/lib/db-date.js +72 -3
- package/core/server/models/gift-delivery.js +23 -0
- package/core/server/models/gift.js +9 -0
- package/core/server/models/index.js +3 -2
- package/core/server/models/settings.js +43 -4
- package/core/server/services/automations/database-automations-repository.js +38 -31
- package/core/server/services/automations/poll.js +1 -1
- package/core/server/services/content-import/csv/index.js +8 -0
- package/core/server/services/content-import/csv/parse.js +60 -0
- package/core/server/services/content-import/import/importer.js +222 -0
- package/core/server/services/content-import/import/post-data.js +52 -0
- package/core/server/services/content-import/import/reader.js +15 -0
- package/core/server/services/content-import/import/row.js +50 -0
- package/core/server/services/content-import/import/store.js +71 -0
- package/core/server/services/content-import/index.js +67 -0
- package/core/server/services/email-analytics/automation-email-analytics-batch-processor.js +1 -1
- package/core/server/services/email-analytics/index.js +3 -1
- package/core/server/services/email-analytics/jobs/index.js +2 -2
- package/core/server/services/email-service/email-service-wrapper.js +1 -1
- package/core/server/services/email-suppression-list/email-suppression-list.js +4 -2
- package/core/server/services/gifts/CONTEXT.md +27 -3
- package/core/server/services/gifts/README.md +8 -4
- package/core/server/services/gifts/constants.js +2 -1
- package/core/server/services/gifts/email-templates/gift-delivery.hbs +20 -0
- package/core/server/services/gifts/email-templates/gift-delivery.js +39 -0
- package/core/server/services/gifts/email-templates/gift-purchase-confirmation.hbs +2 -2
- package/core/server/services/gifts/email-templates/gift-purchase-confirmation.js +19 -4
- package/core/server/services/gifts/events/send-gift-delivery-event.js +15 -0
- package/core/server/services/gifts/gift-bookshelf-repository.js +23 -3
- package/core/server/services/gifts/gift-checkout-adapter.js +5 -3
- package/core/server/services/gifts/gift-codec.js +8 -0
- package/core/server/services/gifts/gift-delivery-bookshelf-repository.js +107 -0
- package/core/server/services/gifts/gift-delivery-codec.js +12 -0
- package/core/server/services/gifts/gift-delivery-schema.js +15 -0
- package/core/server/services/gifts/gift-delivery-service.js +209 -0
- package/core/server/services/gifts/gift-email-renderer.js +13 -1
- package/core/server/services/gifts/gift-email-service.js +97 -17
- package/core/server/services/gifts/gift-schema.js +10 -6
- package/core/server/services/gifts/gift-service.js +259 -34
- package/core/server/services/gifts/gift.js +59 -5
- package/core/server/services/gifts/index.js +69 -3
- package/core/server/services/lib/mailgun-client.js +5 -2
- package/core/server/services/mail/ghost-mailer.js +9 -1
- package/core/server/services/member-welcome-emails/service.js +6 -1
- package/core/server/services/members/members-api/controllers/router-controller.js +26 -8
- package/core/server/services/stripe/services/webhook/checkout-session-event-service.js +100 -12
- package/core/server/services/stripe/stripe-api.js +3 -2
- package/core/server/services/stripe/webhook-controller.js +6 -3
- package/core/server/services/stripe/webhook-manager.js +2 -0
- package/core/shared/labs.js +1 -0
- package/package.json +9 -8
- package/pnpm-lock.yaml +26 -11
- package/pnpm-workspace.yaml +5 -6
- package/content/themes/source/yarn.lock +0 -6232
- package/core/built/admin/assets/Combination-BDvCdg1t.js +0 -41
- package/core/built/admin/assets/about-B_BvSyLF.js +0 -1
- package/core/built/admin/assets/account-migration-oJUGxnzT.js +0 -1
- package/core/built/admin/assets/activitypub/dist-Dqggkccr.js +0 -215
- package/core/built/admin/assets/activitypub/inbox-z1o2j1Tb.js +0 -1221
- package/core/built/admin/assets/activitypub/layout-BRMezuty.js +0 -1
- package/core/built/admin/assets/activitypub/moderation-CZudJi8N.js +0 -160
- package/core/built/admin/assets/activitypub/settings-CrSV1cux.js +0 -107
- package/core/built/admin/assets/add-integration-modal-BW23PDYs.js +0 -1
- package/core/built/admin/assets/add-newsletter-modal-M0ls8BKO.js +0 -1
- package/core/built/admin/assets/add-recommendation-modal-B0NeBMzl.js +0 -1
- package/core/built/admin/assets/announcement-bar-modal-pXBqjQE_.js +0 -1
- package/core/built/admin/assets/api-keys-Df6uv1dT.js +0 -1
- package/core/built/admin/assets/audience-BY8od8If.js +0 -1
- package/core/built/admin/assets/automations-DCs6Wady.js +0 -1
- package/core/built/admin/assets/bluesky-sharing-D0P42Cws.js +0 -1
- package/core/built/admin/assets/breadcrumb-MTj_cKLb.js +0 -1
- package/core/built/admin/assets/chart-helpers-DcO3k_vA.js +0 -1
- package/core/built/admin/assets/chunk-KS7C4IRE-DG9HTHQ3.js +0 -4
- package/core/built/admin/assets/color-picker-CBlJMv3y.js +0 -3
- package/core/built/admin/assets/combobox-BbPJzjCp.js +0 -1
- package/core/built/admin/assets/command-BrhXIlDr.js +0 -1
- package/core/built/admin/assets/comments-Cu4rD1aJ.js +0 -1
- package/core/built/admin/assets/confirmation-provider-BEdrnHns.js +0 -1
- package/core/built/admin/assets/custom-field-type-option-CNhAgHbJ.js +0 -1
- package/core/built/admin/assets/custom-integration-modal-CrGOI8IB.js +0 -1
- package/core/built/admin/assets/date-range-select-Bsh4gIek.js +0 -1
- package/core/built/admin/assets/design-and-theme-modal-DWZguwWX.js +0 -23
- package/core/built/admin/assets/dirty-confirm-dialog-DmdMpgyN.js +0 -1
- package/core/built/admin/assets/disabled-sources-indicator-BLnmyWgt.js +0 -1
- package/core/built/admin/assets/dist-DMFGvqqU.js +0 -1
- package/core/built/admin/assets/dist-DlCyLrOC.js +0 -1
- package/core/built/admin/assets/dist-j1xxxnY8.js +0 -1
- package/core/built/admin/assets/domain-Dp9TRrFp.js +0 -1
- package/core/built/admin/assets/edit-profile-DG6lpMsr.js +0 -1
- package/core/built/admin/assets/editor-CPQOrhrn.js +0 -8
- package/core/built/admin/assets/embed-signup-form-modal-CgWniDha.js +0 -9
- package/core/built/admin/assets/explore-C3rzONJv.js +0 -1
- package/core/built/admin/assets/feed-DpUwS1cU.js +0 -1
- package/core/built/admin/assets/filters-DZJT29GW.js +0 -1
- package/core/built/admin/assets/first-promoter-modal-DJhQQheG.js +0 -1
- package/core/built/admin/assets/gift-link-modal-sdFLjND9.js +0 -1
- package/core/built/admin/assets/global-data-provider-CixmTX00.js +0 -1
- package/core/built/admin/assets/growth-0YYkBEeS.js +0 -1
- package/core/built/admin/assets/growth-DpjAPeQT.js +0 -3
- package/core/built/admin/assets/history-modal-BWJ4-cJ0.js +0 -1
- package/core/built/admin/assets/html-field-C-oa5DEl.js +0 -1
- package/core/built/admin/assets/iframe-buffering-Ba9sDpi2.js +0 -1
- package/core/built/admin/assets/index-BOJzlYiz.js +0 -67
- package/core/built/admin/assets/index-Bid6LAyc.css +0 -1
- package/core/built/admin/assets/invite-user-modal-DCiQSiuD.js +0 -1
- package/core/built/admin/assets/koenig-editor-base-BApy8Q7C.js +0 -1
- package/core/built/admin/assets/kpi-helpers-ssbuy-hD.js +0 -1
- package/core/built/admin/assets/kpi-tabs-BqoIM6bI.js +0 -1
- package/core/built/admin/assets/label-picker-Cvvbmzb5.js +0 -1
- package/core/built/admin/assets/layout-DkkGyev2.js +0 -1
- package/core/built/admin/assets/member-custom-fields-CvGcpaiW.js +0 -1
- package/core/built/admin/assets/member-detail-CMCMZ47_.js +0 -1
- package/core/built/admin/assets/members-sRl6fNfq.js +0 -11
- package/core/built/admin/assets/moderation-KhKwGqI1.js +0 -1
- package/core/built/admin/assets/multi-select-combobox-nhCff0_K.js +0 -1
- package/core/built/admin/assets/navigation-modal-MDJExWDJ.js +0 -1
- package/core/built/admin/assets/newsletter-BIBHumfV.js +0 -1
- package/core/built/admin/assets/newsletter-detail-modal-CfjBMH3v.js +0 -1
- package/core/built/admin/assets/newsletter-emails-ClDL-7dA.js +0 -1
- package/core/built/admin/assets/newsletters-CBe-IPzK.js +0 -1
- package/core/built/admin/assets/note-HnNUOt4d.js +0 -1
- package/core/built/admin/assets/notifications-Cj5e-258.js +0 -1
- package/core/built/admin/assets/offers-container-modal-BHwHtixC.js +0 -1
- package/core/built/admin/assets/onboarding-route-D_4jp7Nq.js +0 -1
- package/core/built/admin/assets/overview-CezDdg-F.js +0 -1
- package/core/built/admin/assets/overview-D5mM51Lj.js +0 -1
- package/core/built/admin/assets/pintura-modal-BXXJ8Iaa.js +0 -1
- package/core/built/admin/assets/portal-frame-BLCvF8f-.js +0 -1
- package/core/built/admin/assets/portal-modal-DN80tAcy.js +0 -1
- package/core/built/admin/assets/post-analytics-header-_ydSY8qO.js +0 -1
- package/core/built/admin/assets/post-share-modal-CzYak_a5.js +0 -1
- package/core/built/admin/assets/preferences-gneLb6LV.js +0 -5
- package/core/built/admin/assets/preview-modal-Bkq-tgVm.js +0 -1
- package/core/built/admin/assets/profile-CzXmCNTC.js +0 -1
- package/core/built/admin/assets/radio-group-Dsq5ZEbV.js +0 -1
- package/core/built/admin/assets/router-provider-CkB_ArLF.js +0 -1
- package/core/built/admin/assets/select-xuZAuDyS.js +0 -1
- package/core/built/admin/assets/settings-Ct8pabhr.js +0 -1
- package/core/built/admin/assets/settings-KSWWQanQ.js +0 -4
- package/core/built/admin/assets/settings-breadcrumbs-DbPGu-Tu.js +0 -1
- package/core/built/admin/assets/share-modal-CdiUx9WM.js +0 -1
- package/core/built/admin/assets/slack-modal-BP--Z3jE.js +0 -1
- package/core/built/admin/assets/sort-button-CjfKdlsL.js +0 -1
- package/core/built/admin/assets/source-icon-DHj1h6Ts.js +0 -1
- package/core/built/admin/assets/stats-C615kulJ.js +0 -1
- package/core/built/admin/assets/stats-view-BSMRdYiN.js +0 -1
- package/core/built/admin/assets/step-1-pSdGYtIF.js +0 -1
- package/core/built/admin/assets/step-2-T9Uy4eBD.js +0 -1
- package/core/built/admin/assets/step-3-D4uXe_XG.js +0 -2
- package/core/built/admin/assets/stripe-connect-modal-C2vTvepi.js +0 -1
- package/core/built/admin/assets/switch-CE2NuMn-.js +0 -1
- package/core/built/admin/assets/tabs-l9c7FjzI.js +0 -1
- package/core/built/admin/assets/tag-detail-DBw_M2-p.js +0 -2
- package/core/built/admin/assets/tags-DoWsAG6l.js +0 -1
- package/core/built/admin/assets/testimonials-modal-BZKePE2T.js +0 -1
- package/core/built/admin/assets/tier-detail-modal-D65pVWsN.js +0 -1
- package/core/built/admin/assets/toggle-group-uJnl42w3.js +0 -1
- package/core/built/admin/assets/topic-filter-BM7hz0kW.js +0 -1
- package/core/built/admin/assets/transistor-modal-VZOGN3od.js +0 -1
- package/core/built/admin/assets/unsplash-modal-CKGfACxF.js +0 -1
- package/core/built/admin/assets/use-check-theme-limit-error-CGp3CGT5.js +0 -1
- package/core/built/admin/assets/use-feature-flag-CSq2Lwzt.js +0 -1
- package/core/built/admin/assets/use-filter-params-0hcJJuEJ.js +0 -1
- package/core/built/admin/assets/use-limiter-ffwpsZPp.js +0 -2
- package/core/built/admin/assets/use-pintura-editor-Cb41oJyL.js +0 -1
- package/core/built/admin/assets/use-query-params-DHhhu8wi.js +0 -1
- package/core/built/admin/assets/use-reply-chain-data-C0ZUTkfk.js +0 -1
- package/core/built/admin/assets/use-setting-group-Bx8M6FL2.js +0 -1
- package/core/built/admin/assets/use-settings-navigation-BOZcat_V.js +0 -1
- package/core/built/admin/assets/use-upgrade-route-B3_DUiuT.js +0 -1
- package/core/built/admin/assets/user-detail-modal-595z1N5r.js +0 -1
- package/core/built/admin/assets/web-CAta3lRE.js +0 -1
- package/core/built/admin/assets/web-Ds9_wWJK.js +0 -2
- package/core/built/admin/assets/zapier-modal-CcfDZY53.js +0 -1
- package/core/server/data/seeders/utils/database-date.js +0 -28
- package/core/server/services/automations/database-date.js +0 -59
- /package/core/built/admin/assets/{dist-CqO2lWS02.js → dist-CqO2lWS0.js} +0 -0
- /package/core/server/services/{automations → lib}/mailgun-message-id.js +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{d as r,u as i}from"./Combination-BCm9FL4o.js";import{a,c as o}from"./dist-Cb5RSHSg.js";import{mt as s,t as c}from"./button-BshWPHvn.js";import{r as l}from"./dist-CQJY6SVY.js";import{t as u}from"./dist-CqO2lWS0.js";import{n as d,t as f}from"./dist-B2PvRwLn.js";import{t as p}from"./dist-myQaY0ka.js";import{t as m}from"./dist-JLOy8o0Q.js";import{c as h,i as g,n as _,o as v,s as y,t as b}from"./select-ChxknEcT.js";import{mr as x}from"./index-BJz9Zlsc.js";var S=e(t(),1),C=n(),w={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};for(let e in w)Object.freeze(w[e]);var T=Object.freeze(w),E=Object.create(null);for(let e in T)Object.hasOwn(T,e)&&(E[T[e]]=e);var D={to:{},get:{}};D.get=function(e){let t=e.slice(0,3).toLowerCase(),n,r;switch(t){case`hsl`:n=D.get.hsl(e),r=`hsl`;break;case`hwb`:n=D.get.hwb(e),r=`hwb`;break;default:n=D.get.rgb(e),r=`rgb`;break}return n?{model:r,value:n}:null},D.get.rgb=function(e){if(!e)return null;let t=/^#([a-f\d]{3,4})$/i,n=/^#([a-f\d]{6})([a-f\d]{2})?$/i,r=/^rgba?\(\s*([+-]?(?:\d*\.)?\d+(?:e\d+)?)(?=[\s,])\s*(?:,\s*)?([+-]?(?:\d*\.)?\d+(?:e\d+)?)(?=[\s,])\s*(?:,\s*)?([+-]?(?:\d*\.)?\d+(?:e\d+)?)\s*(?:[\s,|/]\s*([+-]?(?:\d*\.)?\d+(?:e\d+)?)(%?)\s*)?\)$/i,i=/^rgba?\(\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[\s,|/]\s*([+-]?[\d.]+)(%?)\s*)?\)$/i,a=/^(\w+)$/,o=[0,0,0,1],s,c,l;if(s=e.match(n)){for(l=s[2],s=s[1],c=0;c<3;c++){let e=c*2;o[c]=Number.parseInt(s.slice(e,e+2),16)}l&&(o[3]=Number.parseInt(l,16)/255)}else if(s=e.match(t)){for(s=s[1],l=s[3],c=0;c<3;c++)o[c]=Number.parseInt(s[c]+s[c],16);l&&(o[3]=Number.parseInt(l+l,16)/255)}else if(s=e.match(r)){for(c=0;c<3;c++)o[c]=Number.parseFloat(s[c+1]);s[4]&&(o[3]=s[5]?Number.parseFloat(s[4])*.01:Number.parseFloat(s[4]))}else if(s=e.match(i)){for(c=0;c<3;c++)o[c]=Math.round(Number.parseFloat(s[c+1])*2.55);s[4]&&(o[3]=s[5]?Number.parseFloat(s[4])*.01:Number.parseFloat(s[4]))}else if(s=e.toLowerCase().match(a))return s[1]===`transparent`?[0,0,0,0]:Object.hasOwn(T,s[1])?(o=T[s[1]].slice(),o[3]=1,o):null;else return null;for(c=0;c<3;c++)o[c]=O(o[c],0,255);return o[3]=O(o[3],0,1),o},D.get.hsl=function(e){if(!e)return null;let t=e.match(/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[,|/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:e[+-]?\d+)?)\s*)?\)$/i);if(t){let e=Number.parseFloat(t[4]);return[(Number.parseFloat(t[1])%360+360)%360,O(Number.parseFloat(t[2]),0,100),O(Number.parseFloat(t[3]),0,100),O(Number.isNaN(e)?1:e,0,1)]}return null},D.get.hwb=function(e){if(!e)return null;let t=e.match(/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*[\s,]\s*([+-]?[\d.]+)%\s*[\s,]\s*([+-]?[\d.]+)%\s*(?:[\s,]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:e[+-]?\d+)?)\s*)?\)$/i);if(t){let e=Number.parseFloat(t[4]);return[(Number.parseFloat(t[1])%360+360)%360,O(Number.parseFloat(t[2]),0,100),O(Number.parseFloat(t[3]),0,100),O(Number.isNaN(e)?1:e,0,1)]}return null},D.to.hex=function(...e){return`#`+k(e[0])+k(e[1])+k(e[2])+(e[3]<1?k(Math.round(e[3]*255)):``)},D.to.rgb=function(...e){return e.length<4||e[3]===1?`rgb(`+Math.round(e[0])+`, `+Math.round(e[1])+`, `+Math.round(e[2])+`)`:`rgba(`+Math.round(e[0])+`, `+Math.round(e[1])+`, `+Math.round(e[2])+`, `+e[3]+`)`},D.to.rgb.percent=function(...e){let t=Math.round(e[0]/255*100),n=Math.round(e[1]/255*100),r=Math.round(e[2]/255*100);return e.length<4||e[3]===1?`rgb(`+t+`%, `+n+`%, `+r+`%)`:`rgba(`+t+`%, `+n+`%, `+r+`%, `+e[3]+`)`},D.to.hsl=function(...e){return e.length<4||e[3]===1?`hsl(`+e[0]+`, `+e[1]+`%, `+e[2]+`%)`:`hsla(`+e[0]+`, `+e[1]+`%, `+e[2]+`%, `+e[3]+`)`},D.to.hwb=function(...e){let t=``;return e.length>=4&&e[3]!==1&&(t=`, `+e[3]),`hwb(`+e[0]+`, `+e[1]+`%, `+e[2]+`%`+t+`)`},D.to.keyword=function(...e){return E[e.slice(0,3)]};function O(e,t,n){return Math.min(Math.max(t,e),n)}function k(e){let t=Math.round(e).toString(16).toUpperCase();return t.length<2?`0`+t:t}var A={};for(let e of Object.keys(T))A[T[e]]=e;var j={rgb:{channels:3,labels:`rgb`},hsl:{channels:3,labels:`hsl`},hsv:{channels:3,labels:`hsv`},hwb:{channels:3,labels:`hwb`},cmyk:{channels:4,labels:`cmyk`},xyz:{channels:3,labels:`xyz`},lab:{channels:3,labels:`lab`},oklab:{channels:3,labels:[`okl`,`oka`,`okb`]},lch:{channels:3,labels:`lch`},oklch:{channels:3,labels:[`okl`,`okc`,`okh`]},hex:{channels:1,labels:[`hex`]},keyword:{channels:1,labels:[`keyword`]},ansi16:{channels:1,labels:[`ansi16`]},ansi256:{channels:1,labels:[`ansi256`]},hcg:{channels:3,labels:[`h`,`c`,`g`]},apple:{channels:3,labels:[`r16`,`g16`,`b16`]},gray:{channels:1,labels:[`gray`]}},M=(6/29)**3;function N(e){let t=e>.0031308?1.055*e**(1/2.4)-.055:e*12.92;return Math.min(Math.max(0,t),1)}function P(e){return e>.04045?((e+.055)/1.055)**2.4:e/12.92}for(let e of Object.keys(j)){if(!(`channels`in j[e]))throw Error(`missing channels property: `+e);if(!(`labels`in j[e]))throw Error(`missing channel labels property: `+e);if(j[e].labels.length!==j[e].channels)throw Error(`channel and label counts mismatch: `+e);let{channels:t,labels:n}=j[e];delete j[e].channels,delete j[e].labels,Object.defineProperty(j[e],"channels",{value:t}),Object.defineProperty(j[e],"labels",{value:n})}j.rgb.hsl=function(e){let t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=a-i,s,c;switch(a){case i:s=0;break;case t:s=(n-r)/o;break;case n:s=2+(r-t)/o;break;case r:s=4+(t-n)/o;break}s=Math.min(s*60,360),s<0&&(s+=360);let l=(i+a)/2;return c=a===i?0:l<=.5?o/(a+i):o/(2-a-i),[s,c*100,l*100]},j.rgb.hsv=function(e){let t,n,r,i,a,o=e[0]/255,s=e[1]/255,c=e[2]/255,l=Math.max(o,s,c),u=l-Math.min(o,s,c),d=function(e){return(l-e)/6/u+1/2};if(u===0)i=0,a=0;else{switch(a=u/l,t=d(o),n=d(s),r=d(c),l){case o:i=r-n;break;case s:i=1/3+t-r;break;case c:i=2/3+n-t;break}i<0?i+=1:i>1&&--i}return[i*360,a*100,l*100]},j.rgb.hwb=function(e){let t=e[0],n=e[1],r=e[2],i=j.rgb.hsl(e)[0],a=1/255*Math.min(t,Math.min(n,r));return r=1-1/255*Math.max(t,Math.max(n,r)),[i,a*100,r*100]},j.rgb.oklab=function(e){let t=P(e[0]/255),n=P(e[1]/255),r=P(e[2]/255),i=Math.cbrt(.4122214708*t+.5363325363*n+.0514459929*r),a=Math.cbrt(.2119034982*t+.6806995451*n+.1073969566*r),o=Math.cbrt(.0883024619*t+.2817188376*n+.6299787005*r),s=.2104542553*i+.793617785*a-.0040720468*o,c=1.9779984951*i-2.428592205*a+.4505937099*o,l=.0259040371*i+.7827717662*a-.808675766*o;return[s*100,c*100,l*100]},j.rgb.cmyk=function(e){let t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.min(1-t,1-n,1-r),a=(1-t-i)/(1-i)||0,o=(1-n-i)/(1-i)||0,s=(1-r-i)/(1-i)||0;return[a*100,o*100,s*100,i*100]};function ee(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}j.rgb.keyword=function(e){let t=A[e];if(t)return t;let n=1/0,r;for(let t of Object.keys(T)){let i=T[t],a=ee(e,i);a<n&&(n=a,r=t)}return r},j.keyword.rgb=function(e){return[...T[e]]},j.rgb.xyz=function(e){let t=P(e[0]/255),n=P(e[1]/255),r=P(e[2]/255),i=t*.4124564+n*.3575761+r*.1804375,a=t*.2126729+n*.7151522+r*.072175,o=t*.0193339+n*.119192+r*.9503041;return[i*100,a*100,o*100]},j.rgb.lab=function(e){let t=j.rgb.xyz(e),n=t[0],r=t[1],i=t[2];return n/=95.047,r/=100,i/=108.883,n=n>M?n**(1/3):7.787*n+16/116,r=r>M?r**(1/3):7.787*r+16/116,i=i>M?i**(1/3):7.787*i+16/116,[116*r-16,500*(n-r),200*(r-i)]},j.hsl.rgb=function(e){let t=e[0]/360,n=e[1]/100,r=e[2]/100,i,a;if(n===0)return a=r*255,[a,a,a];let o=r<.5?r*(1+n):r+n-r*n,s=2*r-o,c=[0,0,0];for(let e=0;e<3;e++)i=t+1/3*-(e-1),i<0&&i++,i>1&&i--,a=6*i<1?s+(o-s)*6*i:2*i<1?o:3*i<2?s+(o-s)*(2/3-i)*6:s,c[e]=a*255;return c},j.hsl.hsv=function(e){let t=e[0],n=e[1]/100,r=e[2]/100,i=n,a=Math.max(r,.01);r*=2,n*=r<=1?r:2-r,i*=a<=1?a:2-a;let o=(r+n)/2;return[t,(r===0?2*i/(a+i):2*n/(r+n))*100,o*100]},j.hsv.rgb=function(e){let t=e[0]/60,n=e[1]/100,r=e[2]/100,i=Math.floor(t)%6,a=t-Math.floor(t),o=255*r*(1-n),s=255*r*(1-n*a),c=255*r*(1-n*(1-a));switch(r*=255,i){case 0:return[r,c,o];case 1:return[s,r,o];case 2:return[o,r,c];case 3:return[o,s,r];case 4:return[c,o,r];case 5:return[r,o,s]}},j.hsv.hsl=function(e){let t=e[0],n=e[1]/100,r=e[2]/100,i=Math.max(r,.01),a,o;o=(2-n)*r;let s=(2-n)*i;return a=n*i,a/=s<=1?s:2-s,a||=0,o/=2,[t,a*100,o*100]},j.hwb.rgb=function(e){let t=e[0]/360,n=e[1]/100,r=e[2]/100,i=n+r,a;i>1&&(n/=i,r/=i);let o=Math.floor(6*t),s=1-r;a=6*t-o,o&1&&(a=1-a);let c=n+a*(s-n),l,u,d;switch(o){default:case 6:case 0:l=s,u=c,d=n;break;case 1:l=c,u=s,d=n;break;case 2:l=n,u=s,d=c;break;case 3:l=n,u=c,d=s;break;case 4:l=c,u=n,d=s;break;case 5:l=s,u=n,d=c;break}return[l*255,u*255,d*255]},j.cmyk.rgb=function(e){let t=e[0]/100,n=e[1]/100,r=e[2]/100,i=e[3]/100,a=1-Math.min(1,t*(1-i)+i),o=1-Math.min(1,n*(1-i)+i),s=1-Math.min(1,r*(1-i)+i);return[a*255,o*255,s*255]},j.xyz.rgb=function(e){let t=e[0]/100,n=e[1]/100,r=e[2]/100,i,a,o;return i=t*3.2404542+n*-1.5371385+r*-.4985314,a=t*-.969266+n*1.8760108+r*.041556,o=t*.0556434+n*-.2040259+r*1.0572252,i=N(i),a=N(a),o=N(o),[i*255,a*255,o*255]},j.xyz.lab=function(e){let t=e[0],n=e[1],r=e[2];return t/=95.047,n/=100,r/=108.883,t=t>M?t**(1/3):7.787*t+16/116,n=n>M?n**(1/3):7.787*n+16/116,r=r>M?r**(1/3):7.787*r+16/116,[116*n-16,500*(t-n),200*(n-r)]},j.xyz.oklab=function(e){let t=e[0]/100,n=e[1]/100,r=e[2]/100,i=Math.cbrt(.8189330101*t+.3618667424*n-.1288597137*r),a=Math.cbrt(.0329845436*t+.9293118715*n+.0361456387*r),o=Math.cbrt(.0482003018*t+.2643662691*n+.633851707*r),s=.2104542553*i+.793617785*a-.0040720468*o,c=1.9779984951*i-2.428592205*a+.4505937099*o,l=.0259040371*i+.7827717662*a-.808675766*o;return[s*100,c*100,l*100]},j.oklab.oklch=function(e){return j.lab.lch(e)},j.oklab.xyz=function(e){let t=e[0]/100,n=e[1]/100,r=e[2]/100,i=(.999999998*t+.396337792*n+.215803758*r)**3,a=(1.000000008*t-.105561342*n-.063854175*r)**3,o=(1.000000055*t-.089484182*n-1.291485538*r)**3,s=1.227013851*i-.55779998*a+.281256149*o,c=-.040580178*i+1.11225687*a-.071676679*o,l=-.076381285*i-.421481978*a+1.58616322*o;return[s*100,c*100,l*100]},j.oklab.rgb=function(e){let t=e[0]/100,n=e[1]/100,r=e[2]/100,i=(t+.3963377774*n+.2158037573*r)**3,a=(t-.1055613458*n-.0638541728*r)**3,o=(t-.0894841775*n-1.291485548*r)**3,s=N(4.0767416621*i-3.3077115913*a+.2309699292*o),c=N(-1.2684380046*i+2.6097574011*a-.3413193965*o),l=N(-.0041960863*i-.7034186147*a+1.707614701*o);return[s*255,c*255,l*255]},j.oklch.oklab=function(e){return j.lch.lab(e)},j.lab.xyz=function(e){let t=e[0],n=e[1],r=e[2],i,a,o;a=(t+16)/116,i=n/500+a,o=a-r/200;let s=a**3,c=i**3,l=o**3;return a=s>M?s:(a-16/116)/7.787,i=c>M?c:(i-16/116)/7.787,o=l>M?l:(o-16/116)/7.787,i*=95.047,a*=100,o*=108.883,[i,a,o]},j.lab.lch=function(e){let t=e[0],n=e[1],r=e[2],i;return i=Math.atan2(r,n)*360/2/Math.PI,i<0&&(i+=360),[t,Math.sqrt(n*n+r*r),i]},j.lch.lab=function(e){let t=e[0],n=e[1],r=e[2]/360*2*Math.PI;return[t,n*Math.cos(r),n*Math.sin(r)]},j.rgb.ansi16=function(e,t=null){let[n,r,i]=e,a=t===null?j.rgb.hsv(e)[2]:t;if(a=Math.round(a/50),a===0)return 30;let o=30+(Math.round(i/255)<<2|Math.round(r/255)<<1|Math.round(n/255));return a===2&&(o+=60),o},j.hsv.ansi16=function(e){return j.rgb.ansi16(j.hsv.rgb(e),e[2])},j.rgb.ansi256=function(e){let t=e[0],n=e[1],r=e[2];return t>>4==n>>4&&n>>4==r>>4?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},j.ansi16.rgb=function(e){e=e[0];let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let n=(Math.trunc(e>50)+1)*.5;return[(t&1)*n*255,(t>>1&1)*n*255,(t>>2&1)*n*255]},j.ansi256.rgb=function(e){if(e=e[0],e>=232){let t=(e-232)*10+8;return[t,t,t]}e-=16;let t;return[Math.floor(e/36)/5*255,Math.floor((t=e%36)/6)/5*255,t%6/5*255]},j.rgb.hex=function(e){let t=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return`000000`.slice(t.length)+t},j.hex.rgb=function(e){let t=e.toString(16).match(/[a-f\d]{6}|[a-f\d]{3}/i);if(!t)return[0,0,0];let n=t[0];t[0].length===3&&(n=[...n].map(e=>e+e).join(``));let r=Number.parseInt(n,16);return[r>>16&255,r>>8&255,r&255]},j.rgb.hcg=function(e){let t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.max(Math.max(t,n),r),a=Math.min(Math.min(t,n),r),o=i-a,s,c=o<1?a/(1-o):0;return s=o<=0?0:i===t?(n-r)/o%6:i===n?2+(r-t)/o:4+(t-n)/o,s/=6,s%=1,[s*360,o*100,c*100]},j.hsl.hcg=function(e){let t=e[1]/100,n=e[2]/100,r=n<.5?2*t*n:2*t*(1-n),i=0;return r<1&&(i=(n-.5*r)/(1-r)),[e[0],r*100,i*100]},j.hsv.hcg=function(e){let t=e[1]/100,n=e[2]/100,r=t*n,i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],r*100,i*100]},j.hcg.rgb=function(e){let t=e[0]/360,n=e[1]/100,r=e[2]/100;if(n===0)return[r*255,r*255,r*255];let i=[0,0,0],a=t%1*6,o=a%1,s=1-o,c=0;switch(Math.floor(a)){case 0:i[0]=1,i[1]=o,i[2]=0;break;case 1:i[0]=s,i[1]=1,i[2]=0;break;case 2:i[0]=0,i[1]=1,i[2]=o;break;case 3:i[0]=0,i[1]=s,i[2]=1;break;case 4:i[0]=o,i[1]=0,i[2]=1;break;default:i[0]=1,i[1]=0,i[2]=s}return c=(1-n)*r,[(n*i[0]+c)*255,(n*i[1]+c)*255,(n*i[2]+c)*255]},j.hcg.hsv=function(e){let t=e[1]/100,n=t+e[2]/100*(1-t),r=0;return n>0&&(r=t/n),[e[0],r*100,n*100]},j.hcg.hsl=function(e){let t=e[1]/100,n=e[2]/100*(1-t)+.5*t,r=0;return n>0&&n<.5?r=t/(2*n):n>=.5&&n<1&&(r=t/(2*(1-n))),[e[0],r*100,n*100]},j.hcg.hwb=function(e){let t=e[1]/100,n=t+e[2]/100*(1-t);return[e[0],(n-t)*100,(1-n)*100]},j.hwb.hcg=function(e){let t=e[1]/100,n=1-e[2]/100,r=n-t,i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],r*100,i*100]},j.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},j.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},j.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},j.gray.hsl=function(e){return[0,0,e[0]]},j.gray.hsv=j.gray.hsl,j.gray.hwb=function(e){return[0,100,e[0]]},j.gray.cmyk=function(e){return[0,0,0,e[0]]},j.gray.lab=function(e){return[e[0],0,0]},j.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return`000000`.slice(n.length)+n},j.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]};function te(){let e={},t=Object.keys(j);for(let{length:n}=t,r=0;r<n;r++)e[t[r]]={distance:-1,parent:null};return e}function ne(e){let t=te(),n=[e];for(t[e].distance=0;n.length>0;){let e=n.pop(),r=Object.keys(j[e]);for(let{length:i}=r,a=0;a<i;a++){let i=r[a],o=t[i];o.distance===-1&&(o.distance=t[e].distance+1,o.parent=e,n.unshift(i))}}return t}function re(e,t){return function(n){return t(e(n))}}function ie(e,t){let n=[t[e].parent,e],r=j[t[e].parent][e],i=t[e].parent;for(;t[i].parent;)n.unshift(t[i].parent),r=re(j[t[i].parent][i],r),i=t[i].parent;return r.conversion=n,r}function ae(e){let t=ne(e),n={},r=Object.keys(t);for(let{length:e}=r,i=0;i<e;i++){let e=r[i];t[e].parent!==null&&(n[e]=ie(e,t))}return n}var F={},oe=Object.keys(j);function se(e){let t=function(...t){let n=t[0];return n==null?n:(n.length>1&&(t=n),e(t))};return`conversion`in e&&(t.conversion=e.conversion),t}function ce(e){let t=function(...t){let n=t[0];if(n==null)return n;n.length>1&&(t=n);let r=e(t);if(typeof r==`object`)for(let{length:e}=r,t=0;t<e;t++)r[t]=Math.round(r[t]);return r};return`conversion`in e&&(t.conversion=e.conversion),t}for(let e of oe){F[e]={},Object.defineProperty(F[e],"channels",{value:j[e].channels}),Object.defineProperty(F[e],"labels",{value:j[e].labels});let t=ae(e),n=Object.keys(t);for(let r of n){let n=t[r];F[e][r]=ce(n),F[e][r].raw=se(n)}}var I=[`keyword`,`gray`,`hex`],L={};for(let e of Object.keys(F))L[[...F[e].labels].sort().join(``)]=e;var R={};function z(e,t){if(!(this instanceof z))return new z(e,t);if(t&&t in I&&(t=null),t&&!(t in F))throw Error(`Unknown model: `+t);let n,r;if(e==null)this.model=`rgb`,this.color=[0,0,0],this.valpha=1;else if(e instanceof z)this.model=e.model,this.color=[...e.color],this.valpha=e.valpha;else if(typeof e==`string`){let t=D.get(e);if(t===null)throw Error(`Unable to parse color from string: `+e);this.model=t.model,r=F[this.model].channels,this.color=t.value.slice(0,r),this.valpha=typeof t.value[r]==`number`?t.value[r]:1}else if(e.length>0){this.model=t||`rgb`,r=F[this.model].channels;let n=Array.prototype.slice.call(e,0,r);this.color=H(n,r),this.valpha=typeof e[r]==`number`?e[r]:1}else if(typeof e==`number`)this.model=`rgb`,this.color=[e>>16&255,e>>8&255,e&255],this.valpha=1;else{this.valpha=1;let t=Object.keys(e);`alpha`in e&&(t.splice(t.indexOf(`alpha`),1),this.valpha=typeof e.alpha==`number`?e.alpha:0);let r=t.sort().join(``);if(!(r in L))throw Error(`Unable to parse color from object: `+JSON.stringify(e));this.model=L[r];let{labels:i}=F[this.model],a=[];for(n=0;n<i.length;n++)a.push(e[i[n]]);this.color=H(a)}if(R[this.model])for(r=F[this.model].channels,n=0;n<r;n++){let e=R[this.model][n];e&&(this.color[n]=e(this.color[n]))}this.valpha=Math.max(0,Math.min(1,this.valpha)),Object.freeze&&Object.freeze(this)}z.prototype={toString(){return this.string()},toJSON(){return this[this.model]()},string(e){let t=this.model in D.to?this:this.rgb();t=t.round(typeof e==`number`?e:1);let n=t.valpha===1?t.color:[...t.color,this.valpha];return D.to[t.model](...n)},percentString(e){let t=this.rgb().round(typeof e==`number`?e:1),n=t.valpha===1?t.color:[...t.color,this.valpha];return D.to.rgb.percent(...n)},array(){return this.valpha===1?[...this.color]:[...this.color,this.valpha]},object(){let e={},{channels:t}=F[this.model],{labels:n}=F[this.model];for(let r=0;r<t;r++)e[n[r]]=this.color[r];return this.valpha!==1&&(e.alpha=this.valpha),e},unitArray(){let e=this.rgb().color;return e[0]/=255,e[1]/=255,e[2]/=255,this.valpha!==1&&e.push(this.valpha),e},unitObject(){let e=this.rgb().object();return e.r/=255,e.g/=255,e.b/=255,this.valpha!==1&&(e.alpha=this.valpha),e},round(e){return e=Math.max(e||0,0),new z([...this.color.map(ue(e)),this.valpha],this.model)},alpha(e){return e===void 0?this.valpha:new z([...this.color,Math.max(0,Math.min(1,e))],this.model)},red:B(`rgb`,0,V(255)),green:B(`rgb`,1,V(255)),blue:B(`rgb`,2,V(255)),hue:B([`hsl`,`hsv`,`hsl`,`hwb`,`hcg`],0,e=>(e%360+360)%360),saturationl:B(`hsl`,1,V(100)),lightness:B(`hsl`,2,V(100)),saturationv:B(`hsv`,1,V(100)),value:B(`hsv`,2,V(100)),chroma:B(`hcg`,1,V(100)),gray:B(`hcg`,2,V(100)),white:B(`hwb`,1,V(100)),wblack:B(`hwb`,2,V(100)),cyan:B(`cmyk`,0,V(100)),magenta:B(`cmyk`,1,V(100)),yellow:B(`cmyk`,2,V(100)),black:B(`cmyk`,3,V(100)),x:B(`xyz`,0,V(95.047)),y:B(`xyz`,1,V(100)),z:B(`xyz`,2,V(108.833)),l:B(`lab`,0,V(100)),a:B(`lab`,1),b:B(`lab`,2),keyword(e){return e===void 0?F[this.model].keyword(this.color):new z(e)},hex(e){return e===void 0?D.to.hex(...this.rgb().round().color):new z(e)},hexa(e){if(e!==void 0)return new z(e);let t=this.rgb().round().color,n=Math.round(this.valpha*255).toString(16).toUpperCase();return n.length===1&&(n=`0`+n),D.to.hex(...t)+n},rgbNumber(){let e=this.rgb().color;return(e[0]&255)<<16|(e[1]&255)<<8|e[2]&255},luminosity(){let e=this.rgb().color,t=[];for(let[n,r]of e.entries()){let e=r/255;t[n]=e<=.04045?e/12.92:((e+.055)/1.055)**2.4}return .2126*t[0]+.7152*t[1]+.0722*t[2]},contrast(e){let t=this.luminosity(),n=e.luminosity();return t>n?(t+.05)/(n+.05):(n+.05)/(t+.05)},level(e){let t=this.contrast(e);return t>=7?`AAA`:t>=4.5?`AA`:``},isDark(){let e=this.rgb().color;return(e[0]*2126+e[1]*7152+e[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){let e=this.rgb();for(let t=0;t<3;t++)e.color[t]=255-e.color[t];return e},lighten(e){let t=this.hsl();return t.color[2]+=t.color[2]*e,t},darken(e){let t=this.hsl();return t.color[2]-=t.color[2]*e,t},saturate(e){let t=this.hsl();return t.color[1]+=t.color[1]*e,t},desaturate(e){let t=this.hsl();return t.color[1]-=t.color[1]*e,t},whiten(e){let t=this.hwb();return t.color[1]+=t.color[1]*e,t},blacken(e){let t=this.hwb();return t.color[2]+=t.color[2]*e,t},grayscale(){let e=this.rgb().color,t=e[0]*.3+e[1]*.59+e[2]*.11;return z.rgb(t,t,t)},fade(e){return this.alpha(this.valpha-this.valpha*e)},opaquer(e){return this.alpha(this.valpha+this.valpha*e)},rotate(e){let t=this.hsl(),n=t.color[0];return n=(n+e)%360,n=n<0?360+n:n,t.color[0]=n,t},mix(e,t){if(!e||!e.rgb)throw Error(`Argument to "mix" was not a Color instance, but rather an instance of `+typeof e);let n=e.rgb(),r=this.rgb(),i=t===void 0?.5:t,a=2*i-1,o=n.alpha()-r.alpha(),s=((a*o===-1?a:(a+o)/(1+a*o))+1)/2,c=1-s;return z.rgb(s*n.red()+c*r.red(),s*n.green()+c*r.green(),s*n.blue()+c*r.blue(),n.alpha()*i+r.alpha()*(1-i))}};for(let e of Object.keys(F)){if(I.includes(e))continue;let{channels:t}=F[e];z.prototype[e]=function(...t){return this.model===e?new z(this):t.length>0?new z(t,e):new z([...de(F[this.model][e].raw(this.color)),this.valpha],e)},z[e]=function(...n){let r=n[0];return typeof r==`number`&&(r=H(n,t)),new z(r,e)}}function le(e,t){return Number(e.toFixed(t))}function ue(e){return function(t){return le(t,e)}}function B(e,t,n){e=Array.isArray(e)?e:[e];for(let r of e)(R[r]||=[])[t]=n;return e=e[0],function(r){let i;return r===void 0?(i=this[e]().color[t],n&&(i=n(i)),i):(n&&(r=n(r)),i=this[e](),i.color[t]=r,i)}}function V(e){return function(t){return Math.max(0,Math.min(e,t))}}function de(e){return Array.isArray(e)?e:[e]}function H(e,t){for(let n=0;n<t;n++)typeof e[n]!=`number`&&(e[n]=0);return e}var U=[`PageUp`,`PageDown`],W=[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`],fe={"from-left":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-right":[`Home`,`PageDown`,`ArrowDown`,`ArrowRight`],"from-bottom":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-top":[`Home`,`PageDown`,`ArrowUp`,`ArrowLeft`]},G=`Slider`,[K,pe,me]=d(G),[q,he]=l(G,[me]),[ge,J]=q(G),_e=S.forwardRef((e,t)=>{let{name:n,min:a=0,max:o=100,step:s=1,orientation:c=`horizontal`,disabled:l=!1,minStepsBetweenThumbs:u=0,defaultValue:d=[a],value:f,onValueChange:p=()=>{},onValueCommit:m=()=>{},inverted:g=!1,form:_,...v}=e,y=S.useRef(new Set),b=S.useRef(0),x=S.useRef(!1),w=c===`horizontal`?be:xe,[T=[],E]=i({prop:f,defaultProp:d,onChange:e=>{[...y.current][b.current]?.focus({preventScroll:!0,focusVisible:x.current}),x.current=!1,p(e)}}),D=S.useRef(T);function O(e){j(e,Re(T,e))}function k(e){j(e,b.current)}function A(){let e=D.current[b.current];T[b.current]!==e&&m(T)}function j(e,t,{commit:n}={commit:!1}){let r=He(s),i=h(Ue(Math.round((e-a)/s)*s+a,r),[a,o]);E((e=[])=>{let r=Fe(e,i,t);if(Ve(r,u*s)){b.current=r.indexOf(i);let t=String(r)!==String(e);return t&&n&&m(r),t?r:e}else return e})}return(0,C.jsx)(ge,{scope:e.__scopeSlider,name:n,disabled:l,min:a,max:o,valueIndexToChangeRef:b,thumbs:y.current,values:T,orientation:c,form:_,children:(0,C.jsx)(K.Provider,{scope:e.__scopeSlider,children:(0,C.jsx)(K.Slot,{scope:e.__scopeSlider,children:(0,C.jsx)(w,{"aria-disabled":l,"data-disabled":l?``:void 0,...v,ref:t,onPointerDown:r(v.onPointerDown,()=>{l||(D.current=T,x.current=!1)}),min:a,max:o,inverted:g,onSlideStart:l?void 0:O,onSlideMove:l?void 0:k,onSlideEnd:l?void 0:A,onHomeKeyDown:()=>{l||(x.current=!0,j(a,0,{commit:!0}))},onEndKeyDown:()=>{l||(x.current=!0,j(o,T.length-1,{commit:!0}))},onStepKeyDown:({event:e,direction:t})=>{if(!l){x.current=!0;let n=U.includes(e.key)||e.shiftKey&&W.includes(e.key)?10:1,r=b.current,i=T[r];j(i+s*n*t,r,{commit:!0})}}})})})})});_e.displayName=G;var[ve,ye]=q(G,{startEdge:`left`,endEdge:`right`,size:`width`,direction:1}),be=S.forwardRef((e,t)=>{let{min:n,max:r,dir:i,inverted:o,onSlideStart:s,onSlideMove:c,onSlideEnd:l,onStepKeyDown:u,...d}=e,[p,m]=S.useState(null),h=a(t,m),g=S.useRef(void 0),_=f(i),v=_===`ltr`,y=v&&!o||!v&&o;function b(e){let t=g.current||p.getBoundingClientRect(),i=Z([0,t.width],y?[n,r]:[r,n]);return g.current=t,i(e-t.left)}return(0,C.jsx)(ve,{scope:e.__scopeSlider,startEdge:y?`left`:`right`,endEdge:y?`right`:`left`,direction:y?1:-1,size:`width`,children:(0,C.jsx)(Se,{dir:_,"data-orientation":`horizontal`,...d,ref:h,style:{...d.style,"--radix-slider-thumb-transform":`translateX(-50%)`},onSlideStart:e=>{let t=b(e.clientX);s?.(t)},onSlideMove:e=>{let t=b(e.clientX);c?.(t)},onSlideEnd:()=>{g.current=void 0,l?.()},onStepKeyDown:e=>{let t=fe[y?`from-left`:`from-right`].includes(e.key);u?.({event:e,direction:t?-1:1})}})})}),xe=S.forwardRef((e,t)=>{let{min:n,max:r,inverted:i,onSlideStart:o,onSlideMove:s,onSlideEnd:c,onStepKeyDown:l,...u}=e,d=S.useRef(null),f=a(t,d),p=S.useRef(void 0),m=!i;function h(e){let t=p.current||d.current.getBoundingClientRect(),i=Z([0,t.height],m?[r,n]:[n,r]);return p.current=t,i(e-t.top)}return(0,C.jsx)(ve,{scope:e.__scopeSlider,startEdge:m?`bottom`:`top`,endEdge:m?`top`:`bottom`,size:`height`,direction:m?1:-1,children:(0,C.jsx)(Se,{"data-orientation":`vertical`,...u,ref:f,style:{...u.style,"--radix-slider-thumb-transform":`translateY(50%)`},onSlideStart:e=>{let t=h(e.clientY);o?.(t)},onSlideMove:e=>{let t=h(e.clientY);s?.(t)},onSlideEnd:()=>{p.current=void 0,c?.()},onStepKeyDown:e=>{let t=fe[m?`from-bottom`:`from-top`].includes(e.key);l?.({event:e,direction:t?-1:1})}})})}),Se=S.forwardRef((e,t)=>{let{__scopeSlider:n,onSlideStart:i,onSlideMove:a,onSlideEnd:o,onHomeKeyDown:s,onEndKeyDown:c,onStepKeyDown:l,...d}=e,f=J(G,n);return(0,C.jsx)(u.span,{...d,ref:t,onKeyDown:r(e.onKeyDown,e=>{e.key===`Home`?(s(e),e.preventDefault()):e.key===`End`?(c(e),e.preventDefault()):U.concat(W).includes(e.key)&&(l(e),e.preventDefault())}),onPointerDown:r(e.onPointerDown,e=>{let t=e.target;t.setPointerCapture(e.pointerId),e.preventDefault(),f.thumbs.has(t)?t.focus({preventScroll:!0,focusVisible:!1}):i(e)}),onPointerMove:r(e.onPointerMove,e=>{e.target.hasPointerCapture(e.pointerId)&&a(e)}),onPointerUp:r(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&(t.releasePointerCapture(e.pointerId),o(e))})})}),Ce=`SliderTrack`,we=S.forwardRef((e,t)=>{let{__scopeSlider:n,...r}=e,i=J(Ce,n);return(0,C.jsx)(u.span,{"data-disabled":i.disabled?``:void 0,"data-orientation":i.orientation,...r,ref:t})});we.displayName=Ce;var Y=`SliderRange`,Te=S.forwardRef((e,t)=>{let{__scopeSlider:n,...r}=e,i=J(Y,n),o=ye(Y,n),s=a(t,S.useRef(null)),c=i.values.length,l=i.values.map(e=>Ie(e,i.min,i.max)),d=c>1?Math.min(...l):0,f=100-Math.max(...l);return(0,C.jsx)(u.span,{"data-orientation":i.orientation,"data-disabled":i.disabled?``:void 0,...r,ref:s,style:{...e.style,[o.startEdge]:d+`%`,[o.endEdge]:f+`%`}})});Te.displayName=Y;var Ee=`SliderThumb`,[De,Oe]=q(Ee),ke=`SliderThumbProvider`;function Ae(e){let{__scopeSlider:t,name:n,children:r,internal_do_not_use_render:i}=e,a=J(ke,t),o=pe(t),[s,c]=S.useState(null),l=S.useMemo(()=>s?o().findIndex(e=>e.ref.current===s):-1,[o,s]),u=p(s),d=s?!!a.form||!!s.closest(`form`):!0,f=a.values[l],m=n??(a.name?a.name+(a.values.length>1?`[]`:``):void 0),h=f===void 0?0:Ie(f,a.min,a.max);S.useEffect(()=>{if(s)return a.thumbs.add(s),()=>{a.thumbs.delete(s)}},[s,a.thumbs]);let g={value:f,name:m,form:a.form,isFormControl:d,index:l,thumb:s,onThumbChange:c,percent:h,size:u};return(0,C.jsx)(De,{scope:t,...g,children:We(i)?i(g):r})}Ae.displayName=ke;var X=`SliderThumbTrigger`,je=S.forwardRef((e,t)=>{let{__scopeSlider:n,...i}=e,o=J(X,n),s=ye(X,n),{index:c,value:l,percent:d,size:f,onThumbChange:p}=Oe(X,n),m=a(t,p),h=Le(c,o.values.length),g=f?.[s.size],_=g?ze(g,d,s.direction):0;return(0,C.jsx)(`span`,{style:{transform:`var(--radix-slider-thumb-transform)`,position:`absolute`,[s.startEdge]:`calc(${d}% + ${_}px)`},children:(0,C.jsx)(K.ItemSlot,{scope:n,children:(0,C.jsx)(u.span,{role:`slider`,"aria-label":e[`aria-label`]||h,"aria-valuemin":o.min,"aria-valuenow":l,"aria-valuemax":o.max,"aria-orientation":o.orientation,"data-orientation":o.orientation,"data-disabled":o.disabled?``:void 0,tabIndex:o.disabled?void 0:0,...i,ref:m,style:l===void 0?{display:`none`}:e.style,onFocus:r(e.onFocus,()=>{o.valueIndexToChangeRef.current=c})})})})});je.displayName=X;var Me=S.forwardRef((e,t)=>{let{__scopeSlider:n,name:r,...i}=e;return(0,C.jsx)(Ae,{__scopeSlider:n,name:r,internal_do_not_use_render:({index:e,isFormControl:r})=>(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(je,{...i,ref:t,__scopeSlider:n}),r?(0,C.jsx)(Pe,{__scopeSlider:n},e):null]})})});Me.displayName=Ee;var Ne=`SliderBubbleInput`,Pe=S.forwardRef(({__scopeSlider:e,...t},n)=>{let{value:r,name:i,form:o}=Oe(Ne,e),s=S.useRef(null),c=a(s,n),l=m(r);return S.useEffect(()=>{let e=s.current;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`value`).set;if(l!==r&&n){let t=new Event(`input`,{bubbles:!0});n.call(e,r),e.dispatchEvent(t)}},[l,r]),(0,C.jsx)(u.input,{style:{display:`none`},name:i,form:o,...t,ref:c,defaultValue:r})});Pe.displayName=Ne;function Fe(e=[],t,n){let r=[...e];return r[n]=t,r.sort((e,t)=>e-t)}function Ie(e,t,n){return h(100/(n-t)*(e-t),[0,100])}function Le(e,t){if(t>2)return`Value ${e+1} of ${t}`;if(t===2)return[`Minimum`,`Maximum`][e]}function Re(e,t){if(e.length===1)return 0;let n=e.map(e=>Math.abs(e-t)),r=Math.min(...n);return n.indexOf(r)}function ze(e,t,n){let r=e/2;return(r-Z([0,50],[0,r])(t)*n)*n}function Be(e){return e.slice(0,-1).map((t,n)=>e[n+1]-t)}function Ve(e,t){if(t>0){let n=Be(e);return Math.min(...n)>=t}return!0}function Z(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function He(e){if(!Number.isFinite(e))return 0;let t=e.toString();if(t.includes(`e`)){let[e,n]=t.split(`e`),r=e.split(`.`)[1]||``,i=Number(n);return Math.max(0,r.length-i)}let n=t.split(`.`)[1];return n?n.length:0}function Ue(e,t){let n=10**t;return Math.round(e*n)/n}function We(e){return typeof e==`function`}var Ge=e=>{let t=e.toLowerCase();return t===`transparent`||t.length===5&&t[4]===`0`||t.length===9&&t.slice(7)===`00`},Ke=({color:e,selected:t,size:n=`md`,className:r,style:i,...a})=>(0,C.jsx)(`button`,{"aria-pressed":t,className:o(`relative flex shrink-0 cursor-pointer items-center overflow-hidden rounded-full border border-control-border`,n===`lg`?`size-6`:`size-5`,t&&`ring-2 ring-focus-ring`,r),style:{backgroundColor:e,...i},type:`button`,...a,children:Ge(e)&&(0,C.jsx)(`span`,{"aria-hidden":`true`,className:`pointer-events-none absolute top-1/2 left-[-30%] block h-px w-[160%] -translate-y-1/2 -rotate-45 bg-destructive`,"data-testid":`transparent-indicator`})}),qe=({swatches:e,value:t,size:n=`md`,onSelect:r,className:i,...a})=>(0,C.jsx)(`div`,{className:o(`flex items-center gap-1`,i),...a,children:e.map(e=>{let i=e.value===void 0?e.hex:e.value;return(0,C.jsx)(Ke,{"aria-label":e.title,color:e.hex,selected:i===t||e.hex.toLowerCase()===t?.toLowerCase(),size:n,title:e.title,onClick:()=>r(i)},e.title)})}),Je=(0,S.forwardRef)(({value:e,className:t,...n},r)=>(0,C.jsxs)(`button`,{ref:r,"aria-label":`Pick color`,className:o(`relative size-6 cursor-pointer rounded-full border border-control-border`,t),type:`button`,...n,children:[(0,C.jsx)(`span`,{"aria-hidden":`true`,className:`absolute inset-0 rounded-full bg-[conic-gradient(hsl(360,100%,50%),hsl(315,100%,50%),hsl(270,100%,50%),hsl(225,100%,50%),hsl(180,100%,50%),hsl(135,100%,50%),hsl(90,100%,50%),hsl(45,100%,50%),hsl(0,100%,50%))]`}),e&&(0,C.jsx)(`span`,{className:`absolute inset-[3px] overflow-hidden rounded-full border border-background`,style:{backgroundColor:e}})]}));Je.displayName=`ColorPickerTrigger`;var Ye=(0,S.createContext)(void 0),Q=()=>{let e=(0,S.useContext)(Ye);if(!e)throw Error(`useColorPicker must be used within a ColorPickerProvider`);return e},Xe=({value:e,defaultValue:t=`rgb(0 0 0)`,onChange:n,className:r,...i})=>{let a=z(e??t),[s,c]=(0,S.useState)(a.hue()),[l,u]=(0,S.useState)(a.saturationl()),[d,f]=(0,S.useState)(a.lightness()),[p,m]=(0,S.useState)(a.alpha()*100),[h,g]=(0,S.useState)(`hex`);return(0,S.useEffect)(()=>{if(e){let t=z(e);c(t.hue()),u(t.saturationl()),f(t.lightness()),m(t.alpha()*100)}},[e]),(0,S.useEffect)(()=>{n&&n(z.hsl(s,l,d).alpha(p/100).hex())},[s,l,d,p,n]),(0,C.jsx)(Ye.Provider,{value:{hue:s,saturation:l,lightness:d,alpha:p,mode:h,setHue:c,setSaturation:u,setLightness:f,setAlpha:m,setMode:g},children:(0,C.jsx)(`div`,{className:o(`flex size-full flex-col gap-4`,r),...i})})},$=(0,S.memo)(({className:e,...t})=>{let n=(0,S.useRef)(null),r=(0,S.useRef)(null),[i,a]=(0,S.useState)(0),[s,c]=(0,S.useState)(0),{hue:l,saturation:u,lightness:d,setSaturation:f,setLightness:p}=Q(),m=(0,S.useMemo)(()=>`linear-gradient(0deg, rgba(0,0,0,1), rgba(0,0,0,0)),
|
|
2
|
+
linear-gradient(90deg, rgba(255,255,255,1), rgba(255,255,255,0)),
|
|
3
|
+
hsl(${l}, 100%, 50%)`,[l]);(0,S.useEffect)(()=>{let e=u/100,t=e<.01?100:50+50*(1-e),n=Math.max(0,Math.min(1,1-d/t));a(e),c(n)},[u,d]);let h=(0,S.useCallback)(e=>{if(!n.current)return;let t=n.current.getBoundingClientRect(),r=Math.max(0,Math.min(1,(e.clientX-t.left)/t.width)),i=Math.max(0,Math.min(1,(e.clientY-t.top)/t.height));a(r),c(i),f(r*100);let o=(r<.01?100:50+50*(1-r))*(1-i);p(o)},[f,p]);return(0,C.jsx)(`div`,{ref:n,className:o(`relative size-full cursor-crosshair rounded`,e),style:{background:m},onPointerCancel:e=>{r.current===e.pointerId&&(r.current=null)},onPointerDown:e=>{e.preventDefault(),r.current=e.pointerId,e.currentTarget.setPointerCapture?.(e.pointerId),h(e.nativeEvent)},onPointerMove:e=>{r.current===e.pointerId&&h(e.nativeEvent)},onPointerUp:e=>{r.current===e.pointerId&&(r.current=null,e.currentTarget.releasePointerCapture?.(e.pointerId))},...t,children:(0,C.jsx)(`div`,{className:`pointer-events-none absolute size-4 -translate-1/2 rounded-full border-2 border-white`,style:{left:`${i*100}%`,top:`${s*100}%`,boxShadow:`0 0 0 1px rgba(0,0,0,0.5)`}})})});$.displayName=`ColorPickerSelection`;var Ze=({className:e,...t})=>{let{hue:n,setHue:r}=Q();return(0,C.jsxs)(_e,{className:o(`relative flex h-4 w-full touch-none`,e),max:360,step:1,value:[n],onValueChange:([e])=>r(e),...t,children:[(0,C.jsx)(we,{className:`relative my-0.5 h-3 w-full grow rounded-full bg-[linear-gradient(90deg,red,yellow,lime,aqua,blue,magenta,red)]`,children:(0,C.jsx)(Te,{className:`absolute h-full`})}),(0,C.jsx)(Me,{className:`block size-4 rounded-full border border-primary/50 bg-background shadow transition-colors focus-visible:ring-1 focus-visible:ring-focus-ring focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50`})]})},Qe=({className:e,...t})=>{let{setHue:n,setSaturation:r,setLightness:i,setAlpha:a}=Q();return typeof window<`u`&&`EyeDropper`in window?(0,C.jsx)(c,{className:o(`size-8 shrink-0 text-muted-foreground`,e),size:`icon`,type:`button`,variant:`outline`,onClick:async()=>{try{let[e,t,o]=z((await new EyeDropper().open()).sRGBHex).hsl().array();n(e),r(t),i(o),a(100)}catch(e){console.error(`EyeDropper failed:`,e)}},...t,children:(0,C.jsx)(s,{size:16})}):null},$e=[`hex`,`rgb`,`hsl`],et=({...e})=>{let{mode:t,setMode:n}=Q();return(0,C.jsxs)(b,{value:t,onValueChange:n,children:[(0,C.jsx)(v,{className:`h-8 w-20 shrink-0 text-xs`,...e,children:(0,C.jsx)(y,{placeholder:`Mode`})}),(0,C.jsx)(_,{children:$e.map(e=>(0,C.jsx)(g,{className:`text-xs`,value:e,children:e.toUpperCase()},e))})]})},tt=({className:e,...t})=>{let{hue:n,saturation:r,lightness:i,mode:a,setHue:s,setSaturation:c,setLightness:l,setAlpha:u}=Q(),d=z.hsl(n,r,i),[f,p]=(0,S.useState)(null),m=(e,t)=>{try{if(a===`hex`){let t=z(e);s(t.hue()),c(t.saturationl()),l(t.lightness()),u(t.alpha()*100)}else if((a===`rgb`||a===`hsl`)&&t!==void 0){let n=d[a]().array().map(e=>Math.round(e));n[t]=parseInt(e,10)||0;let r=z[a](n[0],n[1],n[2]);s(r.hue()),c(r.saturationl()),l(r.lightness())}}catch{}};if(a===`hex`){let n=d.hex();return(0,C.jsx)(`div`,{className:o(`relative flex w-full items-center -space-x-px rounded-md`,e),...t,children:(0,C.jsx)(x,{"aria-label":`Hex color`,className:`h-8 px-2 font-mono text-xs shadow-none`,type:`text`,value:f??n,onBlur:()=>{p(null)},onChange:e=>{p(e.target.value),m(e.target.value)}})})}if(a===`rgb`||a===`hsl`){let n=d[a]().array().map(e=>Math.round(e));return(0,C.jsx)(`div`,{className:o(`flex flex-1 items-stretch -space-x-px rounded-md`,e),...t,children:n.map((e,t)=>(0,C.jsx)(x,{"aria-label":`${a.toUpperCase()} channel ${t+1}`,className:o(`h-8 flex-1 px-2 font-mono text-xs shadow-none focus:z-10`,t&&`rounded-l-none`,t<n.length-1&&`rounded-r-none`),maxLength:3,size:4,type:`text`,value:e,onChange:e=>{m(e.target.value,t)}},t))})}return null},nt=e=>(0,C.jsxs)(Xe,{className:`w-auto min-w-80`,...e,children:[(0,C.jsx)($,{className:`aspect-square`}),(0,C.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,C.jsx)(Qe,{}),(0,C.jsx)(Ze,{})]}),(0,C.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,C.jsx)(et,{}),(0,C.jsx)(tt,{})]})]});export{Je as n,qe as r,nt as t};
|
package/core/built/admin/assets/{color-picker-field-Cv9GOJQZ.js → color-picker-field-BhplXcy5.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{t as r}from"./inline-Cw-gigDW.js";import{r as i}from"./field-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{t as r}from"./inline-Cw-gigDW.js";import{r as i}from"./field-kJYZ2T3C.js";import{Dr as a,Er as o,wr as s}from"./index-BJz9Zlsc.js";import{n as c,r as l,t as u}from"./color-picker-XEMPgNJE.js";import{t as d}from"./debounce-pscB46sW.js";var f=e(t(),1),p=n(),m=/^#(?:[0-9a-f]{3}|[0-9a-f]{6}|[0-9a-f]{8})$/i,h=(e,t,n=[])=>{if(e&&m.test(e))return e;switch(e){case`accent`:return t&&m.test(t)?t:`#ffffff`;case`dark`:return`#08090c`;case`light`:return`#ffffff`;case`transparent`:return`#00000000`;default:return n.find(t=>t.value===e)?.hex||`#ffffff`}},g=e=>e.length===4?e.replace(/#(.)(.)(.)/,`#$1$1$2$2$3$3`):e,_=({testId:e,title:t,direction:n=`rtl`,hint:m,error:_,value:v,onChange:y,accentColor:b,swatches:x=[],alwaysOpen:S=!1,debounceMs:C})=>{let[w,T]=(0,f.useState)(S),[E,D]=(0,f.useState)(v),O=(0,f.useRef)(!1),k=(0,f.useRef)(!1),A=(0,f.useRef)(null),j=(0,f.useId)(),M=h(E,b,x);(0,f.useEffect)(()=>{D(e=>g(e||``)===v?e:v)},[v]);let N=(0,f.useMemo)(()=>y&&C?d(y,C):y,[C,y]),P=(0,f.useCallback)(e=>{D(e),N?.(e?g(e):null)},[N]),F=(0,f.useCallback)(()=>{A.current&&=(window.removeEventListener(`keydown`,A.current,!0),null)},[]),I=()=>{O.current=!1,k.current=!1},L=()=>{F(),I(),S||T(!1)},R=()=>{if(A.current)return;let e=e=>{e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),L())};A.current=e,window.addEventListener(`keydown`,e,!0)};return(0,f.useEffect)(()=>F,[F]),(0,p.jsxs)(s,{open:w,onOpenChange:e=>{S||(I(),e?R():F(),T(e))},children:[(0,p.jsxs)(r,{align:m?`start`:`center`,className:`w-full ${n===`ltr`?`flex-row-reverse`:``}`,"data-testid":e,gap:`sm`,justify:`between`,children:[t&&(0,p.jsxs)(`label`,{className:`min-w-0 flex-1 cursor-pointer text-left`,htmlFor:j,children:[t,m&&(0,p.jsx)(i,{className:_?`text-destructive`:void 0,children:m})]}),(0,p.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[w&&x.length>0&&(0,p.jsx)(l,{swatches:x,value:E,onSelect:e=>{O.current=!1,k.current=!0,P(e),L()}}),(0,p.jsx)(a,{asChild:!0,children:(0,p.jsx)(c,{id:j,value:M})})]})]}),(0,p.jsx)(o,{align:n===`rtl`?`end`:`start`,className:`w-auto p-4`,onEscapeKeyDown:e=>e.stopPropagation(),children:(0,p.jsx)(`div`,{onInputCapture:()=>O.current=!0,onKeyDownCapture:()=>O.current=!0,onMouseDownCapture:()=>O.current=!0,onPointerDownCapture:()=>O.current=!0,onTouchStartCapture:()=>O.current=!0,children:(0,p.jsx)(u,{defaultValue:M,onChange:e=>{!k.current&&O.current&&P(e.toLowerCase())}})})})]})};export{_ as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{c as r}from"./dist-Cb5RSHSg.js";import{Zn as i}from"./button-BshWPHvn.js";import{n as a,t as o}from"./input-surface-BdOe4KzO.js";import{Dr as s,Er as c,wr as l}from"./index-BJz9Zlsc.js";var u=e(t(),1),d=n(),f=l,p=u.forwardRef(({children:e,className:t,...n},c)=>(0,d.jsx)(s,{asChild:!0,children:(0,d.jsxs)(`button`,{ref:c,className:r(o(`self`),a.disabledFieldSelf,`flex h-(--control-height) w-full min-w-0 items-center justify-between px-3 text-control hover:bg-button-hover`,t),role:`combobox`,...n,type:`button`,children:[e,(0,d.jsx)(i,{className:`ml-2 size-4 shrink-0 opacity-50`})]})}));p.displayName=`ComboboxTrigger`;var m=u.forwardRef(({className:e,placeholder:t=!1,...n},i)=>(0,d.jsx)(`span`,{ref:i,className:r(`min-w-0 flex-1 truncate text-left`,t&&`text-muted-foreground`,e),...n}));m.displayName=`ComboboxValue`;var h=u.forwardRef(({align:e=`start`,className:t,...n},i)=>(0,d.jsx)(c,{ref:i,align:e,className:r(`z-[9999] w-(--radix-popover-trigger-width) p-0`,t),...n}));h.displayName=`ComboboxContent`;export{m as i,h as n,p as r,f as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{a as r}from"./Combination-BCm9FL4o.js";import{c as i,i as a}from"./dist-Cb5RSHSg.js";import{Qn as o,tt as s}from"./button-BshWPHvn.js";import{t as c}from"./dist-CqO2lWS0.js";import{a as l,o as u,r as d,t as f}from"./dist-C1-Oy3Db.js";var p=e(t(),1),m=n(),h=1,g=.9,_=.8,v=.17,y=.1,b=.999,x=.9999,ee=.99,S=/[\\\/_+.#"@\[\(\{&]/,C=/[\\\/_+.#"@\[\(\{&]/g,w=/[\s-]/,T=/[\s-]/g;function E(e,t,n,r,i,a,o){if(a===t.length)return i===e.length?h:ee;var s=`${i},${a}`;if(o[s]!==void 0)return o[s];for(var c=r.charAt(a),l=n.indexOf(c,i),u=0,d,f,p,m;l>=0;)d=E(e,t,n,r,l+1,a+1,o),d>u&&(l===i?d*=h:S.test(e.charAt(l-1))?(d*=_,p=e.slice(i,l-1).match(C),p&&i>0&&(d*=b**+p.length)):w.test(e.charAt(l-1))?(d*=g,m=e.slice(i,l-1).match(T),m&&i>0&&(d*=b**+m.length)):(d*=v,i>0&&(d*=b**+(l-i))),e.charAt(l)!==t.charAt(a)&&(d*=x)),(d<y&&n.charAt(l-1)===r.charAt(a+1)||r.charAt(a+1)===r.charAt(a)&&n.charAt(l-1)!==r.charAt(a))&&(f=E(e,t,n,r,l+1,a+2,o),f*y>d&&(d=f*y)),d>u&&(u=d),l=n.indexOf(c,l+1);return o[s]=u,u}function D(e){return e.toLowerCase().replace(T,` `)}function O(e,t,n){return e=n&&n.length>0?`${e+` `+n.join(` `)}`:e,E(e,t,D(e),D(t),0,0,{})}var k=`[cmdk-group=""]`,A=`[cmdk-group-items=""]`,te=`[cmdk-group-heading=""]`,j=`[cmdk-item=""]`,M=`${j}:not([aria-disabled="true"])`,N=`cmdk-item-select`,P=`data-value`,F=(e,t,n)=>O(e,t,n),I=p.createContext(void 0),L=()=>p.useContext(I),ne=p.createContext(void 0),R=()=>p.useContext(ne),z=p.createContext(void 0),B=p.forwardRef((e,t)=>{let n=Z(()=>({search:``,value:e.value??e.defaultValue??``,selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}})),i=Z(()=>new Set),a=Z(()=>new Map),o=Z(()=>new Map),s=Z(()=>new Set),l=Y(e),{label:u,children:d,value:f,onValueChange:m,filter:h,shouldFilter:g,loop:_,disablePointerSelection:v=!1,vimBindings:y=!0,...b}=e,x=r(),ee=r(),S=r(),C=p.useRef(null),w=se();X(()=>{if(f!==void 0){let e=f.trim();n.current.value=e,T.emit()}},[f]),X(()=>{w(6,z)},[]);let T=p.useMemo(()=>({subscribe:e=>(s.current.add(e),()=>s.current.delete(e)),snapshot:()=>n.current,setState:(e,t,r)=>{var i,a,o;if(!Object.is(n.current[e],t)){if(n.current[e]=t,e===`search`)R(),O(),w(1,L);else if(e===`value`){if(document.activeElement.hasAttribute(`cmdk-input`)||document.activeElement.hasAttribute(`cmdk-root`)){let e=document.getElementById(S);e?e.focus():(i=document.getElementById(x))==null||i.focus()}if(w(7,()=>{n.current.selectedItemId=B()?.id,T.emit()}),r||w(5,z),l.current?.value!==void 0){let e=t??``;(o=(a=l.current).onValueChange)==null||o.call(a,e);return}}T.emit()}},emit:()=>{s.current.forEach(e=>e())}}),[]),E=p.useMemo(()=>({value:(e,t,r)=>{t!==o.current.get(e)?.value&&(o.current.set(e,{value:t,keywords:r}),n.current.filtered.items.set(e,D(t,r)),w(2,()=>{O(),T.emit()}))},item:(e,t)=>(i.current.add(e),t&&(a.current.has(t)?a.current.get(t).add(e):a.current.set(t,new Set([e]))),w(3,()=>{R(),O(),n.current.value||L(),T.emit()}),()=>{o.current.delete(e),i.current.delete(e),n.current.filtered.items.delete(e);let t=B();w(4,()=>{R(),t?.getAttribute(`id`)===e&&L(),T.emit()})}),group:e=>(a.current.has(e)||a.current.set(e,new Set),()=>{o.current.delete(e),a.current.delete(e)}),filter:()=>l.current.shouldFilter,label:u||e[`aria-label`],getDisablePointerSelection:()=>l.current.disablePointerSelection,listId:x,inputId:S,labelId:ee,listInnerRef:C}),[]);function D(e,t){let r=l.current?.filter??F;return e?r(e,n.current.search,t):0}function O(){if(!n.current.search||l.current.shouldFilter===!1)return;let e=n.current.filtered.items,t=[];n.current.filtered.groups.forEach(n=>{let r=a.current.get(n),i=0;r.forEach(t=>{let n=e.get(t);i=Math.max(n,i)}),t.push([n,i])});let r=C.current;V().sort((t,n)=>{let r=t.getAttribute(`id`),i=n.getAttribute(`id`);return(e.get(i)??0)-(e.get(r)??0)}).forEach(e=>{let t=e.closest(A);t?t.appendChild(e.parentElement===t?e:e.closest(`${A} > *`)):r.appendChild(e.parentElement===r?e:e.closest(`${A} > *`))}),t.sort((e,t)=>t[1]-e[1]).forEach(e=>{let t=C.current?.querySelector(`${k}[${P}="${encodeURIComponent(e[0])}"]`);t?.parentElement.appendChild(t)})}function L(){let e=V().find(e=>e.getAttribute(`aria-disabled`)!==`true`)?.getAttribute(P);T.setState(`value`,e||void 0)}function R(){if(!n.current.search||l.current.shouldFilter===!1){n.current.filtered.count=i.current.size;return}n.current.filtered.groups=new Set;let e=0;for(let t of i.current){let r=D(o.current.get(t)?.value??``,o.current.get(t)?.keywords??[]);n.current.filtered.items.set(t,r),r>0&&e++}for(let[e,t]of a.current)for(let r of t)if(n.current.filtered.items.get(r)>0){n.current.filtered.groups.add(e);break}n.current.filtered.count=e}function z(){var e;let t=B();t&&(t.parentElement?.firstChild===t&&((e=t.closest(k)?.querySelector(te))==null||e.scrollIntoView({block:`nearest`})),t.scrollIntoView({block:`nearest`}))}function B(){return C.current?.querySelector(`${j}[aria-selected="true"]`)}function V(){return Array.from(C.current?.querySelectorAll(M)||[])}function H(e){let t=V()[e];t&&T.setState(`value`,t.getAttribute(P))}function U(e){var t;let n=B(),r=V(),i=r.findIndex(e=>e===n),a=r[i+e];(t=l.current)!=null&&t.loop&&(a=i+e<0?r[r.length-1]:i+e===r.length?r[0]:r[i+e]),a&&T.setState(`value`,a.getAttribute(P))}function W(e){let t=B()?.closest(k),n;for(;t&&!n;)t=e>0?ie(t,k):ae(t,k),n=t?.querySelector(M);n?T.setState(`value`,n.getAttribute(P)):U(e)}let G=()=>H(V().length-1),K=e=>{e.preventDefault(),e.metaKey?G():e.altKey?W(1):U(1)},q=e=>{e.preventDefault(),e.metaKey?H(0):e.altKey?W(-1):U(-1)};return p.createElement(c.div,{ref:t,tabIndex:-1,...b,"cmdk-root":``,onKeyDown:e=>{var t;(t=b.onKeyDown)==null||t.call(b,e);let n=e.nativeEvent.isComposing||e.keyCode===229;if(!(e.defaultPrevented||n))switch(e.key){case`n`:case`j`:y&&e.ctrlKey&&K(e);break;case`ArrowDown`:K(e);break;case`p`:case`k`:y&&e.ctrlKey&&q(e);break;case`ArrowUp`:q(e);break;case`Home`:e.preventDefault(),H(0);break;case`End`:e.preventDefault(),G();break;case`Enter`:{e.preventDefault();let t=B();if(t){let e=new Event(N);t.dispatchEvent(e)}}}}},p.createElement(`label`,{"cmdk-label":``,htmlFor:E.inputId,id:E.labelId,style:le},u),$(e,e=>p.createElement(ne.Provider,{value:T},p.createElement(I.Provider,{value:E},e))))}),V=p.forwardRef((e,t)=>{let n=r(),i=p.useRef(null),o=p.useContext(z),s=L(),l=Y(e),u=l.current?.forceMount??o?.forceMount;X(()=>{if(!u)return s.item(n,o?.id)},[u]);let d=oe(n,i,[e.value,e.children,i],e.keywords),f=R(),m=Q(e=>e.value&&e.value===d.current),h=Q(e=>u||s.filter()===!1?!0:e.search?e.filtered.items.get(n)>0:!0);p.useEffect(()=>{let t=i.current;if(!(!t||e.disabled))return t.addEventListener(N,g),()=>t.removeEventListener(N,g)},[h,e.onSelect,e.disabled]);function g(){var e,t;_(),(t=(e=l.current).onSelect)==null||t.call(e,d.current)}function _(){f.setState(`value`,d.current,!0)}if(!h)return null;let{disabled:v,value:y,onSelect:b,forceMount:x,keywords:ee,...S}=e;return p.createElement(c.div,{ref:a(i,t),...S,id:n,"cmdk-item":``,role:`option`,"aria-disabled":!!v,"aria-selected":!!m,"data-disabled":!!v,"data-selected":!!m,onPointerMove:v||s.getDisablePointerSelection()?void 0:_,onClick:v?void 0:g},e.children)}),H=p.forwardRef((e,t)=>{let{heading:n,children:i,forceMount:o,...s}=e,l=r(),u=p.useRef(null),d=p.useRef(null),f=r(),m=L(),h=Q(e=>o||m.filter()===!1?!0:e.search?e.filtered.groups.has(l):!0);X(()=>m.group(l),[]),oe(l,u,[e.value,e.heading,d]);let g=p.useMemo(()=>({id:l,forceMount:o}),[o]);return p.createElement(c.div,{ref:a(u,t),...s,"cmdk-group":``,role:`presentation`,hidden:h?void 0:!0},n&&p.createElement(`div`,{ref:d,"cmdk-group-heading":``,"aria-hidden":!0,id:f},n),$(e,e=>p.createElement(`div`,{"cmdk-group-items":``,role:`group`,"aria-labelledby":n?f:void 0},p.createElement(z.Provider,{value:g},e))))}),U=p.forwardRef((e,t)=>{let{alwaysRender:n,...r}=e,i=p.useRef(null),o=Q(e=>!e.search);return!n&&!o?null:p.createElement(c.div,{ref:a(i,t),...r,"cmdk-separator":``,role:`separator`})}),W=p.forwardRef((e,t)=>{let{onValueChange:n,...r}=e,i=e.value!=null,a=R(),o=Q(e=>e.search),s=Q(e=>e.selectedItemId),l=L();return p.useEffect(()=>{e.value!=null&&a.setState(`search`,e.value)},[e.value]),p.createElement(c.input,{ref:t,...r,"cmdk-input":``,autoComplete:`off`,autoCorrect:`off`,spellCheck:!1,"aria-autocomplete":`list`,role:`combobox`,"aria-expanded":!0,"aria-controls":l.listId,"aria-labelledby":l.labelId,"aria-activedescendant":s,id:l.inputId,type:`text`,value:i?e.value:o,onChange:e=>{i||a.setState(`search`,e.target.value),n?.(e.target.value)}})}),G=p.forwardRef((e,t)=>{let{children:n,label:r=`Suggestions`,...i}=e,o=p.useRef(null),s=p.useRef(null),l=Q(e=>e.selectedItemId),u=L();return p.useEffect(()=>{if(s.current&&o.current){let e=s.current,t=o.current,n,r=new ResizeObserver(()=>{n=requestAnimationFrame(()=>{let n=e.offsetHeight;t.style.setProperty(`--cmdk-list-height`,n.toFixed(1)+`px`)})});return r.observe(e),()=>{cancelAnimationFrame(n),r.unobserve(e)}}},[]),p.createElement(c.div,{ref:a(o,t),...i,"cmdk-list":``,role:`listbox`,tabIndex:-1,"aria-activedescendant":l,"aria-label":r,id:u.listId},$(e,e=>p.createElement(`div`,{ref:a(s,u.listInnerRef),"cmdk-list-sizer":``},e)))}),K=p.forwardRef((e,t)=>{let{open:n,onOpenChange:r,overlayClassName:i,contentClassName:a,container:o,...s}=e;return p.createElement(f,{open:n,onOpenChange:r},p.createElement(u,{container:o},p.createElement(l,{"cmdk-overlay":``,className:i}),p.createElement(d,{"aria-label":e.label,"cmdk-dialog":``,className:a},p.createElement(B,{ref:t,...s}))))}),q=p.forwardRef((e,t)=>Q(e=>e.filtered.count===0)?p.createElement(c.div,{ref:t,...e,"cmdk-empty":``,role:`presentation`}):null),re=p.forwardRef((e,t)=>{let{progress:n,children:r,label:i=`Loading...`,...a}=e;return p.createElement(c.div,{ref:t,...a,"cmdk-loading":``,role:`progressbar`,"aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":i},$(e,e=>p.createElement(`div`,{"aria-hidden":!0},e)))}),J=Object.assign(B,{List:G,Item:V,Input:W,Group:H,Separator:U,Dialog:K,Empty:q,Loading:re});function ie(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return n;n=n.nextElementSibling}}function ae(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return n;n=n.previousElementSibling}}function Y(e){let t=p.useRef(e);return X(()=>{t.current=e}),t}var X=typeof window>`u`?p.useEffect:p.useLayoutEffect;function Z(e){let t=p.useRef();return t.current===void 0&&(t.current=e()),t}function Q(e){let t=R(),n=()=>e(t.snapshot());return p.useSyncExternalStore(t.subscribe,n,n)}function oe(e,t,n,r=[]){let i=p.useRef(),a=L();return X(()=>{var o;let s=(()=>{for(let e of n){if(typeof e==`string`)return e.trim();if(typeof e==`object`&&`current`in e)return e.current?e.current.textContent?.trim():i.current}})(),c=r.map(e=>e.trim());a.value(e,s,c),(o=t.current)==null||o.setAttribute(P,s),i.current=s}),i}var se=()=>{let[e,t]=p.useState(),n=Z(()=>new Map);return X(()=>{n.current.forEach(e=>e()),n.current=new Map},[e]),(e,r)=>{n.current.set(e,r),t({})}};function ce(e){let t=e.type;return typeof t==`function`?t(e.props):`render`in t?t.render(e.props):e}function $({asChild:e,children:t},n){return e&&p.isValidElement(t)?p.cloneElement(ce(t),{ref:t.ref},n(t.props.children)):n(t)}var le={position:`absolute`,width:`1px`,height:`1px`,padding:`0`,margin:`-1px`,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,borderWidth:`0`};function ue({className:e,...t}){return(0,m.jsx)(J,{className:i(`flex size-full flex-col overflow-hidden rounded-md bg-transparent text-popover-foreground`,e),...t})}function de({className:e,...t}){return(0,m.jsxs)(`div`,{className:`flex items-center border-b border-border px-3`,"cmdk-input-wrapper":``,"data-slot":`command-input`,children:[(0,m.jsx)(s,{className:`me-2 size-4 shrink-0 opacity-50`}),(0,m.jsx)(J.Input,{className:i(`flex h-11 w-full rounded-md bg-transparent py-3 text-(length:--text-control) text-foreground outline-hidden placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50`,e),...t})]})}function fe({className:e,...t}){return(0,m.jsx)(J.List,{className:i(`max-h-[300px] overflow-x-hidden overflow-y-auto p-1`,e),"data-slot":`command-list`,...t})}function pe({...e}){return(0,m.jsx)(J.Empty,{className:`py-6 text-center text-sm`,"data-slot":`command-empty`,...e})}function me({className:e,...t}){return(0,m.jsx)(J.Group,{className:i(`overflow-hidden p-1.5 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground`,e),"data-slot":`command-group`,...t})}function he({className:e,...t}){return(0,m.jsx)(J.Separator,{className:i(`-mx-1.5 h-px bg-border`,e),"data-slot":`command-separator`,...t})}function ge({className:e,...t}){return(0,m.jsx)(J.Item,{className:i(`relative flex cursor-default items-center gap-2 rounded-xs px-2 py-1.5 text-(length:--text-control) text-foreground outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-[selected=true]:bg-interactive-hover [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`,`[&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 [&_svg]:stroke-[1.5px]`,e),"data-slot":`command-item`,...t})}function _e({icon:e=o,className:t,...n}){return(0,m.jsx)(e,{className:i(`ms-auto size-4 text-primary`,t),"data-check":`true`,"data-slot":`command-check`,...n})}export{de as a,he as c,me as i,F as l,_e as n,ge as o,pe as r,fe as s,ue as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{g as r}from"./framework-provider-CFLwK5uS.js";import{i,n as a,t as o}from"./hooks-CJepWnbB.js";import{t as s}from"./build-CsiH26uS.js";import{_ as c,n as l}from"./chunk-KS7C4IRE-DCsL4i4D.js";import{c as u,f as d,m as f}from"./dist-Cb5RSHSg.js";import{t as p}from"./box-By_EgGtm.js";import{t as m}from"./container-LiZf3XdY.js";import{A as h,An as g,Dn as _,Ft as v,Jn as y,Lt as b,Mn as x,On as S,Pt as C,Rt as w,Sn as T,Vn as ee,Zn as E,a as te,ar as ne,at as re,fn as ie,gn as ae,gt as D,ht as oe,k as se,kn as ce,t as O,u as le,vn as ue,wn as de}from"./button-BshWPHvn.js";import{i as fe,n as pe,r as me,t as he}from"./tabs-BhzVdh5p.js";import{a as ge,i as _e}from"./filters-DtYpAkDd.js";import{t as ve}from"./checkbox-1G6KfK2q.js";import{t as k}from"./empty-indicator-WB1WgT9h.js";import{t as ye}from"./label-CiRS3i_f.js";import{$r as A,Ar as j,Gn as be,Ir as M,Jn as xe,Kn as Se,Lr as N,Mr as P,Nr as F,Or as I,Pr as L,Rr as Ce,Ur as R,Yn as we,Yr as Te,Zr as Ee,ai as De,cr as Oe,h as ke,ir as Ae,jr as je,lr as z,pr as B,sr as Me,v as Ne,zn as Pe,zr as V}from"./index-BJz9Zlsc.js";import{t as H}from"./page-header-l7vXmLIw.js";import{S as Fe,T as Ie,_ as Le,a as Re,b as ze,c as Be,f as U,g as Ve,h as He,i as Ue,l as We,m as Ge,n as Ke,o as qe,r as Je,s as Ye,t as Xe,u as Ze,v as Qe,w as $e,x as et,y as tt}from"./filters-By5KQeV6.js";import{t as W}from"./list-page-CdsnQR9N.js";import{n as nt,r as rt}from"./filter-sources-QeqFGNRB.js";import{i as it,n as at,r as ot,t as st}from"./virtual-list-D3MfPNOh.js";import{t as ct}from"./get-site-timezone-HgL0jI_F.js";var G=e(t(),1),K=Xe({status:{operators:[`is`],ui:{label:`Status`,type:`select`,searchable:!1,hideOperatorSelect:!0},options:[{value:`published`,label:`Published`},{value:`hidden`,label:`Hidden`}],codec:U()},created_at:$e({operators:Ve,ui:{label:`Date`,defaultOperator:Qe,type:`date`},codec:Ze()}),body:{operators:[`contains`,`does-not-contain`],parseKeys:[`html`],ui:{label:`Text`,type:`text`,placeholder:`Search comment text...`,defaultOperator:`contains`,className:`w-full max-w-48`,popoverContentClassName:`w-full max-w-48`},codec:Ge({field:`html`})},post:{operators:[`is`,`is-not`],parseKeys:[`post_id`],ui:{label:`Post`,type:`select`,searchable:!0,className:`w-full max-w-80`,popoverContentClassName:`w-full max-w-[calc(100vw-32px)] max-w-80`},codec:U({field:`post_id`})},author:{operators:[`is`,`is-not`],parseKeys:[`member_id`],ui:{label:`Author`,type:`select`,searchable:!0,className:`w-80`,popoverContentClassName:`w-80`},codec:U({field:`member_id`})},reported:{operators:[`is`],parseKeys:[`count.reports`],ui:{label:`Reported`,type:`select`,searchable:!1,hideOperatorSelect:!0},options:[{value:`true`,label:`Yes`},{value:`false`,label:`No`}],codec:{parse(e,t){let n=tt(e);return!n||n.field!==`count.reports`?null:n.operator===`$eq`&&n.value===0?{field:t.key,operator:`is`,values:[`false`]}:n.operator===`$gt`&&n.value===0?{field:t.key,operator:`is`,values:[`true`]}:null},serialize(e){let t=e.values[0];return e.operator===`is`?t===`true`?[`count.reports:>0`]:t===`false`?[`count.reports:0`]:null:null}}}}),lt=[`author`,`post`,`body`,`status`,`reported`,`created_at`],ut={...Le,...et};function dt(e){switch(e){case`author`:return G.createElement(le,{className:`size-4`});case`post`:return G.createElement(de,{className:`size-4`});case`body`:return G.createElement(v,{className:`size-4`});case`status`:return G.createElement(ee,{className:`size-4`});case`reported`:return G.createElement(T,{className:`size-4`});case`created_at`:return G.createElement(ne,{className:`size-4`});default:return}}function ft({postValueSource:e,memberValueSource:t,siteTimezone:n=`UTC`}){return(0,G.useMemo)(()=>{let r=He(n);return lt.map(n=>{let i=K[n],a=n===`created_at`?{defaultValue:r,...Fe(i)?{customRenderer:ze(r)}:{}}:{};return{key:n,...i.ui,icon:dt(n),operators:We(i.operators,{labels:ut}),...`options`in i&&i.options?{options:i.options}:{},...a,...n===`author`?{valueSource:t}:{},...n===`post`?{valueSource:e}:{}}})},[t,e,n])}var q=n(),pt=({filters:e,siteTimezone:t,onFiltersChange:n})=>{let r=nt(),i=ft({memberValueSource:rt(),postValueSource:r,siteTimezone:t}),a=e.length>0;return(0,q.jsx)(_e,{addButtonIcon:a?(0,q.jsx)(ue,{}):(0,q.jsx)(ae,{}),addButtonText:a?`Add filter`:`Filter`,allowMultiple:!1,className:`[&>button]:order-last ${a?`[&>button]:border-none`:`w-auto`}`,clearButtonClassName:`font-normal text-muted-foreground`,clearButtonIcon:(0,q.jsx)(te,{}),clearButtonText:`Clear`,fields:i,filters:e,keyboardShortcut:`f`,popoverAlign:a?`start`:`end`,showClearButton:a,showSearchInput:!1,onChange:n})},J=`CommentsResponseType`,mt=`count.dislikes`,Y=e=>[`member`,`post`,`count.replies`,`count.direct_replies`,`count.likes`,...e?[mt]:[],`count.reports`,`parent`,`in_reply_to`].join(`,`),ht=e=>[`member`,`post`,`count.direct_replies`,`count.likes`,...e?[mt]:[],`count.reports`,`parent`,`in_reply_to`].join(`,`),gt=o({dataType:J,path:`/comments/`,defaultNextPageParams:(e,t)=>e.meta?.pagination.next?{...t,page:(e.meta?.pagination.next||1).toString()}:void 0,returnData:e=>{let{pages:t}=e,n=t.flatMap(e=>e.comments),r=t[t.length-1].meta;return{comments:n,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),_t=e=>gt({...e,searchParams:{limit:`100`,order:`created_at desc`,include:`member,post,parent`,...e?.searchParams}}),vt=a({method:`PUT`,path:({id:e})=>`/comments/${e}/`,body:({id:e})=>({comments:[{id:e,status:`hidden`}]}),invalidateQueries:{dataType:J}}),yt=a({method:`PUT`,path:({id:e})=>`/comments/${e}/`,body:({id:e})=>({comments:[{id:e,status:`published`}]}),invalidateQueries:{dataType:J}});a({method:`PUT`,path:({id:e})=>`/comments/${e}/`,body:({id:e})=>({comments:[{id:e,status:`deleted`}]}),invalidateQueries:{dataType:J}});var bt=a({method:`PUT`,path:({id:e})=>`/comments/${e}/`,body:({id:e})=>({comments:[{id:e,pinned:!0}]}),invalidateQueries:{dataType:J}}),X=a({method:`PUT`,path:({id:e})=>`/comments/${e}/`,body:({id:e})=>({comments:[{id:e,pinned:!1}]}),invalidateQueries:{dataType:J}});i({dataType:J,path:e=>`/comments/${e}/replies/`,defaultSearchParams:{include:`member,post,count.replies,count.likes,count.reports,parent`,limit:`100`}});var xt=i({dataType:J,path:e=>`/comments/${e}/`,defaultSearchParams:{include:Y(!1)}}),St=(e,t)=>{let{dislikesEnabled:n=!1,searchParams:r,...i}=t||{};return xt(e,{...i,searchParams:{include:Y(n),...r}})},Ct=i({dataType:`CommentReportsResponseType`,path:e=>`/comments/${e}/reports/`}),wt=(e,t)=>Ct(e,{...t}),Tt=i({dataType:`CommentLikesResponseType`,path:e=>`/comments/${e}/likes/`,defaultSearchParams:{include:`member`,limit:`100`,order:`created_at desc`}}),Et=(e,t)=>Tt(e,{...t}),Dt=i({dataType:`CommentDislikesResponseType`,path:e=>`/comments/${e}/dislikes/`,defaultSearchParams:{include:`member`,limit:`100`,order:`created_at desc`}}),Ot=(e,t)=>Dt(e,{...t}),kt=(e,t)=>{let{dislikesEnabled:n=!1,...r}=t||{};return _t({...r,searchParams:{filter:`(parent_id:${e}+in_reply_to_id:null),in_reply_to_id:${e}`,order:`created_at asc`,include:ht(n),limit:`100`}})};function At({onClick:e,expanded:t}){return(0,q.jsxs)(O,{className:`shrink-0 gap-0.5 self-start p-0 text-base hover:bg-transparent`,variant:`ghost`,onClick:e,children:[t?`Show less`:`Show more`,t?(0,q.jsx)(y,{}):(0,q.jsx)(E,{})]})}function jt({item:e}){let t=(0,G.useRef)(null),[n,r]=(0,G.useState)(!1),[i,a]=(0,G.useState)(!1);return(0,G.useEffect)(()=>{if(i)return;let e=()=>{t.current&&r(t.current.scrollHeight>t.current.clientHeight)};return e(),window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[e.html,i]),(0,q.jsx)(`div`,{className:`mt-2 flex flex-col gap-2`,children:(0,q.jsxs)(`div`,{className:`flex max-w-full flex-col items-start ${e.status===`hidden`&&`opacity-50`}`,children:[(0,q.jsx)(`div`,{dangerouslySetInnerHTML:{__html:e.html||``},ref:t,className:u(`prose balance max-w-[80ch] flex-1 text-base leading-[1.5em] [&_*]:text-base [&_*]:leading-[1.5em] [&_*]:font-normal [&_a]:underline [&_blockquote]:border-l-[3px] [&_blockquote]:border-foreground [&_blockquote]:p-0 [&_blockquote]:pl-3 [&_blockquote_p]:mt-0`,i?`-mb-1 [&_p]:mb-[0.85em]`:`mb-1 line-clamp-2 [&_blockquote+p]:mt-1 [&_p]:m-0`)}),n&&(0,q.jsx)(At,{expanded:i,onClick:()=>a(!i)})]})})}function Mt(e){let t=new Date(e);return new Intl.DateTimeFormat(`en-US`,{month:`short`,day:`numeric`,year:`numeric`,hour:`numeric`,minute:`numeric`}).format(t).replace(/(\d+),(\s+\d{4})/,`$1$2`)}var Nt=u(Oe({variant:`warning`}),`gap-1 hover:bg-state-warning/30`);function Pt({memberName:e,memberId:t,createdAt:n,isHidden:r,canComment:i,isPinned:a,onAuthorClick:o,postTitle:s,onPostClick:c,onUnpinClick:l,className:d}){return(0,q.jsxs)(`div`,{className:u(`flex items-center gap-2`,d),children:[(0,q.jsxs)(`div`,{className:u(`flex min-w-0 items-center gap-x-1`,r&&`opacity-50`),children:[(0,q.jsx)(`div`,{className:`whitespace-nowrap`,children:t&&o?(0,q.jsx)(O,{className:`flex h-auto items-center gap-1.5 truncate p-0 text-md font-semibold text-primary hover:opacity-70`,variant:`link`,onClick:o,children:e||`Unknown`}):(0,q.jsx)(`span`,{className:`block truncate font-semibold`,children:e||`Unknown`})}),i===!1&&(0,q.jsxs)(M,{children:[(0,q.jsx)(V,{asChild:!0,children:(0,q.jsx)(`span`,{"data-testid":`commenting-disabled-indicator`,children:(0,q.jsx)(w,{className:`size-3.5 text-muted-foreground`})})}),(0,q.jsx)(N,{children:`Comments disabled`})]}),(0,q.jsx)(x,{className:`shrink-0 text-muted-foreground/50`,size:16}),(0,q.jsx)(`div`,{className:`shrink-0 whitespace-nowrap`,children:n&&(0,q.jsxs)(M,{children:[(0,q.jsx)(V,{asChild:!0,children:(0,q.jsx)(`span`,{className:`cursor-default text-sm text-muted-foreground`,children:f(n)})}),(0,q.jsx)(N,{children:Mt(n)})]})}),s&&(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`div`,{className:`shrink-0 text-muted-foreground`,children:`on`}),(0,q.jsx)(`div`,{className:`min-w-0 truncate`,children:c?(0,q.jsx)(O,{className:`block h-auto w-full cursor-pointer truncate p-0 text-left font-medium text-gray-800 hover:opacity-70 dark:text-gray-400`,variant:`link`,onClick:c,children:s}):(0,q.jsx)(`span`,{className:`font-medium text-gray-800 dark:text-gray-400`,children:s})})]})]}),r&&(0,q.jsx)(Me,{variant:`secondary`,children:`Hidden`}),a&&(l?(0,q.jsxs)(`button`,{"aria-label":`Unpin comment`,className:u(`group`,Nt),type:`button`,onClick:e=>{e.stopPropagation(),l?.()},children:[(0,q.jsxs)(`span`,{className:`grid size-3 shrink-0`,children:[(0,q.jsx)(D,{className:`col-start-1 row-start-1 size-3 group-hover:opacity-0 group-focus-visible:opacity-0`}),(0,q.jsx)(oe,{className:`col-start-1 row-start-1 size-3 opacity-0 group-hover:opacity-100 group-focus-visible:opacity-100`})]}),(0,q.jsxs)(`span`,{className:`grid justify-items-start text-left`,children:[(0,q.jsx)(`span`,{className:`col-start-1 row-start-1 group-hover:opacity-0 group-focus-visible:opacity-0`,children:`Pinned`}),(0,q.jsx)(`span`,{className:`col-start-1 row-start-1 opacity-0 group-hover:opacity-100 group-focus-visible:opacity-100`,children:`Unpin`})]})]}):(0,q.jsxs)(Me,{className:`gap-1`,variant:`warning`,children:[(0,q.jsx)(D,{className:`size-3`}),`Pinned`]}))]})}function Ft({open:e,memberName:t,onOpenChange:n,onConfirm:r}){let[i,a]=(0,G.useState)(!1),o=e=>{e||a(!1),n(e)};return(0,q.jsx)(I,{open:e,onOpenChange:o,children:(0,q.jsxs)(j,{className:`gap-5`,children:[(0,q.jsxs)(F,{children:[(0,q.jsx)(L,{children:`Disable comments`}),(0,q.jsxs)(je,{children:[t||`This member`,` won't be able to comment in the future. You can re-enable commenting anytime.`]})]}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(ve,{checked:i,id:`hide-comments`,onCheckedChange:e=>a(e===!0)}),(0,q.jsx)(ye,{htmlFor:`hide-comments`,children:`Hide all previous comments`})]}),(0,q.jsxs)(P,{children:[(0,q.jsx)(O,{variant:`outline`,onClick:()=>o(!1),children:`Cancel`}),(0,q.jsx)(O,{onClick:()=>{r(i),a(!1)},children:`Disable comments`})]})]})})}function It({comment:e}){let{mutate:t}=ke(),{mutate:n}=Ne(),{mutate:r}=bt(),{mutate:i}=X(),[a,o]=(0,G.useState)(!1),{id:s,post:c,member:l}=e,u=c?.url,d=l?.id,f=l?.can_comment,p=!e.parent_id&&e.status!==`deleted`;return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(Te,{children:[(0,q.jsx)(De,{asChild:!0,children:(0,q.jsx)(O,{className:`relative z-10 text-gray-800 hover:bg-secondary [&_svg]:size-4`,size:`sm`,variant:`ghost`,children:(0,q.jsx)(g,{})})}),(0,q.jsxs)(Ee,{align:`start`,children:[u&&(0,q.jsx)(A,{asChild:!0,children:(0,q.jsxs)(`a`,{href:`${u}#ghost-comments-${s}`,rel:`noopener noreferrer`,target:`_blank`,children:[(0,q.jsx)(ce,{className:`size-4`}),`View on post`]})}),d&&(0,q.jsx)(A,{asChild:!0,children:(0,q.jsxs)(`a`,{href:`#/members/${d}`,children:[(0,q.jsx)(le,{className:`size-4`}),`View member`]})}),p&&(e.pinned?(0,q.jsxs)(A,{onClick:()=>i({id:s}),children:[(0,q.jsx)(oe,{className:`size-4`}),`Unpin comment`]}):(0,q.jsxs)(A,{onClick:()=>r({id:s}),children:[(0,q.jsx)(D,{className:`size-4`}),`Pin comment`]})),d&&(f===!1?(0,q.jsxs)(A,{onClick:()=>{d&&n({id:d})},children:[(0,q.jsx)(b,{className:`size-4`}),`Enable commenting`]}):(0,q.jsxs)(A,{onClick:()=>o(!0),children:[(0,q.jsx)(w,{className:`size-4`}),`Disable commenting`]}))]})]}),(0,q.jsx)(Ft,{memberName:l?.name,open:a,onConfirm:e=>{d&&(t({id:d,reason:`Disabled from comment ${s}`,hideComments:e}),o(!1))},onOpenChange:o})]})}function Lt({comment:e,dislikesEnabled:t,open:n,defaultTab:r=`likes`,onOpenChange:i}){let{data:a,isLoading:o}=Et(e.id,{enabled:n}),{data:s,isLoading:c}=Ot(e.id,{enabled:n&&t}),l=a?.comment_likes??[],u=t?s?.comment_dislikes??[]:[],p=e.count?.likes??0,m=t?e.count?.dislikes??0:0,g=Math.max(0,p-l.length),_=Math.max(0,m-u.length);return(0,q.jsx)(I,{open:n,onOpenChange:i,children:(0,q.jsxs)(j,{"aria-describedby":void 0,children:[(0,q.jsx)(F,{children:(0,q.jsx)(L,{children:t?(0,q.jsxs)(q.Fragment,{children:[d(p),` `,p===1?`like`:`likes`,` and `,d(m),` `,m===1?`dislike`:`dislikes`]}):(0,q.jsxs)(q.Fragment,{children:[d(p),` `,p===1?`like`:`likes`]})})}),(0,q.jsx)(`div`,{className:`overflow-hidden rounded-md border p-3`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-start gap-3`,children:[(0,q.jsx)(z,{className:`shrink-0`,email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-col overflow-hidden`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 text-sm`,children:[(0,q.jsx)(`span`,{className:`shrink-0 font-semibold`,children:e.member?R(e.member):`Deleted member`}),(0,q.jsx)(x,{className:`shrink-0 text-muted-foreground/50`,size:16}),(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.created_at&&f(e.created_at)}),(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:`on`}),(0,q.jsx)(`span`,{className:`min-w-0 truncate font-medium text-gray-800 dark:text-gray-400`,children:e.post?.title||`Unknown post`})]}),(0,q.jsx)(`div`,{dangerouslySetInnerHTML:{__html:e.html||``},className:`prose mt-2 line-clamp-2 text-sm [&_*]:text-sm [&_*]:leading-[1.5em] [&_p]:m-0`})]})]})}),t?(0,q.jsxs)(he,{defaultValue:r,variant:`segmented`,children:[(0,q.jsxs)(me,{className:`grid w-full grid-cols-2`,children:[(0,q.jsx)(fe,{value:`likes`,children:`Likes`}),(0,q.jsx)(fe,{value:`dislikes`,children:`Dislikes`})]}),(0,q.jsx)(pe,{className:`mt-4`,value:`likes`,children:(0,q.jsx)(`div`,{className:`-mx-1 max-h-64 overflow-y-auto px-1`,children:o?(0,q.jsx)(`div`,{className:`flex justify-center py-4`,children:(0,q.jsx)(B,{size:`md`})}):l.length===0?(0,q.jsx)(`div`,{className:`py-4 text-center text-sm text-muted-foreground`,children:`No likes yet`}):(0,q.jsxs)(`div`,{className:`flex flex-col gap-3 pb-1`,children:[l.map(e=>(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,q.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,q.jsx)(z,{email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsx)(`div`,{className:`absolute -right-0.5 -bottom-0.5 flex size-4 items-center justify-center rounded-full bg-gray-500 text-white`,children:(0,q.jsx)(se,{className:`size-2.5`,fill:`currentColor`})})]}),(0,q.jsx)(`span`,{className:`font-medium`,children:e.member?R(e.member):`Deleted member`})]}),(0,q.jsx)(`span`,{className:`shrink-0 text-sm text-muted-foreground`,children:f(e.created_at)})]},e.id)),g>0&&(0,q.jsxs)(`div`,{className:`pt-1 text-center text-sm text-muted-foreground`,children:[`and `,d(g),` more`]})]})})}),(0,q.jsx)(pe,{className:`mt-4`,value:`dislikes`,children:(0,q.jsx)(`div`,{className:`-mx-1 max-h-64 overflow-y-auto px-1`,children:c?(0,q.jsx)(`div`,{className:`flex justify-center py-4`,children:(0,q.jsx)(B,{size:`md`})}):u.length===0?(0,q.jsx)(`div`,{className:`py-4 text-center text-sm text-muted-foreground`,children:`No dislikes yet`}):(0,q.jsxs)(`div`,{className:`flex flex-col gap-3 pb-1`,children:[u.map(e=>(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,q.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,q.jsx)(z,{email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsx)(`div`,{className:`absolute -right-0.5 -bottom-0.5 flex size-4 items-center justify-center rounded-full bg-gray-500 text-white`,children:(0,q.jsx)(h,{className:`size-2.5`,fill:`currentColor`})})]}),(0,q.jsx)(`span`,{className:`font-medium`,children:e.member?R(e.member):`Deleted member`})]}),(0,q.jsx)(`span`,{className:`shrink-0 text-sm text-muted-foreground`,children:f(e.created_at)})]},e.id)),_>0&&(0,q.jsxs)(`div`,{className:`pt-1 text-center text-sm text-muted-foreground`,children:[`and `,d(_),` more`]})]})})})]}):(0,q.jsx)(`div`,{className:`-mx-1 max-h-64 overflow-y-auto px-1`,children:o?(0,q.jsx)(`div`,{className:`flex justify-center py-4`,children:(0,q.jsx)(B,{size:`md`})}):(0,q.jsxs)(`div`,{className:`flex flex-col gap-3 pb-1`,children:[l.map(e=>(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,q.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,q.jsx)(z,{email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsx)(`div`,{className:`absolute -right-0.5 -bottom-0.5 flex size-4 items-center justify-center rounded-full bg-pink-500 text-white`,children:(0,q.jsx)(ie,{className:`size-2.5`,fill:`currentColor`})})]}),(0,q.jsx)(`span`,{className:`font-medium`,children:e.member?R(e.member):`Deleted member`})]}),(0,q.jsx)(`span`,{className:`shrink-0 text-sm text-muted-foreground`,children:f(e.created_at)})]},e.id)),g>0&&(0,q.jsxs)(`div`,{className:`pt-1 text-center text-sm text-muted-foreground`,children:[`and `,d(g),` more`]})]})}),(0,q.jsx)(P,{children:(0,q.jsx)(O,{onClick:()=>i(!1),children:`OK`})})]})})}function Rt({comment:e,open:t,onOpenChange:n}){let{data:r,isLoading:i}=wt(e.id,{enabled:t}),a=r?.comment_reports??[],o=e.count?.reports??a.length;return(0,q.jsx)(I,{open:t,onOpenChange:n,children:(0,q.jsxs)(j,{"aria-describedby":void 0,children:[(0,q.jsx)(F,{children:(0,q.jsxs)(L,{children:[o,` `,o===1?`report`:`reports`]})}),(0,q.jsx)(`div`,{className:`overflow-hidden rounded-md border p-3`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-start gap-3`,children:[(0,q.jsx)(z,{className:`shrink-0`,email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-col overflow-hidden`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 text-sm`,children:[(0,q.jsx)(`span`,{className:`shrink-0 font-semibold`,children:e.member?R(e.member):`Deleted member`}),(0,q.jsx)(x,{className:`shrink-0 text-muted-foreground/50`,size:16}),(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.created_at&&f(e.created_at)}),(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:`on`}),(0,q.jsx)(`span`,{className:`min-w-0 truncate font-medium text-gray-800 dark:text-gray-400`,children:e.post?.title||`Unknown post`})]}),(0,q.jsx)(`div`,{dangerouslySetInnerHTML:{__html:e.html||``},className:`prose mt-2 line-clamp-2 text-sm [&_*]:text-sm [&_*]:leading-[1.5em] [&_p]:m-0`})]})]})}),(0,q.jsx)(`div`,{className:`-mx-1 max-h-64 overflow-y-auto px-1`,children:i?(0,q.jsx)(`div`,{className:`flex justify-center py-4`,children:(0,q.jsx)(B,{size:`md`})}):(0,q.jsx)(`div`,{className:`flex flex-col gap-3 pb-1`,children:a.map(e=>(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,q.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,q.jsx)(z,{email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsx)(`div`,{className:`absolute -right-0.5 -bottom-0.5 flex size-4 items-center justify-center rounded-full bg-red text-white`,children:(0,q.jsx)(T,{className:`size-2.5`,fill:`currentColor`})})]}),(0,q.jsx)(`span`,{className:`font-medium`,children:e.member?R(e.member):`Deleted member`})]}),(0,q.jsx)(`span`,{className:`shrink-0 text-sm text-muted-foreground`,children:f(e.created_at)})]},e.id))})}),(0,q.jsx)(P,{children:(0,q.jsx)(O,{onClick:()=>n(!1),children:`OK`})})]})})}function Z(e,t){if(!t)return;let n=new URLSearchParams(e);return n.set(`thread`,`is:${t}`),`?${n.toString()}`}function Q({icon:e,count:t,label:n,to:r,onClick:i,className:a,testId:o}){let s=u(`flex items-center gap-1 text-xs text-gray-800`,a),c=(0,q.jsxs)(q.Fragment,{children:[e,(0,q.jsx)(`span`,{children:d(t)})]}),f=r||i;return(0,q.jsxs)(M,{children:[(0,q.jsx)(V,{asChild:!0,children:r?(0,q.jsx)(l,{className:u(s,`cursor-pointer hover:opacity-70`),"data-testid":o,to:r,onClick:e=>{e.stopPropagation()},children:c}):i?(0,q.jsx)(`button`,{className:u(s,`cursor-pointer hover:opacity-70`),"data-testid":o,type:`button`,onClick:e=>{e.stopPropagation(),i()},children:c}):(0,q.jsx)(`div`,{className:s,"data-testid":o,children:c})}),(0,q.jsx)(N,{children:f?`View ${n.toLowerCase()}`:n})]})}function zt({comment:e,dislikesEnabled:t,className:n}){let[r]=c(),[i,a]=(0,G.useState)(!1),[o,s]=(0,G.useState)(`likes`),[l,d]=(0,G.useState)(!1),f=Z(r,e.id),p=e.count?.direct_replies??e.replies?.length??0,m=e.count?.likes??0,g=t?e.count?.dislikes??0:0,_=e.count?.reports??0,v=p>0,y=m>0,b=g>0,x=_>0;return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`div`,{className:u(`flex items-center gap-6`,n),children:[(0,q.jsx)(Q,{count:p,icon:(0,q.jsx)(re,{size:16,strokeWidth:1.5}),label:`Replies`,testId:`replies-metric`,to:v?f:void 0}),t?(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,q.jsx)(Q,{count:m,icon:(0,q.jsx)(se,{size:16,strokeWidth:1.5}),label:`Likes`,testId:`likes-metric`,onClick:y?()=>{s(`likes`),a(!0)}:void 0}),(0,q.jsx)(Q,{count:g,icon:(0,q.jsx)(h,{size:16,strokeWidth:1.5}),label:`Dislikes`,testId:`dislikes-metric`,onClick:b?()=>{s(`dislikes`),a(!0)}:void 0})]}):(0,q.jsx)(Q,{count:m,icon:(0,q.jsx)(ie,{size:16,strokeWidth:1.5}),label:`Likes`,onClick:y?()=>a(!0):void 0}),(0,q.jsx)(Q,{className:x?`font-semibold text-red`:void 0,count:_,icon:(0,q.jsx)(T,{size:16,strokeWidth:1.5}),label:`Reports`,onClick:x?()=>d(!0):void 0})]}),(0,q.jsx)(Lt,{comment:e,defaultTab:o,dislikesEnabled:t,open:i,onOpenChange:a}),(0,q.jsx)(Rt,{comment:e,open:l,onOpenChange:d})]})}function Bt({hasReplies:e}){return e?(0,q.jsx)(`div`,{className:`mb-2 h-full w-px grow rounded bg-gradient-to-b from-muted-foreground/20 from-70% to-transparent`,"data-testid":`replies-line`}):null}function Vt({comment:e,dislikesEnabled:t,isReply:n=!1,isSelectedComment:r=!1,selectedCommentId:i}){let[a]=c(),{mutate:o}=vt(),{mutate:s}=yt(),{mutate:d}=X(),f=(e.replies?.length??0)>0||(e.count?.direct_replies??e.count?.replies??0)>0;return(0,q.jsxs)(`div`,{className:`flex w-full flex-row ${!f||n?`mb-7`:`mb-0`}`,children:[(0,q.jsxs)(`div`,{className:`mr-2 flex shrink-0 flex-col items-center justify-start md:mr-3`,children:[(0,q.jsx)(z,{className:u(`mb-3 size-6 md:mb-4 md:size-8`,e.status===`hidden`&&`opacity-50`),email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsx)(Bt,{hasReplies:f&&!n})]}),(0,q.jsx)(`div`,{className:`grow`,children:(0,q.jsxs)(`div`,{className:`w-full`,"data-testid":`comment-thread-row-${e.id}`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,q.jsx)(Pt,{canComment:e.member?.can_comment,createdAt:e.created_at,isHidden:e.status===`hidden`,isPinned:e.pinned,memberId:e.member?.id,memberName:e.member?.name,onUnpinClick:()=>d({id:e.id})}),e.in_reply_to_snippet&&r&&(0,q.jsxs)(`div`,{className:`mb-1 line-clamp-1 text-sm ${e.status===`hidden`&&`opacity-50`}`,children:[(0,q.jsx)(`span`,{className:`text-muted-foreground`,children:`Replied to:`}),`\xA0`,(0,q.jsx)(l,{className:`text-sm font-normal text-muted-foreground hover:text-foreground`,"data-testid":`replied-to-link`,to:Z(a,e.in_reply_to_id||e.parent_id)||``,onClick:e=>{e.stopPropagation()},children:e.in_reply_to_snippet})]}),(0,q.jsx)(jt,{item:e}),(0,q.jsxs)(`div`,{className:`mt-4 flex flex-row flex-wrap items-center gap-3`,children:[e.status===`published`&&(0,q.jsxs)(O,{className:`text-gray-800`,size:`sm`,variant:`outline`,onClick:()=>o({id:e.id}),children:[(0,q.jsx)(S,{}),(0,q.jsx)(`span`,{className:`max-md:hidden`,children:`Hide`})]}),e.status===`hidden`&&(0,q.jsxs)(O,{className:`text-gray-800`,size:`sm`,variant:`outline`,onClick:()=>s({id:e.id}),children:[(0,q.jsx)(_,{}),(0,q.jsx)(`span`,{className:`max-md:hidden`,children:`Show`})]}),(0,q.jsx)(zt,{comment:e,dislikesEnabled:t}),(0,q.jsx)(It,{comment:e})]})]}),f&&e.replies&&(0,q.jsx)(`div`,{className:`mt-7 mb-4 -ml-2 pl-2 md:mt-8 md:mb-0 md:-ml-3 md:pl-3`,children:e.replies.map(e=>(0,q.jsx)(Vt,{comment:e,dislikesEnabled:t,isReply:!0,selectedCommentId:i},e.id))})]})})]})}var Ht=({selectedComment:e,dislikesEnabled:t,replies:n,selectedCommentId:r,fetchNextPage:i,hasNextPage:a,isFetchingNextPage:o})=>(0,q.jsxs)(`div`,{className:`flex flex-col`,"data-testid":`comment-thread-list`,children:[(0,q.jsx)(Vt,{comment:{...e,replies:n},dislikesEnabled:t,isSelectedComment:!0,selectedCommentId:r}),a&&(0,q.jsx)(`div`,{className:`flex justify-center pb-4`,children:(0,q.jsx)(O,{disabled:o,variant:`outline`,onClick:()=>i(),children:o?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(B,{size:`sm`}),`Loading...`]}):`Load more replies`})})]}),Ut=({commentId:e,dislikesEnabled:t,open:n,onOpenChange:r})=>{let{data:i,isLoading:a,isError:o,fetchNextPage:s,hasNextPage:c,isFetchingNextPage:l}=kt(e??``,{dislikesEnabled:t,enabled:n&&!!e}),{data:u,isLoading:d,isError:f}=St(e??``,{dislikesEnabled:t,enabled:n&&!!e}),p=a||d,m=f||o&&!u,h=u?.comments?.[0],g=i?.comments||[];return(0,q.jsx)(be,{open:n,onOpenChange:r,children:(0,q.jsxs)(Se,{className:`overflow-y-auto px-6 pt-0 sm:max-w-[420px]`,children:[(0,q.jsx)(xe,{className:`sticky top-0 z-40 -mx-6 bg-surface-elevated/60 p-6 backdrop-blur`,children:(0,q.jsx)(we,{className:`text-md`,children:`Thread`})}),h?.post&&(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,q.jsx)(`h3`,{className:`line-clamp-1 text-xl font-semibold text-foreground`,children:h.post.title}),h.post.excerpt&&(0,q.jsx)(`p`,{className:`mt-1 line-clamp-2 text-sm text-muted-foreground`,children:h.post.excerpt})]}),h.post.feature_image&&(0,q.jsx)(`img`,{alt:h.post.title||`Post feature image`,className:`hidden aspect-video h-18 shrink-0 rounded object-cover lg:block`,src:h.post.feature_image})]}),(0,q.jsx)(Ae,{className:`-mx-6 my-6 w-auto`})]}),(0,q.jsx)(`div`,{children:p?(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center py-8`,children:(0,q.jsx)(B,{size:`lg`})}):m||!h?(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center py-8`,children:(0,q.jsx)(k,{actions:(0,q.jsx)(O,{variant:`outline`,onClick:()=>r(!1),children:`Back to comments`}),description:`This thread may have been deleted or doesn't exist.`,title:`Thread not found`,children:(0,q.jsx)(C,{})})}):(0,q.jsx)(Ht,{dislikesEnabled:t,fetchNextPage:()=>void s(),hasNextPage:c,isFetchingNextPage:l,replies:g,selectedComment:h,selectedCommentId:e??``})})]})})},Wt=({height:e})=>(0,q.jsx)(`div`,{"aria-hidden":`true`,className:`flex`,children:(0,q.jsx)(`div`,{className:`flex`,style:{height:e}})}),Gt=(0,G.forwardRef)(function(e,t){return(0,q.jsx)(`div`,{ref:t,...e,"aria-hidden":`true`,className:`relative flex flex-col`,children:(0,q.jsx)(`div`,{className:`relative z-10 h-24 animate-pulse`,children:(0,q.jsx)(`div`,{className:`h-full rounded-md bg-muted`,"data-testid":`loading-placeholder`})})})});function Kt({items:e,totalItems:t,hasNextPage:n,isFetchingNextPage:r,fetchNextPage:i,resetKey:a,onAddFilter:o,isLoading:s,dislikesEnabled:d}){let f=(0,G.useRef)(null),{visibleItemCount:p,canLoadMore:m,loadMore:h}=ot(t,{resetKey:a}),[g,v]=c(),[y,b]=(0,G.useState)(!1),[x,C]=(0,G.useState)(null),{mutate:w}=vt(),{mutate:T}=yt(),{mutate:ee}=X(),E=e=>{if(b(e),!e){let e=new URLSearchParams(g);e.delete(`thread`),v(e,{replace:!0})}};(0,G.useEffect)(()=>{let e=g.get(`thread`);if(e){let t=e.match(/^is:(.+)$/);if(t&&t[1]){let e=t[1];C(e),b(!0)}else b(!1),C(null)}else b(!1),C(null)},[g]),at({parentRef:f,isLoading:s});let{visibleItems:te,spaceBefore:ne,spaceAfter:re}=it({items:e,totalItems:p,hasNextPage:n,isFetchingNextPage:r,fetchNextPage:i,parentRef:f});return(0,q.jsx)(Ce,{children:(0,q.jsxs)(`div`,{ref:f,className:`overflow-hidden border-t`,children:[(0,q.jsx)(`div`,{className:`flex flex-col`,"data-testid":`comments-list`,children:(0,q.jsxs)(`div`,{className:`flex flex-col`,children:[(0,q.jsx)(Wt,{height:ne}),te.map(({key:t,virtualItem:n,item:r,props:i})=>n.index>e.length-1?(0,q.jsx)(Gt,{...i},t):(0,q.jsxs)(`div`,{...i,className:`grid w-full grid-cols-1 items-start justify-between gap-4 border-b p-3 hover:bg-table-row-hover md:p-5 lg:grid-cols-[minmax(0,1fr)_144px]`,"data-testid":`comment-list-row`,onClick:()=>{y&&E(!1)},children:[(0,q.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,q.jsx)(z,{className:u(`mt-0.5 size-6 md:size-8`,r.status===`hidden`&&`opacity-50`),email:r.member?.email,name:r.member?.name,src:r.member?.avatar_image}),(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-3`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsx)(Pt,{canComment:r.member?.can_comment,createdAt:r.created_at,isHidden:r.status===`hidden`,isPinned:r.pinned,memberId:r.member?.id,memberName:r.member?.name,postTitle:r.post?.title,onAuthorClick:r.member?.id?()=>o(`author`,r.member.id):void 0,onPostClick:r.post?.id?()=>o(`post`,r.post.id):void 0,onUnpinClick:()=>ee({id:r.id})}),r.in_reply_to_snippet&&(0,q.jsxs)(`div`,{className:`mb-1 line-clamp-1 max-w-3xl ${r.status===`hidden`&&`opacity-50`}`,children:[(0,q.jsx)(`span`,{className:`text-muted-foreground`,children:`Replied to:`}),`\xA0`,(0,q.jsx)(l,{className:`text-sm font-normal text-muted-foreground hover:text-foreground`,"data-testid":`replied-to-link`,to:Z(g,r.in_reply_to_id||r.parent_id)||``,onClick:e=>{e.stopPropagation()},children:r.in_reply_to_snippet})]})]}),(0,q.jsx)(jt,{item:r}),(0,q.jsxs)(`div`,{className:`flex flex-row flex-nowrap items-center gap-3`,children:[r.status===`published`&&(0,q.jsxs)(O,{className:`text-foreground`,size:`sm`,variant:`outline`,onClick:()=>w({id:r.id}),children:[(0,q.jsx)(S,{}),`Hide`]}),r.status===`hidden`&&(0,q.jsxs)(O,{className:`text-foreground`,size:`sm`,variant:`outline`,onClick:()=>T({id:r.id}),children:[(0,q.jsx)(_,{}),`Show`]}),(0,q.jsx)(zt,{className:`ml-2`,comment:r,dislikesEnabled:d}),(0,q.jsx)(It,{comment:r})]})]})]}),(0,q.jsx)(`div`,{children:r.post?.feature_image?(0,q.jsx)(`img`,{alt:r.post.title||`Post feature image`,className:`hidden aspect-video w-36 rounded object-cover lg:block ${r.status===`hidden`&&`opacity-50`}`,src:r.post.feature_image}):null})]},t)),(0,q.jsx)(Wt,{height:re})]})}),m&&(0,q.jsx)(st,{isLoading:r,onClick:h}),(0,q.jsx)(Ut,{commentId:x,dislikesEnabled:d,open:y,onOpenChange:E})]})})}var qt=Je(K,`date`);function Jt(e){return Be(K,e.field,`UTC`)?.definition.operators.includes(e.operator)??!1}function Yt(e,t){return Array.isArray(e.$and)?e.$and.flatMap(e=>Yt(e,t)):Ke([e],K,t)}function Xt(e,t){let n=Re(e??``);return n?Ye(Yt(n,t).filter(Jt)):[]}function Zt(e){let t=Re(e??``);return t?Ue(t,qt):!1}function $(e,t){return qe(e.filter(Jt),K,t)}var Qt=[`status`,`created_at`,`body`,`post`,`author`,`reported`],$t={is_not:`is-not`,not_contains:`does-not-contain`,before:`is-less`,after:`is-greater`,on_or_before:`is-or-less`,on_or_after:`is-or-greater`};function en(e){let t=e.indexOf(`:`);if(t<=0)return null;let n=e.substring(0,t),r=e.substring(t+1);return r?{operator:$t[n]??n,value:r}:null}function tn(e){let t=[];for(let[n,r]of e.entries()){if(!Qt.includes(n))continue;let e=en(r);e&&t.push({id:`${n}:${t.length+1}`,field:n,operator:e.operator,values:[e.value]})}return t}function nn(e){Qt.forEach(t=>e.delete(t))}function rn(e,t,n){let r=new URLSearchParams(e),i=$(t,n);return r.delete(`filter`),nn(r),i&&r.set(`filter`,i),r}function an(e,t,n=!t){return!!e&&n&&!t&&Zt(e)}function on(e){let[t,n]=c(),r=(0,G.useRef)(null),i=(0,G.useMemo)(()=>t.get(`filter`)??void 0,[t]),a=(0,G.useMemo)(()=>t.toString(),[t]),o=(0,G.useMemo)(()=>i===void 0?tn(t):Xt(i,e),[i,t,e]),[s,l]=(0,G.useState)(o),u=(0,G.useMemo)(()=>$(s,e),[s,e]);return(0,G.useEffect)(()=>{a!==r.current&&(l(o),r.current=a)},[a,o]),(0,G.useEffect)(()=>{if(r.current!==null&&a!==r.current)return;let i=rn(t,s,e),o=i.toString();o!==a&&(r.current=o,n(i,{replace:!0}))},[a,s,t,n,e]),{filters:s,nql:u,setFilters:(0,G.useCallback)((i,a={})=>{let o=typeof i==`function`?i(s):i,c=rn(t,o,e),u=a.replace??!0;l(o),r.current=c.toString(),n(c,{replace:u})},[s,t,n,e]),clearFilters:(0,G.useCallback)(({replace:e=!0}={})=>{let i=new URLSearchParams(t);i.delete(`filter`),nn(i),l([]),r.current=i.toString(),n(i,{replace:e})},[t,n])}}function sn(e){return e.get(`id`)?.match(/^is:(.+)$/)?.[1]}var cn=({timezone:e,singleCommentId:t})=>{let[n,i]=c(),{filters:a,nql:o,setFilters:l}=on(e),u=(0,G.useCallback)((r,o,s=`is`)=>{let c=[...a.filter(e=>e.field!==r),ge(r,s,[o])];if(!t){l(c,{replace:!1});return}let u=new URLSearchParams(n),d=$(c,e);u.delete(`id`),u.delete(`filter`),d&&u.set(`filter`,d),i(u,{replace:!1})},[a,n,l,i,t,e]),d=(0,G.useMemo)(()=>t?`id:${s(t)}`:o,[o,t]),f=(0,G.useCallback)(()=>{i(new URLSearchParams,{replace:!1})},[i]),{data:h,isError:g,isFetching:_,isFetchingNextPage:v,isRefetching:y,fetchNextPage:b,hasNextPage:x}=_t({searchParams:{include:Y(!0),...d?{filter:d}:{}},placeholderData:r}),S=_&&!v&&!y,w=d??``,T=a.length>0;return(0,q.jsx)(p,{className:`size-full`,children:(0,q.jsx)(m,{className:`relative flex h-full flex-col`,size:`page`,children:(0,q.jsxs)(W,{"data-testid":`comments-page`,children:[(0,q.jsxs)(W.Header,{children:[(0,q.jsxs)(H,{blurredBackground:!1,sticky:!1,children:[(0,q.jsx)(H.Left,{children:(0,q.jsx)(H.Title,{children:`Comments`})}),!t&&!T&&(0,q.jsx)(H.Actions,{children:(0,q.jsx)(H.ActionGroup,{children:(0,q.jsx)(pt,{filters:a,siteTimezone:e,onFiltersChange:l})})})]}),!t&&T&&(0,q.jsx)(Ie,{children:(0,q.jsx)(pt,{filters:a,siteTimezone:e,onFiltersChange:l})})]}),(0,q.jsx)(W.Body,{children:S?(0,q.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,q.jsx)(B,{size:`lg`})}):g?(0,q.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center`,children:[(0,q.jsx)(`h2`,{className:`mb-2 text-xl font-medium`,children:`Error loading comments`}),(0,q.jsx)(`p`,{className:`mb-4 text-muted-foreground`,children:`Please reload the page to try again`}),(0,q.jsx)(O,{onClick:()=>window.location.reload(),children:`Reload page`})]}):h?.comments.length?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Kt,{dislikesEnabled:!0,fetchNextPage:()=>void b(),hasNextPage:x,isFetchingNextPage:v,isLoading:_&&!v,items:h?.comments??[],resetKey:w,totalItems:h?.meta?.pagination?.total??0,onAddFilter:u}),t&&(0,q.jsx)(`div`,{className:`flex justify-center py-8`,children:(0,q.jsx)(O,{variant:`outline`,onClick:f,children:`Show all comments`})})]}):(0,q.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:t?(0,q.jsxs)(`div`,{className:`flex flex-col items-center`,children:[(0,q.jsx)(k,{title:`Comment not found`,children:(0,q.jsx)(C,{})}),(0,q.jsx)(O,{className:`mt-4`,variant:`outline`,onClick:f,children:`Show all comments`})]}):(0,q.jsx)(k,{title:`No comments yet`,children:(0,q.jsx)(C,{})})})})]})})})},ln=()=>{let[e]=c(),{data:t,isLoading:n}=Pe({}),r=(0,G.useMemo)(()=>sn(e),[e]),i=e.get(`filter`)??void 0;if(!r&&an(i,!!t,n))return(0,q.jsx)(p,{className:`size-full`,children:(0,q.jsx)(m,{className:`relative flex h-full flex-col`,size:`page`,children:(0,q.jsxs)(W,{children:[(0,q.jsx)(W.Header,{children:(0,q.jsx)(H,{blurredBackground:!1,sticky:!1,children:(0,q.jsx)(H.Left,{children:(0,q.jsx)(H.Title,{children:`Comments`})})})}),(0,q.jsx)(W.Body,{children:(0,q.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,q.jsx)(B,{size:`lg`})})})]})})});let a=ct(t?.settings??[]);return(0,q.jsx)(cn,{singleCommentId:r,timezone:a})};export{ln as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{c as r}from"./dist-Cb5RSHSg.js";import{t as i}from"./button-BshWPHvn.js";import{s as a}from"./use-settings-navigation-aDSLtmEl.js";import{Sr as o,br as s,hr as c,pr as l,vr as u,xr as d,yr as f}from"./index-BJz9Zlsc.js";var p=e(t(),1),m=n(),h=({visible:e=!0,onRemove:t,title:n=`Are you sure?`,prompt:h,cancelLabel:g=`Cancel`,okLabel:_=`OK`,okRunningLabel:v,okVariant:y=`default`,onCancel:b,onOk:x,customFooter:S,formSheet:C=!0,stickyFooter:w=!1,testId:T=`confirmation-modal`})=>{let[E,D]=(0,p.useState)(``),O=E===`running`,k=v||_,A=()=>{O||(b?b():t())},j=async()=>{D(`running`);try{await x?.({remove:t})}catch(e){console.error(`Unhandled Promise Rejection. Make sure you catch errors in your onOk handler.`,e)}D(``)},M=S===void 0?(0,m.jsxs)(s,{children:[g&&(0,m.jsx)(i,{"data-testid":`cancel-modal`,disabled:O,type:`button`,variant:`outline`,onClick:A,children:g}),_&&(0,m.jsxs)(i,{"aria-busy":O,"data-testid":`ok-modal`,disabled:O,type:`button`,variant:y,onClick:()=>void j(),children:[O&&(0,m.jsx)(l,{color:`current`,size:`sm`}),O?k:_]})]}):S;return(0,m.jsx)(c,{open:e,onOpenChange:e=>!e&&A(),children:(0,m.jsxs)(u,{className:r(`z-[1100] max-h-[calc(100dvh-4rem)] w-[calc(100%-2rem)] overflow-y-auto bg-background`),"data-testid":T,overlayClassName:r(`z-[1100] bg-foreground/20! backdrop-blur-[3px]`,C&&`bg-foreground/10!`),onEscapeKeyDown:e=>e.stopPropagation(),children:[(0,m.jsxs)(d,{children:[(0,m.jsx)(o,{children:n}),(0,m.jsx)(f,{asChild:!0,children:(0,m.jsx)(`div`,{className:`text-left text-foreground`,children:h})})]}),M&&(w?(0,m.jsx)(a,{className:`-mx-6 -mb-6 w-[calc(100%+3rem)]`,contentClassName:`px-6`,height:84,children:M}):M)]})})},g=({visible:e=!0,onRemove:t,title:n=`Upgrade your plan`,prompt:r,okLabel:i=`Upgrade`,formSheet:a=!1,onOk:o})=>(0,m.jsx)(h,{formSheet:a,okLabel:i,prompt:(0,m.jsx)(`div`,{className:`w-full`,children:typeof r==`string`&&r.includes(`<`)?(0,m.jsx)(`div`,{dangerouslySetInnerHTML:{__html:r}}):r}),testId:`limit-modal`,title:n,visible:e,onOk:o,onRemove:t}),_=(0,p.createContext)(null);function v(){let e=(0,p.useContext)(_);if(!e)throw Error(`useConfirmation must be used inside ConfirmationProvider`);return e}export{h as i,v as n,g as r,_ as t};
|
package/core/built/admin/assets/{content-api-modal-BOFWRUkC.js → content-api-modal-CpeABXne.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./jsx-runtime-DX3WBWVO.js";import{p as t}from"./hooks-CJepWnbB.js";import{
|
|
1
|
+
import{t as e}from"./jsx-runtime-DX3WBWVO.js";import{p as t}from"./hooks-CJepWnbB.js";import{In as n,kn as r,t as i}from"./button-BshWPHvn.js";import{o as a,t as o}from"./use-settings-navigation-aDSLtmEl.js";import{n as s}from"./integrations-B9yYgci5.js";import{t as c}from"./api-keys-Boy5pLbD.js";import{t as l}from"./integration-header-B4DyXV06.js";var u=e();function d(){let{updateRoute:e}=o(),{data:{integrations:d}={integrations:[]}}=s(),f=d.find(({slug:e})=>e===`ghost-core-content`)?.api_keys?.find(e=>e.type===`content`);return(0,u.jsxs)(a,{cancelLabel:``,footer:(0,u.jsxs)(`div`,{className:`mx-8 flex w-full items-center justify-between`,children:[(0,u.jsx)(i,{variant:`outline`,asChild:!0,children:(0,u.jsxs)(`a`,{href:`https://ghost.org/docs/content-api/`,rel:`noopener noreferrer`,target:`_blank`,children:[`Open docs `,(0,u.jsx)(r,{className:`size-3`})]})}),(0,u.jsx)(i,{type:`button`,onClick:()=>{e(`integrations`)},children:`Close`})]}),testId:`content-api-modal`,title:``,stickyFooter:!0,onClose:()=>{e(`integrations`)},children:[(0,u.jsx)(l,{detail:`Access your content programmatically`,icon:(0,u.jsx)(n,{className:`size-14`}),title:`Content API`}),(0,u.jsxs)(`div`,{className:`mt-7`,children:[(0,u.jsx)(`p`,{className:`mb-6 text-grey-700`,children:`This key provides read-only access to your published content. For full read/write access, create a custom integration.`}),(0,u.jsx)(c,{keys:[{id:`content-api-key`,label:`Content API key`,text:f?.secret},{id:`api-url`,label:`API URL`,text:window.location.origin+t().subdir}]})]})]})}export{d as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{c as r}from"./dist-Cb5RSHSg.js";import{t as i}from"./inline-Cw-gigDW.js";import{t as a}from"./stack-CIfOAAVf.js";import{t as o}from"./text-DU9Hv33_.js";import{t as s}from"./
|
|
1
|
+
import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{c as r}from"./dist-Cb5RSHSg.js";import{t as i}from"./inline-Cw-gigDW.js";import{t as a}from"./stack-CIfOAAVf.js";import{t as o}from"./text-DU9Hv33_.js";import{t as s}from"./button-BshWPHvn.js";import{t as c}from"./input-surface-BdOe4KzO.js";var l=e(t(),1),u=n(),d=l.createContext(null);function f(){let e=l.useContext(d);if(!e)throw Error(`CopyField subcomponents must be used within CopyField`);return e}var p=l.forwardRef(({children:e,className:t,disabled:n=!1,value:i,...o},s)=>{let[c,f]=l.useState(!1),p=l.useId(),m=l.useRef(null);l.useEffect(()=>{f(!1),m.current&&=(clearTimeout(m.current),null)},[i]),l.useEffect(()=>()=>{m.current&&clearTimeout(m.current)},[]);let h=l.useCallback(async()=>{if(!n)try{await navigator.clipboard.writeText(i),f(!0),m.current&&clearTimeout(m.current),m.current=setTimeout(()=>f(!1),2e3)}catch{f(!1)}},[n,i]),g=l.useMemo(()=>({copied:c,copy:h,disabled:n,labelId:p,value:i}),[c,h,n,p,i]);return(0,u.jsx)(d.Provider,{value:g,children:(0,u.jsx)(a,{ref:s,className:r(`group/copy-field w-full`,t),"data-disabled":n||void 0,"data-slot":`copy-field`,gap:`xs`,...o,children:e})})});p.displayName=`CopyField`;var m=l.forwardRef(({className:e,id:t,...n},i)=>{let{labelId:a}=f();return(0,u.jsx)(o,{ref:i,as:`div`,className:r(`text-control! font-medium group-data-[disabled=true]/copy-field:opacity-50`,e),"data-slot":`copy-field-label`,id:t||a,leading:`snug`,...n})});m.displayName=`CopyFieldLabel`;var h=l.forwardRef(({className:e,...t},n)=>(0,u.jsx)(`div`,{ref:n,className:r(c(`within`),`group/copy-field-content relative flex h-(--control-height) w-full items-center overflow-hidden bg-control-readonly-surface px-3 py-1 group-data-[disabled=true]/copy-field:cursor-not-allowed group-data-[disabled=true]/copy-field:opacity-50`,e),"data-slot":`copy-field-content`,...t}));h.displayName=`CopyFieldContent`;var g=l.forwardRef(({children:e,className:t,...n},i)=>{let{disabled:a,labelId:s,value:c}=f();return(0,u.jsx)(o,{ref:i,"aria-disabled":a||void 0,"aria-labelledby":n[`aria-label`]||n[`aria-labelledby`]?n[`aria-labelledby`]:s,"aria-readonly":`true`,as:`div`,className:r(`min-w-0 truncate pr-2 text-muted-foreground`,t),"data-slot":`copy-field-value`,leading:`snug`,role:`textbox`,tabIndex:a?void 0:0,...n,children:e??c})});g.displayName=`CopyFieldValue`;var _=l.forwardRef(({className:e,...t},n)=>(0,u.jsx)(i,{ref:n,className:r(`absolute top-1/2 right-[1px] -translate-y-1/2 gap-px bg-control-readonly-surface pl-1 transition-opacity md:pointer-events-none md:opacity-0 md:group-focus-within/copy-field-content:pointer-events-auto md:group-focus-within/copy-field-content:opacity-100 md:group-hover/copy-field-content:pointer-events-auto md:group-hover/copy-field-content:opacity-100 [&_button]:h-7 [&_button]:rounded-sm [&_button:not([data-slot=copy-field-copy-button])]:bg-control-readonly-surface [&_button:not([data-slot=copy-field-copy-button])]:hover:bg-secondary`,e),"data-slot":`copy-field-actions`,gap:`none`,...t}));_.displayName=`CopyFieldActions`;var v=l.forwardRef(({children:e=`Copy`,className:t,copiedLabel:n=`Copied`,disabled:i,onClick:a,...o},c)=>{let{copied:l,copy:d,disabled:p}=f();return(0,u.jsx)(s,{ref:c,className:r(`bg-surface-elevated hover:border-border-strong/40 hover:bg-surface-elevated`,t),disabled:p||i,size:`sm`,type:`button`,variant:`outline`,onClick:async e=>{await d(),a?.(e)},...o,"data-slot":`copy-field-copy-button`,children:l?n:e})});v.displayName=`CopyFieldCopyButton`;export{m as a,v as i,_ as n,g as o,h as r,p as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./jsx-runtime-DX3WBWVO.js";import{N as t,S as n,Vt as r}from"./button-BshWPHvn.js";import{m as i}from"./member-custom-fields-BW756-EV.js";var a=e(),o={short_text:n,long_text:t,address:r},s=({type:e,className:t})=>(0,a.jsx)(o[e]||n,{className:t});function c({type:e}){return(0,a.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,a.jsx)(`span`,{className:`flex w-5 shrink-0 items-center justify-center`,children:(0,a.jsx)(s,{className:`size-4`,type:e})}),(0,a.jsx)(`span`,{children:i(e).label})]})}export{s as n,c as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{m as r,n as i,p as a}from"./hooks-CJepWnbB.js";import{n as o}from"./dist-Ndy-PuGN.js";import{t as s}from"./use-form-vRjI0Kwk.js";import{h as c}from"./chunk-KS7C4IRE-DCsL4i4D.js";import{f as l}from"./dist-Cb5RSHSg.js";import{t as u}from"./box-By_EgGtm.js";import{t as d}from"./inline-Cw-gigDW.js";import{t as f}from"./stack-CIfOAAVf.js";import{D as p,dt as m,o as h,t as g}from"./button-BshWPHvn.js";import{a as _,i as v,n as y,o as b,r as x,s as S,t as C}from"./select-ChxknEcT.js";import{o as w,t as ee}from"./use-settings-navigation-aDSLtmEl.js";import{t as T}from"./empty-indicator-WB1WgT9h.js";import{a as E,i as D,o as O,t as k}from"./field-kJYZ2T3C.js";import{a as A,c as j,n as te,r as M,s as N,t as P}from"./table-CrqQtkR2.js";import{ir as F,mr as I}from"./index-BJz9Zlsc.js";import{a as ne,c as re,i as ie,n as L,o as R,r as z,s as B,t as V}from"./images-D5UKr2SG.js";import{t as H}from"./validator-Cr0sMKuW.js";import{n as U}from"./confirmation-context-QmFxSjWy.js";import{a as W,n as G,t as K}from"./integrations-B9yYgci5.js";import{t as q}from"./api-keys-Boy5pLbD.js";import{t as J}from"./api-keys-BgKr003d.js";var Y=e(t(),1),ae=e(H(),1),X=[{label:`Global`,options:[{value:`site.changed`,label:`Site changed (rebuild)`}]},{label:`Posts`,options:[{value:`post.added`,label:`Post created`},{value:`post.deleted`,label:`Post deleted`},{value:`post.edited`,label:`Post updated`},{value:`post.published`,label:`Post published`},{value:`post.published.edited`,label:`Published post updated`},{value:`post.unpublished`,label:`Post unpublished`},{value:`post.scheduled`,label:`Post scheduled`},{value:`post.unscheduled`,label:`Post unscheduled`},{value:`post.tag.attached`,label:`Tag added to post`},{value:`post.tag.detached`,label:`Tag removed from post`}]},{label:`Pages`,options:[{value:`page.added`,label:`Page created`},{value:`page.deleted`,label:`Page deleted`},{value:`page.edited`,label:`Page updated`},{value:`page.published`,label:`Page published`},{value:`page.published.edited`,label:`Published page updated`},{value:`page.unpublished`,label:`Page unpublished`},{value:`page.tag.attached`,label:`Tag added to page`},{value:`page.tag.detached`,label:`Tag removed from page`}]},{label:`Tags`,options:[{value:`tag.added`,label:`Tag created`},{value:`tag.edited`,label:`Tag updated`},{value:`tag.deleted`,label:`Tag deleted`}]},{label:`Members`,options:[{value:`member.added`,label:`Member added`},{value:`member.edited`,label:`Member updated`},{value:`member.deleted`,label:`Member deleted`}]}],oe=e=>X.flatMap(({options:e})=>e).find(t=>t.value===e)?.label,se=i({method:`POST`,path:()=>`/webhooks/`,body:e=>({webhooks:[e]}),updateQueries:{dataType:K,emberUpdateType:`createOrUpdate`,update:(e,t)=>t&&{...t,integrations:t.integrations.map(t=>{let n=e.webhooks[0];return n.integration_id===t.id?{...t,webhooks:[...t.webhooks||[],n]}:t})}}}),ce=i({method:`PUT`,path:e=>`/webhooks/${e.id}/`,body:e=>({webhooks:[e]}),updateQueries:{dataType:K,emberUpdateType:`createOrUpdate`,update:(e,t)=>t&&{...t,integrations:t.integrations.map(t=>({...t,webhooks:t.webhooks?.map(t=>t.id===e.webhooks[0].id?e.webhooks[0]:t)}))}}}),le=i({method:`DELETE`,path:e=>`/webhooks/${e}/`,updateQueries:{dataType:K,emberUpdateType:`createOrUpdate`,update:(e,t,n)=>({...t,integrations:t.integrations.map(e=>({...e,webhooks:e.webhooks?.filter(e=>e.id!==n)}))})}}),Z=n(),Q=({webhook:e,integrationId:t,onClose:n})=>{let i=Y.useId(),{mutateAsync:a}=se(),{mutateAsync:o}=ce(),c=r(),{formState:l,updateForm:u,handleSave:d,errors:f,clearError:p}=s({initialState:e||{},onSave:async()=>{l.id?await o(l):await a({...l,integration_id:t})},onSaveError:c,onValidate:()=>{let e={};return l.name||(e.name=`Enter a name`),l.event||(e.event=`Select an event`),l.target_url||(e.target_url=`Enter a target URL`),l.target_url&&!ae.default.isURL(l.target_url,{require_tld:!1})&&(e.target_url=`Enter a valid URL`),e}});return(0,Z.jsx)(w,{okLabel:e?`Update`:`Add`,okVariant:`default`,size:`sm`,testId:`webhook-modal`,title:`Add webhook`,formSheet:!0,onClose:n,onOk:async()=>{await d()&&n()},children:(0,Z.jsx)(`div`,{className:`mt-5`,children:(0,Z.jsxs)(E,{className:`gap-8`,children:[(0,Z.jsxs)(k,{"data-invalid":!!f.name||void 0,children:[(0,Z.jsx)(O,{htmlFor:`webhook-name`,children:`Name`}),(0,Z.jsx)(I,{"aria-invalid":!!f.name||void 0,id:`webhook-name`,maxLength:191,placeholder:`Custom webhook`,value:l.name??``,onChange:e=>u(t=>({...t,name:e.target.value})),onKeyDown:()=>p(`name`)}),f.name&&(0,Z.jsx)(D,{children:f.name})]}),(0,Z.jsxs)(k,{"data-invalid":!!f.event||void 0,children:[(0,Z.jsx)(O,{className:`sr-only`,children:`Event`}),(0,Z.jsxs)(C,{value:l.event??``,onValueChange:e=>{u(t=>({...t,event:e})),p(`event`)},children:[(0,Z.jsx)(b,{"aria-describedby":f.event?i:void 0,"aria-invalid":!!f.event||void 0,"aria-label":`Event`,"data-testid":`event-select`,children:(0,Z.jsx)(S,{placeholder:`Select an event`})}),(0,Z.jsx)(y,{children:X.map(e=>(0,Z.jsxs)(x,{children:[(0,Z.jsx)(_,{children:e.label}),e.options.map(e=>(0,Z.jsx)(v,{value:e.value,children:e.label},e.value))]},e.label))})]}),f.event&&(0,Z.jsx)(D,{id:i,children:f.event})]}),(0,Z.jsxs)(k,{"data-invalid":!!f.target_url||void 0,children:[(0,Z.jsx)(O,{htmlFor:`webhook-target-url`,children:`Target URL`}),(0,Z.jsx)(I,{"aria-invalid":!!f.target_url||void 0,id:`webhook-target-url`,maxLength:2e3,placeholder:`https://example.com`,type:`url`,value:l.target_url??``,onChange:e=>u(t=>({...t,target_url:e.target.value})),onKeyDown:()=>p(`target_url`)}),f.target_url&&(0,Z.jsx)(D,{children:f.target_url})]}),(0,Z.jsxs)(k,{children:[(0,Z.jsx)(O,{htmlFor:`webhook-secret`,children:`Secret`}),(0,Z.jsx)(I,{id:`webhook-secret`,maxLength:191,placeholder:`https://example.com`,value:l.secret||``,onChange:e=>u(t=>({...t,secret:e.target.value}))})]})]})})})},$=({integration:e})=>{let{mutateAsync:t}=le(),n=r(),{confirm:i}=U(),a=e.webhooks||[],[s,c]=(0,Y.useState)(null),[u,p]=(0,Y.useState)(!1),_=()=>{p(!0)},v=()=>{p(!1),c(null)},y=u?(0,Z.jsx)(Q,{integrationId:e.id,onClose:v}):s&&(0,Z.jsx)(Q,{integrationId:e.id,webhook:s,onClose:v},s.id),b=e=>{i({title:`Are you sure?`,prompt:`Deleting this webhook may prevent the integration from functioning.`,okVariant:`destructive`,okLabel:`Delete Webhook`,onOk:async r=>{try{await t(e),r?.remove(),o.info(`Webhook deleted`)}catch(e){n(e)}}})};return a.length===0?(0,Z.jsxs)(f,{gap:`none`,children:[(0,Z.jsx)(F,{}),(0,Z.jsx)(T,{actions:(0,Z.jsxs)(g,{type:`button`,variant:`outline`,onClick:_,children:[(0,Z.jsx)(m,{}),` Add webhook`]}),className:`py-8`,description:`Add a webhook to send Ghost events to another service.`,title:`No webhooks`,children:(0,Z.jsx)(h,{})}),(0,Z.jsx)(F,{}),y]}):(0,Z.jsxs)(f,{gap:`none`,children:[(0,Z.jsxs)(P,{children:[(0,Z.jsx)(N,{children:(0,Z.jsxs)(j,{children:[(0,Z.jsxs)(A,{children:[l(e.webhooks?.length||0),` `,e.webhooks?.length===1?`webhook`:`webhooks`]}),(0,Z.jsx)(A,{children:`Last triggered`}),(0,Z.jsx)(A,{children:(0,Z.jsx)(`span`,{className:`sr-only`,children:`Actions`})})]})}),(0,Z.jsx)(te,{children:a.map(e=>(0,Z.jsxs)(j,{className:`cursor-pointer`,onClick:()=>c(e),children:[(0,Z.jsxs)(M,{className:`w-3/4 py-3 pr-6`,children:[(0,Z.jsx)(`div`,{className:`font-semibold`,children:e.name}),(0,Z.jsxs)(`div`,{className:`mt-1 grid grid-cols-[max-content_1fr] gap-1 text-sm leading-snug`,children:[(0,Z.jsx)(`span`,{className:`text-muted-foreground`,children:`Event:`}),(0,Z.jsx)(`span`,{children:oe(e.event)}),(0,Z.jsx)(`span`,{className:`text-muted-foreground`,children:`URL:`}),(0,Z.jsx)(`span`,{className:`line-clamp-3 break-all`,title:e.target_url,children:e.target_url})]})]}),(0,Z.jsx)(M,{className:`w-1/4 py-3 pr-6 text-sm`,children:e.last_triggered_at&&new Date(e.last_triggered_at).toLocaleString(`default`,{weekday:`short`,month:`short`,day:`numeric`,year:`numeric`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}),(0,Z.jsx)(M,{className:`w-0 text-right`,children:(0,Z.jsx)(g,{className:`text-destructive hover:text-destructive`,size:`sm`,type:`button`,variant:`ghost`,onClick:t=>{t.stopPropagation(),b(e.id)},children:`Delete`})})]},e.id))})]}),(0,Z.jsx)(d,{className:`py-4`,justify:`center`,children:(0,Z.jsxs)(g,{size:`sm`,type:`button`,variant:`outline`,onClick:_,children:[(0,Z.jsx)(m,{}),` Add webhook`]})}),(0,Z.jsx)(F,{}),y]})},ue=({integration:e})=>{let{updateRoute:t}=ee(),{mutateAsync:n}=W(),{mutateAsync:i}=J(),{mutateAsync:o}=L(),c=r(),{confirm:l}=U(),{formState:d,updateForm:m,handleSave:h,saveState:g,errors:_,clearError:v,okProps:y}=s({initialState:e,savingDelay:500,savedDelay:500,onSave:async()=>{await n(d)},onSavedStateReset:()=>{t(`integrations`)},onSaveError:c,onValidate:()=>{let e={};return d.name||(e.name=`Enter integration title`),e}}),b=async e=>{try{let t=V(await o({file:e}));m(e=>({...e,icon_image:t}))}catch(e){let t=e;t.response.status===415&&(t.message=`Unsupported file type`),c(t)}},x=e.api_keys?.find(e=>e.type===`admin`),S=e.api_keys?.find(e=>e.type===`content`),[C,T]=(0,Y.useState)(!1),[E,A]=(0,Y.useState)(!1);(0,Y.useEffect)(()=>{e.type!==`custom`&&t(`integrations`)},[e.type,t]);let j=(t,n)=>{n(!1);let r=t.type===`content`?`Content`:`Admin`;l({title:`Regenerate ${r} API Key`,prompt:`You can regenerate ${r} API Key any time, but any scripts or applications using it will need to be updated.`,okLabel:`Regenerate ${r} API Key`,onOk:async r=>{try{await i({integrationId:e.id,apiKeyId:t.id}),n(!0),r?.remove()}catch(e){c(e)}}})};return(0,Z.jsxs)(w,{buttonsDisabled:y.disabled,cancelLabel:`Close`,dirty:g===`unsaved`,okLabel:y.label||`Save`,okVariant:y.variant,size:`md`,testId:`custom-integration-modal`,title:d.name||`Custom integration`,stickyFooter:!0,onClose:()=>{t(`integrations`)},onOk:async()=>{await h({fakeWhenUnchanged:!0})},children:[(0,Z.jsxs)(f,{className:`w-full pt-6 md:flex-row`,gap:`xl`,children:[(0,Z.jsx)(`div`,{className:`shrink-0`,children:(0,Z.jsx)(z,{className:`size-25`,children:d.icon_image?(0,Z.jsxs)(re,{children:[(0,Z.jsx)(B,{id:`custom-integration-icon`,src:d.icon_image}),(0,Z.jsx)(ne,{children:(0,Z.jsx)(ie,{"aria-label":`Remove icon`,onClick:()=>m(e=>({...e,icon_image:null})),children:(0,Z.jsx)(p,{})})})]}):(0,Z.jsx)(R,{className:`text-center`,inputId:`custom-integration-icon`,onDropAccepted:([e])=>void b(e),children:`Upload icon`})})}),(0,Z.jsxs)(f,{className:`min-w-0 grow`,gap:`2xl`,children:[(0,Z.jsxs)(f,{gap:`md`,children:[(0,Z.jsxs)(k,{"data-invalid":!!_.name||void 0,children:[(0,Z.jsx)(O,{htmlFor:`integration-title`,children:`Title`}),(0,Z.jsx)(I,{"aria-invalid":!!_.name||void 0,id:`integration-title`,maxLength:191,value:d.name,onChange:e=>m(t=>({...t,name:e.target.value})),onKeyDown:()=>v(`name`)}),_.name&&(0,Z.jsx)(D,{children:_.name})]}),(0,Z.jsxs)(k,{children:[(0,Z.jsx)(O,{htmlFor:`integration-description`,children:`Description`}),(0,Z.jsx)(I,{id:`integration-description`,maxLength:2e3,value:d.description||``,onChange:e=>m(t=>({...t,description:e.target.value}))})]})]}),(0,Z.jsx)(q,{keys:[{id:`content-api-key`,label:`Content API key`,text:S?.secret,hint:E?(0,Z.jsx)(`div`,{className:`text-green`,children:`Content API Key was successfully regenerated`}):void 0,onRegenerate:()=>S&&j(S,A)},{id:`admin-api-key`,label:`Admin API key`,text:x?.secret,hint:C?(0,Z.jsx)(`div`,{className:`text-green`,children:`Admin API Key was successfully regenerated`}):void 0,onRegenerate:()=>x&&j(x,T)},{id:`api-url`,label:`API URL`,text:window.location.origin+a().subdir}]})]})]}),(0,Z.jsx)(u,{className:`mt-8`,children:(0,Z.jsx)($,{integration:e})})]})};function de(){let{integrationId:e}=c(),{data:{integrations:t}={}}=G(),n=t?.find(({id:t})=>t===e);return n?(0,Z.jsx)(ue,{integration:n}):null}export{de as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{ar as r}from"./button-BshWPHvn.js";import{a as i,i as a,n as o,o as s,r as c,s as l,t as u}from"./select-ChxknEcT.js";import{F as d,P as f}from"./index-BJz9Zlsc.js";var p=e(t(),1),m=n(),h=({range:e,onRangeChange:t,excludeRanges:n=[]})=>{let h=n.map(e=>f[e].value),g=d.filter(e=>!h.includes(e.value));return(0,p.useEffect)(()=>{if(h.includes(e)&&g.length>0){let e=g.find(e=>e.value===f.last7Days.value);t(e?e.value:g[0].value)}},[e,h,g,t]),(0,m.jsxs)(u,{value:`${e}`,onValueChange:e=>{t(Number(e))},children:[(0,m.jsxs)(s,{className:`w-auto`,children:[(0,m.jsx)(r,{className:`mr-2`,size:16,strokeWidth:1.5}),(0,m.jsx)(l,{placeholder:`Select a period`})]}),(0,m.jsx)(o,{align:`end`,children:(0,m.jsxs)(c,{children:[(0,m.jsx)(i,{children:`Period`}),g.map(e=>(0,m.jsx)(a,{value:`${e.value}`,children:e.name},e.value))]})})]})};export{h as t};
|