@qwickapps/react-framework 1.4.8 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (730) hide show
  1. package/README.md +36 -3
  2. package/dist/__tests__/schemas/transformers/MockSerializableComponent.d.ts +9 -9
  3. package/dist/__tests__/schemas/transformers/MockSerializableComponent.d.ts.map +1 -1
  4. package/dist/components/AccessibilityProvider.d.ts +1 -1
  5. package/dist/components/AccessibilityProvider.d.ts.map +1 -1
  6. package/dist/components/ErrorBoundary.d.ts +1 -1
  7. package/dist/components/Html.d.ts +8 -8
  8. package/dist/components/Html.d.ts.map +1 -1
  9. package/dist/components/Logo.d.ts +2 -2
  10. package/dist/components/Logo.d.ts.map +1 -1
  11. package/dist/components/Markdown.d.ts +5 -5
  12. package/dist/components/Markdown.d.ts.map +1 -1
  13. package/dist/components/ProductLogo.d.ts +60 -0
  14. package/dist/components/ProductLogo.d.ts.map +1 -0
  15. package/dist/components/QwickAppsLogo.d.ts +1 -1
  16. package/dist/components/QwickAppsLogo.d.ts.map +1 -1
  17. package/dist/components/ResponsiveMenu.d.ts.map +1 -1
  18. package/dist/components/SafeSpan.d.ts +4 -4
  19. package/dist/components/SafeSpan.d.ts.map +1 -1
  20. package/dist/components/Scaffold.d.ts.map +1 -1
  21. package/dist/components/base/Container.d.ts +3 -2
  22. package/dist/components/base/Container.d.ts.map +1 -1
  23. package/dist/components/base/ModelView.d.ts +16 -16
  24. package/dist/components/base/ModelView.d.ts.map +1 -1
  25. package/dist/components/base/index.d.ts +1 -1
  26. package/dist/components/base/index.d.ts.map +1 -1
  27. package/dist/components/blocks/Article.d.ts +4 -18
  28. package/dist/components/blocks/Article.d.ts.map +1 -1
  29. package/dist/components/blocks/CardListGrid.d.ts +3 -3
  30. package/dist/components/blocks/CardListGrid.d.ts.map +1 -1
  31. package/dist/components/blocks/Code.d.ts +5 -31
  32. package/dist/components/blocks/Code.d.ts.map +1 -1
  33. package/dist/components/blocks/Content.d.ts +2 -17
  34. package/dist/components/blocks/Content.d.ts.map +1 -1
  35. package/dist/components/blocks/CoverImageHeader.d.ts +2 -12
  36. package/dist/components/blocks/CoverImageHeader.d.ts.map +1 -1
  37. package/dist/components/blocks/FeatureCard.d.ts +0 -17
  38. package/dist/components/blocks/FeatureCard.d.ts.map +1 -1
  39. package/dist/components/blocks/FeatureGrid.d.ts.map +1 -1
  40. package/dist/components/blocks/Footer.d.ts +2 -14
  41. package/dist/components/blocks/Footer.d.ts.map +1 -1
  42. package/dist/components/blocks/HeroBlock.d.ts +35 -26
  43. package/dist/components/blocks/HeroBlock.d.ts.map +1 -1
  44. package/dist/components/blocks/Image.d.ts +23 -23
  45. package/dist/components/blocks/Image.d.ts.map +1 -1
  46. package/dist/components/blocks/PageBannerHeader.d.ts +2 -13
  47. package/dist/components/blocks/PageBannerHeader.d.ts.map +1 -1
  48. package/dist/components/blocks/ProductCard.d.ts +0 -9
  49. package/dist/components/blocks/ProductCard.d.ts.map +1 -1
  50. package/dist/components/blocks/Section.d.ts +16 -24
  51. package/dist/components/blocks/Section.d.ts.map +1 -1
  52. package/dist/components/blocks/Text.d.ts +5 -20
  53. package/dist/components/blocks/Text.d.ts.map +1 -1
  54. package/dist/components/buttons/Button.d.ts +19 -23
  55. package/dist/components/buttons/Button.d.ts.map +1 -1
  56. package/dist/components/buttons/PaletteSwitcher.d.ts +2 -2
  57. package/dist/components/buttons/PaletteSwitcher.d.ts.map +1 -1
  58. package/dist/components/buttons/ThemeSwitcher.d.ts +2 -2
  59. package/dist/components/buttons/ThemeSwitcher.d.ts.map +1 -1
  60. package/dist/components/dialogs/Dialog.d.ts +35 -0
  61. package/dist/components/dialogs/Dialog.d.ts.map +1 -0
  62. package/dist/components/dialogs/index.d.ts +8 -0
  63. package/dist/components/dialogs/index.d.ts.map +1 -0
  64. package/dist/components/forms/Captcha.d.ts +55 -0
  65. package/dist/components/forms/Captcha.d.ts.map +1 -0
  66. package/dist/components/forms/FormBlock.d.ts +6 -6
  67. package/dist/components/forms/FormBlock.d.ts.map +1 -1
  68. package/dist/components/forms/FormCheckbox.d.ts +27 -0
  69. package/dist/components/forms/FormCheckbox.d.ts.map +1 -0
  70. package/dist/components/forms/FormField.d.ts +43 -0
  71. package/dist/components/forms/FormField.d.ts.map +1 -0
  72. package/dist/components/forms/FormSelect.d.ts +35 -0
  73. package/dist/components/forms/FormSelect.d.ts.map +1 -0
  74. package/dist/components/forms/index.d.ts +8 -0
  75. package/dist/components/forms/index.d.ts.map +1 -1
  76. package/dist/components/index.d.ts +10 -2
  77. package/dist/components/index.d.ts.map +1 -1
  78. package/dist/components/input/ChoiceInputField.d.ts +13 -19
  79. package/dist/components/input/ChoiceInputField.d.ts.map +1 -1
  80. package/dist/components/input/HtmlInputField.d.ts +16 -17
  81. package/dist/components/input/HtmlInputField.d.ts.map +1 -1
  82. package/dist/components/input/SelectInputField.d.ts +14 -17
  83. package/dist/components/input/SelectInputField.d.ts.map +1 -1
  84. package/dist/components/input/SwitchInputField.d.ts +11 -18
  85. package/dist/components/input/SwitchInputField.d.ts.map +1 -1
  86. package/dist/components/input/TextInputField.d.ts +16 -19
  87. package/dist/components/input/TextInputField.d.ts.map +1 -1
  88. package/dist/components/layout/CollapsibleLayout/CollapsibleLayout.d.ts.map +1 -1
  89. package/dist/components/layout/GridCell.d.ts +18 -19
  90. package/dist/components/layout/GridCell.d.ts.map +1 -1
  91. package/dist/components/layout/GridLayout.d.ts +36 -25
  92. package/dist/components/layout/GridLayout.d.ts.map +1 -1
  93. package/dist/components/menu/MenuItem.d.ts +2 -2
  94. package/dist/components/menu/MenuItem.d.ts.map +1 -1
  95. package/dist/components/pages/FormPage.d.ts.map +1 -1
  96. package/dist/components/pages/Page.d.ts +1 -1
  97. package/dist/components/pages/Page.d.ts.map +1 -1
  98. package/dist/components/shared/createSerializableView.d.ts +22 -10
  99. package/dist/components/shared/createSerializableView.d.ts.map +1 -1
  100. package/dist/components/shared/viewProps.d.ts +3 -3
  101. package/dist/components/shared/viewProps.d.ts.map +1 -1
  102. package/dist/config/AppConfig.d.ts +2 -2
  103. package/dist/config/AppConfig.d.ts.map +1 -1
  104. package/dist/config/types.d.ts +1 -1
  105. package/dist/config/types.d.ts.map +1 -1
  106. package/dist/contexts/DataContext.d.ts +3 -3
  107. package/dist/contexts/DataContext.d.ts.map +1 -1
  108. package/dist/contexts/PaletteContext.d.ts.map +1 -1
  109. package/dist/contexts/ThemeContext.d.ts.map +1 -1
  110. package/dist/hooks/useDataBinding.d.ts +2 -2
  111. package/dist/hooks/useDataBinding.d.ts.map +1 -1
  112. package/dist/hooks/usePrintMode.d.ts +2 -2
  113. package/dist/hooks/usePrintMode.d.ts.map +1 -1
  114. package/dist/index.css +1 -1
  115. package/dist/index.d.ts.map +1 -1
  116. package/dist/index.esm.css +1 -1
  117. package/dist/index.esm.js +4929 -2942
  118. package/dist/index.js +4426 -2410
  119. package/dist/palettes/manifest.json +90 -0
  120. package/dist/palettes/palette-autumn.1.4.9.min.css +1 -0
  121. package/dist/palettes/palette-autumn.1.5.0.css +172 -0
  122. package/dist/palettes/palette-autumn.1.5.0.min.css +1 -0
  123. package/dist/palettes/palette-autumn.latest.css +172 -0
  124. package/dist/palettes/palette-autumn.latest.min.css +1 -0
  125. package/dist/palettes/palette-cosmic.1.4.9.min.css +1 -0
  126. package/dist/palettes/palette-cosmic.1.5.0.css +172 -0
  127. package/dist/palettes/palette-cosmic.1.5.0.min.css +1 -0
  128. package/dist/palettes/palette-cosmic.latest.css +172 -0
  129. package/dist/palettes/palette-cosmic.latest.min.css +1 -0
  130. package/dist/palettes/palette-default.1.4.9.min.css +1 -0
  131. package/dist/palettes/palette-default.1.5.0.css +178 -0
  132. package/dist/palettes/palette-default.1.5.0.min.css +1 -0
  133. package/dist/palettes/palette-default.latest.css +178 -0
  134. package/dist/palettes/palette-default.latest.min.css +1 -0
  135. package/dist/palettes/palette-ocean.1.4.9.min.css +1 -0
  136. package/dist/palettes/palette-ocean.1.5.0.css +172 -0
  137. package/dist/palettes/palette-ocean.1.5.0.min.css +1 -0
  138. package/dist/palettes/palette-ocean.latest.css +172 -0
  139. package/dist/palettes/palette-ocean.latest.min.css +1 -0
  140. package/dist/palettes/palette-spring.1.4.9.min.css +1 -0
  141. package/dist/palettes/palette-spring.1.5.0.css +160 -0
  142. package/dist/palettes/palette-spring.1.5.0.min.css +1 -0
  143. package/dist/palettes/palette-spring.latest.css +160 -0
  144. package/dist/palettes/palette-spring.latest.min.css +1 -0
  145. package/dist/palettes/palette-winter.1.4.9.min.css +1 -0
  146. package/dist/palettes/palette-winter.1.5.0.css +172 -0
  147. package/dist/palettes/palette-winter.1.5.0.min.css +1 -0
  148. package/dist/palettes/palette-winter.latest.css +172 -0
  149. package/dist/palettes/palette-winter.latest.min.css +1 -0
  150. package/dist/schemas/ButtonSchema.d.ts +5 -2
  151. package/dist/schemas/ButtonSchema.d.ts.map +1 -1
  152. package/dist/schemas/CardListGridSchema.d.ts +4 -4
  153. package/dist/schemas/CardListGridSchema.d.ts.map +1 -1
  154. package/dist/schemas/ChoiceInputFieldSchema.d.ts +2 -2
  155. package/dist/schemas/ChoiceInputFieldSchema.d.ts.map +1 -1
  156. package/dist/schemas/CodeSchema.d.ts +1 -2
  157. package/dist/schemas/CodeSchema.d.ts.map +1 -1
  158. package/dist/schemas/FormBlockSchema.d.ts +2 -2
  159. package/dist/schemas/FormBlockSchema.d.ts.map +1 -1
  160. package/dist/schemas/GridCellSchema.d.ts +2 -4
  161. package/dist/schemas/GridCellSchema.d.ts.map +1 -1
  162. package/dist/schemas/GridLayoutSchema.d.ts +3 -5
  163. package/dist/schemas/GridLayoutSchema.d.ts.map +1 -1
  164. package/dist/schemas/HeroBlockSchema.d.ts +2 -2
  165. package/dist/schemas/HeroBlockSchema.d.ts.map +1 -1
  166. package/dist/schemas/HtmlInputFieldSchema.d.ts +2 -2
  167. package/dist/schemas/HtmlInputFieldSchema.d.ts.map +1 -1
  168. package/dist/schemas/ImageSchema.d.ts +2 -2
  169. package/dist/schemas/ImageSchema.d.ts.map +1 -1
  170. package/dist/schemas/SectionSchema.d.ts +2 -4
  171. package/dist/schemas/SectionSchema.d.ts.map +1 -1
  172. package/dist/schemas/SelectInputFieldSchema.d.ts +2 -2
  173. package/dist/schemas/SelectInputFieldSchema.d.ts.map +1 -1
  174. package/dist/schemas/SwitchInputFieldSchema.d.ts +2 -2
  175. package/dist/schemas/SwitchInputFieldSchema.d.ts.map +1 -1
  176. package/dist/schemas/TextInputFieldSchema.d.ts +2 -2
  177. package/dist/schemas/TextInputFieldSchema.d.ts.map +1 -1
  178. package/dist/schemas/ViewSchema.d.ts +8 -7
  179. package/dist/schemas/ViewSchema.d.ts.map +1 -1
  180. package/dist/schemas/transformers/ComponentTransformer.d.ts +2 -2
  181. package/dist/schemas/transformers/ComponentTransformer.d.ts.map +1 -1
  182. package/dist/schemas/transformers/ReactNodeTransformer.d.ts +2 -2
  183. package/dist/schemas/transformers/ReactNodeTransformer.d.ts.map +1 -1
  184. package/dist/schemas/transformers/registry.d.ts +0 -7
  185. package/dist/schemas/transformers/registry.d.ts.map +1 -1
  186. package/dist/schemas/types/Serializable.d.ts +3 -3
  187. package/dist/schemas/types/Serializable.d.ts.map +1 -1
  188. package/dist/stories/_templates/SerializationTemplate.d.ts.map +1 -0
  189. package/dist/types/CollapsibleLayout.d.ts +3 -3
  190. package/dist/types/CollapsibleLayout.d.ts.map +1 -1
  191. package/dist/types/ContentProxy.d.ts +4 -4
  192. package/dist/types/ContentProxy.d.ts.map +1 -1
  193. package/dist/types/DataTypes.d.ts +4 -4
  194. package/dist/types/DataTypes.d.ts.map +1 -1
  195. package/dist/types/TemplateProvider.d.ts +1 -1
  196. package/dist/types/TemplateProvider.d.ts.map +1 -1
  197. package/dist/types/TemplateResolver.d.ts +1 -1
  198. package/dist/types/TemplateResolver.d.ts.map +1 -1
  199. package/dist/utils/htmlTransform.d.ts +1 -1
  200. package/dist/utils/htmlTransform.d.ts.map +1 -1
  201. package/dist/utils/iconMap.d.ts +48 -0
  202. package/dist/utils/iconMap.d.ts.map +1 -0
  203. package/dist/utils/index.d.ts +3 -0
  204. package/dist/utils/index.d.ts.map +1 -1
  205. package/dist/utils/logger.d.ts +11 -7
  206. package/dist/utils/logger.d.ts.map +1 -1
  207. package/dist/utils/paletteLoader.d.ts +34 -0
  208. package/dist/utils/paletteLoader.d.ts.map +1 -0
  209. package/dist/utils/paletteManifest.d.ts +51 -0
  210. package/dist/utils/paletteManifest.d.ts.map +1 -0
  211. package/dist/utils/paletteUtils.d.ts.map +1 -1
  212. package/dist/utils/reactUtils.d.ts +12 -6
  213. package/dist/utils/reactUtils.d.ts.map +1 -1
  214. package/dist/utils/spacing.d.ts +2 -2
  215. package/dist/utils/spacing.d.ts.map +1 -1
  216. package/dist/utils/themePerformanceMonitor.d.ts.map +1 -1
  217. package/dist/utils/themeUtils.d.ts.map +1 -1
  218. package/package.json +28 -9
  219. package/scripts/build-palettes.cjs +120 -0
  220. package/src/__tests__/components/Article.test.tsx +1 -1
  221. package/src/__tests__/components/Breadcrumbs.test.tsx +2 -2
  222. package/src/__tests__/components/Button.test.tsx +3 -3
  223. package/src/__tests__/components/CardListGrid.test.tsx +5 -5
  224. package/src/__tests__/components/ChoiceInputField.test.tsx +2 -2
  225. package/src/__tests__/components/Code.test.tsx +2 -2
  226. package/src/__tests__/components/Content.integration.test.tsx +1 -1
  227. package/src/__tests__/components/Content.test.tsx +5 -5
  228. package/src/__tests__/components/CoverImageHeader.test.tsx +3 -3
  229. package/src/__tests__/components/FeatureCard.integration.test.tsx +1 -1
  230. package/src/__tests__/components/FeatureGrid.integration.test.tsx +1 -1
  231. package/src/__tests__/components/FeatureGrid.test.tsx +3 -3
  232. package/src/__tests__/components/Footer.test.tsx +3 -3
  233. package/src/__tests__/components/FormBlock.test.tsx +2 -2
  234. package/src/__tests__/components/HeroBlock.integration.test.tsx +1 -1
  235. package/src/__tests__/components/HeroBlock.test.tsx +4 -4
  236. package/src/__tests__/components/HtmlInputField.test.tsx +8 -8
  237. package/src/__tests__/components/PageBannerHeader.test.tsx +7 -7
  238. package/src/__tests__/components/PaletteSwitcher.test.tsx +3 -3
  239. package/src/__tests__/components/ProductCard.test.tsx +1 -1
  240. package/src/__tests__/components/Section.integration.test.tsx +1 -1
  241. package/src/__tests__/components/Section.test.tsx +1 -1
  242. package/src/__tests__/components/SelectInputField.test.tsx +2 -2
  243. package/src/__tests__/components/TextInputField.test.tsx +4 -4
  244. package/src/__tests__/components/ThemeSwitcher.test.tsx +3 -3
  245. package/src/__tests__/components/base/Container.test.tsx +22 -21
  246. package/src/__tests__/components/blocks/Code.performance.test.tsx +10 -10
  247. package/src/__tests__/components/blocks/Code.serialization.test.tsx +9 -9
  248. package/src/__tests__/components/blocks/HeroBlock.serialization.test.tsx +2 -3
  249. package/src/__tests__/components/blocks/Image.serialization.test.tsx +8 -7
  250. package/src/__tests__/components/blocks/Section.serialization.test.tsx +8 -8
  251. package/src/__tests__/components/blocks/Text.performance.test.tsx +5 -5
  252. package/src/__tests__/components/blocks/Text.serialization.test.tsx +9 -9
  253. package/src/__tests__/components/buttons/Button.serialization.test.tsx +4 -4
  254. package/src/__tests__/components/input/FormComponents.serialization.test.tsx +9 -9
  255. package/src/__tests__/components/input/SelectInputField.serialization.test.tsx +16 -18
  256. package/src/__tests__/components/input/TextInputField.serialization.test.tsx +9 -9
  257. package/src/__tests__/components/layout/CollapsibleLayout.test.tsx +5 -9
  258. package/src/__tests__/components/layout/GridCell.serialization.test.tsx +5 -5
  259. package/src/__tests__/components/layout/GridLayout.serialization.test.tsx +5 -5
  260. package/src/__tests__/hooks/usePrintMode.test.ts +1 -0
  261. package/src/__tests__/schemas/builders.test.ts +2 -2
  262. package/src/__tests__/schemas/transformers/ComponentSerializationPatterns.test.tsx +28 -28
  263. package/src/__tests__/schemas/transformers/ComponentTransformer.htmlPatterns.test.ts +5 -5
  264. package/src/__tests__/schemas/transformers/ComponentTransformer.test.ts +11 -11
  265. package/src/__tests__/schemas/transformers/CrossBrowserCompatibility.test.ts +10 -10
  266. package/src/__tests__/schemas/transformers/MockSerializableComponent.ts +15 -15
  267. package/src/__tests__/schemas/transformers/RealWorldScenarios.test.tsx +19 -19
  268. package/src/__tests__/schemas/transformers/SerializationErrorHandling.test.ts +15 -15
  269. package/src/__tests__/schemas/transformers/SerializationIntegration.test.tsx +19 -21
  270. package/src/__tests__/schemas/transformers/SerializationPerformance.test.ts +15 -15
  271. package/src/__tests__/schemas/transformers/TestAutomation.test.ts +3 -3
  272. package/src/__tests__/schemas/transformers/nested-serialization.test.tsx +1 -1
  273. package/src/__tests__/schemas/transformers/round-trip-component-serialization.test.tsx +10 -10
  274. package/src/__tests__/utils/optional-logging.test.ts +3 -3
  275. package/src/components/AccessibilityProvider.tsx +4 -2
  276. package/src/components/ErrorBoundary.tsx +1 -1
  277. package/src/components/Html.tsx +14 -17
  278. package/src/components/Logo.tsx +44 -33
  279. package/src/components/Markdown.tsx +9 -9
  280. package/src/components/ProductLogo.tsx +118 -0
  281. package/src/components/QwickApp.css +46 -1063
  282. package/src/components/QwickApp.tsx +1 -1
  283. package/src/components/QwickAppsLogo.tsx +1 -1
  284. package/src/components/ResponsiveMenu.tsx +13 -2
  285. package/src/components/SafeSpan.tsx +8 -9
  286. package/src/components/Scaffold.css +14 -0
  287. package/src/components/Scaffold.tsx +71 -27
  288. package/src/components/base/Container.tsx +2 -2
  289. package/src/components/base/ModelView.tsx +28 -27
  290. package/src/components/base/index.ts +1 -1
  291. package/src/components/blocks/Article.tsx +251 -36
  292. package/src/components/blocks/CardListGrid.tsx +18 -14
  293. package/src/components/blocks/Code.tsx +18 -13
  294. package/src/components/blocks/Content.tsx +15 -10
  295. package/src/components/blocks/CoverImageHeader.tsx +15 -10
  296. package/src/components/blocks/FeatureCard.tsx +16 -11
  297. package/src/components/blocks/FeatureGrid.tsx +13 -8
  298. package/src/components/blocks/Footer.tsx +44 -35
  299. package/src/components/blocks/HeroBlock.tsx +12 -13
  300. package/src/components/blocks/Image.tsx +16 -8
  301. package/src/components/blocks/PageBannerHeader.tsx +16 -12
  302. package/src/components/blocks/ProductCard.tsx +32 -25
  303. package/src/components/blocks/Section.tsx +21 -13
  304. package/src/components/blocks/Text.tsx +33 -15
  305. package/src/components/buttons/Button.tsx +110 -30
  306. package/src/components/buttons/PaletteSwitcher.tsx +11 -8
  307. package/src/components/buttons/ThemeSwitcher.tsx +20 -16
  308. package/src/components/dialogs/Dialog.tsx +126 -0
  309. package/src/components/dialogs/index.ts +15 -0
  310. package/src/components/forms/Captcha.tsx +291 -0
  311. package/src/components/forms/FormBlock.tsx +22 -15
  312. package/src/components/forms/FormCheckbox.tsx +116 -0
  313. package/src/components/forms/FormField.tsx +180 -0
  314. package/src/components/forms/FormSelect.tsx +140 -0
  315. package/src/components/forms/index.ts +13 -1
  316. package/src/components/index.ts +13 -2
  317. package/src/components/input/ChoiceInputField.tsx +1 -2
  318. package/src/components/input/HtmlInputField.tsx +2 -3
  319. package/src/components/input/SelectInputField.tsx +31 -5
  320. package/src/components/input/SwitchInputField.tsx +3 -4
  321. package/src/components/input/TextField.tsx +2 -2
  322. package/src/components/input/TextInputField.tsx +32 -6
  323. package/src/components/layout/CollapsibleLayout/CollapsibleLayout.tsx +13 -13
  324. package/src/components/layout/GridCell.tsx +10 -9
  325. package/src/components/layout/GridCellWrapper.tsx +1 -1
  326. package/src/components/layout/GridLayout.tsx +29 -32
  327. package/src/components/menu/MenuItem.tsx +2 -2
  328. package/src/components/pages/FormPage.tsx +0 -1
  329. package/src/components/pages/Page.tsx +2 -2
  330. package/src/components/shared/createSerializableView.tsx +24 -23
  331. package/src/components/shared/viewProps.ts +11 -11
  332. package/src/config/AppConfig.ts +2 -2
  333. package/src/config/__tests__/AppConfig.test.ts +3 -3
  334. package/src/config/__tests__/AppConfigBuilder.test.ts +10 -11
  335. package/src/config/types.ts +1 -1
  336. package/src/contexts/DataContext.tsx +58 -52
  337. package/src/contexts/PaletteContext.tsx +22 -9
  338. package/src/contexts/PrintModeContext.tsx +4 -4
  339. package/src/contexts/ThemeContext.tsx +3 -2
  340. package/src/hooks/useBaseProps.ts +10 -10
  341. package/src/hooks/useDataBinding.ts +15 -18
  342. package/src/hooks/usePrintMode.ts +3 -3
  343. package/src/index.ts +2 -0
  344. package/src/palettes/manifest.json +72 -0
  345. package/src/palettes/manifest.schema.json +74 -0
  346. package/src/schemas/ButtonSchema.ts +33 -0
  347. package/src/schemas/CardListGridSchema.ts +3 -3
  348. package/src/schemas/CodeSchema.ts +0 -1
  349. package/src/schemas/FeatureGridSchema.ts +1 -1
  350. package/src/schemas/FormBlockSchema.ts +1 -1
  351. package/src/schemas/GridCellSchema.ts +0 -1
  352. package/src/schemas/GridLayoutSchema.ts +0 -1
  353. package/src/schemas/SectionSchema.ts +0 -1
  354. package/src/schemas/ViewSchema.ts +7 -7
  355. package/src/schemas/transformers/ComponentTransformer.ts +39 -28
  356. package/src/schemas/transformers/ReactNodeTransformer.ts +18 -17
  357. package/src/schemas/transformers/registry.ts +28 -24
  358. package/src/schemas/types/Serializable.ts +3 -3
  359. package/src/setupTests.js +9 -0
  360. package/src/stories/AccessibilityProvider.stories.tsx +0 -1
  361. package/src/stories/Article.stories.tsx +1 -1
  362. package/src/stories/CardListGrid.stories.tsx +1 -1
  363. package/src/stories/ChoiceInputField.stories.tsx +2 -2
  364. package/src/stories/Code.stories.tsx +2 -3
  365. package/src/stories/CollapsibleLayout.stories.tsx +41 -37
  366. package/src/stories/Container.stories.tsx +1 -2
  367. package/src/stories/DataBinding.advanced.stories.tsx +15 -9
  368. package/src/stories/DataProvider.stories.tsx +33 -16
  369. package/src/stories/ErrorBoundary.stories.tsx +28 -26
  370. package/src/stories/FeatureGrid.stories.tsx +0 -1
  371. package/src/stories/FormBlock.stories.tsx +8 -8
  372. package/src/stories/FormComponents.stories.tsx +15 -11
  373. package/src/stories/GridCell.stories.tsx +5 -5
  374. package/src/stories/GridLayout.stories.tsx +5 -5
  375. package/src/stories/Image.stories.tsx +5 -7
  376. package/src/stories/Introduction.stories.tsx +0 -1
  377. package/src/stories/ModelView.stories.tsx +7 -7
  378. package/src/stories/SafeSpan.stories.tsx +7 -3
  379. package/src/stories/Section.stories.tsx +2 -2
  380. package/src/stories/Text.stories.tsx +1 -3
  381. package/src/stories/_templates/SerializationTemplate.tsx +0 -1
  382. package/src/templates/TemplateResolver.ts +2 -2
  383. package/src/types/CollapsibleLayout.ts +2 -2
  384. package/src/types/ContentProxy.ts +6 -6
  385. package/src/types/DataTypes.ts +4 -4
  386. package/src/types/TemplateProvider.ts +1 -1
  387. package/src/types/TemplateResolver.ts +1 -1
  388. package/src/utils/htmlTransform.tsx +17 -11
  389. package/src/utils/iconMap.tsx +221 -0
  390. package/src/utils/index.ts +4 -1
  391. package/src/utils/logger.ts +20 -14
  392. package/src/utils/paletteLoader.ts +218 -0
  393. package/src/utils/paletteManifest.ts +268 -0
  394. package/src/utils/paletteUtils.ts +19 -1
  395. package/src/utils/reactUtils.tsx +34 -33
  396. package/src/utils/spacing.ts +16 -17
  397. package/src/utils/themePerformanceMonitor.js +14 -6
  398. package/src/utils/themeUtils.ts +17 -2
  399. package/dist/components/base/ContainerView.d.ts +0 -65
  400. package/dist/components/base/ContainerView.d.ts.map +0 -1
  401. package/dist/components/blocks/Code-factory.d.ts +0 -22
  402. package/dist/components/blocks/Code-factory.d.ts.map +0 -1
  403. package/dist/components/blocks/Code-old.d.ts +0 -31
  404. package/dist/components/blocks/Code-old.d.ts.map +0 -1
  405. package/dist/qa/ConsoleWarningTest.d.ts +0 -5
  406. package/dist/qa/ConsoleWarningTest.d.ts.map +0 -1
  407. package/dist/qa/StorageKeyTest.d.ts +0 -6
  408. package/dist/qa/StorageKeyTest.d.ts.map +0 -1
  409. package/dist/qa/ThemeStorageKeyTest.d.ts +0 -6
  410. package/dist/qa/ThemeStorageKeyTest.d.ts.map +0 -1
  411. package/dist/schemas/ViewModelSchema.d.ts +0 -63
  412. package/dist/schemas/ViewModelSchema.d.ts.map +0 -1
  413. package/dist/schemas/transformers/__tests__/MockSerializableComponent.d.ts +0 -66
  414. package/dist/schemas/transformers/__tests__/MockSerializableComponent.d.ts.map +0 -1
  415. package/dist/src/__tests__/schemas/transformers/MockSerializableComponent.d.ts +0 -66
  416. package/dist/src/__tests__/schemas/transformers/MockSerializableComponent.d.ts.map +0 -1
  417. package/dist/src/components/AccessibilityChecker.d.ts +0 -12
  418. package/dist/src/components/AccessibilityChecker.d.ts.map +0 -1
  419. package/dist/src/components/AccessibilityProvider.d.ts +0 -64
  420. package/dist/src/components/AccessibilityProvider.d.ts.map +0 -1
  421. package/dist/src/components/Breadcrumbs.d.ts +0 -39
  422. package/dist/src/components/Breadcrumbs.d.ts.map +0 -1
  423. package/dist/src/components/ErrorBoundary.d.ts +0 -46
  424. package/dist/src/components/ErrorBoundary.d.ts.map +0 -1
  425. package/dist/src/components/Html.d.ts +0 -58
  426. package/dist/src/components/Html.d.ts.map +0 -1
  427. package/dist/src/components/Logo.d.ts +0 -56
  428. package/dist/src/components/Logo.d.ts.map +0 -1
  429. package/dist/src/components/Markdown.d.ts +0 -51
  430. package/dist/src/components/Markdown.d.ts.map +0 -1
  431. package/dist/src/components/QwickApp.d.ts +0 -69
  432. package/dist/src/components/QwickApp.d.ts.map +0 -1
  433. package/dist/src/components/QwickAppsLogo.d.ts +0 -25
  434. package/dist/src/components/QwickAppsLogo.d.ts.map +0 -1
  435. package/dist/src/components/QwickIcon.d.ts +0 -23
  436. package/dist/src/components/QwickIcon.d.ts.map +0 -1
  437. package/dist/src/components/ResponsiveMenu.d.ts +0 -38
  438. package/dist/src/components/ResponsiveMenu.d.ts.map +0 -1
  439. package/dist/src/components/SafeSpan.d.ts +0 -29
  440. package/dist/src/components/SafeSpan.d.ts.map +0 -1
  441. package/dist/src/components/Scaffold.d.ts +0 -57
  442. package/dist/src/components/Scaffold.d.ts.map +0 -1
  443. package/dist/src/components/base/Container.d.ts +0 -33
  444. package/dist/src/components/base/Container.d.ts.map +0 -1
  445. package/dist/src/components/base/ModelView.d.ts +0 -92
  446. package/dist/src/components/base/ModelView.d.ts.map +0 -1
  447. package/dist/src/components/base/index.d.ts +0 -12
  448. package/dist/src/components/base/index.d.ts.map +0 -1
  449. package/dist/src/components/blocks/Article.d.ts +0 -32
  450. package/dist/src/components/blocks/Article.d.ts.map +0 -1
  451. package/dist/src/components/blocks/CardListGrid.d.ts +0 -23
  452. package/dist/src/components/blocks/CardListGrid.d.ts.map +0 -1
  453. package/dist/src/components/blocks/Code.d.ts +0 -37
  454. package/dist/src/components/blocks/Code.d.ts.map +0 -1
  455. package/dist/src/components/blocks/Content.d.ts +0 -24
  456. package/dist/src/components/blocks/Content.d.ts.map +0 -1
  457. package/dist/src/components/blocks/CoverImageHeader.d.ts +0 -44
  458. package/dist/src/components/blocks/CoverImageHeader.d.ts.map +0 -1
  459. package/dist/src/components/blocks/FeatureCard.d.ts +0 -66
  460. package/dist/src/components/blocks/FeatureCard.d.ts.map +0 -1
  461. package/dist/src/components/blocks/FeatureGrid.d.ts +0 -48
  462. package/dist/src/components/blocks/FeatureGrid.d.ts.map +0 -1
  463. package/dist/src/components/blocks/Footer.d.ts +0 -56
  464. package/dist/src/components/blocks/Footer.d.ts.map +0 -1
  465. package/dist/src/components/blocks/HeroBlock.d.ts +0 -55
  466. package/dist/src/components/blocks/HeroBlock.d.ts.map +0 -1
  467. package/dist/src/components/blocks/Image.d.ts +0 -40
  468. package/dist/src/components/blocks/Image.d.ts.map +0 -1
  469. package/dist/src/components/blocks/PageBannerHeader.d.ts +0 -30
  470. package/dist/src/components/blocks/PageBannerHeader.d.ts.map +0 -1
  471. package/dist/src/components/blocks/ProductCard.d.ts +0 -57
  472. package/dist/src/components/blocks/ProductCard.d.ts.map +0 -1
  473. package/dist/src/components/blocks/Section.d.ts +0 -45
  474. package/dist/src/components/blocks/Section.d.ts.map +0 -1
  475. package/dist/src/components/blocks/Text.d.ts +0 -34
  476. package/dist/src/components/blocks/Text.d.ts.map +0 -1
  477. package/dist/src/components/blocks/index.d.ts +0 -41
  478. package/dist/src/components/blocks/index.d.ts.map +0 -1
  479. package/dist/src/components/buttons/Button.d.ts +0 -41
  480. package/dist/src/components/buttons/Button.d.ts.map +0 -1
  481. package/dist/src/components/buttons/PaletteSwitcher.d.ts +0 -24
  482. package/dist/src/components/buttons/PaletteSwitcher.d.ts.map +0 -1
  483. package/dist/src/components/buttons/ThemeSwitcher.d.ts +0 -24
  484. package/dist/src/components/buttons/ThemeSwitcher.d.ts.map +0 -1
  485. package/dist/src/components/buttons/index.d.ts +0 -11
  486. package/dist/src/components/buttons/index.d.ts.map +0 -1
  487. package/dist/src/components/forms/FormBlock.d.ts +0 -51
  488. package/dist/src/components/forms/FormBlock.d.ts.map +0 -1
  489. package/dist/src/components/forms/index.d.ts +0 -8
  490. package/dist/src/components/forms/index.d.ts.map +0 -1
  491. package/dist/src/components/index.d.ts +0 -41
  492. package/dist/src/components/index.d.ts.map +0 -1
  493. package/dist/src/components/input/ChoiceInputField.d.ts +0 -29
  494. package/dist/src/components/input/ChoiceInputField.d.ts.map +0 -1
  495. package/dist/src/components/input/HtmlInputField.d.ts +0 -33
  496. package/dist/src/components/input/HtmlInputField.d.ts.map +0 -1
  497. package/dist/src/components/input/SelectInputField.d.ts +0 -31
  498. package/dist/src/components/input/SelectInputField.d.ts.map +0 -1
  499. package/dist/src/components/input/SwitchInputField.d.ts +0 -27
  500. package/dist/src/components/input/SwitchInputField.d.ts.map +0 -1
  501. package/dist/src/components/input/TextField.d.ts +0 -18
  502. package/dist/src/components/input/TextField.d.ts.map +0 -1
  503. package/dist/src/components/input/TextInputField.d.ts +0 -34
  504. package/dist/src/components/input/TextInputField.d.ts.map +0 -1
  505. package/dist/src/components/input/index.d.ts +0 -19
  506. package/dist/src/components/input/index.d.ts.map +0 -1
  507. package/dist/src/components/layout/CollapsibleLayout/CollapsibleLayout.d.ts +0 -34
  508. package/dist/src/components/layout/CollapsibleLayout/CollapsibleLayout.d.ts.map +0 -1
  509. package/dist/src/components/layout/CollapsibleLayout/index.d.ts +0 -9
  510. package/dist/src/components/layout/CollapsibleLayout/index.d.ts.map +0 -1
  511. package/dist/src/components/layout/GridCell.d.ts +0 -32
  512. package/dist/src/components/layout/GridCell.d.ts.map +0 -1
  513. package/dist/src/components/layout/GridCellWrapper.d.ts +0 -46
  514. package/dist/src/components/layout/GridCellWrapper.d.ts.map +0 -1
  515. package/dist/src/components/layout/GridLayout.d.ts +0 -50
  516. package/dist/src/components/layout/GridLayout.d.ts.map +0 -1
  517. package/dist/src/components/layout/index.d.ts +0 -14
  518. package/dist/src/components/layout/index.d.ts.map +0 -1
  519. package/dist/src/components/menu/Menu.d.ts +0 -1
  520. package/dist/src/components/menu/Menu.d.ts.map +0 -1
  521. package/dist/src/components/menu/MenuItem.d.ts +0 -31
  522. package/dist/src/components/menu/MenuItem.d.ts.map +0 -1
  523. package/dist/src/components/menu/index.d.ts +0 -7
  524. package/dist/src/components/menu/index.d.ts.map +0 -1
  525. package/dist/src/components/pages/FormPage.d.ts +0 -66
  526. package/dist/src/components/pages/FormPage.d.ts.map +0 -1
  527. package/dist/src/components/pages/Page.d.ts +0 -68
  528. package/dist/src/components/pages/Page.d.ts.map +0 -1
  529. package/dist/src/components/pages/index.d.ts +0 -10
  530. package/dist/src/components/pages/index.d.ts.map +0 -1
  531. package/dist/src/components/shared/createSerializableView.d.ts +0 -81
  532. package/dist/src/components/shared/createSerializableView.d.ts.map +0 -1
  533. package/dist/src/components/shared/viewProps.d.ts +0 -37
  534. package/dist/src/components/shared/viewProps.d.ts.map +0 -1
  535. package/dist/src/config/AppConfig.d.ts +0 -49
  536. package/dist/src/config/AppConfig.d.ts.map +0 -1
  537. package/dist/src/config/AppConfigBuilder.d.ts +0 -75
  538. package/dist/src/config/AppConfigBuilder.d.ts.map +0 -1
  539. package/dist/src/config/index.d.ts +0 -13
  540. package/dist/src/config/index.d.ts.map +0 -1
  541. package/dist/src/config/types.d.ts +0 -130
  542. package/dist/src/config/types.d.ts.map +0 -1
  543. package/dist/src/config.d.ts +0 -15
  544. package/dist/src/config.d.ts.map +0 -1
  545. package/dist/src/contexts/DataContext.d.ts +0 -139
  546. package/dist/src/contexts/DataContext.d.ts.map +0 -1
  547. package/dist/src/contexts/DimensionsContext.d.ts +0 -42
  548. package/dist/src/contexts/DimensionsContext.d.ts.map +0 -1
  549. package/dist/src/contexts/PaletteContext.d.ts +0 -53
  550. package/dist/src/contexts/PaletteContext.d.ts.map +0 -1
  551. package/dist/src/contexts/PrintModeContext.d.ts +0 -27
  552. package/dist/src/contexts/PrintModeContext.d.ts.map +0 -1
  553. package/dist/src/contexts/QwickAppContext.d.ts +0 -71
  554. package/dist/src/contexts/QwickAppContext.d.ts.map +0 -1
  555. package/dist/src/contexts/ThemeContext.d.ts +0 -65
  556. package/dist/src/contexts/ThemeContext.d.ts.map +0 -1
  557. package/dist/src/contexts/index.d.ts +0 -11
  558. package/dist/src/contexts/index.d.ts.map +0 -1
  559. package/dist/src/hooks/index.d.ts +0 -12
  560. package/dist/src/hooks/index.d.ts.map +0 -1
  561. package/dist/src/hooks/useBaseProps.d.ts +0 -101
  562. package/dist/src/hooks/useBaseProps.d.ts.map +0 -1
  563. package/dist/src/hooks/useDataBinding.d.ts +0 -22
  564. package/dist/src/hooks/useDataBinding.d.ts.map +0 -1
  565. package/dist/src/hooks/usePrintMode.d.ts +0 -39
  566. package/dist/src/hooks/usePrintMode.d.ts.map +0 -1
  567. package/dist/src/index.d.ts +0 -9
  568. package/dist/src/index.d.ts.map +0 -1
  569. package/dist/src/palettes/PaletteAutumn.d.ts +0 -10
  570. package/dist/src/palettes/PaletteAutumn.d.ts.map +0 -1
  571. package/dist/src/palettes/PaletteCosmic.d.ts +0 -10
  572. package/dist/src/palettes/PaletteCosmic.d.ts.map +0 -1
  573. package/dist/src/palettes/PaletteDefault.d.ts +0 -10
  574. package/dist/src/palettes/PaletteDefault.d.ts.map +0 -1
  575. package/dist/src/palettes/PaletteOcean.d.ts +0 -10
  576. package/dist/src/palettes/PaletteOcean.d.ts.map +0 -1
  577. package/dist/src/palettes/PaletteSpring.d.ts +0 -10
  578. package/dist/src/palettes/PaletteSpring.d.ts.map +0 -1
  579. package/dist/src/palettes/PaletteWinter.d.ts +0 -10
  580. package/dist/src/palettes/PaletteWinter.d.ts.map +0 -1
  581. package/dist/src/palettes/index.d.ts +0 -13
  582. package/dist/src/palettes/index.d.ts.map +0 -1
  583. package/dist/src/schemas/ActionSchema.d.ts +0 -21
  584. package/dist/src/schemas/ActionSchema.d.ts.map +0 -1
  585. package/dist/src/schemas/ArticleSchema.d.ts +0 -13
  586. package/dist/src/schemas/ArticleSchema.d.ts.map +0 -1
  587. package/dist/src/schemas/ButtonSchema.d.ts +0 -19
  588. package/dist/src/schemas/ButtonSchema.d.ts.map +0 -1
  589. package/dist/src/schemas/CardListGridSchema.d.ts +0 -17
  590. package/dist/src/schemas/CardListGridSchema.d.ts.map +0 -1
  591. package/dist/src/schemas/ChoiceInputFieldSchema.d.ts +0 -18
  592. package/dist/src/schemas/ChoiceInputFieldSchema.d.ts.map +0 -1
  593. package/dist/src/schemas/CodeSchema.d.ts +0 -18
  594. package/dist/src/schemas/CodeSchema.d.ts.map +0 -1
  595. package/dist/src/schemas/CollapsibleLayoutSchema.d.ts +0 -32
  596. package/dist/src/schemas/CollapsibleLayoutSchema.d.ts.map +0 -1
  597. package/dist/src/schemas/ContainerSchema.d.ts +0 -12
  598. package/dist/src/schemas/ContainerSchema.d.ts.map +0 -1
  599. package/dist/src/schemas/ContentSchema.d.ts +0 -21
  600. package/dist/src/schemas/ContentSchema.d.ts.map +0 -1
  601. package/dist/src/schemas/CoverImageHeaderSchema.d.ts +0 -28
  602. package/dist/src/schemas/CoverImageHeaderSchema.d.ts.map +0 -1
  603. package/dist/src/schemas/FeatureCardSchema.d.ts +0 -28
  604. package/dist/src/schemas/FeatureCardSchema.d.ts.map +0 -1
  605. package/dist/src/schemas/FeatureGridSchema.d.ts +0 -17
  606. package/dist/src/schemas/FeatureGridSchema.d.ts.map +0 -1
  607. package/dist/src/schemas/FeatureItemSchema.d.ts +0 -16
  608. package/dist/src/schemas/FeatureItemSchema.d.ts.map +0 -1
  609. package/dist/src/schemas/FooterItemSchema.d.ts +0 -15
  610. package/dist/src/schemas/FooterItemSchema.d.ts.map +0 -1
  611. package/dist/src/schemas/FooterSchema.d.ts +0 -20
  612. package/dist/src/schemas/FooterSchema.d.ts.map +0 -1
  613. package/dist/src/schemas/FooterSectionSchema.d.ts +0 -15
  614. package/dist/src/schemas/FooterSectionSchema.d.ts.map +0 -1
  615. package/dist/src/schemas/FormBlockSchema.d.ts +0 -19
  616. package/dist/src/schemas/FormBlockSchema.d.ts.map +0 -1
  617. package/dist/src/schemas/GridCellSchema.d.ts +0 -23
  618. package/dist/src/schemas/GridCellSchema.d.ts.map +0 -1
  619. package/dist/src/schemas/GridLayoutSchema.d.ts +0 -21
  620. package/dist/src/schemas/GridLayoutSchema.d.ts.map +0 -1
  621. package/dist/src/schemas/HeaderActionSchema.d.ts +0 -17
  622. package/dist/src/schemas/HeaderActionSchema.d.ts.map +0 -1
  623. package/dist/src/schemas/HeroBlockSchema.d.ts +0 -22
  624. package/dist/src/schemas/HeroBlockSchema.d.ts.map +0 -1
  625. package/dist/src/schemas/HtmlInputFieldSchema.d.ts +0 -18
  626. package/dist/src/schemas/HtmlInputFieldSchema.d.ts.map +0 -1
  627. package/dist/src/schemas/HtmlSchema.d.ts +0 -14
  628. package/dist/src/schemas/HtmlSchema.d.ts.map +0 -1
  629. package/dist/src/schemas/ImageSchema.d.ts +0 -32
  630. package/dist/src/schemas/ImageSchema.d.ts.map +0 -1
  631. package/dist/src/schemas/LogoSchema.d.ts +0 -35
  632. package/dist/src/schemas/LogoSchema.d.ts.map +0 -1
  633. package/dist/src/schemas/MarkdownSchema.d.ts +0 -14
  634. package/dist/src/schemas/MarkdownSchema.d.ts.map +0 -1
  635. package/dist/src/schemas/MetadataItemSchema.d.ts +0 -13
  636. package/dist/src/schemas/MetadataItemSchema.d.ts.map +0 -1
  637. package/dist/src/schemas/PageBannerHeaderSchema.d.ts +0 -28
  638. package/dist/src/schemas/PageBannerHeaderSchema.d.ts.map +0 -1
  639. package/dist/src/schemas/PageTemplateSchema.d.ts +0 -31
  640. package/dist/src/schemas/PageTemplateSchema.d.ts.map +0 -1
  641. package/dist/src/schemas/PaletteSwitcherSchema.d.ts +0 -16
  642. package/dist/src/schemas/PaletteSwitcherSchema.d.ts.map +0 -1
  643. package/dist/src/schemas/PrintConfigSchema.d.ts +0 -31
  644. package/dist/src/schemas/PrintConfigSchema.d.ts.map +0 -1
  645. package/dist/src/schemas/ProductCardSchema.d.ts +0 -39
  646. package/dist/src/schemas/ProductCardSchema.d.ts.map +0 -1
  647. package/dist/src/schemas/SafeSpanSchema.d.ts +0 -13
  648. package/dist/src/schemas/SafeSpanSchema.d.ts.map +0 -1
  649. package/dist/src/schemas/SectionSchema.d.ts +0 -16
  650. package/dist/src/schemas/SectionSchema.d.ts.map +0 -1
  651. package/dist/src/schemas/SelectInputFieldSchema.d.ts +0 -27
  652. package/dist/src/schemas/SelectInputFieldSchema.d.ts.map +0 -1
  653. package/dist/src/schemas/SwitchInputFieldSchema.d.ts +0 -18
  654. package/dist/src/schemas/SwitchInputFieldSchema.d.ts.map +0 -1
  655. package/dist/src/schemas/TextInputFieldSchema.d.ts +0 -22
  656. package/dist/src/schemas/TextInputFieldSchema.d.ts.map +0 -1
  657. package/dist/src/schemas/TextSchema.d.ts +0 -37
  658. package/dist/src/schemas/TextSchema.d.ts.map +0 -1
  659. package/dist/src/schemas/ThemeSwitcherSchema.d.ts +0 -19
  660. package/dist/src/schemas/ThemeSwitcherSchema.d.ts.map +0 -1
  661. package/dist/src/schemas/ViewSchema.d.ts +0 -66
  662. package/dist/src/schemas/ViewSchema.d.ts.map +0 -1
  663. package/dist/src/schemas/index.d.ts +0 -47
  664. package/dist/src/schemas/index.d.ts.map +0 -1
  665. package/dist/src/schemas/transformers/ComponentTransformer.d.ts +0 -128
  666. package/dist/src/schemas/transformers/ComponentTransformer.d.ts.map +0 -1
  667. package/dist/src/schemas/transformers/ReactNodeTransformer.d.ts +0 -53
  668. package/dist/src/schemas/transformers/ReactNodeTransformer.d.ts.map +0 -1
  669. package/dist/src/schemas/transformers/registry.d.ts +0 -18
  670. package/dist/src/schemas/transformers/registry.d.ts.map +0 -1
  671. package/dist/src/schemas/types/Serializable.d.ts +0 -46
  672. package/dist/src/schemas/types/Serializable.d.ts.map +0 -1
  673. package/dist/src/stories/_templates/SerializationTemplate.d.ts.map +0 -1
  674. package/dist/src/templates/TemplateResolver.d.ts +0 -52
  675. package/dist/src/templates/TemplateResolver.d.ts.map +0 -1
  676. package/dist/src/templates/index.d.ts +0 -7
  677. package/dist/src/templates/index.d.ts.map +0 -1
  678. package/dist/src/types/CacheProvider.d.ts +0 -18
  679. package/dist/src/types/CacheProvider.d.ts.map +0 -1
  680. package/dist/src/types/CollapsibleLayout.d.ts +0 -142
  681. package/dist/src/types/CollapsibleLayout.d.ts.map +0 -1
  682. package/dist/src/types/ContentProxy.d.ts +0 -47
  683. package/dist/src/types/ContentProxy.d.ts.map +0 -1
  684. package/dist/src/types/DataTypes.d.ts +0 -185
  685. package/dist/src/types/DataTypes.d.ts.map +0 -1
  686. package/dist/src/types/TemplateProvider.d.ts +0 -10
  687. package/dist/src/types/TemplateProvider.d.ts.map +0 -1
  688. package/dist/src/types/TemplateResolver.d.ts +0 -23
  689. package/dist/src/types/TemplateResolver.d.ts.map +0 -1
  690. package/dist/src/types/index.d.ts +0 -82
  691. package/dist/src/types/index.d.ts.map +0 -1
  692. package/dist/src/utils/breakpoints.d.ts +0 -35
  693. package/dist/src/utils/breakpoints.d.ts.map +0 -1
  694. package/dist/src/utils/cssUtils.d.ts +0 -17
  695. package/dist/src/utils/cssUtils.d.ts.map +0 -1
  696. package/dist/src/utils/customPaletteManager.d.ts +0 -8
  697. package/dist/src/utils/customPaletteManager.d.ts.map +0 -1
  698. package/dist/src/utils/dimensions.d.ts +0 -34
  699. package/dist/src/utils/dimensions.d.ts.map +0 -1
  700. package/dist/src/utils/htmlTransform.d.ts +0 -44
  701. package/dist/src/utils/htmlTransform.d.ts.map +0 -1
  702. package/dist/src/utils/index.d.ts +0 -16
  703. package/dist/src/utils/index.d.ts.map +0 -1
  704. package/dist/src/utils/logger.d.ts +0 -26
  705. package/dist/src/utils/logger.d.ts.map +0 -1
  706. package/dist/src/utils/paletteUtils.d.ts +0 -38
  707. package/dist/src/utils/paletteUtils.d.ts.map +0 -1
  708. package/dist/src/utils/persistenceUtils.d.ts +0 -31
  709. package/dist/src/utils/persistenceUtils.d.ts.map +0 -1
  710. package/dist/src/utils/reactUtils.d.ts +0 -33
  711. package/dist/src/utils/reactUtils.d.ts.map +0 -1
  712. package/dist/src/utils/spacing.d.ts +0 -34
  713. package/dist/src/utils/spacing.d.ts.map +0 -1
  714. package/dist/src/utils/themePerformanceMonitor.d.ts +0 -32
  715. package/dist/src/utils/themePerformanceMonitor.d.ts.map +0 -1
  716. package/dist/src/utils/themeUtils.d.ts +0 -27
  717. package/dist/src/utils/themeUtils.d.ts.map +0 -1
  718. package/dist/tests/ConsoleWarningTest.d.ts +0 -5
  719. package/dist/tests/ConsoleWarningTest.d.ts.map +0 -1
  720. package/dist/tests/StorageKeyTest.d.ts +0 -6
  721. package/dist/tests/StorageKeyTest.d.ts.map +0 -1
  722. package/dist/tests/ThemeStorageKeyTest.d.ts +0 -6
  723. package/dist/tests/ThemeStorageKeyTest.d.ts.map +0 -1
  724. /package/dist/palettes/{PaletteAutumn.css → palette-autumn.1.4.9.css} +0 -0
  725. /package/dist/palettes/{PaletteCosmic.css → palette-cosmic.1.4.9.css} +0 -0
  726. /package/dist/palettes/{PaletteDefault.css → palette-default.1.4.9.css} +0 -0
  727. /package/dist/palettes/{PaletteOcean.css → palette-ocean.1.4.9.css} +0 -0
  728. /package/dist/palettes/{PaletteSpring.css → palette-spring.1.4.9.css} +0 -0
  729. /package/dist/palettes/{PaletteWinter.css → palette-winter.1.4.9.css} +0 -0
  730. /package/dist/{src/stories → stories}/_templates/SerializationTemplate.d.ts +0 -0
@@ -1,38 +1,12 @@
1
- /**
2
- * Code - Factory-based syntax-highlighted code display component
3
- *
4
- * Migrated from class-based ModelView to factory pattern for better
5
- * schema-driven architecture while preserving all code display features.
6
- *
7
- * Provides consistent code block rendering with:
8
- * - Syntax highlighting support
9
- * - Copy to clipboard functionality
10
- * - Light/dark theme support
11
- * - Multiple language support
12
- * - Responsive design
13
- * - Line numbers support
14
- * - Title display
15
- * - Custom backgrounds
16
- *
17
- * Copyright (c) 2025 QwickApps.com. All rights reserved.
18
- */
19
- import { SerializableComponent } from '../shared/createSerializableView';
1
+ import CodeSchema from '../../schemas/CodeSchema';
2
+ import type { SchemaProps } from '@qwickapps/schema/src/types/ModelProps';
20
3
  import { ViewProps } from '../shared/viewProps';
4
+ import { SerializableComponent } from '../shared/createSerializableView';
21
5
  /**
22
6
  * Props interface for Code component
23
- *
24
- * Extends ViewProps (which contains all base props from ViewSchema + WithDataBinding)
25
- * and adds only Code-specific properties. ViewSchema is the single source of truth
26
- * for all base properties including styling, grid, events, accessibility, etc.
7
+ * Uses SchemaProps<typeof CodeSchema> for clean typing
27
8
  */
28
- export interface CodeProps extends ViewProps {
29
- language?: string;
30
- showCopy?: boolean;
31
- showLineNumbers?: boolean;
32
- title?: string;
33
- wrapLines?: boolean;
34
- codeBackground?: string;
35
- }
9
+ export type CodeProps = ViewProps & SchemaProps<typeof CodeSchema>;
36
10
  /**
37
11
  * Create Code component using the factory pattern
38
12
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Code.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/Code.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAoBH,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGhD;;;;;;GAMG;AACH,MAAM,WAAW,SAAU,SAAQ,SAAS;IAE1C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAuND;;GAEG;AACH,eAAO,MAAM,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAKhD,CAAC;AAoDH;;GAEG;AACH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"Code.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/Code.tsx"],"names":[],"mappings":"AAyBA,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEjG;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC,OAAO,UAAU,CAAC,CAAC;AAuNnE;;GAEG;AACH,eAAO,MAAM,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAMhD,CAAC;AAuDH;;GAEG;AACH,eAAe,IAAI,CAAC"}
@@ -1,21 +1,6 @@
1
- /**
2
- * Content Component - General-purpose content container with data binding support
3
- *
4
- * Usage:
5
- * - Traditional: <Content title="Welcome" subtitle="Get started" actions={[...]} />
6
- * - Data-driven: <Content dataSource="pages.home.intro" />
7
- *
8
- * Features:
9
- * - Optional title, subtitle, and actions
10
- * - Variant styles: default, elevated, outlined, filled
11
- * - Responsive spacing, max width, and alignment
12
- * - Theme-aware and flexible for layouts
13
- *
14
- * Copyright (c) 2025 QwickApps.com. All rights reserved.
15
- */
16
- import { WithDataBinding, ModelProps } from '@qwickapps/schema';
1
+ import { WithDataBinding, SchemaProps } from '@qwickapps/schema';
17
2
  import ContentModel from '../../schemas/ContentSchema';
18
- type ContentViewProps = ModelProps<ContentModel>;
3
+ type ContentViewProps = SchemaProps<ContentModel>;
19
4
  export interface ContentProps extends ContentViewProps, WithDataBinding {
20
5
  }
21
6
  declare function Content(props: ContentProps): import("react/jsx-runtime").JSX.Element | null;
@@ -1 +1 @@
1
- {"version":3,"file":"Content.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/Content.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGhE,OAAO,YAAY,MAAM,6BAA6B,CAAC;AAMvD,KAAK,gBAAgB,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;AAEjD,MAAM,WAAW,YAAa,SAAQ,gBAAgB,EAAE,eAAe;CAAG;AAwI1E,iBAAS,OAAO,CAAC,KAAK,EAAE,YAAY,kDA6CnC;AAED,eAAe,OAAO,CAAC;AACvB,OAAO,EAAE,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"Content.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/Content.tsx"],"names":[],"mappings":"AAmBA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGjE,OAAO,YAAY,MAAM,6BAA6B,CAAC;AAMvD,KAAK,gBAAgB,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;AAElD,MAAM,WAAW,YAAa,SAAQ,gBAAgB,EAAE,eAAe;CAAG;AAwI1E,iBAAS,OAAO,CAAC,KAAK,EAAE,YAAY,kDAgDnC;AAED,eAAe,OAAO,CAAC;AACvB,OAAO,EAAE,OAAO,EAAE,CAAC"}
@@ -1,14 +1,4 @@
1
- /**
2
- * CoverImageHeader - Flexible header with optional image, info section, and context menu
3
- *
4
- * Provides a clean header layout similar to modern app interfaces with:
5
- * - Optional image/avatar on the left
6
- * - Info section with overline, title, subtitle, and tags
7
- * - Context menu with up to 3 visible actions + overflow menu
8
- *
9
- * Copyright (c) 2025 QwickApps.com. All rights reserved.
10
- */
11
- import { WithDataBinding, ModelProps } from '@qwickapps/schema';
1
+ import { WithDataBinding, SchemaProps } from '@qwickapps/schema';
12
2
  import React from 'react';
13
3
  import { WithBaseProps } from '../../hooks';
14
4
  import CoverImageHeaderModel from '../../schemas/CoverImageHeaderSchema';
@@ -29,7 +19,7 @@ export interface HeaderAction {
29
19
  /** Priority for ordering (lower numbers = higher priority, shown first) */
30
20
  priority?: number;
31
21
  }
32
- type CoverImageHeaderViewProps = Omit<ModelProps<CoverImageHeaderModel>, 'actions' | 'tags' | 'image'> & WithBaseProps & {
22
+ type CoverImageHeaderViewProps = Omit<SchemaProps<CoverImageHeaderModel>, 'actions' | 'tags' | 'image'> & WithBaseProps & {
33
23
  /** Image URL or React component (extended from schema string) */
34
24
  image?: string | React.ReactNode;
35
25
  /** Array of tag strings or JSX elements (extended from schema string[]) */
@@ -1 +1 @@
1
- {"version":3,"file":"CoverImageHeader.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/CoverImageHeader.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAcH,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAgC,aAAa,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,qBAAqB,MAAM,sCAAsC,CAAC;AACzE,OAAO,wBAAwB,CAAC;AAEhC,MAAM,WAAW,YAAY;IAC3B,uCAAuC;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,oBAAoB;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sEAAsE;IACtE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,KAAK,yBAAyB,GAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,aAAa,GAAG;IACvH,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IACjC,2EAA2E;IAC3E,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;IACpC,sEAAsE;IACtE,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,WAAW,qBAAsB,SAAQ,yBAAyB,EAAE,eAAe;CAAG;AAoV5F,iBAAS,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,kDA0CrD;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"CoverImageHeader.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/CoverImageHeader.tsx"],"names":[],"mappings":"AAyBA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAgC,aAAa,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,qBAAqB,MAAM,sCAAsC,CAAC;AACzE,OAAO,wBAAwB,CAAC;AAEhC,MAAM,WAAW,YAAY;IAC3B,uCAAuC;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,oBAAoB;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sEAAsE;IACtE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,KAAK,yBAAyB,GAAG,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,aAAa,GAAG;IACxH,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IACjC,2EAA2E;IAC3E,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;IACpC,sEAAsE;IACtE,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,WAAW,qBAAsB,SAAQ,yBAAyB,EAAE,eAAe;CAAG;AAoV5F,iBAAS,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,kDA6CrD;AAED,eAAe,gBAAgB,CAAC"}
@@ -1,20 +1,3 @@
1
- /**
2
- * FeatureCard Component - Unified feature card with data binding support
3
- *
4
- * Enhanced with data binding support through dataSource prop.
5
- *
6
- * Usage:
7
- * - Traditional: <FeatureCard feature={featureObj} variant="standard" elevation={2} />
8
- * - Data-driven: <FeatureCard dataSource="product.single-feature" />
9
- *
10
- * Features:
11
- * - Standard variant: Rich feature cards with icons, titles, descriptions, and actions
12
- * - List variant: Simple bullet list of features for compact display
13
- * - Interactive elements with hover effects and customizable actions
14
- * - Full CMS integration through dataSource prop
15
- *
16
- * Copyright (c) 2025 QwickApps.com. All rights reserved.
17
- */
18
1
  import { WithDataBinding } from '@qwickapps/schema';
19
2
  import React from 'react';
20
3
  import { WithBaseProps } from '../../hooks';
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureCard.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/FeatureCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAQH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoD,aAAa,EAAE,MAAM,aAAa,CAAC;AAI9F,MAAM,WAAW,WAAW;IAC1B,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;IAC5C,KAAK,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,KAAK,oBAAoB,GAAG,aAAa,GAAG;IAC1C,mBAAmB;IACnB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,mBAAmB;IACnB,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC9B,2CAA2C;IAC3C,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC9B,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB,EAAE,eAAe;CAAG;AAuLlF;;;GAGG;AACH,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,kDA4D3C;AAED,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"FeatureCard.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/FeatureCard.tsx"],"names":[],"mappings":"AA0BA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoD,aAAa,EAAE,MAAM,aAAa,CAAC;AAI9F,MAAM,WAAW,WAAW;IAC1B,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;IAC5C,KAAK,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,KAAK,oBAAoB,GAAG,aAAa,GAAG;IAC1C,mBAAmB;IACnB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,mBAAmB;IACnB,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC9B,2CAA2C;IAC3C,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC9B,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB,EAAE,eAAe;CAAG;AAuLlF;;;GAGG;AACH,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,kDA+D3C;AAED,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureGrid.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/FeatureGrid.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoD,aAAa,EAAE,MAAM,aAAa,CAAC;AAK9F,MAAM,WAAW,WAAW;IAC1B,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,0BAA0B;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAED,UAAU,oBAAqB,SAAQ,aAAa;IAClD,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IACzB,wBAAwB;IACxB,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChC,eAAe;IACf,GAAG,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACnC,kCAAkC;IAClC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB,EAAE,eAAe;CAAG;AAwClF,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,kDAwE3C;AAED,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"FeatureGrid.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/FeatureGrid.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoD,aAAa,EAAE,MAAM,aAAa,CAAC;AAK9F,MAAM,WAAW,WAAW;IAC1B,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,0BAA0B;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAED,UAAU,oBAAqB,SAAQ,aAAa;IAClD,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IACzB,wBAAwB;IACxB,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChC,eAAe;IACf,GAAG,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACnC,kCAAkC;IAClC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB,EAAE,eAAe;CAAG;AAwClF,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,kDA2E3C;AAED,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -1,15 +1,3 @@
1
- /**
2
- * Footer - Reusable footer component with flexible layout options
3
- *
4
- * Provides a clean footer layout with:
5
- * - Configurable orientation (vertical/horizontal)
6
- * - Optional logo/branding
7
- * - Multiple sections for links, text, or custom content
8
- * - Responsive design with MUI components
9
- * - Copyright and legal information support
10
- *
11
- * Copyright (c) 2025 QwickApps.com. All rights reserved.
12
- */
13
1
  import { WithDataBinding } from '@qwickapps/schema';
14
2
  import React from 'react';
15
3
  import { WithBaseProps } from '../../hooks';
@@ -38,8 +26,8 @@ interface FooterViewProps extends WithBaseProps {
38
26
  sections?: FooterSection[];
39
27
  /** Optional logo or branding element */
40
28
  logo?: React.ReactNode;
41
- /** Copyright text */
42
- copyright?: string;
29
+ /** Copyright text or custom React element */
30
+ copyright?: string | React.ReactNode;
43
31
  /** Additional legal or info text */
44
32
  legalText?: string;
45
33
  /** Layout orientation */
@@ -1 +1 @@
1
- {"version":3,"file":"Footer.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/Footer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAWH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoD,aAAa,EAAE,MAAM,aAAa,CAAC;AAG9F,MAAM,WAAW,aAAa;IAC5B,wCAAwC;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,KAAK,EAAE,UAAU,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,qCAAqC;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,eAAgB,SAAQ,aAAa;IAC7C,sBAAsB;IACtB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,wCAAwC;IACxC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,qBAAqB;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yBAAyB;IACzB,WAAW,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACxC,yBAAyB;IACzB,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,CAAC;IAC/C,2CAA2C;IAC3C,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,WAAY,SAAQ,eAAe,EAAE,eAAe;CAAG;AAwNxE,iBAAS,MAAM,CAAC,KAAK,EAAE,WAAW,kDAsEjC;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Footer.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/Footer.tsx"],"names":[],"mappings":"AAuBA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoD,aAAa,EAAE,MAAM,aAAa,CAAC;AAI9F,MAAM,WAAW,aAAa;IAC5B,wCAAwC;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,KAAK,EAAE,UAAU,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,qCAAqC;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,eAAgB,SAAQ,aAAa;IAC7C,sBAAsB;IACtB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,wCAAwC;IACxC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IACrC,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yBAAyB;IACzB,WAAW,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACxC,yBAAyB;IACzB,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,CAAC;IAC/C,2CAA2C;IAC3C,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,WAAY,SAAQ,eAAe,EAAE,eAAe;CAAG;AA4NxE,iBAAS,MAAM,CAAC,KAAK,EAAE,WAAW,kDAyEjC;AAED,eAAe,MAAM,CAAC"}
@@ -1,46 +1,55 @@
1
1
  /**
2
- * HeroBlock Component - Full-width hero section with serialization support
2
+ * HeroBlock Component - Factory-based implementation using createSerializableView
3
+ *
4
+ * Migrated from class-based ModelView to factory pattern for better
5
+ * schema-driven architecture while preserving all functionality.
3
6
  *
4
7
  * Features:
5
8
  * - Responsive headline, subtitle, and actions
6
9
  * - Supports background images, gradients, and theme colors
7
10
  * - Overlay for image backgrounds
8
11
  * - Customizable height, alignment, and overlay opacity
9
- * - Full serialization support via ModelView
10
- * - Nested Button component serialization support
12
+ * - Full serialization support
13
+ * - Nested Button component support
11
14
  *
12
15
  * Usage:
13
16
  * - Traditional: <HeroBlock title="Welcome" subtitle="Get started" actions={[...]} />
14
17
  * - Data-driven: <HeroBlock dataSource="pages.home.hero" />
15
- * - Serializable: ComponentTransformer.serialize(<HeroBlock ... />)
16
18
  *
17
19
  * Copyright (c) 2025 QwickApps.com. All rights reserved.
18
20
  */
19
- import type { ModelProps, WithDataBinding } from '@qwickapps/schema';
20
- import React, { ReactNode } from 'react';
21
- import HeroBlockModel from '../../schemas/HeroBlockSchema';
22
- import { ModelView } from '../base/ModelView';
21
+ import { SerializableComponent } from '../shared/createSerializableView';
22
+ import { ViewProps } from '../shared/viewProps';
23
23
  import { ButtonProps } from '../buttons/Button';
24
- type HeroBlockViewProps = ModelProps<HeroBlockModel> & {
24
+ /**
25
+ * Props interface for HeroBlock component - extends ViewProps
26
+ */
27
+ export interface HeroBlockProps extends ViewProps {
28
+ /** Main headline text */
29
+ title?: string;
30
+ /** Subtitle or description text */
31
+ subtitle?: string;
32
+ /** Background image URL */
33
+ backgroundImage?: string;
34
+ /** Background gradient CSS value */
35
+ backgroundGradient?: string;
36
+ /** Background color theme variant */
37
+ backgroundColor?: 'default' | 'primary' | 'secondary' | 'surface';
25
38
  /** Action buttons (data-driven) */
26
39
  actions?: ButtonProps[];
27
- /** Additional content below the text */
28
- children?: ReactNode;
29
- /** Click handler for the hero section */
30
- onClick?: (event: React.MouseEvent<HTMLElement>) => void;
31
- /** Additional inline styles */
32
- style?: React.CSSProperties;
33
- };
34
- export interface HeroBlockProps extends HeroBlockViewProps, WithDataBinding {
35
- }
36
- export declare class HeroBlock extends ModelView<HeroBlockProps, HeroBlockModel> {
37
- static readonly tagName = "HeroBlock";
38
- static readonly version = "1.0.0";
39
- protected getComponentSpecificProps(): any;
40
- protected serializeChildren(children: ReactNode): any;
41
- protected hasNestedComponents(children: ReactNode): boolean;
42
- protected renderView(): React.ReactElement;
43
- protected renderWithDataBinding(): React.ReactElement;
40
+ /** Text alignment */
41
+ textAlign?: 'left' | 'center' | 'right';
42
+ /** Block height preset */
43
+ blockHeight?: 'small' | 'medium' | 'large' | 'viewport';
44
+ /** Custom overlay opacity (0-1) when using background images */
45
+ overlayOpacity?: number;
44
46
  }
47
+ /**
48
+ * Create HeroBlock component using the factory pattern
49
+ */
50
+ export declare const HeroBlock: SerializableComponent<HeroBlockProps>;
51
+ /**
52
+ * Export the component as default
53
+ */
45
54
  export default HeroBlock;
46
55
  //# sourceMappingURL=HeroBlock.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeroBlock.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/HeroBlock.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,EAAgB,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAU,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAExD,KAAK,kBAAkB,GAAG,UAAU,CAAC,cAAc,CAAC,GAAG;IACrD,mCAAmC;IACnC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,yCAAyC;IACzC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IACzD,+BAA+B;IAC/B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,cAAe,SAAQ,kBAAkB,EAAE,eAAe;CAAG;AAuM9E,qBAAa,SAAU,SAAQ,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;IAEtE,MAAM,CAAC,QAAQ,CAAC,OAAO,eAAe;IACtC,MAAM,CAAC,QAAQ,CAAC,OAAO,WAAW;IAGlC,SAAS,CAAC,yBAAyB,IAAI,GAAG;IAgB1C,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,GAAG,GAAG;IAoBrD,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,SAAS,GAAG,OAAO;IAK3D,SAAS,CAAC,UAAU,IAAI,KAAK,CAAC,YAAY;IAM1C,SAAS,CAAC,qBAAqB,IAAI,KAAK,CAAC,YAAY;CAGtD;AAgDD,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"HeroBlock.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/HeroBlock.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAU,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGxD;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2BAA2B;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oCAAoC;IACpC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qCAAqC;IACrC,eAAe,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;IAClE,mCAAmC;IACnC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,qBAAqB;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACxC,0BAA0B;IAC1B,WAAW,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;IACxD,gEAAgE;IAChE,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AA8LD;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,qBAAqB,CAAC,cAAc,CAK1D,CAAC;AAEH;;GAEG;AACH,eAAe,SAAS,CAAC"}
@@ -8,33 +8,33 @@
8
8
  * - Accessibility support with proper alt text
9
9
  * - Lazy loading support
10
10
  * - Fallback image handling
11
- * - Full serialization support via ModelView
11
+ * - Full serialization support via factory pattern
12
12
  *
13
13
  * Copyright (c) 2025 QwickApps.com. All rights reserved.
14
14
  */
15
15
  import React from 'react';
16
- import type { WithDataBinding, ModelProps } from '@qwickapps/schema';
17
- import ImageModel from '../../schemas/ImageSchema';
18
- import { ModelView } from '../base/ModelView';
19
- type ImageViewProps = ModelProps<ImageModel> & {
20
- /** Click handler for the image */
21
- onClick?: (event: React.MouseEvent<HTMLElement>) => void;
22
- /** Additional inline styles */
23
- style?: React.CSSProperties;
24
- /** Additional CSS class names */
25
- className?: string;
26
- };
27
- export interface ImageProps extends ImageViewProps, WithDataBinding {
28
- }
29
- export declare class Image extends ModelView<ImageProps, ImageModel> {
30
- static readonly tagName = "Image";
31
- static readonly version = "1.0.0";
32
- protected getComponentSpecificProps(): any;
33
- protected renderView(): React.ReactElement;
34
- protected renderWithDataBinding(): React.ReactElement;
35
- static registerPatternHandlers(registry: any): void;
36
- private static transformImage;
37
- private static transformFigureImage;
16
+ import { ImageFit, ImageLoading, ImagePosition } from '../../schemas/ImageSchema';
17
+ import { SerializableComponent } from '../shared/createSerializableView';
18
+ import { ViewProps } from '../shared/viewProps';
19
+ export interface ImageProps extends ViewProps {
20
+ src?: string;
21
+ alt?: string;
22
+ width?: number;
23
+ height?: number;
24
+ objectFit?: ImageFit;
25
+ objectPosition?: ImagePosition;
26
+ loading?: ImageLoading;
27
+ title?: string;
28
+ draggable?: boolean;
29
+ borderRadius?: string;
30
+ showLoading?: boolean;
31
+ showError?: boolean;
32
+ fallbackSrc?: string;
33
+ sizes?: string;
34
+ srcSet?: string;
35
+ loadingPlaceholder?: React.ReactNode;
36
+ errorPlaceholder?: React.ReactNode;
38
37
  }
38
+ export declare const Image: SerializableComponent<ImageProps>;
39
39
  export default Image;
40
40
  //# sourceMappingURL=Image.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/Image.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAA8C,MAAM,OAAO,CAAC;AAGnE,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAErE,OAAO,UAAqD,MAAM,2BAA2B,CAAC;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,KAAK,cAAc,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG;IAC7C,kCAAkC;IAClC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IACzD,+BAA+B;IAC/B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,iCAAiC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,UAAW,SAAQ,cAAc,EAAE,eAAe;CAAG;AA0LtE,qBAAa,KAAM,SAAQ,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC;IAE1D,MAAM,CAAC,QAAQ,CAAC,OAAO,WAAW;IAClC,MAAM,CAAC,QAAQ,CAAC,OAAO,WAAW;IAGlC,SAAS,CAAC,yBAAyB,IAAI,GAAG;IAuB1C,SAAS,CAAC,UAAU,IAAI,KAAK,CAAC,YAAY;IAM1C,SAAS,CAAC,qBAAqB,IAAI,KAAK,CAAC,YAAY;IAKrD,MAAM,CAAC,uBAAuB,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI;IAanD,OAAO,CAAC,MAAM,CAAC,cAAc;IAoB7B,OAAO,CAAC,MAAM,CAAC,oBAAoB;CAsBpC;AA4ED,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/Image.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAgC,MAAM,OAAO,CAAC;AAGrD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAClF,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,MAAM,WAAW,UAAW,SAAQ,SAAS;IAE3C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,QAAQ,CAAC;IACrB,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACrC,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACpC;AA8KD,eAAO,MAAM,KAAK,EAAE,qBAAqB,CAAC,UAAU,CAMlD,CAAC;AAiEH,eAAe,KAAK,CAAC"}
@@ -1,19 +1,8 @@
1
- /**
2
- * PageBannerHeader - Facebook-style banner header with cover image and profile info
3
- *
4
- * Similar to social media banners with:
5
- * - Large cover/banner image background
6
- * - Profile image overlay (typically bottom-left)
7
- * - Info section with title, subtitle, and metadata
8
- * - Action buttons in various positions
9
- *
10
- * Copyright (c) 2025 QwickApps.com. All rights reserved.
11
- */
12
- import { WithDataBinding, ModelProps } from '@qwickapps/schema';
1
+ import { WithDataBinding, SchemaProps } from '@qwickapps/schema';
13
2
  import React from 'react';
14
3
  import PageBannerHeaderModel from '../../schemas/PageBannerHeaderSchema';
15
4
  import { HeaderAction } from './CoverImageHeader';
16
- type PageBannerHeaderViewProps = Omit<ModelProps<PageBannerHeaderModel>, 'actions'> & {
5
+ type PageBannerHeaderViewProps = Omit<SchemaProps<PageBannerHeaderModel>, 'actions'> & {
17
6
  /** Profile/avatar image URL or component (extended from schema string) */
18
7
  profileImage?: string | React.ReactNode;
19
8
  /** Array of tag strings or JSX elements (extended from schema string[]) */
@@ -1 +1 @@
1
- {"version":3,"file":"PageBannerHeader.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/PageBannerHeader.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAgBH,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,qBAAqB,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,KAAK,yBAAyB,GAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,SAAS,CAAC,GAAG;IACpF,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IACxC,2EAA2E;IAC3E,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;IACpC,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,WAAW,qBAAsB,SAAQ,yBAAyB,EAAE,eAAe;CAAG;AAmV5F,iBAAS,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,kDAwFrD;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"PageBannerHeader.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/PageBannerHeader.tsx"],"names":[],"mappings":"AA4BA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,qBAAqB,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,KAAK,yBAAyB,GAAG,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,SAAS,CAAC,GAAG;IACrF,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IACxC,2EAA2E;IAC3E,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;IACpC,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,WAAW,qBAAsB,SAAQ,yBAAyB,EAAE,eAAe;CAAG;AAkV5F,iBAAS,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,kDA2FrD;AAED,eAAe,gBAAgB,CAAC"}
@@ -1,12 +1,3 @@
1
- /**
2
- * ProductCard - Unified product card component with variants
3
- *
4
- * A flexible product card that can display products in different formats:
5
- * - Compact variant: For showcases and lists (shows limited features)
6
- * - Detailed variant: For product pages (shows full details)
7
- *
8
- * Copyright (c) 2025 QwickApps.com. All rights reserved.
9
- */
10
1
  import { WithDataBinding } from '@qwickapps/schema';
11
2
  import { WithBaseProps } from '../../hooks';
12
3
  export interface Product {
@@ -1 +1 @@
1
- {"version":3,"file":"ProductCard.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/ProductCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AASH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAoD,aAAa,EAAE,MAAM,aAAa,CAAC;AAI9F,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;IAC5C,KAAK,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,UAAU,oBAAqB,SAAQ,aAAa;IAClD,mBAAmB;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mBAAmB;IACnB,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IACjC,6DAA6D;IAC7D,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC9B,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,gCAAgC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mCAAmC;IACnC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,+CAA+C;IAC/C,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB,EAAE,eAAe;CAAG;AA+UlF;;;GAGG;AACH,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,kDAmE3C;AAED,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"ProductCard.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/ProductCard.tsx"],"names":[],"mappings":"AAmBA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAoD,aAAa,EAAE,MAAM,aAAa,CAAC;AAI9F,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;IAC5C,KAAK,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,UAAU,oBAAqB,SAAQ,aAAa;IAClD,mBAAmB;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mBAAmB;IACnB,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IACjC,6DAA6D;IAC7D,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC9B,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,gCAAgC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mCAAmC;IACnC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,+CAA+C;IAC/C,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB,EAAE,eAAe;CAAG;AAiVlF;;;GAGG;AACH,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,kDAsE3C;AAED,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -1,7 +1,8 @@
1
1
  /**
2
- * Section Component - Themed, responsive section container with data binding support
2
+ * Section Component - Factory-based implementation using createSerializableView
3
3
  *
4
- * Enhanced with data binding support through dataSource prop.
4
+ * Migrated from class-based ModelView to factory pattern for better
5
+ * schema-driven architecture while preserving all functionality.
5
6
  *
6
7
  * Usage:
7
8
  * - Traditional: <Section background="#f5f5f5" padding="large">Content</Section>
@@ -15,15 +16,13 @@
15
16
  *
16
17
  * Copyright (c) 2025 QwickApps.com. All rights reserved.
17
18
  */
18
- import type { WithDataBinding } from '@qwickapps/schema';
19
- import React, { ReactNode } from 'react';
20
- import { WithBaseProps } from '../../hooks';
21
- import SectionModel from '../../schemas/SectionSchema';
22
- import { ModelView } from '../base/ModelView';
19
+ import { SerializableComponent } from '../shared/createSerializableView';
20
+ import { ViewProps } from '../shared/viewProps';
23
21
  import type { BreakpointValue } from '../../types';
24
- interface SectionViewProps extends WithBaseProps {
25
- /** Section content */
26
- children?: React.ReactNode;
22
+ /**
23
+ * Props interface for Section component - extends ViewProps
24
+ */
25
+ export interface SectionProps extends ViewProps {
27
26
  /** Section background color */
28
27
  background?: string;
29
28
  /** Section text color */
@@ -35,19 +34,12 @@ interface SectionViewProps extends WithBaseProps {
35
34
  /** HTML element type */
36
35
  component?: 'div' | 'section' | 'article' | 'main';
37
36
  }
38
- export interface SectionProps extends SectionViewProps, WithDataBinding {
39
- }
40
- export declare class Section extends ModelView<SectionProps, SectionModel> {
41
- static readonly tagName = "Section";
42
- static readonly version = "1.0.0";
43
- protected hasNestedComponents(children: ReactNode): boolean;
44
- protected serializeChildren(children: ReactNode): any;
45
- protected getComponentSpecificProps(): any;
46
- protected renderView(): React.ReactElement;
47
- protected renderWithDataBinding(): React.ReactElement;
48
- static registerPatternHandlers(registry: any): void;
49
- private static transformSection;
50
- private static transformBlogSection;
51
- }
37
+ /**
38
+ * Create Section component using the factory pattern
39
+ */
40
+ export declare const Section: SerializableComponent<SectionProps>;
41
+ /**
42
+ * Export the component as default
43
+ */
52
44
  export default Section;
53
45
  //# sourceMappingURL=Section.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Section.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/Section.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,EAAgB,SAAS,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,EAAoD,aAAa,EAAE,MAAM,aAAa,CAAC;AAC9F,OAAO,YAAY,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGnD,UAAU,gBAAiB,SAAQ,aAAa;IAC9C,sBAAsB;IACtB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,+BAA+B;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,aAAa,CAAC;IACzE,6DAA6D;IAC7D,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,wBAAwB;IACxB,SAAS,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;CACpD;AAED,MAAM,WAAW,YAAa,SAAQ,gBAAgB,EAAE,eAAe;CAAG;AA4G1E,qBAAa,OAAQ,SAAQ,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IAEhE,MAAM,CAAC,QAAQ,CAAC,OAAO,aAAa;IACpC,MAAM,CAAC,QAAQ,CAAC,OAAO,WAAW;IAGlC,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,SAAS,GAAG,OAAO;IAK3D,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,GAAG,GAAG;IAarD,SAAS,CAAC,yBAAyB,IAAI,GAAG;IAW1C,SAAS,CAAC,UAAU,IAAI,KAAK,CAAC,YAAY;IAM1C,SAAS,CAAC,qBAAqB,IAAI,KAAK,CAAC,YAAY;IAKrD,MAAM,CAAC,uBAAuB,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI;IAanD,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAiB/B,OAAO,CAAC,MAAM,CAAC,oBAAoB;CAcpC;AAmED,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"Section.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/Section.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGnD;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,SAAS;IAC7C,+BAA+B;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,aAAa,CAAC;IACzE,6DAA6D;IAC7D,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,wBAAwB;IACxB,SAAS,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;CACpD;AAyGD;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,qBAAqB,CAAC,YAAY,CAYtD,CAAC;AAwDH;;GAEG;AACH,eAAe,OAAO,CAAC"}
@@ -16,28 +16,13 @@
16
16
  */
17
17
  import { SerializableComponent } from '../shared/createSerializableView';
18
18
  import { ViewProps } from '../shared/viewProps';
19
+ import TextSchema from '../../schemas/TextSchema';
20
+ import type { SchemaProps } from '@qwickapps/schema/src/types/ModelProps';
19
21
  /**
20
- * Props interface for Text component - extends ViewProps with text-specific properties
22
+ * Props interface for Text component
23
+ * Uses SchemaProps<typeof TextSchema> for clean typing
21
24
  */
22
- export interface TextProps extends ViewProps {
23
- content?: string;
24
- variant?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'subtitle1' | 'subtitle2' | 'body1' | 'body2' | 'button' | 'caption' | 'overline';
25
- color?: 'primary' | 'secondary' | 'textPrimary' | 'textSecondary' | 'error' | 'warning' | 'info' | 'success' | 'inherit';
26
- align?: 'left' | 'center' | 'right' | 'justify' | 'inherit';
27
- component?: 'p' | 'span' | 'div' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'label' | 'legend';
28
- fontWeight?: 'inherit' | 'lighter' | 'normal' | 'bold' | 'bolder' | '100' | '200' | '300' | '400' | '500' | '600' | '700' | '800' | '900';
29
- textDecoration?: 'none' | 'underline' | 'overline' | 'line-through';
30
- textTransform?: 'none' | 'capitalize' | 'uppercase' | 'lowercase' | 'inherit';
31
- noWrap?: boolean;
32
- paragraph?: boolean;
33
- gutterBottom?: boolean;
34
- fontSize?: string;
35
- lineHeight?: string;
36
- letterSpacing?: string;
37
- fontFamily?: string;
38
- customColor?: string;
39
- maxWidth?: string;
40
- }
25
+ export type TextProps = ViewProps & SchemaProps<typeof TextSchema>;
41
26
  /**
42
27
  * Create Text component using the factory pattern
43
28
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/Text.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGhD;;GAEG;AACH,MAAM,WAAW,SAAU,SAAQ,SAAS;IAE1C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,WAAW,GAAG,WAAW,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IACtI,KAAK,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,aAAa,GAAG,eAAe,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;IACzH,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;IAC5D,SAAS,CAAC,EAAE,GAAG,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,OAAO,GAAG,QAAQ,CAAC;IAGhG,UAAU,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;IAC1I,cAAc,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,cAAc,CAAC;IACpE,aAAa,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,GAAG,WAAW,GAAG,SAAS,CAAC;IAG9E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IAGvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AA8ED;;GAEG;AACH,eAAO,MAAM,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAKhD,CAAC;AAoEH;;GAEG;AACH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/Text.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAE1E;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC,OAAO,UAAU,CAAC,CAAC;AA6EnE;;GAEG;AACH,eAAO,MAAM,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAMhD,CAAC;AAuFH;;GAEG;AACH,eAAe,IAAI,CAAC"}
@@ -14,9 +14,15 @@
14
14
  * Copyright (c) 2025 QwickApps.com. All rights reserved.
15
15
  */
16
16
  import React from 'react';
17
- import type { WithDataBinding, ModelProps } from '@qwickapps/schema';
18
17
  import ButtonModel from '../../schemas/ButtonSchema';
19
- import { ModelView } from '../base/ModelView';
18
+ import { SerializableComponent } from '../shared/createSerializableView';
19
+ import { ViewProps } from '../shared/viewProps';
20
+ import type { SchemaProps } from '@qwickapps/schema/src/types/ModelProps';
21
+ /**
22
+ * Re-export getIconComponent from iconMap for backwards compatibility
23
+ * Other components (Scaffold, ResponsiveMenu, etc.) may import from this file
24
+ */
25
+ export { getIconComponent, iconMap } from '../../utils/iconMap';
20
26
  export interface ButtonAction {
21
27
  type: 'navigate' | 'submit' | 'custom' | 'external';
22
28
  url?: string;
@@ -24,30 +30,20 @@ export interface ButtonAction {
24
30
  form?: string;
25
31
  customHandler?: string;
26
32
  }
27
- type ButtonViewProps = ModelProps<ButtonModel> & {
28
- /** Icon to display (before text) */
33
+ /**
34
+ * Props interface for Button component
35
+ * Uses SchemaProps<typeof ButtonSchema> for schema-driven typing
36
+ * Icons are transformed from strings to React components by finalize function
37
+ *
38
+ * Note: We omit 'icon' and 'endIcon' from schema props because they are strings in the schema
39
+ * but get transformed to ReactElements by the finalize function.
40
+ */
41
+ export type ButtonProps = ViewProps & Omit<SchemaProps<typeof ButtonModel>, 'icon' | 'endIcon'> & {
29
42
  icon?: React.ReactNode;
30
- /** Icon to display after text */
31
43
  endIcon?: React.ReactNode;
32
- /** Event handler for clicks */
33
- onClick?: (event: React.MouseEvent<HTMLButtonElement>) => void;
34
- /** Button content when using children */
35
- children?: React.ReactNode;
36
- /** Serializable action descriptor for buttons */
37
44
  action?: ButtonAction;
45
+ type?: 'button' | 'submit' | 'reset';
38
46
  };
39
- export interface ButtonProps extends ButtonViewProps, WithDataBinding {
40
- }
41
- export declare class Button extends ModelView<ButtonProps, ButtonModel> {
42
- static readonly tagName = "Button";
43
- static readonly version = "1.0.0";
44
- protected getComponentSpecificProps(): any;
45
- protected renderView(): React.ReactElement;
46
- protected renderWithDataBinding(): React.ReactElement;
47
- static registerPatternHandlers(registry: any): void;
48
- private static transformButton;
49
- private static transformInputButton;
50
- private static transformSubmitButton;
51
- }
47
+ export declare const Button: SerializableComponent<ButtonProps>;
52
48
  export default Button;
53
49
  //# sourceMappingURL=Button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/buttons/Button.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAuB,MAAM,OAAO,CAAC;AAE5C,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGrE,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC;IACpD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,KAAK,eAAe,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG;IAC/C,oCAAoC;IACpC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,iCAAiC;IACjC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,+BAA+B;IAC/B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC/D,yCAAyC;IACzC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,iDAAiD;IACjD,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB,CAAC;AAEF,MAAM,WAAW,WAAY,SAAQ,eAAe,EAAE,eAAe;CAAG;AAuLxE,qBAAa,MAAO,SAAQ,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;IAE7D,MAAM,CAAC,QAAQ,CAAC,OAAO,YAAY;IACnC,MAAM,CAAC,QAAQ,CAAC,OAAO,WAAW;IAGlC,SAAS,CAAC,yBAAyB,IAAI,GAAG;IAgB1C,SAAS,CAAC,UAAU,IAAI,KAAK,CAAC,YAAY;IAM1C,SAAS,CAAC,qBAAqB,IAAI,KAAK,CAAC,YAAY;IAKrD,MAAM,CAAC,uBAAuB,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI;IAkBnD,OAAO,CAAC,MAAM,CAAC,eAAe;IAqB9B,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAenC,OAAO,CAAC,MAAM,CAAC,qBAAqB;CAcrC;AAkED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/buttons/Button.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAG1E;;;GAGG;AACH,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAGhE,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC;IACpD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG;IAEhG,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE1B,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;CACtC,CAAC;AAsOF,eAAO,MAAM,MAAM,EAAE,qBAAqB,CAAC,WAAW,CA0BpD,CAAC;AAwEH,eAAe,MAAM,CAAC"}
@@ -10,9 +10,9 @@
10
10
  *
11
11
  * Copyright (c) 2025 QwickApps.com. All rights reserved.
12
12
  */
13
- import type { WithDataBinding, ModelProps } from '@qwickapps/schema';
13
+ import type { WithDataBinding, SchemaProps } from '@qwickapps/schema';
14
14
  import PaletteSwitcherModel from '../../schemas/PaletteSwitcherSchema';
15
- type PaletteSwitcherViewProps = ModelProps<PaletteSwitcherModel>;
15
+ type PaletteSwitcherViewProps = SchemaProps<PaletteSwitcherModel>;
16
16
  export interface PaletteSwitcherProps extends PaletteSwitcherViewProps, WithDataBinding {
17
17
  }
18
18
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"PaletteSwitcher.d.ts","sourceRoot":"","sources":["../../../src/components/buttons/PaletteSwitcher.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAkBH,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAKrE,OAAO,oBAAoB,MAAM,qCAAqC,CAAC;AAEvE,KAAK,wBAAwB,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;AAEjE,MAAM,WAAW,oBAAqB,SAAQ,wBAAwB,EAAE,eAAe;CAAG;AAoK1F;;;GAGG;AACH,iBAAS,eAAe,CAAC,KAAK,EAAE,oBAAoB,kDAwDnD;AAKD,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"PaletteSwitcher.d.ts","sourceRoot":"","sources":["../../../src/components/buttons/PaletteSwitcher.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAkBH,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAKtE,OAAO,oBAAoB,MAAM,qCAAqC,CAAC;AAEvE,KAAK,wBAAwB,GAAG,WAAW,CAAC,oBAAoB,CAAC,CAAC;AAElE,MAAM,WAAW,oBAAqB,SAAQ,wBAAwB,EAAE,eAAe;CAAG;AAoK1F;;;GAGG;AACH,iBAAS,eAAe,CAAC,KAAK,EAAE,oBAAoB,kDA2DnD;AAKD,eAAe,eAAe,CAAC"}