@se-studio/core-ui 0.0.0-next16-20260822103555

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 (625) hide show
  1. package/ANALYTICS.md +160 -0
  2. package/CHANGELOG.md +2565 -0
  3. package/CMS_INFRASTRUCTURE.md +370 -0
  4. package/CONSENT.md +121 -0
  5. package/README.md +638 -0
  6. package/dist/CmsRendererConfig.d.ts +259 -0
  7. package/dist/CmsRendererConfig.d.ts.map +1 -0
  8. package/dist/CmsRendererConfig.js +2 -0
  9. package/dist/CmsRendererConfig.js.map +1 -0
  10. package/dist/__mocks__/server-only.d.ts +2 -0
  11. package/dist/__mocks__/server-only.d.ts.map +1 -0
  12. package/dist/__mocks__/server-only.js +2 -0
  13. package/dist/__mocks__/server-only.js.map +1 -0
  14. package/dist/analytics/AnalyticsPageTracker.d.ts +11 -0
  15. package/dist/analytics/AnalyticsPageTracker.d.ts.map +1 -0
  16. package/dist/analytics/AnalyticsPageTracker.js +26 -0
  17. package/dist/analytics/AnalyticsPageTracker.js.map +1 -0
  18. package/dist/analytics/AnalyticsProvider.d.ts +18 -0
  19. package/dist/analytics/AnalyticsProvider.d.ts.map +1 -0
  20. package/dist/analytics/AnalyticsProvider.js +48 -0
  21. package/dist/analytics/AnalyticsProvider.js.map +1 -0
  22. package/dist/analytics/adapters/CompositeAnalyticsAdapter.d.ts +13 -0
  23. package/dist/analytics/adapters/CompositeAnalyticsAdapter.d.ts.map +1 -0
  24. package/dist/analytics/adapters/CompositeAnalyticsAdapter.js +35 -0
  25. package/dist/analytics/adapters/CompositeAnalyticsAdapter.js.map +1 -0
  26. package/dist/analytics/adapters/ConsentAwareAdapter.d.ts +20 -0
  27. package/dist/analytics/adapters/ConsentAwareAdapter.d.ts.map +1 -0
  28. package/dist/analytics/adapters/ConsentAwareAdapter.js +35 -0
  29. package/dist/analytics/adapters/ConsentAwareAdapter.js.map +1 -0
  30. package/dist/analytics/adapters/ConsoleAnalyticsAdapter.d.ts +12 -0
  31. package/dist/analytics/adapters/ConsoleAnalyticsAdapter.d.ts.map +1 -0
  32. package/dist/analytics/adapters/ConsoleAnalyticsAdapter.js +22 -0
  33. package/dist/analytics/adapters/ConsoleAnalyticsAdapter.js.map +1 -0
  34. package/dist/analytics/adapters/GoogleTagManagerAdapter.d.ts +53 -0
  35. package/dist/analytics/adapters/GoogleTagManagerAdapter.d.ts.map +1 -0
  36. package/dist/analytics/adapters/GoogleTagManagerAdapter.js +134 -0
  37. package/dist/analytics/adapters/GoogleTagManagerAdapter.js.map +1 -0
  38. package/dist/analytics/adapters/index.d.ts +5 -0
  39. package/dist/analytics/adapters/index.d.ts.map +1 -0
  40. package/dist/analytics/adapters/index.js +5 -0
  41. package/dist/analytics/adapters/index.js.map +1 -0
  42. package/dist/analytics/types.d.ts +42 -0
  43. package/dist/analytics/types.d.ts.map +1 -0
  44. package/dist/analytics/types.js +2 -0
  45. package/dist/analytics/types.js.map +1 -0
  46. package/dist/analytics/useAnalytics.d.ts +44 -0
  47. package/dist/analytics/useAnalytics.d.ts.map +1 -0
  48. package/dist/analytics/useAnalytics.js +69 -0
  49. package/dist/analytics/useAnalytics.js.map +1 -0
  50. package/dist/analytics/video/classifySeek.d.ts +15 -0
  51. package/dist/analytics/video/classifySeek.d.ts.map +1 -0
  52. package/dist/analytics/video/classifySeek.js +32 -0
  53. package/dist/analytics/video/classifySeek.js.map +1 -0
  54. package/dist/analytics/video/createVideoEngagementSession.d.ts +51 -0
  55. package/dist/analytics/video/createVideoEngagementSession.d.ts.map +1 -0
  56. package/dist/analytics/video/createVideoEngagementSession.js +225 -0
  57. package/dist/analytics/video/createVideoEngagementSession.js.map +1 -0
  58. package/dist/analytics/video/index.d.ts +6 -0
  59. package/dist/analytics/video/index.d.ts.map +1 -0
  60. package/dist/analytics/video/index.js +6 -0
  61. package/dist/analytics/video/index.js.map +1 -0
  62. package/dist/analytics/video/loadYouTubeIframeApi.d.ts +50 -0
  63. package/dist/analytics/video/loadYouTubeIframeApi.d.ts.map +1 -0
  64. package/dist/analytics/video/loadYouTubeIframeApi.js +52 -0
  65. package/dist/analytics/video/loadYouTubeIframeApi.js.map +1 -0
  66. package/dist/analytics/video/useHtml5VideoEngagement.d.ts +8 -0
  67. package/dist/analytics/video/useHtml5VideoEngagement.d.ts.map +1 -0
  68. package/dist/analytics/video/useHtml5VideoEngagement.js +67 -0
  69. package/dist/analytics/video/useHtml5VideoEngagement.js.map +1 -0
  70. package/dist/analytics/video/useVideoEngagement.d.ts +19 -0
  71. package/dist/analytics/video/useVideoEngagement.d.ts.map +1 -0
  72. package/dist/analytics/video/useVideoEngagement.js +80 -0
  73. package/dist/analytics/video/useVideoEngagement.js.map +1 -0
  74. package/dist/analytics/video/videoEngagementTypes.d.ts +52 -0
  75. package/dist/analytics/video/videoEngagementTypes.d.ts.map +1 -0
  76. package/dist/analytics/video/videoEngagementTypes.js +45 -0
  77. package/dist/analytics/video/videoEngagementTypes.js.map +1 -0
  78. package/dist/app-helpers.d.ts +196 -0
  79. package/dist/app-helpers.d.ts.map +1 -0
  80. package/dist/app-helpers.js +322 -0
  81. package/dist/app-helpers.js.map +1 -0
  82. package/dist/cmsRegistration.d.ts +302 -0
  83. package/dist/cmsRegistration.d.ts.map +1 -0
  84. package/dist/cmsRegistration.js +242 -0
  85. package/dist/cmsRegistration.js.map +1 -0
  86. package/dist/components/Animation.d.ts +3 -0
  87. package/dist/components/Animation.d.ts.map +1 -0
  88. package/dist/components/Animation.js +2 -0
  89. package/dist/components/Animation.js.map +1 -0
  90. package/dist/components/AnimationComponent.d.ts +9 -0
  91. package/dist/components/AnimationComponent.d.ts.map +1 -0
  92. package/dist/components/AnimationComponent.js +18 -0
  93. package/dist/components/AnimationComponent.js.map +1 -0
  94. package/dist/components/ClientMonitor.d.ts +7 -0
  95. package/dist/components/ClientMonitor.d.ts.map +1 -0
  96. package/dist/components/ClientMonitor.js +368 -0
  97. package/dist/components/ClientMonitor.js.map +1 -0
  98. package/dist/components/CmsCollection.d.ts +68 -0
  99. package/dist/components/CmsCollection.d.ts.map +1 -0
  100. package/dist/components/CmsCollection.js +68 -0
  101. package/dist/components/CmsCollection.js.map +1 -0
  102. package/dist/components/CmsComponent.d.ts +68 -0
  103. package/dist/components/CmsComponent.d.ts.map +1 -0
  104. package/dist/components/CmsComponent.js +68 -0
  105. package/dist/components/CmsComponent.js.map +1 -0
  106. package/dist/components/CmsContent.d.ts +105 -0
  107. package/dist/components/CmsContent.d.ts.map +1 -0
  108. package/dist/components/CmsContent.js +200 -0
  109. package/dist/components/CmsContent.js.map +1 -0
  110. package/dist/components/CmsConversionErrors.d.ts +8 -0
  111. package/dist/components/CmsConversionErrors.d.ts.map +1 -0
  112. package/dist/components/CmsConversionErrors.js +51 -0
  113. package/dist/components/CmsConversionErrors.js.map +1 -0
  114. package/dist/components/CmsDataError.d.ts +14 -0
  115. package/dist/components/CmsDataError.d.ts.map +1 -0
  116. package/dist/components/CmsDataError.js +7 -0
  117. package/dist/components/CmsDataError.js.map +1 -0
  118. package/dist/components/CmsDevLayout.d.ts +23 -0
  119. package/dist/components/CmsDevLayout.d.ts.map +1 -0
  120. package/dist/components/CmsDevLayout.js +26 -0
  121. package/dist/components/CmsDevLayout.js.map +1 -0
  122. package/dist/components/CmsEmbeddedContent.d.ts +10 -0
  123. package/dist/components/CmsEmbeddedContent.d.ts.map +1 -0
  124. package/dist/components/CmsEmbeddedContent.js +51 -0
  125. package/dist/components/CmsEmbeddedContent.js.map +1 -0
  126. package/dist/components/CmsExternalComponent.d.ts +63 -0
  127. package/dist/components/CmsExternalComponent.d.ts.map +1 -0
  128. package/dist/components/CmsExternalComponent.js +68 -0
  129. package/dist/components/CmsExternalComponent.js.map +1 -0
  130. package/dist/components/CmsRoutesLayout.d.ts +16 -0
  131. package/dist/components/CmsRoutesLayout.d.ts.map +1 -0
  132. package/dist/components/CmsRoutesLayout.js +17 -0
  133. package/dist/components/CmsRoutesLayout.js.map +1 -0
  134. package/dist/components/DefaultExternalVideoPlayButton.d.ts +3 -0
  135. package/dist/components/DefaultExternalVideoPlayButton.d.ts.map +1 -0
  136. package/dist/components/DefaultExternalVideoPlayButton.js +6 -0
  137. package/dist/components/DefaultExternalVideoPlayButton.js.map +1 -0
  138. package/dist/components/DotLottieAnimationComponent.d.ts +16 -0
  139. package/dist/components/DotLottieAnimationComponent.d.ts.map +1 -0
  140. package/dist/components/DotLottieAnimationComponent.js +88 -0
  141. package/dist/components/DotLottieAnimationComponent.js.map +1 -0
  142. package/dist/components/ErrorBoundary.d.ts +19 -0
  143. package/dist/components/ErrorBoundary.d.ts.map +1 -0
  144. package/dist/components/ErrorBoundary.js +32 -0
  145. package/dist/components/ErrorBoundary.js.map +1 -0
  146. package/dist/components/ExternalVideoComponent.d.ts +9 -0
  147. package/dist/components/ExternalVideoComponent.d.ts.map +1 -0
  148. package/dist/components/ExternalVideoComponent.js +39 -0
  149. package/dist/components/ExternalVideoComponent.js.map +1 -0
  150. package/dist/components/ExternalVimeoEmbed.d.ts +12 -0
  151. package/dist/components/ExternalVimeoEmbed.d.ts.map +1 -0
  152. package/dist/components/ExternalVimeoEmbed.js +211 -0
  153. package/dist/components/ExternalVimeoEmbed.js.map +1 -0
  154. package/dist/components/ExternalYouTubeEmbed.d.ts +9 -0
  155. package/dist/components/ExternalYouTubeEmbed.d.ts.map +1 -0
  156. package/dist/components/ExternalYouTubeEmbed.js +220 -0
  157. package/dist/components/ExternalYouTubeEmbed.js.map +1 -0
  158. package/dist/components/HeroLoopVideo.d.ts +13 -0
  159. package/dist/components/HeroLoopVideo.d.ts.map +1 -0
  160. package/dist/components/HeroLoopVideo.js +146 -0
  161. package/dist/components/HeroLoopVideo.js.map +1 -0
  162. package/dist/components/HtmlComponent.d.ts +21 -0
  163. package/dist/components/HtmlComponent.d.ts.map +1 -0
  164. package/dist/components/HtmlComponent.js +34 -0
  165. package/dist/components/HtmlComponent.js.map +1 -0
  166. package/dist/components/HtmlComponentScript.d.ts +12 -0
  167. package/dist/components/HtmlComponentScript.d.ts.map +1 -0
  168. package/dist/components/HtmlComponentScript.js +12 -0
  169. package/dist/components/HtmlComponentScript.js.map +1 -0
  170. package/dist/components/ImageComponent.d.ts +7 -0
  171. package/dist/components/ImageComponent.d.ts.map +1 -0
  172. package/dist/components/ImageComponent.js +20 -0
  173. package/dist/components/ImageComponent.js.map +1 -0
  174. package/dist/components/ImageKitClientVideo.d.ts +16 -0
  175. package/dist/components/ImageKitClientVideo.d.ts.map +1 -0
  176. package/dist/components/ImageKitClientVideo.js +211 -0
  177. package/dist/components/ImageKitClientVideo.js.map +1 -0
  178. package/dist/components/ImageKitHlsVideoClient.d.ts +21 -0
  179. package/dist/components/ImageKitHlsVideoClient.d.ts.map +1 -0
  180. package/dist/components/ImageKitHlsVideoClient.js +167 -0
  181. package/dist/components/ImageKitHlsVideoClient.js.map +1 -0
  182. package/dist/components/LazyAnimation.d.ts +16 -0
  183. package/dist/components/LazyAnimation.d.ts.map +1 -0
  184. package/dist/components/LazyAnimation.js +90 -0
  185. package/dist/components/LazyAnimation.js.map +1 -0
  186. package/dist/components/LazyVideo.d.ts +19 -0
  187. package/dist/components/LazyVideo.d.ts.map +1 -0
  188. package/dist/components/LazyVideo.js +134 -0
  189. package/dist/components/LazyVideo.js.map +1 -0
  190. package/dist/components/LocalVideo.d.ts +10 -0
  191. package/dist/components/LocalVideo.d.ts.map +1 -0
  192. package/dist/components/LocalVideo.js +66 -0
  193. package/dist/components/LocalVideo.js.map +1 -0
  194. package/dist/components/LocalVideoPlayChrome.d.ts +20 -0
  195. package/dist/components/LocalVideoPlayChrome.d.ts.map +1 -0
  196. package/dist/components/LocalVideoPlayChrome.js +22 -0
  197. package/dist/components/LocalVideoPlayChrome.js.map +1 -0
  198. package/dist/components/LocalVideoPlayOverlay.d.ts +19 -0
  199. package/dist/components/LocalVideoPlayOverlay.d.ts.map +1 -0
  200. package/dist/components/LocalVideoPlayOverlay.js +49 -0
  201. package/dist/components/LocalVideoPlayOverlay.js.map +1 -0
  202. package/dist/components/PictureComponent.d.ts +7 -0
  203. package/dist/components/PictureComponent.d.ts.map +1 -0
  204. package/dist/components/PictureComponent.js +29 -0
  205. package/dist/components/PictureComponent.js.map +1 -0
  206. package/dist/components/Preview.d.ts +2 -0
  207. package/dist/components/Preview.d.ts.map +1 -0
  208. package/dist/components/Preview.js +52 -0
  209. package/dist/components/Preview.js.map +1 -0
  210. package/dist/components/StructuredData.d.ts +20 -0
  211. package/dist/components/StructuredData.d.ts.map +1 -0
  212. package/dist/components/StructuredData.js +116 -0
  213. package/dist/components/StructuredData.js.map +1 -0
  214. package/dist/components/SvgComponent.d.ts +7 -0
  215. package/dist/components/SvgComponent.d.ts.map +1 -0
  216. package/dist/components/SvgComponent.js +10 -0
  217. package/dist/components/SvgComponent.js.map +1 -0
  218. package/dist/components/SvgIconComponent.d.ts +20 -0
  219. package/dist/components/SvgIconComponent.d.ts.map +1 -0
  220. package/dist/components/SvgIconComponent.js +23 -0
  221. package/dist/components/SvgIconComponent.js.map +1 -0
  222. package/dist/components/SvgImageComponent.d.ts +7 -0
  223. package/dist/components/SvgImageComponent.d.ts.map +1 -0
  224. package/dist/components/SvgImageComponent.js +10 -0
  225. package/dist/components/SvgImageComponent.js.map +1 -0
  226. package/dist/components/SvgSpriteSheet.d.ts +24 -0
  227. package/dist/components/SvgSpriteSheet.d.ts.map +1 -0
  228. package/dist/components/SvgSpriteSheet.js +37 -0
  229. package/dist/components/SvgSpriteSheet.js.map +1 -0
  230. package/dist/components/Video.d.ts +11 -0
  231. package/dist/components/Video.d.ts.map +1 -0
  232. package/dist/components/Video.js +2 -0
  233. package/dist/components/Video.js.map +1 -0
  234. package/dist/components/VideoComponent.d.ts +10 -0
  235. package/dist/components/VideoComponent.d.ts.map +1 -0
  236. package/dist/components/VideoComponent.js +22 -0
  237. package/dist/components/VideoComponent.js.map +1 -0
  238. package/dist/components/Visual.d.ts +43 -0
  239. package/dist/components/Visual.d.ts.map +1 -0
  240. package/dist/components/Visual.js +60 -0
  241. package/dist/components/Visual.js.map +1 -0
  242. package/dist/components/VisualComponent.d.ts +83 -0
  243. package/dist/components/VisualComponent.d.ts.map +1 -0
  244. package/dist/components/VisualComponent.js +136 -0
  245. package/dist/components/VisualComponent.js.map +1 -0
  246. package/dist/components/banner/BannerClient.d.ts +13 -0
  247. package/dist/components/banner/BannerClient.d.ts.map +1 -0
  248. package/dist/components/banner/BannerClient.js +38 -0
  249. package/dist/components/banner/BannerClient.js.map +1 -0
  250. package/dist/components/banner/BannerManager.d.ts +26 -0
  251. package/dist/components/banner/BannerManager.d.ts.map +1 -0
  252. package/dist/components/banner/BannerManager.js +35 -0
  253. package/dist/components/banner/BannerManager.js.map +1 -0
  254. package/dist/components/banner/BannerTargeting.d.ts +20 -0
  255. package/dist/components/banner/BannerTargeting.d.ts.map +1 -0
  256. package/dist/components/banner/BannerTargeting.js +204 -0
  257. package/dist/components/banner/BannerTargeting.js.map +1 -0
  258. package/dist/components/banner/bannerVisibility.d.ts +20 -0
  259. package/dist/components/banner/bannerVisibility.d.ts.map +1 -0
  260. package/dist/components/banner/bannerVisibility.js +73 -0
  261. package/dist/components/banner/bannerVisibility.js.map +1 -0
  262. package/dist/components/clientMonitorVideos.d.ts +6 -0
  263. package/dist/components/clientMonitorVideos.d.ts.map +1 -0
  264. package/dist/components/clientMonitorVideos.js +116 -0
  265. package/dist/components/clientMonitorVideos.js.map +1 -0
  266. package/dist/components/dotlottieWasm.d.ts +19 -0
  267. package/dist/components/dotlottieWasm.d.ts.map +1 -0
  268. package/dist/components/dotlottieWasm.js +62 -0
  269. package/dist/components/dotlottieWasm.js.map +1 -0
  270. package/dist/components/heroLoop.d.ts +22 -0
  271. package/dist/components/heroLoop.d.ts.map +1 -0
  272. package/dist/components/heroLoop.js +24 -0
  273. package/dist/components/heroLoop.js.map +1 -0
  274. package/dist/components/svg.d.ts +3 -0
  275. package/dist/components/svg.d.ts.map +1 -0
  276. package/dist/components/svg.js +64 -0
  277. package/dist/components/svg.js.map +1 -0
  278. package/dist/context/ExternalVideoPlayButtonContext.d.ts +7 -0
  279. package/dist/context/ExternalVideoPlayButtonContext.d.ts.map +1 -0
  280. package/dist/context/ExternalVideoPlayButtonContext.js +11 -0
  281. package/dist/context/ExternalVideoPlayButtonContext.js.map +1 -0
  282. package/dist/elements/RtfOrString.d.ts +26 -0
  283. package/dist/elements/RtfOrString.d.ts.map +1 -0
  284. package/dist/elements/RtfOrString.js +13 -0
  285. package/dist/elements/RtfOrString.js.map +1 -0
  286. package/dist/elements/TrackedLink.d.ts +25 -0
  287. package/dist/elements/TrackedLink.d.ts.map +1 -0
  288. package/dist/elements/TrackedLink.js +96 -0
  289. package/dist/elements/TrackedLink.js.map +1 -0
  290. package/dist/elements/UtmLink.d.ts +7 -0
  291. package/dist/elements/UtmLink.d.ts.map +1 -0
  292. package/dist/elements/UtmLink.js +24 -0
  293. package/dist/elements/UtmLink.js.map +1 -0
  294. package/dist/framework/BackgroundMedia.d.ts +12 -0
  295. package/dist/framework/BackgroundMedia.d.ts.map +1 -0
  296. package/dist/framework/BackgroundMedia.js +23 -0
  297. package/dist/framework/BackgroundMedia.js.map +1 -0
  298. package/dist/framework/ComponentErrorIndicator.d.ts +12 -0
  299. package/dist/framework/ComponentErrorIndicator.d.ts.map +1 -0
  300. package/dist/framework/ComponentErrorIndicator.js +29 -0
  301. package/dist/framework/ComponentErrorIndicator.js.map +1 -0
  302. package/dist/framework/ContainedVisual.d.ts +12 -0
  303. package/dist/framework/ContainedVisual.d.ts.map +1 -0
  304. package/dist/framework/ContainedVisual.js +14 -0
  305. package/dist/framework/ContainedVisual.js.map +1 -0
  306. package/dist/framework/ResponsiveVisual.d.ts +14 -0
  307. package/dist/framework/ResponsiveVisual.d.ts.map +1 -0
  308. package/dist/framework/ResponsiveVisual.js +14 -0
  309. package/dist/framework/ResponsiveVisual.js.map +1 -0
  310. package/dist/framework/componentErrors.d.ts +19 -0
  311. package/dist/framework/componentErrors.d.ts.map +1 -0
  312. package/dist/framework/componentErrors.js +31 -0
  313. package/dist/framework/componentErrors.js.map +1 -0
  314. package/dist/hooks/useClickTracking.d.ts +58 -0
  315. package/dist/hooks/useClickTracking.d.ts.map +1 -0
  316. package/dist/hooks/useClickTracking.js +48 -0
  317. package/dist/hooks/useClickTracking.js.map +1 -0
  318. package/dist/hooks/useDocumentVisible.d.ts +2 -0
  319. package/dist/hooks/useDocumentVisible.d.ts.map +1 -0
  320. package/dist/hooks/useDocumentVisible.js +17 -0
  321. package/dist/hooks/useDocumentVisible.js.map +1 -0
  322. package/dist/hooks/visibility.d.ts +14 -0
  323. package/dist/hooks/visibility.d.ts.map +1 -0
  324. package/dist/hooks/visibility.js +122 -0
  325. package/dist/hooks/visibility.js.map +1 -0
  326. package/dist/index.d.ts +134 -0
  327. package/dist/index.d.ts.map +1 -0
  328. package/dist/index.js +120 -0
  329. package/dist/index.js.map +1 -0
  330. package/dist/media-library/MediaLibraryAnimationPlayer.d.ts +9 -0
  331. package/dist/media-library/MediaLibraryAnimationPlayer.d.ts.map +1 -0
  332. package/dist/media-library/MediaLibraryAnimationPlayer.js +99 -0
  333. package/dist/media-library/MediaLibraryAnimationPlayer.js.map +1 -0
  334. package/dist/media-library/MediaLibraryGrid.d.ts +5 -0
  335. package/dist/media-library/MediaLibraryGrid.d.ts.map +1 -0
  336. package/dist/media-library/MediaLibraryGrid.js +88 -0
  337. package/dist/media-library/MediaLibraryGrid.js.map +1 -0
  338. package/dist/media-library/MediaLibraryPage.d.ts +17 -0
  339. package/dist/media-library/MediaLibraryPage.d.ts.map +1 -0
  340. package/dist/media-library/MediaLibraryPage.js +30 -0
  341. package/dist/media-library/MediaLibraryPage.js.map +1 -0
  342. package/dist/media-library/index.d.ts +4 -0
  343. package/dist/media-library/index.d.ts.map +1 -0
  344. package/dist/media-library/index.js +4 -0
  345. package/dist/media-library/index.js.map +1 -0
  346. package/dist/media-library/types.d.ts +8 -0
  347. package/dist/media-library/types.d.ts.map +1 -0
  348. package/dist/media-library/types.js +12 -0
  349. package/dist/media-library/types.js.map +1 -0
  350. package/dist/route-handlers/createCmsTxtHandler.d.ts +19 -0
  351. package/dist/route-handlers/createCmsTxtHandler.d.ts.map +1 -0
  352. package/dist/route-handlers/createCmsTxtHandler.js +154 -0
  353. package/dist/route-handlers/createCmsTxtHandler.js.map +1 -0
  354. package/dist/route-handlers/createDiscoveryHandler.d.ts +67 -0
  355. package/dist/route-handlers/createDiscoveryHandler.d.ts.map +1 -0
  356. package/dist/route-handlers/createDiscoveryHandler.js +190 -0
  357. package/dist/route-handlers/createDiscoveryHandler.js.map +1 -0
  358. package/dist/route-handlers/createGuidelinesHandler.d.ts +16 -0
  359. package/dist/route-handlers/createGuidelinesHandler.d.ts.map +1 -0
  360. package/dist/route-handlers/createGuidelinesHandler.js +100 -0
  361. package/dist/route-handlers/createGuidelinesHandler.js.map +1 -0
  362. package/dist/route-handlers/createMediaLibraryHandler.d.ts +19 -0
  363. package/dist/route-handlers/createMediaLibraryHandler.d.ts.map +1 -0
  364. package/dist/route-handlers/createMediaLibraryHandler.js +76 -0
  365. package/dist/route-handlers/createMediaLibraryHandler.js.map +1 -0
  366. package/dist/route-handlers/index.d.ts +9 -0
  367. package/dist/route-handlers/index.d.ts.map +1 -0
  368. package/dist/route-handlers/index.js +5 -0
  369. package/dist/route-handlers/index.js.map +1 -0
  370. package/dist/rtf/rtf.d.ts +66 -0
  371. package/dist/rtf/rtf.d.ts.map +1 -0
  372. package/dist/rtf/rtf.js +183 -0
  373. package/dist/rtf/rtf.js.map +1 -0
  374. package/dist/server/index.d.ts +20 -0
  375. package/dist/server/index.d.ts.map +1 -0
  376. package/dist/server/index.js +11 -0
  377. package/dist/server/index.js.map +1 -0
  378. package/dist/server/merge-prepared-page-context.d.ts +8 -0
  379. package/dist/server/merge-prepared-page-context.d.ts.map +1 -0
  380. package/dist/server/merge-prepared-page-context.js +11 -0
  381. package/dist/server/merge-prepared-page-context.js.map +1 -0
  382. package/dist/server/page-test-merge.d.ts +7 -0
  383. package/dist/server/page-test-merge.d.ts.map +1 -0
  384. package/dist/server/page-test-merge.js +12 -0
  385. package/dist/server/page-test-merge.js.map +1 -0
  386. package/dist/server/route-handlers-types.d.ts +124 -0
  387. package/dist/server/route-handlers-types.d.ts.map +1 -0
  388. package/dist/server/route-handlers-types.js +2 -0
  389. package/dist/server/route-handlers-types.js.map +1 -0
  390. package/dist/server/route-handlers.d.ts +99 -0
  391. package/dist/server/route-handlers.d.ts.map +1 -0
  392. package/dist/server/route-handlers.js +1268 -0
  393. package/dist/server/route-handlers.js.map +1 -0
  394. package/dist/server/route-types.d.ts +78 -0
  395. package/dist/server/route-types.d.ts.map +1 -0
  396. package/dist/server/route-types.js +4 -0
  397. package/dist/server/route-types.js.map +1 -0
  398. package/dist/server/tag-index-guards.d.ts +33 -0
  399. package/dist/server/tag-index-guards.d.ts.map +1 -0
  400. package/dist/server/tag-index-guards.js +33 -0
  401. package/dist/server/tag-index-guards.js.map +1 -0
  402. package/dist/server/template-route-handlers.d.ts +7 -0
  403. package/dist/server/template-route-handlers.d.ts.map +1 -0
  404. package/dist/server/template-route-handlers.js +35 -0
  405. package/dist/server/template-route-handlers.js.map +1 -0
  406. package/dist/showcase/components/AllViewPanel.d.ts +7 -0
  407. package/dist/showcase/components/AllViewPanel.d.ts.map +1 -0
  408. package/dist/showcase/components/AllViewPanel.js +55 -0
  409. package/dist/showcase/components/AllViewPanel.js.map +1 -0
  410. package/dist/showcase/components/Controls.d.ts +15 -0
  411. package/dist/showcase/components/Controls.d.ts.map +1 -0
  412. package/dist/showcase/components/Controls.js +71 -0
  413. package/dist/showcase/components/Controls.js.map +1 -0
  414. package/dist/showcase/components/ControlsWrapper.d.ts +15 -0
  415. package/dist/showcase/components/ControlsWrapper.d.ts.map +1 -0
  416. package/dist/showcase/components/ControlsWrapper.js +9 -0
  417. package/dist/showcase/components/ControlsWrapper.js.map +1 -0
  418. package/dist/showcase/components/IframeHeightReporter.d.ts +13 -0
  419. package/dist/showcase/components/IframeHeightReporter.d.ts.map +1 -0
  420. package/dist/showcase/components/IframeHeightReporter.js +51 -0
  421. package/dist/showcase/components/IframeHeightReporter.js.map +1 -0
  422. package/dist/showcase/components/PreviewPanel.d.ts +18 -0
  423. package/dist/showcase/components/PreviewPanel.d.ts.map +1 -0
  424. package/dist/showcase/components/PreviewPanel.js +52 -0
  425. package/dist/showcase/components/PreviewPanel.js.map +1 -0
  426. package/dist/showcase/components/ScaledIframe.d.ts +22 -0
  427. package/dist/showcase/components/ScaledIframe.d.ts.map +1 -0
  428. package/dist/showcase/components/ScaledIframe.js +41 -0
  429. package/dist/showcase/components/ScaledIframe.js.map +1 -0
  430. package/dist/showcase/components/ShowcaseAllRenderPage.d.ts +21 -0
  431. package/dist/showcase/components/ShowcaseAllRenderPage.d.ts.map +1 -0
  432. package/dist/showcase/components/ShowcaseAllRenderPage.js +36 -0
  433. package/dist/showcase/components/ShowcaseAllRenderPage.js.map +1 -0
  434. package/dist/showcase/components/ShowcaseAnimationRoot.d.ts +8 -0
  435. package/dist/showcase/components/ShowcaseAnimationRoot.d.ts.map +1 -0
  436. package/dist/showcase/components/ShowcaseAnimationRoot.js +10 -0
  437. package/dist/showcase/components/ShowcaseAnimationRoot.js.map +1 -0
  438. package/dist/showcase/components/ShowcasePage.d.ts +25 -0
  439. package/dist/showcase/components/ShowcasePage.d.ts.map +1 -0
  440. package/dist/showcase/components/ShowcasePage.js +31 -0
  441. package/dist/showcase/components/ShowcasePage.js.map +1 -0
  442. package/dist/showcase/components/ShowcaseRenderPage.d.ts +21 -0
  443. package/dist/showcase/components/ShowcaseRenderPage.d.ts.map +1 -0
  444. package/dist/showcase/components/ShowcaseRenderPage.js +45 -0
  445. package/dist/showcase/components/ShowcaseRenderPage.js.map +1 -0
  446. package/dist/showcase/components/ShowcaseViewportGuard.d.ts +14 -0
  447. package/dist/showcase/components/ShowcaseViewportGuard.d.ts.map +1 -0
  448. package/dist/showcase/components/ShowcaseViewportGuard.js +77 -0
  449. package/dist/showcase/components/ShowcaseViewportGuard.js.map +1 -0
  450. package/dist/showcase/components/TopBar.d.ts +11 -0
  451. package/dist/showcase/components/TopBar.d.ts.map +1 -0
  452. package/dist/showcase/components/TopBar.js +105 -0
  453. package/dist/showcase/components/TopBar.js.map +1 -0
  454. package/dist/showcase/controlFieldSupport.d.ts +12 -0
  455. package/dist/showcase/controlFieldSupport.d.ts.map +1 -0
  456. package/dist/showcase/controlFieldSupport.js +35 -0
  457. package/dist/showcase/controlFieldSupport.js.map +1 -0
  458. package/dist/showcase/index.d.ts +20 -0
  459. package/dist/showcase/index.d.ts.map +1 -0
  460. package/dist/showcase/index.js +20 -0
  461. package/dist/showcase/index.js.map +1 -0
  462. package/dist/showcase/isCmsShowcase.d.ts +10 -0
  463. package/dist/showcase/isCmsShowcase.d.ts.map +1 -0
  464. package/dist/showcase/isCmsShowcase.js +12 -0
  465. package/dist/showcase/isCmsShowcase.js.map +1 -0
  466. package/dist/showcase/mergeShowcaseMocks.d.ts +34 -0
  467. package/dist/showcase/mergeShowcaseMocks.d.ts.map +1 -0
  468. package/dist/showcase/mergeShowcaseMocks.js +31 -0
  469. package/dist/showcase/mergeShowcaseMocks.js.map +1 -0
  470. package/dist/showcase/mockFactory.d.ts +47 -0
  471. package/dist/showcase/mockFactory.d.ts.map +1 -0
  472. package/dist/showcase/mockFactory.js +726 -0
  473. package/dist/showcase/mockFactory.js.map +1 -0
  474. package/dist/showcase/showcaseLayout.d.ts +17 -0
  475. package/dist/showcase/showcaseLayout.d.ts.map +1 -0
  476. package/dist/showcase/showcaseLayout.js +11 -0
  477. package/dist/showcase/showcaseLayout.js.map +1 -0
  478. package/dist/showcase/showcaseRelatedContent.d.ts +30 -0
  479. package/dist/showcase/showcaseRelatedContent.d.ts.map +1 -0
  480. package/dist/showcase/showcaseRelatedContent.js +106 -0
  481. package/dist/showcase/showcaseRelatedContent.js.map +1 -0
  482. package/dist/showcase/types.d.ts +21 -0
  483. package/dist/showcase/types.d.ts.map +1 -0
  484. package/dist/showcase/types.js +19 -0
  485. package/dist/showcase/types.js.map +1 -0
  486. package/dist/utils/UnsupportedWarning.d.ts +30 -0
  487. package/dist/utils/UnsupportedWarning.d.ts.map +1 -0
  488. package/dist/utils/UnsupportedWarning.js +44 -0
  489. package/dist/utils/UnsupportedWarning.js.map +1 -0
  490. package/dist/utils/UnusedChecker.d.ts +51 -0
  491. package/dist/utils/UnusedChecker.d.ts.map +1 -0
  492. package/dist/utils/UnusedChecker.js +96 -0
  493. package/dist/utils/UnusedChecker.js.map +1 -0
  494. package/dist/utils/agent-ready.d.ts +103 -0
  495. package/dist/utils/agent-ready.d.ts.map +1 -0
  496. package/dist/utils/agent-ready.js +246 -0
  497. package/dist/utils/agent-ready.js.map +1 -0
  498. package/dist/utils/assertValidSiteBaseUrl.d.ts +8 -0
  499. package/dist/utils/assertValidSiteBaseUrl.d.ts.map +1 -0
  500. package/dist/utils/assertValidSiteBaseUrl.js +31 -0
  501. package/dist/utils/assertValidSiteBaseUrl.js.map +1 -0
  502. package/dist/utils/breadcrumbUtils.d.ts +64 -0
  503. package/dist/utils/breadcrumbUtils.d.ts.map +1 -0
  504. package/dist/utils/breadcrumbUtils.js +73 -0
  505. package/dist/utils/breadcrumbUtils.js.map +1 -0
  506. package/dist/utils/buildPageMetadata.d.ts +139 -0
  507. package/dist/utils/buildPageMetadata.d.ts.map +1 -0
  508. package/dist/utils/buildPageMetadata.js +218 -0
  509. package/dist/utils/buildPageMetadata.js.map +1 -0
  510. package/dist/utils/cn.d.ts +29 -0
  511. package/dist/utils/cn.d.ts.map +1 -0
  512. package/dist/utils/cn.js +32 -0
  513. package/dist/utils/cn.js.map +1 -0
  514. package/dist/utils/componentUtils.d.ts +82 -0
  515. package/dist/utils/componentUtils.d.ts.map +1 -0
  516. package/dist/utils/componentUtils.js +327 -0
  517. package/dist/utils/componentUtils.js.map +1 -0
  518. package/dist/utils/convertText.d.ts +2 -0
  519. package/dist/utils/convertText.d.ts.map +1 -0
  520. package/dist/utils/convertText.js +35 -0
  521. package/dist/utils/convertText.js.map +1 -0
  522. package/dist/utils/createDefaultRenderText.d.ts +17 -0
  523. package/dist/utils/createDefaultRenderText.d.ts.map +1 -0
  524. package/dist/utils/createDefaultRenderText.js +25 -0
  525. package/dist/utils/createDefaultRenderText.js.map +1 -0
  526. package/dist/utils/errorHandling.d.ts +37 -0
  527. package/dist/utils/errorHandling.d.ts.map +1 -0
  528. package/dist/utils/errorHandling.js +61 -0
  529. package/dist/utils/errorHandling.js.map +1 -0
  530. package/dist/utils/errorMonitoring.d.ts +17 -0
  531. package/dist/utils/errorMonitoring.d.ts.map +1 -0
  532. package/dist/utils/errorMonitoring.js +26 -0
  533. package/dist/utils/errorMonitoring.js.map +1 -0
  534. package/dist/utils/imageKitVideoHls.d.ts +3 -0
  535. package/dist/utils/imageKitVideoHls.d.ts.map +1 -0
  536. package/dist/utils/imageKitVideoHls.js +5 -0
  537. package/dist/utils/imageKitVideoHls.js.map +1 -0
  538. package/dist/utils/interpolateMetaText.d.ts +9 -0
  539. package/dist/utils/interpolateMetaText.d.ts.map +1 -0
  540. package/dist/utils/interpolateMetaText.js +21 -0
  541. package/dist/utils/interpolateMetaText.js.map +1 -0
  542. package/dist/utils/linkAccessibility.d.ts +13 -0
  543. package/dist/utils/linkAccessibility.d.ts.map +1 -0
  544. package/dist/utils/linkAccessibility.js +14 -0
  545. package/dist/utils/linkAccessibility.js.map +1 -0
  546. package/dist/utils/linkResolution.d.ts +15 -0
  547. package/dist/utils/linkResolution.d.ts.map +1 -0
  548. package/dist/utils/linkResolution.js +19 -0
  549. package/dist/utils/linkResolution.js.map +1 -0
  550. package/dist/utils/listing-page-heading.d.ts +16 -0
  551. package/dist/utils/listing-page-heading.d.ts.map +1 -0
  552. package/dist/utils/listing-page-heading.js +24 -0
  553. package/dist/utils/listing-page-heading.js.map +1 -0
  554. package/dist/utils/listingStructuredData.d.ts +28 -0
  555. package/dist/utils/listingStructuredData.d.ts.map +1 -0
  556. package/dist/utils/listingStructuredData.js +65 -0
  557. package/dist/utils/listingStructuredData.js.map +1 -0
  558. package/dist/utils/marketingSiteSitemap.d.ts +103 -0
  559. package/dist/utils/marketingSiteSitemap.d.ts.map +1 -0
  560. package/dist/utils/marketingSiteSitemap.js +352 -0
  561. package/dist/utils/marketingSiteSitemap.js.map +1 -0
  562. package/dist/utils/previewPageUtils.d.ts +61 -0
  563. package/dist/utils/previewPageUtils.d.ts.map +1 -0
  564. package/dist/utils/previewPageUtils.js +72 -0
  565. package/dist/utils/previewPageUtils.js.map +1 -0
  566. package/dist/utils/previewUtils.d.ts +59 -0
  567. package/dist/utils/previewUtils.d.ts.map +1 -0
  568. package/dist/utils/previewUtils.js +60 -0
  569. package/dist/utils/previewUtils.js.map +1 -0
  570. package/dist/utils/processCollectionLinks.d.ts +11 -0
  571. package/dist/utils/processCollectionLinks.d.ts.map +1 -0
  572. package/dist/utils/processCollectionLinks.js +38 -0
  573. package/dist/utils/processCollectionLinks.js.map +1 -0
  574. package/dist/utils/processTextContent.d.ts +18 -0
  575. package/dist/utils/processTextContent.d.ts.map +1 -0
  576. package/dist/utils/processTextContent.js +24 -0
  577. package/dist/utils/processTextContent.js.map +1 -0
  578. package/dist/utils/reactNodeText.d.ts +7 -0
  579. package/dist/utils/reactNodeText.d.ts.map +1 -0
  580. package/dist/utils/reactNodeText.js +43 -0
  581. package/dist/utils/reactNodeText.js.map +1 -0
  582. package/dist/utils/richTextNodeText.d.ts +13 -0
  583. package/dist/utils/richTextNodeText.d.ts.map +1 -0
  584. package/dist/utils/richTextNodeText.js +29 -0
  585. package/dist/utils/richTextNodeText.js.map +1 -0
  586. package/dist/utils/robots.d.ts +115 -0
  587. package/dist/utils/robots.d.ts.map +1 -0
  588. package/dist/utils/robots.js +174 -0
  589. package/dist/utils/robots.js.map +1 -0
  590. package/dist/utils/scopeCss.d.ts +15 -0
  591. package/dist/utils/scopeCss.d.ts.map +1 -0
  592. package/dist/utils/scopeCss.js +186 -0
  593. package/dist/utils/scopeCss.js.map +1 -0
  594. package/dist/utils/sitemap.d.ts +173 -0
  595. package/dist/utils/sitemap.d.ts.map +1 -0
  596. package/dist/utils/sitemap.js +257 -0
  597. package/dist/utils/sitemap.js.map +1 -0
  598. package/dist/utils/structuredDataUtils.d.ts +158 -0
  599. package/dist/utils/structuredDataUtils.d.ts.map +1 -0
  600. package/dist/utils/structuredDataUtils.js +225 -0
  601. package/dist/utils/structuredDataUtils.js.map +1 -0
  602. package/dist/utils/urlUtils.d.ts +30 -0
  603. package/dist/utils/urlUtils.d.ts.map +1 -0
  604. package/dist/utils/urlUtils.js +100 -0
  605. package/dist/utils/urlUtils.js.map +1 -0
  606. package/dist/utils/visualPositions.d.ts +3 -0
  607. package/dist/utils/visualPositions.d.ts.map +1 -0
  608. package/dist/utils/visualPositions.js +13 -0
  609. package/dist/utils/visualPositions.js.map +1 -0
  610. package/dist/utils/visualSizes.d.ts +5 -0
  611. package/dist/utils/visualSizes.d.ts.map +1 -0
  612. package/dist/utils/visualSizes.js +27 -0
  613. package/dist/utils/visualSizes.js.map +1 -0
  614. package/dist/utils/wcagRelativeLuminanceFromHex.d.ts +8 -0
  615. package/dist/utils/wcagRelativeLuminanceFromHex.d.ts.map +1 -0
  616. package/dist/utils/wcagRelativeLuminanceFromHex.js +30 -0
  617. package/dist/utils/wcagRelativeLuminanceFromHex.js.map +1 -0
  618. package/dist/utils/wrapHtmlComponentJs.d.ts +10 -0
  619. package/dist/utils/wrapHtmlComponentJs.d.ts.map +1 -0
  620. package/dist/utils/wrapHtmlComponentJs.js +12 -0
  621. package/dist/utils/wrapHtmlComponentJs.js.map +1 -0
  622. package/docs/PACKAGE_EXPORT_BOUNDARIES.md +98 -0
  623. package/docs/llms.md +358 -0
  624. package/package.json +108 -0
  625. package/src/showcase/README.md +269 -0
@@ -0,0 +1,302 @@
1
+ /**
2
+ * CMS Registration System
3
+ *
4
+ * This module provides a unified registration pattern for CMS components and collections.
5
+ * Instead of updating multiple places when adding a new component, you can define a single
6
+ * registration object that contains all related pieces (renderer, embedded renderer, used fields).
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * // In your component file
11
+ * export const HeroRegistration = defineComponent({
12
+ * name: 'Hero',
13
+ * renderer: Hero,
14
+ * usedFields: USED_FIELDS,
15
+ * });
16
+ *
17
+ * // In cms.ts
18
+ * const componentRegistrations = [HeroRegistration, ...];
19
+ * const { componentMap, embeddedComponentMap, componentFieldsMap } =
20
+ * buildComponentMaps(componentRegistrations);
21
+ * ```
22
+ */
23
+ import type { ITyped } from '@se-studio/core-data-types';
24
+ import type { CollectionRenderer, EmbeddedCollectionRenderer } from './components/CmsCollection';
25
+ import type { ComponentRenderer, EmbeddedComponentRenderer } from './components/CmsComponent';
26
+ import type { EmbeddedExternalComponentRenderer, ExternalComponentRenderer } from './components/CmsExternalComponent';
27
+ import type { ShowcaseLayoutMode } from './showcase/showcaseLayout';
28
+ /**
29
+ * Converter function for a single CMS item to a markdown string.
30
+ * Structurally identical to `MarkdownItemConverter` in `@se-studio/markdown-renderer`,
31
+ * but uses `context: unknown` so `core-ui` does not depend on that package.
32
+ * App-side implementations cast `context` to `MarkdownConverterContext` inside the function body.
33
+ */
34
+ export type MarkdownItemConverter = (item: ITyped, context: unknown, headingLevel: number) => string;
35
+ /**
36
+ * A Contentful Rich Text document stored as-is for direct rendering in the showcase.
37
+ * Uses `unknown` for `json` so JSON-imported curated mocks are compatible without casts
38
+ * (TypeScript widens JSON string fields which would otherwise conflict with the strict
39
+ * Contentful `Document` type). The value is cast to `IContentfulRichText` at point of use.
40
+ */
41
+ export type MockRichText = {
42
+ json: unknown;
43
+ };
44
+ /**
45
+ * JSON-safe link shape used in curated showcase mocks.
46
+ * Matches the SerializedLink shape written by generate-showcase-data.
47
+ * `type` is a plain string so TypeScript JSON imports are compatible (no widening issues).
48
+ * The consumer narrows to the specific link types at runtime via mockLinksToLinkProps.
49
+ */
50
+ export interface MockLink {
51
+ id: string;
52
+ name: string;
53
+ text: string | null;
54
+ type: string;
55
+ href: string;
56
+ variant?: string;
57
+ backgroundColour?: string;
58
+ textColour?: string;
59
+ slug?: string;
60
+ internalType?: string;
61
+ internalId?: string;
62
+ }
63
+ export type MockVisual = {
64
+ width: number;
65
+ height: number;
66
+ url?: string;
67
+ lottieUrl?: string;
68
+ widthPercent?: number | null;
69
+ };
70
+ export interface MockData {
71
+ visual?: MockVisual;
72
+ /** Array of distinct card mocks for collections — each card slot gets its own content. */
73
+ cards?: MockData[];
74
+ /** Real link data extracted from Contentful; used instead of generic placeholder links. */
75
+ links?: MockLink[];
76
+ [key: string]: string | number | boolean | MockVisual | MockRichText | MockData[] | MockLink[] | undefined;
77
+ }
78
+ /**
79
+ * Registration for a CMS component.
80
+ * Components can optionally have an embedded variant for use in RTF/collections.
81
+ */
82
+ export interface ComponentRegistration<TName extends string = string, TComponent extends ITyped = ITyped> {
83
+ /** CMS component type name (e.g., 'Hero', 'Callout') */
84
+ name: TName;
85
+ /** Main renderer for page-level display */
86
+ renderer: ComponentRenderer<TComponent>;
87
+ /** Fields used by this component (for cms-showcase and unused field checking) */
88
+ usedFields: Set<string>;
89
+ /**
90
+ * Embedded renderer for RTF/collection contexts.
91
+ * - `undefined` (default): automatically falls back to the top-level renderer when embedded.
92
+ * - `false`: explicitly opts out of embedding; shows a "not supported" warning in dev.
93
+ * - A renderer function: used as the dedicated embedded renderer.
94
+ */
95
+ embeddedRenderer?: EmbeddedComponentRenderer<TComponent> | false;
96
+ /** Optional mock data configuration for the showcase */
97
+ mock?: MockData;
98
+ /** Optional flag to exclude from cms-showcase */
99
+ showcaseExclude?: boolean;
100
+ /**
101
+ * How the showcase parent iframe should size this type.
102
+ * - `document` (default): auto-grow to content height
103
+ * - `viewport`: fixed frame + internal scroll (scroll-theatre / 100svh UIs)
104
+ * - `compact`: shorter fixed frame (full-bleed heroes)
105
+ * Prefer also implementing compact in-component layouts via `isCmsShowcase()`.
106
+ */
107
+ showcaseLayout?: ShowcaseLayoutMode;
108
+ /** If set, this component suppresses itself when any of these types exist in the page contents */
109
+ defaultOf?: string[];
110
+ /** Optional custom markdown converter for search indexing. Overrides the generic component renderer. */
111
+ markdownConverter?: MarkdownItemConverter;
112
+ }
113
+ /**
114
+ * Registration for a CMS collection.
115
+ * Collections render arrays of content items.
116
+ */
117
+ export interface CollectionRegistration<TName extends string = string, TCollection extends ITyped = ITyped> {
118
+ /** CMS collection type name (e.g., 'Card grid', 'Icon cards') */
119
+ name: TName;
120
+ /** Main renderer for page-level display */
121
+ renderer: CollectionRenderer<TCollection>;
122
+ /** Fields used by this collection */
123
+ usedFields: Set<string>;
124
+ /**
125
+ * Embedded renderer for nested/RTF contexts.
126
+ * - `undefined` (default): automatically falls back to the top-level renderer when embedded.
127
+ * - `false`: explicitly opts out of embedding; shows a "not supported" warning in dev.
128
+ * - A renderer function: used as the dedicated embedded renderer.
129
+ */
130
+ embeddedRenderer?: EmbeddedCollectionRenderer<TCollection> | false;
131
+ /** Optional: fields used by card items within the collection */
132
+ cardUsedFields?: Set<string>;
133
+ /** Optional mock data configuration for the showcase (collection fields) */
134
+ mock?: MockData;
135
+ /** Optional mock data configuration for the showcase (card fields). Can be a single mock
136
+ * repeated for all cards, or an array of distinct mocks cycled across card slots. */
137
+ cardMock?: MockData | MockData[];
138
+ /** Optional flag to exclude from cms-showcase */
139
+ showcaseExclude?: boolean;
140
+ /**
141
+ * How the showcase parent iframe should size this collection.
142
+ * See ComponentRegistration.showcaseLayout.
143
+ */
144
+ showcaseLayout?: ShowcaseLayoutMode;
145
+ /** If set, this collection suppresses itself when any of these types exist in the page contents */
146
+ defaultOf?: string[];
147
+ /** Optional custom markdown converter for search indexing. Overrides the generic collection renderer. */
148
+ markdownConverter?: MarkdownItemConverter;
149
+ }
150
+ /**
151
+ * Registration for an external component (forms, iframes, third-party widgets).
152
+ */
153
+ export interface ExternalComponentRegistration<TName extends string = string, TExternal extends ITyped = ITyped> {
154
+ /** External component type name (e.g., 'iframe', 'Pardot form') */
155
+ name: TName;
156
+ /** Renderer for the external component */
157
+ renderer: ExternalComponentRenderer<TExternal>;
158
+ /**
159
+ * Embedded renderer for RTF/collection contexts.
160
+ * - `undefined` (default): automatically falls back to the top-level renderer when embedded.
161
+ * - `false`: explicitly opts out of embedding; shows a "not supported" warning in dev.
162
+ * - A renderer function: used as the dedicated embedded renderer.
163
+ */
164
+ embeddedRenderer?: EmbeddedExternalComponentRenderer<TExternal> | false;
165
+ /** Optional custom markdown converter for search indexing. */
166
+ markdownConverter?: MarkdownItemConverter;
167
+ }
168
+ type ComponentRegistrationsInput<TComponent extends ITyped> = readonly ComponentRegistration<string, TComponent>[] | Record<string, ComponentRegistration<string, TComponent>>;
169
+ /**
170
+ * Builds component maps from an array or record of registrations.
171
+ * Returns componentMap, embeddedComponentMap, and componentFieldsMap.
172
+ */
173
+ export declare function buildComponentMaps<TComponent extends ITyped>(registrations: ComponentRegistrationsInput<TComponent>): {
174
+ componentMap: Record<string, ComponentRenderer<TComponent>>;
175
+ embeddedComponentMap: Record<string, EmbeddedComponentRenderer<TComponent>>;
176
+ noEmbedComponents: Set<string>;
177
+ componentFieldsMap: Record<string, Set<string>>;
178
+ componentMockMap: Record<string, MockData>;
179
+ componentDefaultsMap: Record<string, string[]>;
180
+ excludedComponents: string[];
181
+ componentShowcaseLayoutMap: Record<string, ShowcaseLayoutMode>;
182
+ };
183
+ type CollectionRegistrationsInput<TCollection extends ITyped> = readonly CollectionRegistration<string, TCollection>[] | Record<string, CollectionRegistration<string, TCollection>>;
184
+ /**
185
+ * Builds collection maps from an array or record of registrations.
186
+ */
187
+ export declare function buildCollectionMaps<TCollection extends ITyped>(registrations: CollectionRegistrationsInput<TCollection>): {
188
+ collectionMap: Record<string, CollectionRenderer<TCollection>>;
189
+ embeddedCollectionMap: Record<string, EmbeddedCollectionRenderer<TCollection>>;
190
+ noEmbedCollections: Set<string>;
191
+ collectionFieldsMap: Record<string, Set<string>>;
192
+ collectionCardFieldsMap: Record<string, Set<string>>;
193
+ collectionMockMap: Record<string, MockData>;
194
+ collectionCardMockMap: Record<string, MockData | MockData[]>;
195
+ collectionDefaultsMap: Record<string, string[]>;
196
+ excludedCollections: string[];
197
+ collectionShowcaseLayoutMap: Record<string, ShowcaseLayoutMode>;
198
+ };
199
+ type ExternalComponentRegistrationsInput<TExternal extends ITyped> = readonly ExternalComponentRegistration<string, TExternal>[] | Record<string, ExternalComponentRegistration<string, TExternal>>;
200
+ /**
201
+ * Builds external component maps from an array or record of registrations.
202
+ */
203
+ export declare function buildExternalComponentMaps<TExternal extends ITyped>(registrations: ExternalComponentRegistrationsInput<TExternal>): {
204
+ externalComponentMap: Record<string, ExternalComponentRenderer<TExternal>>;
205
+ embeddedExternalComponentMap: Record<string, EmbeddedExternalComponentRenderer<TExternal>>;
206
+ noEmbedExternalComponents: Set<string>;
207
+ };
208
+ /**
209
+ * Helper to create a component registration with type inference.
210
+ * Use this in component files to get proper type checking.
211
+ *
212
+ * @example
213
+ * ```tsx
214
+ * export const HeroRegistration = defineComponent({
215
+ * name: 'Hero',
216
+ * renderer: Hero,
217
+ * usedFields: USED_FIELDS,
218
+ * });
219
+ * ```
220
+ */
221
+ export declare function defineComponent<TName extends string, TComponent extends ITyped>(registration: ComponentRegistration<TName, TComponent>): ComponentRegistration<TName, TComponent>;
222
+ /**
223
+ * Helper to create a collection registration with type inference.
224
+ *
225
+ * @example
226
+ * ```tsx
227
+ * export const CardGridRegistration = defineCollection({
228
+ * name: 'Card grid',
229
+ * renderer: CardGrid,
230
+ * usedFields: COLLECTION_USED_FIELDS,
231
+ * embeddedRenderer: EmbeddedCardGrid,
232
+ * });
233
+ * ```
234
+ */
235
+ export declare function defineCollection<TName extends string, TCollection extends ITyped>(registration: CollectionRegistration<TName, TCollection>): CollectionRegistration<TName, TCollection>;
236
+ /**
237
+ * Helper to create an external component registration with type inference.
238
+ *
239
+ * @example
240
+ * ```tsx
241
+ * export const IFrameRegistration = defineExternalComponent({
242
+ * name: 'iframe',
243
+ * renderer: ExternalIFrame,
244
+ * });
245
+ * ```
246
+ */
247
+ export declare function defineExternalComponent<TName extends string, TExternal extends ITyped>(registration: ExternalComponentRegistration<TName, TExternal>): ExternalComponentRegistration<TName, TExternal>;
248
+ /**
249
+ * Registration for a custom CMS data type that can appear inside collection contents.
250
+ * Use this for types like IPlan, IPricingPlan that have their own `item.type` value
251
+ * (distinct from 'Component' / 'Collection').
252
+ *
253
+ * @example
254
+ * ```ts
255
+ * export const PlanDataType = defineDataType({
256
+ * name: 'plan',
257
+ * markdownConverter: (item, context, headingLevel) => {
258
+ * const plan = item as IPlan;
259
+ * return `### ${plan.name}\n\n`;
260
+ * },
261
+ * });
262
+ * ```
263
+ */
264
+ export interface DataTypeRegistration<TName extends string = string, TData extends ITyped = ITyped> {
265
+ /** The value of `item.type` for this data type (e.g. 'plan', 'pricingPlan') */
266
+ name: TName;
267
+ /** Markdown converter for search indexing */
268
+ markdownConverter: (item: TData, context: unknown, headingLevel: number) => string;
269
+ }
270
+ /**
271
+ * Helper to create a data type registration with type inference.
272
+ */
273
+ export declare function defineDataType<TName extends string, TData extends ITyped>(registration: DataTypeRegistration<TName, TData>): DataTypeRegistration<TName, TData>;
274
+ /** Minimal shape shared by all registration types that can carry a markdown converter. */
275
+ interface HasMarkdownConverter {
276
+ name: string;
277
+ markdownConverter?: MarkdownItemConverter | ((item: ITyped, context: unknown, headingLevel: number) => string);
278
+ }
279
+ /**
280
+ * Builds a `customConverters` map suitable for `MarkdownConverterContext.customConverters`
281
+ * from any combination of component, collection, external, or data-type registration lists.
282
+ *
283
+ * Keys are the name used for dispatch:
284
+ * - `ComponentRegistration.name` → matched against `component.componentType`
285
+ * - `CollectionRegistration.name` → matched against `collection.collectionType`
286
+ * - `ExternalComponentRegistration.name` → matched against external component type
287
+ * - `DataTypeRegistration.name` → matched against `item.type`
288
+ *
289
+ * @example
290
+ * ```ts
291
+ * const customConverters = buildMarkdownConverters(
292
+ * dataTypeRegistrations,
293
+ * componentRegistrationsList,
294
+ * collectionRegistrationsList,
295
+ * externalComponentRegistrationsList,
296
+ * );
297
+ * // Pass to MarkdownConverterContext.customConverters or rebuildSearchIndex({ customConverters })
298
+ * ```
299
+ */
300
+ export declare function buildMarkdownConverters(...lists: Array<readonly HasMarkdownConverter[] | Record<string, HasMarkdownConverter>>): Record<string, MarkdownItemConverter>;
301
+ export {};
302
+ //# sourceMappingURL=cmsRegistration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cmsRegistration.d.ts","sourceRoot":"","sources":["../src/cmsRegistration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,242 @@
1
+ /**
2
+ * CMS Registration System
3
+ *
4
+ * This module provides a unified registration pattern for CMS components and collections.
5
+ * Instead of updating multiple places when adding a new component, you can define a single
6
+ * registration object that contains all related pieces (renderer, embedded renderer, used fields).
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * // In your component file
11
+ * export const HeroRegistration = defineComponent({
12
+ * name: 'Hero',
13
+ * renderer: Hero,
14
+ * usedFields: USED_FIELDS,
15
+ * });
16
+ *
17
+ * // In cms.ts
18
+ * const componentRegistrations = [HeroRegistration, ...];
19
+ * const { componentMap, embeddedComponentMap, componentFieldsMap } =
20
+ * buildComponentMaps(componentRegistrations);
21
+ * ```
22
+ */
23
+ function toComponentRegistrationArray(registrations) {
24
+ return Array.isArray(registrations) ? [...registrations] : Object.values(registrations);
25
+ }
26
+ /**
27
+ * Builds component maps from an array or record of registrations.
28
+ * Returns componentMap, embeddedComponentMap, and componentFieldsMap.
29
+ */
30
+ export function buildComponentMaps(registrations) {
31
+ const list = toComponentRegistrationArray(registrations);
32
+ const componentMap = {};
33
+ const embeddedComponentMap = {};
34
+ const noEmbedComponents = new Set();
35
+ const componentFieldsMap = {};
36
+ const componentMockMap = {};
37
+ const componentDefaultsMap = {};
38
+ const excludedComponents = [];
39
+ const componentShowcaseLayoutMap = {};
40
+ for (const reg of list) {
41
+ componentMap[reg.name] = reg.renderer;
42
+ componentFieldsMap[reg.name] = reg.usedFields;
43
+ if (reg.embeddedRenderer === false) {
44
+ noEmbedComponents.add(reg.name);
45
+ }
46
+ else if (reg.embeddedRenderer) {
47
+ embeddedComponentMap[reg.name] = reg.embeddedRenderer;
48
+ }
49
+ if (reg.mock) {
50
+ componentMockMap[reg.name] = reg.mock;
51
+ }
52
+ if (reg.defaultOf?.length) {
53
+ componentDefaultsMap[reg.name] = reg.defaultOf;
54
+ }
55
+ if (reg.showcaseExclude) {
56
+ excludedComponents.push(reg.name);
57
+ }
58
+ if (reg.showcaseLayout) {
59
+ componentShowcaseLayoutMap[reg.name] = reg.showcaseLayout;
60
+ }
61
+ }
62
+ return {
63
+ componentMap,
64
+ embeddedComponentMap,
65
+ noEmbedComponents,
66
+ componentFieldsMap,
67
+ componentMockMap,
68
+ componentDefaultsMap,
69
+ excludedComponents,
70
+ componentShowcaseLayoutMap,
71
+ };
72
+ }
73
+ function toCollectionRegistrationArray(registrations) {
74
+ return Array.isArray(registrations) ? [...registrations] : Object.values(registrations);
75
+ }
76
+ /**
77
+ * Builds collection maps from an array or record of registrations.
78
+ */
79
+ export function buildCollectionMaps(registrations) {
80
+ const list = toCollectionRegistrationArray(registrations);
81
+ const collectionMap = {};
82
+ const embeddedCollectionMap = {};
83
+ const noEmbedCollections = new Set();
84
+ const collectionFieldsMap = {};
85
+ const collectionCardFieldsMap = {};
86
+ const collectionMockMap = {};
87
+ const collectionCardMockMap = {};
88
+ const collectionDefaultsMap = {};
89
+ const excludedCollections = [];
90
+ const collectionShowcaseLayoutMap = {};
91
+ for (const reg of list) {
92
+ collectionMap[reg.name] = reg.renderer;
93
+ collectionFieldsMap[reg.name] = reg.usedFields;
94
+ if (reg.cardUsedFields) {
95
+ collectionCardFieldsMap[reg.name] = reg.cardUsedFields;
96
+ }
97
+ if (reg.embeddedRenderer === false) {
98
+ noEmbedCollections.add(reg.name);
99
+ }
100
+ else if (reg.embeddedRenderer) {
101
+ embeddedCollectionMap[reg.name] = reg.embeddedRenderer;
102
+ }
103
+ if (reg.mock) {
104
+ collectionMockMap[reg.name] = reg.mock;
105
+ }
106
+ if (reg.cardMock) {
107
+ collectionCardMockMap[reg.name] = reg.cardMock;
108
+ }
109
+ if (reg.defaultOf?.length) {
110
+ collectionDefaultsMap[reg.name] = reg.defaultOf;
111
+ }
112
+ if (reg.showcaseExclude) {
113
+ excludedCollections.push(reg.name);
114
+ }
115
+ if (reg.showcaseLayout) {
116
+ collectionShowcaseLayoutMap[reg.name] = reg.showcaseLayout;
117
+ }
118
+ }
119
+ return {
120
+ collectionMap,
121
+ embeddedCollectionMap,
122
+ noEmbedCollections,
123
+ collectionFieldsMap,
124
+ collectionCardFieldsMap,
125
+ collectionMockMap,
126
+ collectionCardMockMap,
127
+ collectionDefaultsMap,
128
+ excludedCollections,
129
+ collectionShowcaseLayoutMap,
130
+ };
131
+ }
132
+ function toExternalComponentRegistrationArray(registrations) {
133
+ return Array.isArray(registrations) ? [...registrations] : Object.values(registrations);
134
+ }
135
+ /**
136
+ * Builds external component maps from an array or record of registrations.
137
+ */
138
+ export function buildExternalComponentMaps(registrations) {
139
+ const list = toExternalComponentRegistrationArray(registrations);
140
+ const externalComponentMap = {};
141
+ const embeddedExternalComponentMap = {};
142
+ const noEmbedExternalComponents = new Set();
143
+ for (const reg of list) {
144
+ externalComponentMap[reg.name] = reg.renderer;
145
+ if (reg.embeddedRenderer === false) {
146
+ noEmbedExternalComponents.add(reg.name);
147
+ }
148
+ else if (reg.embeddedRenderer) {
149
+ embeddedExternalComponentMap[reg.name] = reg.embeddedRenderer;
150
+ }
151
+ }
152
+ return { externalComponentMap, embeddedExternalComponentMap, noEmbedExternalComponents };
153
+ }
154
+ // ============================================================================
155
+ // Helper Functions for Type Inference
156
+ // ============================================================================
157
+ /**
158
+ * Helper to create a component registration with type inference.
159
+ * Use this in component files to get proper type checking.
160
+ *
161
+ * @example
162
+ * ```tsx
163
+ * export const HeroRegistration = defineComponent({
164
+ * name: 'Hero',
165
+ * renderer: Hero,
166
+ * usedFields: USED_FIELDS,
167
+ * });
168
+ * ```
169
+ */
170
+ export function defineComponent(registration) {
171
+ return registration;
172
+ }
173
+ /**
174
+ * Helper to create a collection registration with type inference.
175
+ *
176
+ * @example
177
+ * ```tsx
178
+ * export const CardGridRegistration = defineCollection({
179
+ * name: 'Card grid',
180
+ * renderer: CardGrid,
181
+ * usedFields: COLLECTION_USED_FIELDS,
182
+ * embeddedRenderer: EmbeddedCardGrid,
183
+ * });
184
+ * ```
185
+ */
186
+ export function defineCollection(registration) {
187
+ return registration;
188
+ }
189
+ /**
190
+ * Helper to create an external component registration with type inference.
191
+ *
192
+ * @example
193
+ * ```tsx
194
+ * export const IFrameRegistration = defineExternalComponent({
195
+ * name: 'iframe',
196
+ * renderer: ExternalIFrame,
197
+ * });
198
+ * ```
199
+ */
200
+ export function defineExternalComponent(registration) {
201
+ return registration;
202
+ }
203
+ /**
204
+ * Helper to create a data type registration with type inference.
205
+ */
206
+ export function defineDataType(registration) {
207
+ return registration;
208
+ }
209
+ /**
210
+ * Builds a `customConverters` map suitable for `MarkdownConverterContext.customConverters`
211
+ * from any combination of component, collection, external, or data-type registration lists.
212
+ *
213
+ * Keys are the name used for dispatch:
214
+ * - `ComponentRegistration.name` → matched against `component.componentType`
215
+ * - `CollectionRegistration.name` → matched against `collection.collectionType`
216
+ * - `ExternalComponentRegistration.name` → matched against external component type
217
+ * - `DataTypeRegistration.name` → matched against `item.type`
218
+ *
219
+ * @example
220
+ * ```ts
221
+ * const customConverters = buildMarkdownConverters(
222
+ * dataTypeRegistrations,
223
+ * componentRegistrationsList,
224
+ * collectionRegistrationsList,
225
+ * externalComponentRegistrationsList,
226
+ * );
227
+ * // Pass to MarkdownConverterContext.customConverters or rebuildSearchIndex({ customConverters })
228
+ * ```
229
+ */
230
+ export function buildMarkdownConverters(...lists) {
231
+ const result = {};
232
+ for (const list of lists) {
233
+ const arr = Array.isArray(list) ? list : Object.values(list);
234
+ for (const reg of arr) {
235
+ if (reg.markdownConverter) {
236
+ result[reg.name] = reg.markdownConverter;
237
+ }
238
+ }
239
+ }
240
+ return result;
241
+ }
242
+ //# sourceMappingURL=cmsRegistration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cmsRegistration.js","sourceRoot":"","sources":["../src/cmsRegistration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { IVisualProps } from './Visual';
2
+ export type IAnimationProps = React.JSX.IntrinsicElements['lottie-player'] & IVisualProps;
3
+ //# sourceMappingURL=Animation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Animation.d.ts","sourceRoot":"","sources":["../../src/components/Animation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,eAAe,CAAC,GAAG,YAAY,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Animation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Animation.js","sourceRoot":"","sources":["../../src/components/Animation.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import type { IAnalyticsContext, IAnimation } from '@se-studio/core-data-types';
2
+ import type { IAnimationProps } from './Animation';
3
+ declare function AnimationComponent({ animation, autoplay, autoPlay, loop, intermission, loopDelay, className, style, ...props }: {
4
+ animation: IAnimation;
5
+ analyticsContext: IAnalyticsContext | null | undefined;
6
+ componentLabel: string | null | undefined;
7
+ } & IAnimationProps): import("react").JSX.Element;
8
+ export default AnimationComponent;
9
+ //# sourceMappingURL=AnimationComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnimationComponent.d.ts","sourceRoot":"","sources":["../../src/components/AnimationComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAGhF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAInD,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,SAAS,EACT,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE;IACD,SAAS,EAAE,UAAU,CAAC;IACtB,gBAAgB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IACvD,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3C,GAAG,eAAe,+BAmClB;AAED,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { cn } from '../utils/cn';
3
+ import { convertObjectFitAndPositionToPreserveAspectRatio } from './svg';
4
+ import { calculateCropDetails } from './Visual';
5
+ function AnimationComponent({ animation, autoplay, autoPlay, loop, intermission, loopDelay, className, style, ...props }) {
6
+ const { animationSrc, optimised, description, name } = animation;
7
+ const realAutoPlay = autoPlay ?? autoplay ?? animation.autoPlay ?? undefined;
8
+ const realLoop = loop ?? animation.loop ?? undefined;
9
+ const realLoopDelay = intermission ?? loopDelay ?? animation.loopDelay ?? undefined;
10
+ const { objectFit, objectPosition } = calculateCropDetails(animation);
11
+ const preserveAspectRatio = convertObjectFitAndPositionToPreserveAspectRatio(objectFit, objectPosition);
12
+ const containerStyle = optimised && optimised.width > 1 && optimised.height > 1
13
+ ? { aspectRatio: `${optimised.width}/${optimised.height}` }
14
+ : undefined;
15
+ return (_jsx("div", { className: cn('relative', className), "aria-label": description ?? name, role: "img", style: containerStyle, children: _jsx("lottie-player", { src: animationSrc, loop: realLoop, intermission: realLoopDelay, preserveAspectRatio: preserveAspectRatio, style: style, autoplay: realAutoPlay, ...props }) }));
16
+ }
17
+ export default AnimationComponent;
18
+ //# sourceMappingURL=AnimationComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnimationComponent.js","sourceRoot":"","sources":["../../src/components/AnimationComponent.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEjC,OAAO,EAAE,gDAAgD,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,SAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,SAAS,EACT,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EAKS;IACjB,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC;IAEjE,MAAM,YAAY,GAAG,QAAQ,IAAI,QAAQ,IAAI,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC;IAC7E,MAAM,QAAQ,GAAG,IAAI,IAAI,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC;IACrD,MAAM,aAAa,GAAG,YAAY,IAAI,SAAS,IAAI,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC;IACpF,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACtE,MAAM,mBAAmB,GAAG,gDAAgD,CAC1E,SAAS,EACT,cAAc,CACf,CAAC;IAEF,MAAM,cAAc,GAClB,SAAS,IAAI,SAAS,CAAC,KAAK,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;QACtD,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,MAAM,EAAE,EAAE;QAC3D,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO,CACL,cACE,SAAS,EAAE,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC,gBACxB,WAAW,IAAI,IAAI,EAC/B,IAAI,EAAC,KAAK,EACV,KAAK,EAAE,cAAc,YAErB,wBACE,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,QAAQ,EACd,YAAY,EAAE,aAAa,EAC3B,mBAAmB,EAAE,mBAAmB,EACxC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,YAAY,KAClB,KAAK,GACT,GACE,CACP,CAAC;AACJ,CAAC;AAED,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,7 @@
1
+ interface ClientMonitorProps {
2
+ defaultThreshold?: number;
3
+ enableDebug?: boolean;
4
+ }
5
+ export declare const ClientMonitor: React.FC<ClientMonitorProps>;
6
+ export {};
7
+ //# sourceMappingURL=ClientMonitor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClientMonitor.d.ts","sourceRoot":"","sources":["../../src/components/ClientMonitor.tsx"],"names":[],"mappings":"AAwZA,UAAU,kBAAkB;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA6BtD,CAAC"}