@libreapps/ui 5.4.1

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 (921) hide show
  1. package/README.md +229 -0
  2. package/bin/cli.js +100 -0
  3. package/bin/create-registry.js +108 -0
  4. package/bin/mcp.js +403 -0
  5. package/bin/npx-registry-mcp.js +15 -0
  6. package/bin/registry-mcp-wrapper.sh +19 -0
  7. package/bin/registry-mcp.js +100 -0
  8. package/bin/start-mcp-server.sh +22 -0
  9. package/bin/test-mcp.sh +52 -0
  10. package/bin/update-registry.js +196 -0
  11. package/content/index.ts +26 -0
  12. package/dist/3d/button.js +298 -0
  13. package/dist/3d/button.mjs +273 -0
  14. package/dist/3d/card.js +234 -0
  15. package/dist/3d/card.mjs +207 -0
  16. package/dist/3d/carousel.js +371 -0
  17. package/dist/3d/carousel.mjs +344 -0
  18. package/dist/3d/grid.js +362 -0
  19. package/dist/3d/grid.mjs +337 -0
  20. package/dist/3d/index.js +1518 -0
  21. package/dist/3d/index.mjs +1472 -0
  22. package/dist/3d/marquee.js +352 -0
  23. package/dist/3d/marquee.mjs +327 -0
  24. package/dist/3d/pin.js +46 -0
  25. package/dist/3d/pin.mjs +24 -0
  26. package/dist/accordion.js +80 -0
  27. package/dist/accordion.mjs +55 -0
  28. package/dist/alert-dialog.js +225 -0
  29. package/dist/alert-dialog.mjs +192 -0
  30. package/dist/alert.js +98 -0
  31. package/dist/alert.mjs +92 -0
  32. package/dist/animation/animated-background.js +424 -0
  33. package/dist/animation/animated-background.mjs +418 -0
  34. package/dist/animation/animated-beam.js +119 -0
  35. package/dist/animation/animated-beam.mjs +97 -0
  36. package/dist/animation/animated-cursor.js +275 -0
  37. package/dist/animation/animated-cursor.mjs +270 -0
  38. package/dist/animation/animated-icon.js +357 -0
  39. package/dist/animation/animated-icon.mjs +351 -0
  40. package/dist/animation/animated-list.js +339 -0
  41. package/dist/animation/animated-list.mjs +333 -0
  42. package/dist/animation/animated-number.js +283 -0
  43. package/dist/animation/animated-number.mjs +277 -0
  44. package/dist/animation/animated-testimonials.js +97 -0
  45. package/dist/animation/animated-testimonials.mjs +75 -0
  46. package/dist/animation/animated-tooltip.js +67 -0
  47. package/dist/animation/animated-tooltip.mjs +45 -0
  48. package/dist/animation/apple-cards-carousel.js +308 -0
  49. package/dist/animation/apple-cards-carousel.mjs +285 -0
  50. package/dist/animation/apple-hello-effect.js +60 -0
  51. package/dist/animation/apple-hello-effect.mjs +38 -0
  52. package/dist/animation/index.js +1952 -0
  53. package/dist/animation/index.mjs +1921 -0
  54. package/dist/assets/ai-icons.d.ts +27 -0
  55. package/dist/assets/crypto.d.ts +6 -0
  56. package/dist/assets/file-type-icon.d.ts +6 -0
  57. package/dist/assets/file.d.ts +4 -0
  58. package/dist/assets/general.d.ts +219 -0
  59. package/dist/assets/index.d.ts +6 -0
  60. package/dist/assets/libreapps-logo.d.ts +3 -0
  61. package/dist/assets/llm-provider.d.ts +63 -0
  62. package/dist/avatar.js +71 -0
  63. package/dist/avatar.mjs +47 -0
  64. package/dist/badge.js +61 -0
  65. package/dist/badge.mjs +55 -0
  66. package/dist/blocks/auth/__tests__/forms.test.d.ts +12 -0
  67. package/dist/blocks/auth/index.d.ts +3 -0
  68. package/dist/blocks/auth/login/index.d.ts +5 -0
  69. package/dist/blocks/auth/login/login-01/components/login-form.d.ts +1 -0
  70. package/dist/blocks/auth/login/login-01/page.d.ts +1 -0
  71. package/dist/blocks/auth/login/login-02/components/login-form.d.ts +1 -0
  72. package/dist/blocks/auth/login/login-02/page.d.ts +1 -0
  73. package/dist/blocks/auth/login/login-03/components/login-form.d.ts +1 -0
  74. package/dist/blocks/auth/login/login-03/page.d.ts +1 -0
  75. package/dist/blocks/auth/login/login-04/components/login-form.d.ts +1 -0
  76. package/dist/blocks/auth/login/login-04/page.d.ts +1 -0
  77. package/dist/blocks/auth/login/login-05/components/login-form.d.ts +1 -0
  78. package/dist/blocks/auth/login/login-05/page.d.ts +1 -0
  79. package/dist/blocks/auth/otp/index.d.ts +5 -0
  80. package/dist/blocks/auth/otp/otp-01/components/otp-form.d.ts +2 -0
  81. package/dist/blocks/auth/otp/otp-01/page.d.ts +1 -0
  82. package/dist/blocks/auth/otp/otp-02/components/otp-form.d.ts +1 -0
  83. package/dist/blocks/auth/otp/otp-02/page.d.ts +1 -0
  84. package/dist/blocks/auth/otp/otp-03/components/otp-form.d.ts +2 -0
  85. package/dist/blocks/auth/otp/otp-03/page.d.ts +1 -0
  86. package/dist/blocks/auth/otp/otp-04/components/otp-form.d.ts +1 -0
  87. package/dist/blocks/auth/otp/otp-04/page.d.ts +1 -0
  88. package/dist/blocks/auth/otp/otp-05/components/otp-form.d.ts +1 -0
  89. package/dist/blocks/auth/otp/otp-05/page.d.ts +1 -0
  90. package/dist/blocks/auth/signup/index.d.ts +5 -0
  91. package/dist/blocks/auth/signup/signup-01/components/signup-form.d.ts +2 -0
  92. package/dist/blocks/auth/signup/signup-01/page.d.ts +1 -0
  93. package/dist/blocks/auth/signup/signup-02/components/signup-form.d.ts +1 -0
  94. package/dist/blocks/auth/signup/signup-02/page.d.ts +1 -0
  95. package/dist/blocks/auth/signup/signup-03/components/signup-form.d.ts +1 -0
  96. package/dist/blocks/auth/signup/signup-03/page.d.ts +1 -0
  97. package/dist/blocks/auth/signup/signup-04/components/signup-form.d.ts +1 -0
  98. package/dist/blocks/auth/signup/signup-04/page.d.ts +1 -0
  99. package/dist/blocks/auth/signup/signup-05/components/signup-form.d.ts +1 -0
  100. package/dist/blocks/auth/signup/signup-05/page.d.ts +1 -0
  101. package/dist/blocks/calendar/calendar-01.d.ts +1 -0
  102. package/dist/blocks/calendar/calendar-02.d.ts +1 -0
  103. package/dist/blocks/calendar/calendar-03.d.ts +1 -0
  104. package/dist/blocks/calendar/calendar-04.d.ts +1 -0
  105. package/dist/blocks/calendar/calendar-05.d.ts +1 -0
  106. package/dist/blocks/calendar/calendar-06.d.ts +1 -0
  107. package/dist/blocks/calendar/calendar-07.d.ts +1 -0
  108. package/dist/blocks/calendar/calendar-08.d.ts +1 -0
  109. package/dist/blocks/calendar/calendar-09.d.ts +1 -0
  110. package/dist/blocks/calendar/calendar-10.d.ts +1 -0
  111. package/dist/blocks/calendar/calendar-11.d.ts +1 -0
  112. package/dist/blocks/calendar/calendar-12.d.ts +1 -0
  113. package/dist/blocks/calendar/calendar-13.d.ts +1 -0
  114. package/dist/blocks/calendar/calendar-14.d.ts +1 -0
  115. package/dist/blocks/calendar/calendar-15.d.ts +1 -0
  116. package/dist/blocks/calendar/calendar-16.d.ts +1 -0
  117. package/dist/blocks/calendar/calendar-17.d.ts +1 -0
  118. package/dist/blocks/calendar/calendar-18.d.ts +1 -0
  119. package/dist/blocks/calendar/calendar-19.d.ts +1 -0
  120. package/dist/blocks/calendar/calendar-20.d.ts +1 -0
  121. package/dist/blocks/calendar/calendar-21.d.ts +1 -0
  122. package/dist/blocks/calendar/calendar-22.d.ts +1 -0
  123. package/dist/blocks/calendar/calendar-23.d.ts +1 -0
  124. package/dist/blocks/calendar/calendar-24.d.ts +1 -0
  125. package/dist/blocks/calendar/calendar-25.d.ts +1 -0
  126. package/dist/blocks/calendar/calendar-26.d.ts +1 -0
  127. package/dist/blocks/calendar/calendar-27.d.ts +1 -0
  128. package/dist/blocks/calendar/calendar-28.d.ts +1 -0
  129. package/dist/blocks/calendar/calendar-29.d.ts +1 -0
  130. package/dist/blocks/calendar/calendar-30.d.ts +1 -0
  131. package/dist/blocks/calendar/calendar-31.d.ts +1 -0
  132. package/dist/blocks/calendar/calendar-32.d.ts +1 -0
  133. package/dist/blocks/calendar/index.d.ts +32 -0
  134. package/dist/blocks/components/accordian-block.d.ts +4 -0
  135. package/dist/blocks/components/block-component-props.d.ts +7 -0
  136. package/dist/blocks/components/bullet-cards-block.d.ts +4 -0
  137. package/dist/blocks/components/card-block/index.d.ts +6 -0
  138. package/dist/blocks/components/card-block/link-out-button.d.ts +6 -0
  139. package/dist/blocks/components/card-block/util.d.ts +4 -0
  140. package/dist/blocks/components/carte-blanche-block/index.d.ts +4 -0
  141. package/dist/blocks/components/carte-blanche-block/variant-content-left.d.ts +10 -0
  142. package/dist/blocks/components/content.d.ts +10 -0
  143. package/dist/blocks/components/cta-block.d.ts +12 -0
  144. package/dist/blocks/components/enh-heading-block.d.ts +7 -0
  145. package/dist/blocks/components/grid-block/grid-block-mutator.d.ts +5 -0
  146. package/dist/blocks/components/grid-block/index.d.ts +9 -0
  147. package/dist/blocks/components/grid-block/mutator-registry.d.ts +3 -0
  148. package/dist/blocks/components/grid-block/table-borders.mutator.d.ts +3 -0
  149. package/dist/blocks/components/group-block.d.ts +7 -0
  150. package/dist/blocks/components/heading-block.d.ts +4 -0
  151. package/dist/blocks/components/image-block.d.ts +7 -0
  152. package/dist/blocks/components/index.d.ts +14 -0
  153. package/dist/blocks/components/screenful-block/content.d.ts +8 -0
  154. package/dist/blocks/components/screenful-block/index.d.ts +12 -0
  155. package/dist/blocks/components/screenful-block/poster-background.d.ts +7 -0
  156. package/dist/blocks/components/screenful-block/video-background.d.ts +8 -0
  157. package/dist/blocks/components/space-block.d.ts +4 -0
  158. package/dist/blocks/components/video-block.d.ts +9 -0
  159. package/dist/blocks/dashboard/dashboard-01/components/app-sidebar.d.ts +3 -0
  160. package/dist/blocks/dashboard/dashboard-01/components/chart-area-interactive.d.ts +2 -0
  161. package/dist/blocks/dashboard/dashboard-01/components/data-table.d.ts +13 -0
  162. package/dist/blocks/dashboard/dashboard-01/components/nav-documents.d.ts +8 -0
  163. package/dist/blocks/dashboard/dashboard-01/components/nav-main.d.ts +8 -0
  164. package/dist/blocks/dashboard/dashboard-01/components/nav-secondary.d.ts +10 -0
  165. package/dist/blocks/dashboard/dashboard-01/components/nav-user.d.ts +7 -0
  166. package/dist/blocks/dashboard/dashboard-01/components/section-cards.d.ts +1 -0
  167. package/dist/blocks/dashboard/dashboard-01/components/site-header.d.ts +1 -0
  168. package/dist/blocks/dashboard/dashboard-01/page.d.ts +1 -0
  169. package/dist/blocks/dashboard/index.d.ts +1 -0
  170. package/dist/blocks/def/accordian-block.d.ts +10 -0
  171. package/dist/blocks/def/block.d.ts +4 -0
  172. package/dist/blocks/def/bullet-cards-block.d.ts +17 -0
  173. package/dist/blocks/def/card-block.d.ts +17 -0
  174. package/dist/blocks/def/carte-blanche-block.d.ts +12 -0
  175. package/dist/blocks/def/cta-block.d.ts +8 -0
  176. package/dist/blocks/def/element-block.d.ts +7 -0
  177. package/dist/blocks/def/enh-heading-block.d.ts +22 -0
  178. package/dist/blocks/def/grid-block.d.ts +12 -0
  179. package/dist/blocks/def/group-block.d.ts +7 -0
  180. package/dist/blocks/def/heading-block.d.ts +11 -0
  181. package/dist/blocks/def/image-block.d.ts +26 -0
  182. package/dist/blocks/def/index.d.ts +17 -0
  183. package/dist/blocks/def/screenful-block.d.ts +41 -0
  184. package/dist/blocks/def/space-block.d.ts +47 -0
  185. package/dist/blocks/def/video-block.d.ts +5 -0
  186. package/dist/blocks/index-core.d.ts +2 -0
  187. package/dist/blocks/index.d.ts +6 -0
  188. package/dist/blocks/index.js +1685 -0
  189. package/dist/blocks/index.mjs +1646 -0
  190. package/dist/blocks/sidebar/index.d.ts +16 -0
  191. package/dist/blocks/sidebar/sidebar-01/components/app-sidebar.d.ts +3 -0
  192. package/dist/blocks/sidebar/sidebar-01/components/search-form.d.ts +1 -0
  193. package/dist/blocks/sidebar/sidebar-01/components/version-switcher.d.ts +4 -0
  194. package/dist/blocks/sidebar/sidebar-01/page.d.ts +1 -0
  195. package/dist/blocks/sidebar/sidebar-02/components/app-sidebar.d.ts +3 -0
  196. package/dist/blocks/sidebar/sidebar-02/components/search-form.d.ts +1 -0
  197. package/dist/blocks/sidebar/sidebar-02/components/version-switcher.d.ts +4 -0
  198. package/dist/blocks/sidebar/sidebar-02/page.d.ts +1 -0
  199. package/dist/blocks/sidebar/sidebar-03/components/app-sidebar.d.ts +3 -0
  200. package/dist/blocks/sidebar/sidebar-03/page.d.ts +1 -0
  201. package/dist/blocks/sidebar/sidebar-04/components/app-sidebar.d.ts +3 -0
  202. package/dist/blocks/sidebar/sidebar-04/page.d.ts +1 -0
  203. package/dist/blocks/sidebar/sidebar-05/components/app-sidebar.d.ts +3 -0
  204. package/dist/blocks/sidebar/sidebar-05/components/search-form.d.ts +1 -0
  205. package/dist/blocks/sidebar/sidebar-05/page.d.ts +1 -0
  206. package/dist/blocks/sidebar/sidebar-06/components/app-sidebar.d.ts +3 -0
  207. package/dist/blocks/sidebar/sidebar-06/components/nav-main.d.ts +13 -0
  208. package/dist/blocks/sidebar/sidebar-06/components/sidebar-opt-in-form.d.ts +1 -0
  209. package/dist/blocks/sidebar/sidebar-06/page.d.ts +1 -0
  210. package/dist/blocks/sidebar/sidebar-07/components/app-sidebar.d.ts +3 -0
  211. package/dist/blocks/sidebar/sidebar-07/components/nav-main.d.ts +13 -0
  212. package/dist/blocks/sidebar/sidebar-07/components/nav-projects.d.ts +8 -0
  213. package/dist/blocks/sidebar/sidebar-07/components/nav-user.d.ts +7 -0
  214. package/dist/blocks/sidebar/sidebar-07/components/team-switcher.d.ts +8 -0
  215. package/dist/blocks/sidebar/sidebar-07/page.d.ts +1 -0
  216. package/dist/blocks/sidebar/sidebar-08/components/app-sidebar.d.ts +3 -0
  217. package/dist/blocks/sidebar/sidebar-08/components/nav-main.d.ts +13 -0
  218. package/dist/blocks/sidebar/sidebar-08/components/nav-projects.d.ts +8 -0
  219. package/dist/blocks/sidebar/sidebar-08/components/nav-secondary.d.ts +10 -0
  220. package/dist/blocks/sidebar/sidebar-08/components/nav-user.d.ts +7 -0
  221. package/dist/blocks/sidebar/sidebar-08/page.d.ts +1 -0
  222. package/dist/blocks/sidebar/sidebar-09/components/app-sidebar.d.ts +3 -0
  223. package/dist/blocks/sidebar/sidebar-09/components/nav-user.d.ts +7 -0
  224. package/dist/blocks/sidebar/sidebar-09/page.d.ts +1 -0
  225. package/dist/blocks/sidebar/sidebar-10/components/app-sidebar.d.ts +3 -0
  226. package/dist/blocks/sidebar/sidebar-10/components/nav-actions.d.ts +1 -0
  227. package/dist/blocks/sidebar/sidebar-10/components/nav-favorites.d.ts +7 -0
  228. package/dist/blocks/sidebar/sidebar-10/components/nav-main.d.ts +9 -0
  229. package/dist/blocks/sidebar/sidebar-10/components/nav-secondary.d.ts +11 -0
  230. package/dist/blocks/sidebar/sidebar-10/components/nav-workspaces.d.ts +10 -0
  231. package/dist/blocks/sidebar/sidebar-10/components/team-switcher.d.ts +8 -0
  232. package/dist/blocks/sidebar/sidebar-10/page.d.ts +1 -0
  233. package/dist/blocks/sidebar/sidebar-11/components/app-sidebar.d.ts +3 -0
  234. package/dist/blocks/sidebar/sidebar-11/page.d.ts +1 -0
  235. package/dist/blocks/sidebar/sidebar-12/components/app-sidebar.d.ts +3 -0
  236. package/dist/blocks/sidebar/sidebar-12/components/calendars.d.ts +6 -0
  237. package/dist/blocks/sidebar/sidebar-12/components/date-picker.d.ts +1 -0
  238. package/dist/blocks/sidebar/sidebar-12/components/nav-user.d.ts +7 -0
  239. package/dist/blocks/sidebar/sidebar-12/page.d.ts +1 -0
  240. package/dist/blocks/sidebar/sidebar-13/components/settings-dialog.d.ts +1 -0
  241. package/dist/blocks/sidebar/sidebar-13/page.d.ts +1 -0
  242. package/dist/blocks/sidebar/sidebar-14/components/app-sidebar.d.ts +3 -0
  243. package/dist/blocks/sidebar/sidebar-14/page.d.ts +1 -0
  244. package/dist/blocks/sidebar/sidebar-15/components/calendars.d.ts +6 -0
  245. package/dist/blocks/sidebar/sidebar-15/components/date-picker.d.ts +1 -0
  246. package/dist/blocks/sidebar/sidebar-15/components/nav-favorites.d.ts +7 -0
  247. package/dist/blocks/sidebar/sidebar-15/components/nav-main.d.ts +9 -0
  248. package/dist/blocks/sidebar/sidebar-15/components/nav-secondary.d.ts +11 -0
  249. package/dist/blocks/sidebar/sidebar-15/components/nav-user.d.ts +7 -0
  250. package/dist/blocks/sidebar/sidebar-15/components/nav-workspaces.d.ts +10 -0
  251. package/dist/blocks/sidebar/sidebar-15/components/sidebar-left.d.ts +3 -0
  252. package/dist/blocks/sidebar/sidebar-15/components/sidebar-right.d.ts +3 -0
  253. package/dist/blocks/sidebar/sidebar-15/components/team-switcher.d.ts +8 -0
  254. package/dist/blocks/sidebar/sidebar-15/page.d.ts +1 -0
  255. package/dist/blocks/sidebar/sidebar-16/components/app-sidebar.d.ts +3 -0
  256. package/dist/blocks/sidebar/sidebar-16/components/nav-main.d.ts +13 -0
  257. package/dist/blocks/sidebar/sidebar-16/components/nav-projects.d.ts +8 -0
  258. package/dist/blocks/sidebar/sidebar-16/components/nav-secondary.d.ts +10 -0
  259. package/dist/blocks/sidebar/sidebar-16/components/nav-user.d.ts +7 -0
  260. package/dist/blocks/sidebar/sidebar-16/components/search-form.d.ts +1 -0
  261. package/dist/blocks/sidebar/sidebar-16/components/site-header.d.ts +1 -0
  262. package/dist/blocks/sidebar/sidebar-16/page.d.ts +3 -0
  263. package/dist/breadcrumb.js +107 -0
  264. package/dist/breadcrumb.mjs +99 -0
  265. package/dist/calendar-ext/index.js +208 -0
  266. package/dist/calendar-ext/index.mjs +170 -0
  267. package/dist/calendar.js +194 -0
  268. package/dist/calendar.mjs +169 -0
  269. package/dist/carousel.js +283 -0
  270. package/dist/carousel.mjs +254 -0
  271. package/dist/charts/index.js +5842 -0
  272. package/dist/charts/index.mjs +5751 -0
  273. package/dist/checkbox.js +60 -0
  274. package/dist/checkbox.mjs +35 -0
  275. package/dist/code/block.js +226 -0
  276. package/dist/code/block.mjs +203 -0
  277. package/dist/code/compare.js +446 -0
  278. package/dist/code/compare.mjs +423 -0
  279. package/dist/code/diff.js +430 -0
  280. package/dist/code/diff.mjs +407 -0
  281. package/dist/code/editor.js +243 -0
  282. package/dist/code/editor.mjs +218 -0
  283. package/dist/code/explorer.js +291 -0
  284. package/dist/code/explorer.mjs +268 -0
  285. package/dist/code/index.js +2551 -0
  286. package/dist/code/index.mjs +2510 -0
  287. package/dist/code/preview.js +400 -0
  288. package/dist/code/preview.mjs +377 -0
  289. package/dist/code/snippet.js +274 -0
  290. package/dist/code/snippet.mjs +250 -0
  291. package/dist/code/tabs.js +75 -0
  292. package/dist/code/tabs.mjs +53 -0
  293. package/dist/code/terminal.js +437 -0
  294. package/dist/code/terminal.mjs +414 -0
  295. package/dist/collapsible.js +33 -0
  296. package/dist/collapsible.mjs +9 -0
  297. package/dist/command.js +283 -0
  298. package/dist/command.mjs +252 -0
  299. package/dist/components/cal-embed.d.ts +10 -0
  300. package/dist/components/index.d.ts +2 -0
  301. package/dist/context-menu.js +207 -0
  302. package/dist/context-menu.mjs +171 -0
  303. package/dist/desktop/hooks.js +224 -0
  304. package/dist/desktop/hooks.mjs +199 -0
  305. package/dist/desktop/index.js +686 -0
  306. package/dist/desktop/index.mjs +658 -0
  307. package/dist/desktop/spotlight.js +261 -0
  308. package/dist/desktop/spotlight.mjs +236 -0
  309. package/dist/desktop/window.js +274 -0
  310. package/dist/desktop/window.mjs +248 -0
  311. package/dist/device/index.js +3 -0
  312. package/dist/device/index.mjs +2 -0
  313. package/dist/dialog.js +246 -0
  314. package/dist/dialog.mjs +214 -0
  315. package/dist/dock/basic.js +174 -0
  316. package/dist/dock/basic.mjs +151 -0
  317. package/dist/dock/index.js +648 -0
  318. package/dist/dock/index.mjs +621 -0
  319. package/dist/dock/limelight-nav.js +315 -0
  320. package/dist/dock/limelight-nav.mjs +294 -0
  321. package/dist/dock/macos.js +141 -0
  322. package/dist/dock/macos.mjs +118 -0
  323. package/dist/dock/menu.js +70 -0
  324. package/dist/dock/menu.mjs +48 -0
  325. package/dist/dock/message.js +149 -0
  326. package/dist/dock/message.mjs +127 -0
  327. package/dist/drawer.js +115 -0
  328. package/dist/drawer.mjs +103 -0
  329. package/dist/dropdown-menu.js +202 -0
  330. package/dist/dropdown-menu.mjs +166 -0
  331. package/dist/finance/AdvancedChart.js +48 -0
  332. package/dist/finance/AdvancedChart.mjs +46 -0
  333. package/dist/finance/CompanyProfile.js +48 -0
  334. package/dist/finance/CompanyProfile.mjs +46 -0
  335. package/dist/finance/CryptoScreener.js +45 -0
  336. package/dist/finance/CryptoScreener.mjs +43 -0
  337. package/dist/finance/Financials.js +52 -0
  338. package/dist/finance/Financials.mjs +50 -0
  339. package/dist/finance/ForexScreener.js +46 -0
  340. package/dist/finance/ForexScreener.mjs +44 -0
  341. package/dist/finance/MarketOverview.js +104 -0
  342. package/dist/finance/MarketOverview.mjs +102 -0
  343. package/dist/finance/NewsTimeline.js +44 -0
  344. package/dist/finance/NewsTimeline.mjs +42 -0
  345. package/dist/finance/OrderEntry.js +131 -0
  346. package/dist/finance/OrderEntry.mjs +129 -0
  347. package/dist/finance/OrdersHistory.js +64 -0
  348. package/dist/finance/OrdersHistory.mjs +62 -0
  349. package/dist/finance/PositionsList.js +80 -0
  350. package/dist/finance/PositionsList.mjs +78 -0
  351. package/dist/finance/StockScreener.js +46 -0
  352. package/dist/finance/StockScreener.mjs +44 -0
  353. package/dist/finance/SymbolInfo.js +46 -0
  354. package/dist/finance/SymbolInfo.mjs +44 -0
  355. package/dist/finance/TechnicalAnalysis.js +54 -0
  356. package/dist/finance/TechnicalAnalysis.mjs +52 -0
  357. package/dist/finance/TickerTape.js +56 -0
  358. package/dist/finance/TickerTape.mjs +54 -0
  359. package/dist/finance/TradingPanel.js +191 -0
  360. package/dist/finance/TradingPanel.mjs +189 -0
  361. package/dist/finance/index.js +930 -0
  362. package/dist/finance/index.mjs +914 -0
  363. package/dist/form/index.js +155 -0
  364. package/dist/form/index.mjs +125 -0
  365. package/dist/form.js +172 -0
  366. package/dist/form.mjs +142 -0
  367. package/dist/helpers/file.d.ts +6 -0
  368. package/dist/helpers/memoization.d.ts +8 -0
  369. package/dist/hover-card.js +58 -0
  370. package/dist/hover-card.mjs +34 -0
  371. package/dist/index.js +9650 -0
  372. package/dist/index.mjs +9234 -0
  373. package/dist/input-otp.js +79 -0
  374. package/dist/input-otp.mjs +54 -0
  375. package/dist/kanban/index.js +594 -0
  376. package/dist/kanban/index.mjs +572 -0
  377. package/dist/lib/utils.js +28 -0
  378. package/dist/lib/utils.mjs +24 -0
  379. package/dist/mermaid/index.js +281 -0
  380. package/dist/mermaid/index.mjs +254 -0
  381. package/dist/navigation/index.js +98 -0
  382. package/dist/navigation/index.mjs +79 -0
  383. package/dist/navigation-menu.js +149 -0
  384. package/dist/navigation-menu.mjs +116 -0
  385. package/dist/pattern/grid-pattern.js +333 -0
  386. package/dist/pattern/grid-pattern.mjs +310 -0
  387. package/dist/pattern/index.js +333 -0
  388. package/dist/pattern/index.mjs +310 -0
  389. package/dist/popover.js +63 -0
  390. package/dist/popover.mjs +37 -0
  391. package/dist/primitives/__tests__/core-primitives.test.d.ts +1 -0
  392. package/dist/primitives/accordion.d.ts +26 -0
  393. package/dist/primitives/action-button.d.ts +9 -0
  394. package/dist/primitives/alert-dialog.d.ts +56 -0
  395. package/dist/primitives/alert.d.ts +10 -0
  396. package/dist/primitives/apply-typography.d.ts +7 -0
  397. package/dist/primitives/aspect-ratio.d.ts +3 -0
  398. package/dist/primitives/avatar.d.ts +24 -0
  399. package/dist/primitives/background-beams.d.ts +4 -0
  400. package/dist/primitives/badge.d.ts +10 -0
  401. package/dist/primitives/breadcrumb.d.ts +50 -0
  402. package/dist/primitives/breakpoint-indicator.d.ts +3 -0
  403. package/dist/primitives/button-group.d.ts +11 -0
  404. package/dist/primitives/button.d.ts +13 -0
  405. package/dist/primitives/cal-embed.d.ts +10 -0
  406. package/dist/primitives/calendar.d.ts +10 -0
  407. package/dist/primitives/card.d.ts +9 -0
  408. package/dist/primitives/carousel.d.ts +18 -0
  409. package/dist/primitives/chart.d.ts +40 -0
  410. package/dist/primitives/charts/__tests__/charts.test.d.ts +9 -0
  411. package/dist/primitives/charts/area/chart-area-axes.d.ts +2 -0
  412. package/dist/primitives/charts/area/chart-area-default.d.ts +2 -0
  413. package/dist/primitives/charts/area/chart-area-gradient.d.ts +2 -0
  414. package/dist/primitives/charts/area/chart-area-icons.d.ts +2 -0
  415. package/dist/primitives/charts/area/chart-area-interactive.d.ts +2 -0
  416. package/dist/primitives/charts/area/chart-area-legend.d.ts +2 -0
  417. package/dist/primitives/charts/area/chart-area-linear.d.ts +2 -0
  418. package/dist/primitives/charts/area/chart-area-stacked-expand.d.ts +2 -0
  419. package/dist/primitives/charts/area/chart-area-stacked.d.ts +2 -0
  420. package/dist/primitives/charts/area/chart-area-step.d.ts +2 -0
  421. package/dist/primitives/charts/area/index.d.ts +10 -0
  422. package/dist/primitives/charts/bar/chart-bar-active.d.ts +2 -0
  423. package/dist/primitives/charts/bar/chart-bar-default.d.ts +2 -0
  424. package/dist/primitives/charts/bar/chart-bar-horizontal.d.ts +2 -0
  425. package/dist/primitives/charts/bar/chart-bar-interactive.d.ts +2 -0
  426. package/dist/primitives/charts/bar/chart-bar-label-custom.d.ts +2 -0
  427. package/dist/primitives/charts/bar/chart-bar-label.d.ts +2 -0
  428. package/dist/primitives/charts/bar/chart-bar-mixed.d.ts +2 -0
  429. package/dist/primitives/charts/bar/chart-bar-multiple.d.ts +2 -0
  430. package/dist/primitives/charts/bar/chart-bar-negative.d.ts +2 -0
  431. package/dist/primitives/charts/bar/chart-bar-stacked.d.ts +2 -0
  432. package/dist/primitives/charts/bar/index.d.ts +10 -0
  433. package/dist/primitives/charts/index.d.ts +7 -0
  434. package/dist/primitives/charts/line/chart-line-default.d.ts +2 -0
  435. package/dist/primitives/charts/line/chart-line-dots-colors.d.ts +2 -0
  436. package/dist/primitives/charts/line/chart-line-dots-custom.d.ts +2 -0
  437. package/dist/primitives/charts/line/chart-line-dots.d.ts +2 -0
  438. package/dist/primitives/charts/line/chart-line-interactive.d.ts +2 -0
  439. package/dist/primitives/charts/line/chart-line-label-custom.d.ts +2 -0
  440. package/dist/primitives/charts/line/chart-line-label.d.ts +2 -0
  441. package/dist/primitives/charts/line/chart-line-linear.d.ts +2 -0
  442. package/dist/primitives/charts/line/chart-line-multiple.d.ts +2 -0
  443. package/dist/primitives/charts/line/chart-line-step.d.ts +2 -0
  444. package/dist/primitives/charts/line/index.d.ts +10 -0
  445. package/dist/primitives/charts/pie/chart-pie-donut-active.d.ts +2 -0
  446. package/dist/primitives/charts/pie/chart-pie-donut-text.d.ts +2 -0
  447. package/dist/primitives/charts/pie/chart-pie-donut.d.ts +2 -0
  448. package/dist/primitives/charts/pie/chart-pie-interactive.d.ts +2 -0
  449. package/dist/primitives/charts/pie/chart-pie-label-custom.d.ts +2 -0
  450. package/dist/primitives/charts/pie/chart-pie-label-list.d.ts +2 -0
  451. package/dist/primitives/charts/pie/chart-pie-label.d.ts +2 -0
  452. package/dist/primitives/charts/pie/chart-pie-legend.d.ts +2 -0
  453. package/dist/primitives/charts/pie/chart-pie-separator-none.d.ts +2 -0
  454. package/dist/primitives/charts/pie/index.d.ts +9 -0
  455. package/dist/primitives/charts/radar/chart-radar-default.d.ts +2 -0
  456. package/dist/primitives/charts/radar/chart-radar-dots.d.ts +2 -0
  457. package/dist/primitives/charts/radar/chart-radar-grid-circle-fill.d.ts +2 -0
  458. package/dist/primitives/charts/radar/chart-radar-grid-circle-no-lines.d.ts +2 -0
  459. package/dist/primitives/charts/radar/chart-radar-grid-circle.d.ts +2 -0
  460. package/dist/primitives/charts/radar/chart-radar-grid-custom.d.ts +2 -0
  461. package/dist/primitives/charts/radar/chart-radar-grid-fill.d.ts +2 -0
  462. package/dist/primitives/charts/radar/chart-radar-grid-none.d.ts +2 -0
  463. package/dist/primitives/charts/radar/chart-radar-icons.d.ts +2 -0
  464. package/dist/primitives/charts/radar/index.d.ts +9 -0
  465. package/dist/primitives/charts/radial/chart-radial-grid.d.ts +2 -0
  466. package/dist/primitives/charts/radial/chart-radial-label.d.ts +2 -0
  467. package/dist/primitives/charts/radial/chart-radial-shape.d.ts +2 -0
  468. package/dist/primitives/charts/radial/chart-radial-simple.d.ts +2 -0
  469. package/dist/primitives/charts/radial/chart-radial-stacked.d.ts +2 -0
  470. package/dist/primitives/charts/radial/chart-radial-text.d.ts +2 -0
  471. package/dist/primitives/charts/radial/index.d.ts +6 -0
  472. package/dist/primitives/charts/tooltip/chart-tooltip-advanced.d.ts +2 -0
  473. package/dist/primitives/charts/tooltip/chart-tooltip-default.d.ts +4 -0
  474. package/dist/primitives/charts/tooltip/chart-tooltip-formatter.d.ts +2 -0
  475. package/dist/primitives/charts/tooltip/chart-tooltip-icons.d.ts +2 -0
  476. package/dist/primitives/charts/tooltip/chart-tooltip-indicator-line.d.ts +4 -0
  477. package/dist/primitives/charts/tooltip/chart-tooltip-indicator-none.d.ts +2 -0
  478. package/dist/primitives/charts/tooltip/chart-tooltip-label-custom.d.ts +2 -0
  479. package/dist/primitives/charts/tooltip/chart-tooltip-label-formatter.d.ts +2 -0
  480. package/dist/primitives/charts/tooltip/chart-tooltip-label-none.d.ts +2 -0
  481. package/dist/primitives/charts/tooltip/index.d.ts +9 -0
  482. package/dist/primitives/chat/chat-input-area.d.ts +23 -0
  483. package/dist/primitives/chat/chat-input.d.ts +12 -0
  484. package/dist/primitives/chat/files-preview.d.ts +12 -0
  485. package/dist/primitives/chat/index.d.ts +6 -0
  486. package/dist/primitives/chat/json-form.d.ts +3 -0
  487. package/dist/primitives/chat/message-list.d.ts +19 -0
  488. package/dist/primitives/chat/message.d.ts +29 -0
  489. package/dist/primitives/chat/sqlite-preview.d.ts +5 -0
  490. package/dist/primitives/checkbox.d.ts +11 -0
  491. package/dist/primitives/collapsible.d.ts +5 -0
  492. package/dist/primitives/combobox.d.ts +41 -0
  493. package/dist/primitives/command.d.ts +38 -0
  494. package/dist/primitives/context-menu.d.ts +53 -0
  495. package/dist/primitives/copy-to-clipboard-icon.d.ts +14 -0
  496. package/dist/primitives/dialog-video-controller.d.ts +3 -0
  497. package/dist/primitives/dialog.d.ts +17 -0
  498. package/dist/primitives/dot-pattern.d.ts +13 -0
  499. package/dist/primitives/dots-loader.d.ts +4 -0
  500. package/dist/primitives/drawer.d.ts +37 -0
  501. package/dist/primitives/dropdown-menu.d.ts +51 -0
  502. package/dist/primitives/empty.d.ts +11 -0
  503. package/dist/primitives/error-message.d.ts +6 -0
  504. package/dist/primitives/field.d.ts +9 -0
  505. package/dist/primitives/file-uploader.d.ts +19 -0
  506. package/dist/primitives/form.d.ts +39 -0
  507. package/dist/primitives/hover-card.d.ts +9 -0
  508. package/dist/primitives/icons/github.d.ts +4 -0
  509. package/dist/primitives/icons/index.d.ts +4 -0
  510. package/dist/primitives/icons/youtube-logo.d.ts +4 -0
  511. package/dist/primitives/index-blocks.d.ts +4 -0
  512. package/dist/primitives/index-common.d.ts +74 -0
  513. package/dist/primitives/index-core.d.ts +28 -0
  514. package/dist/primitives/index-next.d.ts +2 -0
  515. package/dist/primitives/index-selective.d.ts +51 -0
  516. package/dist/primitives/index-standard.d.ts +78 -0
  517. package/dist/primitives/index.d.ts +1 -0
  518. package/dist/primitives/index.js +9650 -0
  519. package/dist/primitives/index.mjs +9234 -0
  520. package/dist/primitives/input-group.d.ts +16 -0
  521. package/dist/primitives/input-otp.d.ts +34 -0
  522. package/dist/primitives/input.d.ts +14 -0
  523. package/dist/primitives/item.d.ts +23 -0
  524. package/dist/primitives/kbd.d.ts +4 -0
  525. package/dist/primitives/label.d.ts +10 -0
  526. package/dist/primitives/list-adaptor.d.ts +9 -0
  527. package/dist/primitives/list-box.d.ts +11 -0
  528. package/dist/primitives/loading-spinner.d.ts +5 -0
  529. package/dist/primitives/markdown-preview.d.ts +128 -0
  530. package/dist/primitives/menubar.d.ts +28 -0
  531. package/dist/primitives/mermaid.d.ts +7 -0
  532. package/dist/primitives/native-select.d.ts +8 -0
  533. package/dist/primitives/navigation-menu.d.ts +12 -0
  534. package/dist/primitives/next/image.d.ts +11 -0
  535. package/dist/primitives/next/index.d.ts +7 -0
  536. package/dist/primitives/next/inline-icon.d.ts +13 -0
  537. package/dist/primitives/next/link-element.d.ts +23 -0
  538. package/dist/primitives/next/mdx-link.d.ts +3 -0
  539. package/dist/primitives/next/media-stack.d.ts +8 -0
  540. package/dist/primitives/next/nav-items.d.ts +10 -0
  541. package/dist/primitives/next/youtube-embed.d.ts +11 -0
  542. package/dist/primitives/pagination.d.ts +34 -0
  543. package/dist/primitives/popover.d.ts +11 -0
  544. package/dist/primitives/pretty-json-print.d.ts +4 -0
  545. package/dist/primitives/progress.d.ts +8 -0
  546. package/dist/primitives/prompt-textarea.d.ts +18 -0
  547. package/dist/primitives/qr-code.d.ts +16 -0
  548. package/dist/primitives/radio-group.d.ts +11 -0
  549. package/dist/primitives/resizable.d.ts +23 -0
  550. package/dist/primitives/scroll-area.d.ts +13 -0
  551. package/dist/primitives/search-input.d.ts +13 -0
  552. package/dist/primitives/select.d.ts +26 -0
  553. package/dist/primitives/separator.d.ts +8 -0
  554. package/dist/primitives/sheet.d.ts +40 -0
  555. package/dist/primitives/sidebar.d.ts +69 -0
  556. package/dist/primitives/skeleton.d.ts +4 -0
  557. package/dist/primitives/slider.d.ts +5 -0
  558. package/dist/primitives/sonner.d.ts +5 -0
  559. package/dist/primitives/spinner.d.ts +2 -0
  560. package/dist/primitives/step-indicator.d.ts +9 -0
  561. package/dist/primitives/stepper.d.ts +48 -0
  562. package/dist/primitives/switch.d.ts +8 -0
  563. package/dist/primitives/table.d.ts +34 -0
  564. package/dist/primitives/tabs.d.ts +11 -0
  565. package/dist/primitives/text-area.d.ts +5 -0
  566. package/dist/primitives/text-link.d.ts +5 -0
  567. package/dist/primitives/textarea.d.ts +12 -0
  568. package/dist/primitives/textfield.d.ts +32 -0
  569. package/dist/primitives/toast.d.ts +5 -0
  570. package/dist/primitives/toggle-group.d.ts +13 -0
  571. package/dist/primitives/toggle.d.ts +12 -0
  572. package/dist/primitives/tooltip.d.ts +14 -0
  573. package/dist/primitives/video-player.d.ts +6 -0
  574. package/dist/primitives/youtube-pip-player.d.ts +32 -0
  575. package/dist/primitives-export.js +9650 -0
  576. package/dist/primitives-export.mjs +9234 -0
  577. package/dist/progress.js +62 -0
  578. package/dist/progress.mjs +37 -0
  579. package/dist/project/gantt.js +65 -0
  580. package/dist/project/gantt.mjs +43 -0
  581. package/dist/project/index.js +636 -0
  582. package/dist/project/index.mjs +611 -0
  583. package/dist/project/kanban.js +597 -0
  584. package/dist/project/kanban.mjs +572 -0
  585. package/dist/project/list.js +35 -0
  586. package/dist/project/list.mjs +12 -0
  587. package/dist/radio-group.js +68 -0
  588. package/dist/radio-group.mjs +45 -0
  589. package/dist/resizable.js +72 -0
  590. package/dist/resizable.mjs +48 -0
  591. package/dist/scroll-area.js +89 -0
  592. package/dist/scroll-area.mjs +66 -0
  593. package/dist/select.js +140 -0
  594. package/dist/select.mjs +111 -0
  595. package/dist/separator.js +59 -0
  596. package/dist/separator.mjs +34 -0
  597. package/dist/sheet.js +148 -0
  598. package/dist/sheet.mjs +117 -0
  599. package/dist/skeleton.js +32 -0
  600. package/dist/skeleton.mjs +27 -0
  601. package/dist/slider.js +99 -0
  602. package/dist/slider.mjs +73 -0
  603. package/dist/sonner.js +34 -0
  604. package/dist/sonner.mjs +29 -0
  605. package/dist/spline/index.js +211 -0
  606. package/dist/spline/index.mjs +202 -0
  607. package/dist/spline/media-stack.js +193 -0
  608. package/dist/spline/media-stack.mjs +185 -0
  609. package/dist/spline/player.js +37 -0
  610. package/dist/spline/player.mjs +31 -0
  611. package/dist/src/3d/button.d.ts +26 -0
  612. package/dist/src/3d/card.d.ts +28 -0
  613. package/dist/src/3d/carousel.d.ts +25 -0
  614. package/dist/src/3d/grid.d.ts +48 -0
  615. package/dist/src/3d/index.d.ts +6 -0
  616. package/dist/src/3d/marquee.d.ts +36 -0
  617. package/dist/src/3d/pin.d.ts +7 -0
  618. package/dist/src/animation/apple-cards-carousel.d.ts +35 -0
  619. package/dist/src/animation/apple-hello-effect.d.ts +7 -0
  620. package/dist/src/animation/background.d.ts +102 -0
  621. package/dist/src/animation/beam.d.ts +14 -0
  622. package/dist/src/animation/cursor.d.ts +69 -0
  623. package/dist/src/animation/icon.d.ts +118 -0
  624. package/dist/src/animation/index.d.ts +14 -0
  625. package/dist/src/animation/list.d.ts +125 -0
  626. package/dist/src/animation/number.d.ts +126 -0
  627. package/dist/src/animation/testimonials.d.ts +16 -0
  628. package/dist/src/animation/tooltip.d.ts +8 -0
  629. package/dist/src/avatar.d.ts +1 -0
  630. package/dist/src/badge.d.ts +1 -0
  631. package/dist/src/billing/components/index.d.ts +6 -0
  632. package/dist/src/billing/components/invoice-manager.d.ts +9 -0
  633. package/dist/src/billing/components/payment-manager.d.ts +12 -0
  634. package/dist/src/billing/components/subscription-portal.d.ts +14 -0
  635. package/dist/src/billing/index.d.ts +6 -0
  636. package/dist/src/billing/types/index.d.ts +99 -0
  637. package/dist/src/button.d.ts +1 -0
  638. package/dist/src/calendar-ext/index.d.ts +3 -0
  639. package/dist/src/charts/index.d.ts +64 -0
  640. package/dist/src/code/block.d.ts +21 -0
  641. package/dist/src/code/compare.d.ts +35 -0
  642. package/dist/src/code/diff.d.ts +29 -0
  643. package/dist/src/code/editor.d.ts +22 -0
  644. package/dist/src/code/explorer.d.ts +33 -0
  645. package/dist/src/code/index.d.ts +9 -0
  646. package/dist/src/code/preview.d.ts +30 -0
  647. package/dist/src/code/snippet.d.ts +28 -0
  648. package/dist/src/code/tabs.d.ts +11 -0
  649. package/dist/src/code/terminal.d.ts +33 -0
  650. package/dist/src/desktop/hooks.d.ts +74 -0
  651. package/dist/src/desktop/index.d.ts +6 -0
  652. package/dist/src/desktop/spotlight.d.ts +23 -0
  653. package/dist/src/desktop/window.d.ts +33 -0
  654. package/dist/src/device/index.d.ts +1 -0
  655. package/dist/src/dock/basic.d.ts +19 -0
  656. package/dist/src/dock/index.d.ts +5 -0
  657. package/dist/src/dock/limelight-nav.d.ts +9 -0
  658. package/dist/src/dock/macos.d.ts +16 -0
  659. package/dist/src/dock/menu.d.ts +13 -0
  660. package/dist/src/dock/message.d.ts +14 -0
  661. package/dist/src/form/form.d.ts +23 -0
  662. package/dist/src/form/index.d.ts +1 -0
  663. package/dist/src/hooks/index.d.ts +7 -0
  664. package/dist/src/hooks/use-click-away.d.ts +2 -0
  665. package/dist/src/hooks/use-combined-refs.d.ts +3 -0
  666. package/dist/src/hooks/use-copy-clipboard.d.ts +9 -0
  667. package/dist/src/hooks/use-debounce.d.ts +1 -0
  668. package/dist/src/hooks/use-fill-ids.d.ts +8 -0
  669. package/dist/src/hooks/use-map.d.ts +1 -0
  670. package/dist/src/hooks/use-measure.d.ts +8 -0
  671. package/dist/src/hooks/use-reverse-video-playback.d.ts +1 -0
  672. package/dist/src/hooks/use-scroll-restoration.d.ts +8 -0
  673. package/dist/src/kanban/index.d.ts +2 -0
  674. package/dist/src/mcp/enhanced-server.d.ts +7 -0
  675. package/dist/src/mcp/index.d.ts +6 -0
  676. package/dist/src/mermaid/index.d.ts +2 -0
  677. package/dist/src/navigation/advanced-navigation-bar.d.ts +1 -0
  678. package/dist/src/navigation/ai-model-selector-navigation-bar.d.ts +1 -0
  679. package/dist/src/navigation/app-switcher-navigation-bar.d.ts +1 -0
  680. package/dist/src/navigation/breadcrumb-and-filters-navigation-bar.d.ts +1 -0
  681. package/dist/src/navigation/breadcrumb-navigation-bar.d.ts +1 -0
  682. package/dist/src/navigation/centered-logo-navigation-bar.d.ts +1 -0
  683. package/dist/src/navigation/collaboration-navigation-bar.d.ts +1 -0
  684. package/dist/src/navigation/communication-navigation-bar.d.ts +1 -0
  685. package/dist/src/navigation/context-switcher-navigation-bar.d.ts +1 -0
  686. package/dist/src/navigation/dashboard-navigation-bar.d.ts +1 -0
  687. package/dist/src/navigation/e-commerce-navigation-bar.d.ts +1 -0
  688. package/dist/src/navigation/icon-navigation-bar.d.ts +1 -0
  689. package/dist/src/navigation/index.d.ts +18 -0
  690. package/dist/src/navigation/search-and-toggle-navigation-bar.d.ts +1 -0
  691. package/dist/src/navigation/simple-navigation-bar.d.ts +1 -0
  692. package/dist/src/navigation/status-dashboard-navigation-bar.d.ts +1 -0
  693. package/dist/src/navigation/team-switcher-navigation-bar.d.ts +1 -0
  694. package/dist/src/navigation/two-tier-navigation-bar.d.ts +1 -0
  695. package/dist/src/navigation/underline-navigation-bar.d.ts +1 -0
  696. package/dist/src/pattern/grid.d.ts +110 -0
  697. package/dist/src/pattern/index.d.ts +2 -0
  698. package/dist/src/primitives-export.d.ts +8 -0
  699. package/dist/src/project/gantt.d.ts +12 -0
  700. package/dist/src/project/index.d.ts +3 -0
  701. package/dist/src/project/kanban.d.ts +35 -0
  702. package/dist/src/project/list.d.ts +4 -0
  703. package/dist/src/registry/api.d.ts +37 -0
  704. package/dist/src/registry/index.d.ts +86 -0
  705. package/dist/src/spline/index.d.ts +2 -0
  706. package/dist/src/spline/media-stack.d.ts +14 -0
  707. package/dist/src/spline/player.d.ts +14 -0
  708. package/dist/src/ui/announcement.d.ts +8 -0
  709. package/dist/src/ui/avatar-group.d.ts +11 -0
  710. package/dist/src/ui/banner.d.ts +10 -0
  711. package/dist/src/ui/cursor.d.ts +8 -0
  712. package/dist/src/ui/index.d.ts +17 -0
  713. package/dist/src/ui/marquee.d.ts +9 -0
  714. package/dist/src/ui/pill.d.ts +10 -0
  715. package/dist/src/ui/spinner.d.ts +2 -0
  716. package/dist/src/ui/tags.d.ts +12 -0
  717. package/dist/src/ui/ticker.d.ts +9 -0
  718. package/dist/src/utils.d.ts +4 -0
  719. package/dist/style/theme-provider.d.ts +4 -0
  720. package/dist/switch.js +62 -0
  721. package/dist/switch.mjs +37 -0
  722. package/dist/table.js +110 -0
  723. package/dist/table.mjs +101 -0
  724. package/dist/tabs.js +128 -0
  725. package/dist/tabs.mjs +102 -0
  726. package/dist/tailwind/fontFamily.tailwind.d.ts +8 -0
  727. package/dist/tailwind/fontSize.tailwind.d.ts +36 -0
  728. package/dist/tailwind/index.d.ts +3 -0
  729. package/dist/tailwind/index.js +2023 -0
  730. package/dist/tailwind/index.mjs +2011 -0
  731. package/dist/tailwind/screens.tailwind.d.ts +9 -0
  732. package/dist/tailwind/tw-font-desc.d.ts +6 -0
  733. package/dist/textarea.js +78 -0
  734. package/dist/textarea.mjs +56 -0
  735. package/dist/toggle-group.js +118 -0
  736. package/dist/toggle-group.mjs +93 -0
  737. package/dist/toggle.js +71 -0
  738. package/dist/toggle.mjs +48 -0
  739. package/dist/tooltip.js +67 -0
  740. package/dist/tooltip.mjs +40 -0
  741. package/dist/types/animation-def.d.ts +2 -0
  742. package/dist/types/breakpoints.d.ts +4 -0
  743. package/dist/types/bullet-item.d.ts +6 -0
  744. package/dist/types/button-def.d.ts +29 -0
  745. package/dist/types/dimensions.d.ts +5 -0
  746. package/dist/types/grid-def.d.ts +36 -0
  747. package/dist/types/image-def.d.ts +27 -0
  748. package/dist/types/index.d.ts +14 -0
  749. package/dist/types/index.js +57 -0
  750. package/dist/types/index.mjs +51 -0
  751. package/dist/types/link-def.d.ts +44 -0
  752. package/dist/types/media-stack-def.d.ts +25 -0
  753. package/dist/types/t-shirt-size.d.ts +2 -0
  754. package/dist/types/tshirt-dimensions.d.ts +12 -0
  755. package/dist/types/video-def.d.ts +9 -0
  756. package/dist/ui/announcement.js +134 -0
  757. package/dist/ui/announcement.mjs +112 -0
  758. package/dist/ui/avatar-group.js +88 -0
  759. package/dist/ui/avatar-group.mjs +65 -0
  760. package/dist/ui/banner.js +85 -0
  761. package/dist/ui/banner.mjs +62 -0
  762. package/dist/ui/cursor.js +78 -0
  763. package/dist/ui/cursor.mjs +56 -0
  764. package/dist/ui/index.js +495 -0
  765. package/dist/ui/index.mjs +462 -0
  766. package/dist/ui/marquee.js +74 -0
  767. package/dist/ui/marquee.mjs +52 -0
  768. package/dist/ui/pill.js +85 -0
  769. package/dist/ui/pill.mjs +62 -0
  770. package/dist/ui/spinner.js +28 -0
  771. package/dist/ui/spinner.mjs +26 -0
  772. package/dist/ui/tags.js +117 -0
  773. package/dist/ui/tags.mjs +95 -0
  774. package/dist/ui/ticker.js +73 -0
  775. package/dist/ui/ticker.mjs +51 -0
  776. package/dist/util/blob.d.ts +2 -0
  777. package/dist/util/copy-to-clipboard.d.ts +1 -0
  778. package/dist/util/create-shadow-root.d.ts +7 -0
  779. package/dist/util/date.d.ts +28 -0
  780. package/dist/util/debounce.d.ts +1 -0
  781. package/dist/util/file.d.ts +3 -0
  782. package/dist/util/format-and-abbreviate-as-currency.d.ts +11 -0
  783. package/dist/util/format-text.d.ts +7 -0
  784. package/dist/util/format-to-max-char.d.ts +5 -0
  785. package/dist/util/index-client.d.ts +2 -0
  786. package/dist/util/index.d.ts +36 -0
  787. package/dist/util/index.js +463 -0
  788. package/dist/util/index.mjs +404 -0
  789. package/dist/util/number-abbreviate.d.ts +9 -0
  790. package/dist/util/specifier.d.ts +7 -0
  791. package/dist/util/spread-to-transform.d.ts +7 -0
  792. package/dist/util/step-animation.d.ts +5 -0
  793. package/dist/util/timing.d.ts +1 -0
  794. package/dist/util/toasts.d.ts +2 -0
  795. package/dist/util/two-way-map.d.ts +8 -0
  796. package/dist/util/use-mobile.d.ts +1 -0
  797. package/dist/utils.d.ts +3 -0
  798. package/docs/_registry/index.ts +426 -0
  799. package/docs/_registry/layout/docs-min.tsx +197 -0
  800. package/docs/_registry/layout/page-min.tsx +128 -0
  801. package/docs/components/accordion.tsx +118 -0
  802. package/docs/components/banner.tsx +144 -0
  803. package/docs/components/callout.tsx +112 -0
  804. package/docs/components/card.tsx +52 -0
  805. package/docs/components/codeblock.tsx +258 -0
  806. package/docs/components/dialog/search-algolia.tsx +132 -0
  807. package/docs/components/dialog/search-default.tsx +131 -0
  808. package/docs/components/dialog/search-orama.tsx +143 -0
  809. package/docs/components/dialog/search.tsx +529 -0
  810. package/docs/components/dynamic-codeblock.tsx +129 -0
  811. package/docs/components/files.tsx +81 -0
  812. package/docs/components/github-info.tsx +107 -0
  813. package/docs/components/heading.tsx +33 -0
  814. package/docs/components/image-zoom.css +77 -0
  815. package/docs/components/image-zoom.tsx +58 -0
  816. package/docs/components/index.ts +7 -0
  817. package/docs/components/inline-toc.tsx +48 -0
  818. package/docs/components/sidebar/base.tsx +451 -0
  819. package/docs/components/sidebar/link-item.tsx +65 -0
  820. package/docs/components/sidebar/page-tree.tsx +113 -0
  821. package/docs/components/sidebar/tabs/dropdown.tsx +109 -0
  822. package/docs/components/sidebar/tabs/index.tsx +89 -0
  823. package/docs/components/steps.tsx +9 -0
  824. package/docs/components/tabs.tsx +203 -0
  825. package/docs/components/toc/clerk.tsx +173 -0
  826. package/docs/components/toc/default.tsx +57 -0
  827. package/docs/components/toc/index.tsx +136 -0
  828. package/docs/components/type-table.tsx +174 -0
  829. package/docs/components/ui/accordion.tsx +88 -0
  830. package/docs/components/ui/button.tsx +28 -0
  831. package/docs/components/ui/collapsible.tsx +42 -0
  832. package/docs/components/ui/navigation-menu.tsx +83 -0
  833. package/docs/components/ui/popover.tsx +32 -0
  834. package/docs/components/ui/scroll-area.tsx +59 -0
  835. package/docs/components/ui/tabs.tsx +145 -0
  836. package/docs/contexts/i18n.tsx +56 -0
  837. package/docs/contexts/search.tsx +165 -0
  838. package/docs/contexts/tree.tsx +65 -0
  839. package/docs/css/aspen.css +39 -0
  840. package/docs/css/black.css +39 -0
  841. package/docs/css/catppuccin.css +49 -0
  842. package/docs/css/colors/index.css +51 -0
  843. package/docs/css/dusk.css +47 -0
  844. package/docs/css/emerald.css +39 -0
  845. package/docs/css/layouts/docs.css +1 -0
  846. package/docs/css/layouts/home.css +1 -0
  847. package/docs/css/layouts/notebook.css +1 -0
  848. package/docs/css/neutral.css +7 -0
  849. package/docs/css/ocean.css +48 -0
  850. package/docs/css/preset.css +305 -0
  851. package/docs/css/purple.css +39 -0
  852. package/docs/css/ruby.css +39 -0
  853. package/docs/css/shadcn.css +36 -0
  854. package/docs/css/shiki.css +90 -0
  855. package/docs/css/solar.css +75 -0
  856. package/docs/css/style.css +9 -0
  857. package/docs/css/vitepress.css +77 -0
  858. package/docs/i18n.tsx +30 -0
  859. package/docs/icons.tsx +354 -0
  860. package/docs/layouts/docs/client.tsx +129 -0
  861. package/docs/layouts/docs/index.tsx +321 -0
  862. package/docs/layouts/docs/page/client.tsx +376 -0
  863. package/docs/layouts/docs/page/index.tsx +251 -0
  864. package/docs/layouts/docs/sidebar.tsx +265 -0
  865. package/docs/layouts/home/client.tsx +375 -0
  866. package/docs/layouts/home/index.tsx +51 -0
  867. package/docs/layouts/home/navbar.tsx +55 -0
  868. package/docs/layouts/notebook/client.tsx +281 -0
  869. package/docs/layouts/notebook/index.tsx +461 -0
  870. package/docs/layouts/notebook/page/client.tsx +375 -0
  871. package/docs/layouts/notebook/page/index.tsx +251 -0
  872. package/docs/layouts/notebook/sidebar.tsx +248 -0
  873. package/docs/layouts/shared/index.tsx +89 -0
  874. package/docs/layouts/shared/language-toggle.tsx +66 -0
  875. package/docs/layouts/shared/link-item.tsx +119 -0
  876. package/docs/layouts/shared/search-toggle.tsx +78 -0
  877. package/docs/layouts/shared/theme-toggle.tsx +86 -0
  878. package/docs/mdx.server.tsx +37 -0
  879. package/docs/mdx.tsx +97 -0
  880. package/docs/og.tsx +101 -0
  881. package/docs/page.tsx +85 -0
  882. package/docs/provider/base.tsx +173 -0
  883. package/docs/provider/next.tsx +23 -0
  884. package/docs/provider/react-router.tsx +23 -0
  885. package/docs/provider/tanstack.tsx +23 -0
  886. package/docs/provider/waku.tsx +23 -0
  887. package/docs/source.ts +3 -0
  888. package/docs/theme/typography/LICENSE +21 -0
  889. package/docs/theme/typography/index.ts +201 -0
  890. package/docs/theme/typography/styles.ts +449 -0
  891. package/docs/utils/cn.ts +1 -0
  892. package/docs/utils/is-active.ts +23 -0
  893. package/docs/utils/merge-refs.ts +15 -0
  894. package/docs/utils/use-copy-button.ts +39 -0
  895. package/docs/utils/use-footer-items.ts +27 -0
  896. package/docs/utils/use-is-scroll-top.ts +21 -0
  897. package/finance/README.md +164 -0
  898. package/finance/components/AdvancedChart.tsx +58 -0
  899. package/finance/components/CompanyProfile.tsx +65 -0
  900. package/finance/components/CryptoScreener.tsx +55 -0
  901. package/finance/components/Financials.tsx +71 -0
  902. package/finance/components/ForexScreener.tsx +56 -0
  903. package/finance/components/MarketOverview.tsx +114 -0
  904. package/finance/components/NewsTimeline.tsx +54 -0
  905. package/finance/components/OrderEntry.tsx +157 -0
  906. package/finance/components/OrdersHistory.tsx +103 -0
  907. package/finance/components/PositionsList.tsx +85 -0
  908. package/finance/components/StockScreener.tsx +56 -0
  909. package/finance/components/SymbolInfo.tsx +62 -0
  910. package/finance/components/TechnicalAnalysis.tsx +74 -0
  911. package/finance/components/TickerTape.tsx +66 -0
  912. package/finance/components/TradingPanel.tsx +238 -0
  913. package/finance/components/index.ts +40 -0
  914. package/finance/index.ts +23 -0
  915. package/package.json +803 -0
  916. package/style/drawer.css +163 -0
  917. package/style/globals.css +146 -0
  918. package/style/libreapps-common.css +31 -0
  919. package/style/libreapps-default-colors.css +147 -0
  920. package/style/tailwind.css +200 -0
  921. package/style/theme-provider.tsx +20 -0
@@ -0,0 +1,1685 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ var AccordionPrimitive = require('@radix-ui/react-accordion');
5
+ var lucideReact = require('lucide-react');
6
+ var clsx = require('clsx');
7
+ var tailwindMerge = require('tailwind-merge');
8
+ var jsxRuntime = require('react/jsx-runtime');
9
+ var React4 = require('react');
10
+ var Image2 = require('next/image');
11
+ var reactSlot = require('@radix-ui/react-slot');
12
+ var classVarianceAuthority = require('class-variance-authority');
13
+ var Link = require('next/link');
14
+ var reactIntersectionObserver = require('react-intersection-observer');
15
+
16
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
17
+
18
+ function _interopNamespace(e) {
19
+ if (e && e.__esModule) return e;
20
+ var n = Object.create(null);
21
+ if (e) {
22
+ Object.keys(e).forEach(function (k) {
23
+ if (k !== 'default') {
24
+ var d = Object.getOwnPropertyDescriptor(e, k);
25
+ Object.defineProperty(n, k, d.get ? d : {
26
+ enumerable: true,
27
+ get: function () { return e[k]; }
28
+ });
29
+ }
30
+ });
31
+ }
32
+ n.default = e;
33
+ return Object.freeze(n);
34
+ }
35
+
36
+ var AccordionPrimitive__namespace = /*#__PURE__*/_interopNamespace(AccordionPrimitive);
37
+ var React4__namespace = /*#__PURE__*/_interopNamespace(React4);
38
+ var Image2__default = /*#__PURE__*/_interopDefault(Image2);
39
+ var Link__default = /*#__PURE__*/_interopDefault(Link);
40
+
41
+ var __defProp = Object.defineProperty;
42
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
43
+ var __export = (target, all) => {
44
+ for (var name in all)
45
+ __defProp(target, name, { get: all[name], enumerable: true });
46
+ };
47
+
48
+ // blocks/def/space-block.ts
49
+ var SPACE_DEFAULTS = {
50
+ xs: 2,
51
+ sm: 4,
52
+ md: 5,
53
+ lg: 6,
54
+ xl: 8
55
+ };
56
+ function cn(...inputs) {
57
+ return tailwindMerge.twMerge(clsx.clsx(inputs));
58
+ }
59
+ __name(cn, "cn");
60
+ var Accordion = AccordionPrimitive__namespace.Root;
61
+ var AccordionItem = /* @__PURE__ */ __name(({ className, ref, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(AccordionPrimitive__namespace.Item, { className: cn("", className), ref, ...props }), "AccordionItem");
62
+ AccordionItem.displayName = "AccordionItem";
63
+ var AccordionTrigger = /* @__PURE__ */ __name(({
64
+ className,
65
+ children,
66
+ hideArrow = false,
67
+ ref,
68
+ ...props
69
+ }) => /* @__PURE__ */ jsxRuntime.jsx(AccordionPrimitive__namespace.Header, { className: "flex", children: /* @__PURE__ */ jsxRuntime.jsxs(
70
+ AccordionPrimitive__namespace.Trigger,
71
+ {
72
+ className: cn(
73
+ "flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",
74
+ className
75
+ ),
76
+ ref,
77
+ ...props,
78
+ children: [
79
+ children,
80
+ hideArrow ? null : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronDown, { className: "h-4 w-4 shrink-0 transition-transform duration-200" })
81
+ ]
82
+ }
83
+ ) }), "AccordionTrigger");
84
+ AccordionTrigger.displayName = AccordionPrimitive__namespace.Trigger.displayName;
85
+ var AccordionContent = /* @__PURE__ */ __name(({
86
+ className,
87
+ children,
88
+ ref,
89
+ ...props
90
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
91
+ AccordionPrimitive__namespace.Content,
92
+ {
93
+ className: "data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down w-full overflow-hidden text-sm transition-all",
94
+ ref,
95
+ ...props,
96
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("pt-0 pb-4", className), children })
97
+ }
98
+ ), "AccordionContent");
99
+ AccordionContent.displayName = AccordionPrimitive__namespace.Content.displayName;
100
+ function Card({ className, ...props }) {
101
+ return /* @__PURE__ */ jsxRuntime.jsx(
102
+ "div",
103
+ {
104
+ "data-slot": "card",
105
+ className: cn(
106
+ "bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",
107
+ className
108
+ ),
109
+ ...props
110
+ }
111
+ );
112
+ }
113
+ __name(Card, "Card");
114
+ function CardHeader({ className, ...props }) {
115
+ return /* @__PURE__ */ jsxRuntime.jsx(
116
+ "div",
117
+ {
118
+ "data-slot": "card-header",
119
+ className: cn(
120
+ "@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",
121
+ className
122
+ ),
123
+ ...props
124
+ }
125
+ );
126
+ }
127
+ __name(CardHeader, "CardHeader");
128
+ function CardTitle({ className, ...props }) {
129
+ return /* @__PURE__ */ jsxRuntime.jsx(
130
+ "div",
131
+ {
132
+ "data-slot": "card-title",
133
+ className: cn("leading-none font-semibold", className),
134
+ ...props
135
+ }
136
+ );
137
+ }
138
+ __name(CardTitle, "CardTitle");
139
+ function CardDescription({ className, ...props }) {
140
+ return /* @__PURE__ */ jsxRuntime.jsx(
141
+ "div",
142
+ {
143
+ "data-slot": "card-description",
144
+ className: cn("text-muted-foreground text-sm", className),
145
+ ...props
146
+ }
147
+ );
148
+ }
149
+ __name(CardDescription, "CardDescription");
150
+ function CardContent({ className, ...props }) {
151
+ return /* @__PURE__ */ jsxRuntime.jsx(
152
+ "div",
153
+ {
154
+ "data-slot": "card-content",
155
+ className: cn("px-6", className),
156
+ ...props
157
+ }
158
+ );
159
+ }
160
+ __name(CardContent, "CardContent");
161
+ function CardFooter({ className, ...props }) {
162
+ return /* @__PURE__ */ jsxRuntime.jsx(
163
+ "div",
164
+ {
165
+ "data-slot": "card-footer",
166
+ className: cn("flex items-center px-6 [.border-t]:pt-6", className),
167
+ ...props
168
+ }
169
+ );
170
+ }
171
+ __name(CardFooter, "CardFooter");
172
+
173
+ // util/specifier.ts
174
+ var getPrimaryStartingWith = /* @__PURE__ */ __name((s, toFind) => {
175
+ const tokenArray = s.split(" ");
176
+ return tokenArray.find((tok) => tok.startsWith(`${toFind}-`));
177
+ }, "getPrimaryStartingWith");
178
+ function getSpecifierData(main, getPrimary, getData, def) {
179
+ const primary = getPrimary(main);
180
+ if (primary) {
181
+ return getData(primary) ?? def;
182
+ }
183
+ return def ?? void 0;
184
+ }
185
+ __name(getSpecifierData, "getSpecifierData");
186
+
187
+ // util/index.ts
188
+ function constrain(value, minOrConstrainTo, max) {
189
+ if (typeof value === "number" && typeof minOrConstrainTo === "number" && typeof max === "number") {
190
+ return Math.min(Math.max(value, minOrConstrainTo), max);
191
+ }
192
+ if (typeof value === "object" && typeof minOrConstrainTo === "object") {
193
+ const dim = value;
194
+ const constrainTo = minOrConstrainTo;
195
+ const aspectRatio = dim.w / dim.h;
196
+ const constrainAspectRatio = constrainTo.w / constrainTo.h;
197
+ if (aspectRatio > constrainAspectRatio) {
198
+ return {
199
+ w: constrainTo.w,
200
+ h: constrainTo.w / aspectRatio
201
+ };
202
+ } else {
203
+ return {
204
+ w: constrainTo.h * aspectRatio,
205
+ h: constrainTo.h
206
+ };
207
+ }
208
+ }
209
+ throw new Error("Invalid parameters for constrain function");
210
+ }
211
+ __name(constrain, "constrain");
212
+ function containsToken(text, token) {
213
+ if (!text) return false;
214
+ return text.toLowerCase().includes(token.toLowerCase());
215
+ }
216
+ __name(containsToken, "containsToken");
217
+ function ldMerge(...objects) {
218
+ const result = {};
219
+ for (const obj of objects) {
220
+ if (obj && typeof obj === "object") {
221
+ Object.assign(result, obj);
222
+ }
223
+ }
224
+ return result;
225
+ }
226
+ __name(ldMerge, "ldMerge");
227
+ var ApplyTypography = /* @__PURE__ */ __name(({
228
+ children,
229
+ className = "",
230
+ asTag = "div",
231
+ size = "responsive",
232
+ ...rest
233
+ }) => {
234
+ let typoClasses = "typography gap-3 xs:typography-sm sm:typography sm:gap-4 lg:typography-lg lg:gap-5 xl:typography-xl xl:gap-6 typography-headings:font-heading ";
235
+ switch (size) {
236
+ case "sm":
237
+ {
238
+ typoClasses = "typography typography-sm gap-3 typography-headings:font-heading typography-p:text-sm ";
239
+ }
240
+ break;
241
+ case "base":
242
+ {
243
+ typoClasses = "typography gap-4 typography-headings:font-heading ";
244
+ }
245
+ break;
246
+ case "lg":
247
+ {
248
+ typoClasses = "typography typography-lg gap-5 typography-headings:font-heading typography-p:text-lg ";
249
+ }
250
+ break;
251
+ case "xl":
252
+ {
253
+ typoClasses = "typography typography-xl gap-6 typography-headings:font-heading typography-p:text-lg ";
254
+ }
255
+ break;
256
+ }
257
+ const Tag = asTag;
258
+ return /* @__PURE__ */ jsxRuntime.jsx(Tag, { ...rest, className: cn(typoClasses, className), children });
259
+ }, "ApplyTypography");
260
+ var VideoPlayer = React4__namespace.default.forwardRef(
261
+ ({
262
+ sources,
263
+ ...rest
264
+ }, ref) => {
265
+ return /* @__PURE__ */ jsxRuntime.jsx("video", { ref, ...rest, children: sources.map((source, index) => /* @__PURE__ */ jsxRuntime.jsx("source", { src: source }, index)) });
266
+ }
267
+ );
268
+ var video_player_default = VideoPlayer;
269
+ var AccordianBlockComponent = /* @__PURE__ */ __name(({
270
+ block,
271
+ className = ""
272
+ }) => {
273
+ if (block.blockType !== "accordian") {
274
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "accordian block required" });
275
+ }
276
+ const accordian = block;
277
+ return /* @__PURE__ */ jsxRuntime.jsx(Accordion, { type: "single", collapsible: true, className: cn("w-full border rounded-xl overflow-hidden", className), children: accordian.items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs(AccordionItem, { className: "border-b last:border-0 overflow-hidden", value: `value-${index}`, children: [
278
+ /* @__PURE__ */ jsxRuntime.jsx(AccordionTrigger, { className: "px-3 md:px-4 lg:px-6 hover:no-underline hover:bg-level-3", children: /* @__PURE__ */ jsxRuntime.jsx(ApplyTypography, { children: /* @__PURE__ */ jsxRuntime.jsx("h6", { className: "leading-[1.2] text-[1.05rem] font-semibold ", children: item.trigger }) }) }),
279
+ /* @__PURE__ */ jsxRuntime.jsx(AccordionContent, { className: "p-4 border-t bg-level-1", children: /* @__PURE__ */ jsxRuntime.jsx(ApplyTypography, { className: "flex flex-col justify-start items-start ", children: typeof item.content === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { children: item.content }) : item.content }) })
280
+ ] }, index)) });
281
+ }, "AccordianBlockComponent");
282
+ var accordian_block_default = AccordianBlockComponent;
283
+ var InlineIcon = /* @__PURE__ */ __name(({
284
+ icon,
285
+ size,
286
+ agent,
287
+ className = ""
288
+ }) => {
289
+ if (!icon) return null;
290
+ const phone = agent === "phone";
291
+ if (typeof icon === "string") {
292
+ const _size = phone && size ? size * 0.75 : size;
293
+ return /* @__PURE__ */ jsxRuntime.jsx(Image2__default.default, { src: icon, width: _size, height: _size, alt: "icon", className });
294
+ }
295
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className, children: icon });
296
+ }, "InlineIcon");
297
+ var inline_icon_default = InlineIcon;
298
+
299
+ // blocks/components/grid-block/table-borders.mutator.ts
300
+ var getCellClx = /* @__PURE__ */ __name((cellIndex, cellCount, colCount) => {
301
+ const isFirstRow = /* @__PURE__ */ __name(() => cellIndex < colCount, "isFirstRow");
302
+ const isFirstColumn = /* @__PURE__ */ __name(() => cellIndex % colCount === 0, "isFirstColumn");
303
+ const isTLCorner = /* @__PURE__ */ __name(() => cellIndex === 0, "isTLCorner");
304
+ const isTRCorner = /* @__PURE__ */ __name(() => cellIndex === colCount - 1, "isTRCorner");
305
+ const isBLCorner = /* @__PURE__ */ __name(() => cellIndex === cellCount - colCount, "isBLCorner");
306
+ const isBRCorner = /* @__PURE__ */ __name(() => cellIndex === cellCount - 1, "isBRCorner");
307
+ let clx = "border-b md:border-r p-4 md:p-8 lg:p-12 ";
308
+ if (isFirstRow()) {
309
+ clx += "border-t ";
310
+ }
311
+ if (isFirstColumn()) {
312
+ clx += "md:border-l ";
313
+ }
314
+ if (isTLCorner()) {
315
+ clx += "border-t md:rounded-tl-lg ";
316
+ } else if (isTRCorner()) {
317
+ clx += "md:rounded-tr-lg ";
318
+ } else if (isBLCorner()) {
319
+ clx += "md:rounded-bl-lg ";
320
+ } else if (isBRCorner()) {
321
+ clx += "md:rounded-br-lg ";
322
+ }
323
+ return clx;
324
+ }, "getCellClx");
325
+ var gapClx = "gap-0 md:gap-0 xl:gap-0";
326
+ var table_borders_mutator_default = {
327
+ getCellClx,
328
+ gapClx
329
+ };
330
+
331
+ // blocks/components/grid-block/mutator-registry.ts
332
+ var map = /* @__PURE__ */ new Map();
333
+ map.set("style-table-borders", table_borders_mutator_default);
334
+ var mutator_registry_default = /* @__PURE__ */ __name((key) => map.get(key), "default");
335
+ var gridClx = /* @__PURE__ */ __name((d, prefix) => typeof d === "number" ? `${prefix ?? ""}grid-cols-${d} ` : `${prefix ?? ""}grid-cols-${d.columns} ${prefix ?? ""}gap-${d.gap} `, "gridClx");
336
+ var GridBlockComponent = /* @__PURE__ */ __name(({
337
+ block,
338
+ className = "",
339
+ agent,
340
+ children
341
+ }) => {
342
+ if (block.blockType !== "grid") {
343
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "grid block required" });
344
+ }
345
+ const { cells, grid, specifiers } = block;
346
+ const specified = /* @__PURE__ */ __name((s) => containsToken(specifiers, s), "specified");
347
+ const mutator = specified("style-table-borders") ? mutator_registry_default("style-table-borders") : void 0;
348
+ let clx = "grid ";
349
+ if (agent === "phone") {
350
+ const d = grid.mobile ? grid.mobile : grid.at.xs ? grid.at.xs : grid.at.sm ?? 1;
351
+ clx += gridClx(d);
352
+ } else {
353
+ let defaultSet = false;
354
+ for (const [key, value] of Object.entries(grid.at)) {
355
+ if (!defaultSet) {
356
+ clx += gridClx(value);
357
+ defaultSet = true;
358
+ } else {
359
+ clx += gridClx(value, `${key}:`);
360
+ }
361
+ }
362
+ }
363
+ let getMutatorCellClx = /* @__PURE__ */ __name((ignore) => "", "getMutatorCellClx");
364
+ if (mutator?.getCellClx) {
365
+ const colCount = typeof grid.at.md === "number" ? grid.at.md : grid.at.md.columns;
366
+ const cellCount = cells?.length;
367
+ if (!colCount || !cellCount) {
368
+ throw new Error("GridBlockComponent: using mutator, but colCount and / or cellCount is invalid!");
369
+ }
370
+ getMutatorCellClx = /* @__PURE__ */ __name((cellIndex) => mutator.getCellClx(cellIndex, cellCount, colCount), "getMutatorCellClx");
371
+ }
372
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("grid gap-2 md:gap-4 xl:gap-6", clx, mutator?.gapClx ?? "", className), children: React4__namespace.default.Children.count(children) > 0 ? children : cells?.map((cell, index) => /* @__PURE__ */ jsxRuntime.jsx(ContentComponent, { blocks: cell, agent, className: getMutatorCellClx(index) }, `cell-${index}`)) });
373
+ }, "GridBlockComponent");
374
+ var grid_block_default = GridBlockComponent;
375
+ var BulletCardsBlockComponent = /* @__PURE__ */ __name(({
376
+ block,
377
+ className = "",
378
+ agent
379
+ }) => {
380
+ if (block.blockType !== "bullet-cards") {
381
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "bullet cards block required" });
382
+ }
383
+ const b = block;
384
+ const specified = /* @__PURE__ */ __name((s) => containsToken(b.specifiers, s), "specified");
385
+ const noBorder = specified("no-card-border") ? "border-0" : "md:border";
386
+ const mobileTextXs = specified("mobile-small-text") ? "text-xs" : "text-sm";
387
+ const borderclx = specified("border-muted-3") ? "md:border-muted-3" : specified("border-muted-1") ? "md:border-muted-1" : "md:border-muted-2";
388
+ return /* @__PURE__ */ jsxRuntime.jsx(grid_block_default, { block: { blockType: "grid", grid: b.grid }, className, agent, children: b.cards.map((card, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(
389
+ "px-0 sm:px-4 py-1 md:py-4 rounded-lg flex flex-row justify-start items-center not-typography text-foreground",
390
+ noBorder,
391
+ borderclx
392
+ ), children: [
393
+ /* @__PURE__ */ jsxRuntime.jsx(inline_icon_default, { icon: card.icon, size: b.iconSize ?? 28, agent, className: "shrink-0 mr-2 md:mr-4 " }),
394
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("m-0 sm:text-base", mobileTextXs), children: card.text })
395
+ ] }, index)) });
396
+ }, "BulletCardsBlockComponent");
397
+ var bullet_cards_block_default = BulletCardsBlockComponent;
398
+ var buttonVariants = classVarianceAuthority.cva(
399
+ 'inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*="size-"])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive',
400
+ {
401
+ variants: {
402
+ variant: {
403
+ default: "bg-primary text-primary-foreground hover:bg-primary/90",
404
+ destructive: "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
405
+ outline: "border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
406
+ secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
407
+ ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
408
+ link: "text-primary underline-offset-4 hover:underline",
409
+ // Keep the additional LibreApps variants for backward compatibility
410
+ primary: "bg-primary text-primary-foreground shadow hover:bg-primary/90",
411
+ linkFG: "text-primary underline-offset-4 hover:underline",
412
+ linkMuted: "text-muted-foreground underline-offset-4 hover:underline hover:text-foreground"
413
+ },
414
+ size: {
415
+ default: "h-9 px-4 py-2 has-[>svg]:px-3",
416
+ sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
417
+ lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
418
+ icon: "size-9",
419
+ "icon-sm": "size-8",
420
+ "icon-lg": "size-10"
421
+ }
422
+ },
423
+ defaultVariants: {
424
+ variant: "default",
425
+ size: "default"
426
+ }
427
+ }
428
+ );
429
+ var Button = React4__namespace.forwardRef(
430
+ ({ className, variant = "default", size = "default", asChild = false, isLoading = false, children, ...props }, ref) => {
431
+ const Comp = asChild ? reactSlot.Slot : "button";
432
+ return /* @__PURE__ */ jsxRuntime.jsxs(
433
+ Comp,
434
+ {
435
+ "data-slot": "button",
436
+ "data-variant": variant,
437
+ "data-size": size,
438
+ className: cn(buttonVariants({ variant, size, className })),
439
+ ref,
440
+ ...props,
441
+ children: [
442
+ isLoading ? /* @__PURE__ */ jsxRuntime.jsx(
443
+ lucideReact.Loader2,
444
+ {
445
+ className: cn("h-4 w-4 animate-spin", size !== "icon" && size !== "icon-sm" && size !== "icon-lg" && "mr-2")
446
+ }
447
+ ) : null,
448
+ isLoading && (size === "icon" || size === "icon-sm" || size === "icon-lg") ? null : children
449
+ ]
450
+ }
451
+ );
452
+ }
453
+ );
454
+ Button.displayName = "Button";
455
+ var DialogVideoController = /* @__PURE__ */ __name(({
456
+ children
457
+ }) => {
458
+ const [open, setOpen] = React4.useState(false);
459
+ const onOpenChange = /* @__PURE__ */ __name((b) => {
460
+ setOpen(b);
461
+ const videos = document.getElementsByTagName("video");
462
+ const videoArray = Array.from(videos);
463
+ videoArray.forEach((v) => {
464
+ if (b) {
465
+ v.pause();
466
+ } else {
467
+ v.play();
468
+ }
469
+ });
470
+ }, "onOpenChange");
471
+ const updatedChildren = React4__namespace.default.Children.map(
472
+ children,
473
+ (child) => React4__namespace.default.cloneElement(
474
+ child,
475
+ { open, onOpenChange }
476
+ )
477
+ );
478
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: updatedChildren });
479
+ }, "DialogVideoController");
480
+ var dialog_video_controller_default = DialogVideoController;
481
+ var ActionButton = /* @__PURE__ */ __name(({
482
+ def,
483
+ className = "",
484
+ ...rest
485
+ }) => {
486
+ if (def.action.type === "modal") {
487
+ const m = def.action.def;
488
+ const Modal = m.Comp;
489
+ return /* @__PURE__ */ jsxRuntime.jsx(dialog_video_controller_default, { children: /* @__PURE__ */ jsxRuntime.jsx(
490
+ Modal,
491
+ {
492
+ title: m.title,
493
+ byline: m.byline,
494
+ buttonText: def.text,
495
+ buttonProps: { ...def.props, ...rest, className: cn(def.props?.className ?? "", className) },
496
+ action: m.action,
497
+ actionEnclosure: m.actionEnclosure,
498
+ ...m.props
499
+ }
500
+ ) });
501
+ }
502
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, {});
503
+ }, "ActionButton");
504
+ var action_button_default = ActionButton;
505
+
506
+ // primitives/icons/index.ts
507
+ var icons_exports = {};
508
+ __export(icons_exports, {
509
+ burger: () => lucideReact.Menu,
510
+ gitHub: () => github_default,
511
+ linkOut: () => lucideReact.ArrowUpRight,
512
+ moon: () => lucideReact.Moon,
513
+ sun: () => lucideReact.SunMedium,
514
+ youtube: () => youtube_logo_default
515
+ });
516
+ var YouTubeLogo = /* @__PURE__ */ __name((props) => /* @__PURE__ */ jsxRuntime.jsx(
517
+ "svg",
518
+ {
519
+ viewBox: "0 0 256 256",
520
+ xmlns: "http://www.w3.org/2000/svg",
521
+ ...props,
522
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
523
+ "g",
524
+ {
525
+ style: {
526
+ stroke: "none",
527
+ strokeWidth: 0,
528
+ strokeDasharray: "none",
529
+ strokeLinecap: "butt",
530
+ strokeLinejoin: "miter",
531
+ strokeMiterlimit: 10,
532
+ fill: "none",
533
+ fillRule: "nonzero",
534
+ opacity: 1
535
+ },
536
+ transform: "translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)",
537
+ children: [
538
+ /* @__PURE__ */ jsxRuntime.jsx(
539
+ "path",
540
+ {
541
+ d: "M 88.119 23.338 c -1.035 -3.872 -4.085 -6.922 -7.957 -7.957 C 73.144 13.5 45 13.5 45 13.5 s -28.144 0 -35.162 1.881 c -3.872 1.035 -6.922 4.085 -7.957 7.957 C 0 30.356 0 45 0 45 s 0 14.644 1.881 21.662 c 1.035 3.872 4.085 6.922 7.957 7.957 C 16.856 76.5 45 76.5 45 76.5 s 28.144 0 35.162 -1.881 c 3.872 -1.035 6.922 -4.085 7.957 -7.957 C 90 59.644 90 45 90 45 S 90 30.356 88.119 23.338 z",
542
+ style: {
543
+ stroke: "none",
544
+ strokeWidth: 1,
545
+ strokeDasharray: "none",
546
+ strokeLinecap: "butt",
547
+ strokeLinejoin: "miter",
548
+ strokeMiterlimit: 10,
549
+ fill: "red",
550
+ fillRule: "nonzero",
551
+ opacity: 1
552
+ },
553
+ transform: " matrix(1 0 0 1 0 0) ",
554
+ strokeLinecap: "round"
555
+ }
556
+ ),
557
+ /* @__PURE__ */ jsxRuntime.jsx(
558
+ "polygon",
559
+ {
560
+ points: "36,58.5 59.38,45 36,31.5 ",
561
+ style: {
562
+ stroke: "none",
563
+ strokeWidth: 1,
564
+ strokeDasharray: "none",
565
+ strokeLinecap: "butt",
566
+ strokeLinejoin: "miter",
567
+ strokeMiterlimit: 10,
568
+ fill: "white",
569
+ fillRule: "nonzero",
570
+ opacity: 1
571
+ },
572
+ transform: "matrix(1 0 0 1 0 0)"
573
+ }
574
+ )
575
+ ]
576
+ }
577
+ )
578
+ }
579
+ ), "YouTubeLogo");
580
+ var youtube_logo_default = YouTubeLogo;
581
+ var GitHub = /* @__PURE__ */ __name((props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: "0 0 438.549 438.549", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
582
+ "path",
583
+ {
584
+ fill: "currentColor",
585
+ d: "M409.132 114.573c-19.608-33.596-46.205-60.194-79.798-79.8-33.598-19.607-70.277-29.408-110.063-29.408-39.781 0-76.472 9.804-110.063 29.408-33.596 19.605-60.192 46.204-79.8 79.8C9.803 148.168 0 184.854 0 224.63c0 47.78 13.94 90.745 41.827 128.906 27.884 38.164 63.906 64.572 108.063 79.227 5.14.954 8.945.283 11.419-1.996 2.475-2.282 3.711-5.14 3.711-8.562 0-.571-.049-5.708-.144-15.417a2549.81 2549.81 0 01-.144-25.406l-6.567 1.136c-4.187.767-9.469 1.092-15.846 1-6.374-.089-12.991-.757-19.842-1.999-6.854-1.231-13.229-4.086-19.13-8.559-5.898-4.473-10.085-10.328-12.56-17.556l-2.855-6.57c-1.903-4.374-4.899-9.233-8.992-14.559-4.093-5.331-8.232-8.945-12.419-10.848l-1.999-1.431c-1.332-.951-2.568-2.098-3.711-3.429-1.142-1.331-1.997-2.663-2.568-3.997-.572-1.335-.098-2.43 1.427-3.289 1.525-.859 4.281-1.276 8.28-1.276l5.708.853c3.807.763 8.516 3.042 14.133 6.851 5.614 3.806 10.229 8.754 13.846 14.842 4.38 7.806 9.657 13.754 15.846 17.847 6.184 4.093 12.419 6.136 18.699 6.136 6.28 0 11.704-.476 16.274-1.423 4.565-.952 8.848-2.383 12.847-4.285 1.713-12.758 6.377-22.559 13.988-29.41-10.848-1.14-20.601-2.857-29.264-5.14-8.658-2.286-17.605-5.996-26.835-11.14-9.235-5.137-16.896-11.516-22.985-19.126-6.09-7.614-11.088-17.61-14.987-29.979-3.901-12.374-5.852-26.648-5.852-42.826 0-23.035 7.52-42.637 22.557-58.817-7.044-17.318-6.379-36.732 1.997-58.24 5.52-1.715 13.706-.428 24.554 3.853 10.85 4.283 18.794 7.952 23.84 10.994 5.046 3.041 9.089 5.618 12.135 7.708 17.705-4.947 35.976-7.421 54.818-7.421s37.117 2.474 54.823 7.421l10.849-6.849c7.419-4.57 16.18-8.758 26.262-12.565 10.088-3.805 17.802-4.853 23.134-3.138 8.562 21.509 9.325 40.922 2.279 58.24 15.036 16.18 22.559 35.787 22.559 58.817 0 16.178-1.958 30.497-5.853 42.966-3.9 12.471-8.941 22.457-15.125 29.979-6.191 7.521-13.901 13.85-23.131 18.986-9.232 5.14-18.182 8.85-26.84 11.136-8.662 2.286-18.415 4.004-29.263 5.146 9.894 8.562 14.842 22.077 14.842 40.539v60.237c0 3.422 1.19 6.279 3.572 8.562 2.379 2.279 6.136 2.95 11.276 1.995 44.163-14.653 80.185-41.062 108.068-79.226 27.88-38.161 41.825-81.126 41.825-128.906-.01-39.771-9.818-76.454-29.414-110.049z"
586
+ }
587
+ ) }), "GitHub");
588
+ var github_default = GitHub;
589
+ var LinkElement = /* @__PURE__ */ __name(({
590
+ def,
591
+ // DO NOT provide a default to any of the props that also appear in def!
592
+ onClick,
593
+ size,
594
+ variant,
595
+ icon,
596
+ iconAfter,
597
+ className = "",
598
+ children
599
+ }) => {
600
+ const {
601
+ href,
602
+ newTab,
603
+ variant: defVariant,
604
+ size: defSize,
605
+ title
606
+ } = def;
607
+ const linkProps = {};
608
+ if (href.startsWith("http") || href.startsWith("mailto")) {
609
+ linkProps.rel = "noreferrer noopener";
610
+ if (newTab ?? true) {
611
+ linkProps.target = "_blank";
612
+ }
613
+ } else if (newTab) {
614
+ linkProps.target = "_blank";
615
+ }
616
+ const toSpread = {
617
+ href,
618
+ ...onClick ? { onClick } : {},
619
+ ...linkProps
620
+ };
621
+ const Contents = /* @__PURE__ */ __name(() => {
622
+ if (React4__namespace.default.Children.count(children) > 0) return children;
623
+ const _icon = icon ? icon : def.icon ? def.icon : void 0;
624
+ const _iconAfter = iconAfter ? iconAfter : def.iconAfter ? def.iconAfter : false;
625
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
626
+ _icon && !_iconAfter && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pr-1", children: _icon }),
627
+ title && /* @__PURE__ */ jsxRuntime.jsx("div", { children: title }),
628
+ _icon && _iconAfter && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pl-1", children: _icon })
629
+ ] });
630
+ }, "Contents");
631
+ return /* @__PURE__ */ jsxRuntime.jsx(
632
+ Link__default.default,
633
+ {
634
+ className: cn(
635
+ buttonVariants({
636
+ variant: variant ? variant : defVariant ? defVariant : "link",
637
+ size: size ? size : defSize || "default"
638
+ }),
639
+ // This is a "label only" LinkDef. cf: footer"
640
+ href.length > 0 || onClick ? "" : "pointer-events-none",
641
+ className
642
+ ),
643
+ ...toSpread,
644
+ children: /* @__PURE__ */ jsxRuntime.jsx(Contents, {})
645
+ }
646
+ );
647
+ }, "LinkElement");
648
+ var link_element_default = LinkElement;
649
+ var CtaBlockComponent = /* @__PURE__ */ __name(({
650
+ block,
651
+ className = "",
652
+ // assigned to each item
653
+ itemClasses = "",
654
+ itemSize,
655
+ // do not provide default. this is an override to the def
656
+ renderLink,
657
+ renderButton,
658
+ agent
659
+ }) => {
660
+ if (block.blockType !== "cta") {
661
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "cta block required" });
662
+ }
663
+ const { elements, specifiers } = block;
664
+ let wrapperClasses = "";
665
+ let itemclx = "";
666
+ if (containsToken(specifiers, "fill")) {
667
+ wrapperClasses += "w-full ";
668
+ itemclx += "grow shrink !min-w-0";
669
+ } else if (containsToken(specifiers, "left")) {
670
+ wrapperClasses += "md:justify-start ";
671
+ } else if (containsToken(specifiers, "right")) {
672
+ wrapperClasses += "md:justify-end ";
673
+ } else {
674
+ wrapperClasses += "md:justify-center ";
675
+ }
676
+ const mobile2Columns = containsToken(specifiers, "mobile-2-columns");
677
+ const fillEvenly = !containsToken(specifiers, "desktop-dont-fill");
678
+ const mobileCenterFirstIfOdd = containsToken(specifiers, "mobile-center-first-if-odd");
679
+ const mobileOddFullWidth = containsToken(specifiers, "mobile-odd-full-width");
680
+ let layoutclx = void 0;
681
+ if (elements.length > 1) {
682
+ let resetMinWidth = false;
683
+ if (mobile2Columns) {
684
+ layoutclx = "grid grid-cols-2 gap-2 self-stretch ";
685
+ resetMinWidth = true;
686
+ }
687
+ if (fillEvenly) {
688
+ layoutclx = layoutclx ?? "grid grid-cols-2 gap-2 self-stretch";
689
+ resetMinWidth = true;
690
+ } else {
691
+ layoutclx = layoutclx ? layoutclx + "md:flex md:flex-row md:justify-center " : "flex flex-row justify-center ";
692
+ }
693
+ itemclx += resetMinWidth ? "!min-w-0 " : "";
694
+ }
695
+ layoutclx = layoutclx ?? "flex flex-col items-stretch gap-2 self-stretch md:flex-row sm:justify-center ";
696
+ const getMobileColSpanClx = /* @__PURE__ */ __name((index, total) => {
697
+ const indexToCenter = total % 2 === 0 ? -1 : mobileCenterFirstIfOdd ? 0 : total - 1;
698
+ const widthclx = mobileOddFullWidth ? "w-full " : "w-3/5 mx-auto ";
699
+ return agent === "phone" && mobile2Columns && index === indexToCenter ? "col-span-2 " + widthclx : "";
700
+ }, "getMobileColSpanClx");
701
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(
702
+ layoutclx,
703
+ wrapperClasses,
704
+ className
705
+ ), children: elements.map((element, index) => {
706
+ const twoColClx = getMobileColSpanClx(index, elements.length);
707
+ if (element.title) {
708
+ const def = element;
709
+ return renderLink ? renderLink(def, index) : /* @__PURE__ */ jsxRuntime.jsx(
710
+ link_element_default,
711
+ {
712
+ def,
713
+ size: itemSize,
714
+ className: cn(itemclx, itemClasses, twoColClx)
715
+ },
716
+ index
717
+ );
718
+ } else {
719
+ const def = element;
720
+ return renderButton ? renderButton(def, index) : /* @__PURE__ */ jsxRuntime.jsx(
721
+ action_button_default,
722
+ {
723
+ def,
724
+ size: itemSize,
725
+ className: cn(itemclx, itemClasses, twoColClx)
726
+ },
727
+ index
728
+ );
729
+ }
730
+ }) });
731
+ }, "CtaBlockComponent");
732
+ var cta_block_default = CtaBlockComponent;
733
+ var ImageBlockComponent = /* @__PURE__ */ __name(({
734
+ block,
735
+ className = "",
736
+ agent,
737
+ constraintTo
738
+ }) => {
739
+ if (block.blockType !== "image") {
740
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "image block required" });
741
+ }
742
+ const {
743
+ src,
744
+ alt,
745
+ dim,
746
+ props,
747
+ sizes,
748
+ fullWidthOnMobile,
749
+ svgFillClass,
750
+ specifiers
751
+ } = block;
752
+ const specified = /* @__PURE__ */ __name((s) => containsToken(specifiers, s), "specified");
753
+ const toSpread = {};
754
+ if (props?.fill === void 0) {
755
+ const resolved = constraintTo ? constrain(dim, constraintTo) : dim;
756
+ toSpread.width = resolved.w;
757
+ toSpread.height = resolved.h;
758
+ }
759
+ let _alt;
760
+ if (alt) {
761
+ _alt = alt;
762
+ } else {
763
+ const tokens = src.split("/");
764
+ _alt = tokens.length > 0 ? tokens[tokens.length] : src;
765
+ }
766
+ const _svgFillClass = svgFillClass ?? "";
767
+ if (agent === "phone") {
768
+ if (specified("mobile-full-width") || fullWidthOnMobile) {
769
+ const toSpread2 = {
770
+ style: {
771
+ width: "100%",
772
+ height: "auto",
773
+ maxWidth: "420px"
774
+ },
775
+ sizes: "100vw"
776
+ };
777
+ toSpread2.width = dim.w;
778
+ toSpread2.height = dim.h;
779
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col items-center w-full", children: /* @__PURE__ */ jsxRuntime.jsx(Image2__default.default, { src, alt: _alt, ...toSpread2, className: cn(_svgFillClass, className) }) });
780
+ } else if (!specified("mobile-no-scale")) {
781
+ if (props?.style?.width === "auto" && typeof props.style.height === "number") {
782
+ props.style.height = props.style.height * 0.75;
783
+ } else if (props?.style?.height === "auto" && typeof props?.style?.width === "number") {
784
+ props.style.width = props.style.width * 0.75;
785
+ } else if (props?.style && !props?.style.width) {
786
+ toSpread.width = dim.w * 0.75;
787
+ toSpread.height = dim.h * 0.75;
788
+ }
789
+ }
790
+ }
791
+ if (sizes) {
792
+ toSpread.sizes = sizes;
793
+ }
794
+ const right = containsToken(specifiers, "right");
795
+ const center = containsToken(specifiers, "center");
796
+ const alignSelfClx = right ? "self-end" : center ? "self-center" : "self-start";
797
+ return props?.fill ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative w-full h-full", children: /* @__PURE__ */ jsxRuntime.jsx(Image2__default.default, { src, alt: _alt, ...toSpread, ...props, className: cn(_svgFillClass, "max-w-[70vw] mx-auto", className) }) }) : /* @__PURE__ */ jsxRuntime.jsx(Image2__default.default, { src, alt: _alt, ...toSpread, ...props, className: cn(alignSelfClx, _svgFillClass, "max-w-[70vw] mx-auto", className) });
798
+ }, "ImageBlockComponent");
799
+ var image_block_default = ImageBlockComponent;
800
+ var VideoBlockComponent = /* @__PURE__ */ __name(({
801
+ block,
802
+ className = "",
803
+ agent,
804
+ usePoster = false,
805
+ size = "md",
806
+ constrainTo
807
+ }) => {
808
+ const [_dim, setDim] = React4.useState(void 0);
809
+ const onResize = /* @__PURE__ */ __name(() => {
810
+ setDim({
811
+ w: window.innerWidth,
812
+ h: window.innerHeight
813
+ });
814
+ }, "onResize");
815
+ const windowDefined = typeof window !== "undefined";
816
+ React4.useEffect(() => {
817
+ if (window && agent === "desktop") {
818
+ window.addEventListener("resize", onResize);
819
+ return () => window.removeEventListener("resize", onResize);
820
+ }
821
+ }, [windowDefined]);
822
+ React4.useLayoutEffect(() => {
823
+ onResize();
824
+ }, []);
825
+ if (block.blockType !== "video") {
826
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "video block required" });
827
+ }
828
+ const b = block;
829
+ const ar = b.dim.md.w / b.dim.md.h;
830
+ if (agent === "phone") {
831
+ if (b.sizing?.mobile?.vw) {
832
+ if (!_dim) {
833
+ const width = `${b.sizing.mobile.vw}vw`;
834
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "dummy-div", style: {
835
+ maxWidth: "100%",
836
+ maxHeight: "100%",
837
+ width,
838
+ height: `calc(${width}/${ar})`,
839
+ backgroundImage: `url(${b.poster})`,
840
+ backgroundSize: "contain",
841
+ backgroundRepeat: "no-repeat"
842
+ } });
843
+ } else {
844
+ const width = b.sizing.mobile.vw / 100 * _dim.w;
845
+ const dim2 = {
846
+ h: width / ar,
847
+ w: width
848
+ };
849
+ return /* @__PURE__ */ jsxRuntime.jsx(
850
+ video_player_default,
851
+ {
852
+ className: cn("mx-auto", className),
853
+ sources: b.sources,
854
+ width: dim2.w,
855
+ height: dim2.h,
856
+ ...b.videoProps
857
+ }
858
+ );
859
+ }
860
+ }
861
+ } else if (b.sizing?.vh) {
862
+ if (!_dim) {
863
+ const height = `${b.sizing.vh}vh`;
864
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "dummy-div", style: {
865
+ maxWidth: "100%",
866
+ maxHeight: "100%",
867
+ height,
868
+ width: `calc(${height}*${ar})`,
869
+ backgroundImage: `url(${b.poster})`,
870
+ backgroundSize: "contain",
871
+ backgroundRepeat: "no-repeat"
872
+ } });
873
+ } else {
874
+ const height = b.sizing.vh / 100 * _dim.h;
875
+ const dim2 = {
876
+ h: height,
877
+ w: height * ar
878
+ };
879
+ return /* @__PURE__ */ jsxRuntime.jsx(
880
+ video_player_default,
881
+ {
882
+ className: cn("mx-auto", className),
883
+ sources: b.sources,
884
+ width: dim2.w,
885
+ height: dim2.h,
886
+ ...b.videoProps
887
+ }
888
+ );
889
+ }
890
+ }
891
+ const videoDims = b.dim;
892
+ const dim = size && size in videoDims ? videoDims[size] : videoDims.md;
893
+ const conDim = constrainTo ? constrain(dim, constrainTo) : dim;
894
+ return usePoster ? /* @__PURE__ */ jsxRuntime.jsx(Image2__default.default, { src: b.poster, alt: "image", width: conDim.w, height: conDim.h, className }) : /* @__PURE__ */ jsxRuntime.jsx(
895
+ video_player_default,
896
+ {
897
+ className: cn("mx-auto", className),
898
+ sources: b.sources,
899
+ width: conDim.w,
900
+ height: conDim.h,
901
+ ...b.videoProps
902
+ }
903
+ );
904
+ }, "VideoBlockComponent");
905
+ var video_block_default = VideoBlockComponent;
906
+
907
+ // blocks/components/card-block/util.ts
908
+ var getTypographySize = /* @__PURE__ */ __name((s) => getSpecifierData(
909
+ s,
910
+ (s2) => getPrimaryStartingWith(s2, "typography"),
911
+ (s2) => {
912
+ const subTokenArray = s2.split("-");
913
+ return subTokenArray[subTokenArray.length - 1];
914
+ },
915
+ "responsive"
916
+ ), "getTypographySize");
917
+ var ArrowLinkElement = /* @__PURE__ */ __name(({
918
+ def
919
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
920
+ link_element_default,
921
+ {
922
+ def,
923
+ className: "justify-between",
924
+ variant: "link",
925
+ icon: /* @__PURE__ */ jsxRuntime.jsx(icons_exports.linkOut, { className: "w-[18px] h-[18px]" }),
926
+ iconAfter: true
927
+ }
928
+ ), "ArrowLinkElement");
929
+ var link_out_button_default = ArrowLinkElement;
930
+ var CardBlockComponent = /* @__PURE__ */ __name(({
931
+ block,
932
+ className = "",
933
+ contentClassName = ""
934
+ }) => {
935
+ if (block.blockType !== "card") {
936
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "card block required" });
937
+ }
938
+ const card = block;
939
+ const has = /* @__PURE__ */ __name((s) => card.specifiers?.includes(s), "has");
940
+ const ghost = has("ghost");
941
+ const contentclx = (has("content-left") ? "items-start " : " items-center ") + (has("content-top") ? "!justify-start" : "") + contentClassName;
942
+ const disabledBorder = has("appear-disabled") ? " border-muted-4" : " border-muted-3";
943
+ const outerBorder = has("no-outer-border") || ghost ? " border-0" : "";
944
+ const innerBorder = ghost ? " border-0" : "";
945
+ const paddingclx = ghost ? " px-0 py-0" : " px-6 py-3";
946
+ const mainGap = ghost ? " gap-2" : "";
947
+ const disabledText = has("appear-disabled") ? " text-muted-2" : "";
948
+ const disabledTypoText = has("appear-disabled") ? " typography-p:text-muted-2" : "";
949
+ const bgclx = has("bg-card") ? " bg-level-1" : "";
950
+ const titleclx = (has("heading-style-title") ? " font-heading text-base leading-tight" : "") + (ghost ? " text-left md:text-xl" : "");
951
+ const typoSize = card.specifiers ? getTypographySize(card.specifiers) : "responsive";
952
+ const typoclx = typoSize === "sm" ? "typography-sm typography-p:text-sm " : typoSize === "lg" ? "typography-lg " : "";
953
+ const contentBefore = has("content-before");
954
+ const iconInline = has("icon-inline");
955
+ const contentOnHover = has("reveal-content-on-hover");
956
+ const Header2 = /* @__PURE__ */ __name(({
957
+ inContent = false,
958
+ className: className2 = ""
959
+ }) => card.title || card.byline || card.icon ? /* @__PURE__ */ jsxRuntime.jsxs(CardHeader, { className: "not-typography text-accent" + disabledText + paddingclx + innerBorder + className2, children: [
960
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: iconInline || inContent ? "flex flex-row justify-start items-end my-3" : "", children: [
961
+ card.icon && !card.iconAfter && /* @__PURE__ */ jsxRuntime.jsx("div", { className: iconInline ? "mr-1" : "mb-2", children: card.icon }),
962
+ card.title && /* @__PURE__ */ jsxRuntime.jsx(CardTitle, { className: "text-center text-lg font-medium" + titleclx + (iconInline ? " md:text-xl/none" : ""), children: card.title }),
963
+ card.icon && card.iconAfter && /* @__PURE__ */ jsxRuntime.jsx("div", { className: iconInline ? "ml-1" : "my-1", children: card.icon })
964
+ ] }),
965
+ card.byline && /* @__PURE__ */ jsxRuntime.jsx(CardDescription, { children: card.byline })
966
+ ] }) : null, "Header");
967
+ const MediaAndContent = /* @__PURE__ */ __name(({
968
+ className: className2 = ""
969
+ }) => has("media-left") ? (
970
+ // media left layout
971
+ /* @__PURE__ */ jsxRuntime.jsxs(CardContent, { className: "flex flex-row justify-start items-stretch p-0 grow " + disabledBorder + bgclx + contentclx + className2, children: [
972
+ card.media && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "box-content grow-0 not-typography" + paddingclx, style: {
973
+ // If this layout has been specified, assume media is video, and that the 'sm' dim exists.
974
+ width: card.media.dim.sm.w
975
+ }, children: /* @__PURE__ */ jsxRuntime.jsx(
976
+ video_block_default,
977
+ {
978
+ block: card.media,
979
+ usePoster: has("video-use-poster"),
980
+ size: "sm",
981
+ className: has("appear-disabled") ? "opacity-[0.6]" : ""
982
+ }
983
+ ) }),
984
+ card.content && /* @__PURE__ */ jsxRuntime.jsx(ApplyTypography, { className: "grow border-l flex flex-col justify-center " + disabledTypoText + paddingclx + disabledBorder + contentclx, size: typoSize, children: typeof card.content === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { children: card.content }) : card.content })
985
+ ] })
986
+ ) : (
987
+ // default layout
988
+ /* @__PURE__ */ jsxRuntime.jsxs(CardContent, { className: "grow typography flex flex-col justify-center " + typoclx + disabledTypoText + bgclx + paddingclx + contentclx + (has("full-width") ? " p-0 " : " ") + className2, children: [
989
+ contentOnHover && /* @__PURE__ */ jsxRuntime.jsx(Header2, { inContent: true }),
990
+ card.content && contentBefore && (typeof card.content === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { children: card.content }) : card.content),
991
+ card.media && (card.media.blockType === "image" ? /* @__PURE__ */ jsxRuntime.jsx(image_block_default, { block: card.media }) : /* @__PURE__ */ jsxRuntime.jsx(video_block_default, { block: card.media })),
992
+ card.content && !contentBefore && (typeof card.content === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { children: card.content }) : card.content)
993
+ ] })
994
+ ), "MediaAndContent");
995
+ const Footer = /* @__PURE__ */ __name(() => !card.cta ? null : has("links-w-arrow") ? (
996
+ // links w arrow
997
+ /* @__PURE__ */ jsxRuntime.jsx(CardFooter, { className: "typography typography-a:text-muted-2 typography-a:hover:text-muted-1 typography-a:text-xs typography-a:no-underline typography-a:hover:underline flex flex-col justify-start items-stretch " + paddingclx, children: /* @__PURE__ */ jsxRuntime.jsx(
998
+ cta_block_default,
999
+ {
1000
+ block: card.cta,
1001
+ renderLink: (def, key) => /* @__PURE__ */ jsxRuntime.jsx(link_out_button_default, { def }, key)
1002
+ }
1003
+ ) })
1004
+ ) : (
1005
+ // default
1006
+ /* @__PURE__ */ jsxRuntime.jsx(CardFooter, { className: "grid grid-cols-1 gap-2 md:flex md:flex-row md:justify-center " + paddingclx, children: /* @__PURE__ */ jsxRuntime.jsx(cta_block_default, { block: card.cta }) })
1007
+ ), "Footer");
1008
+ return /* @__PURE__ */ jsxRuntime.jsxs(Card, { className: cn(
1009
+ "flex flex-col self-stretch " + (contentOnHover ? "group relative" : "") + disabledBorder + outerBorder + bgclx + mainGap,
1010
+ className
1011
+ ), children: [
1012
+ /* @__PURE__ */ jsxRuntime.jsx(Header2, { className: contentOnHover ? " absolute top-[0px] left-[0px] w-full hidden " : "" }),
1013
+ /* @__PURE__ */ jsxRuntime.jsx(MediaAndContent, { className: contentOnHover ? " bg-gradient-to-t from-secondary to-65% items-start justify-start rounded-lg p-4 transition-opacity duration-500 ease-out opacity-100 " : "" }),
1014
+ /* @__PURE__ */ jsxRuntime.jsx(Footer, {})
1015
+ ] });
1016
+ }, "CardBlockComponent");
1017
+ var card_block_default = CardBlockComponent;
1018
+ var VariantContentLeft = /* @__PURE__ */ __name(({
1019
+ block,
1020
+ agent,
1021
+ className,
1022
+ headingclx,
1023
+ contentclx,
1024
+ footerclx
1025
+ }) => {
1026
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1027
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2", children: [
1028
+ block.topContent && /* @__PURE__ */ jsxRuntime.jsx(ContentComponent, { blocks: block.topContent, agent, className: "self-center ml-6 mt-6" }),
1029
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", children: [
1030
+ block.heading && /* @__PURE__ */ jsxRuntime.jsx(CardHeader, { className: cn("typography-img:m-0", headingclx), children: /* @__PURE__ */ jsxRuntime.jsx(enh_heading_block_default, { block: block.heading, className: "text-accent", agent }) }),
1031
+ block.content && /* @__PURE__ */ jsxRuntime.jsx(CardContent, { className: cn("typography flex flex-col justify-start", contentclx, className), children: /* @__PURE__ */ jsxRuntime.jsx(ContentComponent, { blocks: block.content, agent }) })
1032
+ ] })
1033
+ ] }),
1034
+ block.cta && /* @__PURE__ */ jsxRuntime.jsx(CardFooter, { className: cn("grid grid-cols-1 gap-2 md:flex md:flex-row md:justify-center mx-auto", footerclx), children: /* @__PURE__ */ jsxRuntime.jsx(cta_block_default, { block: block.cta, agent }) })
1035
+ ] });
1036
+ }, "VariantContentLeft");
1037
+ var variant_content_left_default = VariantContentLeft;
1038
+ var _getClx = /* @__PURE__ */ __name((specifier, section) => {
1039
+ let result = "";
1040
+ if (specifier === "big-padding") {
1041
+ switch (section) {
1042
+ // defaults: p-4 lg:p-6 xl:p-8
1043
+ case "header":
1044
+ {
1045
+ result = "md:p-8 lg:p-12 xl:p-16";
1046
+ }
1047
+ break;
1048
+ }
1049
+ }
1050
+ if (specifier === "big-padding-content") {
1051
+ switch (section) {
1052
+ case "content":
1053
+ {
1054
+ result = "md:p-8 lg:p-12 xl:p-16";
1055
+ }
1056
+ break;
1057
+ }
1058
+ } else if (specifier === "no-inner-borders") {
1059
+ switch (section) {
1060
+ case "header":
1061
+ {
1062
+ result = "border-none";
1063
+ }
1064
+ break;
1065
+ case "footer":
1066
+ {
1067
+ result = "border-t-0";
1068
+ }
1069
+ break;
1070
+ }
1071
+ }
1072
+ return result;
1073
+ }, "_getClx");
1074
+ var CarteBlancheBlockComponent = /* @__PURE__ */ __name(({
1075
+ block,
1076
+ className = "",
1077
+ agent
1078
+ }) => {
1079
+ if (block.blockType !== "carte-blanche") {
1080
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "carte blanche block required" });
1081
+ }
1082
+ const b = block;
1083
+ const specified = /* @__PURE__ */ __name((s) => containsToken(b.specifiers, s), "specified");
1084
+ const getClx = /* @__PURE__ */ __name((specifier, section) => specified(specifier) ? _getClx(specifier, section) : "", "getClx");
1085
+ const headingclx = [
1086
+ getClx("big-padding", "header"),
1087
+ getClx("no-inner-borders", "header")
1088
+ ].join(" ");
1089
+ const contentclx = [
1090
+ getClx("big-padding-content", "content")
1091
+ ].join(" ");
1092
+ const footerclx = [
1093
+ getClx("no-inner-borders", "footer")
1094
+ ].join(" ");
1095
+ const noOuterBorders = specified("no-outer-borders");
1096
+ const contentLeft = specified("variant-content-left");
1097
+ const mobileContentLeft = specified("variant-mobile-content-left");
1098
+ return /* @__PURE__ */ jsxRuntime.jsx(Card, { className: cn("flex flex-col", className, noOuterBorders ? "border-none" : ""), children: contentLeft || mobileContentLeft && agent === "phone" ? /* @__PURE__ */ jsxRuntime.jsx(variant_content_left_default, { block: b, agent, className, headingclx, contentclx, footerclx }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1099
+ (b.heading || b.topContent) && /* @__PURE__ */ jsxRuntime.jsxs(CardHeader, { className: cn("typography-img:m-0", headingclx), children: [
1100
+ b.topContent && /* @__PURE__ */ jsxRuntime.jsx(ContentComponent, { blocks: b.topContent, agent, className: "" }),
1101
+ b.heading && /* @__PURE__ */ jsxRuntime.jsx(enh_heading_block_default, { block: b.heading, className: "text-accent", agent })
1102
+ ] }),
1103
+ b.content && /* @__PURE__ */ jsxRuntime.jsx(CardContent, { className: cn("typography flex flex-col justify-center", contentclx, className), children: /* @__PURE__ */ jsxRuntime.jsx(ContentComponent, { blocks: b.content, agent }) }),
1104
+ b.cta && /* @__PURE__ */ jsxRuntime.jsx(CardFooter, { className: cn("grid grid-cols-1 gap-2 md:flex md:flex-row md:justify-center", footerclx), children: /* @__PURE__ */ jsxRuntime.jsx(cta_block_default, { block: b.cta, agent }) })
1105
+ ] }) });
1106
+ }, "CarteBlancheBlockComponent");
1107
+ var carte_blanche_block_default = CarteBlancheBlockComponent;
1108
+ var DEFAULTS = {
1109
+ preheading: {
1110
+ tag: "h4",
1111
+ mb: 2
1112
+ },
1113
+ heading: {
1114
+ tag: "h1",
1115
+ mb: 2
1116
+ },
1117
+ byline: {
1118
+ tag: "h6"
1119
+ }
1120
+ };
1121
+ var tagFromLevel = /* @__PURE__ */ __name((level) => {
1122
+ switch (level) {
1123
+ case 1: {
1124
+ return "h1";
1125
+ }
1126
+ case 2: {
1127
+ return "h2";
1128
+ }
1129
+ case 3: {
1130
+ return "h3";
1131
+ }
1132
+ case 4: {
1133
+ return "h4";
1134
+ }
1135
+ case 5: {
1136
+ return "h5";
1137
+ }
1138
+ case 6: {
1139
+ return "h6";
1140
+ }
1141
+ }
1142
+ return "p";
1143
+ }, "tagFromLevel");
1144
+ var Element = /* @__PURE__ */ __name(({
1145
+ asTag: Tag,
1146
+ text,
1147
+ icon,
1148
+ iconLeft = true,
1149
+ className: elClassName = ""
1150
+ }) => /* @__PURE__ */ jsxRuntime.jsx(Tag, { className: elClassName, children: text }), "Element");
1151
+ var getPositionClx = /* @__PURE__ */ __name((specified, agent) => {
1152
+ const mobileHeadingCentered = specified("mobile-heading-centered");
1153
+ const mobileHeadingLeft = specified("mobile-heading-left");
1154
+ const headingCentered = specified("center");
1155
+ const headingRight = specified("right");
1156
+ const bylineCentered = specified("byline-center");
1157
+ const bylineRight = specified("byline-right");
1158
+ const mobileBylineLeft = specified("mobile-byline-left");
1159
+ let headerclx = "";
1160
+ let bylineclx = bylineCentered ? "self-center !text-center" : bylineRight ? "self-end !text-right" : "self-start !text-left";
1161
+ if (agent === "phone") {
1162
+ if (mobileHeadingLeft) {
1163
+ headerclx = "self-start text-left";
1164
+ } else {
1165
+ headerclx = mobileHeadingCentered || headingCentered ? "self-center text-center" : headingRight ? "self-end text-right" : "self-start text-left";
1166
+ }
1167
+ if (mobileBylineLeft) {
1168
+ bylineclx = "self-start !text-left";
1169
+ }
1170
+ } else {
1171
+ const largerclx = headingCentered ? "self-center text-center" : headingRight ? "self-end text-right" : "self-start text-left";
1172
+ if (mobileHeadingCentered) {
1173
+ headerclx = "self-center text-center md:" + largerclx.split(" ").join(" md:");
1174
+ } else {
1175
+ headerclx = largerclx;
1176
+ }
1177
+ }
1178
+ return {
1179
+ preheading: headerclx,
1180
+ heading: headerclx,
1181
+ byline: bylineclx
1182
+ };
1183
+ }, "getPositionClx");
1184
+ var EnhHeadingBlockComponent = /* @__PURE__ */ __name(({
1185
+ block,
1186
+ className = "",
1187
+ agent,
1188
+ applyTypography = true,
1189
+ extraSpecifiers = ""
1190
+ }) => {
1191
+ if (block.blockType !== "enh-heading") {
1192
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "enhance heading block required" });
1193
+ }
1194
+ const b = block;
1195
+ const specified = /* @__PURE__ */ __name((s) => containsToken(b.specifiers + extraSpecifiers, s), "specified");
1196
+ const preheadingHeadingFont = specified("preheading-heading-font");
1197
+ const phFontClx = preheadingHeadingFont ? "font-heading" : "";
1198
+ const alignMiddleClx = specified("align-middle") ? "my-auto" : "";
1199
+ const positionclx = getPositionClx(specified, agent);
1200
+ const Inner = /* @__PURE__ */ __name(() => {
1201
+ const toRender = [
1202
+ {
1203
+ tag: b.preheading ? b.preheading.level !== void 0 ? tagFromLevel(b.preheading.level) : DEFAULTS.preheading.tag : void 0,
1204
+ clx: b.preheading ? (b.preheading.mb !== void 0 ? `mb-${b.preheading.mb}` : `mb-${DEFAULTS.preheading.mb}`) + " " + positionclx.preheading + " " + phFontClx : positionclx.preheading + " " + phFontClx,
1205
+ text: b.preheading ? b.preheading.text : void 0
1206
+ },
1207
+ {
1208
+ tag: b.heading.level !== void 0 ? tagFromLevel(b.heading.level) : DEFAULTS.heading.tag,
1209
+ clx: (b.heading.mb !== void 0 ? `mb-${b.heading.mb}` : `mb-${DEFAULTS.heading.mb}`) + " " + positionclx.heading,
1210
+ text: b.heading.text
1211
+ },
1212
+ {
1213
+ tag: b.byline ? b.byline.level !== void 0 ? tagFromLevel(b.byline.level) : DEFAULTS.byline.tag : void 0,
1214
+ clx: positionclx.byline,
1215
+ text: b.byline ? b.byline.text : void 0
1216
+ }
1217
+ ];
1218
+ let iconRendered = false;
1219
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: toRender.map(({ tag, clx, text }, index) => {
1220
+ if (!tag) return null;
1221
+ if (b.icon && !iconRendered) {
1222
+ iconRendered = true;
1223
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex flex-row items-center gap-2 sm:gap-4", clx), children: [
1224
+ /* @__PURE__ */ jsxRuntime.jsx(inline_icon_default, { icon: b.icon, size: b.iconSize ?? 32, agent }),
1225
+ /* @__PURE__ */ jsxRuntime.jsx(Element, { asTag: tag, text })
1226
+ ] }, `div-${index}`);
1227
+ }
1228
+ return /* @__PURE__ */ jsxRuntime.jsx(Element, { asTag: tag, text, className: clx }, `el-${index}`);
1229
+ }) });
1230
+ }, "Inner");
1231
+ return applyTypography ? /* @__PURE__ */ jsxRuntime.jsx(ApplyTypography, { className: cn("flex flex-col w-full !gap-0", className, alignMiddleClx), children: /* @__PURE__ */ jsxRuntime.jsx(Inner, {}) }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex flex-col w-full gap-0", className, alignMiddleClx), children: /* @__PURE__ */ jsxRuntime.jsx(Inner, {}) });
1232
+ }, "EnhHeadingBlockComponent");
1233
+ var enh_heading_block_default = EnhHeadingBlockComponent;
1234
+ var HeadingBlockComponent = /* @__PURE__ */ __name(({
1235
+ block,
1236
+ className = ""
1237
+ }) => {
1238
+ if (block.blockType !== "heading") {
1239
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "heading block required" });
1240
+ }
1241
+ const heading = block;
1242
+ let Tag;
1243
+ let BylineTag = void 0;
1244
+ switch (heading.bylineLevel) {
1245
+ case 0:
1246
+ {
1247
+ BylineTag = "p";
1248
+ }
1249
+ break;
1250
+ case 1:
1251
+ {
1252
+ BylineTag = "h1";
1253
+ }
1254
+ break;
1255
+ case 2:
1256
+ {
1257
+ BylineTag = "h2";
1258
+ }
1259
+ break;
1260
+ case 3:
1261
+ {
1262
+ BylineTag = "h3";
1263
+ }
1264
+ break;
1265
+ case 4:
1266
+ {
1267
+ BylineTag = "h4";
1268
+ }
1269
+ break;
1270
+ case 5:
1271
+ {
1272
+ BylineTag = "h5";
1273
+ }
1274
+ break;
1275
+ case 6:
1276
+ {
1277
+ BylineTag = "h6";
1278
+ }
1279
+ break;
1280
+ }
1281
+ switch (heading.level) {
1282
+ case 0:
1283
+ {
1284
+ Tag = "p";
1285
+ BylineTag = BylineTag ?? "p";
1286
+ }
1287
+ break;
1288
+ case 1:
1289
+ {
1290
+ Tag = "h1";
1291
+ BylineTag = BylineTag ?? "h3";
1292
+ }
1293
+ break;
1294
+ case 2:
1295
+ {
1296
+ Tag = "h2";
1297
+ BylineTag = BylineTag ?? "h4";
1298
+ }
1299
+ break;
1300
+ // 3 is default
1301
+ case 4:
1302
+ {
1303
+ Tag = "h4";
1304
+ BylineTag = BylineTag ?? "h6";
1305
+ }
1306
+ break;
1307
+ case 5:
1308
+ {
1309
+ Tag = "h5";
1310
+ BylineTag = BylineTag ?? "p";
1311
+ }
1312
+ break;
1313
+ case 6:
1314
+ {
1315
+ Tag = "h6";
1316
+ BylineTag = BylineTag ?? "p";
1317
+ }
1318
+ break;
1319
+ default: {
1320
+ Tag = "h3";
1321
+ BylineTag = BylineTag ?? "h5";
1322
+ }
1323
+ }
1324
+ return /* @__PURE__ */ jsxRuntime.jsxs(ApplyTypography, { className, children: [
1325
+ /* @__PURE__ */ jsxRuntime.jsx(Tag, { children: heading.heading }),
1326
+ heading.spaceBetween && /* @__PURE__ */ jsxRuntime.jsx("div", { className: `w-[1px] h-${heading.spaceBetween}` }),
1327
+ heading.byline && /* @__PURE__ */ jsxRuntime.jsx(BylineTag, { children: heading.byline }),
1328
+ heading.spaceAfter && /* @__PURE__ */ jsxRuntime.jsx("div", { className: `w-[1px] h-${heading.spaceAfter}` })
1329
+ ] });
1330
+ }, "HeadingBlockComponent");
1331
+ var heading_block_default = HeadingBlockComponent;
1332
+
1333
+ // tailwind/screens.tailwind.js
1334
+ var screens_tailwind_default = {
1335
+ xs: "0px",
1336
+ // <-- phone
1337
+ sm: "480px",
1338
+ // phone --><-- sm tablets / narrow
1339
+ md: "768px",
1340
+ // sm tablets / narrow -->
1341
+ lg: "1024px",
1342
+ xl: "1280px",
1343
+ "2xl": "1500px"
1344
+ };
1345
+
1346
+ // types/breakpoints.ts
1347
+ var Breakpoints = Object.keys(screens_tailwind_default);
1348
+ var getLayoutInfo = /* @__PURE__ */ __name((s) => {
1349
+ const tokenArray = s.split(" ");
1350
+ const layoutToken = tokenArray.find((tok) => tok.startsWith("layout-"));
1351
+ if (layoutToken) {
1352
+ const subtokens = layoutToken.split("-");
1353
+ const layout = subtokens[1];
1354
+ let spec = {};
1355
+ switch (layout) {
1356
+ case "grid":
1357
+ {
1358
+ const columns = parseInt(subtokens[2], 10);
1359
+ const starting = subtokens[4];
1360
+ if (Number.isNaN(columns) || columns < 2 || columns > 6 || !Breakpoints.includes(starting)) {
1361
+ return void 0;
1362
+ }
1363
+ spec = {
1364
+ columns,
1365
+ starting
1366
+ };
1367
+ }
1368
+ break;
1369
+ }
1370
+ return {
1371
+ layout,
1372
+ spec
1373
+ };
1374
+ }
1375
+ return void 0;
1376
+ }, "getLayoutInfo");
1377
+ var GroupBlockComponent = /* @__PURE__ */ __name(({
1378
+ block,
1379
+ className = ""
1380
+ }) => {
1381
+ if (block.blockType !== "group") {
1382
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "group block required" });
1383
+ }
1384
+ const group = block;
1385
+ if (group.specifiers?.includes("layout")) {
1386
+ const layoutSpec = getLayoutInfo(group.specifiers);
1387
+ if (!layoutSpec) {
1388
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "invalid or missing layout specifier in group block!" });
1389
+ }
1390
+ if (layoutSpec.layout === "grid") {
1391
+ const { elements } = group;
1392
+ const { spec: { starting, columns } } = layoutSpec;
1393
+ const clazzName = cn(
1394
+ "grid xs:grid-cols-1 gap-2 sm:gap-3",
1395
+ `${starting}:grid-cols-${columns} `,
1396
+ className
1397
+ );
1398
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clazzName, children: /* @__PURE__ */ jsxRuntime.jsx(ContentComponent, { blocks: elements }) });
1399
+ }
1400
+ }
1401
+ return null;
1402
+ }, "GroupBlockComponent");
1403
+ var group_block_default = GroupBlockComponent;
1404
+ var TAGS = [
1405
+ "div",
1406
+ "h1",
1407
+ "h2",
1408
+ "h3",
1409
+ "h4",
1410
+ "h5",
1411
+ "h6"
1412
+ ];
1413
+ var SpaceBlockComponent = /* @__PURE__ */ __name(({
1414
+ block,
1415
+ className = ""
1416
+ }) => {
1417
+ if (block && block.blockType !== "space") {
1418
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "space block required" });
1419
+ }
1420
+ const b = block;
1421
+ if (!b.level) {
1422
+ if (typeof b.sizes == "number") {
1423
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(`invisible w-[1px] h-${b.sizes}`, className) });
1424
+ }
1425
+ const _sizes = {};
1426
+ ldMerge(_sizes, SPACE_DEFAULTS, b.sizes);
1427
+ let clx = "";
1428
+ for (const [key, value] of Object.entries(_sizes)) {
1429
+ clx += `${key}:h-${value} `;
1430
+ }
1431
+ if (b.test) {
1432
+ console.log(clx);
1433
+ }
1434
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("invisible w-[1px] " + clx, className) });
1435
+ }
1436
+ const Tag = TAGS[b.level];
1437
+ const heightClx = b.level === 0 ? "h-4" : "";
1438
+ return /* @__PURE__ */ jsxRuntime.jsx(ApplyTypography, { className, children: /* @__PURE__ */ jsxRuntime.jsx(Tag, { className: "invisible m-0 " + heightClx, children: "\xA0" }) });
1439
+ }, "SpaceBlockComponent");
1440
+ var space_block_default = SpaceBlockComponent;
1441
+ var map2 = /* @__PURE__ */ new Map();
1442
+ map2.set("accordian", accordian_block_default);
1443
+ map2.set("bullet-cards", bullet_cards_block_default);
1444
+ map2.set("card", card_block_default);
1445
+ map2.set("carte-blanche", carte_blanche_block_default);
1446
+ map2.set("cta", cta_block_default);
1447
+ map2.set("heading", heading_block_default);
1448
+ map2.set("enh-heading", enh_heading_block_default);
1449
+ map2.set("space", space_block_default);
1450
+ map2.set("image", image_block_default);
1451
+ map2.set("video", video_block_default);
1452
+ map2.set("group", group_block_default);
1453
+ map2.set("grid", grid_block_default);
1454
+ var registerBlockType = /* @__PURE__ */ __name((key, type) => {
1455
+ map2.set(key, type);
1456
+ }, "registerBlockType");
1457
+ var renderBlock = /* @__PURE__ */ __name((block, className, agent, keyStr) => {
1458
+ if (block.blockType === "element") {
1459
+ return block.element;
1460
+ }
1461
+ const CompType = map2.get(block.blockType);
1462
+ if (!CompType) return null;
1463
+ return /* @__PURE__ */ jsxRuntime.jsx(CompType, { block, className, agent }, keyStr ?? "");
1464
+ }, "renderBlock");
1465
+ var ContentComponent = /* @__PURE__ */ __name(({
1466
+ blocks,
1467
+ className = "",
1468
+ agent
1469
+ }) => {
1470
+ if (!blocks) return null;
1471
+ if (Array.isArray(blocks)) {
1472
+ return blocks.map((block, index) => renderBlock(block, className, agent, `content-block-${block.blockType}-${index}`));
1473
+ }
1474
+ return renderBlock(blocks, className, agent);
1475
+ }, "ContentComponent");
1476
+ var Poster = /* @__PURE__ */ __name(({
1477
+ children,
1478
+ banner,
1479
+ className = ""
1480
+ }) => banner ? /* @__PURE__ */ jsxRuntime.jsx(
1481
+ "div",
1482
+ {
1483
+ className: cn("relative", className),
1484
+ style: {
1485
+ height: "100%",
1486
+ width: "100%",
1487
+ backgroundImage: `url(${typeof banner === "string" ? banner : banner.poster})`,
1488
+ backgroundSize: "cover",
1489
+ backgroundRepeat: "no-repeat"
1490
+ },
1491
+ children
1492
+ }
1493
+ ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("bg-transparent h-full w-full relative", className), children }), "Poster");
1494
+ var poster_background_default = Poster;
1495
+ var ContentColumn = /* @__PURE__ */ __name(({
1496
+ blocks,
1497
+ specifiers,
1498
+ agent,
1499
+ className = ""
1500
+ }) => {
1501
+ const specified = /* @__PURE__ */ __name((s) => containsToken(specifiers, s), "specified");
1502
+ let modifiers = "";
1503
+ if (agent !== "phone") {
1504
+ if (specified("right")) {
1505
+ modifiers += "items-end ";
1506
+ } else if (specified("center")) {
1507
+ modifiers += "items-center ";
1508
+ } else {
1509
+ modifiers += "items-start ";
1510
+ }
1511
+ } else {
1512
+ modifiers += "items-start ";
1513
+ }
1514
+ if (agent !== "phone") {
1515
+ if (specified("bottom")) {
1516
+ modifiers += "justify-end ";
1517
+ } else if (specified("vert-center")) {
1518
+ modifiers += "justify-center ";
1519
+ } else {
1520
+ modifiers += "justify-start ";
1521
+ }
1522
+ if (specified("text-align-right")) {
1523
+ modifiers += "text-right ";
1524
+ } else {
1525
+ modifiers += "text-left ";
1526
+ }
1527
+ } else {
1528
+ if (specified("mobile-vert-center")) {
1529
+ modifiers += "justify-center ";
1530
+ } else {
1531
+ modifiers += "justify-start ";
1532
+ }
1533
+ }
1534
+ if (agent === "phone" && specified("mobile-center-headings")) {
1535
+ modifiers += "typography-headings:text-center ";
1536
+ }
1537
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex flex-col justify-center h-full", modifiers, className), children: /* @__PURE__ */ jsxRuntime.jsx(ContentComponent, { blocks, agent }) });
1538
+ }, "ContentColumn");
1539
+ var Content2 = /* @__PURE__ */ __name(({
1540
+ block: b,
1541
+ agent,
1542
+ className = ""
1543
+ }) => {
1544
+ const layoutClx = "flex flex-col gap-2 sm:gap-4 h-full " + (agent !== "phone" ? `md:grid md:gap-8 md:grid-cols-${b.contentColumns.length} ` : "");
1545
+ const orderclx = /* @__PURE__ */ __name((columnIndex) => {
1546
+ const orderIndex = b.mobileOrder?.indexOf(columnIndex);
1547
+ return orderIndex && orderIndex >= 0 ? `order-${orderIndex} md:order-none` : "";
1548
+ }, "orderclx");
1549
+ return b.contentColumns.length == 1 ? /* @__PURE__ */ jsxRuntime.jsx(
1550
+ ContentColumn,
1551
+ {
1552
+ blocks: b.contentColumns[0],
1553
+ specifiers: b.columnSpecifiers?.[0],
1554
+ agent,
1555
+ className: cn(className)
1556
+ }
1557
+ ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(layoutClx, className), children: b.contentColumns.map((column, index) => /* @__PURE__ */ jsxRuntime.jsx(
1558
+ ContentColumn,
1559
+ {
1560
+ blocks: column,
1561
+ specifiers: b.columnSpecifiers?.[index],
1562
+ agent,
1563
+ className: orderclx(index)
1564
+ },
1565
+ index
1566
+ )) });
1567
+ }, "Content");
1568
+ var content_default = Content2;
1569
+ var VideoBG = /* @__PURE__ */ __name(({
1570
+ block,
1571
+ className = "",
1572
+ initialInView
1573
+ }) => {
1574
+ const { ref, inView } = reactIntersectionObserver.useInView({
1575
+ threshold: 0.75,
1576
+ initialInView
1577
+ });
1578
+ return block ? /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className, children: inView && /* @__PURE__ */ jsxRuntime.jsx(
1579
+ "video",
1580
+ {
1581
+ autoPlay: true,
1582
+ loop: true,
1583
+ muted: true,
1584
+ style: {
1585
+ margin: 0,
1586
+ height: "100%",
1587
+ width: "100%",
1588
+ objectFit: "cover"
1589
+ },
1590
+ children: block.sources?.map((src, index) => /* @__PURE__ */ jsxRuntime.jsx("source", { src }, index))
1591
+ }
1592
+ ) }) : null;
1593
+ }, "VideoBG");
1594
+ var video_background_default = VideoBG;
1595
+ var Video = /* @__PURE__ */ __name((props) => {
1596
+ const [mounted, setMounted] = React4.useState(false);
1597
+ React4.useEffect(() => {
1598
+ setMounted(true);
1599
+ }, []);
1600
+ if (!mounted) return null;
1601
+ return /* @__PURE__ */ jsxRuntime.jsx(video_background_default, { ...props });
1602
+ }, "Video");
1603
+ var ScreenfulComponent = /* @__PURE__ */ __name(({
1604
+ block,
1605
+ agent,
1606
+ initialInView = false,
1607
+ snapTile = false,
1608
+ clx = "",
1609
+ contentClx = "",
1610
+ bottom
1611
+ }) => {
1612
+ if (block.blockType !== "screenful") {
1613
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "screenful block required" });
1614
+ }
1615
+ const b = block;
1616
+ const hasBannerVideo = /* @__PURE__ */ __name(() => !!b.banner && typeof b.banner === "object", "hasBannerVideo");
1617
+ const tileHeight = agent === "desktop" ? "h-full " : "h-[100svh] ";
1618
+ const specified = /* @__PURE__ */ __name((s) => containsToken(b.specifiers, s), "specified");
1619
+ const narrowGutters = specified("narrow-gutters");
1620
+ const noGutters = specified("no-gutters");
1621
+ const fullScreenWidth = specified("full-screen-width");
1622
+ const vertCenter = specified("vert-center");
1623
+ const oneColumn = b.contentColumns.length === 1;
1624
+ const cwclx = [
1625
+ "xl:mx-auto overflow-y-hidden h-full",
1626
+ fullScreenWidth ? "" : "max-w-screen-xl",
1627
+ // desktop header: 80px / pt-20
1628
+ // mobile header: 44px / pt-11
1629
+ narrowGutters ? "px-6 lg:px-8 2xl:px-2 pb-4 lg:pb-6 xl:pb-8 " + (snapTile ? "pt-15 md:pt-26 lg:pt-28 " : "") : noGutters ? "px-0 pb-0 " + (snapTile ? "pt-11 lg:pt-20 " : "") : "px-[8vw] xl:px-[1vw] pb-[8vh] pt-[calc(44px+4vh)] md:pt-[calc(80px+6vh)] ",
1630
+ agent && agent !== "desktop" ? "pt-15 sm:pt-17 pb-0 px-3 sm:px-8" : ""
1631
+ ];
1632
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { ...b.anchorId ? { id: b.anchorId } : {}, className: cn(
1633
+ snapTile ? "snap-start snap-always h-[100vh]" : "min-h-screen",
1634
+ bottom ? "flex flex-col" : "",
1635
+ clx
1636
+ ), children: [
1637
+ /* @__PURE__ */ jsxRuntime.jsx(ApplyTypography, { className: cn(
1638
+ "w-full flex flex-row justify-center self-stretch",
1639
+ snapTile ? tileHeight : "",
1640
+ bottom ? "grow" : ""
1641
+ ), children: /* @__PURE__ */ jsxRuntime.jsxs(poster_background_default, { banner: b.banner, children: [
1642
+ hasBannerVideo() && /* @__PURE__ */ jsxRuntime.jsx(
1643
+ Video,
1644
+ {
1645
+ block: b.banner,
1646
+ className: "absolute top-0 left-0 bottom-0 right-0",
1647
+ initialInView
1648
+ }
1649
+ ),
1650
+ /* @__PURE__ */ jsxRuntime.jsxs(
1651
+ "div",
1652
+ {
1653
+ className: cn(
1654
+ ...cwclx,
1655
+ snapTile ? "absolute left-0 right-0 top-0 bottom-0 " : "flex min-h-screen w-full",
1656
+ contentClx,
1657
+ // TODO :aa py-0 breaks padding for header! Investigate why I would have done this!
1658
+ vertCenter ? "self-center " + (oneColumn ? "!py-0" : "") : ""
1659
+ ),
1660
+ children: [
1661
+ /* @__PURE__ */ jsxRuntime.jsx(content_default, { block: b, agent, className: "w-full" }),
1662
+ b.footer
1663
+ ]
1664
+ }
1665
+ )
1666
+ ] }) }),
1667
+ bottom
1668
+ ] });
1669
+ }, "ScreenfulComponent");
1670
+ var screenful_block_default = ScreenfulComponent;
1671
+
1672
+ exports.AccordianBlockComponent = accordian_block_default;
1673
+ exports.BlocksComponent = ContentComponent;
1674
+ exports.CTABlockComponent = cta_block_default;
1675
+ exports.CardBlockComponent = card_block_default;
1676
+ exports.ContentComponent = ContentComponent;
1677
+ exports.EnhHeadingBlockComponent = enh_heading_block_default;
1678
+ exports.GroupBlockComponent = group_block_default;
1679
+ exports.HeadingBlockComponent = heading_block_default;
1680
+ exports.ImageBlockComponent = image_block_default;
1681
+ exports.SPACE_DEFAULTS = SPACE_DEFAULTS;
1682
+ exports.ScreenfulBlockComponent = screenful_block_default;
1683
+ exports.SpaceBlockComponent = space_block_default;
1684
+ exports.VideoBlockComponent = video_block_default;
1685
+ exports.registerBlockType = registerBlockType;