@duongthiu/onex-core 0.1.0 → 0.1.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 (190) hide show
  1. package/README.md +44 -65
  2. package/THEME_API.md +36 -33
  3. package/dist/api.js +14 -0
  4. package/dist/api.js.map +1 -0
  5. package/dist/api.mjs +5 -0
  6. package/dist/api.mjs.map +1 -0
  7. package/dist/auth.js +23 -0
  8. package/dist/auth.js.map +1 -0
  9. package/dist/auth.mjs +6 -0
  10. package/dist/auth.mjs.map +1 -0
  11. package/dist/blog.js +22 -0
  12. package/dist/blog.js.map +1 -0
  13. package/dist/blog.mjs +5 -0
  14. package/dist/blog.mjs.map +1 -0
  15. package/dist/cart.js +27 -0
  16. package/dist/cart.js.map +1 -0
  17. package/dist/cart.mjs +6 -0
  18. package/dist/cart.mjs.map +1 -0
  19. package/dist/chunk-2CSWHI3L.js +210 -0
  20. package/dist/chunk-2CSWHI3L.js.map +1 -0
  21. package/dist/chunk-2FGHIDUV.js +99 -0
  22. package/dist/chunk-2FGHIDUV.js.map +1 -0
  23. package/dist/chunk-2NMEKWO5.js +40 -0
  24. package/dist/chunk-2NMEKWO5.js.map +1 -0
  25. package/dist/chunk-43BVHGDT.mjs +131 -0
  26. package/dist/chunk-43BVHGDT.mjs.map +1 -0
  27. package/dist/chunk-4JVQJI3I.mjs +290 -0
  28. package/dist/chunk-4JVQJI3I.mjs.map +1 -0
  29. package/dist/chunk-5N2EKK5O.js +9550 -0
  30. package/dist/chunk-5N2EKK5O.js.map +1 -0
  31. package/dist/chunk-5T6NDVSN.js +76 -0
  32. package/dist/chunk-5T6NDVSN.js.map +1 -0
  33. package/dist/chunk-73AINNCI.mjs +201 -0
  34. package/dist/chunk-73AINNCI.mjs.map +1 -0
  35. package/dist/chunk-AIXBDAVP.mjs +61 -0
  36. package/dist/chunk-AIXBDAVP.mjs.map +1 -0
  37. package/dist/chunk-ALYN5HAC.js +210 -0
  38. package/dist/chunk-ALYN5HAC.js.map +1 -0
  39. package/dist/chunk-AREMJR3Q.js +36 -0
  40. package/dist/chunk-AREMJR3Q.js.map +1 -0
  41. package/dist/chunk-DXAI6XOI.mjs +33 -0
  42. package/dist/chunk-DXAI6XOI.mjs.map +1 -0
  43. package/dist/chunk-F5TFNWFJ.mjs +257 -0
  44. package/dist/chunk-F5TFNWFJ.mjs.map +1 -0
  45. package/dist/chunk-FQ7FWUZN.js +265 -0
  46. package/dist/chunk-FQ7FWUZN.js.map +1 -0
  47. package/dist/{chunk-3SZX6LHT.js → chunk-J27VGXJH.js} +2 -24
  48. package/dist/chunk-J27VGXJH.js.map +1 -0
  49. package/dist/chunk-JZ46LLTZ.js +121 -0
  50. package/dist/chunk-JZ46LLTZ.js.map +1 -0
  51. package/dist/chunk-K24UHN6G.mjs +76 -0
  52. package/dist/chunk-K24UHN6G.mjs.map +1 -0
  53. package/dist/chunk-KCQGGU5R.mjs +344 -0
  54. package/dist/chunk-KCQGGU5R.mjs.map +1 -0
  55. package/dist/chunk-MT22NYKT.mjs +117 -0
  56. package/dist/chunk-MT22NYKT.mjs.map +1 -0
  57. package/dist/chunk-NDD472IZ.js +85 -0
  58. package/dist/chunk-NDD472IZ.js.map +1 -0
  59. package/dist/chunk-NHOIGGYU.mjs +833 -0
  60. package/dist/chunk-NHOIGGYU.mjs.map +1 -0
  61. package/dist/chunk-O3XR7TW3.mjs +12 -0
  62. package/dist/chunk-O3XR7TW3.mjs.map +1 -0
  63. package/dist/chunk-OAPYSC2X.mjs +206 -0
  64. package/dist/chunk-OAPYSC2X.mjs.map +1 -0
  65. package/dist/{chunk-XE4EOKS4.mjs → chunk-ONJREDYY.mjs} +3 -23
  66. package/dist/chunk-ONJREDYY.mjs.map +1 -0
  67. package/dist/chunk-OVT2LUAM.js +197 -0
  68. package/dist/chunk-OVT2LUAM.js.map +1 -0
  69. package/dist/chunk-OWNGNGKL.js +331 -0
  70. package/dist/chunk-OWNGNGKL.js.map +1 -0
  71. package/dist/chunk-P7SXNZSV.js +298 -0
  72. package/dist/chunk-P7SXNZSV.js.map +1 -0
  73. package/dist/chunk-PFJOL3HI.mjs +71 -0
  74. package/dist/chunk-PFJOL3HI.mjs.map +1 -0
  75. package/dist/chunk-PPULMWJ6.js +295 -0
  76. package/dist/chunk-PPULMWJ6.js.map +1 -0
  77. package/dist/chunk-RGIVKACG.js +359 -0
  78. package/dist/chunk-RGIVKACG.js.map +1 -0
  79. package/dist/chunk-RPP5K2LP.js +870 -0
  80. package/dist/chunk-RPP5K2LP.js.map +1 -0
  81. package/dist/{chunk-7EON6Q4L.mjs → chunk-RUCHWUD7.mjs} +7651 -6370
  82. package/dist/chunk-RUCHWUD7.mjs.map +1 -0
  83. package/dist/chunk-SEVUIX4H.js +137 -0
  84. package/dist/chunk-SEVUIX4H.js.map +1 -0
  85. package/dist/chunk-SK2FSHFM.mjs +208 -0
  86. package/dist/chunk-SK2FSHFM.mjs.map +1 -0
  87. package/dist/chunk-T6EJ2GAV.mjs +294 -0
  88. package/dist/chunk-T6EJ2GAV.mjs.map +1 -0
  89. package/dist/chunk-ULBDOFZI.mjs +302 -0
  90. package/dist/chunk-ULBDOFZI.mjs.map +1 -0
  91. package/dist/chunk-V3JIELNV.js +241 -0
  92. package/dist/chunk-V3JIELNV.js.map +1 -0
  93. package/dist/chunk-V5E2KWMA.mjs +238 -0
  94. package/dist/chunk-V5E2KWMA.mjs.map +1 -0
  95. package/dist/chunk-VJA3ER6A.js +14 -0
  96. package/dist/chunk-VJA3ER6A.js.map +1 -0
  97. package/dist/chunk-VLI7ULX5.js +66 -0
  98. package/dist/chunk-VLI7ULX5.js.map +1 -0
  99. package/dist/chunk-WFGS5OFH.mjs +189 -0
  100. package/dist/chunk-WFGS5OFH.mjs.map +1 -0
  101. package/dist/chunk-WVC5GP24.mjs +96 -0
  102. package/dist/chunk-WVC5GP24.mjs.map +1 -0
  103. package/dist/chunk-YOSPWY5K.mjs +36 -0
  104. package/dist/chunk-YOSPWY5K.mjs.map +1 -0
  105. package/dist/chunk-ZFFXXLX7.js +205 -0
  106. package/dist/chunk-ZFFXXLX7.js.map +1 -0
  107. package/dist/client.js +512 -249
  108. package/dist/client.mjs +21 -2
  109. package/dist/components.js +393 -0
  110. package/dist/components.js.map +1 -0
  111. package/dist/components.mjs +8 -0
  112. package/dist/components.mjs.map +1 -0
  113. package/dist/config.js +17 -0
  114. package/dist/config.js.map +1 -0
  115. package/dist/config.mjs +4 -0
  116. package/dist/config.mjs.map +1 -0
  117. package/dist/contact.js +22 -0
  118. package/dist/contact.js.map +1 -0
  119. package/dist/contact.mjs +5 -0
  120. package/dist/contact.mjs.map +1 -0
  121. package/dist/contexts.js +51 -0
  122. package/dist/contexts.js.map +1 -0
  123. package/dist/contexts.mjs +6 -0
  124. package/dist/contexts.mjs.map +1 -0
  125. package/dist/finance.js +26 -0
  126. package/dist/finance.js.map +1 -0
  127. package/dist/finance.mjs +5 -0
  128. package/dist/finance.mjs.map +1 -0
  129. package/dist/icons.js +15 -0
  130. package/dist/icons.js.map +1 -0
  131. package/dist/icons.mjs +4 -0
  132. package/dist/icons.mjs.map +1 -0
  133. package/dist/index.js +512 -249
  134. package/dist/index.js.map +1 -1
  135. package/dist/index.mjs +21 -2
  136. package/dist/index.mjs.map +1 -1
  137. package/dist/internal.js +1437 -0
  138. package/dist/internal.js.map +1 -0
  139. package/dist/internal.mjs +1404 -0
  140. package/dist/internal.mjs.map +1 -0
  141. package/dist/motion.js +51 -0
  142. package/dist/motion.js.map +1 -0
  143. package/dist/motion.mjs +38 -0
  144. package/dist/motion.mjs.map +1 -0
  145. package/dist/orders.js +22 -0
  146. package/dist/orders.js.map +1 -0
  147. package/dist/orders.mjs +5 -0
  148. package/dist/orders.mjs.map +1 -0
  149. package/dist/products.js +27 -0
  150. package/dist/products.js.map +1 -0
  151. package/dist/products.mjs +6 -0
  152. package/dist/products.mjs.map +1 -0
  153. package/dist/registry.js +44 -0
  154. package/dist/registry.js.map +1 -0
  155. package/dist/registry.mjs +7 -0
  156. package/dist/registry.mjs.map +1 -0
  157. package/dist/renderers.js +51 -0
  158. package/dist/renderers.js.map +1 -0
  159. package/dist/renderers.mjs +6 -0
  160. package/dist/renderers.mjs.map +1 -0
  161. package/dist/server.js +11 -189
  162. package/dist/server.js.map +1 -1
  163. package/dist/server.mjs +3 -186
  164. package/dist/server.mjs.map +1 -1
  165. package/dist/types.js +37 -0
  166. package/dist/types.js.map +1 -0
  167. package/dist/types.mjs +4 -0
  168. package/dist/types.mjs.map +1 -0
  169. package/dist/utils.js +160 -0
  170. package/dist/utils.js.map +1 -0
  171. package/dist/utils.mjs +7 -0
  172. package/dist/utils.mjs.map +1 -0
  173. package/dist/wrappers.js +104 -0
  174. package/dist/wrappers.js.map +1 -0
  175. package/dist/wrappers.mjs +96 -0
  176. package/dist/wrappers.mjs.map +1 -0
  177. package/package.json +112 -9
  178. package/dist/api-vuL1Eg5L.d.mts +0 -2961
  179. package/dist/api-vuL1Eg5L.d.ts +0 -2961
  180. package/dist/chunk-3SZX6LHT.js.map +0 -1
  181. package/dist/chunk-7EON6Q4L.mjs.map +0 -1
  182. package/dist/chunk-WDY773GJ.js +0 -8308
  183. package/dist/chunk-WDY773GJ.js.map +0 -1
  184. package/dist/chunk-XE4EOKS4.mjs.map +0 -1
  185. package/dist/client.d.mts +0 -1461
  186. package/dist/client.d.ts +0 -1461
  187. package/dist/index.d.mts +0 -125
  188. package/dist/index.d.ts +0 -125
  189. package/dist/server.d.mts +0 -70
  190. package/dist/server.d.ts +0 -70
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/app-stubs.ts","../src/compat.ts","../src/stubs.ts"],"names":[],"mappings":"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","file":"internal.mjs","sourcesContent":["/**\n * Section Component Migration Utilities\n * Converts settings-based sections to component-based architecture\n */\n\nimport type { SectionInstance, SectionComponentInstance } from \"./types\";\nimport type { BlockInstance } from \"./types\";\n\n/**\n * Ensure Header section has component instances\n */\nexport function ensureHeaderComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n // If already has components, return them\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n // Create default components from settings\n return [\n {\n id: \"header-logo\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.logoText || \"VTECH FILM\"),\n tag: \"span\",\n },\n style: {\n fontSize: \"2xl\",\n fontWeight: \"bold\",\n color: \"#F07E22\",\n fontFamily: \"Montserrat, sans-serif\",\n },\n enabled: true,\n },\n {\n id: \"header-tagline\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(settings?.tagline || \"LÀM MÁT CHO NGƯỜI VIỆT\"),\n },\n style: {\n fontSize: \"xs\",\n fontWeight: \"medium\",\n color: \"#6B7280\",\n textTransform: \"uppercase\",\n letterSpacing: \"0.05em\",\n },\n enabled: true,\n },\n {\n id: \"header-cta\",\n type: \"button\",\n order: 2,\n content: {\n text: String(settings?.ctaText || \"Liên hệ\"),\n href: String(settings?.ctaLink || \"#contact\"),\n },\n style: {\n fontSize: \"sm\",\n fontWeight: \"medium\",\n color: \"#FFFFFF\",\n backgroundColor: \"#F07E22\",\n padding: \"0.5rem 1rem\",\n borderRadius: \"0.375rem\",\n },\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Features section has component instances\n */\nexport function ensureFeaturesComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"features-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"Tính năng nổi bật\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"3xl\",\n fontWeight: \"bold\",\n color: \"#09090B\",\n marginBottom: \"1rem\",\n fontFamily: \"Montserrat, sans-serif\",\n },\n enabled: true,\n },\n {\n id: \"features-description\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(\n settings?.description ||\n \"VTech Film mang đến những tính năng vượt trội cho không gian của bạn\"\n ),\n },\n style: {\n fontSize: \"base\",\n color: \"#71717A\",\n maxWidth: \"42rem\",\n margin: \"0 auto\",\n },\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Footer section has component instances\n */\nexport function ensureFooterComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"footer-company-name\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.companyName || \"VTECH FILM\"),\n tag: \"h3\",\n },\n style: {\n fontSize: \"2xl\",\n fontWeight: \"bold\",\n color: \"#F07E22\",\n fontFamily: \"Montserrat, sans-serif\",\n },\n enabled: true,\n },\n {\n id: \"footer-tagline\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(settings?.tagline || \"LÀM MÁT CHO NGƯỜI VIỆT\"),\n },\n style: {\n fontSize: \"sm\",\n fontWeight: \"medium\",\n color: \"#9CA3AF\",\n textTransform: \"uppercase\",\n letterSpacing: \"0.05em\",\n },\n enabled: true,\n },\n {\n id: \"footer-description\",\n type: \"paragraph\",\n order: 2,\n content: {\n text: String(\n settings?.description ||\n \"Chuyên cung cấp phim cách nhiệt cao cấp cho ô tô và công trình. Chất lượng - Uy tín - Chuyên nghiệp.\"\n ),\n },\n style: {\n fontSize: \"sm\",\n color: \"#9CA3AF\",\n lineHeight: \"1.625\",\n },\n enabled: true,\n },\n {\n id: \"footer-products-title\",\n type: \"heading\",\n order: 3,\n content: {\n text: String(settings?.productsColumnTitle || \"Sản phẩm\"),\n tag: \"h4\",\n },\n style: {\n fontSize: \"lg\",\n fontWeight: \"semibold\",\n color: \"#FFFFFF\",\n },\n enabled: true,\n },\n {\n id: \"footer-company-title\",\n type: \"heading\",\n order: 4,\n content: {\n text: String(settings?.companyColumnTitle || \"Công ty\"),\n tag: \"h4\",\n },\n style: {\n fontSize: \"lg\",\n fontWeight: \"semibold\",\n color: \"#FFFFFF\",\n },\n enabled: true,\n },\n {\n id: \"footer-contact-title\",\n type: \"heading\",\n order: 5,\n content: {\n text: String(settings?.contactColumnTitle || \"Liên hệ\"),\n tag: \"h4\",\n },\n style: {\n fontSize: \"lg\",\n fontWeight: \"semibold\",\n color: \"#FFFFFF\",\n },\n enabled: true,\n },\n {\n id: \"footer-social-title\",\n type: \"heading\",\n order: 6,\n content: {\n text: String(settings?.socialMediaTitle || \"Theo dõi chúng tôi\"),\n tag: \"h4\",\n },\n style: {\n fontSize: \"lg\",\n fontWeight: \"semibold\",\n color: \"#FFFFFF\",\n },\n enabled: true,\n },\n {\n id: \"footer-copyright\",\n type: \"paragraph\",\n order: 7,\n content: {\n text: `© ${new Date().getFullYear()} ${String(settings?.copyrightText || \"VTech Film. Bản quyền thuộc về VTech Film.\")}`,\n },\n style: {\n fontSize: \"sm\",\n color: \"#6B7280\",\n },\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Categories section has component instances\n */\nexport function ensureCategoriesComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"categories-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"Danh mục sản phẩm\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"3xl\",\n fontWeight: \"bold\",\n color: \"#09090B\",\n textAlign: \"center\",\n marginBottom: \"3rem\",\n fontFamily: \"Montserrat, sans-serif\",\n },\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Header section has block instances\n */\nexport function ensureHeaderBlocks(section: SectionInstance): BlockInstance[] {\n // If already has blocks, return them\n if (section.blocks && section.blocks.length > 0) {\n return section.blocks;\n }\n\n const { settings } = section;\n\n // Parse navigation items from section settings\n let navItems: Array<{ label: string; href: string }> = [];\n try {\n const navigationItemsStr = settings?.navigationItems as string;\n if (navigationItemsStr) {\n navItems = JSON.parse(navigationItemsStr);\n }\n } catch (e) {\n // Fallback to default navigation items\n navItems = [\n { label: \"Trang chủ\", href: \"/\" },\n { label: \"Giới thiệu\", href: \"/about\" },\n { label: \"Sản phẩm\", href: \"/products\" },\n { label: \"Tin tức\", href: \"/blog\" },\n ];\n }\n\n // Convert navigation items to component instances\n const navLinkComponents = navItems.map((item, index) => ({\n id: `header-nav-link-${index}`,\n type: \"link\" as const,\n order: index,\n content: {\n text: item.label,\n href: item.href,\n },\n style: {\n fontSize: \"sm\",\n fontWeight: \"medium\",\n color: \"#374151\", // text-gray-700\n },\n enabled: true,\n }));\n\n // Create default navigation block with child components\n return [\n {\n id: \"header-navigation\",\n type: \"navigation-links-block\",\n order: 0,\n enabled: true,\n settings: {\n layout: \"horizontal\",\n textSize: \"sm\",\n textWeight: \"medium\",\n spacing: \"normal\",\n hoverEffect: \"color\",\n },\n components: navLinkComponents,\n },\n ];\n}\n\n/**\n * Ensure Hero section has component instances\n */\nexport function ensureHeroComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n const buttonStyleSetting = String(settings?.buttonStyle || \"filled\");\n const buttonBgColor = String(settings?.buttonBgColor || \"#002951\");\n const buttonTextColor = String(settings?.buttonTextColor || \"#FFFFFF\");\n const buttonBorderColor = String(\n settings?.buttonBorderColor || buttonBgColor\n );\n\n return [\n {\n id: \"hero-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"\"),\n tag: \"h1\",\n },\n style: {\n fontSize: \"sm\",\n fontWeight: \"black\",\n textTransform: \"uppercase\",\n color: \"#FFFFFF\",\n },\n enabled: true,\n },\n {\n id: \"hero-subheading\",\n type: \"heading\",\n order: 1,\n content: {\n text: String(settings?.subheading || \"\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"base\",\n fontWeight: \"black\",\n textTransform: \"uppercase\",\n color: \"#FCE5D3\",\n },\n enabled: true,\n },\n {\n id: \"hero-description\",\n type: \"paragraph\",\n order: 2,\n content: {\n text: String(settings?.description || \"\"),\n },\n style: {\n fontSize: \"xs\",\n fontWeight: \"medium\",\n color: \"#FFFFFF\",\n padding: \"0 1rem\",\n },\n enabled: true,\n },\n ...(settings?.description2\n ? [\n {\n id: \"hero-description2\",\n type: \"paragraph\",\n order: 3,\n content: {\n text: String(settings.description2),\n },\n style: {\n fontSize: \"xs\",\n fontWeight: \"medium\",\n color: \"#FFFFFF\",\n padding: \"0 1rem\",\n },\n styleMode: \"advanced\" as const,\n enabled: true,\n },\n ]\n : []),\n {\n id: \"hero-cta-button\",\n type: \"button\",\n order: settings?.description2 ? 4 : 3,\n content: {\n text: String(settings?.ctaText || \"\"),\n href: String(settings?.ctaUrl || \"\"),\n },\n style: {\n padding: \"0.75rem 1.5rem\",\n fontSize: \"0.875rem\",\n color: buttonTextColor,\n backgroundColor:\n buttonStyleSetting === \"outline\" ? \"transparent\" : buttonBgColor,\n borderColor: buttonBorderColor,\n borderWidth: buttonStyleSetting === \"outline\" ? \"1px\" : undefined,\n borderStyle: buttonStyleSetting === \"outline\" ? \"solid\" : undefined,\n borderRadius: \"0.75rem\",\n },\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Video section has component instances\n */\nexport function ensureVideoComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n const videoUrl = String(settings?.videoUrl || \"\");\n\n // Detect video type from URL\n const detectVideoType = (url: string): string => {\n if (url.includes(\"youtube.com\") || url.includes(\"youtu.be\"))\n return \"youtube\";\n if (url.includes(\"vimeo.com\")) return \"vimeo\";\n return \"hosted\";\n };\n\n return [\n {\n id: \"video-player\",\n type: \"video\",\n order: 0,\n content: {\n videoType: detectVideoType(videoUrl),\n videoUrl: videoUrl,\n title: String(settings?.title || \"VTech Film Video\"),\n autoplay: Boolean(settings?.autoplay),\n controls: true,\n },\n style: {\n aspectRatio: String(settings?.aspectRatio || \"16/9\"),\n width: \"100%\",\n boxShadow: \"none\",\n },\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Blog-Projects section has component instances\n */\nexport function ensureBlogProjectsComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"blog-projects-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(\n settings?.heading ||\n \"Chất lượng được chứng minh qua công trình & xe Vtech Film\"\n ),\n tag: \"h2\",\n },\n style: {\n fontSize: \"2xl\",\n fontWeight: \"bold\",\n color: \"#301907\",\n lineHeight: \"1.3\",\n padding: \"0 1rem\",\n },\n enabled: true,\n },\n {\n id: \"blog-projects-image\",\n type: \"image\",\n order: 1,\n content: {\n src: String(\n settings?.projectImage || \"/assets/backgrounds/hero-background.jpg\"\n ),\n alt: String(settings?.projectTitle || \"Dự án phim cách nhiệt cao cấp\"),\n },\n style: {\n width: \"100%\",\n height: \"100%\",\n objectFit: \"cover\",\n borderRadius: \"0.75rem\",\n },\n enabled: true,\n },\n {\n id: \"blog-projects-title\",\n type: \"heading\",\n order: 2,\n content: {\n text: String(settings?.projectTitle || \"Dự án phim cách nhiệt cao cấp\"),\n tag: \"h3\",\n },\n style: {\n fontSize: \"lg\",\n fontWeight: \"black\",\n color: \"#111827\",\n lineHeight: \"1.2\",\n letterSpacing: \"-0.48px\",\n },\n enabled: true,\n },\n {\n id: \"blog-projects-excerpt\",\n type: \"paragraph\",\n order: 3,\n content: {\n text: String(\n settings?.projectExcerpt ||\n \"Thi công phim cách nhiệt chuyên nghiệp cho văn phòng và nhà kính\"\n ),\n },\n style: {\n fontSize: \"sm\",\n color: \"#111827\",\n lineHeight: \"1.2\",\n },\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Content-CTA section has component instances\n */\nexport function ensureContentCtaComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"content-cta-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"Liên hệ ngay hôm nay\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"3xl\",\n fontWeight: \"bold\",\n textAlign: \"center\",\n color: \"#FFFFFF\",\n },\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Testimonials section has component instances\n */\nexport function ensureTestimonialsComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"testimonials-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"Đánh giá khách hàng\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"3xl\",\n fontWeight: \"bold\",\n color: \"#09090B\",\n textAlign: \"center\",\n marginBottom: \"1rem\",\n fontFamily: \"Montserrat, sans-serif\",\n },\n enabled: true,\n },\n {\n id: \"testimonials-description\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(\n settings?.description || \"Những đánh giá từ khách hàng của chúng tôi\"\n ),\n },\n style: {\n fontSize: \"base\",\n color: \"#6B7280\",\n textAlign: \"center\",\n marginBottom: \"3rem\",\n },\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Contact section has component instances\n */\nexport function ensureContactComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"contact-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"Liên hệ với chúng tôi\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"3xl\",\n fontWeight: \"bold\",\n color: \"#09090B\",\n textAlign: \"center\",\n marginBottom: \"1rem\",\n fontFamily: \"Montserrat, sans-serif\",\n },\n enabled: true,\n },\n {\n id: \"contact-description\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(\n settings?.description || \"Chúng tôi luôn sẵn sàng hỗ trợ bạn\"\n ),\n },\n style: {\n fontSize: \"base\",\n color: \"#6B7280\",\n textAlign: \"center\",\n marginBottom: \"3rem\",\n },\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Brand Story section has component instances (Tinan theme)\n */\nexport function ensureBrandStoryComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n // Default story paragraphs\n const defaultStoryContent = `Chúng tôi bắt đầu hành trình từ năm 1995, với mong muốn bảo tồn và phát triển nghệ thuật thủ công truyền thống Việt Nam. Từ một xưởng nhỏ ở Hà Nội, chúng tôi đã phát triển thành một cộng đồng gồm hơn 200 nghệ nhân từ các làng nghề nổi tiếng như Bát Tràng, Phú Vinh, Hạ Thái.\n\nMỗi sản phẩm của chúng tôi không chỉ là một món đồ, mà là một câu chuyện – câu chuyện về tay nghề, về văn hóa, về tình yêu với nghề thủ công. Chúng tôi tin rằng, qua những sản phẩm này, di sản văn hóa Việt Nam sẽ được gìn giữ và lan tỏa đến thế giới.\n\nSứ mệnh của chúng tôi là kết nối người yêu nghệ thuật với những tác phẩm thủ công cao cấp, đồng thời tạo ra thu nhập bền vững cho các nghệ nhân và giữ gìn làng nghề truyền thống.`;\n\n return [\n {\n id: \"brand-story-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"Câu Chuyện Thương Hiệu\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"4xl\",\n fontWeight: \"normal\",\n color: \"#722F37\",\n fontStyle: \"italic\",\n fontFamily: \"serif\",\n textAlign: \"center\",\n },\n enabled: true,\n },\n {\n id: \"brand-story-description\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(\n settings?.description ||\n \"Từ những làng nghề truyền thống, chúng tôi mang đến thế giới vẻ đẹp của nghệ thuật thủ công Việt Nam\"\n ),\n },\n style: {\n fontSize: \"base\",\n color: \"#6B5344\",\n textAlign: \"center\",\n },\n enabled: true,\n },\n {\n id: \"brand-story-content\",\n type: \"paragraph\",\n order: 2,\n content: {\n text: String(settings?.storyContent || defaultStoryContent),\n },\n style: {\n fontSize: \"sm\",\n color: \"#3D2314\",\n lineHeight: \"1.625\",\n },\n enabled: true,\n },\n {\n id: \"brand-story-mission-title\",\n type: \"heading\",\n order: 4,\n content: {\n text: String(settings?.missionTitle || \"Sứ Mệnh Của Chúng Tôi\"),\n tag: \"h3\",\n },\n style: {\n fontSize: \"lg\",\n fontWeight: \"normal\",\n color: \"#722F37\",\n fontFamily: \"serif\",\n },\n\n enabled: true,\n },\n {\n id: \"brand-story-mission-text\",\n type: \"paragraph\",\n order: 5,\n content: {\n text: String(\n settings?.missionText ||\n \"Gìn giữ và phát huy giá trị văn hóa truyền thống Việt Nam thông qua nghệ thuật thủ công, đồng thời tạo ra cuộc sống tốt đẹp hơn cho các nghệ nhân và cộng đồng làng nghề.\"\n ),\n },\n style: {\n fontSize: \"sm\",\n color: \"#3D2314\",\n fontStyle: \"italic\",\n fontFamily: \"serif\",\n },\n\n enabled: true,\n },\n // Feature Card 1\n {\n id: \"brand-story-feature-1-title\",\n type: \"heading\",\n order: 6,\n content: {\n text: String(settings?.feature1Title || \"Tâm Huyết Nghệ Nhân\"),\n tag: \"h4\",\n },\n style: {\n fontSize: \"base\",\n fontWeight: \"semibold\",\n color: \"#3D2314\",\n },\n\n enabled: true,\n },\n {\n id: \"brand-story-feature-1-desc\",\n type: \"paragraph\",\n order: 7,\n content: {\n text: String(\n settings?.feature1Desc ||\n \"Sản phẩm là tâm huyết của nghệ nhân, làm bằng tình yêu và đam mê với nghề.\"\n ),\n },\n style: {\n fontSize: \"sm\",\n color: \"#6B5344\",\n },\n\n enabled: true,\n },\n // Feature Card 2\n {\n id: \"brand-story-feature-2-title\",\n type: \"heading\",\n order: 8,\n content: {\n text: String(settings?.feature2Title || \"Hỗ Trợ Cộng Đồng\"),\n tag: \"h4\",\n },\n style: {\n fontSize: \"base\",\n fontWeight: \"semibold\",\n color: \"#3D2314\",\n },\n\n enabled: true,\n },\n {\n id: \"brand-story-feature-2-desc\",\n type: \"paragraph\",\n order: 9,\n content: {\n text: String(\n settings?.feature2Desc ||\n \"Chúng tôi làm việc trực tiếp với các làng nghề, tạo việc làm bền vững và bảo tồn di sản văn hóa Việt Nam.\"\n ),\n },\n style: {\n fontSize: \"sm\",\n color: \"#6B5344\",\n },\n\n enabled: true,\n },\n // Feature Card 3\n {\n id: \"brand-story-feature-3-title\",\n type: \"heading\",\n order: 10,\n content: {\n text: String(settings?.feature3Title || \"Chất Lượng Cao Cấp\"),\n tag: \"h4\",\n },\n style: {\n fontSize: \"base\",\n fontWeight: \"semibold\",\n color: \"#3D2314\",\n },\n\n enabled: true,\n },\n {\n id: \"brand-story-feature-3-desc\",\n type: \"paragraph\",\n order: 11,\n content: {\n text: String(\n settings?.feature3Desc ||\n \"Cam kết chất lượng với nguyên liệu tự nhiên, quy trình kiểm soát nghiêm ngặt và bảo hành trọn đời.\"\n ),\n },\n style: {\n fontSize: \"sm\",\n color: \"#6B5344\",\n },\n\n enabled: true,\n },\n // Feature Card 4\n {\n id: \"brand-story-feature-4-title\",\n type: \"heading\",\n order: 12,\n content: {\n text: String(settings?.feature4Title || \"Thân Thiện Môi Trường\"),\n tag: \"h4\",\n },\n style: {\n fontSize: \"base\",\n fontWeight: \"semibold\",\n color: \"#3D2314\",\n },\n\n enabled: true,\n },\n {\n id: \"brand-story-feature-4-desc\",\n type: \"paragraph\",\n order: 13,\n content: {\n text: String(\n settings?.feature4Desc ||\n \"Sử dụng nguyên liệu tự nhiên, quy trình sản xuất thủ công, không gây hại cho môi trường.\"\n ),\n },\n style: {\n fontSize: \"sm\",\n color: \"#6B5344\",\n },\n\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Featured Products section has component instances (Tinan theme)\n */\nexport function ensureFeaturedProductsComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"featured-products-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"Sản phẩm nổi bật\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"4xl\",\n fontWeight: \"normal\",\n color: \"#722F37\",\n fontStyle: \"italic\",\n fontFamily: \"serif\",\n textAlign: \"center\",\n },\n\n enabled: true,\n },\n {\n id: \"featured-products-description\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(\n settings?.description ||\n \"Khám phá các sản phẩm cao cấp được chế tác thủ công bởi nghệ nhân Việt Nam\"\n ),\n },\n style: {\n fontSize: \"base\",\n color: \"#6B5344\",\n textAlign: \"center\",\n },\n\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Collections section has component instances (Tinan theme)\n */\nexport function ensureCollectionsComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"collections-title-1\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.collection1Title || \"Bộ sưu tập Tết\"),\n tag: \"h3\",\n },\n style: {\n fontSize: \"3xl\",\n fontWeight: \"normal\",\n color: \"#722F37\",\n fontFamily: \"serif\",\n },\n\n enabled: true,\n },\n {\n id: \"collections-desc-1\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(\n settings?.collection1Description ||\n \"Sắc xuân rực rỡ trong từng thiết kế sơn mài, mang lời chúc an khang – đoàn viên.\"\n ),\n },\n style: {\n fontSize: \"sm\",\n color: \"#6B5344\",\n },\n\n enabled: true,\n },\n {\n id: \"collections-title-2\",\n type: \"heading\",\n order: 2,\n content: {\n text: String(settings?.collection2Title || \"Bộ sưu tập Decor\"),\n tag: \"h3\",\n },\n style: {\n fontSize: \"3xl\",\n fontWeight: \"normal\",\n color: \"#722F37\",\n fontFamily: \"serif\",\n },\n\n enabled: true,\n },\n {\n id: \"collections-desc-2\",\n type: \"paragraph\",\n order: 3,\n content: {\n text: String(\n settings?.collection2Description ||\n \"Những sản phẩm decor sơn mài tinh tế, tạo điểm nhấn sang trọng cho không gian.\"\n ),\n },\n style: {\n fontSize: \"sm\",\n color: \"#6B5344\",\n },\n\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Best Sellers section has component instances (Tinan theme)\n */\nexport function ensureBestSellersComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"best-sellers-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"Sản Phẩm Bán Chạy\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"4xl\",\n fontWeight: \"normal\",\n color: \"#722F37\",\n fontStyle: \"italic\",\n fontFamily: \"serif\",\n textAlign: \"center\",\n },\n\n enabled: true,\n },\n {\n id: \"best-sellers-description\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(\n settings?.description ||\n \"Những sản phẩm được yêu thích nhất từ các nghệ nhân hàng đầu\"\n ),\n },\n style: {\n fontSize: \"base\",\n color: \"#6B5344\",\n textAlign: \"center\",\n },\n\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Crafting Process section has component instances (Tinan theme)\n */\nexport function ensureCraftingProcessComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"crafting-process-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"Quy Trình Chế Tác\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"4xl\",\n fontWeight: \"normal\",\n color: \"#722F37\",\n fontStyle: \"italic\",\n fontFamily: \"serif\",\n textAlign: \"center\",\n },\n\n enabled: true,\n },\n {\n id: \"crafting-process-description\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(\n settings?.description ||\n \"Mỗi sản phẩm trải qua hàng chục công đoạn, từ tay nghề của nghệ nhân với hơn 30 năm kinh nghiệm\"\n ),\n },\n style: {\n fontSize: \"base\",\n color: \"#6B5344\",\n textAlign: \"center\",\n },\n\n enabled: true,\n },\n // Step titles and descriptions\n {\n id: \"crafting-process-step-1-title\",\n type: \"heading\",\n order: 2,\n content: {\n text: String(settings?.step1Title || \"Chọn Nguyên Liệu\"),\n tag: \"h3\",\n },\n style: { fontSize: \"lg\", fontWeight: \"semibold\", color: \"#C9A962\" },\n\n enabled: true,\n },\n {\n id: \"crafting-process-step-1-desc\",\n type: \"paragraph\",\n order: 3,\n content: {\n text: String(\n settings?.step1Description ||\n \"Gỗ tự nhiên, sơn thiên nhiên, vàng lá được tuyển chọn kỹ lưỡng\"\n ),\n },\n style: { fontSize: \"sm\", color: \"#FFFFFF\" },\n\n enabled: true,\n },\n {\n id: \"crafting-process-step-2-title\",\n type: \"heading\",\n order: 4,\n content: {\n text: String(settings?.step2Title || \"Chế Tác\"),\n tag: \"h3\",\n },\n style: { fontSize: \"lg\", fontWeight: \"semibold\", color: \"#C9A962\" },\n\n enabled: true,\n },\n {\n id: \"crafting-process-step-2-desc\",\n type: \"paragraph\",\n order: 5,\n content: {\n text: String(\n settings?.step2Description ||\n \"Nghệ nhân dày công mài dũa, khắc họa tiết từng chi tiết tỉ mỉ\"\n ),\n },\n style: { fontSize: \"sm\", color: \"#FFFFFF\" },\n\n enabled: true,\n },\n {\n id: \"crafting-process-step-3-title\",\n type: \"heading\",\n order: 6,\n content: {\n text: String(settings?.step3Title || \"Phủ Sơn Mài\"),\n tag: \"h3\",\n },\n style: { fontSize: \"lg\", fontWeight: \"semibold\", color: \"#C9A962\" },\n\n enabled: true,\n },\n {\n id: \"crafting-process-step-3-desc\",\n type: \"paragraph\",\n order: 7,\n content: {\n text: String(\n settings?.step3Description ||\n \"12-16 lớp sơn mài được phủ và đánh bóng\"\n ),\n },\n style: { fontSize: \"sm\", color: \"#FFFFFF\" },\n\n enabled: true,\n },\n {\n id: \"crafting-process-step-4-title\",\n type: \"heading\",\n order: 8,\n content: {\n text: String(settings?.step4Title || \"Ủ & Hoàn Thiện\"),\n tag: \"h3\",\n },\n style: { fontSize: \"lg\", fontWeight: \"semibold\", color: \"#C9A962\" },\n\n enabled: true,\n },\n {\n id: \"crafting-process-step-4-desc\",\n type: \"paragraph\",\n order: 9,\n content: {\n text: String(\n settings?.step4Description ||\n \"Sản phẩm được ủ 30-45 ngày để đạt độ bóng và bền vững cao nhất\"\n ),\n },\n style: { fontSize: \"sm\", color: \"#FFFFFF\" },\n\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Tinan Testimonials section has component instances\n */\nexport function ensureTinanTestimonialsComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"tinan-testimonials-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"Khách hàng nói về chúng tôi\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"4xl\",\n fontWeight: \"normal\",\n color: \"#722F37\",\n fontStyle: \"italic\",\n fontFamily: \"serif\",\n textAlign: \"center\",\n },\n\n enabled: true,\n },\n {\n id: \"tinan-testimonials-description\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(\n settings?.description ||\n \"Khám phá những câu chuyện, kiến thức và cập nhật mới nhất về nghệ thuật sơn mài\"\n ),\n },\n style: {\n fontSize: \"base\",\n color: \"#6B5344\",\n textAlign: \"center\",\n },\n\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Tinan Contact CTA section has component instances\n */\nexport function ensureTinanContactCtaComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"contact-cta-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"Liên hệ ngay cho chúng tôi\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"4xl\",\n fontWeight: \"bold\",\n color: \"#FFFFFF\",\n fontStyle: \"italic\",\n },\n\n enabled: true,\n },\n {\n id: \"contact-cta-description\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(\n settings?.description ||\n \"Để lại thông tin để được tư vấn và sắp xếp thi công nhanh chóng, thuận tiện\"\n ),\n },\n style: {\n fontSize: \"base\",\n color: \"rgba(255,255,255,0.9)\",\n },\n\n enabled: true,\n },\n ];\n}\n\n/**\n * Ensure Art Corner section has component instances (Tinan theme)\n */\nexport function ensureArtCornerComponents(\n section: SectionInstance\n): SectionComponentInstance[] {\n if (section.components && section.components.length > 0) {\n return section.components;\n }\n\n const { settings } = section;\n\n return [\n {\n id: \"art-corner-heading\",\n type: \"heading\",\n order: 0,\n content: {\n text: String(settings?.heading || \"Góc Nghệ Thuật\"),\n tag: \"h2\",\n },\n style: {\n fontSize: \"3xl\",\n fontWeight: \"normal\",\n color: \"#722F37\",\n fontFamily: \"serif\",\n textAlign: \"center\",\n },\n\n enabled: true,\n },\n {\n id: \"art-corner-description\",\n type: \"paragraph\",\n order: 1,\n content: {\n text: String(\n settings?.description ||\n \"Khám phá những câu chuyện, kiến thức và cảm hứng từ nghệ thuật sơn mài truyền thống Việt Nam.\"\n ),\n },\n style: {\n fontSize: \"base\",\n color: \"#6B5344\",\n textAlign: \"center\",\n },\n\n enabled: true,\n },\n ];\n}\n","/**\n * Compatibility Layer\n * Legacy exports for backward compatibility with existing theme sections\n * These will be gradually deprecated as themes are refactored\n */\n\nimport { useAuth } from \"./features/auth\";\nimport { useContact } from \"./features/contact\";\nimport { useBlog } from \"./features/blog\";\nimport { useFinance } from \"./features/finance\";\n\n/**\n * Legacy useLogout hook - wraps useAuth\n * @deprecated Use useAuth().logout instead\n */\nexport function useLogout() {\n const { logout, isLoading } = useAuth();\n\n return {\n handleLogout: logout,\n loading: isLoading,\n };\n}\n\n/**\n * Legacy getAuthToken utility\n * @deprecated Use useAuth state instead\n */\nexport function getAuthToken(): Record<string, unknown> | string | null {\n // Return from localStorage for backward compatibility\n if (typeof window === \"undefined\") return null;\n\n const token = localStorage.getItem(\"auth_token\");\n if (!token) return null;\n\n try {\n // Try to get stored user data\n const userData = localStorage.getItem(\"user_data\");\n if (userData) {\n const user = JSON.parse(userData) as Record<string, unknown>;\n return {\n Token: token,\n Username: (user.email as string) || (user.name as string) || \"\",\n UserAttributes: user,\n };\n }\n\n return { Token: token };\n } catch {\n return { Token: token };\n }\n}\n\n/**\n * Legacy authApi object\n * @deprecated Use AuthService via useAuth hook instead\n */\nexport const authApi = {\n async getInfo(accessToken: string, idToken: string, username: string) {\n // This is a compatibility shim - real implementation should use AuthService\n console.warn(\n \"[OneX Compat] authApi.getInfo is deprecated. Use useAuth instead.\"\n );\n\n // Try to return user from useAuth state\n const userData =\n typeof window !== \"undefined\" ? localStorage.getItem(\"user_data\") : null;\n if (userData) {\n return JSON.parse(userData);\n }\n\n return {\n name: username,\n email: username,\n };\n },\n};\n\n/**\n * Legacy contactApi object\n * @deprecated Use useContact hook instead\n */\nexport const contactApi = {\n async submit(payload: Record<string, unknown>) {\n console.warn(\n \"[OneX Compat] contactApi.submit is deprecated. Use useContact instead.\"\n );\n const { submitContactForm } = useContact.getState();\n return await submitContactForm(payload as Parameters<typeof submitContactForm>[0]);\n },\n};\n\n/**\n * Legacy blogApi object\n * @deprecated Use useBlog hook instead\n */\nexport const blogApi = {\n async getById(blogId: string) {\n console.warn(\n \"[OneX Compat] blogApi.getById is deprecated. Use useBlog instead.\"\n );\n const { fetchBlogById } = useBlog.getState();\n await fetchBlogById(blogId);\n return useBlog.getState().currentBlog;\n },\n\n async getBySlug(slug: string) {\n console.warn(\n \"[OneX Compat] blogApi.getBySlug is deprecated. Use useBlog instead.\"\n );\n const { fetchBlogBySlug } = useBlog.getState();\n await fetchBlogBySlug(slug);\n return useBlog.getState().currentBlog;\n },\n};\n\n/**\n * Legacy financeApi object\n * @deprecated Use useFinance hook instead\n */\nexport const financeApi = {\n async createQrCode(payload: Record<string, unknown>) {\n console.warn(\n \"[OneX Compat] financeApi.createQrCode is deprecated. Use useFinance instead.\"\n );\n const { createQrCode } = useFinance.getState();\n return await createQrCode(payload as Parameters<typeof createQrCode>[0]);\n },\n};\n\n/**\n * Legacy config object\n * @deprecated Use OnexConfig passed to initializeOnex instead\n */\nexport const config = {\n get apiUrl(): string {\n console.warn(\n \"[OneX Compat] config.apiUrl is deprecated. Pass config to initializeOnex instead.\"\n );\n return process.env.NEXT_PUBLIC_API_URL || \"\";\n },\n\n get companyId(): string {\n console.warn(\n \"[OneX Compat] config.companyId is deprecated. Pass config to initializeOnex instead.\"\n );\n return process.env.NEXT_PUBLIC_API_COMPANY_ID || \"\";\n },\n\n get apiCompanyId(): string {\n return this.companyId;\n },\n\n get baseUrl(): string {\n return this.apiUrl;\n },\n};\n","/**\n * Temporary Stubs\n * Placeholder implementations for features not yet fully implemented\n * These will be replaced with real implementations in future updates\n */\n\n/**\n * Stub: payOrder function\n * @deprecated This is a temporary stub. Use useOrders().payOrder() instead\n */\nexport async function payOrder(\n _orderId: string,\n _paymentData?: Record<string, unknown>\n): Promise<Record<string, unknown>> {\n console.warn(\n \"[OneX Stub] payOrder is a temporary stub. Use useOrders().payOrder() instead.\"\n );\n throw new Error(\n \"payOrder not yet implemented. Use useOrders().payOrder() instead.\"\n );\n}\n\n/**\n * Stub: useLocations hook\n * @deprecated This is a temporary stub. Locations feature will be added in future update.\n */\nexport function useLocations() {\n console.warn(\"[OneX Stub] useLocations is not yet implemented.\");\n return {\n locations: [] as Array<{ id: string; name: string; [key: string]: unknown }>,\n isLoading: false,\n error: null,\n };\n}\n\n/**\n * Stub: useCheckInventory hook\n * @deprecated This is a temporary stub. Inventory feature will be added in future update.\n */\nexport function useCheckInventory(_options?: {\n variants?: unknown[];\n locations?: unknown[];\n selectedLocationId?: string | null;\n options?: unknown[];\n sizes?: unknown[];\n selectedSize?: string | null;\n colors?: unknown[];\n selectedColor?: string | null;\n}) {\n console.warn(\"[OneX Stub] useCheckInventory is not yet implemented.\");\n return {\n checkInventory: async () => ({ available: true, quantity: 0 }),\n isVariantAvailable: (_variant?: unknown) => true,\n getAvailableStock: (_variant?: unknown) => 0,\n checkIsOutOfStock: () => false,\n findMatchingVariant: (_option1?: string, _option2?: string): unknown => null,\n getFirstAvailableVariant: (): unknown => null,\n isLoading: false,\n error: null,\n };\n}\n\n/**\n * Stub: ProductsList component\n * @deprecated This is a temporary stub. Use product display components from themes instead.\n */\nexport function ProductsList(_props: Record<string, unknown>) {\n console.warn(\"[OneX Stub] ProductsList is not yet implemented.\");\n return null;\n}\n\n/**\n * Stub: SVG animation data\n * @deprecated These are temporary stubs for SVG animations\n */\nexport const sen_data: string[] = [];\nexport const sen_data_up: string[] = [];\n"]}
package/dist/motion.js ADDED
@@ -0,0 +1,51 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ require('./chunk-2NMEKWO5.js');
5
+ var framerMotion = require('framer-motion');
6
+
7
+ var fadeIn = {
8
+ initial: { opacity: 0 },
9
+ animate: { opacity: 1 },
10
+ exit: { opacity: 0 }
11
+ };
12
+ var slideUp = {
13
+ initial: { opacity: 0, y: 20 },
14
+ animate: { opacity: 1, y: 0 },
15
+ exit: { opacity: 0, y: -20 }
16
+ };
17
+ var slideDown = {
18
+ initial: { opacity: 0, y: -20 },
19
+ animate: { opacity: 1, y: 0 },
20
+ exit: { opacity: 0, y: 20 }
21
+ };
22
+ var scaleIn = {
23
+ initial: { opacity: 0, scale: 0.9 },
24
+ animate: { opacity: 1, scale: 1 },
25
+ exit: { opacity: 0, scale: 0.9 }
26
+ };
27
+ var slideInLeft = {
28
+ initial: { opacity: 0, x: -20 },
29
+ animate: { opacity: 1, x: 0 },
30
+ exit: { opacity: 0, x: 20 }
31
+ };
32
+ var slideInRight = {
33
+ initial: { opacity: 0, x: 20 },
34
+ animate: { opacity: 1, x: 0 },
35
+ exit: { opacity: 0, x: -20 }
36
+ };
37
+
38
+ exports.fadeIn = fadeIn;
39
+ exports.scaleIn = scaleIn;
40
+ exports.slideDown = slideDown;
41
+ exports.slideInLeft = slideInLeft;
42
+ exports.slideInRight = slideInRight;
43
+ exports.slideUp = slideUp;
44
+ Object.keys(framerMotion).forEach(function (k) {
45
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
46
+ enumerable: true,
47
+ get: function () { return framerMotion[k]; }
48
+ });
49
+ });
50
+ //# sourceMappingURL=motion.js.map
51
+ //# sourceMappingURL=motion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/wrappers/motion/index.ts"],"names":[],"mappings":";;;;;AA0BO,IAAM,MAAA,GAAS;AAAA,EACpB,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAE;AAAA,EACtB,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAE;AAAA,EACtB,IAAA,EAAM,EAAE,OAAA,EAAS,CAAA;AACnB;AAEO,IAAM,OAAA,GAAU;AAAA,EACrB,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,EAAA,EAAG;AAAA,EAC7B,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,CAAA,EAAE;AAAA,EAC5B,IAAA,EAAM,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,GAAA;AACzB;AAEO,IAAM,SAAA,GAAY;AAAA,EACvB,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,GAAA,EAAI;AAAA,EAC9B,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,CAAA,EAAE;AAAA,EAC5B,IAAA,EAAM,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,EAAA;AACzB;AAEO,IAAM,OAAA,GAAU;AAAA,EACrB,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,OAAO,GAAA,EAAI;AAAA,EAClC,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,OAAO,CAAA,EAAE;AAAA,EAChC,IAAA,EAAM,EAAE,OAAA,EAAS,CAAA,EAAG,OAAO,GAAA;AAC7B;AAEO,IAAM,WAAA,GAAc;AAAA,EACzB,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,GAAA,EAAI;AAAA,EAC9B,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,CAAA,EAAE;AAAA,EAC5B,IAAA,EAAM,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,EAAA;AACzB;AAEO,IAAM,YAAA,GAAe;AAAA,EAC1B,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,EAAA,EAAG;AAAA,EAC7B,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,CAAA,EAAE;AAAA,EAC5B,IAAA,EAAM,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,GAAA;AACzB","file":"motion.js","sourcesContent":["/**\n * Animation library re-export\n *\n * Re-exports framer-motion through @duongthiu/onex-core\n * to ensure single installation and version consistency.\n *\n * @public\n * @example\n * ```tsx\n * import { motion, AnimatePresence } from '@duongthiu/onex-core/motion';\n *\n * <motion.div\n * initial={{ opacity: 0 }}\n * animate={{ opacity: 1 }}\n * >\n * Content\n * </motion.div>\n * ```\n */\n\n\"use client\";\n\n// Re-export everything from framer-motion\nexport * from \"framer-motion\";\n\n// Common animation variants for theme developers\nexport const fadeIn = {\n initial: { opacity: 0 },\n animate: { opacity: 1 },\n exit: { opacity: 0 },\n};\n\nexport const slideUp = {\n initial: { opacity: 0, y: 20 },\n animate: { opacity: 1, y: 0 },\n exit: { opacity: 0, y: -20 },\n};\n\nexport const slideDown = {\n initial: { opacity: 0, y: -20 },\n animate: { opacity: 1, y: 0 },\n exit: { opacity: 0, y: 20 },\n};\n\nexport const scaleIn = {\n initial: { opacity: 0, scale: 0.9 },\n animate: { opacity: 1, scale: 1 },\n exit: { opacity: 0, scale: 0.9 },\n};\n\nexport const slideInLeft = {\n initial: { opacity: 0, x: -20 },\n animate: { opacity: 1, x: 0 },\n exit: { opacity: 0, x: 20 },\n};\n\nexport const slideInRight = {\n initial: { opacity: 0, x: 20 },\n animate: { opacity: 1, x: 0 },\n exit: { opacity: 0, x: -20 },\n};\n"]}
@@ -0,0 +1,38 @@
1
+ "use client";
2
+ import './chunk-YOSPWY5K.mjs';
3
+ export * from 'framer-motion';
4
+
5
+ var fadeIn = {
6
+ initial: { opacity: 0 },
7
+ animate: { opacity: 1 },
8
+ exit: { opacity: 0 }
9
+ };
10
+ var slideUp = {
11
+ initial: { opacity: 0, y: 20 },
12
+ animate: { opacity: 1, y: 0 },
13
+ exit: { opacity: 0, y: -20 }
14
+ };
15
+ var slideDown = {
16
+ initial: { opacity: 0, y: -20 },
17
+ animate: { opacity: 1, y: 0 },
18
+ exit: { opacity: 0, y: 20 }
19
+ };
20
+ var scaleIn = {
21
+ initial: { opacity: 0, scale: 0.9 },
22
+ animate: { opacity: 1, scale: 1 },
23
+ exit: { opacity: 0, scale: 0.9 }
24
+ };
25
+ var slideInLeft = {
26
+ initial: { opacity: 0, x: -20 },
27
+ animate: { opacity: 1, x: 0 },
28
+ exit: { opacity: 0, x: 20 }
29
+ };
30
+ var slideInRight = {
31
+ initial: { opacity: 0, x: 20 },
32
+ animate: { opacity: 1, x: 0 },
33
+ exit: { opacity: 0, x: -20 }
34
+ };
35
+
36
+ export { fadeIn, scaleIn, slideDown, slideInLeft, slideInRight, slideUp };
37
+ //# sourceMappingURL=motion.mjs.map
38
+ //# sourceMappingURL=motion.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/wrappers/motion/index.ts"],"names":[],"mappings":";;;AA0BO,IAAM,MAAA,GAAS;AAAA,EACpB,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAE;AAAA,EACtB,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAE;AAAA,EACtB,IAAA,EAAM,EAAE,OAAA,EAAS,CAAA;AACnB;AAEO,IAAM,OAAA,GAAU;AAAA,EACrB,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,EAAA,EAAG;AAAA,EAC7B,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,CAAA,EAAE;AAAA,EAC5B,IAAA,EAAM,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,GAAA;AACzB;AAEO,IAAM,SAAA,GAAY;AAAA,EACvB,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,GAAA,EAAI;AAAA,EAC9B,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,CAAA,EAAE;AAAA,EAC5B,IAAA,EAAM,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,EAAA;AACzB;AAEO,IAAM,OAAA,GAAU;AAAA,EACrB,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,OAAO,GAAA,EAAI;AAAA,EAClC,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,OAAO,CAAA,EAAE;AAAA,EAChC,IAAA,EAAM,EAAE,OAAA,EAAS,CAAA,EAAG,OAAO,GAAA;AAC7B;AAEO,IAAM,WAAA,GAAc;AAAA,EACzB,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,GAAA,EAAI;AAAA,EAC9B,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,CAAA,EAAE;AAAA,EAC5B,IAAA,EAAM,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,EAAA;AACzB;AAEO,IAAM,YAAA,GAAe;AAAA,EAC1B,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,EAAA,EAAG;AAAA,EAC7B,OAAA,EAAS,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,CAAA,EAAE;AAAA,EAC5B,IAAA,EAAM,EAAE,OAAA,EAAS,CAAA,EAAG,GAAG,GAAA;AACzB","file":"motion.mjs","sourcesContent":["/**\n * Animation library re-export\n *\n * Re-exports framer-motion through @duongthiu/onex-core\n * to ensure single installation and version consistency.\n *\n * @public\n * @example\n * ```tsx\n * import { motion, AnimatePresence } from '@duongthiu/onex-core/motion';\n *\n * <motion.div\n * initial={{ opacity: 0 }}\n * animate={{ opacity: 1 }}\n * >\n * Content\n * </motion.div>\n * ```\n */\n\n\"use client\";\n\n// Re-export everything from framer-motion\nexport * from \"framer-motion\";\n\n// Common animation variants for theme developers\nexport const fadeIn = {\n initial: { opacity: 0 },\n animate: { opacity: 1 },\n exit: { opacity: 0 },\n};\n\nexport const slideUp = {\n initial: { opacity: 0, y: 20 },\n animate: { opacity: 1, y: 0 },\n exit: { opacity: 0, y: -20 },\n};\n\nexport const slideDown = {\n initial: { opacity: 0, y: -20 },\n animate: { opacity: 1, y: 0 },\n exit: { opacity: 0, y: 20 },\n};\n\nexport const scaleIn = {\n initial: { opacity: 0, scale: 0.9 },\n animate: { opacity: 1, scale: 1 },\n exit: { opacity: 0, scale: 0.9 },\n};\n\nexport const slideInLeft = {\n initial: { opacity: 0, x: -20 },\n animate: { opacity: 1, x: 0 },\n exit: { opacity: 0, x: 20 },\n};\n\nexport const slideInRight = {\n initial: { opacity: 0, x: 20 },\n animate: { opacity: 1, x: 0 },\n exit: { opacity: 0, x: -20 },\n};\n"]}
package/dist/orders.js ADDED
@@ -0,0 +1,22 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ var chunkP7SXNZSV_js = require('./chunk-P7SXNZSV.js');
5
+ require('./chunk-2NMEKWO5.js');
6
+
7
+
8
+
9
+ Object.defineProperty(exports, "OrdersService", {
10
+ enumerable: true,
11
+ get: function () { return chunkP7SXNZSV_js.OrdersService; }
12
+ });
13
+ Object.defineProperty(exports, "initializeOrdersService", {
14
+ enumerable: true,
15
+ get: function () { return chunkP7SXNZSV_js.initializeOrdersService; }
16
+ });
17
+ Object.defineProperty(exports, "useOrders", {
18
+ enumerable: true,
19
+ get: function () { return chunkP7SXNZSV_js.useOrders; }
20
+ });
21
+ //# sourceMappingURL=orders.js.map
22
+ //# sourceMappingURL=orders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"orders.js"}
@@ -0,0 +1,5 @@
1
+ "use client";
2
+ export { OrdersService, initializeOrdersService, useOrders } from './chunk-T6EJ2GAV.mjs';
3
+ import './chunk-YOSPWY5K.mjs';
4
+ //# sourceMappingURL=orders.mjs.map
5
+ //# sourceMappingURL=orders.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"orders.mjs"}
@@ -0,0 +1,27 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ var chunkOWNGNGKL_js = require('./chunk-OWNGNGKL.js');
5
+ require('./chunk-VJA3ER6A.js');
6
+ require('./chunk-2NMEKWO5.js');
7
+
8
+
9
+
10
+ Object.defineProperty(exports, "ProductCard", {
11
+ enumerable: true,
12
+ get: function () { return chunkOWNGNGKL_js.ProductCard; }
13
+ });
14
+ Object.defineProperty(exports, "ProductsService", {
15
+ enumerable: true,
16
+ get: function () { return chunkOWNGNGKL_js.ProductsService; }
17
+ });
18
+ Object.defineProperty(exports, "initializeProductsService", {
19
+ enumerable: true,
20
+ get: function () { return chunkOWNGNGKL_js.initializeProductsService; }
21
+ });
22
+ Object.defineProperty(exports, "useProducts", {
23
+ enumerable: true,
24
+ get: function () { return chunkOWNGNGKL_js.useProducts; }
25
+ });
26
+ //# sourceMappingURL=products.js.map
27
+ //# sourceMappingURL=products.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"products.js"}
@@ -0,0 +1,6 @@
1
+ "use client";
2
+ export { ProductCard, ProductsService, initializeProductsService, useProducts } from './chunk-ULBDOFZI.mjs';
3
+ import './chunk-O3XR7TW3.mjs';
4
+ import './chunk-YOSPWY5K.mjs';
5
+ //# sourceMappingURL=products.mjs.map
6
+ //# sourceMappingURL=products.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"products.mjs"}
@@ -0,0 +1,44 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ var chunkPPULMWJ6_js = require('./chunk-PPULMWJ6.js');
5
+ var chunkOVT2LUAM_js = require('./chunk-OVT2LUAM.js');
6
+ var chunkJ27VGXJH_js = require('./chunk-J27VGXJH.js');
7
+ require('./chunk-2NMEKWO5.js');
8
+
9
+
10
+
11
+ Object.defineProperty(exports, "ComponentRegistry", {
12
+ enumerable: true,
13
+ get: function () { return chunkPPULMWJ6_js.ComponentRegistry; }
14
+ });
15
+ Object.defineProperty(exports, "blockRegistry", {
16
+ enumerable: true,
17
+ get: function () { return chunkPPULMWJ6_js.blockRegistry; }
18
+ });
19
+ Object.defineProperty(exports, "componentRegistry", {
20
+ enumerable: true,
21
+ get: function () { return chunkPPULMWJ6_js.componentRegistry; }
22
+ });
23
+ Object.defineProperty(exports, "createBlockRegistry", {
24
+ enumerable: true,
25
+ get: function () { return chunkPPULMWJ6_js.createBlockRegistry; }
26
+ });
27
+ Object.defineProperty(exports, "ThemeRegistryManager", {
28
+ enumerable: true,
29
+ get: function () { return chunkOVT2LUAM_js.ThemeRegistryManager; }
30
+ });
31
+ Object.defineProperty(exports, "themeRegistryManager", {
32
+ enumerable: true,
33
+ get: function () { return chunkOVT2LUAM_js.themeRegistryManager; }
34
+ });
35
+ Object.defineProperty(exports, "createSectionRegistry", {
36
+ enumerable: true,
37
+ get: function () { return chunkJ27VGXJH_js.createSectionRegistry; }
38
+ });
39
+ Object.defineProperty(exports, "sectionRegistry", {
40
+ enumerable: true,
41
+ get: function () { return chunkJ27VGXJH_js.sectionRegistry; }
42
+ });
43
+ //# sourceMappingURL=registry.js.map
44
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"registry.js"}
@@ -0,0 +1,7 @@
1
+ "use client";
2
+ export { ComponentRegistry, blockRegistry, componentRegistry, createBlockRegistry } from './chunk-4JVQJI3I.mjs';
3
+ export { ThemeRegistryManager, themeRegistryManager } from './chunk-WFGS5OFH.mjs';
4
+ export { createSectionRegistry, sectionRegistry } from './chunk-ONJREDYY.mjs';
5
+ import './chunk-YOSPWY5K.mjs';
6
+ //# sourceMappingURL=registry.mjs.map
7
+ //# sourceMappingURL=registry.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"registry.mjs"}
@@ -0,0 +1,51 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ var chunkRGIVKACG_js = require('./chunk-RGIVKACG.js');
5
+ require('./chunk-PPULMWJ6.js');
6
+ require('./chunk-2NMEKWO5.js');
7
+
8
+
9
+
10
+ Object.defineProperty(exports, "BlockListRenderer", {
11
+ enumerable: true,
12
+ get: function () { return chunkRGIVKACG_js.BlockListRenderer; }
13
+ });
14
+ Object.defineProperty(exports, "BlockRenderer", {
15
+ enumerable: true,
16
+ get: function () { return chunkRGIVKACG_js.BlockRenderer; }
17
+ });
18
+ Object.defineProperty(exports, "ComponentListRenderer", {
19
+ enumerable: true,
20
+ get: function () { return chunkRGIVKACG_js.ComponentListRenderer; }
21
+ });
22
+ Object.defineProperty(exports, "ComponentRenderer", {
23
+ enumerable: true,
24
+ get: function () { return chunkRGIVKACG_js.ComponentRenderer; }
25
+ });
26
+ Object.defineProperty(exports, "SectionListRenderer", {
27
+ enumerable: true,
28
+ get: function () { return chunkRGIVKACG_js.SectionListRenderer; }
29
+ });
30
+ Object.defineProperty(exports, "SectionRenderer", {
31
+ enumerable: true,
32
+ get: function () { return chunkRGIVKACG_js.SectionRenderer; }
33
+ });
34
+ Object.defineProperty(exports, "renderBlock", {
35
+ enumerable: true,
36
+ get: function () { return chunkRGIVKACG_js.renderBlock; }
37
+ });
38
+ Object.defineProperty(exports, "renderSection", {
39
+ enumerable: true,
40
+ get: function () { return chunkRGIVKACG_js.renderSection; }
41
+ });
42
+ Object.defineProperty(exports, "useComponentInstance", {
43
+ enumerable: true,
44
+ get: function () { return chunkRGIVKACG_js.useComponentInstance; }
45
+ });
46
+ Object.defineProperty(exports, "useComponentRegistration", {
47
+ enumerable: true,
48
+ get: function () { return chunkRGIVKACG_js.useComponentRegistration; }
49
+ });
50
+ //# sourceMappingURL=renderers.js.map
51
+ //# sourceMappingURL=renderers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"renderers.js"}
@@ -0,0 +1,6 @@
1
+ "use client";
2
+ export { BlockListRenderer, BlockRenderer, ComponentListRenderer, ComponentRenderer, SectionListRenderer, SectionRenderer, renderBlock, renderSection, useComponentInstance, useComponentRegistration } from './chunk-KCQGGU5R.mjs';
3
+ import './chunk-4JVQJI3I.mjs';
4
+ import './chunk-YOSPWY5K.mjs';
5
+ //# sourceMappingURL=renderers.mjs.map
6
+ //# sourceMappingURL=renderers.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"renderers.mjs"}