@windrun-huaiin/third-ui 7.6.1 → 10.0.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/dist/_virtual/advancedFormat.js +1 -1
- package/dist/_virtual/advancedFormat.mjs +1 -1
- package/dist/_virtual/customParseFormat.js +1 -1
- package/dist/_virtual/customParseFormat.mjs +1 -1
- package/dist/_virtual/dayjs.min.js +1 -1
- package/dist/_virtual/dayjs.min.mjs +1 -1
- package/dist/_virtual/isoWeek.js +1 -1
- package/dist/_virtual/isoWeek.mjs +1 -1
- package/dist/clerk/clerk-organization.js +1 -1
- package/dist/clerk/clerk-organization.mjs +1 -1
- package/dist/clerk/{clerk-page-generator-client.js → clerk-page-context-generator.js} +2 -2
- package/dist/clerk/{clerk-page-generator-client.mjs → clerk-page-context-generator.mjs} +2 -2
- package/dist/clerk/clerk-page-generator.js +3 -3
- package/dist/clerk/clerk-page-generator.mjs +3 -3
- package/dist/clerk/clerk-user-client.js +4 -3
- package/dist/clerk/clerk-user-client.mjs +4 -3
- package/dist/clerk/clerk-user.js +1 -1
- package/dist/clerk/clerk-user.mjs +1 -1
- package/dist/clerk/fingerprint/fingerprint-client.js +1 -1
- package/dist/clerk/fingerprint/fingerprint-client.mjs +1 -1
- package/dist/clerk/fingerprint/fingerprint-provider.js +147 -56
- package/dist/clerk/fingerprint/fingerprint-provider.mjs +148 -57
- package/dist/clerk/fingerprint/fingerprint-server.d.ts +16 -0
- package/dist/clerk/fingerprint/fingerprint-server.js +18 -0
- package/dist/clerk/fingerprint/fingerprint-server.mjs +18 -1
- package/dist/clerk/fingerprint/server.js +1 -0
- package/dist/clerk/fingerprint/server.mjs +1 -1
- package/dist/clerk/fingerprint/types.d.ts +13 -2
- package/dist/clerk/fingerprint/use-fingerprint.js +1 -1
- package/dist/clerk/fingerprint/use-fingerprint.mjs +1 -1
- package/dist/clerk/index.d.ts +2 -1
- package/dist/clerk/index.js +5 -3
- package/dist/clerk/index.mjs +2 -1
- package/dist/clerk/signin-with-fingerprint-client.js +4 -11
- package/dist/clerk/signin-with-fingerprint-client.mjs +4 -11
- package/dist/clerk/signup-button-with-fingerprint-client.d.ts +6 -0
- package/dist/clerk/signup-button-with-fingerprint-client.js +56 -0
- package/dist/clerk/signup-button-with-fingerprint-client.mjs +54 -0
- package/dist/clerk/signup-with-fingerprint-client.js +4 -11
- package/dist/clerk/signup-with-fingerprint-client.mjs +4 -11
- package/dist/fuma/base/custom-header.d.ts +38 -0
- package/dist/fuma/base/custom-header.js +163 -0
- package/dist/fuma/base/custom-header.mjs +161 -0
- package/dist/fuma/base/custom-home-layout.d.ts +68 -0
- package/dist/fuma/base/custom-home-layout.js +48 -0
- package/dist/fuma/base/custom-home-layout.mjs +46 -0
- package/dist/fuma/base/index.d.ts +2 -0
- package/dist/fuma/base/index.js +9 -0
- package/dist/fuma/base/index.mjs +2 -0
- package/dist/fuma/fuma-banner-suit.d.ts +2 -1
- package/dist/fuma/fuma-banner-suit.js +9 -3
- package/dist/fuma/fuma-banner-suit.mjs +9 -3
- package/dist/fuma/fuma-page-genarator.d.ts +4 -1
- package/dist/fuma/fuma-page-genarator.js +15 -6
- package/dist/fuma/fuma-page-genarator.mjs +15 -6
- package/dist/fuma/fuma-translate-util.d.ts +2 -0
- package/dist/fuma/fuma-translate-util.js +40 -0
- package/dist/fuma/fuma-translate-util.mjs +38 -0
- package/dist/fuma/llm-copy-handler.js +9 -8
- package/dist/fuma/llm-copy-handler.mjs +9 -8
- package/dist/fuma/mdx/banner.d.ts +7 -1
- package/dist/fuma/mdx/banner.js +15 -15
- package/dist/fuma/mdx/banner.mjs +15 -15
- package/dist/fuma/mdx/fuma-github-info.js +1 -1
- package/dist/fuma/mdx/fuma-github-info.mjs +1 -1
- package/dist/fuma/mdx/gradient-button.js +29 -18
- package/dist/fuma/mdx/gradient-button.mjs +29 -18
- package/dist/fuma/mdx/image-zoom.js +2 -2
- package/dist/fuma/mdx/image-zoom.mjs +2 -2
- package/dist/fuma/mdx/mermaid.js +3 -3
- package/dist/fuma/mdx/mermaid.mjs +3 -3
- package/dist/fuma/mdx/toc-base.js +9 -4
- package/dist/fuma/mdx/toc-base.mjs +9 -4
- package/dist/fuma/mdx/zia-card.js +3 -3
- package/dist/fuma/mdx/zia-card.mjs +3 -3
- package/dist/fuma/mdx/zia-file.js +1 -1
- package/dist/fuma/mdx/zia-file.mjs +1 -1
- package/dist/fuma/server.d.ts +1 -0
- package/dist/fuma/server.js +2 -0
- package/dist/fuma/server.mjs +1 -0
- package/dist/fuma/site-x.js +1 -1
- package/dist/fuma/site-x.mjs +1 -1
- package/dist/lib/fuma-schema-check-util.d.ts +4 -57
- package/dist/lib/fuma-schema-check-util.js +10 -31
- package/dist/lib/fuma-schema-check-util.mjs +11 -29
- package/dist/lib/server.d.ts +0 -1
- package/dist/lib/server.js +0 -5
- package/dist/lib/server.mjs +1 -2
- package/dist/main/ai-prompt-textarea.js +1 -1
- package/dist/main/ai-prompt-textarea.mjs +1 -1
- package/dist/main/credit/credit-nav-button.d.ts +21 -0
- package/dist/main/credit/credit-nav-button.js +117 -0
- package/dist/main/credit/credit-nav-button.mjs +114 -0
- package/dist/main/credit/credit-overview-client.d.ts +26 -0
- package/dist/main/credit/credit-overview-client.js +269 -0
- package/dist/main/credit/credit-overview-client.mjs +267 -0
- package/dist/main/credit/credit-overview.d.ts +8 -0
- package/dist/main/credit/credit-overview.js +34 -0
- package/dist/main/credit/credit-overview.mjs +32 -0
- package/dist/main/credit/types.d.ts +68 -0
- package/dist/main/cta.js +3 -2
- package/dist/main/cta.mjs +3 -2
- package/dist/main/faq.js +5 -4
- package/dist/main/faq.mjs +5 -4
- package/dist/main/features.js +3 -2
- package/dist/main/features.mjs +3 -2
- package/dist/main/footer.js +2 -2
- package/dist/main/footer.mjs +2 -2
- package/dist/main/gallery/gallery-desktop-grid.d.ts +6 -0
- package/dist/main/gallery/gallery-desktop-grid.js +10 -0
- package/dist/main/gallery/gallery-desktop-grid.mjs +8 -0
- package/dist/main/gallery/gallery-interactive.d.ts +4 -0
- package/dist/main/gallery/gallery-interactive.js +128 -0
- package/dist/main/gallery/gallery-interactive.mjs +126 -0
- package/dist/main/gallery/gallery-mobile-swiper.d.ts +6 -0
- package/dist/main/gallery/gallery-mobile-swiper.js +13 -0
- package/dist/main/gallery/gallery-mobile-swiper.mjs +11 -0
- package/dist/main/gallery/gallery-server.d.ts +2 -0
- package/dist/main/gallery/gallery-server.js +44 -0
- package/dist/main/gallery/gallery-server.mjs +42 -0
- package/dist/main/gallery/gallery-types.d.ts +19 -0
- package/dist/main/gallery-interactive.js +1 -1
- package/dist/main/gallery-interactive.mjs +1 -1
- package/dist/main/gallery.js +6 -5
- package/dist/main/gallery.mjs +6 -5
- package/dist/main/go-to-top.js +1 -1
- package/dist/main/go-to-top.mjs +1 -1
- package/dist/main/index.d.ts +3 -1
- package/dist/main/index.js +5 -1
- package/dist/main/index.mjs +3 -1
- package/dist/main/money-price/customer-portal.d.ts +7 -0
- package/dist/main/money-price/customer-portal.js +54 -0
- package/dist/main/money-price/customer-portal.mjs +52 -0
- package/dist/main/money-price/money-price-button.d.ts +1 -1
- package/dist/main/money-price/money-price-button.js +162 -42
- package/dist/main/money-price/money-price-button.mjs +162 -42
- package/dist/main/money-price/money-price-config-util.d.ts +50 -2
- package/dist/main/money-price/money-price-config-util.js +177 -4
- package/dist/main/money-price/money-price-config-util.mjs +175 -4
- package/dist/main/money-price/money-price-data.d.ts +8 -0
- package/dist/main/money-price/money-price-data.js +28 -0
- package/dist/main/money-price/money-price-data.mjs +26 -0
- package/dist/main/money-price/money-price-interactive.d.ts +1 -1
- package/dist/main/money-price/money-price-interactive.js +251 -288
- package/dist/main/money-price/money-price-interactive.mjs +253 -290
- package/dist/main/money-price/money-price-types.d.ts +69 -20
- package/dist/main/money-price/money-price.d.ts +1 -1
- package/dist/main/money-price/money-price.js +9 -62
- package/dist/main/money-price/money-price.mjs +10 -63
- package/dist/main/price-plan.js +6 -6
- package/dist/main/price-plan.mjs +6 -6
- package/dist/main/section-layout.d.ts +1 -0
- package/dist/main/section-layout.js +7 -0
- package/dist/main/section-layout.mjs +5 -0
- package/dist/main/seo-content.js +3 -2
- package/dist/main/seo-content.mjs +3 -2
- package/dist/main/server.d.ts +6 -3
- package/dist/main/server.js +9 -4
- package/dist/main/server.mjs +4 -2
- package/dist/main/tips.js +3 -2
- package/dist/main/tips.mjs +3 -2
- package/dist/main/usage.js +4 -3
- package/dist/main/usage.mjs +4 -3
- package/dist/main/x-button.js +6 -6
- package/dist/main/x-button.mjs +6 -6
- package/dist/node_modules/.pnpm/@fingerprintjs_fingerprintjs@4.6.2/node_modules/@fingerprintjs/fingerprintjs/dist/fp.esm.js +1 -1
- package/dist/node_modules/.pnpm/@fingerprintjs_fingerprintjs@4.6.2/node_modules/@fingerprintjs/fingerprintjs/dist/fp.esm.mjs +1 -1
- package/dist/node_modules/.pnpm/{@iconify_utils@2.3.0 → @iconify_utils@3.0.2}/node_modules/@iconify/utils/lib/customisations/defaults.js +7 -6
- package/dist/node_modules/.pnpm/{@iconify_utils@2.3.0 → @iconify_utils@3.0.2}/node_modules/@iconify/utils/lib/customisations/defaults.mjs +7 -6
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/defaults.js +39 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/defaults.mjs +34 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/merge.js +20 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/merge.mjs +18 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/name.js +60 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/name.mjs +57 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/transformations.js +15 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/transformations.mjs +13 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon-set/get-icon.js +30 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon-set/get-icon.mjs +27 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon-set/tree.js +26 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon-set/tree.mjs +24 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/build.js +118 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/build.mjs +115 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/defs.js +36 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/defs.mjs +32 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/html.js +12 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/html.mjs +10 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/id.js +48 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/id.mjs +46 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/size.js +30 -0
- package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/size.mjs +28 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/architecture-U656AL7Q.js +9 -0
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/architecture-O4VJ6CD3.mjs → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/architecture-U656AL7Q.mjs} +2 -2
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-KMC2YHZD.js → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-76Q3JFCE.js} +8 -8
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-KMC2YHZD.mjs → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-76Q3JFCE.mjs} +1 -1
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-4KMFLZZN.js → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FPAJGGOC.js} +1 -1
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-4KMFLZZN.mjs → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FPAJGGOC.mjs} +1 -1
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-XRWGC2XP.js → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FWNWRKHM.js} +13 -13
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-XRWGC2XP.mjs → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FWNWRKHM.mjs} +1 -1
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-T44TD3VJ.js → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-LBM3YZW2.js} +8 -8
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-T44TD3VJ.mjs → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-LBM3YZW2.mjs} +1 -1
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-WFRQ32O7.js → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-LHMN2FUI.js} +8 -8
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-WFRQ32O7.mjs → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-LHMN2FUI.mjs} +1 -1
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-JEIROHC2.js → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-O7ZBX7Z2.js} +10 -10
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-JEIROHC2.mjs → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-O7ZBX7Z2.mjs} +1 -1
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-BN7GFLIU.js → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-S6J4BHB3.js} +8 -8
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-BN7GFLIU.mjs → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-S6J4BHB3.mjs} +1 -1
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-WFWHJNB7.js → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-T53DSG4Q.js} +10 -10
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-WFWHJNB7.mjs → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-T53DSG4Q.mjs} +1 -1
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/gitGraph-F6HP7TQM.js +9 -0
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/gitGraph-ZV4HHKMB.mjs → @mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/gitGraph-F6HP7TQM.mjs} +2 -2
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-NVLQJR56.js +9 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-NVLQJR56.mjs +2 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-BFZMPI3H.js +9 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-BFZMPI3H.mjs +2 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-7BOR55EZ.js +9 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-7BOR55EZ.mjs +2 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-NHE76QYJ.js +9 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-NHE76QYJ.mjs +2 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-KMMF4GRG.js +9 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-KMMF4GRG.mjs +2 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js +129 -0
- package/dist/node_modules/.pnpm/{@mermaid-js_parser@0.6.2 → @mermaid-js_parser@0.6.3}/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.mjs +16 -16
- package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/cross-count.js +0 -3
- package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/cross-count.mjs +0 -3
- package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/position/bk.js +24 -4
- package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/position/bk.mjs +24 -4
- package/dist/node_modules/.pnpm/{dompurify@3.2.6 → dompurify@3.3.0}/node_modules/dompurify/dist/purify.es.js +59 -25
- package/dist/node_modules/.pnpm/{dompurify@3.2.6 → dompurify@3.3.0}/node_modules/dompurify/dist/purify.es.mjs +59 -25
- package/dist/node_modules/.pnpm/{katex@0.16.22 → katex@0.16.25}/node_modules/katex/dist/katex.js +26 -34
- package/dist/node_modules/.pnpm/{katex@0.16.22 → katex@0.16.25}/node_modules/katex/dist/katex.mjs +26 -34
- package/dist/node_modules/.pnpm/marked@16.4.2/node_modules/marked/lib/marked.esm.js +84 -0
- package/dist/node_modules/.pnpm/marked@16.4.2/node_modules/marked/lib/marked.esm.mjs +74 -0
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/architectureDiagram-SUXI7LT5.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/architectureDiagram-VXUJARFQ.js} +373 -351
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/architectureDiagram-SUXI7LT5.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/architectureDiagram-VXUJARFQ.mjs} +320 -298
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/blockDiagram-6J76NXCF.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/blockDiagram-VD42YOAC.js} +393 -380
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/blockDiagram-6J76NXCF.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/blockDiagram-VD42YOAC.mjs} +162 -149
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/c4Diagram-6F6E4RAY.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/c4Diagram-YG6GDRKO.js} +126 -125
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/c4Diagram-6F6E4RAY.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/c4Diagram-YG6GDRKO.mjs} +10 -9
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-353BL4L5.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-4BX2VUAB.js} +2 -2
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-353BL4L5.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-4BX2VUAB.mjs} +1 -1
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-BFAMUDN2.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-55IACEB6.js} +2 -2
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-BFAMUDN2.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-55IACEB6.mjs} +1 -1
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-RKKUNAVE.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-6MN3ZHY7.js} +15 -15
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-RKKUNAVE.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-6MN3ZHY7.mjs} +15 -15
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-3XYRH5AP.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-ABZYJK2D.js} +142 -203
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-3XYRH5AP.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-ABZYJK2D.mjs} +27 -85
- package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-AGHRB4JF.js +81 -0
- package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-AGHRB4JF.mjs +76 -0
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-UWXLY5YG.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-ATLVNIR6.js} +30 -11
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-UWXLY5YG.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-ATLVNIR6.mjs} +22 -3
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-SZ463SBG.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-B4BG7PRW.js} +207 -205
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-SZ463SBG.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-B4BG7PRW.mjs} +132 -130
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-AC5SNWB5.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-CVBHYZKI.js} +2 -2
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-AC5SNWB5.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-CVBHYZKI.mjs} +1 -1
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-OW32GOEJ.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-DI55MBZ5.js} +98 -97
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-OW32GOEJ.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-DI55MBZ5.mjs} +10 -9
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-P3VETL53.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-EXTU4WIE.js} +4 -3
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-P3VETL53.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-EXTU4WIE.mjs} +2 -1
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-E2GYISFI.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-FMBD7UC4.js} +2 -2
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-E2GYISFI.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-FMBD7UC4.mjs} +1 -1
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-MXNHSMXR.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-HN2XXSSU.js} +17 -9
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-MXNHSMXR.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-HN2XXSSU.mjs} +11 -5
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-QESNASVV.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-JA3XYJ7Z.js} +51 -50
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-QESNASVV.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-JA3XYJ7Z.mjs} +23 -22
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-JW4RIYDF.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-JZLCHNYA.js} +731 -440
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-JW4RIYDF.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-JZLCHNYA.mjs} +404 -113
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-L5ZGVLVO.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-MI3HLSF2.js} +139 -139
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-L5ZGVLVO.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-MI3HLSF2.mjs} +5 -5
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-IWUHOULB.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-N4CR4FBY.js} +29 -22
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-IWUHOULB.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-N4CR4FBY.mjs} +13 -6
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-SKB7J2MH.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-QN33PNHL.js} +7 -6
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-SKB7J2MH.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-QN33PNHL.mjs} +2 -1
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-M6DAPIYF.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-QXUST7PY.js} +211 -85
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-M6DAPIYF.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-QXUST7PY.mjs} +142 -16
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-AACKK3MU.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-QZHKN3VN.js} +2 -2
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-AACKK3MU.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-QZHKN3VN.mjs} +1 -1
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-55PJQP7W.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-S3R3BYOJ.js} +61 -49
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-55PJQP7W.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-S3R3BYOJ.mjs} +13 -1
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-67H74DCK.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-TZMSLE5B.js} +10 -9
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-67H74DCK.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-TZMSLE5B.mjs} +2 -1
- package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-2ON5EDUG.js +31 -0
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-M3E45YP4.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-2ON5EDUG.mjs} +9 -8
- package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-v2-WZHVMYZB.js +31 -0
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-v2-YAWTLIQI.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-v2-WZHVMYZB.mjs} +9 -8
- package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/cose-bilkent-S5V4N54A.js +302 -0
- package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/cose-bilkent-S5V4N54A.mjs +300 -0
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/dagre-JOIXM2OF.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/dagre-6UL2VRFP.js} +123 -122
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/dagre-JOIXM2OF.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/dagre-6UL2VRFP.mjs} +12 -11
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-VMROVX33.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/diagram-PSM6KHXK.js} +46 -45
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-VMROVX33.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/diagram-PSM6KHXK.mjs} +8 -7
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-ZTM2IBQH.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/diagram-QEK2KX5R.js} +45 -44
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-ZTM2IBQH.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/diagram-QEK2KX5R.mjs} +6 -5
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-5UYTHUR4.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/diagram-S2PKOQOG.js} +68 -57
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-5UYTHUR4.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/diagram-S2PKOQOG.mjs} +56 -45
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/erDiagram-3M52JZNH.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/erDiagram-Q2GNP2WA.js} +70 -69
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/erDiagram-3M52JZNH.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/erDiagram-Q2GNP2WA.mjs} +14 -13
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/flowDiagram-KYDEHFYC.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/flowDiagram-NV44I4VS.js} +97 -93
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/flowDiagram-KYDEHFYC.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/flowDiagram-NV44I4VS.mjs} +20 -16
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/ganttDiagram-EK5VF46D.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/ganttDiagram-LVOFAZNH.js} +134 -125
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/ganttDiagram-EK5VF46D.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/ganttDiagram-LVOFAZNH.mjs} +27 -18
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/gitGraphDiagram-GW3U2K7C.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/gitGraphDiagram-NY62KEGX.js} +116 -115
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/gitGraphDiagram-GW3U2K7C.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/gitGraphDiagram-NY62KEGX.mjs} +6 -5
- package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/infoDiagram-ER5ION4S.js +42 -0
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/infoDiagram-LHK5PUON.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/infoDiagram-ER5ION4S.mjs} +5 -4
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/journeyDiagram-EWQZEKCU.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/journeyDiagram-XKPGCS4Q.js} +100 -99
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/journeyDiagram-EWQZEKCU.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/journeyDiagram-XKPGCS4Q.mjs} +10 -9
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/kanban-definition-ZSS6B67P.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/kanban-definition-3W4ZIXB7.js} +79 -78
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/kanban-definition-ZSS6B67P.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/kanban-definition-3W4ZIXB7.mjs} +12 -11
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/mindmap-definition-6CBA2TL7.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/mindmap-definition-VGOIOE7T.js} +277 -379
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/mindmap-definition-6CBA2TL7.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/mindmap-definition-VGOIOE7T.mjs} +234 -336
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/pieDiagram-NIOCPIFQ.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/pieDiagram-ADFJNKIX.js} +58 -56
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/pieDiagram-NIOCPIFQ.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/pieDiagram-ADFJNKIX.mjs} +30 -28
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/quadrantDiagram-2OG54O6I.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/quadrantDiagram-AYHSOK5B.js} +96 -95
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/quadrantDiagram-2OG54O6I.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/quadrantDiagram-AYHSOK5B.mjs} +6 -5
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/requirementDiagram-QOLK2EJ7.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/requirementDiagram-UZGBJVZJ.js} +64 -63
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/requirementDiagram-QOLK2EJ7.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/requirementDiagram-UZGBJVZJ.mjs} +14 -13
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/sankeyDiagram-4UZDY2LN.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/sankeyDiagram-TZEHDZUN.js} +73 -69
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/sankeyDiagram-4UZDY2LN.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/sankeyDiagram-TZEHDZUN.mjs} +17 -13
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/sequenceDiagram-SKLFT4DO.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/sequenceDiagram-WL72ISMW.js} +839 -376
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/sequenceDiagram-SKLFT4DO.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/sequenceDiagram-WL72ISMW.mjs} +591 -128
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-MI5ZYTHO.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-FKZM4ZOC.js} +94 -93
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-MI5ZYTHO.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-FKZM4ZOC.mjs} +12 -11
- package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-v2-4FDKWEC3.js +31 -0
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-v2-5AN5P6BG.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-v2-4FDKWEC3.mjs} +9 -8
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/timeline-definition-MYPXXCX6.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/timeline-definition-IT6M3QCI.js} +93 -92
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/timeline-definition-MYPXXCX6.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/timeline-definition-IT6M3QCI.mjs} +8 -7
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/xychartDiagram-H2YORKM3.js → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/xychartDiagram-PRI3JC2R.js} +136 -133
- package/dist/node_modules/.pnpm/{mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/xychartDiagram-H2YORKM3.mjs → mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/xychartDiagram-PRI3JC2R.mjs} +43 -40
- package/dist/node_modules/.pnpm/{mermaid@11.9.0 → mermaid@11.12.1}/node_modules/mermaid/dist/mermaid.core.js +226 -225
- package/dist/node_modules/.pnpm/{mermaid@11.9.0 → mermaid@11.12.1}/node_modules/mermaid/dist/mermaid.core.mjs +43 -42
- package/dist/node_modules/.pnpm/{react-medium-image-zoom@5.3.0_react-dom@19.1.0_react@19.1.0__react@19.1.0 → react-medium-image-zoom@5.4.0_react-dom@19.2.0_react@19.2.0__react@19.2.0}/node_modules/react-medium-image-zoom/dist/index.js +16 -12
- package/dist/node_modules/.pnpm/{react-medium-image-zoom@5.3.0_react-dom@19.1.0_react@19.1.0__react@19.1.0 → react-medium-image-zoom@5.4.0_react-dom@19.2.0_react@19.2.0__react@19.2.0}/node_modules/react-medium-image-zoom/dist/index.mjs +16 -12
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/modules/pagination.js +461 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/modules/pagination.mjs +459 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/classes-to-selector.js +8 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/classes-to-selector.mjs +6 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/create-element-if-not-defined.js +23 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/create-element-if-not-defined.mjs +21 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/ssr-window.esm.js +143 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/ssr-window.esm.mjs +140 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/swiper-core.js +3874 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/swiper-core.mjs +3871 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/update-on-virtual-data.js +129 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/update-on-virtual-data.mjs +124 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/update-swiper.js +226 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/update-swiper.mjs +216 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/utils.js +310 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/utils.mjs +288 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/swiper-react.js +390 -0
- package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/swiper-react.mjs +387 -0
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.js +6 -0
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.mjs +4 -0
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/rng.js +15 -0
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/rng.mjs +13 -0
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.js +30 -0
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.mjs +28 -0
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.js +21 -0
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.mjs +19 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/errors.js +52 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/errors.mjs +50 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/iso.js +44 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/iso.mjs +35 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/parse.js +31 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/parse.mjs +18 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/schemas.js +492 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/schemas.mjs +439 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/api.js +434 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/api.mjs +388 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/checks.js +245 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/checks.mjs +232 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/core.js +68 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/core.mjs +62 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/errors.js +80 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/errors.mjs +75 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/parse.js +101 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/parse.mjs +86 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/regexes.js +102 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/regexes.mjs +76 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/registries.js +56 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/registries.mjs +52 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/schemas.js +952 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/schemas.mjs +909 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/util.js +182 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/util.mjs +163 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/versions.js +9 -0
- package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/versions.mjs +7 -0
- package/package.json +27 -21
- package/src/clerk/{clerk-page-generator-client.tsx → clerk-page-context-generator.tsx} +2 -2
- package/src/clerk/clerk-page-generator.tsx +3 -3
- package/src/clerk/clerk-user-client.tsx +7 -12
- package/src/clerk/fingerprint/fingerprint-provider.tsx +311 -112
- package/src/clerk/fingerprint/fingerprint-server.ts +33 -5
- package/src/clerk/fingerprint/types.ts +16 -2
- package/src/clerk/fingerprint/use-fingerprint.ts +1 -1
- package/src/clerk/index.ts +2 -1
- package/src/clerk/signin-with-fingerprint-client.tsx +3 -11
- package/src/clerk/signup-button-with-fingerprint-client.tsx +87 -0
- package/src/clerk/signup-with-fingerprint-client.tsx +3 -11
- package/src/fuma/base/custom-header.tsx +574 -0
- package/src/fuma/base/custom-home-layout.tsx +146 -0
- package/src/fuma/base/index.ts +2 -0
- package/src/fuma/fuma-banner-suit.tsx +22 -5
- package/src/fuma/fuma-page-genarator.tsx +29 -9
- package/src/fuma/fuma-translate-util.ts +44 -0
- package/src/fuma/llm-copy-handler.ts +8 -7
- package/src/fuma/mdx/airtical-card.tsx +1 -1
- package/src/fuma/mdx/banner.tsx +25 -7
- package/src/fuma/mdx/gradient-button.tsx +43 -26
- package/src/fuma/mdx/mermaid.tsx +2 -2
- package/src/fuma/mdx/toc-base.tsx +9 -4
- package/src/fuma/mdx/zia-card.tsx +6 -6
- package/src/fuma/server.ts +1 -0
- package/src/lib/fuma-schema-check-util.ts +11 -40
- package/src/lib/server.ts +0 -1
- package/src/main/ai-prompt-textarea.tsx +1 -1
- package/src/main/credit/credit-nav-button.tsx +283 -0
- package/src/main/credit/credit-overview-client.tsx +552 -0
- package/src/main/credit/credit-overview.tsx +53 -0
- package/src/main/credit/types.ts +89 -0
- package/src/main/cta.tsx +9 -8
- package/src/main/faq.tsx +4 -3
- package/src/main/features.tsx +3 -3
- package/src/main/footer.tsx +1 -1
- package/src/main/gallery/gallery-desktop-grid.tsx +41 -0
- package/src/main/gallery/gallery-interactive.tsx +153 -0
- package/src/main/gallery/gallery-mobile-swiper.tsx +65 -0
- package/src/main/gallery/gallery-server.tsx +46 -0
- package/src/main/gallery/gallery-types.ts +22 -0
- package/src/main/go-to-top.tsx +1 -1
- package/src/main/index.ts +5 -3
- package/src/main/money-price/customer-portal.ts +63 -0
- package/src/main/money-price/money-price-button.tsx +211 -56
- package/src/main/money-price/money-price-config-util.ts +222 -5
- package/src/main/money-price/money-price-data.ts +49 -0
- package/src/main/money-price/money-price-interactive.tsx +479 -356
- package/src/main/money-price/money-price-types.ts +76 -22
- package/src/main/money-price/money-price.tsx +28 -267
- package/src/main/price-plan.tsx +3 -3
- package/src/main/section-layout.ts +5 -0
- package/src/main/seo-content.tsx +2 -2
- package/src/main/server.ts +15 -4
- package/src/main/tips.tsx +2 -2
- package/src/main/usage.tsx +4 -4
- package/src/main/x-button.tsx +13 -13
- package/src/styles/fuma.css +38 -13
- package/src/styles/third-ui.css +37 -2
- package/dist/lib/fuma-search-util.d.ts +0 -2
- package/dist/lib/fuma-search-util.js +0 -8
- package/dist/lib/fuma-search-util.mjs +0 -6
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/defaults.js +0 -29
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/defaults.mjs +0 -24
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/merge.js +0 -22
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/merge.mjs +0 -20
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/name.js +0 -55
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/name.mjs +0 -52
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/transformations.js +0 -18
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/transformations.mjs +0 -16
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon-set/get-icon.js +0 -29
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon-set/get-icon.mjs +0 -26
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon-set/tree.js +0 -25
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon-set/tree.mjs +0 -23
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/build.js +0 -122
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/build.mjs +0 -119
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/defs.js +0 -34
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/defs.mjs +0 -30
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/html.js +0 -11
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/html.mjs +0 -9
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/id.js +0 -30
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/id.mjs +0 -28
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/size.js +0 -42
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/size.mjs +0 -40
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/architecture-O4VJ6CD3.js +0 -9
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/gitGraph-ZV4HHKMB.js +0 -9
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-63CPKGFF.js +0 -9
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-63CPKGFF.mjs +0 -2
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-HUATNLJX.js +0 -9
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-HUATNLJX.mjs +0 -2
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-WTHONI2E.js +0 -9
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-WTHONI2E.mjs +0 -2
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-NJJJXTRR.js +0 -9
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-NJJJXTRR.mjs +0 -2
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-75Q7IDZK.js +0 -9
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-75Q7IDZK.mjs +0 -2
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js +0 -129
- package/dist/node_modules/.pnpm/marked@16.1.2/node_modules/marked/lib/marked.esm.js +0 -83
- package/dist/node_modules/.pnpm/marked@16.1.2/node_modules/marked/lib/marked.esm.mjs +0 -73
- package/dist/node_modules/.pnpm/mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-M3E45YP4.js +0 -30
- package/dist/node_modules/.pnpm/mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-v2-YAWTLIQI.js +0 -30
- package/dist/node_modules/.pnpm/mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/infoDiagram-LHK5PUON.js +0 -41
- package/dist/node_modules/.pnpm/mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-v2-5AN5P6BG.js +0 -30
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/ZodError.js +0 -135
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/ZodError.mjs +0 -132
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/errors.js +0 -11
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/errors.mjs +0 -8
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.js +0 -8
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.mjs +0 -8
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.js +0 -122
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.mjs +0 -111
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/util.js +0 -138
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/util.mjs +0 -135
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/locales/en.js +0 -113
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/locales/en.mjs +0 -111
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.js +0 -3339
- package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.mjs +0 -3297
- package/src/lib/fuma-search-util.ts +0 -6
- package/src/main/gallery-interactive.tsx +0 -171
- package/src/main/gallery.tsx +0 -98
- /package/dist/clerk/{clerk-page-generator-client.d.ts → clerk-page-context-generator.d.ts} +0 -0
- /package/dist/node_modules/.pnpm/{@rollup_plugin-typescript@12.1.4_rollup@4.46.2_tslib@2.8.1_typescript@5.9.2 → @rollup_plugin-typescript@12.1.4_rollup@4.46.2_tslib@2.8.1_typescript@5.9.3}/node_modules/tslib/tslib.es6.js +0 -0
- /package/dist/node_modules/.pnpm/{@rollup_plugin-typescript@12.1.4_rollup@4.46.2_tslib@2.8.1_typescript@5.9.2 → @rollup_plugin-typescript@12.1.4_rollup@4.46.2_tslib@2.8.1_typescript@5.9.3}/node_modules/tslib/tslib.es6.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/acyclic.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/acyclic.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/add-border-segments.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/add-border-segments.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/coordinate-system.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/coordinate-system.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/data/list.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/data/list.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/greedy-fas.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/greedy-fas.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/layout.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/layout.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/nesting-graph.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/nesting-graph.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/normalize.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/normalize.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/add-subgraph-constraints.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/add-subgraph-constraints.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/barycenter.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/barycenter.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/build-layer-graph.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/build-layer-graph.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/index.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/index.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/init-order.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/init-order.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/resolve-conflicts.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/resolve-conflicts.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/sort-subgraph.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/sort-subgraph.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/sort.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/order/sort.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/parent-dummy-chains.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/parent-dummy-chains.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/position/index.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/position/index.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/rank/feasible-tree.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/rank/feasible-tree.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/rank/index.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/rank/index.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/rank/network-simplex.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/rank/network-simplex.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/rank/util.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/rank/util.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/util.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/dagre/util.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/graphlib/alg/dfs.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/graphlib/alg/dfs.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/graphlib/alg/postorder.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/graphlib/alg/postorder.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/graphlib/alg/preorder.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/graphlib/alg/preorder.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/graphlib/alg/topsort.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/graphlib/alg/topsort.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/graphlib/graph.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/graphlib/graph.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/graphlib/json.js +0 -0
- /package/dist/node_modules/.pnpm/{dagre-d3-es@7.0.11 → dagre-d3-es@7.0.13}/node_modules/dagre-d3-es/src/graphlib/json.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/dayjs.min.js +0 -0
- /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/dayjs.min.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/plugin/advancedFormat.js +0 -0
- /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/plugin/advancedFormat.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/plugin/customParseFormat.js +0 -0
- /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/plugin/customParseFormat.mjs +0 -0
- /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/plugin/isoWeek.js +0 -0
- /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/plugin/isoWeek.mjs +0 -0
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var tslib_es6 = require('../../node_modules/.pnpm/@rollup_plugin-typescript@12.1.4_rollup@4.46.2_tslib@2.8.1_typescript@5.9.3/node_modules/tslib/tslib.es6.js');
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var nextjs = require('@clerk/nextjs');
|
|
7
|
+
var gradientButton = require('../../fuma/mdx/gradient-button.js');
|
|
8
|
+
var server = require('@windrun-huaiin/base-ui/components/server');
|
|
9
|
+
var utils = require('@windrun-huaiin/lib/utils');
|
|
10
|
+
var React = require('react');
|
|
11
|
+
var customerPortal = require('../money-price/customer-portal.js');
|
|
12
|
+
var creditNavButton = require('./credit-nav-button.js');
|
|
13
|
+
|
|
14
|
+
const clampPercent = (value) => Math.min(100, Math.max(0, Math.round(value)));
|
|
15
|
+
const formatNumber = (locale, value) => new Intl.NumberFormat(locale, {
|
|
16
|
+
maximumFractionDigits: 0,
|
|
17
|
+
}).format(value);
|
|
18
|
+
function CreditOverviewClient({ data, locale, translations, className, expiringSoonThresholdDays = 7, customActionHandlers, }) {
|
|
19
|
+
var _a;
|
|
20
|
+
const { redirectToSignIn } = nextjs.useClerk();
|
|
21
|
+
const navPopover = creditNavButton.useCreditNavPopover();
|
|
22
|
+
const isMobile = (_a = navPopover === null || navPopover === void 0 ? void 0 : navPopover.isMobile) !== null && _a !== void 0 ? _a : false;
|
|
23
|
+
const [bucketExpanded, setBucketExpanded] = React.useState(false);
|
|
24
|
+
const userToggledRef = React.useRef(false);
|
|
25
|
+
const closeNavPopover = React.useCallback((options) => {
|
|
26
|
+
if (!navPopover) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
if (options === null || options === void 0 ? void 0 : options.defer) {
|
|
30
|
+
if (typeof window !== 'undefined' && typeof window.requestAnimationFrame === 'function') {
|
|
31
|
+
window.requestAnimationFrame(() => navPopover.close());
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
setTimeout(() => navPopover.close(), 0);
|
|
35
|
+
}
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
navPopover.close();
|
|
39
|
+
}, [navPopover]);
|
|
40
|
+
const buckets = React.useMemo(() => {
|
|
41
|
+
return (data.buckets || []).map((bucket) => {
|
|
42
|
+
var _a, _b, _c;
|
|
43
|
+
const limit = Math.max(bucket.limit, 0);
|
|
44
|
+
const rawProgress = typeof bucket.progressPercent === 'number'
|
|
45
|
+
? bucket.progressPercent
|
|
46
|
+
: limit > 0
|
|
47
|
+
? (bucket.balance / limit) * 100
|
|
48
|
+
: bucket.balance > 0
|
|
49
|
+
? 100
|
|
50
|
+
: 0;
|
|
51
|
+
const computedLabel = (_b = (_a = bucket.label) !== null && _a !== void 0 ? _a : translations.bucketDefaultLabels[bucket.kind]) !== null && _b !== void 0 ? _b : bucket.kind;
|
|
52
|
+
const computedStatus = (_c = bucket.status) !== null && _c !== void 0 ? _c : deriveStatus(bucket.expiresAt, expiringSoonThresholdDays);
|
|
53
|
+
return Object.assign(Object.assign({}, bucket), { progress: clampPercent(rawProgress), computedLabel,
|
|
54
|
+
computedStatus });
|
|
55
|
+
});
|
|
56
|
+
}, [data.buckets, translations.bucketDefaultLabels, expiringSoonThresholdDays]);
|
|
57
|
+
const hasBuckets = buckets.length > 0;
|
|
58
|
+
const subscription = data.subscription;
|
|
59
|
+
const pricingContext = data.pricingContext;
|
|
60
|
+
const ctaBehaviors = data.ctaBehaviors;
|
|
61
|
+
const getModalMoneyPriceData = React.useCallback((mode) => {
|
|
62
|
+
if (!pricingContext) {
|
|
63
|
+
return null;
|
|
64
|
+
}
|
|
65
|
+
if (mode !== 'onetime') {
|
|
66
|
+
return pricingContext.moneyPriceData;
|
|
67
|
+
}
|
|
68
|
+
const hasOnetimeOption = pricingContext.moneyPriceData.billingSwitch.options.some((option) => option.key === 'onetime');
|
|
69
|
+
if (!hasOnetimeOption) {
|
|
70
|
+
return pricingContext.moneyPriceData;
|
|
71
|
+
}
|
|
72
|
+
return Object.assign(Object.assign({}, pricingContext.moneyPriceData), { billingSwitch: Object.assign(Object.assign({}, pricingContext.moneyPriceData.billingSwitch), { defaultKey: 'onetime' }) });
|
|
73
|
+
}, [pricingContext]);
|
|
74
|
+
const requestPricingModal = React.useCallback((mode) => {
|
|
75
|
+
if (!pricingContext || !(navPopover === null || navPopover === void 0 ? void 0 : navPopover.openPricingModal)) {
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
const dataForMode = getModalMoneyPriceData(mode);
|
|
79
|
+
if (!dataForMode) {
|
|
80
|
+
return false;
|
|
81
|
+
}
|
|
82
|
+
navPopover.openPricingModal({
|
|
83
|
+
mode,
|
|
84
|
+
modalMoneyPriceData: dataForMode,
|
|
85
|
+
pricingContext,
|
|
86
|
+
});
|
|
87
|
+
return true;
|
|
88
|
+
}, [getModalMoneyPriceData, navPopover, pricingContext]);
|
|
89
|
+
const executeAuthAction = React.useCallback((action) => tslib_es6.__awaiter(this, void 0, void 0, function* () {
|
|
90
|
+
var _a;
|
|
91
|
+
const endpoint = (_a = action.endpoint) !== null && _a !== void 0 ? _a : pricingContext === null || pricingContext === void 0 ? void 0 : pricingContext.customerPortalApiEndpoint;
|
|
92
|
+
if (!endpoint) {
|
|
93
|
+
console.warn('[CreditOverview] Auth action requires an endpoint.');
|
|
94
|
+
return false;
|
|
95
|
+
}
|
|
96
|
+
return customerPortal.redirectToCustomerPortal({
|
|
97
|
+
customerPortalApiEndpoint: endpoint,
|
|
98
|
+
redirectToSignIn,
|
|
99
|
+
returnUrl: action.returnUrl,
|
|
100
|
+
});
|
|
101
|
+
}), [pricingContext, redirectToSignIn]);
|
|
102
|
+
const executeConfiguredAction = React.useCallback((action, key, device) => tslib_es6.__awaiter(this, void 0, void 0, function* () {
|
|
103
|
+
if (device === 'mobile' && action.kind === 'modal') {
|
|
104
|
+
console.warn(`[CreditOverview] Mobile device cannot run modal action for "${key}". Adjust configuration.`);
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
switch (action.kind) {
|
|
108
|
+
case 'modal': {
|
|
109
|
+
const opened = requestPricingModal(action.mode);
|
|
110
|
+
if (opened) {
|
|
111
|
+
closeNavPopover({ defer: true });
|
|
112
|
+
}
|
|
113
|
+
return opened;
|
|
114
|
+
}
|
|
115
|
+
case 'redirect': {
|
|
116
|
+
if (!action.url || action.url === '#') {
|
|
117
|
+
console.warn(`[CreditOverview] Redirect URL missing for action "${key}".`);
|
|
118
|
+
return false;
|
|
119
|
+
}
|
|
120
|
+
window.location.href = action.url;
|
|
121
|
+
closeNavPopover();
|
|
122
|
+
return true;
|
|
123
|
+
}
|
|
124
|
+
case 'auth': {
|
|
125
|
+
const handled = yield executeAuthAction(action);
|
|
126
|
+
if (handled) {
|
|
127
|
+
closeNavPopover();
|
|
128
|
+
}
|
|
129
|
+
return handled;
|
|
130
|
+
}
|
|
131
|
+
case 'custom': {
|
|
132
|
+
const handler = customActionHandlers === null || customActionHandlers === void 0 ? void 0 : customActionHandlers[action.handlerKey];
|
|
133
|
+
if (!handler) {
|
|
134
|
+
console.warn(`[CreditOverview] Custom action "${action.handlerKey}" missing handler for "${key}".`);
|
|
135
|
+
return false;
|
|
136
|
+
}
|
|
137
|
+
yield handler();
|
|
138
|
+
closeNavPopover();
|
|
139
|
+
return true;
|
|
140
|
+
}
|
|
141
|
+
default:
|
|
142
|
+
return false;
|
|
143
|
+
}
|
|
144
|
+
}), [closeNavPopover, customActionHandlers, executeAuthAction, requestPricingModal]);
|
|
145
|
+
const runConfiguredAction = React.useCallback((key, fallback) => tslib_es6.__awaiter(this, void 0, void 0, function* () {
|
|
146
|
+
var _a;
|
|
147
|
+
const device = isMobile ? 'mobile' : 'desktop';
|
|
148
|
+
const deviceAction = (_a = ctaBehaviors === null || ctaBehaviors === void 0 ? void 0 : ctaBehaviors[key]) === null || _a === void 0 ? void 0 : _a[device];
|
|
149
|
+
if (deviceAction) {
|
|
150
|
+
const handled = yield executeConfiguredAction(deviceAction, key, device);
|
|
151
|
+
if (handled) {
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
154
|
+
console.warn(`[CreditOverview] Configured action "${key}" for ${device} did not complete successfully. Falling back to default behavior.`);
|
|
155
|
+
}
|
|
156
|
+
else if (ctaBehaviors === null || ctaBehaviors === void 0 ? void 0 : ctaBehaviors[key]) {
|
|
157
|
+
console.warn(`[CreditOverview] Missing ${device} configuration for action "${key}". Falling back to default behavior.`);
|
|
158
|
+
}
|
|
159
|
+
yield Promise.resolve(fallback());
|
|
160
|
+
}), [ctaBehaviors, executeConfiguredAction, isMobile]);
|
|
161
|
+
const fallbackSubscribe = React.useCallback(() => tslib_es6.__awaiter(this, void 0, void 0, function* () {
|
|
162
|
+
if (!isMobile) {
|
|
163
|
+
const opened = requestPricingModal('subscription');
|
|
164
|
+
if (opened) {
|
|
165
|
+
closeNavPopover({ defer: true });
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
console.warn(`[CreditOverview] Missing subscribe action for ${isMobile ? 'mobile' : 'desktop'} device. Dropdown will simply close.`);
|
|
170
|
+
closeNavPopover();
|
|
171
|
+
}), [closeNavPopover, isMobile, requestPricingModal]);
|
|
172
|
+
const fallbackManage = React.useCallback(() => tslib_es6.__awaiter(this, void 0, void 0, function* () {
|
|
173
|
+
const handled = yield customerPortal.redirectToCustomerPortal({
|
|
174
|
+
customerPortalApiEndpoint: pricingContext === null || pricingContext === void 0 ? void 0 : pricingContext.customerPortalApiEndpoint,
|
|
175
|
+
redirectToSignIn,
|
|
176
|
+
});
|
|
177
|
+
if (handled) {
|
|
178
|
+
closeNavPopover();
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
if (!isMobile) {
|
|
182
|
+
const opened = requestPricingModal('subscription');
|
|
183
|
+
if (opened) {
|
|
184
|
+
closeNavPopover({ defer: true });
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}), [
|
|
188
|
+
closeNavPopover,
|
|
189
|
+
isMobile,
|
|
190
|
+
pricingContext,
|
|
191
|
+
redirectToSignIn,
|
|
192
|
+
requestPricingModal,
|
|
193
|
+
]);
|
|
194
|
+
const fallbackOnetime = React.useCallback(() => tslib_es6.__awaiter(this, void 0, void 0, function* () {
|
|
195
|
+
if (!isMobile) {
|
|
196
|
+
const opened = requestPricingModal('onetime');
|
|
197
|
+
if (opened) {
|
|
198
|
+
closeNavPopover({ defer: true });
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
console.warn(`[CreditOverview] Missing onetime action for ${isMobile ? 'mobile' : 'desktop'} device. Dropdown will simply close.`);
|
|
203
|
+
closeNavPopover();
|
|
204
|
+
}), [closeNavPopover, isMobile, requestPricingModal]);
|
|
205
|
+
const handleSubscribeAction = React.useCallback(() => tslib_es6.__awaiter(this, void 0, void 0, function* () {
|
|
206
|
+
if (subscription) {
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
yield runConfiguredAction('subscribe', fallbackSubscribe);
|
|
210
|
+
}), [fallbackSubscribe, runConfiguredAction, subscription]);
|
|
211
|
+
const handleManageAction = React.useCallback(() => tslib_es6.__awaiter(this, void 0, void 0, function* () {
|
|
212
|
+
if (!subscription) {
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
yield runConfiguredAction('manage', fallbackManage);
|
|
216
|
+
}), [fallbackManage, runConfiguredAction, subscription]);
|
|
217
|
+
const handleOnetimeAction = React.useCallback(() => tslib_es6.__awaiter(this, void 0, void 0, function* () {
|
|
218
|
+
yield runConfiguredAction('onetime', fallbackOnetime);
|
|
219
|
+
}), [fallbackOnetime, runConfiguredAction]);
|
|
220
|
+
React.useLayoutEffect(() => {
|
|
221
|
+
if (userToggledRef.current) {
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
setBucketExpanded(!isMobile);
|
|
225
|
+
}, [isMobile]);
|
|
226
|
+
const toggleBucketExpanded = React.useCallback(() => {
|
|
227
|
+
userToggledRef.current = true;
|
|
228
|
+
setBucketExpanded((prev) => !prev);
|
|
229
|
+
}, []);
|
|
230
|
+
const expandBuckets = React.useCallback(() => {
|
|
231
|
+
userToggledRef.current = true;
|
|
232
|
+
setBucketExpanded(true);
|
|
233
|
+
}, []);
|
|
234
|
+
return (jsxRuntime.jsxs("section", { className: utils.cn("flex flex-col gap-2 p-2 shadow-inner rounded-xl bg-white dark:bg-slate-900", className), children: [jsxRuntime.jsxs("header", { className: "relative rounded-2xl bg-linear-to-bl from-indigo-200/60 via-indigo-400/90 to-purple-200/50 p-4 shadow-inner dark:from-indigo-300/20 dark:via-slate-400 dark:to-slate-500/50 sm:p-6", children: [jsxRuntime.jsxs("div", { className: "flex flex-col gap-2 sm:gap-3", children: [jsxRuntime.jsxs("div", { className: "flex items-center justify-start rounded-full ", children: [jsxRuntime.jsx(server.globalLucideIcons.Gem, { "aria-hidden": true, className: "mr-2 h-6 w-6 sm:h-8 sm:w-8" }), jsxRuntime.jsx("span", { className: "text-sm font-medium sm:text-base", children: translations.totalLabel })] }), jsxRuntime.jsx("div", { className: "flex justify-center text-3xl font-semibold leading-tight sm:text-4xl", children: formatNumber(locale, data.totalBalance) }), jsxRuntime.jsxs("div", { className: "flex-1 flex-col gap-1", children: [jsxRuntime.jsx("p", { className: "text-xs text-gray-700 dark:text-slate-100 sm:text-sm", children: translations.subscriptionPeriodLabel }), jsxRuntime.jsx("h4", { className: "text-xl font-semibold sm:text-2xl", children: subscription ? subscription.planName : translations.subscriptionInactive })] }), jsxRuntime.jsx("div", { className: "pt-2 sm:pt-0", children: jsxRuntime.jsx(gradientButton.GradientButton, { title: subscription ? translations.subscriptionManage : translations.subscribePay, align: "center", icon: subscription ? jsxRuntime.jsx(server.globalLucideIcons.Settings2, {}) : jsxRuntime.jsx(server.globalLucideIcons.Bell, {}), openInNewTab: false, className: "w-full", onClick: subscription ? handleManageAction : handleSubscribeAction }) })] }), jsxRuntime.jsx("div", { className: "absolute right-3 top-3 sm:right-6 sm:top-6", children: jsxRuntime.jsx(HoverInfo, { label: translations.totalLabel, description: translations.summaryDescription }) })] }), jsxRuntime.jsxs("section", { className: "relative flex flex-col gap-3 rounded-2xl border p-4 shadow-inner sm:gap-2 sm:p-5", children: [jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center justify-between gap-2", children: [jsxRuntime.jsx("h3", { className: "text-base font-semibold text-gray-500 dark:text-slate-100 sm:text-lg", children: translations.bucketsTitle }), hasBuckets ? (jsxRuntime.jsx("button", { type: "button", "aria-expanded": bucketExpanded, "aria-label": bucketExpanded ? translations.hiddenDetail : translations.expandDetail, onClick: toggleBucketExpanded, className: "flex h-7 w-7 items-center justify-center rounded-full border border-transparent bg-white text-purple-600 shadow-[0_6px_20px_rgba(99,102,241,0.25)] transition-colors hover:text-purple-700 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-purple-500 dark:bg-[#1b1541] dark:text-purple-100 dark:hover:text-purple-50 dark:shadow-[0_6px_22px_rgba(112,86,255,0.35)]", children: bucketExpanded ? (jsxRuntime.jsx(server.globalLucideIcons.ChevronUp, { className: "h-4 w-4" })) : (jsxRuntime.jsx(server.globalLucideIcons.ChevronDown, { className: "h-4 w-4" })) })) : null] }), hasBuckets ? (bucketExpanded ? (jsxRuntime.jsx("ul", { className: "flex flex-col gap-2", children: buckets.map((bucket) => {
|
|
235
|
+
const balanceDisplay = formatNumber(locale, bucket.balance);
|
|
236
|
+
return (jsxRuntime.jsxs("li", { "data-credit-kind": bucket.kind, className: "rounded-2xl border border-slate-200/70 bg-white/85 px-3 py-3 text-sm shadow-sm transition-transform hover:-translate-y-0.5 hover:shadow-md dark:border-slate-800/60 dark:bg-slate-900/60 sm:px-4", children: [jsxRuntime.jsxs("div", { className: "grid grid-cols-[1fr_auto] items-center gap-3 text-xs sm:text-sm", children: [jsxRuntime.jsx("span", { className: "flex min-w-0 items-center gap-2", children: jsxRuntime.jsx("span", { className: "max-w-full truncate rounded-full bg-purple-50 px-2 py-1 text-xs font-semibold text-purple-600 shadow-sm dark:bg-purple-500/20 dark:text-purple-100 sm:text-sm", children: bucket.computedLabel }) }), jsxRuntime.jsx("span", { className: "flex min-w-0 justify-end", children: jsxRuntime.jsx("span", { className: "text-right text-base font-semibold leading-tight text-gray-500 dark:text-slate-100 sm:text-lg", title: balanceDisplay, children: balanceDisplay }) })] }), jsxRuntime.jsx("div", { className: "mt-3 flex justify-end gap-2", children: jsxRuntime.jsxs("span", { className: "text-[11px] font-semibold text-gray-500 dark:text-slate-100 sm:text-xs", children: [translations.expiredAtLabel, ": ", bucket.expiresAt] }) })] }, bucket.kind));
|
|
237
|
+
}) })) : (jsxRuntime.jsx("button", { type: "button", onClick: expandBuckets, className: "w-full rounded-2xl border border-slate-200/70 bg-white/85 p-6 sm:px-4 text-sm shadow-sm transition-transform hover:-translate-y-0.5 hover:shadow-md dark:border-slate-800/60 dark:bg-slate-900/60 hover:text-purple-500", children: translations.expandDetail }))) : (jsxRuntime.jsx("div", { className: "w-full rounded-2xl border border-slate-200/70 bg-white/85 p-6 sm:px-4 text-sm shadow-sm transition-transform dark:border-slate-800/60 dark:bg-slate-900/60 text-center", children: translations.bucketsEmpty })), jsxRuntime.jsx(gradientButton.GradientButton, { title: translations.onetimeBuy, icon: jsxRuntime.jsx(server.globalLucideIcons.ShoppingCart, {}), align: "center", className: "w-full text-sm sm:text-base", onClick: handleOnetimeAction })] })] }));
|
|
238
|
+
}
|
|
239
|
+
function deriveStatus(expiresAt, thresholdDays = 7) {
|
|
240
|
+
if (!expiresAt) {
|
|
241
|
+
return 'active';
|
|
242
|
+
}
|
|
243
|
+
const expires = new Date(expiresAt);
|
|
244
|
+
if (Number.isNaN(expires.getTime())) {
|
|
245
|
+
return 'active';
|
|
246
|
+
}
|
|
247
|
+
const diff = differenceInDays(expires, new Date());
|
|
248
|
+
if (diff < 0) {
|
|
249
|
+
return 'expired';
|
|
250
|
+
}
|
|
251
|
+
if (diff <= thresholdDays) {
|
|
252
|
+
return 'expiringSoon';
|
|
253
|
+
}
|
|
254
|
+
return 'active';
|
|
255
|
+
}
|
|
256
|
+
function differenceInDays(later, earlier) {
|
|
257
|
+
const msInDay = 86400000;
|
|
258
|
+
return Math.floor((later.getTime() - earlier.getTime()) / msInDay);
|
|
259
|
+
}
|
|
260
|
+
function HoverInfo({ description, variant = 'default' }) {
|
|
261
|
+
if (!description) {
|
|
262
|
+
return null;
|
|
263
|
+
}
|
|
264
|
+
return (jsxRuntime.jsxs("span", { className: "group relative inline-flex shrink-0", children: [jsxRuntime.jsx("button", { type: "button", "aria-label": description, className: utils.cn('flex h-7 w-7 items-center justify-center rounded-full border text-xs transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-purple-500', variant === 'muted'
|
|
265
|
+
? 'border-transparent bg-slate-100 text-slate-500 hover:text-slate-700 dark:bg-slate-800/70 dark:text-slate-100 dark:hover:text-slate-100'
|
|
266
|
+
: 'border-transparent bg-white text-purple-600 shadow-[0_6px_20px_rgba(99,102,241,0.25)] hover:text-purple-700 dark:bg-[#1b1541] dark:text-purple-100 dark:hover:text-purple-50 dark:shadow-[0_6px_22px_rgba(112,86,255,0.35)]'), children: jsxRuntime.jsx(server.globalLucideIcons.CircleQuestionMark, { className: "h-3.5 w-3.5" }) }), jsxRuntime.jsx("span", { role: "tooltip", className: "pointer-events-none absolute top-full right-full z-50 mt-3 w-max max-w-[260px] translate-x-4 rounded-xl border border-slate-200/70 bg-slate-900/95 px-3 py-2 text-xs leading-relaxed text-white opacity-0 shadow-xl ring-1 ring-black/30 transition-all duration-150 ease-out group-hover:-translate-y-1 group-hover:opacity-100 group-focus-within:-translate-y-1 group-focus-within:opacity-100 dark:border-slate-700/60 dark:bg-slate-800/95", children: jsxRuntime.jsx("span", { className: "mt-1 block text-white dark:text-slate-100", children: description }) })] }));
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
exports.CreditOverviewClient = CreditOverviewClient;
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { __awaiter } from '../../node_modules/.pnpm/@rollup_plugin-typescript@12.1.4_rollup@4.46.2_tslib@2.8.1_typescript@5.9.3/node_modules/tslib/tslib.es6.mjs';
|
|
3
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
4
|
+
import { useClerk } from '@clerk/nextjs';
|
|
5
|
+
import { GradientButton } from '../../fuma/mdx/gradient-button.mjs';
|
|
6
|
+
import { globalLucideIcons } from '@windrun-huaiin/base-ui/components/server';
|
|
7
|
+
import { cn } from '@windrun-huaiin/lib/utils';
|
|
8
|
+
import { useState, useRef, useCallback, useMemo, useLayoutEffect } from 'react';
|
|
9
|
+
import { redirectToCustomerPortal } from '../money-price/customer-portal.mjs';
|
|
10
|
+
import { useCreditNavPopover } from './credit-nav-button.mjs';
|
|
11
|
+
|
|
12
|
+
const clampPercent = (value) => Math.min(100, Math.max(0, Math.round(value)));
|
|
13
|
+
const formatNumber = (locale, value) => new Intl.NumberFormat(locale, {
|
|
14
|
+
maximumFractionDigits: 0,
|
|
15
|
+
}).format(value);
|
|
16
|
+
function CreditOverviewClient({ data, locale, translations, className, expiringSoonThresholdDays = 7, customActionHandlers, }) {
|
|
17
|
+
var _a;
|
|
18
|
+
const { redirectToSignIn } = useClerk();
|
|
19
|
+
const navPopover = useCreditNavPopover();
|
|
20
|
+
const isMobile = (_a = navPopover === null || navPopover === void 0 ? void 0 : navPopover.isMobile) !== null && _a !== void 0 ? _a : false;
|
|
21
|
+
const [bucketExpanded, setBucketExpanded] = useState(false);
|
|
22
|
+
const userToggledRef = useRef(false);
|
|
23
|
+
const closeNavPopover = useCallback((options) => {
|
|
24
|
+
if (!navPopover) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
if (options === null || options === void 0 ? void 0 : options.defer) {
|
|
28
|
+
if (typeof window !== 'undefined' && typeof window.requestAnimationFrame === 'function') {
|
|
29
|
+
window.requestAnimationFrame(() => navPopover.close());
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
setTimeout(() => navPopover.close(), 0);
|
|
33
|
+
}
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
navPopover.close();
|
|
37
|
+
}, [navPopover]);
|
|
38
|
+
const buckets = useMemo(() => {
|
|
39
|
+
return (data.buckets || []).map((bucket) => {
|
|
40
|
+
var _a, _b, _c;
|
|
41
|
+
const limit = Math.max(bucket.limit, 0);
|
|
42
|
+
const rawProgress = typeof bucket.progressPercent === 'number'
|
|
43
|
+
? bucket.progressPercent
|
|
44
|
+
: limit > 0
|
|
45
|
+
? (bucket.balance / limit) * 100
|
|
46
|
+
: bucket.balance > 0
|
|
47
|
+
? 100
|
|
48
|
+
: 0;
|
|
49
|
+
const computedLabel = (_b = (_a = bucket.label) !== null && _a !== void 0 ? _a : translations.bucketDefaultLabels[bucket.kind]) !== null && _b !== void 0 ? _b : bucket.kind;
|
|
50
|
+
const computedStatus = (_c = bucket.status) !== null && _c !== void 0 ? _c : deriveStatus(bucket.expiresAt, expiringSoonThresholdDays);
|
|
51
|
+
return Object.assign(Object.assign({}, bucket), { progress: clampPercent(rawProgress), computedLabel,
|
|
52
|
+
computedStatus });
|
|
53
|
+
});
|
|
54
|
+
}, [data.buckets, translations.bucketDefaultLabels, expiringSoonThresholdDays]);
|
|
55
|
+
const hasBuckets = buckets.length > 0;
|
|
56
|
+
const subscription = data.subscription;
|
|
57
|
+
const pricingContext = data.pricingContext;
|
|
58
|
+
const ctaBehaviors = data.ctaBehaviors;
|
|
59
|
+
const getModalMoneyPriceData = useCallback((mode) => {
|
|
60
|
+
if (!pricingContext) {
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
if (mode !== 'onetime') {
|
|
64
|
+
return pricingContext.moneyPriceData;
|
|
65
|
+
}
|
|
66
|
+
const hasOnetimeOption = pricingContext.moneyPriceData.billingSwitch.options.some((option) => option.key === 'onetime');
|
|
67
|
+
if (!hasOnetimeOption) {
|
|
68
|
+
return pricingContext.moneyPriceData;
|
|
69
|
+
}
|
|
70
|
+
return Object.assign(Object.assign({}, pricingContext.moneyPriceData), { billingSwitch: Object.assign(Object.assign({}, pricingContext.moneyPriceData.billingSwitch), { defaultKey: 'onetime' }) });
|
|
71
|
+
}, [pricingContext]);
|
|
72
|
+
const requestPricingModal = useCallback((mode) => {
|
|
73
|
+
if (!pricingContext || !(navPopover === null || navPopover === void 0 ? void 0 : navPopover.openPricingModal)) {
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
const dataForMode = getModalMoneyPriceData(mode);
|
|
77
|
+
if (!dataForMode) {
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
navPopover.openPricingModal({
|
|
81
|
+
mode,
|
|
82
|
+
modalMoneyPriceData: dataForMode,
|
|
83
|
+
pricingContext,
|
|
84
|
+
});
|
|
85
|
+
return true;
|
|
86
|
+
}, [getModalMoneyPriceData, navPopover, pricingContext]);
|
|
87
|
+
const executeAuthAction = useCallback((action) => __awaiter(this, void 0, void 0, function* () {
|
|
88
|
+
var _a;
|
|
89
|
+
const endpoint = (_a = action.endpoint) !== null && _a !== void 0 ? _a : pricingContext === null || pricingContext === void 0 ? void 0 : pricingContext.customerPortalApiEndpoint;
|
|
90
|
+
if (!endpoint) {
|
|
91
|
+
console.warn('[CreditOverview] Auth action requires an endpoint.');
|
|
92
|
+
return false;
|
|
93
|
+
}
|
|
94
|
+
return redirectToCustomerPortal({
|
|
95
|
+
customerPortalApiEndpoint: endpoint,
|
|
96
|
+
redirectToSignIn,
|
|
97
|
+
returnUrl: action.returnUrl,
|
|
98
|
+
});
|
|
99
|
+
}), [pricingContext, redirectToSignIn]);
|
|
100
|
+
const executeConfiguredAction = useCallback((action, key, device) => __awaiter(this, void 0, void 0, function* () {
|
|
101
|
+
if (device === 'mobile' && action.kind === 'modal') {
|
|
102
|
+
console.warn(`[CreditOverview] Mobile device cannot run modal action for "${key}". Adjust configuration.`);
|
|
103
|
+
return false;
|
|
104
|
+
}
|
|
105
|
+
switch (action.kind) {
|
|
106
|
+
case 'modal': {
|
|
107
|
+
const opened = requestPricingModal(action.mode);
|
|
108
|
+
if (opened) {
|
|
109
|
+
closeNavPopover({ defer: true });
|
|
110
|
+
}
|
|
111
|
+
return opened;
|
|
112
|
+
}
|
|
113
|
+
case 'redirect': {
|
|
114
|
+
if (!action.url || action.url === '#') {
|
|
115
|
+
console.warn(`[CreditOverview] Redirect URL missing for action "${key}".`);
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
118
|
+
window.location.href = action.url;
|
|
119
|
+
closeNavPopover();
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
case 'auth': {
|
|
123
|
+
const handled = yield executeAuthAction(action);
|
|
124
|
+
if (handled) {
|
|
125
|
+
closeNavPopover();
|
|
126
|
+
}
|
|
127
|
+
return handled;
|
|
128
|
+
}
|
|
129
|
+
case 'custom': {
|
|
130
|
+
const handler = customActionHandlers === null || customActionHandlers === void 0 ? void 0 : customActionHandlers[action.handlerKey];
|
|
131
|
+
if (!handler) {
|
|
132
|
+
console.warn(`[CreditOverview] Custom action "${action.handlerKey}" missing handler for "${key}".`);
|
|
133
|
+
return false;
|
|
134
|
+
}
|
|
135
|
+
yield handler();
|
|
136
|
+
closeNavPopover();
|
|
137
|
+
return true;
|
|
138
|
+
}
|
|
139
|
+
default:
|
|
140
|
+
return false;
|
|
141
|
+
}
|
|
142
|
+
}), [closeNavPopover, customActionHandlers, executeAuthAction, requestPricingModal]);
|
|
143
|
+
const runConfiguredAction = useCallback((key, fallback) => __awaiter(this, void 0, void 0, function* () {
|
|
144
|
+
var _a;
|
|
145
|
+
const device = isMobile ? 'mobile' : 'desktop';
|
|
146
|
+
const deviceAction = (_a = ctaBehaviors === null || ctaBehaviors === void 0 ? void 0 : ctaBehaviors[key]) === null || _a === void 0 ? void 0 : _a[device];
|
|
147
|
+
if (deviceAction) {
|
|
148
|
+
const handled = yield executeConfiguredAction(deviceAction, key, device);
|
|
149
|
+
if (handled) {
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
console.warn(`[CreditOverview] Configured action "${key}" for ${device} did not complete successfully. Falling back to default behavior.`);
|
|
153
|
+
}
|
|
154
|
+
else if (ctaBehaviors === null || ctaBehaviors === void 0 ? void 0 : ctaBehaviors[key]) {
|
|
155
|
+
console.warn(`[CreditOverview] Missing ${device} configuration for action "${key}". Falling back to default behavior.`);
|
|
156
|
+
}
|
|
157
|
+
yield Promise.resolve(fallback());
|
|
158
|
+
}), [ctaBehaviors, executeConfiguredAction, isMobile]);
|
|
159
|
+
const fallbackSubscribe = useCallback(() => __awaiter(this, void 0, void 0, function* () {
|
|
160
|
+
if (!isMobile) {
|
|
161
|
+
const opened = requestPricingModal('subscription');
|
|
162
|
+
if (opened) {
|
|
163
|
+
closeNavPopover({ defer: true });
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
console.warn(`[CreditOverview] Missing subscribe action for ${isMobile ? 'mobile' : 'desktop'} device. Dropdown will simply close.`);
|
|
168
|
+
closeNavPopover();
|
|
169
|
+
}), [closeNavPopover, isMobile, requestPricingModal]);
|
|
170
|
+
const fallbackManage = useCallback(() => __awaiter(this, void 0, void 0, function* () {
|
|
171
|
+
const handled = yield redirectToCustomerPortal({
|
|
172
|
+
customerPortalApiEndpoint: pricingContext === null || pricingContext === void 0 ? void 0 : pricingContext.customerPortalApiEndpoint,
|
|
173
|
+
redirectToSignIn,
|
|
174
|
+
});
|
|
175
|
+
if (handled) {
|
|
176
|
+
closeNavPopover();
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
if (!isMobile) {
|
|
180
|
+
const opened = requestPricingModal('subscription');
|
|
181
|
+
if (opened) {
|
|
182
|
+
closeNavPopover({ defer: true });
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}), [
|
|
186
|
+
closeNavPopover,
|
|
187
|
+
isMobile,
|
|
188
|
+
pricingContext,
|
|
189
|
+
redirectToSignIn,
|
|
190
|
+
requestPricingModal,
|
|
191
|
+
]);
|
|
192
|
+
const fallbackOnetime = useCallback(() => __awaiter(this, void 0, void 0, function* () {
|
|
193
|
+
if (!isMobile) {
|
|
194
|
+
const opened = requestPricingModal('onetime');
|
|
195
|
+
if (opened) {
|
|
196
|
+
closeNavPopover({ defer: true });
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
console.warn(`[CreditOverview] Missing onetime action for ${isMobile ? 'mobile' : 'desktop'} device. Dropdown will simply close.`);
|
|
201
|
+
closeNavPopover();
|
|
202
|
+
}), [closeNavPopover, isMobile, requestPricingModal]);
|
|
203
|
+
const handleSubscribeAction = useCallback(() => __awaiter(this, void 0, void 0, function* () {
|
|
204
|
+
if (subscription) {
|
|
205
|
+
return;
|
|
206
|
+
}
|
|
207
|
+
yield runConfiguredAction('subscribe', fallbackSubscribe);
|
|
208
|
+
}), [fallbackSubscribe, runConfiguredAction, subscription]);
|
|
209
|
+
const handleManageAction = useCallback(() => __awaiter(this, void 0, void 0, function* () {
|
|
210
|
+
if (!subscription) {
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
yield runConfiguredAction('manage', fallbackManage);
|
|
214
|
+
}), [fallbackManage, runConfiguredAction, subscription]);
|
|
215
|
+
const handleOnetimeAction = useCallback(() => __awaiter(this, void 0, void 0, function* () {
|
|
216
|
+
yield runConfiguredAction('onetime', fallbackOnetime);
|
|
217
|
+
}), [fallbackOnetime, runConfiguredAction]);
|
|
218
|
+
useLayoutEffect(() => {
|
|
219
|
+
if (userToggledRef.current) {
|
|
220
|
+
return;
|
|
221
|
+
}
|
|
222
|
+
setBucketExpanded(!isMobile);
|
|
223
|
+
}, [isMobile]);
|
|
224
|
+
const toggleBucketExpanded = useCallback(() => {
|
|
225
|
+
userToggledRef.current = true;
|
|
226
|
+
setBucketExpanded((prev) => !prev);
|
|
227
|
+
}, []);
|
|
228
|
+
const expandBuckets = useCallback(() => {
|
|
229
|
+
userToggledRef.current = true;
|
|
230
|
+
setBucketExpanded(true);
|
|
231
|
+
}, []);
|
|
232
|
+
return (jsxs("section", { className: cn("flex flex-col gap-2 p-2 shadow-inner rounded-xl bg-white dark:bg-slate-900", className), children: [jsxs("header", { className: "relative rounded-2xl bg-linear-to-bl from-indigo-200/60 via-indigo-400/90 to-purple-200/50 p-4 shadow-inner dark:from-indigo-300/20 dark:via-slate-400 dark:to-slate-500/50 sm:p-6", children: [jsxs("div", { className: "flex flex-col gap-2 sm:gap-3", children: [jsxs("div", { className: "flex items-center justify-start rounded-full ", children: [jsx(globalLucideIcons.Gem, { "aria-hidden": true, className: "mr-2 h-6 w-6 sm:h-8 sm:w-8" }), jsx("span", { className: "text-sm font-medium sm:text-base", children: translations.totalLabel })] }), jsx("div", { className: "flex justify-center text-3xl font-semibold leading-tight sm:text-4xl", children: formatNumber(locale, data.totalBalance) }), jsxs("div", { className: "flex-1 flex-col gap-1", children: [jsx("p", { className: "text-xs text-gray-700 dark:text-slate-100 sm:text-sm", children: translations.subscriptionPeriodLabel }), jsx("h4", { className: "text-xl font-semibold sm:text-2xl", children: subscription ? subscription.planName : translations.subscriptionInactive })] }), jsx("div", { className: "pt-2 sm:pt-0", children: jsx(GradientButton, { title: subscription ? translations.subscriptionManage : translations.subscribePay, align: "center", icon: subscription ? jsx(globalLucideIcons.Settings2, {}) : jsx(globalLucideIcons.Bell, {}), openInNewTab: false, className: "w-full", onClick: subscription ? handleManageAction : handleSubscribeAction }) })] }), jsx("div", { className: "absolute right-3 top-3 sm:right-6 sm:top-6", children: jsx(HoverInfo, { label: translations.totalLabel, description: translations.summaryDescription }) })] }), jsxs("section", { className: "relative flex flex-col gap-3 rounded-2xl border p-4 shadow-inner sm:gap-2 sm:p-5", children: [jsxs("div", { className: "flex flex-wrap items-center justify-between gap-2", children: [jsx("h3", { className: "text-base font-semibold text-gray-500 dark:text-slate-100 sm:text-lg", children: translations.bucketsTitle }), hasBuckets ? (jsx("button", { type: "button", "aria-expanded": bucketExpanded, "aria-label": bucketExpanded ? translations.hiddenDetail : translations.expandDetail, onClick: toggleBucketExpanded, className: "flex h-7 w-7 items-center justify-center rounded-full border border-transparent bg-white text-purple-600 shadow-[0_6px_20px_rgba(99,102,241,0.25)] transition-colors hover:text-purple-700 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-purple-500 dark:bg-[#1b1541] dark:text-purple-100 dark:hover:text-purple-50 dark:shadow-[0_6px_22px_rgba(112,86,255,0.35)]", children: bucketExpanded ? (jsx(globalLucideIcons.ChevronUp, { className: "h-4 w-4" })) : (jsx(globalLucideIcons.ChevronDown, { className: "h-4 w-4" })) })) : null] }), hasBuckets ? (bucketExpanded ? (jsx("ul", { className: "flex flex-col gap-2", children: buckets.map((bucket) => {
|
|
233
|
+
const balanceDisplay = formatNumber(locale, bucket.balance);
|
|
234
|
+
return (jsxs("li", { "data-credit-kind": bucket.kind, className: "rounded-2xl border border-slate-200/70 bg-white/85 px-3 py-3 text-sm shadow-sm transition-transform hover:-translate-y-0.5 hover:shadow-md dark:border-slate-800/60 dark:bg-slate-900/60 sm:px-4", children: [jsxs("div", { className: "grid grid-cols-[1fr_auto] items-center gap-3 text-xs sm:text-sm", children: [jsx("span", { className: "flex min-w-0 items-center gap-2", children: jsx("span", { className: "max-w-full truncate rounded-full bg-purple-50 px-2 py-1 text-xs font-semibold text-purple-600 shadow-sm dark:bg-purple-500/20 dark:text-purple-100 sm:text-sm", children: bucket.computedLabel }) }), jsx("span", { className: "flex min-w-0 justify-end", children: jsx("span", { className: "text-right text-base font-semibold leading-tight text-gray-500 dark:text-slate-100 sm:text-lg", title: balanceDisplay, children: balanceDisplay }) })] }), jsx("div", { className: "mt-3 flex justify-end gap-2", children: jsxs("span", { className: "text-[11px] font-semibold text-gray-500 dark:text-slate-100 sm:text-xs", children: [translations.expiredAtLabel, ": ", bucket.expiresAt] }) })] }, bucket.kind));
|
|
235
|
+
}) })) : (jsx("button", { type: "button", onClick: expandBuckets, className: "w-full rounded-2xl border border-slate-200/70 bg-white/85 p-6 sm:px-4 text-sm shadow-sm transition-transform hover:-translate-y-0.5 hover:shadow-md dark:border-slate-800/60 dark:bg-slate-900/60 hover:text-purple-500", children: translations.expandDetail }))) : (jsx("div", { className: "w-full rounded-2xl border border-slate-200/70 bg-white/85 p-6 sm:px-4 text-sm shadow-sm transition-transform dark:border-slate-800/60 dark:bg-slate-900/60 text-center", children: translations.bucketsEmpty })), jsx(GradientButton, { title: translations.onetimeBuy, icon: jsx(globalLucideIcons.ShoppingCart, {}), align: "center", className: "w-full text-sm sm:text-base", onClick: handleOnetimeAction })] })] }));
|
|
236
|
+
}
|
|
237
|
+
function deriveStatus(expiresAt, thresholdDays = 7) {
|
|
238
|
+
if (!expiresAt) {
|
|
239
|
+
return 'active';
|
|
240
|
+
}
|
|
241
|
+
const expires = new Date(expiresAt);
|
|
242
|
+
if (Number.isNaN(expires.getTime())) {
|
|
243
|
+
return 'active';
|
|
244
|
+
}
|
|
245
|
+
const diff = differenceInDays(expires, new Date());
|
|
246
|
+
if (diff < 0) {
|
|
247
|
+
return 'expired';
|
|
248
|
+
}
|
|
249
|
+
if (diff <= thresholdDays) {
|
|
250
|
+
return 'expiringSoon';
|
|
251
|
+
}
|
|
252
|
+
return 'active';
|
|
253
|
+
}
|
|
254
|
+
function differenceInDays(later, earlier) {
|
|
255
|
+
const msInDay = 86400000;
|
|
256
|
+
return Math.floor((later.getTime() - earlier.getTime()) / msInDay);
|
|
257
|
+
}
|
|
258
|
+
function HoverInfo({ description, variant = 'default' }) {
|
|
259
|
+
if (!description) {
|
|
260
|
+
return null;
|
|
261
|
+
}
|
|
262
|
+
return (jsxs("span", { className: "group relative inline-flex shrink-0", children: [jsx("button", { type: "button", "aria-label": description, className: cn('flex h-7 w-7 items-center justify-center rounded-full border text-xs transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-purple-500', variant === 'muted'
|
|
263
|
+
? 'border-transparent bg-slate-100 text-slate-500 hover:text-slate-700 dark:bg-slate-800/70 dark:text-slate-100 dark:hover:text-slate-100'
|
|
264
|
+
: 'border-transparent bg-white text-purple-600 shadow-[0_6px_20px_rgba(99,102,241,0.25)] hover:text-purple-700 dark:bg-[#1b1541] dark:text-purple-100 dark:hover:text-purple-50 dark:shadow-[0_6px_22px_rgba(112,86,255,0.35)]'), children: jsx(globalLucideIcons.CircleQuestionMark, { className: "h-3.5 w-3.5" }) }), jsx("span", { role: "tooltip", className: "pointer-events-none absolute top-full right-full z-50 mt-3 w-max max-w-[260px] translate-x-4 rounded-xl border border-slate-200/70 bg-slate-900/95 px-3 py-2 text-xs leading-relaxed text-white opacity-0 shadow-xl ring-1 ring-black/30 transition-all duration-150 ease-out group-hover:-translate-y-1 group-hover:opacity-100 group-focus-within:-translate-y-1 group-focus-within:opacity-100 dark:border-slate-700/60 dark:bg-slate-800/95", children: jsx("span", { className: "mt-1 block text-white dark:text-slate-100", children: description }) })] }));
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
export { CreditOverviewClient };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CreditOverviewData } from './types';
|
|
2
|
+
export interface CreditOverviewProps {
|
|
3
|
+
locale: string;
|
|
4
|
+
data: CreditOverviewData;
|
|
5
|
+
className?: string;
|
|
6
|
+
expiringSoonThresholdDays?: number;
|
|
7
|
+
}
|
|
8
|
+
export declare function CreditOverview({ locale, data, className, expiringSoonThresholdDays, }: CreditOverviewProps): Promise<import("react/jsx-runtime").JSX.Element>;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var tslib_es6 = require('../../node_modules/.pnpm/@rollup_plugin-typescript@12.1.4_rollup@4.46.2_tslib@2.8.1_typescript@5.9.3/node_modules/tslib/tslib.es6.js');
|
|
4
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
+
var server = require('next-intl/server');
|
|
6
|
+
var creditOverviewClient = require('./credit-overview-client.js');
|
|
7
|
+
|
|
8
|
+
function CreditOverview(_a) {
|
|
9
|
+
return tslib_es6.__awaiter(this, arguments, void 0, function* ({ locale, data, className, expiringSoonThresholdDays, }) {
|
|
10
|
+
const t = yield server.getTranslations({ locale, namespace: 'credit' });
|
|
11
|
+
const translations = {
|
|
12
|
+
summaryDescription: t('summary.description'),
|
|
13
|
+
totalLabel: t('summary.totalLabel'),
|
|
14
|
+
bucketsTitle: t('buckets.title'),
|
|
15
|
+
bucketsEmpty: t('buckets.empty'),
|
|
16
|
+
expiredAtLabel: t('buckets.expiredAtLabel'),
|
|
17
|
+
expandDetail: t('buckets.expandDetail'),
|
|
18
|
+
hiddenDetail: t('buckets.hiddenDetail'),
|
|
19
|
+
bucketDefaultLabels: getBucketLabels(t),
|
|
20
|
+
subscriptionPeriodLabel: t('subscription.periodLabel'),
|
|
21
|
+
subscriptionManage: t('subscription.manage'),
|
|
22
|
+
subscriptionInactive: t('subscription.inactive'),
|
|
23
|
+
subscribePay: t('subscription.pay'),
|
|
24
|
+
onetimeBuy: t('onetime.buy'),
|
|
25
|
+
};
|
|
26
|
+
return (jsxRuntime.jsx(creditOverviewClient.CreditOverviewClient, { data: data, locale: locale, translations: translations, className: className, expiringSoonThresholdDays: expiringSoonThresholdDays }));
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
function getBucketLabels(t) {
|
|
30
|
+
const labels = t.raw('buckets.labels');
|
|
31
|
+
return labels !== null && labels !== void 0 ? labels : {};
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
exports.CreditOverview = CreditOverview;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { __awaiter } from '../../node_modules/.pnpm/@rollup_plugin-typescript@12.1.4_rollup@4.46.2_tslib@2.8.1_typescript@5.9.3/node_modules/tslib/tslib.es6.mjs';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { getTranslations } from 'next-intl/server';
|
|
4
|
+
import { CreditOverviewClient } from './credit-overview-client.mjs';
|
|
5
|
+
|
|
6
|
+
function CreditOverview(_a) {
|
|
7
|
+
return __awaiter(this, arguments, void 0, function* ({ locale, data, className, expiringSoonThresholdDays, }) {
|
|
8
|
+
const t = yield getTranslations({ locale, namespace: 'credit' });
|
|
9
|
+
const translations = {
|
|
10
|
+
summaryDescription: t('summary.description'),
|
|
11
|
+
totalLabel: t('summary.totalLabel'),
|
|
12
|
+
bucketsTitle: t('buckets.title'),
|
|
13
|
+
bucketsEmpty: t('buckets.empty'),
|
|
14
|
+
expiredAtLabel: t('buckets.expiredAtLabel'),
|
|
15
|
+
expandDetail: t('buckets.expandDetail'),
|
|
16
|
+
hiddenDetail: t('buckets.hiddenDetail'),
|
|
17
|
+
bucketDefaultLabels: getBucketLabels(t),
|
|
18
|
+
subscriptionPeriodLabel: t('subscription.periodLabel'),
|
|
19
|
+
subscriptionManage: t('subscription.manage'),
|
|
20
|
+
subscriptionInactive: t('subscription.inactive'),
|
|
21
|
+
subscribePay: t('subscription.pay'),
|
|
22
|
+
onetimeBuy: t('onetime.buy'),
|
|
23
|
+
};
|
|
24
|
+
return (jsx(CreditOverviewClient, { data: data, locale: locale, translations: translations, className: className, expiringSoonThresholdDays: expiringSoonThresholdDays }));
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
function getBucketLabels(t) {
|
|
28
|
+
const labels = t.raw('buckets.labels');
|
|
29
|
+
return labels !== null && labels !== void 0 ? labels : {};
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export { CreditOverview };
|