@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.
Files changed (577) hide show
  1. package/dist/_virtual/advancedFormat.js +1 -1
  2. package/dist/_virtual/advancedFormat.mjs +1 -1
  3. package/dist/_virtual/customParseFormat.js +1 -1
  4. package/dist/_virtual/customParseFormat.mjs +1 -1
  5. package/dist/_virtual/dayjs.min.js +1 -1
  6. package/dist/_virtual/dayjs.min.mjs +1 -1
  7. package/dist/_virtual/isoWeek.js +1 -1
  8. package/dist/_virtual/isoWeek.mjs +1 -1
  9. package/dist/clerk/clerk-organization.js +1 -1
  10. package/dist/clerk/clerk-organization.mjs +1 -1
  11. package/dist/clerk/{clerk-page-generator-client.js → clerk-page-context-generator.js} +2 -2
  12. package/dist/clerk/{clerk-page-generator-client.mjs → clerk-page-context-generator.mjs} +2 -2
  13. package/dist/clerk/clerk-page-generator.js +3 -3
  14. package/dist/clerk/clerk-page-generator.mjs +3 -3
  15. package/dist/clerk/clerk-user-client.js +4 -3
  16. package/dist/clerk/clerk-user-client.mjs +4 -3
  17. package/dist/clerk/clerk-user.js +1 -1
  18. package/dist/clerk/clerk-user.mjs +1 -1
  19. package/dist/clerk/fingerprint/fingerprint-client.js +1 -1
  20. package/dist/clerk/fingerprint/fingerprint-client.mjs +1 -1
  21. package/dist/clerk/fingerprint/fingerprint-provider.js +147 -56
  22. package/dist/clerk/fingerprint/fingerprint-provider.mjs +148 -57
  23. package/dist/clerk/fingerprint/fingerprint-server.d.ts +16 -0
  24. package/dist/clerk/fingerprint/fingerprint-server.js +18 -0
  25. package/dist/clerk/fingerprint/fingerprint-server.mjs +18 -1
  26. package/dist/clerk/fingerprint/server.js +1 -0
  27. package/dist/clerk/fingerprint/server.mjs +1 -1
  28. package/dist/clerk/fingerprint/types.d.ts +13 -2
  29. package/dist/clerk/fingerprint/use-fingerprint.js +1 -1
  30. package/dist/clerk/fingerprint/use-fingerprint.mjs +1 -1
  31. package/dist/clerk/index.d.ts +2 -1
  32. package/dist/clerk/index.js +5 -3
  33. package/dist/clerk/index.mjs +2 -1
  34. package/dist/clerk/signin-with-fingerprint-client.js +4 -11
  35. package/dist/clerk/signin-with-fingerprint-client.mjs +4 -11
  36. package/dist/clerk/signup-button-with-fingerprint-client.d.ts +6 -0
  37. package/dist/clerk/signup-button-with-fingerprint-client.js +56 -0
  38. package/dist/clerk/signup-button-with-fingerprint-client.mjs +54 -0
  39. package/dist/clerk/signup-with-fingerprint-client.js +4 -11
  40. package/dist/clerk/signup-with-fingerprint-client.mjs +4 -11
  41. package/dist/fuma/base/custom-header.d.ts +38 -0
  42. package/dist/fuma/base/custom-header.js +163 -0
  43. package/dist/fuma/base/custom-header.mjs +161 -0
  44. package/dist/fuma/base/custom-home-layout.d.ts +68 -0
  45. package/dist/fuma/base/custom-home-layout.js +48 -0
  46. package/dist/fuma/base/custom-home-layout.mjs +46 -0
  47. package/dist/fuma/base/index.d.ts +2 -0
  48. package/dist/fuma/base/index.js +9 -0
  49. package/dist/fuma/base/index.mjs +2 -0
  50. package/dist/fuma/fuma-banner-suit.d.ts +2 -1
  51. package/dist/fuma/fuma-banner-suit.js +9 -3
  52. package/dist/fuma/fuma-banner-suit.mjs +9 -3
  53. package/dist/fuma/fuma-page-genarator.d.ts +4 -1
  54. package/dist/fuma/fuma-page-genarator.js +15 -6
  55. package/dist/fuma/fuma-page-genarator.mjs +15 -6
  56. package/dist/fuma/fuma-translate-util.d.ts +2 -0
  57. package/dist/fuma/fuma-translate-util.js +40 -0
  58. package/dist/fuma/fuma-translate-util.mjs +38 -0
  59. package/dist/fuma/llm-copy-handler.js +9 -8
  60. package/dist/fuma/llm-copy-handler.mjs +9 -8
  61. package/dist/fuma/mdx/banner.d.ts +7 -1
  62. package/dist/fuma/mdx/banner.js +15 -15
  63. package/dist/fuma/mdx/banner.mjs +15 -15
  64. package/dist/fuma/mdx/fuma-github-info.js +1 -1
  65. package/dist/fuma/mdx/fuma-github-info.mjs +1 -1
  66. package/dist/fuma/mdx/gradient-button.js +29 -18
  67. package/dist/fuma/mdx/gradient-button.mjs +29 -18
  68. package/dist/fuma/mdx/image-zoom.js +2 -2
  69. package/dist/fuma/mdx/image-zoom.mjs +2 -2
  70. package/dist/fuma/mdx/mermaid.js +3 -3
  71. package/dist/fuma/mdx/mermaid.mjs +3 -3
  72. package/dist/fuma/mdx/toc-base.js +9 -4
  73. package/dist/fuma/mdx/toc-base.mjs +9 -4
  74. package/dist/fuma/mdx/zia-card.js +3 -3
  75. package/dist/fuma/mdx/zia-card.mjs +3 -3
  76. package/dist/fuma/mdx/zia-file.js +1 -1
  77. package/dist/fuma/mdx/zia-file.mjs +1 -1
  78. package/dist/fuma/server.d.ts +1 -0
  79. package/dist/fuma/server.js +2 -0
  80. package/dist/fuma/server.mjs +1 -0
  81. package/dist/fuma/site-x.js +1 -1
  82. package/dist/fuma/site-x.mjs +1 -1
  83. package/dist/lib/fuma-schema-check-util.d.ts +4 -57
  84. package/dist/lib/fuma-schema-check-util.js +10 -31
  85. package/dist/lib/fuma-schema-check-util.mjs +11 -29
  86. package/dist/lib/server.d.ts +0 -1
  87. package/dist/lib/server.js +0 -5
  88. package/dist/lib/server.mjs +1 -2
  89. package/dist/main/ai-prompt-textarea.js +1 -1
  90. package/dist/main/ai-prompt-textarea.mjs +1 -1
  91. package/dist/main/credit/credit-nav-button.d.ts +21 -0
  92. package/dist/main/credit/credit-nav-button.js +117 -0
  93. package/dist/main/credit/credit-nav-button.mjs +114 -0
  94. package/dist/main/credit/credit-overview-client.d.ts +26 -0
  95. package/dist/main/credit/credit-overview-client.js +269 -0
  96. package/dist/main/credit/credit-overview-client.mjs +267 -0
  97. package/dist/main/credit/credit-overview.d.ts +8 -0
  98. package/dist/main/credit/credit-overview.js +34 -0
  99. package/dist/main/credit/credit-overview.mjs +32 -0
  100. package/dist/main/credit/types.d.ts +68 -0
  101. package/dist/main/cta.js +3 -2
  102. package/dist/main/cta.mjs +3 -2
  103. package/dist/main/faq.js +5 -4
  104. package/dist/main/faq.mjs +5 -4
  105. package/dist/main/features.js +3 -2
  106. package/dist/main/features.mjs +3 -2
  107. package/dist/main/footer.js +2 -2
  108. package/dist/main/footer.mjs +2 -2
  109. package/dist/main/gallery/gallery-desktop-grid.d.ts +6 -0
  110. package/dist/main/gallery/gallery-desktop-grid.js +10 -0
  111. package/dist/main/gallery/gallery-desktop-grid.mjs +8 -0
  112. package/dist/main/gallery/gallery-interactive.d.ts +4 -0
  113. package/dist/main/gallery/gallery-interactive.js +128 -0
  114. package/dist/main/gallery/gallery-interactive.mjs +126 -0
  115. package/dist/main/gallery/gallery-mobile-swiper.d.ts +6 -0
  116. package/dist/main/gallery/gallery-mobile-swiper.js +13 -0
  117. package/dist/main/gallery/gallery-mobile-swiper.mjs +11 -0
  118. package/dist/main/gallery/gallery-server.d.ts +2 -0
  119. package/dist/main/gallery/gallery-server.js +44 -0
  120. package/dist/main/gallery/gallery-server.mjs +42 -0
  121. package/dist/main/gallery/gallery-types.d.ts +19 -0
  122. package/dist/main/gallery-interactive.js +1 -1
  123. package/dist/main/gallery-interactive.mjs +1 -1
  124. package/dist/main/gallery.js +6 -5
  125. package/dist/main/gallery.mjs +6 -5
  126. package/dist/main/go-to-top.js +1 -1
  127. package/dist/main/go-to-top.mjs +1 -1
  128. package/dist/main/index.d.ts +3 -1
  129. package/dist/main/index.js +5 -1
  130. package/dist/main/index.mjs +3 -1
  131. package/dist/main/money-price/customer-portal.d.ts +7 -0
  132. package/dist/main/money-price/customer-portal.js +54 -0
  133. package/dist/main/money-price/customer-portal.mjs +52 -0
  134. package/dist/main/money-price/money-price-button.d.ts +1 -1
  135. package/dist/main/money-price/money-price-button.js +162 -42
  136. package/dist/main/money-price/money-price-button.mjs +162 -42
  137. package/dist/main/money-price/money-price-config-util.d.ts +50 -2
  138. package/dist/main/money-price/money-price-config-util.js +177 -4
  139. package/dist/main/money-price/money-price-config-util.mjs +175 -4
  140. package/dist/main/money-price/money-price-data.d.ts +8 -0
  141. package/dist/main/money-price/money-price-data.js +28 -0
  142. package/dist/main/money-price/money-price-data.mjs +26 -0
  143. package/dist/main/money-price/money-price-interactive.d.ts +1 -1
  144. package/dist/main/money-price/money-price-interactive.js +251 -288
  145. package/dist/main/money-price/money-price-interactive.mjs +253 -290
  146. package/dist/main/money-price/money-price-types.d.ts +69 -20
  147. package/dist/main/money-price/money-price.d.ts +1 -1
  148. package/dist/main/money-price/money-price.js +9 -62
  149. package/dist/main/money-price/money-price.mjs +10 -63
  150. package/dist/main/price-plan.js +6 -6
  151. package/dist/main/price-plan.mjs +6 -6
  152. package/dist/main/section-layout.d.ts +1 -0
  153. package/dist/main/section-layout.js +7 -0
  154. package/dist/main/section-layout.mjs +5 -0
  155. package/dist/main/seo-content.js +3 -2
  156. package/dist/main/seo-content.mjs +3 -2
  157. package/dist/main/server.d.ts +6 -3
  158. package/dist/main/server.js +9 -4
  159. package/dist/main/server.mjs +4 -2
  160. package/dist/main/tips.js +3 -2
  161. package/dist/main/tips.mjs +3 -2
  162. package/dist/main/usage.js +4 -3
  163. package/dist/main/usage.mjs +4 -3
  164. package/dist/main/x-button.js +6 -6
  165. package/dist/main/x-button.mjs +6 -6
  166. package/dist/node_modules/.pnpm/@fingerprintjs_fingerprintjs@4.6.2/node_modules/@fingerprintjs/fingerprintjs/dist/fp.esm.js +1 -1
  167. package/dist/node_modules/.pnpm/@fingerprintjs_fingerprintjs@4.6.2/node_modules/@fingerprintjs/fingerprintjs/dist/fp.esm.mjs +1 -1
  168. 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
  169. 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
  170. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/defaults.js +39 -0
  171. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/defaults.mjs +34 -0
  172. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/merge.js +20 -0
  173. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/merge.mjs +18 -0
  174. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/name.js +60 -0
  175. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/name.mjs +57 -0
  176. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/transformations.js +15 -0
  177. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon/transformations.mjs +13 -0
  178. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon-set/get-icon.js +30 -0
  179. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon-set/get-icon.mjs +27 -0
  180. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon-set/tree.js +26 -0
  181. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/icon-set/tree.mjs +24 -0
  182. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/build.js +118 -0
  183. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/build.mjs +115 -0
  184. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/defs.js +36 -0
  185. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/defs.mjs +32 -0
  186. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/html.js +12 -0
  187. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/html.mjs +10 -0
  188. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/id.js +48 -0
  189. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/id.mjs +46 -0
  190. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/size.js +30 -0
  191. package/dist/node_modules/.pnpm/@iconify_utils@3.0.2/node_modules/@iconify/utils/lib/svg/size.mjs +28 -0
  192. 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
  193. 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
  194. 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
  195. 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
  196. 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
  197. 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
  198. 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
  199. 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
  200. 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
  201. 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
  202. 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
  203. 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
  204. 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
  205. 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
  206. 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
  207. 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
  208. 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
  209. 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
  210. 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
  211. 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
  212. 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
  213. 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
  214. 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
  215. 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
  216. 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
  217. 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
  218. 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
  219. 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
  220. 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
  221. 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
  222. package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.3/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js +129 -0
  223. 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
  224. 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
  225. 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
  226. 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
  227. 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
  228. package/dist/node_modules/.pnpm/{dompurify@3.2.6 → dompurify@3.3.0}/node_modules/dompurify/dist/purify.es.js +59 -25
  229. package/dist/node_modules/.pnpm/{dompurify@3.2.6 → dompurify@3.3.0}/node_modules/dompurify/dist/purify.es.mjs +59 -25
  230. package/dist/node_modules/.pnpm/{katex@0.16.22 → katex@0.16.25}/node_modules/katex/dist/katex.js +26 -34
  231. package/dist/node_modules/.pnpm/{katex@0.16.22 → katex@0.16.25}/node_modules/katex/dist/katex.mjs +26 -34
  232. package/dist/node_modules/.pnpm/marked@16.4.2/node_modules/marked/lib/marked.esm.js +84 -0
  233. package/dist/node_modules/.pnpm/marked@16.4.2/node_modules/marked/lib/marked.esm.mjs +74 -0
  234. 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
  235. 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
  236. 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
  237. 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
  238. 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
  239. 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
  240. 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
  241. 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
  242. 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
  243. 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
  244. 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
  245. 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
  246. 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
  247. 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
  248. package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-AGHRB4JF.js +81 -0
  249. package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/chunk-AGHRB4JF.mjs +76 -0
  250. 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
  251. 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
  252. 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
  253. 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
  254. 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
  255. 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
  256. 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
  257. 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
  258. 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
  259. 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
  260. 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
  261. 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
  262. 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
  263. 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
  264. 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
  265. 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
  266. 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
  267. 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
  268. 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
  269. 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
  270. 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
  271. 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
  272. 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
  273. 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
  274. 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
  275. 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
  276. 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
  277. 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
  278. 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
  279. 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
  280. 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
  281. 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
  282. package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-2ON5EDUG.js +31 -0
  283. 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
  284. package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-v2-WZHVMYZB.js +31 -0
  285. 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
  286. package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/cose-bilkent-S5V4N54A.js +302 -0
  287. package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/cose-bilkent-S5V4N54A.mjs +300 -0
  288. 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
  289. 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
  290. 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
  291. 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
  292. 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
  293. 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
  294. 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
  295. 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
  296. 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
  297. 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
  298. 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
  299. 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
  300. 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
  301. 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
  302. 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
  303. 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
  304. package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/infoDiagram-ER5ION4S.js +42 -0
  305. 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
  306. 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
  307. 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
  308. 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
  309. 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
  310. 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
  311. 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
  312. 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
  313. 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
  314. 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
  315. 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
  316. 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
  317. 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
  318. 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
  319. 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
  320. 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
  321. 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
  322. 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
  323. 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
  324. package/dist/node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-v2-4FDKWEC3.js +31 -0
  325. 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
  326. 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
  327. 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
  328. 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
  329. 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
  330. package/dist/node_modules/.pnpm/{mermaid@11.9.0 → mermaid@11.12.1}/node_modules/mermaid/dist/mermaid.core.js +226 -225
  331. package/dist/node_modules/.pnpm/{mermaid@11.9.0 → mermaid@11.12.1}/node_modules/mermaid/dist/mermaid.core.mjs +43 -42
  332. 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
  333. 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
  334. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/modules/pagination.js +461 -0
  335. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/modules/pagination.mjs +459 -0
  336. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/classes-to-selector.js +8 -0
  337. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/classes-to-selector.mjs +6 -0
  338. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/create-element-if-not-defined.js +23 -0
  339. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/create-element-if-not-defined.mjs +21 -0
  340. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/ssr-window.esm.js +143 -0
  341. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/ssr-window.esm.mjs +140 -0
  342. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/swiper-core.js +3874 -0
  343. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/swiper-core.mjs +3871 -0
  344. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/update-on-virtual-data.js +129 -0
  345. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/update-on-virtual-data.mjs +124 -0
  346. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/update-swiper.js +226 -0
  347. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/update-swiper.mjs +216 -0
  348. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/utils.js +310 -0
  349. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/shared/utils.mjs +288 -0
  350. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/swiper-react.js +390 -0
  351. package/dist/node_modules/.pnpm/swiper@12.0.3/node_modules/swiper/swiper-react.mjs +387 -0
  352. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.js +6 -0
  353. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.mjs +4 -0
  354. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/rng.js +15 -0
  355. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/rng.mjs +13 -0
  356. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.js +30 -0
  357. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.mjs +28 -0
  358. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.js +21 -0
  359. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.mjs +19 -0
  360. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/errors.js +52 -0
  361. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/errors.mjs +50 -0
  362. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/iso.js +44 -0
  363. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/iso.mjs +35 -0
  364. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/parse.js +31 -0
  365. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/parse.mjs +18 -0
  366. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/schemas.js +492 -0
  367. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/schemas.mjs +439 -0
  368. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/api.js +434 -0
  369. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/api.mjs +388 -0
  370. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/checks.js +245 -0
  371. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/checks.mjs +232 -0
  372. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/core.js +68 -0
  373. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/core.mjs +62 -0
  374. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/errors.js +80 -0
  375. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/errors.mjs +75 -0
  376. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/parse.js +101 -0
  377. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/parse.mjs +86 -0
  378. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/regexes.js +102 -0
  379. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/regexes.mjs +76 -0
  380. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/registries.js +56 -0
  381. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/registries.mjs +52 -0
  382. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/schemas.js +952 -0
  383. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/schemas.mjs +909 -0
  384. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/util.js +182 -0
  385. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/util.mjs +163 -0
  386. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/versions.js +9 -0
  387. package/dist/node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/versions.mjs +7 -0
  388. package/package.json +27 -21
  389. package/src/clerk/{clerk-page-generator-client.tsx → clerk-page-context-generator.tsx} +2 -2
  390. package/src/clerk/clerk-page-generator.tsx +3 -3
  391. package/src/clerk/clerk-user-client.tsx +7 -12
  392. package/src/clerk/fingerprint/fingerprint-provider.tsx +311 -112
  393. package/src/clerk/fingerprint/fingerprint-server.ts +33 -5
  394. package/src/clerk/fingerprint/types.ts +16 -2
  395. package/src/clerk/fingerprint/use-fingerprint.ts +1 -1
  396. package/src/clerk/index.ts +2 -1
  397. package/src/clerk/signin-with-fingerprint-client.tsx +3 -11
  398. package/src/clerk/signup-button-with-fingerprint-client.tsx +87 -0
  399. package/src/clerk/signup-with-fingerprint-client.tsx +3 -11
  400. package/src/fuma/base/custom-header.tsx +574 -0
  401. package/src/fuma/base/custom-home-layout.tsx +146 -0
  402. package/src/fuma/base/index.ts +2 -0
  403. package/src/fuma/fuma-banner-suit.tsx +22 -5
  404. package/src/fuma/fuma-page-genarator.tsx +29 -9
  405. package/src/fuma/fuma-translate-util.ts +44 -0
  406. package/src/fuma/llm-copy-handler.ts +8 -7
  407. package/src/fuma/mdx/airtical-card.tsx +1 -1
  408. package/src/fuma/mdx/banner.tsx +25 -7
  409. package/src/fuma/mdx/gradient-button.tsx +43 -26
  410. package/src/fuma/mdx/mermaid.tsx +2 -2
  411. package/src/fuma/mdx/toc-base.tsx +9 -4
  412. package/src/fuma/mdx/zia-card.tsx +6 -6
  413. package/src/fuma/server.ts +1 -0
  414. package/src/lib/fuma-schema-check-util.ts +11 -40
  415. package/src/lib/server.ts +0 -1
  416. package/src/main/ai-prompt-textarea.tsx +1 -1
  417. package/src/main/credit/credit-nav-button.tsx +283 -0
  418. package/src/main/credit/credit-overview-client.tsx +552 -0
  419. package/src/main/credit/credit-overview.tsx +53 -0
  420. package/src/main/credit/types.ts +89 -0
  421. package/src/main/cta.tsx +9 -8
  422. package/src/main/faq.tsx +4 -3
  423. package/src/main/features.tsx +3 -3
  424. package/src/main/footer.tsx +1 -1
  425. package/src/main/gallery/gallery-desktop-grid.tsx +41 -0
  426. package/src/main/gallery/gallery-interactive.tsx +153 -0
  427. package/src/main/gallery/gallery-mobile-swiper.tsx +65 -0
  428. package/src/main/gallery/gallery-server.tsx +46 -0
  429. package/src/main/gallery/gallery-types.ts +22 -0
  430. package/src/main/go-to-top.tsx +1 -1
  431. package/src/main/index.ts +5 -3
  432. package/src/main/money-price/customer-portal.ts +63 -0
  433. package/src/main/money-price/money-price-button.tsx +211 -56
  434. package/src/main/money-price/money-price-config-util.ts +222 -5
  435. package/src/main/money-price/money-price-data.ts +49 -0
  436. package/src/main/money-price/money-price-interactive.tsx +479 -356
  437. package/src/main/money-price/money-price-types.ts +76 -22
  438. package/src/main/money-price/money-price.tsx +28 -267
  439. package/src/main/price-plan.tsx +3 -3
  440. package/src/main/section-layout.ts +5 -0
  441. package/src/main/seo-content.tsx +2 -2
  442. package/src/main/server.ts +15 -4
  443. package/src/main/tips.tsx +2 -2
  444. package/src/main/usage.tsx +4 -4
  445. package/src/main/x-button.tsx +13 -13
  446. package/src/styles/fuma.css +38 -13
  447. package/src/styles/third-ui.css +37 -2
  448. package/dist/lib/fuma-search-util.d.ts +0 -2
  449. package/dist/lib/fuma-search-util.js +0 -8
  450. package/dist/lib/fuma-search-util.mjs +0 -6
  451. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/defaults.js +0 -29
  452. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/defaults.mjs +0 -24
  453. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/merge.js +0 -22
  454. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/merge.mjs +0 -20
  455. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/name.js +0 -55
  456. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/name.mjs +0 -52
  457. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/transformations.js +0 -18
  458. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/transformations.mjs +0 -16
  459. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon-set/get-icon.js +0 -29
  460. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon-set/get-icon.mjs +0 -26
  461. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon-set/tree.js +0 -25
  462. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon-set/tree.mjs +0 -23
  463. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/build.js +0 -122
  464. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/build.mjs +0 -119
  465. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/defs.js +0 -34
  466. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/defs.mjs +0 -30
  467. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/html.js +0 -11
  468. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/html.mjs +0 -9
  469. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/id.js +0 -30
  470. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/id.mjs +0 -28
  471. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/size.js +0 -42
  472. package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/size.mjs +0 -40
  473. 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
  474. 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
  475. 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
  476. 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
  477. 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
  478. 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
  479. 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
  480. 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
  481. 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
  482. 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
  483. 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
  484. 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
  485. package/dist/node_modules/.pnpm/@mermaid-js_parser@0.6.2/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js +0 -129
  486. package/dist/node_modules/.pnpm/marked@16.1.2/node_modules/marked/lib/marked.esm.js +0 -83
  487. package/dist/node_modules/.pnpm/marked@16.1.2/node_modules/marked/lib/marked.esm.mjs +0 -73
  488. package/dist/node_modules/.pnpm/mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-M3E45YP4.js +0 -30
  489. package/dist/node_modules/.pnpm/mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-v2-YAWTLIQI.js +0 -30
  490. package/dist/node_modules/.pnpm/mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/infoDiagram-LHK5PUON.js +0 -41
  491. package/dist/node_modules/.pnpm/mermaid@11.9.0/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-v2-5AN5P6BG.js +0 -30
  492. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/ZodError.js +0 -135
  493. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/ZodError.mjs +0 -132
  494. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/errors.js +0 -11
  495. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/errors.mjs +0 -8
  496. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.js +0 -8
  497. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.mjs +0 -8
  498. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.js +0 -122
  499. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.mjs +0 -111
  500. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/util.js +0 -138
  501. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/util.mjs +0 -135
  502. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/locales/en.js +0 -113
  503. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/locales/en.mjs +0 -111
  504. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.js +0 -3339
  505. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.mjs +0 -3297
  506. package/src/lib/fuma-search-util.ts +0 -6
  507. package/src/main/gallery-interactive.tsx +0 -171
  508. package/src/main/gallery.tsx +0 -98
  509. /package/dist/clerk/{clerk-page-generator-client.d.ts → clerk-page-context-generator.d.ts} +0 -0
  510. /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
  511. /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
  512. /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
  513. /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
  514. /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
  515. /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
  516. /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
  517. /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
  518. /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
  519. /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
  520. /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
  521. /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
  522. /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
  523. /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
  524. /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
  525. /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
  526. /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
  527. /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
  528. /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
  529. /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
  530. /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
  531. /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
  532. /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
  533. /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
  534. /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
  535. /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
  536. /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
  537. /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
  538. /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
  539. /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
  540. /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
  541. /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
  542. /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
  543. /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
  544. /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
  545. /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
  546. /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
  547. /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
  548. /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
  549. /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
  550. /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
  551. /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
  552. /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
  553. /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
  554. /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
  555. /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
  556. /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
  557. /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
  558. /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
  559. /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
  560. /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
  561. /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
  562. /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
  563. /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
  564. /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
  565. /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
  566. /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
  567. /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
  568. /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
  569. /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
  570. /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/dayjs.min.js +0 -0
  571. /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/dayjs.min.mjs +0 -0
  572. /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/plugin/advancedFormat.js +0 -0
  573. /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/plugin/advancedFormat.mjs +0 -0
  574. /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/plugin/customParseFormat.js +0 -0
  575. /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/plugin/customParseFormat.mjs +0 -0
  576. /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.19}/node_modules/dayjs/plugin/isoWeek.js +0 -0
  577. /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 };