@qwickapps/react-framework 1.4.9 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (738) hide show
  1. package/README.md +23 -0
  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 +4143 -2318
  118. package/dist/index.js +4169 -2315
  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.1.5.1.css +172 -0
  124. package/dist/palettes/palette-autumn.1.5.1.min.css +1 -0
  125. package/dist/palettes/palette-autumn.latest.css +172 -0
  126. package/dist/palettes/palette-autumn.latest.min.css +1 -0
  127. package/dist/palettes/palette-cosmic.1.4.9.min.css +1 -0
  128. package/dist/palettes/palette-cosmic.1.5.0.css +172 -0
  129. package/dist/palettes/palette-cosmic.1.5.0.min.css +1 -0
  130. package/dist/palettes/palette-cosmic.1.5.1.css +172 -0
  131. package/dist/palettes/palette-cosmic.1.5.1.min.css +1 -0
  132. package/dist/palettes/palette-cosmic.latest.css +172 -0
  133. package/dist/palettes/palette-cosmic.latest.min.css +1 -0
  134. package/dist/palettes/palette-default.1.4.9.min.css +1 -0
  135. package/dist/palettes/palette-default.1.5.0.css +178 -0
  136. package/dist/palettes/palette-default.1.5.0.min.css +1 -0
  137. package/dist/palettes/palette-default.1.5.1.css +178 -0
  138. package/dist/palettes/palette-default.1.5.1.min.css +1 -0
  139. package/dist/palettes/palette-default.latest.css +178 -0
  140. package/dist/palettes/palette-default.latest.min.css +1 -0
  141. package/dist/palettes/palette-ocean.1.4.9.min.css +1 -0
  142. package/dist/palettes/palette-ocean.1.5.0.css +172 -0
  143. package/dist/palettes/palette-ocean.1.5.0.min.css +1 -0
  144. package/dist/palettes/palette-ocean.1.5.1.css +172 -0
  145. package/dist/palettes/palette-ocean.1.5.1.min.css +1 -0
  146. package/dist/palettes/palette-ocean.latest.css +172 -0
  147. package/dist/palettes/palette-ocean.latest.min.css +1 -0
  148. package/dist/palettes/palette-spring.1.4.9.min.css +1 -0
  149. package/dist/palettes/palette-spring.1.5.0.css +160 -0
  150. package/dist/palettes/palette-spring.1.5.0.min.css +1 -0
  151. package/dist/palettes/palette-spring.1.5.1.css +160 -0
  152. package/dist/palettes/palette-spring.1.5.1.min.css +1 -0
  153. package/dist/palettes/palette-spring.latest.css +160 -0
  154. package/dist/palettes/palette-spring.latest.min.css +1 -0
  155. package/dist/palettes/palette-winter.1.4.9.min.css +1 -0
  156. package/dist/palettes/palette-winter.1.5.0.css +172 -0
  157. package/dist/palettes/palette-winter.1.5.0.min.css +1 -0
  158. package/dist/palettes/palette-winter.1.5.1.css +172 -0
  159. package/dist/palettes/palette-winter.1.5.1.min.css +1 -0
  160. package/dist/palettes/palette-winter.latest.css +172 -0
  161. package/dist/palettes/palette-winter.latest.min.css +1 -0
  162. package/dist/schemas/ButtonSchema.d.ts +5 -2
  163. package/dist/schemas/ButtonSchema.d.ts.map +1 -1
  164. package/dist/schemas/CardListGridSchema.d.ts +4 -4
  165. package/dist/schemas/CardListGridSchema.d.ts.map +1 -1
  166. package/dist/schemas/ChoiceInputFieldSchema.d.ts +2 -2
  167. package/dist/schemas/ChoiceInputFieldSchema.d.ts.map +1 -1
  168. package/dist/schemas/CodeSchema.d.ts +1 -2
  169. package/dist/schemas/CodeSchema.d.ts.map +1 -1
  170. package/dist/schemas/FormBlockSchema.d.ts +2 -2
  171. package/dist/schemas/FormBlockSchema.d.ts.map +1 -1
  172. package/dist/schemas/GridCellSchema.d.ts +2 -4
  173. package/dist/schemas/GridCellSchema.d.ts.map +1 -1
  174. package/dist/schemas/GridLayoutSchema.d.ts +3 -5
  175. package/dist/schemas/GridLayoutSchema.d.ts.map +1 -1
  176. package/dist/schemas/HeroBlockSchema.d.ts +2 -2
  177. package/dist/schemas/HeroBlockSchema.d.ts.map +1 -1
  178. package/dist/schemas/HtmlInputFieldSchema.d.ts +2 -2
  179. package/dist/schemas/HtmlInputFieldSchema.d.ts.map +1 -1
  180. package/dist/schemas/ImageSchema.d.ts +2 -2
  181. package/dist/schemas/ImageSchema.d.ts.map +1 -1
  182. package/dist/schemas/SectionSchema.d.ts +2 -4
  183. package/dist/schemas/SectionSchema.d.ts.map +1 -1
  184. package/dist/schemas/SelectInputFieldSchema.d.ts +2 -2
  185. package/dist/schemas/SelectInputFieldSchema.d.ts.map +1 -1
  186. package/dist/schemas/SwitchInputFieldSchema.d.ts +2 -2
  187. package/dist/schemas/SwitchInputFieldSchema.d.ts.map +1 -1
  188. package/dist/schemas/TextInputFieldSchema.d.ts +2 -2
  189. package/dist/schemas/TextInputFieldSchema.d.ts.map +1 -1
  190. package/dist/schemas/ViewSchema.d.ts +8 -7
  191. package/dist/schemas/ViewSchema.d.ts.map +1 -1
  192. package/dist/schemas/transformers/ComponentTransformer.d.ts +2 -2
  193. package/dist/schemas/transformers/ComponentTransformer.d.ts.map +1 -1
  194. package/dist/schemas/transformers/ReactNodeTransformer.d.ts +2 -2
  195. package/dist/schemas/transformers/ReactNodeTransformer.d.ts.map +1 -1
  196. package/dist/schemas/transformers/registry.d.ts +0 -7
  197. package/dist/schemas/transformers/registry.d.ts.map +1 -1
  198. package/dist/schemas/types/Serializable.d.ts +3 -3
  199. package/dist/schemas/types/Serializable.d.ts.map +1 -1
  200. package/dist/stories/_templates/SerializationTemplate.d.ts.map +1 -0
  201. package/dist/types/CollapsibleLayout.d.ts +3 -3
  202. package/dist/types/CollapsibleLayout.d.ts.map +1 -1
  203. package/dist/types/ContentProxy.d.ts +4 -4
  204. package/dist/types/ContentProxy.d.ts.map +1 -1
  205. package/dist/types/DataTypes.d.ts +4 -4
  206. package/dist/types/DataTypes.d.ts.map +1 -1
  207. package/dist/types/TemplateProvider.d.ts +1 -1
  208. package/dist/types/TemplateProvider.d.ts.map +1 -1
  209. package/dist/types/TemplateResolver.d.ts +1 -1
  210. package/dist/types/TemplateResolver.d.ts.map +1 -1
  211. package/dist/utils/htmlTransform.d.ts +1 -1
  212. package/dist/utils/htmlTransform.d.ts.map +1 -1
  213. package/dist/utils/iconMap.d.ts +48 -0
  214. package/dist/utils/iconMap.d.ts.map +1 -0
  215. package/dist/utils/index.d.ts +3 -0
  216. package/dist/utils/index.d.ts.map +1 -1
  217. package/dist/utils/logger.d.ts +11 -7
  218. package/dist/utils/logger.d.ts.map +1 -1
  219. package/dist/utils/paletteLoader.d.ts +34 -0
  220. package/dist/utils/paletteLoader.d.ts.map +1 -0
  221. package/dist/utils/paletteManifest.d.ts +51 -0
  222. package/dist/utils/paletteManifest.d.ts.map +1 -0
  223. package/dist/utils/paletteUtils.d.ts.map +1 -1
  224. package/dist/utils/reactUtils.d.ts +12 -6
  225. package/dist/utils/reactUtils.d.ts.map +1 -1
  226. package/dist/utils/spacing.d.ts +2 -2
  227. package/dist/utils/spacing.d.ts.map +1 -1
  228. package/dist/utils/themePerformanceMonitor.d.ts.map +1 -1
  229. package/dist/utils/themeUtils.d.ts.map +1 -1
  230. package/package.json +20 -9
  231. package/scripts/build-palettes.cjs +120 -0
  232. package/src/__tests__/components/Article.test.tsx +1 -1
  233. package/src/__tests__/components/Breadcrumbs.test.tsx +2 -2
  234. package/src/__tests__/components/Button.test.tsx +3 -3
  235. package/src/__tests__/components/CardListGrid.test.tsx +5 -5
  236. package/src/__tests__/components/ChoiceInputField.test.tsx +2 -2
  237. package/src/__tests__/components/Code.test.tsx +2 -2
  238. package/src/__tests__/components/Content.integration.test.tsx +1 -1
  239. package/src/__tests__/components/Content.test.tsx +5 -5
  240. package/src/__tests__/components/CoverImageHeader.test.tsx +3 -3
  241. package/src/__tests__/components/FeatureCard.integration.test.tsx +1 -1
  242. package/src/__tests__/components/FeatureGrid.integration.test.tsx +1 -1
  243. package/src/__tests__/components/FeatureGrid.test.tsx +3 -3
  244. package/src/__tests__/components/Footer.test.tsx +3 -3
  245. package/src/__tests__/components/FormBlock.test.tsx +2 -2
  246. package/src/__tests__/components/HeroBlock.integration.test.tsx +1 -1
  247. package/src/__tests__/components/HeroBlock.test.tsx +4 -4
  248. package/src/__tests__/components/HtmlInputField.test.tsx +8 -8
  249. package/src/__tests__/components/PageBannerHeader.test.tsx +7 -7
  250. package/src/__tests__/components/PaletteSwitcher.test.tsx +3 -3
  251. package/src/__tests__/components/ProductCard.test.tsx +1 -1
  252. package/src/__tests__/components/Section.integration.test.tsx +1 -1
  253. package/src/__tests__/components/Section.test.tsx +1 -1
  254. package/src/__tests__/components/SelectInputField.test.tsx +2 -2
  255. package/src/__tests__/components/TextInputField.test.tsx +4 -4
  256. package/src/__tests__/components/ThemeSwitcher.test.tsx +3 -3
  257. package/src/__tests__/components/base/Container.test.tsx +22 -21
  258. package/src/__tests__/components/blocks/Code.performance.test.tsx +10 -10
  259. package/src/__tests__/components/blocks/Code.serialization.test.tsx +9 -9
  260. package/src/__tests__/components/blocks/HeroBlock.serialization.test.tsx +2 -3
  261. package/src/__tests__/components/blocks/Image.serialization.test.tsx +8 -7
  262. package/src/__tests__/components/blocks/Section.serialization.test.tsx +8 -8
  263. package/src/__tests__/components/blocks/Text.performance.test.tsx +5 -5
  264. package/src/__tests__/components/blocks/Text.serialization.test.tsx +9 -9
  265. package/src/__tests__/components/buttons/Button.serialization.test.tsx +4 -4
  266. package/src/__tests__/components/input/FormComponents.serialization.test.tsx +9 -9
  267. package/src/__tests__/components/input/SelectInputField.serialization.test.tsx +16 -18
  268. package/src/__tests__/components/input/TextInputField.serialization.test.tsx +9 -9
  269. package/src/__tests__/components/layout/CollapsibleLayout.test.tsx +5 -9
  270. package/src/__tests__/components/layout/GridCell.serialization.test.tsx +5 -5
  271. package/src/__tests__/components/layout/GridLayout.serialization.test.tsx +5 -5
  272. package/src/__tests__/hooks/usePrintMode.test.ts +1 -0
  273. package/src/__tests__/schemas/builders.test.ts +2 -2
  274. package/src/__tests__/schemas/transformers/ComponentSerializationPatterns.test.tsx +28 -28
  275. package/src/__tests__/schemas/transformers/ComponentTransformer.htmlPatterns.test.ts +5 -5
  276. package/src/__tests__/schemas/transformers/ComponentTransformer.test.ts +11 -11
  277. package/src/__tests__/schemas/transformers/CrossBrowserCompatibility.test.ts +10 -10
  278. package/src/__tests__/schemas/transformers/MockSerializableComponent.ts +15 -15
  279. package/src/__tests__/schemas/transformers/RealWorldScenarios.test.tsx +19 -19
  280. package/src/__tests__/schemas/transformers/SerializationErrorHandling.test.ts +15 -15
  281. package/src/__tests__/schemas/transformers/SerializationIntegration.test.tsx +19 -21
  282. package/src/__tests__/schemas/transformers/SerializationPerformance.test.ts +15 -15
  283. package/src/__tests__/schemas/transformers/TestAutomation.test.ts +3 -3
  284. package/src/__tests__/schemas/transformers/nested-serialization.test.tsx +1 -1
  285. package/src/__tests__/schemas/transformers/round-trip-component-serialization.test.tsx +10 -10
  286. package/src/__tests__/utils/optional-logging.test.ts +3 -3
  287. package/src/components/AccessibilityProvider.tsx +4 -2
  288. package/src/components/ErrorBoundary.tsx +1 -1
  289. package/src/components/Html.tsx +13 -16
  290. package/src/components/Logo.tsx +42 -29
  291. package/src/components/Markdown.tsx +9 -9
  292. package/src/components/ProductLogo.tsx +118 -0
  293. package/src/components/QwickApp.css +37 -1060
  294. package/src/components/QwickApp.tsx +1 -1
  295. package/src/components/QwickAppsLogo.tsx +1 -1
  296. package/src/components/ResponsiveMenu.tsx +1 -1
  297. package/src/components/SafeSpan.tsx +8 -8
  298. package/src/components/Scaffold.css +11 -1
  299. package/src/components/Scaffold.tsx +55 -25
  300. package/src/components/base/Container.tsx +2 -2
  301. package/src/components/base/ModelView.tsx +28 -27
  302. package/src/components/base/index.ts +1 -1
  303. package/src/components/blocks/Article.tsx +213 -69
  304. package/src/components/blocks/CardListGrid.tsx +18 -14
  305. package/src/components/blocks/Code.tsx +18 -13
  306. package/src/components/blocks/Content.tsx +15 -10
  307. package/src/components/blocks/CoverImageHeader.tsx +14 -9
  308. package/src/components/blocks/FeatureCard.tsx +16 -11
  309. package/src/components/blocks/FeatureGrid.tsx +13 -8
  310. package/src/components/blocks/Footer.tsx +25 -16
  311. package/src/components/blocks/HeroBlock.tsx +12 -13
  312. package/src/components/blocks/Image.tsx +16 -8
  313. package/src/components/blocks/PageBannerHeader.tsx +15 -11
  314. package/src/components/blocks/ProductCard.tsx +32 -25
  315. package/src/components/blocks/Section.tsx +21 -13
  316. package/src/components/blocks/Text.tsx +26 -11
  317. package/src/components/buttons/Button.tsx +22 -118
  318. package/src/components/buttons/PaletteSwitcher.tsx +11 -8
  319. package/src/components/buttons/ThemeSwitcher.tsx +20 -16
  320. package/src/components/dialogs/Dialog.tsx +126 -0
  321. package/src/components/dialogs/index.ts +15 -0
  322. package/src/components/forms/Captcha.tsx +291 -0
  323. package/src/components/forms/FormBlock.tsx +22 -15
  324. package/src/components/forms/FormCheckbox.tsx +116 -0
  325. package/src/components/forms/FormField.tsx +180 -0
  326. package/src/components/forms/FormSelect.tsx +140 -0
  327. package/src/components/forms/index.ts +13 -1
  328. package/src/components/index.ts +13 -2
  329. package/src/components/input/ChoiceInputField.tsx +1 -2
  330. package/src/components/input/HtmlInputField.tsx +2 -3
  331. package/src/components/input/SelectInputField.tsx +31 -5
  332. package/src/components/input/SwitchInputField.tsx +3 -4
  333. package/src/components/input/TextField.tsx +2 -2
  334. package/src/components/input/TextInputField.tsx +32 -6
  335. package/src/components/layout/CollapsibleLayout/CollapsibleLayout.tsx +13 -13
  336. package/src/components/layout/GridCell.tsx +10 -9
  337. package/src/components/layout/GridCellWrapper.tsx +1 -1
  338. package/src/components/layout/GridLayout.tsx +29 -32
  339. package/src/components/pages/FormPage.tsx +0 -1
  340. package/src/components/pages/Page.tsx +2 -2
  341. package/src/components/shared/createSerializableView.tsx +24 -23
  342. package/src/components/shared/viewProps.ts +11 -11
  343. package/src/config/AppConfig.ts +2 -2
  344. package/src/config/__tests__/AppConfig.test.ts +3 -3
  345. package/src/config/__tests__/AppConfigBuilder.test.ts +10 -11
  346. package/src/config/types.ts +1 -1
  347. package/src/contexts/DataContext.tsx +58 -52
  348. package/src/contexts/PaletteContext.tsx +22 -9
  349. package/src/contexts/PrintModeContext.tsx +4 -4
  350. package/src/contexts/ThemeContext.tsx +2 -1
  351. package/src/hooks/useBaseProps.ts +10 -10
  352. package/src/hooks/useDataBinding.ts +15 -18
  353. package/src/hooks/usePrintMode.ts +3 -3
  354. package/src/index.ts +2 -0
  355. package/src/palettes/manifest.json +72 -0
  356. package/src/palettes/manifest.schema.json +74 -0
  357. package/src/schemas/CardListGridSchema.ts +3 -3
  358. package/src/schemas/CodeSchema.ts +0 -1
  359. package/src/schemas/FeatureGridSchema.ts +1 -1
  360. package/src/schemas/FormBlockSchema.ts +1 -1
  361. package/src/schemas/GridCellSchema.ts +0 -1
  362. package/src/schemas/GridLayoutSchema.ts +0 -1
  363. package/src/schemas/SectionSchema.ts +0 -1
  364. package/src/schemas/ViewSchema.ts +6 -6
  365. package/src/schemas/transformers/ComponentTransformer.ts +37 -20
  366. package/src/schemas/transformers/ReactNodeTransformer.ts +18 -16
  367. package/src/schemas/transformers/registry.ts +28 -24
  368. package/src/schemas/types/Serializable.ts +3 -3
  369. package/src/setupTests.js +9 -0
  370. package/src/stories/AccessibilityProvider.stories.tsx +0 -1
  371. package/src/stories/CardListGrid.stories.tsx +1 -1
  372. package/src/stories/Code.stories.tsx +2 -3
  373. package/src/stories/CollapsibleLayout.stories.tsx +41 -37
  374. package/src/stories/Container.stories.tsx +1 -2
  375. package/src/stories/DataBinding.advanced.stories.tsx +15 -9
  376. package/src/stories/DataProvider.stories.tsx +33 -16
  377. package/src/stories/ErrorBoundary.stories.tsx +28 -26
  378. package/src/stories/FeatureGrid.stories.tsx +0 -1
  379. package/src/stories/FormBlock.stories.tsx +8 -8
  380. package/src/stories/FormComponents.stories.tsx +15 -11
  381. package/src/stories/GridCell.stories.tsx +5 -5
  382. package/src/stories/GridLayout.stories.tsx +5 -5
  383. package/src/stories/Image.stories.tsx +5 -7
  384. package/src/stories/Introduction.stories.tsx +0 -1
  385. package/src/stories/ModelView.stories.tsx +7 -7
  386. package/src/stories/SafeSpan.stories.tsx +7 -3
  387. package/src/stories/Section.stories.tsx +2 -2
  388. package/src/stories/Text.stories.tsx +1 -3
  389. package/src/stories/_templates/SerializationTemplate.tsx +0 -1
  390. package/src/templates/TemplateResolver.ts +2 -2
  391. package/src/types/CollapsibleLayout.ts +2 -2
  392. package/src/types/ContentProxy.ts +6 -6
  393. package/src/types/DataTypes.ts +4 -4
  394. package/src/types/TemplateProvider.ts +1 -1
  395. package/src/types/TemplateResolver.ts +1 -1
  396. package/src/utils/htmlTransform.tsx +17 -11
  397. package/src/utils/iconMap.tsx +244 -0
  398. package/src/utils/index.ts +4 -1
  399. package/src/utils/logger.ts +20 -14
  400. package/src/utils/paletteLoader.ts +218 -0
  401. package/src/utils/paletteManifest.ts +268 -0
  402. package/src/utils/paletteUtils.ts +19 -1
  403. package/src/utils/reactUtils.tsx +34 -33
  404. package/src/utils/spacing.ts +16 -17
  405. package/src/utils/themePerformanceMonitor.js +14 -6
  406. package/src/utils/themeUtils.ts +17 -2
  407. package/dist/components/base/ContainerView.d.ts +0 -65
  408. package/dist/components/base/ContainerView.d.ts.map +0 -1
  409. package/dist/components/blocks/Code-factory.d.ts +0 -22
  410. package/dist/components/blocks/Code-factory.d.ts.map +0 -1
  411. package/dist/components/blocks/Code-old.d.ts +0 -31
  412. package/dist/components/blocks/Code-old.d.ts.map +0 -1
  413. package/dist/qa/ConsoleWarningTest.d.ts +0 -5
  414. package/dist/qa/ConsoleWarningTest.d.ts.map +0 -1
  415. package/dist/qa/StorageKeyTest.d.ts +0 -6
  416. package/dist/qa/StorageKeyTest.d.ts.map +0 -1
  417. package/dist/qa/ThemeStorageKeyTest.d.ts +0 -6
  418. package/dist/qa/ThemeStorageKeyTest.d.ts.map +0 -1
  419. package/dist/schemas/ViewModelSchema.d.ts +0 -63
  420. package/dist/schemas/ViewModelSchema.d.ts.map +0 -1
  421. package/dist/schemas/transformers/__tests__/MockSerializableComponent.d.ts +0 -66
  422. package/dist/schemas/transformers/__tests__/MockSerializableComponent.d.ts.map +0 -1
  423. package/dist/src/__tests__/schemas/transformers/MockSerializableComponent.d.ts +0 -66
  424. package/dist/src/__tests__/schemas/transformers/MockSerializableComponent.d.ts.map +0 -1
  425. package/dist/src/components/AccessibilityChecker.d.ts +0 -12
  426. package/dist/src/components/AccessibilityChecker.d.ts.map +0 -1
  427. package/dist/src/components/AccessibilityProvider.d.ts +0 -64
  428. package/dist/src/components/AccessibilityProvider.d.ts.map +0 -1
  429. package/dist/src/components/Breadcrumbs.d.ts +0 -39
  430. package/dist/src/components/Breadcrumbs.d.ts.map +0 -1
  431. package/dist/src/components/ErrorBoundary.d.ts +0 -46
  432. package/dist/src/components/ErrorBoundary.d.ts.map +0 -1
  433. package/dist/src/components/Html.d.ts +0 -58
  434. package/dist/src/components/Html.d.ts.map +0 -1
  435. package/dist/src/components/Logo.d.ts +0 -56
  436. package/dist/src/components/Logo.d.ts.map +0 -1
  437. package/dist/src/components/Markdown.d.ts +0 -51
  438. package/dist/src/components/Markdown.d.ts.map +0 -1
  439. package/dist/src/components/QwickApp.d.ts +0 -69
  440. package/dist/src/components/QwickApp.d.ts.map +0 -1
  441. package/dist/src/components/QwickAppsLogo.d.ts +0 -25
  442. package/dist/src/components/QwickAppsLogo.d.ts.map +0 -1
  443. package/dist/src/components/QwickIcon.d.ts +0 -23
  444. package/dist/src/components/QwickIcon.d.ts.map +0 -1
  445. package/dist/src/components/ResponsiveMenu.d.ts +0 -38
  446. package/dist/src/components/ResponsiveMenu.d.ts.map +0 -1
  447. package/dist/src/components/SafeSpan.d.ts +0 -29
  448. package/dist/src/components/SafeSpan.d.ts.map +0 -1
  449. package/dist/src/components/Scaffold.d.ts +0 -57
  450. package/dist/src/components/Scaffold.d.ts.map +0 -1
  451. package/dist/src/components/base/Container.d.ts +0 -33
  452. package/dist/src/components/base/Container.d.ts.map +0 -1
  453. package/dist/src/components/base/ModelView.d.ts +0 -92
  454. package/dist/src/components/base/ModelView.d.ts.map +0 -1
  455. package/dist/src/components/base/index.d.ts +0 -12
  456. package/dist/src/components/base/index.d.ts.map +0 -1
  457. package/dist/src/components/blocks/Article.d.ts +0 -32
  458. package/dist/src/components/blocks/Article.d.ts.map +0 -1
  459. package/dist/src/components/blocks/CardListGrid.d.ts +0 -23
  460. package/dist/src/components/blocks/CardListGrid.d.ts.map +0 -1
  461. package/dist/src/components/blocks/Code.d.ts +0 -37
  462. package/dist/src/components/blocks/Code.d.ts.map +0 -1
  463. package/dist/src/components/blocks/Content.d.ts +0 -24
  464. package/dist/src/components/blocks/Content.d.ts.map +0 -1
  465. package/dist/src/components/blocks/CoverImageHeader.d.ts +0 -44
  466. package/dist/src/components/blocks/CoverImageHeader.d.ts.map +0 -1
  467. package/dist/src/components/blocks/FeatureCard.d.ts +0 -66
  468. package/dist/src/components/blocks/FeatureCard.d.ts.map +0 -1
  469. package/dist/src/components/blocks/FeatureGrid.d.ts +0 -48
  470. package/dist/src/components/blocks/FeatureGrid.d.ts.map +0 -1
  471. package/dist/src/components/blocks/Footer.d.ts +0 -56
  472. package/dist/src/components/blocks/Footer.d.ts.map +0 -1
  473. package/dist/src/components/blocks/HeroBlock.d.ts +0 -55
  474. package/dist/src/components/blocks/HeroBlock.d.ts.map +0 -1
  475. package/dist/src/components/blocks/Image.d.ts +0 -40
  476. package/dist/src/components/blocks/Image.d.ts.map +0 -1
  477. package/dist/src/components/blocks/PageBannerHeader.d.ts +0 -30
  478. package/dist/src/components/blocks/PageBannerHeader.d.ts.map +0 -1
  479. package/dist/src/components/blocks/ProductCard.d.ts +0 -57
  480. package/dist/src/components/blocks/ProductCard.d.ts.map +0 -1
  481. package/dist/src/components/blocks/Section.d.ts +0 -45
  482. package/dist/src/components/blocks/Section.d.ts.map +0 -1
  483. package/dist/src/components/blocks/Text.d.ts +0 -34
  484. package/dist/src/components/blocks/Text.d.ts.map +0 -1
  485. package/dist/src/components/blocks/index.d.ts +0 -41
  486. package/dist/src/components/blocks/index.d.ts.map +0 -1
  487. package/dist/src/components/buttons/Button.d.ts +0 -57
  488. package/dist/src/components/buttons/Button.d.ts.map +0 -1
  489. package/dist/src/components/buttons/PaletteSwitcher.d.ts +0 -24
  490. package/dist/src/components/buttons/PaletteSwitcher.d.ts.map +0 -1
  491. package/dist/src/components/buttons/ThemeSwitcher.d.ts +0 -24
  492. package/dist/src/components/buttons/ThemeSwitcher.d.ts.map +0 -1
  493. package/dist/src/components/buttons/index.d.ts +0 -11
  494. package/dist/src/components/buttons/index.d.ts.map +0 -1
  495. package/dist/src/components/forms/FormBlock.d.ts +0 -51
  496. package/dist/src/components/forms/FormBlock.d.ts.map +0 -1
  497. package/dist/src/components/forms/index.d.ts +0 -8
  498. package/dist/src/components/forms/index.d.ts.map +0 -1
  499. package/dist/src/components/index.d.ts +0 -41
  500. package/dist/src/components/index.d.ts.map +0 -1
  501. package/dist/src/components/input/ChoiceInputField.d.ts +0 -29
  502. package/dist/src/components/input/ChoiceInputField.d.ts.map +0 -1
  503. package/dist/src/components/input/HtmlInputField.d.ts +0 -33
  504. package/dist/src/components/input/HtmlInputField.d.ts.map +0 -1
  505. package/dist/src/components/input/SelectInputField.d.ts +0 -31
  506. package/dist/src/components/input/SelectInputField.d.ts.map +0 -1
  507. package/dist/src/components/input/SwitchInputField.d.ts +0 -27
  508. package/dist/src/components/input/SwitchInputField.d.ts.map +0 -1
  509. package/dist/src/components/input/TextField.d.ts +0 -18
  510. package/dist/src/components/input/TextField.d.ts.map +0 -1
  511. package/dist/src/components/input/TextInputField.d.ts +0 -34
  512. package/dist/src/components/input/TextInputField.d.ts.map +0 -1
  513. package/dist/src/components/input/index.d.ts +0 -19
  514. package/dist/src/components/input/index.d.ts.map +0 -1
  515. package/dist/src/components/layout/CollapsibleLayout/CollapsibleLayout.d.ts +0 -34
  516. package/dist/src/components/layout/CollapsibleLayout/CollapsibleLayout.d.ts.map +0 -1
  517. package/dist/src/components/layout/CollapsibleLayout/index.d.ts +0 -9
  518. package/dist/src/components/layout/CollapsibleLayout/index.d.ts.map +0 -1
  519. package/dist/src/components/layout/GridCell.d.ts +0 -32
  520. package/dist/src/components/layout/GridCell.d.ts.map +0 -1
  521. package/dist/src/components/layout/GridCellWrapper.d.ts +0 -46
  522. package/dist/src/components/layout/GridCellWrapper.d.ts.map +0 -1
  523. package/dist/src/components/layout/GridLayout.d.ts +0 -50
  524. package/dist/src/components/layout/GridLayout.d.ts.map +0 -1
  525. package/dist/src/components/layout/index.d.ts +0 -14
  526. package/dist/src/components/layout/index.d.ts.map +0 -1
  527. package/dist/src/components/menu/Menu.d.ts +0 -1
  528. package/dist/src/components/menu/Menu.d.ts.map +0 -1
  529. package/dist/src/components/menu/MenuItem.d.ts +0 -31
  530. package/dist/src/components/menu/MenuItem.d.ts.map +0 -1
  531. package/dist/src/components/menu/index.d.ts +0 -7
  532. package/dist/src/components/menu/index.d.ts.map +0 -1
  533. package/dist/src/components/pages/FormPage.d.ts +0 -66
  534. package/dist/src/components/pages/FormPage.d.ts.map +0 -1
  535. package/dist/src/components/pages/Page.d.ts +0 -68
  536. package/dist/src/components/pages/Page.d.ts.map +0 -1
  537. package/dist/src/components/pages/index.d.ts +0 -10
  538. package/dist/src/components/pages/index.d.ts.map +0 -1
  539. package/dist/src/components/shared/createSerializableView.d.ts +0 -81
  540. package/dist/src/components/shared/createSerializableView.d.ts.map +0 -1
  541. package/dist/src/components/shared/viewProps.d.ts +0 -37
  542. package/dist/src/components/shared/viewProps.d.ts.map +0 -1
  543. package/dist/src/config/AppConfig.d.ts +0 -49
  544. package/dist/src/config/AppConfig.d.ts.map +0 -1
  545. package/dist/src/config/AppConfigBuilder.d.ts +0 -75
  546. package/dist/src/config/AppConfigBuilder.d.ts.map +0 -1
  547. package/dist/src/config/index.d.ts +0 -13
  548. package/dist/src/config/index.d.ts.map +0 -1
  549. package/dist/src/config/types.d.ts +0 -130
  550. package/dist/src/config/types.d.ts.map +0 -1
  551. package/dist/src/config.d.ts +0 -15
  552. package/dist/src/config.d.ts.map +0 -1
  553. package/dist/src/contexts/DataContext.d.ts +0 -139
  554. package/dist/src/contexts/DataContext.d.ts.map +0 -1
  555. package/dist/src/contexts/DimensionsContext.d.ts +0 -42
  556. package/dist/src/contexts/DimensionsContext.d.ts.map +0 -1
  557. package/dist/src/contexts/PaletteContext.d.ts +0 -53
  558. package/dist/src/contexts/PaletteContext.d.ts.map +0 -1
  559. package/dist/src/contexts/PrintModeContext.d.ts +0 -27
  560. package/dist/src/contexts/PrintModeContext.d.ts.map +0 -1
  561. package/dist/src/contexts/QwickAppContext.d.ts +0 -71
  562. package/dist/src/contexts/QwickAppContext.d.ts.map +0 -1
  563. package/dist/src/contexts/ThemeContext.d.ts +0 -65
  564. package/dist/src/contexts/ThemeContext.d.ts.map +0 -1
  565. package/dist/src/contexts/index.d.ts +0 -11
  566. package/dist/src/contexts/index.d.ts.map +0 -1
  567. package/dist/src/hooks/index.d.ts +0 -12
  568. package/dist/src/hooks/index.d.ts.map +0 -1
  569. package/dist/src/hooks/useBaseProps.d.ts +0 -101
  570. package/dist/src/hooks/useBaseProps.d.ts.map +0 -1
  571. package/dist/src/hooks/useDataBinding.d.ts +0 -22
  572. package/dist/src/hooks/useDataBinding.d.ts.map +0 -1
  573. package/dist/src/hooks/usePrintMode.d.ts +0 -39
  574. package/dist/src/hooks/usePrintMode.d.ts.map +0 -1
  575. package/dist/src/index.d.ts +0 -9
  576. package/dist/src/index.d.ts.map +0 -1
  577. package/dist/src/palettes/PaletteAutumn.d.ts +0 -10
  578. package/dist/src/palettes/PaletteAutumn.d.ts.map +0 -1
  579. package/dist/src/palettes/PaletteCosmic.d.ts +0 -10
  580. package/dist/src/palettes/PaletteCosmic.d.ts.map +0 -1
  581. package/dist/src/palettes/PaletteDefault.d.ts +0 -10
  582. package/dist/src/palettes/PaletteDefault.d.ts.map +0 -1
  583. package/dist/src/palettes/PaletteOcean.d.ts +0 -10
  584. package/dist/src/palettes/PaletteOcean.d.ts.map +0 -1
  585. package/dist/src/palettes/PaletteSpring.d.ts +0 -10
  586. package/dist/src/palettes/PaletteSpring.d.ts.map +0 -1
  587. package/dist/src/palettes/PaletteWinter.d.ts +0 -10
  588. package/dist/src/palettes/PaletteWinter.d.ts.map +0 -1
  589. package/dist/src/palettes/index.d.ts +0 -13
  590. package/dist/src/palettes/index.d.ts.map +0 -1
  591. package/dist/src/schemas/ActionSchema.d.ts +0 -21
  592. package/dist/src/schemas/ActionSchema.d.ts.map +0 -1
  593. package/dist/src/schemas/ArticleSchema.d.ts +0 -13
  594. package/dist/src/schemas/ArticleSchema.d.ts.map +0 -1
  595. package/dist/src/schemas/ButtonSchema.d.ts +0 -22
  596. package/dist/src/schemas/ButtonSchema.d.ts.map +0 -1
  597. package/dist/src/schemas/CardListGridSchema.d.ts +0 -17
  598. package/dist/src/schemas/CardListGridSchema.d.ts.map +0 -1
  599. package/dist/src/schemas/ChoiceInputFieldSchema.d.ts +0 -18
  600. package/dist/src/schemas/ChoiceInputFieldSchema.d.ts.map +0 -1
  601. package/dist/src/schemas/CodeSchema.d.ts +0 -18
  602. package/dist/src/schemas/CodeSchema.d.ts.map +0 -1
  603. package/dist/src/schemas/CollapsibleLayoutSchema.d.ts +0 -32
  604. package/dist/src/schemas/CollapsibleLayoutSchema.d.ts.map +0 -1
  605. package/dist/src/schemas/ContainerSchema.d.ts +0 -12
  606. package/dist/src/schemas/ContainerSchema.d.ts.map +0 -1
  607. package/dist/src/schemas/ContentSchema.d.ts +0 -21
  608. package/dist/src/schemas/ContentSchema.d.ts.map +0 -1
  609. package/dist/src/schemas/CoverImageHeaderSchema.d.ts +0 -28
  610. package/dist/src/schemas/CoverImageHeaderSchema.d.ts.map +0 -1
  611. package/dist/src/schemas/FeatureCardSchema.d.ts +0 -28
  612. package/dist/src/schemas/FeatureCardSchema.d.ts.map +0 -1
  613. package/dist/src/schemas/FeatureGridSchema.d.ts +0 -17
  614. package/dist/src/schemas/FeatureGridSchema.d.ts.map +0 -1
  615. package/dist/src/schemas/FeatureItemSchema.d.ts +0 -16
  616. package/dist/src/schemas/FeatureItemSchema.d.ts.map +0 -1
  617. package/dist/src/schemas/FooterItemSchema.d.ts +0 -15
  618. package/dist/src/schemas/FooterItemSchema.d.ts.map +0 -1
  619. package/dist/src/schemas/FooterSchema.d.ts +0 -20
  620. package/dist/src/schemas/FooterSchema.d.ts.map +0 -1
  621. package/dist/src/schemas/FooterSectionSchema.d.ts +0 -15
  622. package/dist/src/schemas/FooterSectionSchema.d.ts.map +0 -1
  623. package/dist/src/schemas/FormBlockSchema.d.ts +0 -19
  624. package/dist/src/schemas/FormBlockSchema.d.ts.map +0 -1
  625. package/dist/src/schemas/GridCellSchema.d.ts +0 -23
  626. package/dist/src/schemas/GridCellSchema.d.ts.map +0 -1
  627. package/dist/src/schemas/GridLayoutSchema.d.ts +0 -21
  628. package/dist/src/schemas/GridLayoutSchema.d.ts.map +0 -1
  629. package/dist/src/schemas/HeaderActionSchema.d.ts +0 -17
  630. package/dist/src/schemas/HeaderActionSchema.d.ts.map +0 -1
  631. package/dist/src/schemas/HeroBlockSchema.d.ts +0 -22
  632. package/dist/src/schemas/HeroBlockSchema.d.ts.map +0 -1
  633. package/dist/src/schemas/HtmlInputFieldSchema.d.ts +0 -18
  634. package/dist/src/schemas/HtmlInputFieldSchema.d.ts.map +0 -1
  635. package/dist/src/schemas/HtmlSchema.d.ts +0 -14
  636. package/dist/src/schemas/HtmlSchema.d.ts.map +0 -1
  637. package/dist/src/schemas/ImageSchema.d.ts +0 -32
  638. package/dist/src/schemas/ImageSchema.d.ts.map +0 -1
  639. package/dist/src/schemas/LogoSchema.d.ts +0 -35
  640. package/dist/src/schemas/LogoSchema.d.ts.map +0 -1
  641. package/dist/src/schemas/MarkdownSchema.d.ts +0 -14
  642. package/dist/src/schemas/MarkdownSchema.d.ts.map +0 -1
  643. package/dist/src/schemas/MetadataItemSchema.d.ts +0 -13
  644. package/dist/src/schemas/MetadataItemSchema.d.ts.map +0 -1
  645. package/dist/src/schemas/PageBannerHeaderSchema.d.ts +0 -28
  646. package/dist/src/schemas/PageBannerHeaderSchema.d.ts.map +0 -1
  647. package/dist/src/schemas/PageTemplateSchema.d.ts +0 -31
  648. package/dist/src/schemas/PageTemplateSchema.d.ts.map +0 -1
  649. package/dist/src/schemas/PaletteSwitcherSchema.d.ts +0 -16
  650. package/dist/src/schemas/PaletteSwitcherSchema.d.ts.map +0 -1
  651. package/dist/src/schemas/PrintConfigSchema.d.ts +0 -31
  652. package/dist/src/schemas/PrintConfigSchema.d.ts.map +0 -1
  653. package/dist/src/schemas/ProductCardSchema.d.ts +0 -39
  654. package/dist/src/schemas/ProductCardSchema.d.ts.map +0 -1
  655. package/dist/src/schemas/SafeSpanSchema.d.ts +0 -13
  656. package/dist/src/schemas/SafeSpanSchema.d.ts.map +0 -1
  657. package/dist/src/schemas/SectionSchema.d.ts +0 -16
  658. package/dist/src/schemas/SectionSchema.d.ts.map +0 -1
  659. package/dist/src/schemas/SelectInputFieldSchema.d.ts +0 -27
  660. package/dist/src/schemas/SelectInputFieldSchema.d.ts.map +0 -1
  661. package/dist/src/schemas/SwitchInputFieldSchema.d.ts +0 -18
  662. package/dist/src/schemas/SwitchInputFieldSchema.d.ts.map +0 -1
  663. package/dist/src/schemas/TextInputFieldSchema.d.ts +0 -22
  664. package/dist/src/schemas/TextInputFieldSchema.d.ts.map +0 -1
  665. package/dist/src/schemas/TextSchema.d.ts +0 -37
  666. package/dist/src/schemas/TextSchema.d.ts.map +0 -1
  667. package/dist/src/schemas/ThemeSwitcherSchema.d.ts +0 -19
  668. package/dist/src/schemas/ThemeSwitcherSchema.d.ts.map +0 -1
  669. package/dist/src/schemas/ViewSchema.d.ts +0 -66
  670. package/dist/src/schemas/ViewSchema.d.ts.map +0 -1
  671. package/dist/src/schemas/index.d.ts +0 -47
  672. package/dist/src/schemas/index.d.ts.map +0 -1
  673. package/dist/src/schemas/transformers/ComponentTransformer.d.ts +0 -128
  674. package/dist/src/schemas/transformers/ComponentTransformer.d.ts.map +0 -1
  675. package/dist/src/schemas/transformers/ReactNodeTransformer.d.ts +0 -53
  676. package/dist/src/schemas/transformers/ReactNodeTransformer.d.ts.map +0 -1
  677. package/dist/src/schemas/transformers/registry.d.ts +0 -18
  678. package/dist/src/schemas/transformers/registry.d.ts.map +0 -1
  679. package/dist/src/schemas/types/Serializable.d.ts +0 -46
  680. package/dist/src/schemas/types/Serializable.d.ts.map +0 -1
  681. package/dist/src/stories/_templates/SerializationTemplate.d.ts.map +0 -1
  682. package/dist/src/templates/TemplateResolver.d.ts +0 -52
  683. package/dist/src/templates/TemplateResolver.d.ts.map +0 -1
  684. package/dist/src/templates/index.d.ts +0 -7
  685. package/dist/src/templates/index.d.ts.map +0 -1
  686. package/dist/src/types/CacheProvider.d.ts +0 -18
  687. package/dist/src/types/CacheProvider.d.ts.map +0 -1
  688. package/dist/src/types/CollapsibleLayout.d.ts +0 -142
  689. package/dist/src/types/CollapsibleLayout.d.ts.map +0 -1
  690. package/dist/src/types/ContentProxy.d.ts +0 -47
  691. package/dist/src/types/ContentProxy.d.ts.map +0 -1
  692. package/dist/src/types/DataTypes.d.ts +0 -185
  693. package/dist/src/types/DataTypes.d.ts.map +0 -1
  694. package/dist/src/types/TemplateProvider.d.ts +0 -10
  695. package/dist/src/types/TemplateProvider.d.ts.map +0 -1
  696. package/dist/src/types/TemplateResolver.d.ts +0 -23
  697. package/dist/src/types/TemplateResolver.d.ts.map +0 -1
  698. package/dist/src/types/index.d.ts +0 -82
  699. package/dist/src/types/index.d.ts.map +0 -1
  700. package/dist/src/utils/breakpoints.d.ts +0 -35
  701. package/dist/src/utils/breakpoints.d.ts.map +0 -1
  702. package/dist/src/utils/cssUtils.d.ts +0 -17
  703. package/dist/src/utils/cssUtils.d.ts.map +0 -1
  704. package/dist/src/utils/customPaletteManager.d.ts +0 -8
  705. package/dist/src/utils/customPaletteManager.d.ts.map +0 -1
  706. package/dist/src/utils/dimensions.d.ts +0 -34
  707. package/dist/src/utils/dimensions.d.ts.map +0 -1
  708. package/dist/src/utils/htmlTransform.d.ts +0 -44
  709. package/dist/src/utils/htmlTransform.d.ts.map +0 -1
  710. package/dist/src/utils/index.d.ts +0 -16
  711. package/dist/src/utils/index.d.ts.map +0 -1
  712. package/dist/src/utils/logger.d.ts +0 -26
  713. package/dist/src/utils/logger.d.ts.map +0 -1
  714. package/dist/src/utils/paletteUtils.d.ts +0 -38
  715. package/dist/src/utils/paletteUtils.d.ts.map +0 -1
  716. package/dist/src/utils/persistenceUtils.d.ts +0 -31
  717. package/dist/src/utils/persistenceUtils.d.ts.map +0 -1
  718. package/dist/src/utils/reactUtils.d.ts +0 -33
  719. package/dist/src/utils/reactUtils.d.ts.map +0 -1
  720. package/dist/src/utils/spacing.d.ts +0 -34
  721. package/dist/src/utils/spacing.d.ts.map +0 -1
  722. package/dist/src/utils/themePerformanceMonitor.d.ts +0 -32
  723. package/dist/src/utils/themePerformanceMonitor.d.ts.map +0 -1
  724. package/dist/src/utils/themeUtils.d.ts +0 -27
  725. package/dist/src/utils/themeUtils.d.ts.map +0 -1
  726. package/dist/tests/ConsoleWarningTest.d.ts +0 -5
  727. package/dist/tests/ConsoleWarningTest.d.ts.map +0 -1
  728. package/dist/tests/StorageKeyTest.d.ts +0 -6
  729. package/dist/tests/StorageKeyTest.d.ts.map +0 -1
  730. package/dist/tests/ThemeStorageKeyTest.d.ts +0 -6
  731. package/dist/tests/ThemeStorageKeyTest.d.ts.map +0 -1
  732. /package/dist/palettes/{PaletteAutumn.css → palette-autumn.1.4.9.css} +0 -0
  733. /package/dist/palettes/{PaletteCosmic.css → palette-cosmic.1.4.9.css} +0 -0
  734. /package/dist/palettes/{PaletteDefault.css → palette-default.1.4.9.css} +0 -0
  735. /package/dist/palettes/{PaletteOcean.css → palette-ocean.1.4.9.css} +0 -0
  736. /package/dist/palettes/{PaletteSpring.css → palette-spring.1.4.9.css} +0 -0
  737. /package/dist/palettes/{PaletteWinter.css → palette-winter.1.4.9.css} +0 -0
  738. /package/dist/{src/stories → stories}/_templates/SerializationTemplate.d.ts +0 -0
@@ -58,7 +58,7 @@ describe('Form Components Serialization', () => {
58
58
  required: true
59
59
  };
60
60
 
61
- let serializedData: any;
61
+ let serializedData: Record<string, unknown>;
62
62
  let deserializedElement: React.ReactElement;
63
63
 
64
64
  // Test serialization
@@ -127,7 +127,7 @@ describe('Form Components Serialization', () => {
127
127
  addButtonText: 'Add Question'
128
128
  };
129
129
 
130
- let serializedData: any;
130
+ let serializedData: Record<string, unknown>;
131
131
  let deserializedElement: React.ReactElement;
132
132
 
133
133
  // Test serialization
@@ -194,7 +194,7 @@ describe('Form Components Serialization', () => {
194
194
  color: 'primary' as const
195
195
  };
196
196
 
197
- let serializedData: any;
197
+ let serializedData: Record<string, unknown>;
198
198
  let deserializedElement: React.ReactElement;
199
199
 
200
200
  // Test serialization
@@ -264,7 +264,7 @@ describe('Form Components Serialization', () => {
264
264
  backgroundImage: 'https://example.com/bg.jpg'
265
265
  };
266
266
 
267
- let serializedData: any;
267
+ let serializedData: Record<string, unknown>;
268
268
  let deserializedElement: React.ReactElement;
269
269
 
270
270
  // Test serialization
@@ -350,7 +350,7 @@ describe('Form Components Serialization', () => {
350
350
  <SwitchInputField key="switch2" label="Another Switch" checked={false} />
351
351
  ];
352
352
 
353
- let serializedData: any[];
353
+ let serializedData: string[];
354
354
  let deserializedElements: React.ReactElement[];
355
355
 
356
356
  // Bulk serialization
@@ -404,14 +404,14 @@ describe('Form Components Serialization', () => {
404
404
  }
405
405
  ];
406
406
 
407
- testComponents.forEach(({ type, element, checkProps }) => {
407
+ testComponents.forEach(({ element, checkProps }) => {
408
408
  let currentElement = element;
409
- let originalProps: any;
409
+ const originalProps: Record<string, unknown> = {};
410
410
 
411
411
  // Capture original props from first serialization
412
412
  const firstSerialized = ComponentTransformer.serialize(currentElement);
413
413
  const firstSerialization = JSON.parse(firstSerialized);
414
- originalProps = firstSerialization.data;
414
+ Object.assign(originalProps, firstSerialization.data);
415
415
 
416
416
  // Perform 5 serialize-deserialize cycles
417
417
  for (let cycle = 0; cycle < 5; cycle++) {
@@ -471,7 +471,7 @@ describe('Form Components Serialization', () => {
471
471
 
472
472
  const element = <ChoiceInputField {...originalProps} />;
473
473
  const serialized = ComponentTransformer.serialize(element);
474
- const serializedData = JSON.parse(serialized);
474
+ JSON.parse(serialized);
475
475
  const deserializedElement = ComponentTransformer.deserialize(serialized) as React.ReactElement;
476
476
  const reserialized = ComponentTransformer.serialize(deserializedElement);
477
477
  const reserializedData = JSON.parse(reserialized);
@@ -58,9 +58,8 @@ describe('SelectInputField Serialization', () => {
58
58
  placeholder: 'Select a country'
59
59
  };
60
60
 
61
- let serializedData: any;
61
+ let serializedData: Record<string, unknown>;
62
62
  let deserializedElement: React.ReactElement;
63
- let reserializedData: any;
64
63
 
65
64
  // Test serialization
66
65
  const serializationTime = measurePerformance('Basic Serialization', () => {
@@ -112,11 +111,11 @@ describe('SelectInputField Serialization', () => {
112
111
 
113
112
  const element = <SelectInputField {...originalProps} />;
114
113
  const serialized = ComponentTransformer.serialize(element);
115
- const serializedData = JSON.parse(serialized);
114
+ JSON.parse(serialized);
116
115
  const deserializedElement = ComponentTransformer.deserialize(serialized) as React.ReactElement;
117
116
 
118
- const { getByText, getByDisplayValue } = render(deserializedElement);
119
-
117
+ const { getByText } = render(deserializedElement);
118
+
120
119
  expect(getByText('Priority Level')).toBeInTheDocument();
121
120
  });
122
121
  });
@@ -135,8 +134,8 @@ describe('SelectInputField Serialization', () => {
135
134
  };
136
135
 
137
136
  const element = <SelectInputField {...originalProps} />;
138
-
139
- let serializedData: any;
137
+
138
+ let serializedData: Record<string, unknown>;
140
139
  measurePerformance('Complex Options Serialization', () => {
141
140
  const serialized = ComponentTransformer.serialize(element);
142
141
  serializedData = JSON.parse(serialized);
@@ -196,19 +195,19 @@ describe('SelectInputField Serialization', () => {
196
195
  };
197
196
 
198
197
  const element = <SelectInputField {...originalProps} />;
199
-
200
- let serializedData: any;
198
+
199
+ let serializedData: Record<string, unknown>;
201
200
  measurePerformance('Validation Serialization', () => {
202
201
  const serialized = ComponentTransformer.serialize(element);
203
202
  serializedData = JSON.parse(serialized);
204
203
  });
205
204
 
206
- expect(serializedData.data.required).toBe(true);
207
- expect(serializedData.data.error).toBe(originalProps.error);
208
- expect(serializedData.data.helperText).toBe(originalProps.helperText);
205
+ expect((serializedData.data as Record<string, unknown>).required).toBe(true);
206
+ expect((serializedData.data as Record<string, unknown>).error).toBe(originalProps.error);
207
+ expect((serializedData.data as Record<string, unknown>).helperText).toBe(originalProps.helperText);
209
208
 
210
209
  const deserializedElement = ComponentTransformer.deserialize(JSON.stringify(serializedData)) as React.ReactElement;
211
- const { getByLabelText, getByText } = render(deserializedElement);
210
+ const { getByText } = render(deserializedElement);
212
211
 
213
212
  expect(getByText('Required Selection')).toBeInTheDocument();
214
213
  expect(getByText('Please select an option')).toBeInTheDocument();
@@ -329,8 +328,7 @@ describe('SelectInputField Serialization', () => {
329
328
  options: largeOptions
330
329
  };
331
330
 
332
- let serializedData: any;
333
- let deserializedElement: React.ReactElement;
331
+ let serializedData: unknown;
334
332
 
335
333
  // Test serialization performance with large dataset
336
334
  const serializationTime = measurePerformance('Large Options Serialization (1000 items)', () => {
@@ -341,7 +339,7 @@ describe('SelectInputField Serialization', () => {
341
339
 
342
340
  // Test deserialization performance
343
341
  const deserializationTime = measurePerformance('Large Options Deserialization (1000 items)', () => {
344
- deserializedElement = ComponentTransformer.deserialize(JSON.stringify(serializedData)) as React.ReactElement;
342
+ ComponentTransformer.deserialize(JSON.stringify(serializedData)) as React.ReactElement;
345
343
  });
346
344
 
347
345
  expect(serializedData.data.options).toHaveLength(1000);
@@ -373,7 +371,7 @@ describe('SelectInputField Serialization', () => {
373
371
  }));
374
372
 
375
373
  let elements: React.ReactElement[];
376
- let serializedData: any[];
374
+ let serializedData: unknown[];
377
375
  let deserializedElements: React.ReactElement[];
378
376
 
379
377
  // Bulk serialization
@@ -419,7 +417,7 @@ describe('SelectInputField Serialization', () => {
419
417
  };
420
418
 
421
419
  let currentElement = <SelectInputField {...originalProps} />;
422
- let lastSerializedData: any;
420
+ let lastSerializedData: unknown;
423
421
 
424
422
  // Perform 10 serialize-deserialize cycles
425
423
  for (let cycle = 0; cycle < 10; cycle++) {
@@ -32,7 +32,7 @@ describe('TextInputField Serialization', () => {
32
32
  ComponentTransformer.clearRegistry();
33
33
 
34
34
  // Register TextInputField component
35
- ComponentTransformer.registerComponent(TextInputField as any);
35
+ ComponentTransformer.registerComponent(TextInputField as unknown as React.ComponentType);
36
36
  });
37
37
 
38
38
  afterEach(() => {
@@ -68,9 +68,9 @@ describe('TextInputField Serialization', () => {
68
68
  type: 'text'
69
69
  };
70
70
 
71
- let serializedData: any;
71
+ let serializedData: string;
72
72
  let deserializedElement: React.ReactElement;
73
- let reserializedData: any;
73
+ let reserializedData: string;
74
74
 
75
75
  // Test serialization
76
76
  const serializationTime = measurePerformance('Basic Serialization', () => {
@@ -141,8 +141,8 @@ describe('TextInputField Serialization', () => {
141
141
  };
142
142
 
143
143
  const element = <TextInputField {...originalProps} />;
144
-
145
- let serializedData: any;
144
+
145
+ let serializedData: Record<string, unknown>;
146
146
  measurePerformance('Multiline Serialization', () => {
147
147
  const serialized = ComponentTransformer.serialize(element);
148
148
  serializedData = JSON.parse(serialized);
@@ -174,8 +174,8 @@ describe('TextInputField Serialization', () => {
174
174
  };
175
175
 
176
176
  const element = <TextInputField {...originalProps} />;
177
-
178
- let serializedData: any;
177
+
178
+ let serializedData: Record<string, unknown>;
179
179
  measurePerformance('Validation Serialization', () => {
180
180
  const serialized = ComponentTransformer.serialize(element);
181
181
  serializedData = JSON.parse(serialized);
@@ -298,7 +298,7 @@ describe('TextInputField Serialization', () => {
298
298
  }));
299
299
 
300
300
  let elements: React.ReactElement[];
301
- let serializedData: any[];
301
+ let serializedData: string[];
302
302
  let deserializedElements: React.ReactElement[];
303
303
 
304
304
  // Bulk serialization
@@ -339,7 +339,7 @@ describe('TextInputField Serialization', () => {
339
339
  };
340
340
 
341
341
  let currentElement = <TextInputField {...originalProps} />;
342
- let lastSerializedData: any;
342
+ let lastSerializedData: Record<string, unknown>;
343
343
 
344
344
  // Perform 10 serialize-deserialize cycles
345
345
  for (let cycle = 0; cycle < 10; cycle++) {
@@ -16,14 +16,13 @@
16
16
  */
17
17
 
18
18
  import React from 'react';
19
- import { render, screen, fireEvent, waitFor, act } from '@testing-library/react';
19
+ import { render, screen, waitFor } from '@testing-library/react';
20
20
  import userEvent from '@testing-library/user-event';
21
21
  import '@testing-library/jest-dom';
22
22
  import CollapsibleLayout, { CollapsibleLayoutView, useCollapsibleState } from '../../../components/layout/CollapsibleLayout';
23
23
  import { DataProvider } from '../../../contexts/DataContext';
24
24
  import { JsonDataProvider } from '@qwickapps/schema';
25
25
  import { ThemeProvider, PaletteProvider } from '../../../contexts';
26
- import { CollapsibleLayoutProps } from '../../../types/CollapsibleLayout';
27
26
 
28
27
  // Test data for data binding
29
28
  const sampleCmsData = {
@@ -130,7 +129,7 @@ const HookTestComponent: React.FC<{
130
129
  onToggle?: (collapsed: boolean) => void;
131
130
  persistState?: boolean;
132
131
  storageKey?: string;
133
- onStateChange?: (state: any) => void;
132
+ onStateChange?: (state: { collapsed: boolean; toggle: () => void }) => void;
134
133
  }> = ({ controlled, collapsed, defaultCollapsed, onToggle, persistState, storageKey, onStateChange }) => {
135
134
  const state = useCollapsibleState(controlled, collapsed, defaultCollapsed, onToggle, persistState, storageKey);
136
135
 
@@ -452,7 +451,6 @@ describe('CollapsibleLayout', () => {
452
451
  it('handles controlled mode correctly', async () => {
453
452
  const user = userEvent.setup();
454
453
  const onToggle = jest.fn();
455
- let currentState: any;
456
454
 
457
455
  render(
458
456
  <HookTestComponent
@@ -566,11 +564,9 @@ describe('CollapsibleLayout', () => {
566
564
  });
567
565
 
568
566
  it('handles header trigger area correctly', async () => {
569
- const user = userEvent.setup();
570
-
571
567
  render(
572
568
  <TestWrapper>
573
- <CollapsibleLayout
569
+ <CollapsibleLayout
574
570
  title="Header Trigger Test"
575
571
  triggerArea="header"
576
572
  >
@@ -1258,7 +1254,7 @@ describe('CollapsibleLayout', () => {
1258
1254
  render(
1259
1255
  <TestWrapper>
1260
1256
  <CollapsibleLayout
1261
- animationStyle={'invalid' as any}
1257
+ animationStyle={'invalid' as unknown}
1262
1258
  >
1263
1259
  <div>Content</div>
1264
1260
  </CollapsibleLayout>
@@ -1287,7 +1283,7 @@ describe('CollapsibleLayout', () => {
1287
1283
 
1288
1284
  it('preserves component marking for QwickApp framework', () => {
1289
1285
  // The component should be marked as a QwickApp component
1290
- const component = CollapsibleLayoutView as any;
1286
+ const component = CollapsibleLayoutView as unknown;
1291
1287
  // Note: This test might need adjustment based on actual implementation
1292
1288
  expect(typeof component).toBe('function');
1293
1289
  });
@@ -8,7 +8,7 @@
8
8
  */
9
9
 
10
10
  import React from 'react';
11
- import { render, screen } from '@testing-library/react';
11
+ import { render } from '@testing-library/react';
12
12
  import '@testing-library/jest-dom';
13
13
  import { ComponentTransformer } from '../../../schemas/transformers/ComponentTransformer';
14
14
  import { GridCell } from '../../../components/layout/GridCell';
@@ -22,10 +22,10 @@ describe('GridCell Serialization', () => {
22
22
  ComponentTransformer.clearRegistry();
23
23
 
24
24
  // Register all necessary components
25
- ComponentTransformer.registerComponent(GridCell as any);
26
- ComponentTransformer.registerComponent(Text as any);
27
- ComponentTransformer.registerComponent(Button as any);
28
- ComponentTransformer.registerComponent(Code as any);
25
+ ComponentTransformer.registerComponent(GridCell as unknown as React.ComponentType);
26
+ ComponentTransformer.registerComponent(Text as unknown as React.ComponentType);
27
+ ComponentTransformer.registerComponent(Button as unknown as React.ComponentType);
28
+ ComponentTransformer.registerComponent(Code as unknown as React.ComponentType);
29
29
  });
30
30
 
31
31
  afterEach(() => {
@@ -8,7 +8,7 @@
8
8
  */
9
9
 
10
10
  import React from 'react';
11
- import { render, screen } from '@testing-library/react';
11
+ import { render } from '@testing-library/react';
12
12
  import '@testing-library/jest-dom';
13
13
  import { ComponentTransformer } from '../../../schemas/transformers/ComponentTransformer';
14
14
  import { GridLayout } from '../../../components/layout/GridLayout';
@@ -22,10 +22,10 @@ describe('GridLayout Serialization', () => {
22
22
  ComponentTransformer.clearRegistry();
23
23
 
24
24
  // Register all necessary components
25
- ComponentTransformer.registerComponent(GridLayout as any);
26
- ComponentTransformer.registerComponent(GridCell as any);
27
- ComponentTransformer.registerComponent(Text as any);
28
- ComponentTransformer.registerComponent(Button as any);
25
+ ComponentTransformer.registerComponent(GridLayout as unknown as React.ComponentType);
26
+ ComponentTransformer.registerComponent(GridCell as unknown as React.ComponentType);
27
+ ComponentTransformer.registerComponent(Text as unknown as React.ComponentType);
28
+ ComponentTransformer.registerComponent(Button as unknown as React.ComponentType);
29
29
  });
30
30
 
31
31
  afterEach(() => {
@@ -83,6 +83,7 @@ describe('PrintConfig Integration', () => {
83
83
 
84
84
  it('should export PrintModeState interface from usePrintMode', () => {
85
85
  // This test ensures the types are properly exported
86
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
86
87
  const { usePrintMode } = require('../../hooks/usePrintMode');
87
88
  expect(typeof usePrintMode).toBe('function');
88
89
  });
@@ -152,7 +152,7 @@ describe.skip('ModelBuilder', () => {
152
152
  });
153
153
 
154
154
  test('throws error when building without name', () => {
155
- const builder = new (ModelBuilder as any)(undefined);
155
+ const builder = new (ModelBuilder as unknown as new (name?: string) => typeof ModelBuilder)(undefined);
156
156
  expect(() => builder.build()).toThrow('Component must have a name');
157
157
  });
158
158
  });
@@ -249,7 +249,7 @@ describe.skip('SchemaBuilder', () => {
249
249
  });
250
250
 
251
251
  test('throws error when building without name', () => {
252
- const builder = new (SchemaBuilder as any)(undefined);
252
+ const builder = new (SchemaBuilder as unknown as new (name?: string) => typeof SchemaBuilder)(undefined);
253
253
  expect(() => builder.build()).toThrow('Schema must have a name');
254
254
  });
255
255
  });
@@ -15,14 +15,14 @@ import { Serializable, SerializableConstructor } from '../../types/Serializable'
15
15
  * Generic test pattern for validating component serialization
16
16
  * This pattern should be used for all components implementing Serializable
17
17
  */
18
- export function testComponentSerialization<T extends Serializable>(
18
+ export function testComponentSerialization(
19
19
  componentName: string,
20
20
  ComponentClass: SerializableConstructor,
21
21
  testCases: {
22
22
  name: string;
23
- props: any;
24
- expectedData?: any;
25
- validate?: (element: ReactElement, originalProps: any) => void;
23
+ props: Record<string, unknown>;
24
+ expectedData?: Record<string, unknown>;
25
+ validate?: (element: ReactElement, originalProps: Record<string, unknown>) => void;
26
26
  shouldThrow?: boolean;
27
27
  errorMessage?: string;
28
28
  }[]
@@ -158,17 +158,17 @@ export function testComponentSerialization<T extends Serializable>(
158
158
 
159
159
  // Example component implementations for testing patterns
160
160
  class TestButton implements Serializable {
161
- constructor(public props: {
162
- label?: string;
161
+ constructor(public props: {
162
+ label?: string;
163
163
  variant?: 'primary' | 'secondary' | 'danger';
164
164
  disabled?: boolean;
165
165
  onClick?: () => void;
166
- children?: any;
166
+ children?: React.ReactNode;
167
167
  className?: string;
168
168
  'data-testid'?: string;
169
169
  }) {}
170
170
 
171
- static fromJson(jsonData: any): ReactElement {
171
+ static fromJson(jsonData: Record<string, unknown>): ReactElement {
172
172
  return React.createElement('button', {
173
173
  className: `btn ${jsonData.variant ? `btn-${jsonData.variant}` : 'btn-primary'} ${jsonData.className || ''}`.trim(),
174
174
  disabled: jsonData.disabled,
@@ -177,7 +177,7 @@ class TestButton implements Serializable {
177
177
  }, jsonData.label || jsonData.children || 'Button');
178
178
  }
179
179
 
180
- toJson(): any {
180
+ toJson(): unknown {
181
181
  return {
182
182
  label: this.props.label,
183
183
  variant: this.props.variant,
@@ -196,13 +196,13 @@ class TestCard implements Serializable {
196
196
  content?: string;
197
197
  image?: string;
198
198
  imageAlt?: string;
199
- actions?: any[];
200
- metadata?: Record<string, any>;
199
+ actions?: unknown[];
200
+ metadata?: Record<string, unknown>;
201
201
  className?: string;
202
202
  elevation?: number;
203
203
  }) {}
204
204
 
205
- static fromJson(jsonData: any): ReactElement {
205
+ static fromJson(jsonData: unknown): ReactElement {
206
206
  const actions = jsonData.actions ? ComponentTransformer.deserialize(jsonData.actions) : null;
207
207
 
208
208
  return React.createElement('div', {
@@ -231,7 +231,7 @@ class TestCard implements Serializable {
231
231
  ].filter(Boolean));
232
232
  }
233
233
 
234
- toJson(): any {
234
+ toJson(): unknown {
235
235
  return {
236
236
  title: this.props.title,
237
237
  content: this.props.content,
@@ -249,14 +249,14 @@ class TestSection implements Serializable {
249
249
  constructor(public props: {
250
250
  title?: string;
251
251
  subtitle?: string;
252
- children?: any;
252
+ children?: unknown;
253
253
  className?: string;
254
254
  backgroundColor?: string;
255
255
  padding?: string;
256
256
  id?: string;
257
257
  }) {}
258
258
 
259
- static fromJson(jsonData: any): ReactElement {
259
+ static fromJson(jsonData: unknown): ReactElement {
260
260
  const children = jsonData.children ? ComponentTransformer.deserialize(jsonData.children) : null;
261
261
 
262
262
  return React.createElement('section', {
@@ -276,7 +276,7 @@ class TestSection implements Serializable {
276
276
  ].filter(Boolean));
277
277
  }
278
278
 
279
- toJson(): any {
279
+ toJson(): unknown {
280
280
  return {
281
281
  title: this.props.title,
282
282
  subtitle: this.props.subtitle,
@@ -300,7 +300,7 @@ class TestCode implements Serializable {
300
300
  filename?: string;
301
301
  }) {}
302
302
 
303
- static fromJson(jsonData: any): ReactElement {
303
+ static fromJson(jsonData: unknown): ReactElement {
304
304
  return React.createElement('div', {
305
305
  className: `code-container theme-${jsonData.theme || 'light'}`,
306
306
  'data-testid': 'test-code'
@@ -319,7 +319,7 @@ class TestCode implements Serializable {
319
319
  ].filter(Boolean));
320
320
  }
321
321
 
322
- toJson(): any {
322
+ toJson(): unknown {
323
323
  return {
324
324
  code: this.props.code,
325
325
  language: this.props.language,
@@ -343,14 +343,14 @@ describe('Component Serialization Pattern Tests', () => {
343
343
  },
344
344
  {
345
345
  name: 'handle button with all props',
346
- props: {
347
- label: 'Full Button',
348
- variant: 'danger',
349
- disabled: true,
346
+ props: {
347
+ label: 'Full Button',
348
+ variant: 'danger',
349
+ disabled: true,
350
350
  className: 'custom-btn',
351
351
  'data-testid': 'full-button'
352
352
  },
353
- validate: (element, props) => {
353
+ validate: (element) => {
354
354
  expect(element.props.className).toContain('btn-danger');
355
355
  expect(element.props.className).toContain('custom-btn');
356
356
  expect(element.props.disabled).toBe(true);
@@ -391,7 +391,7 @@ describe('Component Serialization Pattern Tests', () => {
391
391
  validate: (element) => {
392
392
  expect(element.props['data-elevation']).toBe(2);
393
393
  // Check for image in children
394
- const imageChild = element.props.children.find((child: any) => child?.type === 'img');
394
+ const imageChild = element.props.children.find((child: unknown) => child?.type === 'img');
395
395
  expect(imageChild).toBeTruthy();
396
396
  expect(imageChild.props.src).toBe('https://example.com/image.jpg');
397
397
  expect(imageChild.props.alt).toBe('Test image');
@@ -476,14 +476,14 @@ describe('Component Serialization Pattern Tests', () => {
476
476
  validate: (element) => {
477
477
  expect(element.props.className).toContain('theme-dark');
478
478
  // Check for filename display
479
- const filenameChild = element.props.children.find((child: any) =>
479
+ const filenameChild = element.props.children.find((child: unknown) =>
480
480
  child?.props?.className === 'code-filename'
481
481
  );
482
482
  expect(filenameChild).toBeTruthy();
483
483
  expect(filenameChild.props.children).toBe('example.js');
484
484
 
485
485
  // Check code block attributes
486
- const preChild = element.props.children.find((child: any) => child?.type === 'pre');
486
+ const preChild = element.props.children.find((child: unknown) => child?.type === 'pre');
487
487
  expect(preChild.props['data-line-numbers']).toBe(true);
488
488
  expect(preChild.props['data-highlight-lines']).toBe('1,3');
489
489
  expect(preChild.props.style.maxHeight).toBe('300px');
@@ -493,7 +493,7 @@ describe('Component Serialization Pattern Tests', () => {
493
493
  name: 'handle empty code block',
494
494
  props: { language: 'text' },
495
495
  validate: (element) => {
496
- const preChild = element.props.children.find((child: any) => child?.type === 'pre');
496
+ const preChild = element.props.children.find((child: unknown) => child?.type === 'pre');
497
497
  expect(preChild.props.className).toContain('language-text');
498
498
  expect(preChild.props.children.props.children).toBe('');
499
499
  }
@@ -511,7 +511,7 @@ describe('Component Serialization Pattern Tests', () => {
511
511
 
512
512
  it('should handle components with circular references in data', () => {
513
513
  const circularData = { name: 'circular' };
514
- (circularData as any).self = circularData;
514
+ (circularData as unknown).self = circularData;
515
515
 
516
516
  // This should not crash, though the circular reference may be lost
517
517
  expect(() => {
@@ -15,7 +15,7 @@ import { Code } from '../../../../schemas/transformers/components/blocks/Code';
15
15
  Object.defineProperty(global, 'DOMParser', {
16
16
  writable: true,
17
17
  value: class DOMParser {
18
- parseFromString(htmlString: string, contentType: string) {
18
+ parseFromString(htmlString: string) {
19
19
  // Simple mock that creates elements for our tests
20
20
  const mockDoc = {
21
21
  body: {
@@ -102,7 +102,7 @@ describe('ComponentTransformer HTML Patterns', () => {
102
102
  const mockRegisterPatterns = jest.fn();
103
103
  Code.registerPatternHandlers = mockRegisterPatterns;
104
104
 
105
- ComponentTransformer.registerComponent(Code as any);
105
+ ComponentTransformer.registerComponent(Code as unknown as React.ComponentType);
106
106
 
107
107
  expect(mockRegisterPatterns).toHaveBeenCalledWith(ComponentTransformer);
108
108
 
@@ -225,7 +225,7 @@ describe('ComponentTransformer HTML Patterns', () => {
225
225
  describe('Code Component Integration', () => {
226
226
  test('should register Code component patterns', () => {
227
227
  // Register Code component
228
- ComponentTransformer.registerComponent(Code as any);
228
+ ComponentTransformer.registerComponent(Code as unknown as React.ComponentType);
229
229
 
230
230
  // Check that patterns were registered
231
231
  expect(ComponentTransformer.hasPattern('pre code')).toBe(true);
@@ -233,7 +233,7 @@ describe('ComponentTransformer HTML Patterns', () => {
233
233
  });
234
234
 
235
235
  test('should transform pre+code elements', () => {
236
- ComponentTransformer.registerComponent(Code as any);
236
+ ComponentTransformer.registerComponent(Code as unknown as React.ComponentType);
237
237
 
238
238
  // Create pre+code element
239
239
  const pre = document.createElement('pre');
@@ -266,7 +266,7 @@ describe('ComponentTransformer HTML Patterns', () => {
266
266
  });
267
267
 
268
268
  test('should handle missing code child in pre element', () => {
269
- ComponentTransformer.registerComponent(Code as any);
269
+ ComponentTransformer.registerComponent(Code as unknown);
270
270
 
271
271
  const pre = document.createElement('pre');
272
272
  pre.textContent = 'Just text, no code element';
@@ -23,14 +23,14 @@ class MockButton implements Serializable {
23
23
 
24
24
  constructor(public props: { label?: string; variant?: string; onClick?: () => void }) {}
25
25
 
26
- static fromJson(jsonData: any): ReactElement {
26
+ static fromJson(jsonData: Record<string, unknown>): ReactElement {
27
27
  return React.createElement('button', {
28
- className: `btn-${jsonData.variant || 'default'}`,
29
- onClick: jsonData.onClick
30
- }, jsonData.label || 'Button');
28
+ className: `btn-${(jsonData.variant as string) || 'default'}`,
29
+ onClick: jsonData.onClick as (() => void) | undefined
30
+ }, (jsonData.label as string) || 'Button');
31
31
  }
32
32
 
33
- toJson(): any {
33
+ toJson(): Record<string, unknown> {
34
34
  return {
35
35
  label: this.props.label,
36
36
  variant: this.props.variant,
@@ -42,10 +42,10 @@ class MockButton implements Serializable {
42
42
  class MockCard implements Serializable {
43
43
  static readonly tagName = 'Card';
44
44
  static readonly version = '1.0.0';
45
-
46
- constructor(public props: { title?: string; content?: string; children?: any }) {}
47
45
 
48
- static fromJson(jsonData: any): ReactElement {
46
+ constructor(public props: { title?: string; content?: string; children?: React.ReactNode }) {}
47
+
48
+ static fromJson(jsonData: Record<string, unknown>): ReactElement {
49
49
  return React.createElement('div', {
50
50
  className: 'card'
51
51
  }, [
@@ -54,7 +54,7 @@ class MockCard implements Serializable {
54
54
  ]);
55
55
  }
56
56
 
57
- toJson(): any {
57
+ toJson(): unknown {
58
58
  return {
59
59
  title: this.props.title,
60
60
  content: this.props.content
@@ -367,7 +367,7 @@ describe('ComponentTransformer', () => {
367
367
  const result = ComponentTransformer.deserialize(input);
368
368
  expect(Array.isArray(result)).toBe(true);
369
369
 
370
- const elements = result as any[];
370
+ const elements = result as unknown[];
371
371
  expect(elements[0]).toBe('plain text');
372
372
  expect(React.isValidElement(elements[1])).toBe(true);
373
373
  expect(elements[2]).toBe(42);
@@ -477,7 +477,7 @@ describe('ComponentTransformer', () => {
477
477
  const result = ComponentTransformer.deserialize(mixedArray);
478
478
  expect(Array.isArray(result)).toBe(true);
479
479
 
480
- const elements = result as any[];
480
+ const elements = result as unknown[];
481
481
  expect(elements).toHaveLength(3);
482
482
  expect(elements[0]).toBe('Text node');
483
483
  expect(React.isValidElement(elements[1])).toBe(true);