@brunoalz/smartgesti-site-editor 0.2.2 → 1.1.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 (607) hide show
  1. package/dist/editor/BlockSelector.d.ts +2 -1
  2. package/dist/editor/BlockSelector.d.ts.map +1 -1
  3. package/dist/editor/BlockSelector.js +55 -64
  4. package/dist/editor/BlockSelector.js.map +1 -1
  5. package/dist/editor/LandingPageEditor.d.ts +19 -0
  6. package/dist/editor/LandingPageEditor.d.ts.map +1 -0
  7. package/dist/editor/LandingPageEditor.js +239 -0
  8. package/dist/editor/LandingPageEditor.js.map +1 -0
  9. package/dist/editor/PageTabBar.d.ts +4 -1
  10. package/dist/editor/PageTabBar.d.ts.map +1 -1
  11. package/dist/editor/PageTabBar.js +179 -41
  12. package/dist/editor/PageTabBar.js.map +1 -1
  13. package/dist/editor/PropertyEditor/BlockPropertyEditor.d.ts +5 -3
  14. package/dist/editor/PropertyEditor/BlockPropertyEditor.d.ts.map +1 -1
  15. package/dist/editor/PropertyEditor/BlockPropertyEditor.js +60 -113
  16. package/dist/editor/PropertyEditor/BlockPropertyEditor.js.map +1 -1
  17. package/dist/editor/PropertyEditor/CollapsiblePropertyGroup.d.ts +3 -1
  18. package/dist/editor/PropertyEditor/CollapsiblePropertyGroup.d.ts.map +1 -1
  19. package/dist/editor/PropertyEditor/CollapsiblePropertyGroup.js +47 -33
  20. package/dist/editor/PropertyEditor/CollapsiblePropertyGroup.js.map +1 -1
  21. package/dist/editor/PropertyEditor/PropertyGroup.d.ts +1 -1
  22. package/dist/editor/PropertyEditor/PropertyGroup.d.ts.map +1 -1
  23. package/dist/editor/PropertyEditor/VariationSelector.d.ts +2 -1
  24. package/dist/editor/PropertyEditor/VariationSelector.d.ts.map +1 -1
  25. package/dist/editor/PropertyEditor/VariationSelector.js +35 -31
  26. package/dist/editor/PropertyEditor/VariationSelector.js.map +1 -1
  27. package/dist/editor/PropertyEditor/index.js +30 -28
  28. package/dist/editor/PropertyEditor/inputs/CarouselImagesInput.d.ts +16 -0
  29. package/dist/editor/PropertyEditor/inputs/CarouselImagesInput.d.ts.map +1 -0
  30. package/dist/editor/PropertyEditor/inputs/CarouselImagesInput.js +170 -0
  31. package/dist/editor/PropertyEditor/inputs/CarouselImagesInput.js.map +1 -0
  32. package/dist/editor/PropertyEditor/inputs/ImageGridInput.d.ts +1 -1
  33. package/dist/editor/PropertyEditor/inputs/ImageGridInput.d.ts.map +1 -1
  34. package/dist/editor/PropertyEditor/inputs/ImageGridInput.js +148 -121
  35. package/dist/editor/PropertyEditor/inputs/ImageGridInput.js.map +1 -1
  36. package/dist/editor/PropertyEditor/inputs/ImageInput.d.ts.map +1 -0
  37. package/dist/{components → editor/PropertyEditor}/inputs/ImageInput.js +41 -39
  38. package/dist/editor/PropertyEditor/inputs/ImageInput.js.map +1 -0
  39. package/dist/editor/PropertyEditor/inputs/TypographyInput.js +41 -44
  40. package/dist/editor/PropertyEditor/inputs/TypographyInput.js.map +1 -1
  41. package/dist/editor/PropertyEditor/inputs/index.d.ts +2 -0
  42. package/dist/editor/PropertyEditor/inputs/index.d.ts.map +1 -1
  43. package/dist/editor/PropertyEditor/renderPropertyInput.d.ts +1 -1
  44. package/dist/editor/PropertyEditor/renderPropertyInput.d.ts.map +1 -1
  45. package/dist/editor/PropertyEditor/renderPropertyInput.js +167 -139
  46. package/dist/editor/PropertyEditor/renderPropertyInput.js.map +1 -1
  47. package/dist/editor/components/CenterPanel.d.ts +13 -4
  48. package/dist/editor/components/CenterPanel.d.ts.map +1 -1
  49. package/dist/editor/components/CenterPanel.js +40 -31
  50. package/dist/editor/components/CenterPanel.js.map +1 -1
  51. package/dist/editor/components/LeftPanel.d.ts +2 -1
  52. package/dist/editor/components/LeftPanel.d.ts.map +1 -1
  53. package/dist/editor/components/LeftPanel.js +13 -12
  54. package/dist/editor/components/LeftPanel.js.map +1 -1
  55. package/dist/editor/components/LoadingSpinner.d.ts.map +1 -0
  56. package/dist/editor/components/LoadingSpinner.js.map +1 -0
  57. package/dist/editor/components/RightPanel.d.ts +8 -2
  58. package/dist/editor/components/RightPanel.d.ts.map +1 -1
  59. package/dist/editor/components/RightPanel.js +24 -19
  60. package/dist/editor/components/RightPanel.js.map +1 -1
  61. package/dist/editor/components/Toolbar.d.ts +5 -1
  62. package/dist/editor/components/Toolbar.d.ts.map +1 -1
  63. package/dist/editor/components/Toolbar.js +56 -40
  64. package/dist/editor/components/Toolbar.js.map +1 -1
  65. package/dist/engine/export/exportHtml.d.ts +10 -5
  66. package/dist/engine/export/exportHtml.d.ts.map +1 -1
  67. package/dist/engine/export/exportHtml.js +38 -40
  68. package/dist/engine/export/exportHtml.js.map +1 -1
  69. package/dist/engine/export/exporters/content/HeadingExporter.d.ts.map +1 -1
  70. package/dist/engine/export/exporters/content/HeadingExporter.js +6 -6
  71. package/dist/engine/export/exporters/content/HeadingExporter.js.map +1 -1
  72. package/dist/engine/export/exporters/content/LinkExporter.d.ts.map +1 -1
  73. package/dist/engine/export/exporters/content/LinkExporter.js +6 -6
  74. package/dist/engine/export/exporters/content/LinkExporter.js.map +1 -1
  75. package/dist/engine/export/exporters/content/TextExporter.d.ts.map +1 -1
  76. package/dist/engine/export/exporters/content/TextExporter.js +7 -7
  77. package/dist/engine/export/exporters/content/TextExporter.js.map +1 -1
  78. package/dist/engine/export/exporters/sections/BlogPostExporters.d.ts +6 -0
  79. package/dist/engine/export/exporters/sections/BlogPostExporters.d.ts.map +1 -0
  80. package/dist/engine/export/exporters/sections/BlogPostExporters.js +101 -0
  81. package/dist/engine/export/exporters/sections/BlogPostExporters.js.map +1 -0
  82. package/dist/engine/export/exporters/sections/FooterExporter.d.ts.map +1 -1
  83. package/dist/engine/export/exporters/sections/FooterExporter.js +33 -40
  84. package/dist/engine/export/exporters/sections/FooterExporter.js.map +1 -1
  85. package/dist/engine/export/exporters/sections/HeroExporter.d.ts.map +1 -1
  86. package/dist/engine/export/exporters/sections/HeroExporter.js +222 -218
  87. package/dist/engine/export/exporters/sections/HeroExporter.js.map +1 -1
  88. package/dist/engine/export/exporters/sections/MarketingExporters.js +88 -88
  89. package/dist/engine/export/exporters/sections/MarketingExporters.js.map +1 -1
  90. package/dist/engine/export/exporters/sections/NavbarExporter.js +34 -34
  91. package/dist/engine/export/exporters/sections/NavbarExporter.js.map +1 -1
  92. package/dist/engine/export/exporters/sections/index.d.ts.map +1 -1
  93. package/dist/engine/export/exporters/sections/index.js +29 -22
  94. package/dist/engine/export/exporters/sections/index.js.map +1 -1
  95. package/dist/engine/export/sanitizeHtml.d.ts.map +1 -1
  96. package/dist/engine/export/sanitizeHtml.js +65 -18
  97. package/dist/engine/export/sanitizeHtml.js.map +1 -1
  98. package/dist/engine/export/styleResolver.d.ts.map +1 -1
  99. package/dist/engine/export/styleResolver.js +33 -33
  100. package/dist/engine/export/styleResolver.js.map +1 -1
  101. package/dist/engine/generators/generateLandingPage.d.ts +4 -4
  102. package/dist/engine/generators/generateLandingPage.d.ts.map +1 -1
  103. package/dist/engine/generators/generateLandingPage.js.map +1 -1
  104. package/dist/engine/index.d.ts +6 -3
  105. package/dist/engine/index.d.ts.map +1 -1
  106. package/dist/engine/index.js +99 -89
  107. package/dist/engine/index.js.map +1 -1
  108. package/dist/engine/patch/PatchBuilder.d.ts +11 -11
  109. package/dist/engine/patch/PatchBuilder.d.ts.map +1 -1
  110. package/dist/engine/patch/PatchBuilder.js +92 -93
  111. package/dist/engine/patch/PatchBuilder.js.map +1 -1
  112. package/dist/engine/patch/applyPatch.js.map +1 -1
  113. package/dist/engine/plugins/builtin/blog/index.d.ts +3 -0
  114. package/dist/engine/plugins/builtin/blog/index.d.ts.map +1 -0
  115. package/dist/engine/plugins/builtin/blog/manifest.d.ts +3 -0
  116. package/dist/engine/plugins/builtin/blog/manifest.d.ts.map +1 -0
  117. package/dist/engine/plugins/builtin/blog/manifest.js +273 -0
  118. package/dist/engine/plugins/builtin/blog/manifest.js.map +1 -0
  119. package/dist/engine/plugins/builtin/blog/mockContentProvider.d.ts +7 -0
  120. package/dist/engine/plugins/builtin/blog/mockContentProvider.d.ts.map +1 -0
  121. package/dist/engine/plugins/builtin/blog/mockContentProvider.js +135 -0
  122. package/dist/engine/plugins/builtin/blog/mockContentProvider.js.map +1 -0
  123. package/dist/engine/plugins/contentHydration.d.ts +17 -0
  124. package/dist/engine/plugins/contentHydration.d.ts.map +1 -0
  125. package/dist/engine/plugins/contentHydration.js +121 -0
  126. package/dist/engine/plugins/contentHydration.js.map +1 -0
  127. package/dist/engine/plugins/dynamicPageResolver.d.ts +25 -0
  128. package/dist/engine/plugins/dynamicPageResolver.d.ts.map +1 -0
  129. package/dist/engine/plugins/dynamicPageResolver.js +32 -0
  130. package/dist/engine/plugins/dynamicPageResolver.js.map +1 -0
  131. package/dist/engine/plugins/index.d.ts +11 -0
  132. package/dist/engine/plugins/index.d.ts.map +1 -0
  133. package/dist/engine/plugins/pluginRegistry.d.ts +37 -0
  134. package/dist/engine/plugins/pluginRegistry.d.ts.map +1 -0
  135. package/dist/engine/plugins/pluginRegistry.js +134 -0
  136. package/dist/engine/plugins/pluginRegistry.js.map +1 -0
  137. package/dist/engine/plugins/types.d.ts +180 -0
  138. package/dist/engine/plugins/types.d.ts.map +1 -0
  139. package/dist/engine/presets/heroVariations.d.ts +5 -0
  140. package/dist/engine/presets/heroVariations.d.ts.map +1 -1
  141. package/dist/engine/presets/heroVariations.js +50 -6
  142. package/dist/engine/presets/heroVariations.js.map +1 -1
  143. package/dist/engine/preview/Preview.d.ts +19 -0
  144. package/dist/engine/preview/Preview.d.ts.map +1 -0
  145. package/dist/engine/preview/Preview.js +418 -0
  146. package/dist/engine/preview/Preview.js.map +1 -0
  147. package/dist/engine/registry/blocks/sections/blogPostCard.d.ts +3 -0
  148. package/dist/engine/registry/blocks/sections/blogPostCard.d.ts.map +1 -0
  149. package/dist/engine/registry/blocks/sections/blogPostCard.js +53 -0
  150. package/dist/engine/registry/blocks/sections/blogPostCard.js.map +1 -0
  151. package/dist/engine/registry/blocks/sections/blogPostDetail.d.ts +3 -0
  152. package/dist/engine/registry/blocks/sections/blogPostDetail.d.ts.map +1 -0
  153. package/dist/engine/registry/blocks/sections/blogPostDetail.js +49 -0
  154. package/dist/engine/registry/blocks/sections/blogPostDetail.js.map +1 -0
  155. package/dist/engine/registry/blocks/sections/blogPostGrid.d.ts +3 -0
  156. package/dist/engine/registry/blocks/sections/blogPostGrid.d.ts.map +1 -0
  157. package/dist/engine/registry/blocks/sections/blogPostGrid.js +89 -0
  158. package/dist/engine/registry/blocks/sections/blogPostGrid.js.map +1 -0
  159. package/dist/engine/registry/blocks/sections/hero.d.ts.map +1 -1
  160. package/dist/engine/registry/blocks/sections/hero.js +67 -14
  161. package/dist/engine/registry/blocks/sections/hero.js.map +1 -1
  162. package/dist/engine/registry/blocks/sections/index.d.ts +3 -0
  163. package/dist/engine/registry/blocks/sections/index.d.ts.map +1 -1
  164. package/dist/engine/registry/blocks/sections/navbar.d.ts.map +1 -1
  165. package/dist/engine/registry/blocks/sections/navbar.js +2 -1
  166. package/dist/engine/registry/blocks/sections/navbar.js.map +1 -1
  167. package/dist/engine/registry/registry.d.ts.map +1 -1
  168. package/dist/engine/registry/registry.js +39 -36
  169. package/dist/engine/registry/registry.js.map +1 -1
  170. package/dist/engine/registry/types.d.ts +17 -13
  171. package/dist/engine/registry/types.d.ts.map +1 -1
  172. package/dist/engine/render/renderNodeImpl.js +85 -85
  173. package/dist/engine/render/renderNodeImpl.js.map +1 -1
  174. package/dist/engine/render/renderPage.d.ts +3 -3
  175. package/dist/engine/render/renderPage.d.ts.map +1 -1
  176. package/dist/engine/render/renderPage.js.map +1 -1
  177. package/dist/engine/render/renderers/composition/CardRenderer.js +4 -4
  178. package/dist/engine/render/renderers/content/LinkRenderer.d.ts.map +1 -1
  179. package/dist/engine/render/renderers/content/LinkRenderer.js +41 -16
  180. package/dist/engine/render/renderers/content/LinkRenderer.js.map +1 -1
  181. package/dist/engine/render/renderers/content/SocialLinksRenderer.d.ts.map +1 -1
  182. package/dist/engine/render/renderers/content/SocialLinksRenderer.js +16 -23
  183. package/dist/engine/render/renderers/content/SocialLinksRenderer.js.map +1 -1
  184. package/dist/engine/render/renderers/forms/FormRenderer.js +6 -6
  185. package/dist/engine/render/renderers/layout/GridRenderer.js +3 -3
  186. package/dist/engine/render/renderers/sections/BlogPostCardRenderer.d.ts +3 -0
  187. package/dist/engine/render/renderers/sections/BlogPostCardRenderer.d.ts.map +1 -0
  188. package/dist/engine/render/renderers/sections/BlogPostCardRenderer.js +199 -0
  189. package/dist/engine/render/renderers/sections/BlogPostCardRenderer.js.map +1 -0
  190. package/dist/engine/render/renderers/sections/BlogPostDetailRenderer.d.ts +3 -0
  191. package/dist/engine/render/renderers/sections/BlogPostDetailRenderer.d.ts.map +1 -0
  192. package/dist/engine/render/renderers/sections/BlogPostDetailRenderer.js +293 -0
  193. package/dist/engine/render/renderers/sections/BlogPostDetailRenderer.js.map +1 -0
  194. package/dist/engine/render/renderers/sections/BlogPostGridRenderer.d.ts +3 -0
  195. package/dist/engine/render/renderers/sections/BlogPostGridRenderer.d.ts.map +1 -0
  196. package/dist/engine/render/renderers/sections/BlogPostGridRenderer.js +101 -0
  197. package/dist/engine/render/renderers/sections/BlogPostGridRenderer.js.map +1 -0
  198. package/dist/engine/render/renderers/sections/CtaRenderer.d.ts.map +1 -1
  199. package/dist/engine/render/renderers/sections/CtaRenderer.js +33 -31
  200. package/dist/engine/render/renderers/sections/CtaRenderer.js.map +1 -1
  201. package/dist/engine/render/renderers/sections/FaqItemRenderer.d.ts.map +1 -1
  202. package/dist/engine/render/renderers/sections/FaqItemRenderer.js +7 -6
  203. package/dist/engine/render/renderers/sections/FaqItemRenderer.js.map +1 -1
  204. package/dist/engine/render/renderers/sections/FaqRenderer.js +7 -7
  205. package/dist/engine/render/renderers/sections/FaqRenderer.js.map +1 -1
  206. package/dist/engine/render/renderers/sections/FeatureGridRenderer.d.ts.map +1 -1
  207. package/dist/engine/render/renderers/sections/FeatureGridRenderer.js +19 -18
  208. package/dist/engine/render/renderers/sections/FeatureGridRenderer.js.map +1 -1
  209. package/dist/engine/render/renderers/sections/FeatureRenderer.d.ts.map +1 -1
  210. package/dist/engine/render/renderers/sections/FeatureRenderer.js +5 -4
  211. package/dist/engine/render/renderers/sections/FeatureRenderer.js.map +1 -1
  212. package/dist/engine/render/renderers/sections/FooterRenderer.d.ts.map +1 -1
  213. package/dist/engine/render/renderers/sections/FooterRenderer.js +25 -30
  214. package/dist/engine/render/renderers/sections/FooterRenderer.js.map +1 -1
  215. package/dist/engine/render/renderers/sections/HeroRenderer.d.ts.map +1 -1
  216. package/dist/engine/render/renderers/sections/HeroRenderer.js +293 -229
  217. package/dist/engine/render/renderers/sections/HeroRenderer.js.map +1 -1
  218. package/dist/engine/render/renderers/sections/NavbarRenderer.d.ts.map +1 -1
  219. package/dist/engine/render/renderers/sections/NavbarRenderer.js +23 -22
  220. package/dist/engine/render/renderers/sections/NavbarRenderer.js.map +1 -1
  221. package/dist/engine/render/renderers/sections/PricingCardRenderer.d.ts.map +1 -1
  222. package/dist/engine/render/renderers/sections/PricingCardRenderer.js +7 -6
  223. package/dist/engine/render/renderers/sections/PricingCardRenderer.js.map +1 -1
  224. package/dist/engine/render/renderers/sections/PricingRenderer.js +9 -9
  225. package/dist/engine/render/renderers/sections/PricingRenderer.js.map +1 -1
  226. package/dist/engine/render/renderers/sections/TestimonialGridRenderer.d.ts.map +1 -1
  227. package/dist/engine/render/renderers/sections/TestimonialGridRenderer.js +17 -16
  228. package/dist/engine/render/renderers/sections/TestimonialGridRenderer.js.map +1 -1
  229. package/dist/engine/render/renderers/sections/TestimonialRenderer.d.ts.map +1 -1
  230. package/dist/engine/render/renderers/sections/TestimonialRenderer.js +11 -10
  231. package/dist/engine/render/renderers/sections/TestimonialRenderer.js.map +1 -1
  232. package/dist/engine/render/renderers/sections/index.js +24 -18
  233. package/dist/engine/render/renderers/sections/index.js.map +1 -1
  234. package/dist/engine/schema/siteDocument.d.ts +118 -7
  235. package/dist/engine/schema/siteDocument.d.ts.map +1 -1
  236. package/dist/engine/schema/siteDocument.js +1 -1
  237. package/dist/engine/schema/siteDocument.js.map +1 -1
  238. package/dist/engine/schema/themeTokens.d.ts +1 -1
  239. package/dist/engine/schema/themeTokens.js.map +1 -1
  240. package/dist/engine/shared/carouselAnimation.d.ts +20 -0
  241. package/dist/engine/shared/carouselAnimation.d.ts.map +1 -0
  242. package/dist/engine/shared/carouselAnimation.js +62 -0
  243. package/dist/engine/shared/carouselAnimation.js.map +1 -0
  244. package/dist/engine/shared/imageGrid/presets.js +4 -12
  245. package/dist/engine/shared/imageGrid/presets.js.map +1 -1
  246. package/dist/engine/shared/imageGrid/types.d.ts +2 -0
  247. package/dist/engine/shared/imageGrid/types.d.ts.map +1 -1
  248. package/dist/engine/shared/layoutConstants.d.ts +13 -0
  249. package/dist/engine/shared/layoutConstants.d.ts.map +1 -0
  250. package/dist/engine/shared/layoutConstants.js +14 -0
  251. package/dist/engine/shared/layoutConstants.js.map +1 -0
  252. package/dist/engine/shared/shadowConstants.d.ts +5 -0
  253. package/dist/engine/shared/shadowConstants.d.ts.map +1 -0
  254. package/dist/engine/shared/shadowConstants.js +11 -0
  255. package/dist/engine/shared/shadowConstants.js.map +1 -0
  256. package/dist/engine/shared/showWhen.d.ts +44 -0
  257. package/dist/engine/shared/showWhen.d.ts.map +1 -0
  258. package/dist/engine/shared/showWhen.js +33 -0
  259. package/dist/engine/shared/showWhen.js.map +1 -0
  260. package/dist/engine/shared/socialIcons.d.ts +6 -0
  261. package/dist/engine/shared/socialIcons.d.ts.map +1 -0
  262. package/dist/engine/shared/socialIcons.js +13 -0
  263. package/dist/engine/shared/socialIcons.js.map +1 -0
  264. package/dist/engine/shared/typeGuards.d.ts +11 -0
  265. package/dist/engine/shared/typeGuards.d.ts.map +1 -0
  266. package/dist/hooks/useEditorState.d.ts +8 -5
  267. package/dist/hooks/useEditorState.d.ts.map +1 -1
  268. package/dist/hooks/useEditorState.js +150 -194
  269. package/dist/hooks/useEditorState.js.map +1 -1
  270. package/dist/hooks/useNavbarAutoSync.d.ts +2 -2
  271. package/dist/hooks/useNavbarAutoSync.d.ts.map +1 -1
  272. package/dist/hooks/useNavbarAutoSync.js.map +1 -1
  273. package/dist/index.d.ts +60 -14
  274. package/dist/index.d.ts.map +1 -1
  275. package/dist/index.js +109 -124
  276. package/dist/index.js.map +1 -1
  277. package/dist/shared/index.d.ts +2 -2
  278. package/dist/shared/index.d.ts.map +1 -1
  279. package/dist/shared/schema.d.ts +4 -4
  280. package/dist/shared/schema.d.ts.map +1 -1
  281. package/dist/shared/schema.js.map +1 -1
  282. package/dist/shared/templates/escola-blog.d.ts +3 -0
  283. package/dist/shared/templates/escola-blog.d.ts.map +1 -0
  284. package/dist/shared/templates/escola-blog.js +160 -0
  285. package/dist/shared/templates/escola-blog.js.map +1 -0
  286. package/dist/shared/templates/escola-edvi.d.ts +2 -2
  287. package/dist/shared/templates/escola-edvi.d.ts.map +1 -1
  288. package/dist/shared/templates/escola-edvi.js.map +1 -1
  289. package/dist/shared/templates/escola-premium.d.ts +2 -2
  290. package/dist/shared/templates/escola-premium.d.ts.map +1 -1
  291. package/dist/shared/templates/escola-premium.js.map +1 -1
  292. package/dist/shared/templates/escola-zilom.d.ts +2 -2
  293. package/dist/shared/templates/escola-zilom.d.ts.map +1 -1
  294. package/dist/shared/templates/escola-zilom.js.map +1 -1
  295. package/dist/shared/templates/index.d.ts +7 -5
  296. package/dist/shared/templates/index.d.ts.map +1 -1
  297. package/dist/shared/templates/index.js +30 -12
  298. package/dist/shared/templates/index.js.map +1 -1
  299. package/dist/shared/validators.d.ts +3 -3
  300. package/dist/shared/validators.d.ts.map +1 -1
  301. package/dist/shared/validators.js.map +1 -1
  302. package/dist/site/BlockRenderer.d.ts +1 -1
  303. package/dist/site/BlockRenderer.d.ts.map +1 -1
  304. package/dist/site/BlockRenderer.js +22 -26
  305. package/dist/site/BlockRenderer.js.map +1 -1
  306. package/dist/site/blocks/Button.js +15 -17
  307. package/dist/site/blocks/Button.js.map +1 -1
  308. package/dist/site/blocks/Card.js +13 -15
  309. package/dist/site/blocks/Card.js.map +1 -1
  310. package/dist/site/blocks/Features.js +15 -17
  311. package/dist/site/blocks/Features.js.map +1 -1
  312. package/dist/site/blocks/Footer.js +10 -12
  313. package/dist/site/blocks/Footer.js.map +1 -1
  314. package/dist/site/blocks/Hero.js +12 -14
  315. package/dist/site/blocks/Hero.js.map +1 -1
  316. package/dist/site/blocks/Navbar.js +13 -15
  317. package/dist/site/blocks/Navbar.js.map +1 -1
  318. package/dist/site/blocks/Section.js +9 -11
  319. package/dist/site/blocks/Section.js.map +1 -1
  320. package/dist/site/blocks/SectionHeader.js +9 -11
  321. package/dist/site/blocks/SectionHeader.js.map +1 -1
  322. package/dist/site/blocks/SiteRoot.js +9 -12
  323. package/dist/site/blocks/SiteRoot.js.map +1 -1
  324. package/dist/site/index.js +73 -73
  325. package/dist/styles/site/sections.css.d.ts +1 -1
  326. package/dist/utils/blockUtils.d.ts +2 -2
  327. package/dist/utils/blockUtils.d.ts.map +1 -1
  328. package/dist/utils/blockUtils.js.map +1 -1
  329. package/dist/utils/changeDetector.d.ts +3 -2
  330. package/dist/utils/changeDetector.d.ts.map +1 -1
  331. package/dist/utils/changeDetector.js +39 -39
  332. package/dist/utils/changeDetector.js.map +1 -1
  333. package/dist/utils/cn.js +2 -2
  334. package/dist/utils/dataURLUtils.d.ts +24 -0
  335. package/dist/utils/dataURLUtils.d.ts.map +1 -0
  336. package/dist/utils/dataURLUtils.js +47 -0
  337. package/dist/utils/dataURLUtils.js.map +1 -0
  338. package/dist/utils/documentHash.d.ts +2 -2
  339. package/dist/utils/documentHash.d.ts.map +1 -1
  340. package/dist/utils/documentHash.js +8 -7
  341. package/dist/utils/documentHash.js.map +1 -1
  342. package/dist/utils/logger.d.ts +13 -0
  343. package/dist/utils/logger.d.ts.map +1 -0
  344. package/dist/utils/logger.js +13 -0
  345. package/dist/utils/logger.js.map +1 -0
  346. package/dist/utils/navbarSync.d.ts +3 -3
  347. package/dist/utils/navbarSync.d.ts.map +1 -1
  348. package/dist/utils/navbarSync.js +25 -24
  349. package/dist/utils/navbarSync.js.map +1 -1
  350. package/dist/utils/sharedTemplateToEngine.d.ts +7 -8
  351. package/dist/utils/sharedTemplateToEngine.d.ts.map +1 -1
  352. package/dist/utils/sharedTemplateToEngine.js +14 -87
  353. package/dist/utils/sharedTemplateToEngine.js.map +1 -1
  354. package/dist/viewer/LandingPageViewer.d.ts +32 -0
  355. package/dist/viewer/LandingPageViewer.d.ts.map +1 -0
  356. package/dist/viewer/LandingPageViewer.js +300 -0
  357. package/dist/viewer/LandingPageViewer.js.map +1 -0
  358. package/package.json +10 -5
  359. package/dist/components/ComponentPalette/definitions.d.ts +0 -3
  360. package/dist/components/ComponentPalette/definitions.d.ts.map +0 -1
  361. package/dist/components/ComponentPalette/definitions.js +0 -206
  362. package/dist/components/ComponentPalette/definitions.js.map +0 -1
  363. package/dist/components/ComponentPalette/index.d.ts +0 -7
  364. package/dist/components/ComponentPalette/index.d.ts.map +0 -1
  365. package/dist/components/ComponentPalette/index.js +0 -86
  366. package/dist/components/ComponentPalette/index.js.map +0 -1
  367. package/dist/components/LoadingSpinner.d.ts.map +0 -1
  368. package/dist/components/LoadingSpinner.js.map +0 -1
  369. package/dist/components/PreviewPanel/index.d.ts +0 -12
  370. package/dist/components/PreviewPanel/index.d.ts.map +0 -1
  371. package/dist/components/PreviewPanel/index.js +0 -140
  372. package/dist/components/PreviewPanel/index.js.map +0 -1
  373. package/dist/components/PropertyPanel/index.d.ts +0 -8
  374. package/dist/components/PropertyPanel/index.d.ts.map +0 -1
  375. package/dist/components/PropertyPanel/index.js +0 -223
  376. package/dist/components/PropertyPanel/index.js.map +0 -1
  377. package/dist/components/SiteEditor/index.d.ts +0 -3
  378. package/dist/components/SiteEditor/index.d.ts.map +0 -1
  379. package/dist/components/SiteEditor/index.js +0 -251
  380. package/dist/components/SiteEditor/index.js.map +0 -1
  381. package/dist/components/SiteViewer/index.d.ts +0 -3
  382. package/dist/components/SiteViewer/index.d.ts.map +0 -1
  383. package/dist/components/SiteViewer/index.js +0 -55
  384. package/dist/components/SiteViewer/index.js.map +0 -1
  385. package/dist/components/TemplateSelector/index.d.ts +0 -7
  386. package/dist/components/TemplateSelector/index.d.ts.map +0 -1
  387. package/dist/components/TemplateSelector/index.js +0 -109
  388. package/dist/components/TemplateSelector/index.js.map +0 -1
  389. package/dist/components/Toolbar/index.d.ts +0 -15
  390. package/dist/components/Toolbar/index.d.ts.map +0 -1
  391. package/dist/components/Toolbar/index.js +0 -113
  392. package/dist/components/Toolbar/index.js.map +0 -1
  393. package/dist/components/editors/PaletteSelector.d.ts +0 -14
  394. package/dist/components/editors/PaletteSelector.d.ts.map +0 -1
  395. package/dist/components/editors/PaletteSelector.js +0 -175
  396. package/dist/components/editors/PaletteSelector.js.map +0 -1
  397. package/dist/components/effects/SectionGlow.d.ts +0 -12
  398. package/dist/components/effects/SectionGlow.d.ts.map +0 -1
  399. package/dist/components/effects/SectionGlow.js +0 -139
  400. package/dist/components/effects/SectionGlow.js.map +0 -1
  401. package/dist/components/inputs/CheckboxInput.d.ts +0 -3
  402. package/dist/components/inputs/CheckboxInput.d.ts.map +0 -1
  403. package/dist/components/inputs/CheckboxInput.js +0 -46
  404. package/dist/components/inputs/CheckboxInput.js.map +0 -1
  405. package/dist/components/inputs/ColorInput.d.ts +0 -7
  406. package/dist/components/inputs/ColorInput.d.ts.map +0 -1
  407. package/dist/components/inputs/ColorInput.js +0 -180
  408. package/dist/components/inputs/ColorInput.js.map +0 -1
  409. package/dist/components/inputs/GradientInput.d.ts +0 -7
  410. package/dist/components/inputs/GradientInput.d.ts.map +0 -1
  411. package/dist/components/inputs/GradientInput.js +0 -78
  412. package/dist/components/inputs/GradientInput.js.map +0 -1
  413. package/dist/components/inputs/ImageInput.d.ts.map +0 -1
  414. package/dist/components/inputs/ImageInput.js.map +0 -1
  415. package/dist/components/inputs/SelectInput.d.ts +0 -7
  416. package/dist/components/inputs/SelectInput.d.ts.map +0 -1
  417. package/dist/components/inputs/SelectInput.js +0 -97
  418. package/dist/components/inputs/SelectInput.js.map +0 -1
  419. package/dist/components/inputs/SliderInput.d.ts +0 -8
  420. package/dist/components/inputs/SliderInput.d.ts.map +0 -1
  421. package/dist/components/inputs/SliderInput.js +0 -77
  422. package/dist/components/inputs/SliderInput.js.map +0 -1
  423. package/dist/components/inputs/index.d.ts +0 -11
  424. package/dist/components/inputs/index.d.ts.map +0 -1
  425. package/dist/components/inputs/types.d.ts +0 -48
  426. package/dist/components/inputs/types.d.ts.map +0 -1
  427. package/dist/components/inputs/types.js +0 -9
  428. package/dist/components/inputs/types.js.map +0 -1
  429. package/dist/components/renderers/ComponentRenderer.d.ts +0 -8
  430. package/dist/components/renderers/ComponentRenderer.d.ts.map +0 -1
  431. package/dist/components/renderers/ComponentRenderer.js +0 -13
  432. package/dist/components/renderers/ComponentRenderer.js.map +0 -1
  433. package/dist/components/renderers/HeroRenderer.d.ts +0 -3
  434. package/dist/components/renderers/HeroRenderer.d.ts.map +0 -1
  435. package/dist/components/renderers/HeroRenderer.js +0 -10
  436. package/dist/components/renderers/HeroRenderer.js.map +0 -1
  437. package/dist/components/renderers/hero/HeroBanner.d.ts +0 -3
  438. package/dist/components/renderers/hero/HeroBanner.d.ts.map +0 -1
  439. package/dist/components/renderers/hero/HeroBanner.js +0 -122
  440. package/dist/components/renderers/hero/HeroBanner.js.map +0 -1
  441. package/dist/components/renderers/hero/HeroCinematic.d.ts +0 -3
  442. package/dist/components/renderers/hero/HeroCinematic.d.ts.map +0 -1
  443. package/dist/components/renderers/hero/HeroCinematic.js +0 -141
  444. package/dist/components/renderers/hero/HeroCinematic.js.map +0 -1
  445. package/dist/components/renderers/hero/HeroClassic.d.ts +0 -3
  446. package/dist/components/renderers/hero/HeroClassic.d.ts.map +0 -1
  447. package/dist/components/renderers/hero/HeroClassic.js +0 -241
  448. package/dist/components/renderers/hero/HeroClassic.js.map +0 -1
  449. package/dist/components/renderers/hero/HeroCollage.d.ts +0 -3
  450. package/dist/components/renderers/hero/HeroCollage.d.ts.map +0 -1
  451. package/dist/components/renderers/hero/HeroCollage.js +0 -131
  452. package/dist/components/renderers/hero/HeroCollage.js.map +0 -1
  453. package/dist/components/renderers/hero/HeroColumns.d.ts +0 -3
  454. package/dist/components/renderers/hero/HeroColumns.d.ts.map +0 -1
  455. package/dist/components/renderers/hero/HeroColumns.js +0 -114
  456. package/dist/components/renderers/hero/HeroColumns.js.map +0 -1
  457. package/dist/components/renderers/hero/HeroGlass.d.ts +0 -3
  458. package/dist/components/renderers/hero/HeroGlass.d.ts.map +0 -1
  459. package/dist/components/renderers/hero/HeroGlass.js +0 -119
  460. package/dist/components/renderers/hero/HeroGlass.js.map +0 -1
  461. package/dist/components/renderers/hero/HeroNeon.d.ts +0 -3
  462. package/dist/components/renderers/hero/HeroNeon.d.ts.map +0 -1
  463. package/dist/components/renderers/hero/HeroNeon.js +0 -136
  464. package/dist/components/renderers/hero/HeroNeon.js.map +0 -1
  465. package/dist/components/renderers/hero/HeroParallax.d.ts +0 -3
  466. package/dist/components/renderers/hero/HeroParallax.d.ts.map +0 -1
  467. package/dist/components/renderers/hero/HeroParallax.js +0 -99
  468. package/dist/components/renderers/hero/HeroParallax.js.map +0 -1
  469. package/dist/components/renderers/hero/HeroSplit.d.ts +0 -3
  470. package/dist/components/renderers/hero/HeroSplit.d.ts.map +0 -1
  471. package/dist/components/renderers/hero/HeroSplit.js +0 -142
  472. package/dist/components/renderers/hero/HeroSplit.js.map +0 -1
  473. package/dist/components/renderers/hero/HeroSpotlight.d.ts +0 -3
  474. package/dist/components/renderers/hero/HeroSpotlight.d.ts.map +0 -1
  475. package/dist/components/renderers/hero/HeroSpotlight.js +0 -213
  476. package/dist/components/renderers/hero/HeroSpotlight.js.map +0 -1
  477. package/dist/components/renderers/hero/index.d.ts +0 -14
  478. package/dist/components/renderers/hero/index.d.ts.map +0 -1
  479. package/dist/components/renderers/index.d.ts +0 -8
  480. package/dist/components/renderers/index.d.ts.map +0 -1
  481. package/dist/components/renderers/index.js +0 -89
  482. package/dist/components/renderers/index.js.map +0 -1
  483. package/dist/components/renderers/types.d.ts +0 -11
  484. package/dist/components/renderers/types.d.ts.map +0 -1
  485. package/dist/editor/LandingPageEditorV2.d.ts +0 -19
  486. package/dist/editor/LandingPageEditorV2.d.ts.map +0 -1
  487. package/dist/editor/LandingPageEditorV2.js +0 -311
  488. package/dist/editor/LandingPageEditorV2.js.map +0 -1
  489. package/dist/editor/PropertyEditor/PropertyGroup.js +0 -23
  490. package/dist/editor/PropertyEditor/PropertyGroup.js.map +0 -1
  491. package/dist/engine/preview/PreviewV2.d.ts +0 -15
  492. package/dist/engine/preview/PreviewV2.d.ts.map +0 -1
  493. package/dist/engine/preview/PreviewV2.js +0 -242
  494. package/dist/engine/preview/PreviewV2.js.map +0 -1
  495. package/dist/modules/registry.d.ts +0 -31
  496. package/dist/modules/registry.d.ts.map +0 -1
  497. package/dist/modules/registry.js +0 -67
  498. package/dist/modules/registry.js.map +0 -1
  499. package/dist/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.js +0 -57
  500. package/dist/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.js.map +0 -1
  501. package/dist/node_modules/@dnd-kit/core/dist/core.esm.js +0 -2345
  502. package/dist/node_modules/@dnd-kit/core/dist/core.esm.js.map +0 -1
  503. package/dist/node_modules/@dnd-kit/sortable/dist/sortable.esm.js +0 -440
  504. package/dist/node_modules/@dnd-kit/sortable/dist/sortable.esm.js.map +0 -1
  505. package/dist/node_modules/@dnd-kit/utilities/dist/utilities.esm.js +0 -236
  506. package/dist/node_modules/@dnd-kit/utilities/dist/utilities.esm.js.map +0 -1
  507. package/dist/node_modules/clsx/dist/clsx.js +0 -17
  508. package/dist/node_modules/clsx/dist/clsx.js.map +0 -1
  509. package/dist/node_modules/lucide-react/dist/esm/Icon.js +0 -35
  510. package/dist/node_modules/lucide-react/dist/esm/Icon.js.map +0 -1
  511. package/dist/node_modules/lucide-react/dist/esm/createLucideIcon.js +0 -18
  512. package/dist/node_modules/lucide-react/dist/esm/createLucideIcon.js.map +0 -1
  513. package/dist/node_modules/lucide-react/dist/esm/defaultAttributes.js +0 -15
  514. package/dist/node_modules/lucide-react/dist/esm/defaultAttributes.js.map +0 -1
  515. package/dist/node_modules/lucide-react/dist/esm/icons/arrow-right.js +0 -9
  516. package/dist/node_modules/lucide-react/dist/esm/icons/arrow-right.js.map +0 -1
  517. package/dist/node_modules/lucide-react/dist/esm/icons/briefcase.js +0 -9
  518. package/dist/node_modules/lucide-react/dist/esm/icons/briefcase.js.map +0 -1
  519. package/dist/node_modules/lucide-react/dist/esm/icons/check.js +0 -6
  520. package/dist/node_modules/lucide-react/dist/esm/icons/check.js.map +0 -1
  521. package/dist/node_modules/lucide-react/dist/esm/icons/chevron-down.js +0 -8
  522. package/dist/node_modules/lucide-react/dist/esm/icons/chevron-down.js.map +0 -1
  523. package/dist/node_modules/lucide-react/dist/esm/icons/chevron-right.js +0 -8
  524. package/dist/node_modules/lucide-react/dist/esm/icons/chevron-right.js.map +0 -1
  525. package/dist/node_modules/lucide-react/dist/esm/icons/chevron-up.js +0 -6
  526. package/dist/node_modules/lucide-react/dist/esm/icons/chevron-up.js.map +0 -1
  527. package/dist/node_modules/lucide-react/dist/esm/icons/eye.js +0 -15
  528. package/dist/node_modules/lucide-react/dist/esm/icons/eye.js.map +0 -1
  529. package/dist/node_modules/lucide-react/dist/esm/icons/file-text.js +0 -12
  530. package/dist/node_modules/lucide-react/dist/esm/icons/file-text.js.map +0 -1
  531. package/dist/node_modules/lucide-react/dist/esm/icons/globe.js +0 -10
  532. package/dist/node_modules/lucide-react/dist/esm/icons/globe.js.map +0 -1
  533. package/dist/node_modules/lucide-react/dist/esm/icons/grid-3x3.js +0 -12
  534. package/dist/node_modules/lucide-react/dist/esm/icons/grid-3x3.js.map +0 -1
  535. package/dist/node_modules/lucide-react/dist/esm/icons/grip-vertical.js +0 -13
  536. package/dist/node_modules/lucide-react/dist/esm/icons/grip-vertical.js.map +0 -1
  537. package/dist/node_modules/lucide-react/dist/esm/icons/heading.js +0 -10
  538. package/dist/node_modules/lucide-react/dist/esm/icons/heading.js.map +0 -1
  539. package/dist/node_modules/lucide-react/dist/esm/icons/image.js +0 -10
  540. package/dist/node_modules/lucide-react/dist/esm/icons/image.js.map +0 -1
  541. package/dist/node_modules/lucide-react/dist/esm/icons/images.js +0 -11
  542. package/dist/node_modules/lucide-react/dist/esm/icons/images.js.map +0 -1
  543. package/dist/node_modules/lucide-react/dist/esm/icons/list.js +0 -13
  544. package/dist/node_modules/lucide-react/dist/esm/icons/list.js.map +0 -1
  545. package/dist/node_modules/lucide-react/dist/esm/icons/loader-circle.js +0 -8
  546. package/dist/node_modules/lucide-react/dist/esm/icons/loader-circle.js.map +0 -1
  547. package/dist/node_modules/lucide-react/dist/esm/icons/minus.js +0 -6
  548. package/dist/node_modules/lucide-react/dist/esm/icons/minus.js.map +0 -1
  549. package/dist/node_modules/lucide-react/dist/esm/icons/mouse-pointer-click.js +0 -18
  550. package/dist/node_modules/lucide-react/dist/esm/icons/mouse-pointer-click.js.map +0 -1
  551. package/dist/node_modules/lucide-react/dist/esm/icons/navigation.js +0 -8
  552. package/dist/node_modules/lucide-react/dist/esm/icons/navigation.js.map +0 -1
  553. package/dist/node_modules/lucide-react/dist/esm/icons/panels-top-left.js +0 -10
  554. package/dist/node_modules/lucide-react/dist/esm/icons/panels-top-left.js.map +0 -1
  555. package/dist/node_modules/lucide-react/dist/esm/icons/phone.js +0 -14
  556. package/dist/node_modules/lucide-react/dist/esm/icons/phone.js.map +0 -1
  557. package/dist/node_modules/lucide-react/dist/esm/icons/plus.js +0 -9
  558. package/dist/node_modules/lucide-react/dist/esm/icons/plus.js.map +0 -1
  559. package/dist/node_modules/lucide-react/dist/esm/icons/redo-2.js +0 -9
  560. package/dist/node_modules/lucide-react/dist/esm/icons/redo-2.js.map +0 -1
  561. package/dist/node_modules/lucide-react/dist/esm/icons/redo.js +0 -9
  562. package/dist/node_modules/lucide-react/dist/esm/icons/redo.js.map +0 -1
  563. package/dist/node_modules/lucide-react/dist/esm/icons/rotate-ccw.js +0 -9
  564. package/dist/node_modules/lucide-react/dist/esm/icons/rotate-ccw.js.map +0 -1
  565. package/dist/node_modules/lucide-react/dist/esm/icons/save.js +0 -16
  566. package/dist/node_modules/lucide-react/dist/esm/icons/save.js.map +0 -1
  567. package/dist/node_modules/lucide-react/dist/esm/icons/square.js +0 -8
  568. package/dist/node_modules/lucide-react/dist/esm/icons/square.js.map +0 -1
  569. package/dist/node_modules/lucide-react/dist/esm/icons/star.js +0 -14
  570. package/dist/node_modules/lucide-react/dist/esm/icons/star.js.map +0 -1
  571. package/dist/node_modules/lucide-react/dist/esm/icons/trash-2.js +0 -12
  572. package/dist/node_modules/lucide-react/dist/esm/icons/trash-2.js.map +0 -1
  573. package/dist/node_modules/lucide-react/dist/esm/icons/type.js +0 -10
  574. package/dist/node_modules/lucide-react/dist/esm/icons/type.js.map +0 -1
  575. package/dist/node_modules/lucide-react/dist/esm/icons/undo-2.js +0 -9
  576. package/dist/node_modules/lucide-react/dist/esm/icons/undo-2.js.map +0 -1
  577. package/dist/node_modules/lucide-react/dist/esm/icons/undo.js +0 -9
  578. package/dist/node_modules/lucide-react/dist/esm/icons/undo.js.map +0 -1
  579. package/dist/node_modules/lucide-react/dist/esm/icons/user.js +0 -9
  580. package/dist/node_modules/lucide-react/dist/esm/icons/user.js.map +0 -1
  581. package/dist/node_modules/lucide-react/dist/esm/shared/src/utils.js +0 -6
  582. package/dist/node_modules/lucide-react/dist/esm/shared/src/utils.js.map +0 -1
  583. package/dist/node_modules/react-colorful/dist/index.js +0 -167
  584. package/dist/node_modules/react-colorful/dist/index.js.map +0 -1
  585. package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +0 -2266
  586. package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +0 -1
  587. package/dist/types/index.d.ts +0 -99
  588. package/dist/types/index.d.ts.map +0 -1
  589. package/dist/types/module.d.ts +0 -25
  590. package/dist/types/module.d.ts.map +0 -1
  591. package/dist/utils/htmlExporter.d.ts +0 -6
  592. package/dist/utils/htmlExporter.d.ts.map +0 -1
  593. package/dist/utils/htmlExporter.js +0 -92
  594. package/dist/utils/htmlExporter.js.map +0 -1
  595. package/dist/utils/themeApplier.d.ts +0 -11
  596. package/dist/utils/themeApplier.d.ts.map +0 -1
  597. package/dist/utils/themeApplier.js +0 -29
  598. package/dist/utils/themeApplier.js.map +0 -1
  599. package/dist/utils/useDebounce.d.ts +0 -12
  600. package/dist/utils/useDebounce.d.ts.map +0 -1
  601. package/dist/viewer/LandingPageViewerV2.d.ts +0 -25
  602. package/dist/viewer/LandingPageViewerV2.d.ts.map +0 -1
  603. package/dist/viewer/LandingPageViewerV2.js +0 -253
  604. package/dist/viewer/LandingPageViewerV2.js.map +0 -1
  605. /package/dist/{components → editor/PropertyEditor}/inputs/ImageInput.d.ts +0 -0
  606. /package/dist/{components → editor/components}/LoadingSpinner.d.ts +0 -0
  607. /package/dist/{components → editor/components}/LoadingSpinner.js +0 -0
@@ -1,180 +0,0 @@
1
- import { jsxs as c, jsx as n } from "react/jsx-runtime";
2
- import { useState as m, useRef as b, useEffect as h } from "react";
3
- import { createPortal as E } from "react-dom";
4
- import { HexColorPicker as _ } from "../../node_modules/react-colorful/dist/index.js";
5
- import { cn as R } from "../../utils/cn.js";
6
- function C(r, o) {
7
- if (!r || r === "") return o;
8
- if (/^#[0-9A-Fa-f]{6}$/i.test(r)) return r;
9
- if (/^#[0-9A-Fa-f]{3}$/i.test(r)) {
10
- const t = r.slice(1);
11
- return `#${t[0]}${t[0]}${t[1]}${t[1]}${t[2]}${t[2]}`;
12
- }
13
- return o;
14
- }
15
- function S({
16
- value: r,
17
- onChange: o,
18
- onClear: t,
19
- label: d,
20
- placeholder: l = "#ffffff",
21
- size: u = "medium"
22
- }) {
23
- const [a, f] = m(!1), g = b(null), i = b(null), p = b(null), v = C(r, l), [N, x] = m(v);
24
- h(() => {
25
- const e = C(r, l);
26
- x(e);
27
- }, [r, l]), h(() => {
28
- const e = (w) => {
29
- g.current && !g.current.contains(w.target) && i.current && !i.current.contains(w.target) && f(!1);
30
- };
31
- return document.addEventListener("mousedown", e), () => {
32
- document.removeEventListener("mousedown", e);
33
- };
34
- }, []);
35
- const y = () => {
36
- if (!i.current) return { top: 0, left: 0 };
37
- const e = i.current.getBoundingClientRect();
38
- return {
39
- top: e.bottom + window.scrollY + 8,
40
- left: Math.max(8, e.left + window.scrollX)
41
- };
42
- }, [k, $] = m(y());
43
- h(() => {
44
- if (!a) return;
45
- const e = () => $(y());
46
- return window.addEventListener("scroll", e, !0), window.addEventListener("resize", e), e(), () => {
47
- window.removeEventListener("scroll", e, !0), window.removeEventListener("resize", e);
48
- };
49
- }, [a]);
50
- const L = (e) => {
51
- x(e), p.current && window.clearTimeout(p.current), p.current = window.setTimeout(() => {
52
- o(e);
53
- }, 50);
54
- }, P = (e) => {
55
- (/^#[0-9A-Fa-f]{0,6}$/.test(e) || e === "#" || e === "") && (x(e || "#"), /^#[0-9A-Fa-f]{6}$/i.test(e) && o(e));
56
- }, s = N;
57
- return /* @__PURE__ */ c("div", { className: "space-y-1.5", ref: i, children: [
58
- d && /* @__PURE__ */ n("label", { className: "block text-xs font-medium text-gray-800 dark:text-gray-100", children: d }),
59
- /* @__PURE__ */ c("div", { className: "flex items-center gap-2", children: [
60
- /* @__PURE__ */ c(
61
- "button",
62
- {
63
- type: "button",
64
- onClick: () => f(!a),
65
- "aria-label": d || "Selecionar cor",
66
- className: R(
67
- "relative cursor-pointer transition-all rounded-lg border-2 flex-shrink-0",
68
- "hover:scale-[1.02] active:scale-[0.98]",
69
- a ? "ring-2 ring-blue-500 ring-offset-2 dark:ring-offset-gray-900" : "border-gray-300 dark:border-gray-600",
70
- u === "small" && "w-10 h-8",
71
- u === "medium" && "w-12 h-9",
72
- u === "large" && "w-16 h-10"
73
- ),
74
- children: [
75
- /* @__PURE__ */ n(
76
- "div",
77
- {
78
- className: "absolute inset-0.5 rounded-md",
79
- style: {
80
- background: `linear-gradient(45deg, #ccc 25%, transparent 25%),
81
- linear-gradient(-45deg, #ccc 25%, transparent 25%),
82
- linear-gradient(45deg, transparent 75%, #ccc 75%),
83
- linear-gradient(-45deg, transparent 75%, #ccc 75%)`,
84
- backgroundSize: "8px 8px",
85
- backgroundPosition: "0 0, 0 4px, 4px -4px, -4px 0px"
86
- }
87
- }
88
- ),
89
- /* @__PURE__ */ n(
90
- "div",
91
- {
92
- className: "absolute inset-0.5 rounded-md",
93
- style: { backgroundColor: s }
94
- }
95
- )
96
- ]
97
- }
98
- ),
99
- /* @__PURE__ */ n("span", { className: "text-xs font-mono text-gray-600 dark:text-gray-400 uppercase", children: s }),
100
- t && /* @__PURE__ */ n(
101
- "button",
102
- {
103
- type: "button",
104
- onClick: () => {
105
- t(), f(!1);
106
- },
107
- className: "ml-auto text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 transition-colors",
108
- children: "Limpar"
109
- }
110
- )
111
- ] }),
112
- a && E(
113
- /* @__PURE__ */ c(
114
- "div",
115
- {
116
- ref: g,
117
- className: "fixed bg-white dark:bg-gray-900 rounded-xl shadow-2xl border border-gray-200 dark:border-gray-700 p-4",
118
- style: {
119
- top: k.top,
120
- left: k.left,
121
- zIndex: 2147483647
122
- // Máximo z-index possível
123
- },
124
- children: [
125
- /* @__PURE__ */ n("style", { children: `
126
- .react-colorful {
127
- width: 220px !important;
128
- height: 160px !important;
129
- }
130
- .react-colorful__saturation {
131
- border-radius: 8px 8px 0 0;
132
- }
133
- .react-colorful__hue {
134
- height: 20px;
135
- border-radius: 0 0 8px 8px;
136
- }
137
- .react-colorful__pointer {
138
- width: 18px;
139
- height: 18px;
140
- border: 2px solid #ffffff;
141
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
142
- }
143
- ` }),
144
- /* @__PURE__ */ n(
145
- _,
146
- {
147
- color: s,
148
- onChange: L
149
- }
150
- ),
151
- /* @__PURE__ */ c("div", { className: "mt-3 flex items-center gap-2", children: [
152
- /* @__PURE__ */ n(
153
- "div",
154
- {
155
- className: "w-8 h-8 rounded-lg border-2 border-gray-200 dark:border-gray-700 flex-shrink-0",
156
- style: { backgroundColor: s }
157
- }
158
- ),
159
- /* @__PURE__ */ n(
160
- "input",
161
- {
162
- type: "text",
163
- value: s.toUpperCase(),
164
- onChange: (e) => P(e.target.value),
165
- className: "flex-1 px-2 py-1.5 text-xs font-mono bg-gray-50 dark:bg-gray-800 border border-gray-200 dark:border-gray-700 rounded-lg text-gray-700 dark:text-gray-300 focus:outline-none focus:ring-2 focus:ring-blue-500",
166
- placeholder: "#000000"
167
- }
168
- )
169
- ] })
170
- ]
171
- }
172
- ),
173
- document.body
174
- )
175
- ] });
176
- }
177
- export {
178
- S as ColorInput
179
- };
180
- //# sourceMappingURL=ColorInput.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ColorInput.js","sources":["../../../src/components/inputs/ColorInput.tsx"],"sourcesContent":["import { useState, useRef, useEffect } from 'react'\nimport { createPortal } from 'react-dom'\nimport { HexColorPicker } from 'react-colorful'\nimport { ColorInputConfig } from './types'\nimport { cn } from '../../utils/cn'\n\ninterface ColorInputProps extends ColorInputConfig {\n onClear?: () => void\n}\n\n/**\n * Normaliza uma cor para garantir que é um hex válido\n */\nfunction normalizeColor(color: string | undefined, fallback: string): string {\n if (!color || color === '') return fallback\n // Se já é um hex válido, retorna\n if (/^#[0-9A-Fa-f]{6}$/i.test(color)) return color\n // Se é hex curto, expande\n if (/^#[0-9A-Fa-f]{3}$/i.test(color)) {\n const hex = color.slice(1)\n return `#${hex[0]}${hex[0]}${hex[1]}${hex[1]}${hex[2]}${hex[2]}`\n }\n return fallback\n}\n\nexport function ColorInput({\n value,\n onChange,\n onClear,\n label,\n placeholder = '#ffffff',\n size = 'medium',\n}: ColorInputProps) {\n const [isOpen, setIsOpen] = useState(false)\n const pickerRef = useRef<HTMLDivElement>(null)\n const containerRef = useRef<HTMLDivElement>(null)\n const debounceRef = useRef<number | null>(null)\n\n // Cor efetiva - sempre normalizada\n const effectiveColor = normalizeColor(value, placeholder)\n\n // Estado local para feedback visual imediato durante drag\n const [localColor, setLocalColor] = useState(effectiveColor)\n\n // Sincronizar estado local quando o value externo mudar\n useEffect(() => {\n const normalized = normalizeColor(value, placeholder)\n setLocalColor(normalized)\n }, [value, placeholder])\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n if (\n pickerRef.current &&\n !pickerRef.current.contains(event.target as Node) &&\n containerRef.current &&\n !containerRef.current.contains(event.target as Node)\n ) {\n setIsOpen(false)\n }\n }\n\n document.addEventListener('mousedown', handleClickOutside)\n return () => {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n }, [])\n\n const computePickerPosition = () => {\n if (!containerRef.current) return { top: 0, left: 0 }\n const rect = containerRef.current.getBoundingClientRect()\n return {\n top: rect.bottom + window.scrollY + 8,\n left: Math.max(8, rect.left + window.scrollX),\n }\n }\n\n const [pickerPos, setPickerPos] = useState(computePickerPosition())\n\n useEffect(() => {\n if (!isOpen) return\n const update = () => setPickerPos(computePickerPosition())\n window.addEventListener('scroll', update, true)\n window.addEventListener('resize', update)\n update()\n return () => {\n window.removeEventListener('scroll', update, true)\n window.removeEventListener('resize', update)\n }\n }, [isOpen])\n\n const handleColorChange = (color: string) => {\n // Atualizar o estado local imediatamente para feedback visual\n setLocalColor(color)\n\n // Debounce para chamar o onChange\n if (debounceRef.current) {\n window.clearTimeout(debounceRef.current)\n }\n debounceRef.current = window.setTimeout(() => {\n onChange(color)\n }, 50) as unknown as number\n }\n\n const handleTextChange = (val: string) => {\n // Permitir digitação parcial\n if (/^#[0-9A-Fa-f]{0,6}$/.test(val) || val === '#' || val === '') {\n setLocalColor(val || '#')\n // Só chamar onChange quando for um hex completo\n if (/^#[0-9A-Fa-f]{6}$/i.test(val)) {\n onChange(val)\n }\n }\n }\n\n // Cor a ser exibida (usa localColor para feedback imediato)\n const displayColor = localColor\n\n return (\n <div className=\"space-y-1.5\" ref={containerRef}>\n {/* Label */}\n {label && (\n <label className=\"block text-xs font-medium text-gray-800 dark:text-gray-100\">\n {label}\n </label>\n )}\n\n {/* Color swatch com hex */}\n <div className=\"flex items-center gap-2\">\n <button\n type=\"button\"\n onClick={() => setIsOpen(!isOpen)}\n aria-label={label || 'Selecionar cor'}\n className={cn(\n 'relative cursor-pointer transition-all rounded-lg border-2 flex-shrink-0',\n 'hover:scale-[1.02] active:scale-[0.98]',\n isOpen\n ? 'ring-2 ring-blue-500 ring-offset-2 dark:ring-offset-gray-900'\n : 'border-gray-300 dark:border-gray-600',\n size === 'small' && 'w-10 h-8',\n size === 'medium' && 'w-12 h-9',\n size === 'large' && 'w-16 h-10'\n )}\n >\n {/* Checkerboard pattern for transparency */}\n <div\n className=\"absolute inset-0.5 rounded-md\"\n style={{\n background: `linear-gradient(45deg, #ccc 25%, transparent 25%),\n linear-gradient(-45deg, #ccc 25%, transparent 25%),\n linear-gradient(45deg, transparent 75%, #ccc 75%),\n linear-gradient(-45deg, transparent 75%, #ccc 75%)`,\n backgroundSize: '8px 8px',\n backgroundPosition: '0 0, 0 4px, 4px -4px, -4px 0px',\n }}\n />\n <div\n className=\"absolute inset-0.5 rounded-md\"\n style={{ backgroundColor: displayColor }}\n />\n </button>\n\n {/* Hex value display */}\n <span className=\"text-xs font-mono text-gray-600 dark:text-gray-400 uppercase\">\n {displayColor}\n </span>\n\n {onClear && (\n <button\n type=\"button\"\n onClick={() => {\n onClear()\n setIsOpen(false)\n }}\n className=\"ml-auto text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 transition-colors\"\n >\n Limpar\n </button>\n )}\n </div>\n\n {/* Color picker portal - z-index muito alto para ficar acima de tudo */}\n {isOpen &&\n createPortal(\n <div\n ref={pickerRef}\n className=\"fixed bg-white dark:bg-gray-900 rounded-xl shadow-2xl border border-gray-200 dark:border-gray-700 p-4\"\n style={{\n top: pickerPos.top,\n left: pickerPos.left,\n zIndex: 2147483647, // Máximo z-index possível\n }}\n >\n <style>{`\n .react-colorful {\n width: 220px !important;\n height: 160px !important;\n }\n .react-colorful__saturation {\n border-radius: 8px 8px 0 0;\n }\n .react-colorful__hue {\n height: 20px;\n border-radius: 0 0 8px 8px;\n }\n .react-colorful__pointer {\n width: 18px;\n height: 18px;\n border: 2px solid #ffffff;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n }\n `}</style>\n <HexColorPicker\n color={displayColor}\n onChange={handleColorChange}\n />\n\n {/* Hex value input */}\n <div className=\"mt-3 flex items-center gap-2\">\n <div\n className=\"w-8 h-8 rounded-lg border-2 border-gray-200 dark:border-gray-700 flex-shrink-0\"\n style={{ backgroundColor: displayColor }}\n />\n <input\n type=\"text\"\n value={displayColor.toUpperCase()}\n onChange={(e) => handleTextChange(e.target.value)}\n className=\"flex-1 px-2 py-1.5 text-xs font-mono bg-gray-50 dark:bg-gray-800 border border-gray-200 dark:border-gray-700 rounded-lg text-gray-700 dark:text-gray-300 focus:outline-none focus:ring-2 focus:ring-blue-500\"\n placeholder=\"#000000\"\n />\n </div>\n </div>,\n document.body\n )}\n </div>\n )\n}\n"],"names":["normalizeColor","color","fallback","hex","ColorInput","value","onChange","onClear","label","placeholder","size","isOpen","setIsOpen","useState","pickerRef","useRef","containerRef","debounceRef","effectiveColor","localColor","setLocalColor","useEffect","normalized","handleClickOutside","event","computePickerPosition","rect","pickerPos","setPickerPos","update","handleColorChange","handleTextChange","val","displayColor","jsxs","jsx","cn","createPortal","HexColorPicker"],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import { GradientInputConfig } from './types';
2
- interface GradientInputProps extends GradientInputConfig {
3
- onClear?: () => void;
4
- }
5
- export declare function GradientInput({ enabled, startColor, endColor, onEnabledChange, onStartColorChange, onEndColorChange, onClear, }: GradientInputProps): import("react/jsx-runtime").JSX.Element;
6
- export {};
7
- //# sourceMappingURL=GradientInput.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GradientInput.d.ts","sourceRoot":"","sources":["../../../src/components/inputs/GradientInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAK7C,UAAU,kBAAmB,SAAQ,mBAAmB;IACtD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB;AAED,wBAAgB,aAAa,CAAC,EAC5B,OAAe,EACf,UAAU,EACV,QAAQ,EACR,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,OAAO,GACR,EAAE,kBAAkB,2CA6DpB"}
@@ -1,78 +0,0 @@
1
- import { jsxs as a, jsx as e } from "react/jsx-runtime";
2
- import { ColorInput as o } from "./ColorInput.js";
3
- import { CheckboxInput as c } from "./CheckboxInput.js";
4
- import { cn as g } from "../../utils/cn.js";
5
- function f({
6
- enabled: t = !1,
7
- startColor: d,
8
- endColor: l,
9
- onEnabledChange: n,
10
- onStartColorChange: m,
11
- onEndColorChange: s,
12
- onClear: i
13
- }) {
14
- return /* @__PURE__ */ a("div", { className: "flex flex-col gap-3", children: [
15
- /* @__PURE__ */ e(
16
- c,
17
- {
18
- checked: t,
19
- onChange: (r) => n?.(r),
20
- label: "Ativar Gradiente"
21
- }
22
- ),
23
- t && /* @__PURE__ */ a("div", { className: "flex gap-3 items-center", children: [
24
- /* @__PURE__ */ a("div", { className: "flex-1", children: [
25
- /* @__PURE__ */ e("label", { className: "block text-xs font-medium text-gray-600 dark:text-gray-400 mb-1.5", children: "Cor Inicial" }),
26
- /* @__PURE__ */ e(
27
- o,
28
- {
29
- value: d,
30
- onChange: (r) => m?.(r),
31
- size: "medium"
32
- }
33
- )
34
- ] }),
35
- /* @__PURE__ */ a("div", { className: "flex-1", children: [
36
- /* @__PURE__ */ e("label", { className: "block text-xs font-medium text-gray-600 dark:text-gray-400 mb-1.5", children: "Cor Final" }),
37
- /* @__PURE__ */ e(
38
- o,
39
- {
40
- value: l,
41
- onChange: (r) => s?.(r),
42
- size: "medium"
43
- }
44
- )
45
- ] }),
46
- i && /* @__PURE__ */ e(
47
- "button",
48
- {
49
- type: "button",
50
- onClick: i,
51
- className: g(
52
- "px-3 py-2 text-xs font-medium rounded-md",
53
- "border border-gray-300 dark:border-gray-600",
54
- "bg-gray-50 dark:bg-gray-800",
55
- "text-gray-600 dark:text-gray-300",
56
- "hover:bg-gray-100 dark:hover:bg-gray-700",
57
- "transition-colors",
58
- "self-end"
59
- ),
60
- children: "Limpar"
61
- }
62
- )
63
- ] }),
64
- t && /* @__PURE__ */ e(
65
- "div",
66
- {
67
- className: "w-full h-12 rounded-lg border border-gray-300 dark:border-gray-600",
68
- style: {
69
- background: `linear-gradient(90deg, ${d}, ${l})`
70
- }
71
- }
72
- )
73
- ] });
74
- }
75
- export {
76
- f as GradientInput
77
- };
78
- //# sourceMappingURL=GradientInput.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GradientInput.js","sources":["../../../src/components/inputs/GradientInput.tsx"],"sourcesContent":["import { GradientInputConfig } from './types'\nimport { ColorInput } from './ColorInput'\nimport { CheckboxInput } from './CheckboxInput'\nimport { cn } from '../../utils/cn'\n\ninterface GradientInputProps extends GradientInputConfig {\n onClear?: () => void\n}\n\nexport function GradientInput({\n enabled = false,\n startColor,\n endColor,\n onEnabledChange,\n onStartColorChange,\n onEndColorChange,\n onClear,\n}: GradientInputProps) {\n return (\n <div className=\"flex flex-col gap-3\">\n <CheckboxInput\n checked={enabled}\n onChange={(checked) => onEnabledChange?.(checked)}\n label=\"Ativar Gradiente\"\n />\n\n {enabled && (\n <div className=\"flex gap-3 items-center\">\n <div className=\"flex-1\">\n <label className=\"block text-xs font-medium text-gray-600 dark:text-gray-400 mb-1.5\">\n Cor Inicial\n </label>\n <ColorInput\n value={startColor}\n onChange={(color) => onStartColorChange?.(color)}\n size=\"medium\"\n />\n </div>\n <div className=\"flex-1\">\n <label className=\"block text-xs font-medium text-gray-600 dark:text-gray-400 mb-1.5\">\n Cor Final\n </label>\n <ColorInput\n value={endColor}\n onChange={(color) => onEndColorChange?.(color)}\n size=\"medium\"\n />\n </div>\n {onClear && (\n <button\n type=\"button\"\n onClick={onClear}\n className={cn(\n 'px-3 py-2 text-xs font-medium rounded-md',\n 'border border-gray-300 dark:border-gray-600',\n 'bg-gray-50 dark:bg-gray-800',\n 'text-gray-600 dark:text-gray-300',\n 'hover:bg-gray-100 dark:hover:bg-gray-700',\n 'transition-colors',\n 'self-end'\n )}\n >\n Limpar\n </button>\n )}\n </div>\n )}\n\n {enabled && (\n <div\n className=\"w-full h-12 rounded-lg border border-gray-300 dark:border-gray-600\"\n style={{\n background: `linear-gradient(90deg, ${startColor}, ${endColor})`,\n }}\n />\n )}\n </div>\n )\n}\n"],"names":["GradientInput","enabled","startColor","endColor","onEnabledChange","onStartColorChange","onEndColorChange","onClear","jsxs","jsx","CheckboxInput","checked","ColorInput","color","cn"],"mappings":";;;;AASO,SAASA,EAAc;AAAA,EAC5B,SAAAC,IAAU;AAAA,EACV,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,SAAAC;AACF,GAAuB;AACrB,SACE,gBAAAC,EAAC,OAAA,EAAI,WAAU,uBACb,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,SAAST;AAAA,QACT,UAAU,CAACU,MAAYP,IAAkBO,CAAO;AAAA,QAChD,OAAM;AAAA,MAAA;AAAA,IAAA;AAAA,IAGPV,KACC,gBAAAO,EAAC,OAAA,EAAI,WAAU,2BACb,UAAA;AAAA,MAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,UACb,UAAA;AAAA,QAAA,gBAAAC,EAAC,SAAA,EAAM,WAAU,qEAAoE,UAAA,eAErF;AAAA,QACA,gBAAAA;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,OAAOV;AAAA,YACP,UAAU,CAACW,MAAUR,IAAqBQ,CAAK;AAAA,YAC/C,MAAK;AAAA,UAAA;AAAA,QAAA;AAAA,MACP,GACF;AAAA,MACA,gBAAAL,EAAC,OAAA,EAAI,WAAU,UACb,UAAA;AAAA,QAAA,gBAAAC,EAAC,SAAA,EAAM,WAAU,qEAAoE,UAAA,aAErF;AAAA,QACA,gBAAAA;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,OAAOT;AAAA,YACP,UAAU,CAACU,MAAUP,IAAmBO,CAAK;AAAA,YAC7C,MAAK;AAAA,UAAA;AAAA,QAAA;AAAA,MACP,GACF;AAAA,MACCN,KACC,gBAAAE;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,SAASF;AAAA,UACT,WAAWO;AAAA,YACT;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,UAAA;AAAA,UAEH,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAED,GAEJ;AAAA,IAGDb,KACC,gBAAAQ;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAU;AAAA,QACV,OAAO;AAAA,UACL,YAAY,0BAA0BP,CAAU,KAAKC,CAAQ;AAAA,QAAA;AAAA,MAC/D;AAAA,IAAA;AAAA,EACF,GAEJ;AAEJ;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ImageInput.d.ts","sourceRoot":"","sources":["../../../src/components/inputs/ImageInput.tsx"],"names":[],"mappings":"AAGA,UAAU,eAAe;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IACxC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAA;IAE/C,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAA;CAC5C;AAED,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,YAAmB,EACnB,SAAa,EACb,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,SAAS,EACT,SAAmB,EACnB,WAAmB,EACnB,aAAa,GACd,EAAE,eAAe,2CA4MjB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ImageInput.js","sources":["../../../src/components/inputs/ImageInput.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { cn } from '../../utils/cn'\n\ninterface ImageInputProps {\n value?: string\n onChange: (v?: string) => void\n label?: string\n size?: { width: number; height: number }\n showUrlInput?: boolean\n maxSizeMB?: number\n // Novos: Contexto para upload seguro\n tenantId?: string\n schoolId?: string\n siteId?: string\n authToken?: string\n assetType?: 'image' | 'video' | 'icon' | 'logo'\n // Novo: Modo de preview (Data URL) sem upload imediato\n deferUpload?: boolean\n onPendingFile?: (file: File | null) => void\n}\n\nexport function ImageInput({\n value,\n onChange,\n label,\n size,\n showUrlInput = true,\n maxSizeMB = 5,\n tenantId,\n schoolId,\n siteId,\n authToken,\n assetType = 'image',\n deferUpload = false,\n onPendingFile,\n}: ImageInputProps) {\n const [uploading, setUploading] = useState(false)\n const [error, setError] = useState<string | null>(null)\n\n const handleFileChange = async (e: React.ChangeEvent<HTMLInputElement>) => {\n console.log('[ImageInput] Upload config:', { tenantId, schoolId, siteId, hasAuthToken: !!authToken, assetType })\n const file = e.target.files?.[0]\n if (!file) return\n\n // Validação de tamanho\n const maxBytes = maxSizeMB * 1024 * 1024\n if (file.size > maxBytes) {\n setError(`Arquivo muito grande. Máximo: ${maxSizeMB}MB`)\n return\n }\n\n // Validação de tipo\n if (!file.type.startsWith('image/') && !file.type.startsWith('video/')) {\n setError('Apenas imagens e vídeos são permitidos')\n return\n }\n\n setError(null)\n\n // MODO PREVIEW: Usar Data URL sem fazer upload imediato\n if (deferUpload) {\n try {\n const reader = new FileReader()\n reader.onload = (e) => {\n const dataUrl = e.target?.result as string\n onChange(dataUrl) // Passa Data URL para preview\n if (onPendingFile) {\n onPendingFile(file) // Notifica que há upload pendente\n }\n }\n reader.onerror = () => {\n setError('Erro ao ler o arquivo')\n }\n reader.readAsDataURL(file)\n } catch (err) {\n console.error(\"Erro ao criar preview:\", err)\n setError(err instanceof Error ? err.message : \"Erro ao processar imagem\")\n }\n return\n }\n\n // MODO NORMAL: Upload imediato (comportamento original)\n // Verificar se tem autenticação (novo endpoint requer)\n if (!authToken) {\n setError('Autenticação necessária para upload')\n return\n }\n\n if (!tenantId) {\n setError('Contexto do tenant é necessário')\n return\n }\n\n setUploading(true)\n\n try {\n const formData = new FormData()\n formData.append('file', file)\n\n const apiUrl = (import.meta as any).env.VITE_API_URL || 'http://localhost:3001'\n\n // Construir query parameters\n const params = new URLSearchParams({ tenantId, assetType })\n if (schoolId) params.append('schoolId', schoolId)\n if (siteId) params.append('siteId', siteId)\n\n const res = await fetch(`${apiUrl}/api/site-assets/upload?${params}`, {\n method: 'POST',\n headers: {\n 'Authorization': `Bearer ${authToken}`,\n },\n body: formData,\n })\n\n if (!res.ok) {\n const errorData = await res.json().catch(() => ({}))\n if (res.status === 401) {\n throw new Error('Sessão expirada. Faça login novamente.')\n }\n throw new Error(errorData.message || 'Upload falhou')\n }\n\n const data = await res.json()\n // Usar a URL pública retornada do Supabase Storage\n onChange(data.url)\n setError(null)\n } catch (err) {\n console.error(\"Erro no upload:\", err)\n setError(err instanceof Error ? err.message : \"Erro ao fazer upload da imagem\")\n } finally {\n setUploading(false)\n }\n }\n\n return (\n <div className=\"space-y-2 flex flex-col items-center\">\n {/* Label */}\n {label && (\n <label className=\"block text-xs font-medium text-gray-800 dark:text-gray-100 text-center\">\n {label}\n </label>\n )}\n\n {/* Input file oculto */}\n <input\n ref={(el) => {\n if (el) (window as any).__imageInputRef = el;\n }}\n type=\"file\"\n accept=\"image/*\"\n onChange={handleFileChange}\n disabled={uploading}\n className=\"hidden\"\n id={`image-input-${Math.random()}`}\n />\n\n {/* Preview clicável - Funciona como botão */}\n <button\n type=\"button\"\n onClick={() => {\n const input = document.querySelector('input[type=\"file\"][accept=\"image/*\"]') as HTMLInputElement;\n if (input) {\n input.value = ''; // Limpar valor para permitir selecionar o mesmo arquivo novamente\n input.click();\n }\n }}\n disabled={uploading}\n className={cn(\n 'rounded-lg overflow-hidden border-2 transition-all duration-200',\n 'flex items-center justify-center',\n 'bg-gray-50 dark:bg-gray-800 hover:bg-gray-100 dark:hover:bg-gray-700',\n value\n ? 'border-blue-400 dark:border-blue-500 hover:border-blue-500'\n : 'border-dashed border-gray-300 dark:border-gray-600 hover:border-blue-400',\n uploading && 'opacity-50 cursor-not-allowed',\n !uploading && 'cursor-pointer'\n )}\n style={{\n height: size?.height || 120,\n width: size?.width || 200,\n }}\n >\n {value ? (\n <img\n src={value}\n alt=\"preview\"\n className=\"w-full h-full object-contain\"\n onError={(e) => {\n e.currentTarget.style.display = 'none';\n }}\n />\n ) : (\n <div className=\"flex flex-col items-center justify-center gap-2 p-4 text-center\">\n <svg className=\"w-8 h-8 text-gray-400\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M12 4v16m8-8H4\" />\n </svg>\n <span className=\"text-xs text-gray-500 dark:text-gray-400\">\n {uploading ? 'Enviando...' : 'Clique para selecionar'}\n </span>\n </div>\n )}\n </button>\n\n {/* Botão remover - APENAS SE HOUVER IMAGEM */}\n {value && !uploading && (\n <button\n onClick={() => onChange(undefined)}\n type=\"button\"\n className=\"text-xs text-red-600 hover:text-red-700 dark:text-red-400 dark:hover:text-red-300 text-left transition-colors font-medium\"\n >\n Remover imagem\n </button>\n )}\n\n {/* Campo URL manual - CONDICIONAL */}\n {showUrlInput && (\n <input\n type=\"text\"\n placeholder=\"URL da imagem\"\n value={value || ''}\n onChange={(e) => onChange(e.target.value || undefined)}\n className={cn(\n 'flex h-11 w-full rounded-lg border-2 bg-white dark:bg-gray-800 px-4 py-2.5 text-sm transition-all duration-200',\n 'placeholder:text-gray-400 dark:placeholder:text-gray-500',\n 'focus:outline-none',\n 'border-gray-300 dark:border-gray-600 hover:border-blue-400/50 focus:border-blue-500',\n 'text-gray-900 dark:text-gray-100'\n )}\n />\n )}\n\n {/* Mensagem de erro */}\n {error && (\n <div className=\"text-xs text-red-600 dark:text-red-400 bg-red-50 dark:bg-red-900/20 p-2 rounded border border-red-200 dark:border-red-800\">\n {error}\n </div>\n )}\n </div>\n )\n}\n"],"names":["ImageInput","value","onChange","label","size","showUrlInput","maxSizeMB","tenantId","schoolId","siteId","authToken","assetType","deferUpload","onPendingFile","uploading","setUploading","useState","error","setError","jsxs","jsx","el","e","file","maxBytes","reader","dataUrl","err","formData","apiUrl","params","res","errorData","data","input","cn"],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import { SelectInputConfig } from './types';
2
- interface SelectInputProps<T = string> extends SelectInputConfig<T> {
3
- width?: number;
4
- }
5
- export declare function SelectInput<T = string>({ value, onChange, options, width, }: SelectInputProps<T>): import("react/jsx-runtime").JSX.Element;
6
- export {};
7
- //# sourceMappingURL=SelectInput.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SelectInput.d.ts","sourceRoot":"","sources":["../../../src/components/inputs/SelectInput.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAI3C,UAAU,gBAAgB,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,iBAAiB,CAAC,CAAC,CAAC;IACjE,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,wBAAgB,WAAW,CAAC,CAAC,GAAG,MAAM,EAAE,EACtC,KAAK,EACL,QAAQ,EACR,OAAO,EACP,KAAW,GACZ,EAAE,gBAAgB,CAAC,CAAC,CAAC,2CAqGrB"}
@@ -1,97 +0,0 @@
1
- import { jsxs as c, jsx as t } from "react/jsx-runtime";
2
- import { useState as p, useRef as d, useEffect as h } from "react";
3
- import { cn as n } from "../../utils/cn.js";
4
- import x from "../../node_modules/lucide-react/dist/esm/icons/chevron-down.js";
5
- function O({
6
- value: a,
7
- onChange: u,
8
- options: i,
9
- width: f = 160
10
- }) {
11
- const [r, l] = p(!1), o = d(null), b = d(null);
12
- h(() => {
13
- const e = (s) => {
14
- o.current && !o.current.contains(s.target) && l(!1);
15
- };
16
- if (r)
17
- return document.addEventListener("mousedown", e), () => {
18
- document.removeEventListener("mousedown", e);
19
- };
20
- }, [r]);
21
- const m = i.find((e) => e.value === a)?.label || "", g = (e) => {
22
- u(e), l(!1);
23
- };
24
- return /* @__PURE__ */ c("div", { className: "relative", style: { width: f }, ref: o, children: [
25
- /* @__PURE__ */ c(
26
- "button",
27
- {
28
- ref: b,
29
- type: "button",
30
- onClick: () => l(!r),
31
- className: n(
32
- "flex h-11 w-full items-center justify-between rounded-lg",
33
- "border-2 border-input",
34
- "bg-background",
35
- "px-4 py-2.5 text-sm",
36
- "text-gray-900 dark:text-gray-100",
37
- "ring-offset-background",
38
- "focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",
39
- "hover:border-blue-400/50 focus:border-blue-500",
40
- "disabled:cursor-not-allowed disabled:opacity-50",
41
- "transition-colors duration-200",
42
- r && "ring-2 ring-blue-500 ring-offset-2 border-blue-500"
43
- ),
44
- children: [
45
- /* @__PURE__ */ t("span", { className: "line-clamp-1 text-left flex-1", children: m }),
46
- /* @__PURE__ */ t(
47
- x,
48
- {
49
- className: n(
50
- "h-4 w-4 opacity-50 flex-shrink-0 ml-2 transition-transform",
51
- r && "rotate-180"
52
- )
53
- }
54
- )
55
- ]
56
- }
57
- ),
58
- r && /* @__PURE__ */ t(
59
- "div",
60
- {
61
- className: n(
62
- "absolute z-50 mt-1 w-full",
63
- "max-h-96 min-w-[8rem] overflow-hidden rounded-lg",
64
- "border border-gray-200 dark:border-gray-700",
65
- "bg-white dark:bg-gray-900",
66
- "text-gray-900 dark:text-gray-100",
67
- "shadow-lg",
68
- "animate-in fade-in-0 zoom-in-95 slide-in-from-top-2"
69
- ),
70
- children: /* @__PURE__ */ t("div", { className: "p-1", children: i.map((e) => {
71
- const s = e.value === a;
72
- return /* @__PURE__ */ t(
73
- "button",
74
- {
75
- type: "button",
76
- onClick: () => g(e.value),
77
- className: n(
78
- "relative flex w-full cursor-pointer select-none items-center rounded-sm",
79
- "py-1.5 pl-2 pr-2 text-sm outline-none",
80
- "transition-colors",
81
- "hover:bg-gray-100 dark:hover:bg-gray-800",
82
- "focus:bg-gray-100 dark:focus:bg-gray-800",
83
- s && "bg-blue-50 dark:bg-blue-950/30 text-blue-600 dark:text-blue-400"
84
- ),
85
- children: /* @__PURE__ */ t("span", { className: "flex-1 text-left", children: e.label })
86
- },
87
- String(e.value)
88
- );
89
- }) })
90
- }
91
- )
92
- ] });
93
- }
94
- export {
95
- O as SelectInput
96
- };
97
- //# sourceMappingURL=SelectInput.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SelectInput.js","sources":["../../../src/components/inputs/SelectInput.tsx"],"sourcesContent":["import { useState, useRef, useEffect } from 'react'\nimport { SelectInputConfig } from './types'\nimport { cn } from '../../utils/cn'\nimport { ChevronDown } from 'lucide-react'\n\ninterface SelectInputProps<T = string> extends SelectInputConfig<T> {\n width?: number\n}\n\nexport function SelectInput<T = string>({\n value,\n onChange,\n options,\n width = 160,\n}: SelectInputProps<T>) {\n const [isOpen, setIsOpen] = useState(false)\n const containerRef = useRef<HTMLDivElement>(null)\n const triggerRef = useRef<HTMLButtonElement>(null)\n\n // Fechar ao clicar fora\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n if (\n containerRef.current &&\n !containerRef.current.contains(event.target as Node)\n ) {\n setIsOpen(false)\n }\n }\n\n if (isOpen) {\n document.addEventListener('mousedown', handleClickOutside)\n return () => {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n }\n }, [isOpen])\n\n const selectedOption = options.find((opt) => opt.value === value)\n const selectedLabel = selectedOption?.label || ''\n\n const handleSelect = (optionValue: T) => {\n onChange(optionValue)\n setIsOpen(false)\n }\n\n return (\n <div className=\"relative\" style={{ width }} ref={containerRef}>\n {/* Trigger - Seguindo exatamente as classes do SelectTrigger do projeto SmartGesti-Ensino */}\n <button\n ref={triggerRef}\n type=\"button\"\n onClick={() => setIsOpen(!isOpen)}\n className={cn(\n 'flex h-11 w-full items-center justify-between rounded-lg',\n 'border-2 border-input',\n 'bg-background',\n 'px-4 py-2.5 text-sm',\n 'text-gray-900 dark:text-gray-100',\n 'ring-offset-background',\n 'focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2',\n 'hover:border-blue-400/50 focus:border-blue-500',\n 'disabled:cursor-not-allowed disabled:opacity-50',\n 'transition-colors duration-200',\n isOpen && 'ring-2 ring-blue-500 ring-offset-2 border-blue-500'\n )}\n >\n <span className=\"line-clamp-1 text-left flex-1\">{selectedLabel}</span>\n <ChevronDown\n className={cn(\n 'h-4 w-4 opacity-50 flex-shrink-0 ml-2 transition-transform',\n isOpen && 'rotate-180'\n )}\n />\n </button>\n\n {/* Dropdown Content - Seguindo exatamente as classes do SelectContent do projeto SmartGesti-Ensino */}\n {isOpen && (\n <div\n className={cn(\n 'absolute z-50 mt-1 w-full',\n 'max-h-96 min-w-[8rem] overflow-hidden rounded-lg',\n 'border border-gray-200 dark:border-gray-700',\n 'bg-white dark:bg-gray-900',\n 'text-gray-900 dark:text-gray-100',\n 'shadow-lg',\n 'animate-in fade-in-0 zoom-in-95 slide-in-from-top-2'\n )}\n >\n <div className=\"p-1\">\n {options.map((option) => {\n const isSelected = option.value === value\n return (\n <button\n key={String(option.value)}\n type=\"button\"\n onClick={() => handleSelect(option.value)}\n className={cn(\n 'relative flex w-full cursor-pointer select-none items-center rounded-sm',\n 'py-1.5 pl-2 pr-2 text-sm outline-none',\n 'transition-colors',\n 'hover:bg-gray-100 dark:hover:bg-gray-800',\n 'focus:bg-gray-100 dark:focus:bg-gray-800',\n isSelected && 'bg-blue-50 dark:bg-blue-950/30 text-blue-600 dark:text-blue-400'\n )}\n >\n <span className=\"flex-1 text-left\">{option.label}</span>\n </button>\n )\n })}\n </div>\n </div>\n )}\n </div>\n )\n}\n"],"names":["SelectInput","value","onChange","options","width","isOpen","setIsOpen","useState","containerRef","useRef","triggerRef","useEffect","handleClickOutside","event","selectedLabel","opt","handleSelect","optionValue","jsxs","cn","jsx","ChevronDown","option","isSelected"],"mappings":";;;;AASO,SAASA,EAAwB;AAAA,EACtC,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,OAAAC,IAAQ;AACV,GAAwB;AACtB,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK,GACpCC,IAAeC,EAAuB,IAAI,GAC1CC,IAAaD,EAA0B,IAAI;AAGjD,EAAAE,EAAU,MAAM;AACd,UAAMC,IAAqB,CAACC,MAAsB;AAChD,MACEL,EAAa,WACb,CAACA,EAAa,QAAQ,SAASK,EAAM,MAAc,KAEnDP,EAAU,EAAK;AAAA,IAEnB;AAEA,QAAID;AACF,sBAAS,iBAAiB,aAAaO,CAAkB,GAClD,MAAM;AACX,iBAAS,oBAAoB,aAAaA,CAAkB;AAAA,MAC9D;AAAA,EAEJ,GAAG,CAACP,CAAM,CAAC;AAGX,QAAMS,IADiBX,EAAQ,KAAK,CAACY,MAAQA,EAAI,UAAUd,CAAK,GAC1B,SAAS,IAEzCe,IAAe,CAACC,MAAmB;AACvC,IAAAf,EAASe,CAAW,GACpBX,EAAU,EAAK;AAAA,EACjB;AAEA,SACE,gBAAAY,EAAC,SAAI,WAAU,YAAW,OAAO,EAAE,OAAAd,EAAA,GAAS,KAAKI,GAE/C,UAAA;AAAA,IAAA,gBAAAU;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAKR;AAAA,QACL,MAAK;AAAA,QACL,SAAS,MAAMJ,EAAU,CAACD,CAAM;AAAA,QAChC,WAAWc;AAAA,UACT;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACAd,KAAU;AAAA,QAAA;AAAA,QAGZ,UAAA;AAAA,UAAA,gBAAAe,EAAC,QAAA,EAAK,WAAU,iCAAiC,UAAAN,GAAc;AAAA,UAC/D,gBAAAM;AAAA,YAACC;AAAA,YAAA;AAAA,cACC,WAAWF;AAAA,gBACT;AAAA,gBACAd,KAAU;AAAA,cAAA;AAAA,YACZ;AAAA,UAAA;AAAA,QACF;AAAA,MAAA;AAAA,IAAA;AAAA,IAIDA,KACC,gBAAAe;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAWD;AAAA,UACT;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QAAA;AAAA,QAGF,4BAAC,OAAA,EAAI,WAAU,OACZ,UAAAhB,EAAQ,IAAI,CAACmB,MAAW;AACvB,gBAAMC,IAAaD,EAAO,UAAUrB;AACpC,iBACE,gBAAAmB;AAAA,YAAC;AAAA,YAAA;AAAA,cAEC,MAAK;AAAA,cACL,SAAS,MAAMJ,EAAaM,EAAO,KAAK;AAAA,cACxC,WAAWH;AAAA,gBACT;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACAI,KAAc;AAAA,cAAA;AAAA,cAGhB,UAAA,gBAAAH,EAAC,QAAA,EAAK,WAAU,oBAAoB,YAAO,MAAA,CAAM;AAAA,YAAA;AAAA,YAZ5C,OAAOE,EAAO,KAAK;AAAA,UAAA;AAAA,QAe9B,CAAC,EAAA,CACH;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,GAEJ;AAEJ;"}
@@ -1,8 +0,0 @@
1
- import { SliderInputConfig } from './types';
2
- interface SliderInputProps extends SliderInputConfig {
3
- onClear?: () => void;
4
- hideValue?: boolean;
5
- }
6
- export declare function SliderInput({ value, onChange, min, max, step, unit, formatValue, onClear, hideValue, }: SliderInputProps): import("react/jsx-runtime").JSX.Element;
7
- export {};
8
- //# sourceMappingURL=SliderInput.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SliderInput.d.ts","sourceRoot":"","sources":["../../../src/components/inputs/SliderInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAoB,MAAM,SAAS,CAAA;AAG7D,UAAU,gBAAiB,SAAQ,iBAAiB;IAClD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,QAAQ,EACR,GAAO,EACP,GAAS,EACT,IAAQ,EACR,IAAS,EACT,WAAsC,EACtC,OAAO,EACP,SAAiB,GAClB,EAAE,gBAAgB,2CAoElB"}
@@ -1,77 +0,0 @@
1
- import { jsxs as a, jsx as r } from "react/jsx-runtime";
2
- import { VALUE_FORMATTERS as c } from "./types.js";
3
- import { cn as d } from "../../utils/cn.js";
4
- function w({
5
- value: e,
6
- onChange: i,
7
- min: t = 0,
8
- max: o = 100,
9
- step: l = 1,
10
- unit: m = "",
11
- formatValue: s = c.decimal,
12
- onClear: b,
13
- hideValue: n = !1
14
- }) {
15
- const u = s(e), g = (e - t) / (o - t) * 100;
16
- return /* @__PURE__ */ a("div", { className: "flex items-center gap-4", children: [
17
- /* @__PURE__ */ a("div", { className: d("flex-1 relative", !n && "min-w-[180px]"), children: [
18
- /* @__PURE__ */ r("div", { className: "relative h-2 bg-gray-200 dark:bg-gray-700 rounded-full", children: /* @__PURE__ */ r(
19
- "div",
20
- {
21
- className: "absolute h-full bg-blue-500 dark:bg-blue-600 rounded-full transition-all",
22
- style: { width: `${g}%` }
23
- }
24
- ) }),
25
- /* @__PURE__ */ r(
26
- "input",
27
- {
28
- type: "range",
29
- min: t,
30
- max: o,
31
- step: l,
32
- value: e,
33
- onChange: (h) => i(Number(h.target.value)),
34
- className: d(
35
- "absolute inset-0 w-full h-2 cursor-pointer appearance-none",
36
- "bg-transparent",
37
- "[&::-webkit-slider-thumb]:appearance-none",
38
- "[&::-webkit-slider-thumb]:w-5 [&::-webkit-slider-thumb]:h-5",
39
- "[&::-webkit-slider-thumb]:rounded-full",
40
- "[&::-webkit-slider-thumb]:bg-white",
41
- "[&::-webkit-slider-thumb]:border-2 [&::-webkit-slider-thumb]:border-blue-500",
42
- "[&::-webkit-slider-thumb]:shadow-md",
43
- "[&::-webkit-slider-thumb]:cursor-pointer",
44
- "[&::-webkit-slider-thumb]:transition-all",
45
- "[&::-webkit-slider-thumb]:hover:scale-110",
46
- "[&::-moz-range-thumb]:w-5 [&::-moz-range-thumb]:h-5",
47
- "[&::-moz-range-thumb]:rounded-full",
48
- "[&::-moz-range-thumb]:bg-white",
49
- "[&::-moz-range-thumb]:border-2 [&::-moz-range-thumb]:border-blue-500",
50
- "[&::-moz-range-thumb]:shadow-md",
51
- "[&::-moz-range-thumb]:cursor-pointer",
52
- "[&::-moz-range-thumb]:transition-all",
53
- "[&::-moz-range-thumb]:hover:scale-110",
54
- "[&::-moz-range-track]:bg-transparent"
55
- )
56
- }
57
- )
58
- ] }),
59
- !n && /* @__PURE__ */ r("div", { className: "min-w-[72px] text-center px-3 py-1.5 bg-gray-50 dark:bg-gray-800 rounded-md border border-gray-200 dark:border-gray-700", children: /* @__PURE__ */ a("span", { className: "text-xs font-mono font-semibold text-gray-700 dark:text-gray-300", children: [
60
- u,
61
- m
62
- ] }) }),
63
- b && /* @__PURE__ */ r(
64
- "button",
65
- {
66
- type: "button",
67
- onClick: b,
68
- className: "px-3 py-1.5 text-xs font-medium rounded-md border border-gray-300 dark:border-gray-600 bg-gray-50 dark:bg-gray-800 text-gray-600 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors",
69
- children: "Limpar"
70
- }
71
- )
72
- ] });
73
- }
74
- export {
75
- w as SliderInput
76
- };
77
- //# sourceMappingURL=SliderInput.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SliderInput.js","sources":["../../../src/components/inputs/SliderInput.tsx"],"sourcesContent":["import { SliderInputConfig, VALUE_FORMATTERS } from './types'\nimport { cn } from '../../utils/cn'\n\ninterface SliderInputProps extends SliderInputConfig {\n onClear?: () => void\n hideValue?: boolean\n}\n\nexport function SliderInput({\n value,\n onChange,\n min = 0,\n max = 100,\n step = 1,\n unit = '',\n formatValue = VALUE_FORMATTERS.decimal,\n onClear,\n hideValue = false,\n}: SliderInputProps) {\n const displayValue = formatValue(value)\n const percentage = ((value - min) / (max - min)) * 100\n\n return (\n <div className=\"flex items-center gap-4\">\n <div className={cn('flex-1 relative', !hideValue && 'min-w-[180px]')}>\n {/* Track */}\n <div className=\"relative h-2 bg-gray-200 dark:bg-gray-700 rounded-full\">\n {/* Filled track */}\n <div\n className=\"absolute h-full bg-blue-500 dark:bg-blue-600 rounded-full transition-all\"\n style={{ width: `${percentage}%` }}\n />\n </div>\n {/* Input range */}\n <input\n type=\"range\"\n min={min}\n max={max}\n step={step}\n value={value}\n onChange={(e) => onChange(Number(e.target.value))}\n className={cn(\n 'absolute inset-0 w-full h-2 cursor-pointer appearance-none',\n 'bg-transparent',\n '[&::-webkit-slider-thumb]:appearance-none',\n '[&::-webkit-slider-thumb]:w-5 [&::-webkit-slider-thumb]:h-5',\n '[&::-webkit-slider-thumb]:rounded-full',\n '[&::-webkit-slider-thumb]:bg-white',\n '[&::-webkit-slider-thumb]:border-2 [&::-webkit-slider-thumb]:border-blue-500',\n '[&::-webkit-slider-thumb]:shadow-md',\n '[&::-webkit-slider-thumb]:cursor-pointer',\n '[&::-webkit-slider-thumb]:transition-all',\n '[&::-webkit-slider-thumb]:hover:scale-110',\n '[&::-moz-range-thumb]:w-5 [&::-moz-range-thumb]:h-5',\n '[&::-moz-range-thumb]:rounded-full',\n '[&::-moz-range-thumb]:bg-white',\n '[&::-moz-range-thumb]:border-2 [&::-moz-range-thumb]:border-blue-500',\n '[&::-moz-range-thumb]:shadow-md',\n '[&::-moz-range-thumb]:cursor-pointer',\n '[&::-moz-range-thumb]:transition-all',\n '[&::-moz-range-thumb]:hover:scale-110',\n '[&::-moz-range-track]:bg-transparent'\n )}\n />\n </div>\n\n {!hideValue && (\n <div className=\"min-w-[72px] text-center px-3 py-1.5 bg-gray-50 dark:bg-gray-800 rounded-md border border-gray-200 dark:border-gray-700\">\n <span className=\"text-xs font-mono font-semibold text-gray-700 dark:text-gray-300\">\n {displayValue}\n {unit}\n </span>\n </div>\n )}\n\n {onClear && (\n <button\n type=\"button\"\n onClick={onClear}\n className=\"px-3 py-1.5 text-xs font-medium rounded-md border border-gray-300 dark:border-gray-600 bg-gray-50 dark:bg-gray-800 text-gray-600 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors\"\n >\n Limpar\n </button>\n )}\n </div>\n )\n}\n"],"names":["SliderInput","value","onChange","min","max","step","unit","formatValue","VALUE_FORMATTERS","onClear","hideValue","displayValue","percentage","jsxs","cn","jsx","e"],"mappings":";;;AAQO,SAASA,EAAY;AAAA,EAC1B,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,KAAAC,IAAM;AAAA,EACN,KAAAC,IAAM;AAAA,EACN,MAAAC,IAAO;AAAA,EACP,MAAAC,IAAO;AAAA,EACP,aAAAC,IAAcC,EAAiB;AAAA,EAC/B,SAAAC;AAAA,EACA,WAAAC,IAAY;AACd,GAAqB;AACnB,QAAMC,IAAeJ,EAAYN,CAAK,GAChCW,KAAeX,IAAQE,MAAQC,IAAMD,KAAQ;AAEnD,SACE,gBAAAU,EAAC,OAAA,EAAI,WAAU,2BACb,UAAA;AAAA,IAAA,gBAAAA,EAAC,SAAI,WAAWC,EAAG,mBAAmB,CAACJ,KAAa,eAAe,GAEjE,UAAA;AAAA,MAAA,gBAAAK,EAAC,OAAA,EAAI,WAAU,0DAEb,UAAA,gBAAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAU;AAAA,UACV,OAAO,EAAE,OAAO,GAAGH,CAAU,IAAA;AAAA,QAAI;AAAA,MAAA,GAErC;AAAA,MAEA,gBAAAG;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,KAAAZ;AAAA,UACA,KAAAC;AAAA,UACA,MAAAC;AAAA,UACA,OAAAJ;AAAA,UACA,UAAU,CAACe,MAAMd,EAAS,OAAOc,EAAE,OAAO,KAAK,CAAC;AAAA,UAChD,WAAWF;AAAA,YACT;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,UAAA;AAAA,QACF;AAAA,MAAA;AAAA,IACF,GACF;AAAA,IAEC,CAACJ,KACA,gBAAAK,EAAC,OAAA,EAAI,WAAU,2HACb,UAAA,gBAAAF,EAAC,QAAA,EAAK,WAAU,oEACb,UAAA;AAAA,MAAAF;AAAA,MACAL;AAAA,IAAA,EAAA,CACH,EAAA,CACF;AAAA,IAGDG,KACC,gBAAAM;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,SAASN;AAAA,QACT,WAAU;AAAA,QACX,UAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAED,GAEJ;AAEJ;"}
@@ -1,11 +0,0 @@
1
- /**
2
- * Inputs customizados para o editor de sites
3
- */
4
- export { ColorInput } from './ColorInput';
5
- export { ImageInput } from './ImageInput';
6
- export { SliderInput } from './SliderInput';
7
- export { SelectInput } from './SelectInput';
8
- export { CheckboxInput } from './CheckboxInput';
9
- export { GradientInput } from './GradientInput';
10
- export * from './types';
11
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/inputs/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,cAAc,SAAS,CAAA"}