@se-studio/core-ui 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/README.md +218 -20
  2. package/dist/CmsRendererConfig.d.ts +38 -0
  3. package/dist/CmsRendererConfig.d.ts.map +1 -0
  4. package/dist/CmsRendererConfig.js +2 -0
  5. package/dist/CmsRendererConfig.js.map +1 -0
  6. package/dist/__tests__/setup.d.ts +2 -0
  7. package/dist/__tests__/setup.d.ts.map +1 -0
  8. package/dist/__tests__/setup.js +2 -0
  9. package/dist/__tests__/setup.js.map +1 -0
  10. package/dist/components/AnimationComponent.d.ts +13 -0
  11. package/dist/components/AnimationComponent.d.ts.map +1 -0
  12. package/dist/components/AnimationComponent.js +6 -0
  13. package/dist/components/AnimationComponent.js.map +1 -0
  14. package/dist/components/ClientMonitor.d.ts +2 -3
  15. package/dist/components/ClientMonitor.d.ts.map +1 -0
  16. package/dist/components/ClientMonitor.js +104 -102
  17. package/dist/components/ClientMonitor.js.map +1 -1
  18. package/dist/components/CmsCollection.d.ts +14 -0
  19. package/dist/components/CmsCollection.d.ts.map +1 -0
  20. package/dist/components/CmsCollection.js +26 -0
  21. package/dist/components/CmsCollection.js.map +1 -0
  22. package/dist/components/CmsComponent.d.ts +14 -0
  23. package/dist/components/CmsComponent.d.ts.map +1 -0
  24. package/dist/components/CmsComponent.js +26 -0
  25. package/dist/components/CmsComponent.js.map +1 -0
  26. package/dist/components/CmsContent.d.ts +22 -0
  27. package/dist/components/CmsContent.d.ts.map +1 -0
  28. package/dist/components/CmsContent.js +117 -0
  29. package/dist/components/CmsContent.js.map +1 -0
  30. package/dist/components/CmsDataError.d.ts +14 -0
  31. package/dist/components/CmsDataError.d.ts.map +1 -0
  32. package/dist/components/CmsDataError.js +7 -0
  33. package/dist/components/CmsDataError.js.map +1 -0
  34. package/dist/components/ImageComponent.d.ts +7 -0
  35. package/dist/components/ImageComponent.d.ts.map +1 -0
  36. package/dist/components/ImageComponent.js +14 -0
  37. package/dist/components/ImageComponent.js.map +1 -0
  38. package/dist/components/ImageKitClientVideo.d.ts +10 -0
  39. package/dist/components/ImageKitClientVideo.d.ts.map +1 -0
  40. package/dist/components/ImageKitClientVideo.js +30 -0
  41. package/dist/components/ImageKitClientVideo.js.map +1 -0
  42. package/dist/components/LocalVideo.d.ts +9 -0
  43. package/dist/components/LocalVideo.d.ts.map +1 -0
  44. package/dist/components/LocalVideo.js +31 -0
  45. package/dist/components/LocalVideo.js.map +1 -0
  46. package/dist/components/PictureComponent.d.ts +7 -0
  47. package/dist/components/PictureComponent.d.ts.map +1 -0
  48. package/dist/components/PictureComponent.js +28 -0
  49. package/dist/components/PictureComponent.js.map +1 -0
  50. package/dist/components/Preview.d.ts +2 -3
  51. package/dist/components/Preview.d.ts.map +1 -0
  52. package/dist/components/Preview.js +33 -31
  53. package/dist/components/Preview.js.map +1 -1
  54. package/dist/components/SvgComponent.d.ts +7 -0
  55. package/dist/components/SvgComponent.d.ts.map +1 -0
  56. package/dist/components/SvgComponent.js +8 -0
  57. package/dist/components/SvgComponent.js.map +1 -0
  58. package/dist/components/SvgImageComponent.d.ts +7 -0
  59. package/dist/components/SvgImageComponent.d.ts.map +1 -0
  60. package/dist/components/SvgImageComponent.js +10 -0
  61. package/dist/components/SvgImageComponent.js.map +1 -0
  62. package/dist/components/Video.d.ts +6 -0
  63. package/dist/components/Video.d.ts.map +1 -0
  64. package/dist/components/Video.js +2 -0
  65. package/dist/components/Video.js.map +1 -0
  66. package/dist/components/VideoComponent.d.ts +9 -0
  67. package/dist/components/VideoComponent.d.ts.map +1 -0
  68. package/dist/components/VideoComponent.js +11 -0
  69. package/dist/components/VideoComponent.js.map +1 -0
  70. package/dist/components/Visual.d.ts +30 -0
  71. package/dist/components/Visual.d.ts.map +1 -0
  72. package/dist/components/Visual.js +57 -0
  73. package/dist/components/Visual.js.map +1 -0
  74. package/dist/components/VisualComponent.d.ts +7 -0
  75. package/dist/components/VisualComponent.d.ts.map +1 -0
  76. package/dist/components/VisualComponent.js +19 -0
  77. package/dist/components/VisualComponent.js.map +1 -0
  78. package/dist/elements/RtfOrString.d.ts +13 -0
  79. package/dist/elements/RtfOrString.d.ts.map +1 -0
  80. package/dist/elements/RtfOrString.js +13 -0
  81. package/dist/elements/RtfOrString.js.map +1 -0
  82. package/dist/elements/UtmLink.d.ts +7 -0
  83. package/dist/elements/UtmLink.d.ts.map +1 -0
  84. package/dist/elements/UtmLink.js +24 -0
  85. package/dist/elements/UtmLink.js.map +1 -0
  86. package/dist/elements/UtmLinkOrDiv.d.ts +5 -0
  87. package/dist/elements/UtmLinkOrDiv.d.ts.map +1 -0
  88. package/dist/elements/UtmLinkOrDiv.js +9 -0
  89. package/dist/elements/UtmLinkOrDiv.js.map +1 -0
  90. package/dist/embeddable/BuildEmbed.d.ts +6 -0
  91. package/dist/embeddable/BuildEmbed.d.ts.map +1 -0
  92. package/dist/embeddable/BuildEmbed.js +15 -0
  93. package/dist/embeddable/BuildEmbed.js.map +1 -0
  94. package/dist/embeddable/EmbeddableContext.d.ts +14 -0
  95. package/dist/embeddable/EmbeddableContext.d.ts.map +1 -0
  96. package/dist/embeddable/EmbeddableContext.js +2 -0
  97. package/dist/embeddable/EmbeddableContext.js.map +1 -0
  98. package/dist/embeddable/EmbeddableMaps.d.ts +7 -0
  99. package/dist/embeddable/EmbeddableMaps.d.ts.map +1 -0
  100. package/dist/embeddable/EmbeddableMaps.js +7 -0
  101. package/dist/embeddable/EmbeddableMaps.js.map +1 -0
  102. package/dist/framework/BackgroundMedia.d.ts +11 -0
  103. package/dist/framework/BackgroundMedia.d.ts.map +1 -0
  104. package/dist/framework/BackgroundMedia.js +19 -0
  105. package/dist/framework/BackgroundMedia.js.map +1 -0
  106. package/dist/framework/ColourChange.d.ts +8 -0
  107. package/dist/framework/ColourChange.d.ts.map +1 -0
  108. package/dist/framework/ColourChange.js +13 -0
  109. package/dist/framework/ColourChange.js.map +1 -0
  110. package/dist/framework/ComponentErrorIndicator.d.ts +12 -0
  111. package/dist/framework/ComponentErrorIndicator.d.ts.map +1 -0
  112. package/dist/framework/ComponentErrorIndicator.js +26 -0
  113. package/dist/framework/ComponentErrorIndicator.js.map +1 -0
  114. package/dist/framework/componentErrors.d.ts +11 -0
  115. package/dist/framework/componentErrors.d.ts.map +1 -0
  116. package/dist/framework/componentErrors.js +21 -0
  117. package/dist/framework/componentErrors.js.map +1 -0
  118. package/dist/hooks/useClickTracking.d.ts +19 -0
  119. package/dist/hooks/useClickTracking.d.ts.map +1 -0
  120. package/dist/hooks/useClickTracking.js +19 -0
  121. package/dist/hooks/useClickTracking.js.map +1 -0
  122. package/dist/hooks/useDocumentVisible.d.ts +2 -3
  123. package/dist/hooks/useDocumentVisible.d.ts.map +1 -0
  124. package/dist/hooks/useDocumentVisible.js +15 -18
  125. package/dist/hooks/useDocumentVisible.js.map +1 -1
  126. package/dist/hooks/visibility.d.ts +14 -0
  127. package/dist/hooks/visibility.d.ts.map +1 -0
  128. package/dist/hooks/visibility.js +122 -0
  129. package/dist/hooks/visibility.js.map +1 -0
  130. package/dist/index.d.ts +40 -172
  131. package/dist/index.d.ts.map +1 -0
  132. package/dist/index.js +28 -1077
  133. package/dist/index.js.map +1 -1
  134. package/dist/rtf/rtf.d.ts +11 -0
  135. package/dist/rtf/rtf.d.ts.map +1 -0
  136. package/dist/rtf/rtf.js +60 -0
  137. package/dist/rtf/rtf.js.map +1 -0
  138. package/dist/utils/UnsupportedWarning.d.ts +7 -0
  139. package/dist/utils/UnsupportedWarning.d.ts.map +1 -0
  140. package/dist/utils/UnsupportedWarning.js +20 -0
  141. package/dist/utils/UnsupportedWarning.js.map +1 -0
  142. package/dist/utils/UnusedChecker.d.ts +12 -0
  143. package/dist/utils/UnusedChecker.d.ts.map +1 -0
  144. package/dist/utils/UnusedChecker.js +53 -0
  145. package/dist/utils/UnusedChecker.js.map +1 -0
  146. package/dist/utils/buildPageMetadata.d.ts +11 -0
  147. package/dist/utils/buildPageMetadata.d.ts.map +1 -0
  148. package/dist/utils/buildPageMetadata.js +45 -0
  149. package/dist/utils/buildPageMetadata.js.map +1 -0
  150. package/dist/utils/cn.d.ts +3 -0
  151. package/dist/utils/cn.d.ts.map +1 -0
  152. package/dist/utils/cn.js +6 -0
  153. package/dist/utils/cn.js.map +1 -0
  154. package/dist/utils/componentUtils.d.ts +26 -0
  155. package/dist/utils/componentUtils.d.ts.map +1 -0
  156. package/dist/utils/componentUtils.js +46 -0
  157. package/dist/utils/componentUtils.js.map +1 -0
  158. package/dist/utils/convertText.d.ts +2 -0
  159. package/dist/utils/convertText.d.ts.map +1 -0
  160. package/dist/utils/convertText.js +33 -0
  161. package/dist/utils/convertText.js.map +1 -0
  162. package/dist/utils/errorHandling.d.ts +10 -0
  163. package/dist/utils/errorHandling.d.ts.map +1 -0
  164. package/dist/utils/errorHandling.js +27 -0
  165. package/dist/utils/errorHandling.js.map +1 -0
  166. package/dist/utils/previewUtils.d.ts +29 -0
  167. package/dist/utils/previewUtils.d.ts.map +1 -0
  168. package/dist/utils/previewUtils.js +24 -0
  169. package/dist/utils/previewUtils.js.map +1 -0
  170. package/dist/utils/visualPositions.d.ts +3 -0
  171. package/dist/utils/visualPositions.d.ts.map +1 -0
  172. package/dist/utils/visualPositions.js +14 -0
  173. package/dist/utils/visualPositions.js.map +1 -0
  174. package/dist/utils/visualSizes.d.ts +5 -0
  175. package/dist/utils/visualSizes.d.ts.map +1 -0
  176. package/dist/utils/visualSizes.js +21 -0
  177. package/dist/utils/visualSizes.js.map +1 -0
  178. package/package.json +13 -14
  179. package/dist/client.d.ts +0 -2
  180. package/dist/client.js +0 -8
  181. package/dist/client.js.map +0 -1
@@ -1,33 +1,35 @@
1
- "use client";
2
- import { ContentfulLivePreview } from "@contentful/live-preview";
3
- import { useRouter } from "next/navigation";
4
- import { useEffect, useLayoutEffect } from "react";
5
- const Preview = () => {
6
- const router = useRouter();
7
- useLayoutEffect(() => {
8
- ContentfulLivePreview.init({
9
- locale: "en-US",
10
- debugMode: true,
11
- enableLiveUpdates: true,
12
- enableInspectorMode: true
13
- });
14
- }, []);
15
- useEffect(() => {
16
- const checkLivePreview = (event) => {
17
- if (typeof event.data !== "object" || !event.data || !("from" in event.data) || !("action" in event.data))
18
- return;
19
- if (event.data.from !== "live-preview") return;
20
- if (event.data.action !== "ENTRY_SAVED") return;
21
- router.refresh();
22
- };
23
- window.addEventListener("message", checkLivePreview);
24
- return () => {
25
- window.removeEventListener("message", checkLivePreview);
26
- };
27
- }, [router]);
28
- return null;
29
- };
30
- export {
31
- Preview
1
+ 'use client';
2
+ import { ContentfulLivePreview } from '@contentful/live-preview';
3
+ import { useRouter } from 'next/navigation';
4
+ import { useEffect, useLayoutEffect } from 'react';
5
+ export const Preview = () => {
6
+ const router = useRouter();
7
+ useLayoutEffect(() => {
8
+ ContentfulLivePreview.init({
9
+ locale: 'en-US',
10
+ debugMode: true,
11
+ enableLiveUpdates: true,
12
+ enableInspectorMode: true,
13
+ });
14
+ }, []);
15
+ useEffect(() => {
16
+ const checkLivePreview = (event) => {
17
+ if (typeof event.data !== 'object' ||
18
+ !event.data ||
19
+ !('from' in event.data) ||
20
+ !('action' in event.data))
21
+ return;
22
+ if (event.data.from !== 'live-preview')
23
+ return;
24
+ if (event.data.action !== 'ENTRY_SAVED')
25
+ return;
26
+ router.refresh();
27
+ };
28
+ window.addEventListener('message', checkLivePreview);
29
+ return () => {
30
+ window.removeEventListener('message', checkLivePreview);
31
+ };
32
+ }, [router]);
33
+ return null;
32
34
  };
33
35
  //# sourceMappingURL=Preview.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/Preview.tsx"],"sourcesContent":["'use client';\n\nimport { ContentfulLivePreview } from '@contentful/live-preview';\nimport { useRouter } from 'next/navigation';\nimport { useEffect, useLayoutEffect } from 'react';\n\nexport const Preview: React.FC = () => {\n const router = useRouter();\n useLayoutEffect(() => {\n ContentfulLivePreview.init({\n locale: 'en-US',\n debugMode: true,\n enableLiveUpdates: true,\n enableInspectorMode: true,\n });\n }, []);\n\n useEffect(() => {\n const checkLivePreview = (event: MessageEvent<unknown>) => {\n if (\n typeof event.data !== 'object' ||\n !event.data ||\n !('from' in event.data) ||\n !('action' in event.data)\n )\n return;\n if (event.data.from !== 'live-preview') return;\n if (event.data.action !== 'ENTRY_SAVED') return;\n router.refresh();\n };\n window.addEventListener('message', checkLivePreview);\n\n return () => {\n window.removeEventListener('message', checkLivePreview);\n };\n }, [router]);\n\n return null;\n};\n"],"mappings":";AAEA,SAAS,6BAA6B;AACtC,SAAS,iBAAiB;AAC1B,SAAS,WAAW,uBAAuB;AAEpC,MAAM,UAAoB,MAAM;AACrC,QAAM,SAAS,UAAU;AACzB,kBAAgB,MAAM;AACpB,0BAAsB,KAAK;AAAA,MACzB,QAAQ;AAAA,MACR,WAAW;AAAA,MACX,mBAAmB;AAAA,MACnB,qBAAqB;AAAA,IACvB,CAAC;AAAA,EACH,GAAG,CAAC,CAAC;AAEL,YAAU,MAAM;AACd,UAAM,mBAAmB,CAAC,UAAiC;AACzD,UACE,OAAO,MAAM,SAAS,YACtB,CAAC,MAAM,QACP,EAAE,UAAU,MAAM,SAClB,EAAE,YAAY,MAAM;AAEpB;AACF,UAAI,MAAM,KAAK,SAAS,eAAgB;AACxC,UAAI,MAAM,KAAK,WAAW,cAAe;AACzC,aAAO,QAAQ;AAAA,IACjB;AACA,WAAO,iBAAiB,WAAW,gBAAgB;AAEnD,WAAO,MAAM;AACX,aAAO,oBAAoB,WAAW,gBAAgB;AAAA,IACxD;AAAA,EACF,GAAG,CAAC,MAAM,CAAC;AAEX,SAAO;AACT;","names":[]}
1
+ {"version":3,"file":"Preview.js","sourceRoot":"","sources":["../../src/components/Preview.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAEnD,MAAM,CAAC,MAAM,OAAO,GAAa,GAAG,EAAE;IACpC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,eAAe,CAAC,GAAG,EAAE;QACnB,qBAAqB,CAAC,IAAI,CAAC;YACzB,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,IAAI;YACf,iBAAiB,EAAE,IAAI;YACvB,mBAAmB,EAAE,IAAI;SAC1B,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,gBAAgB,GAAG,CAAC,KAA4B,EAAE,EAAE;YACxD,IACE,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAC9B,CAAC,KAAK,CAAC,IAAI;gBACX,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC;gBACvB,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC;gBAEzB,OAAO;YACT,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc;gBAAE,OAAO;YAC/C,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,aAAa;gBAAE,OAAO;YAChD,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QAErD,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QAC1D,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { ISvgData } from '@se-studio/core-data-types';
2
+ import { type IImageProps } from './Visual';
3
+ declare function SvgComponent({ image, className, style, ...other }: {
4
+ image: ISvgData;
5
+ } & Omit<IImageProps, 'analytics' | 'componentLabel'>): import("react/jsx-runtime").JSX.Element;
6
+ export default SvgComponent;
7
+ //# sourceMappingURL=SvgComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SvgComponent.d.ts","sourceRoot":"","sources":["../../src/components/SvgComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAElE,iBAAS,YAAY,CAAC,EACpB,KAAK,EACL,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE;IAAE,KAAK,EAAE,QAAQ,CAAA;CAAE,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,gBAAgB,CAAC,2CAWzE;AAED,eAAe,YAAY,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { calculateCropDetails } from './Visual';
3
+ function SvgComponent({ image, className, style, ...other }) {
4
+ const cropProperties = calculateCropDetails(image);
5
+ return (_jsx("div", { className: className, style: { ...style, ...cropProperties }, dangerouslySetInnerHTML: { __html: image.data }, ...other }));
6
+ }
7
+ export default SvgComponent;
8
+ //# sourceMappingURL=SvgComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SvgComponent.js","sourceRoot":"","sources":["../../src/components/SvgComponent.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAoB,MAAM,UAAU,CAAC;AAElE,SAAS,YAAY,CAAC,EACpB,KAAK,EACL,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACgE;IACxE,MAAM,cAAc,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,CACL,cACE,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,cAAc,EAAE,EAEtC,uBAAuB,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,KAC3C,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,eAAe,YAAY,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { ISvgImage } from '@se-studio/core-data-types';
2
+ import { type IImageProps } from './Visual';
3
+ declare function SvgImageComponent({ image, loading, priority, className, style, }: {
4
+ image: ISvgImage;
5
+ } & Omit<IImageProps, 'analytics' | 'componentLabel'>): import("react/jsx-runtime").JSX.Element;
6
+ export default SvgImageComponent;
7
+ //# sourceMappingURL=SvgImageComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SvgImageComponent.d.ts","sourceRoot":"","sources":["../../src/components/SvgImageComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAElE,iBAAS,iBAAiB,CAAC,EACzB,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,KAAK,GACN,EAAE;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,gBAAgB,CAAC,2CAiB1E;AAED,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import Image from 'next/image';
3
+ import { calculateCropDetails } from './Visual';
4
+ function SvgImageComponent({ image, loading, priority, className, style, }) {
5
+ const { svgSrc, name, width, height, description } = image;
6
+ const cropProperties = calculateCropDetails(image);
7
+ return (_jsx(Image, { src: svgSrc, alt: description ?? name, width: width, height: height, style: { ...style, ...cropProperties }, loading: loading, className: className, unoptimized: true, priority: priority }));
8
+ }
9
+ export default SvgImageComponent;
10
+ //# sourceMappingURL=SvgImageComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SvgImageComponent.js","sourceRoot":"","sources":["../../src/components/SvgImageComponent.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAoB,MAAM,UAAU,CAAC;AAElE,SAAS,iBAAiB,CAAC,EACzB,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,KAAK,GACoE;IACzE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAC3D,MAAM,cAAc,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAEnD,OAAO,CACL,KAAC,KAAK,IACJ,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,WAAW,IAAI,IAAI,EACxB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,cAAc,EAAE,EACtC,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,IAAI,EACjB,QAAQ,EAAE,QAAQ,GAClB,CACH,CAAC;AACJ,CAAC;AAED,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { DetailedHTMLProps, VideoHTMLAttributes } from 'react';
2
+ import type { IVisualProps } from './Visual';
3
+ export type IVideoProps = Pick<DetailedHTMLProps<VideoHTMLAttributes<HTMLVideoElement>, HTMLVideoElement>, 'muted' | 'controls' | 'style' | 'poster' | 'autoPlay'> & {
4
+ noPoster?: boolean;
5
+ } & IVisualProps;
6
+ //# sourceMappingURL=Video.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Video.d.ts","sourceRoot":"","sources":["../../src/components/Video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,MAAM,MAAM,WAAW,GAAG,IAAI,CAC5B,iBAAiB,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,EAC1E,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CACvD,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,YAAY,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Video.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Video.js","sourceRoot":"","sources":["../../src/components/Video.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { type IAnalyticsContext, type IExternalVideo, type IFullVideo, type ILocalVideo } from '@se-studio/core-data-types';
2
+ import type { IVideoProps } from './Video';
3
+ declare function VideoComponent({ video, ...props }: {
4
+ video: ILocalVideo | IExternalVideo | IFullVideo;
5
+ analyticsContext: IAnalyticsContext | null | undefined;
6
+ componentLabel: string | null | undefined;
7
+ } & IVideoProps): import("react/jsx-runtime").JSX.Element;
8
+ export default VideoComponent;
9
+ //# sourceMappingURL=VideoComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VideoComponent.d.ts","sourceRoot":"","sources":["../../src/components/VideoComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,WAAW,EAEjB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,iBAAS,cAAc,CAAC,EACtB,KAAK,EACL,GAAG,KAAK,EACT,EAAE;IACD,KAAK,EAAE,WAAW,GAAG,cAAc,GAAG,UAAU,CAAC;IACjD,gBAAgB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IACvD,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3C,GAAG,WAAW,2CAUd;AAED,eAAe,cAAc,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { isLocalVideo, } from '@se-studio/core-data-types';
3
+ import LocalVideo from './LocalVideo';
4
+ function VideoComponent({ video, ...props }) {
5
+ if (isLocalVideo(video)) {
6
+ return _jsx(LocalVideo, { video: video, ...props });
7
+ }
8
+ return (_jsxs("div", { className: props.className, style: props.style, children: ["Video Component", _jsxs("pre", { children: [JSON.stringify(video, null, 2), " "] })] }));
9
+ }
10
+ export default VideoComponent;
11
+ //# sourceMappingURL=VideoComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VideoComponent.js","sourceRoot":"","sources":["../../src/components/VideoComponent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAKL,YAAY,GACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,UAAU,MAAM,cAAc,CAAC;AAGtC,SAAS,cAAc,CAAC,EACtB,KAAK,EACL,GAAG,KAAK,EAKK;IACb,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,KAAM,KAAK,GAAI,CAAC;IACjD,CAAC;IACD,OAAO,CACL,eAAK,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,gCAEjD,0BAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,SAAQ,IACxC,CACP,CAAC;AACJ,CAAC;AAED,eAAe,cAAc,CAAC"}
@@ -0,0 +1,30 @@
1
+ import type { IAnalyticsContext, IVisual, IVisualCommon, IVisualSizes } from '@se-studio/core-data-types';
2
+ import type { PlaceholderValue } from 'next/dist/shared/lib/get-img-props';
3
+ import type { CSSProperties } from 'react';
4
+ export type IVisualProps = {
5
+ className?: string;
6
+ style?: Omit<CSSProperties, 'objectFit' | 'objectPosition'>;
7
+ autoPlay?: boolean;
8
+ loop?: boolean;
9
+ loopDelay?: number;
10
+ muted?: boolean;
11
+ controls?: boolean;
12
+ loading?: 'eager' | 'lazy' | undefined;
13
+ priority?: boolean;
14
+ fetchPriority?: 'high' | 'low' | undefined;
15
+ visualSizes?: IVisualSizes;
16
+ fullPlayer?: boolean;
17
+ analyticsContext?: IAnalyticsContext;
18
+ componentLabel?: string | null;
19
+ };
20
+ export type IImageProps = IVisualProps & {
21
+ placeholder?: PlaceholderValue;
22
+ priority?: boolean;
23
+ };
24
+ export declare function calculateCropDetails(details: Omit<IVisualCommon, 'id' | 'type' | 'name' | 'nameAsCaption'>): Pick<CSSProperties, 'objectFit' | 'objectPosition'>;
25
+ export declare function calculateImagePriority(index: number): {
26
+ priority: boolean;
27
+ fetchPriority: 'high' | 'low' | undefined;
28
+ } | undefined;
29
+ export declare function calculateImageWidthStyleVariable(visual?: IVisual, baseWidth?: number | null): CSSProperties | undefined;
30
+ //# sourceMappingURL=Visual.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Visual.d.ts","sourceRoot":"","sources":["../../src/components/Visual.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,iBAAiB,EACjB,OAAO,EACP,aAAa,EACb,YAAY,EAEb,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,GAAG,gBAAgB,CAAC,CAAC;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;IAC3C,WAAW,CAAC,EAAE,YAAY,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,YAAY,GAAG;IACvC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAwBF,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,eAAe,CAAC,GACrE,IAAI,CAAC,aAAa,EAAE,WAAW,GAAG,gBAAgB,CAAC,CAarD;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,GACZ;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,aAAa,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAAA;CAAE,GAAG,SAAS,CAK9E;AAkBD,wBAAgB,gCAAgC,CAC9C,MAAM,CAAC,EAAE,OAAO,EAChB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,aAAa,GAAG,SAAS,CAO3B"}
@@ -0,0 +1,57 @@
1
+ function calculateVertical(position) {
2
+ switch (position) {
3
+ case 'Bottom':
4
+ return 'bottom';
5
+ case 'Top':
6
+ return 'top';
7
+ default:
8
+ return 'center';
9
+ }
10
+ }
11
+ function calculateHorizontal(position) {
12
+ switch (position) {
13
+ case 'Left':
14
+ return 'left';
15
+ case 'Right':
16
+ return 'right';
17
+ default:
18
+ return 'center';
19
+ }
20
+ }
21
+ export function calculateCropDetails(details) {
22
+ const { verticalCropPosition, horizontalCropPosition, dontCrop } = details;
23
+ if (dontCrop) {
24
+ return { objectFit: 'contain' };
25
+ }
26
+ return {
27
+ objectFit: 'cover',
28
+ objectPosition: `${calculateHorizontal(horizontalCropPosition)} ${calculateVertical(verticalCropPosition)}`,
29
+ };
30
+ }
31
+ export function calculateImagePriority(index) {
32
+ if (index === 0) {
33
+ return { priority: true, fetchPriority: 'high' };
34
+ }
35
+ return undefined;
36
+ }
37
+ function calculateRealWidthPercent(visual, baseWidth) {
38
+ const widthPercent = visual?.image?.widthPercent ?? visual?.animation?.widthPercent ?? visual?.video?.widthPercent;
39
+ if (!widthPercent) {
40
+ if (baseWidth) {
41
+ return baseWidth;
42
+ }
43
+ return undefined;
44
+ }
45
+ if (baseWidth) {
46
+ return (widthPercent / 100) * (baseWidth / 100) * 100;
47
+ }
48
+ return widthPercent;
49
+ }
50
+ export function calculateImageWidthStyleVariable(visual, baseWidth) {
51
+ const widthPercent = calculateRealWidthPercent(visual, baseWidth);
52
+ if (widthPercent === undefined) {
53
+ return undefined;
54
+ }
55
+ return { '--image-width': `${widthPercent}%` };
56
+ }
57
+ //# sourceMappingURL=Visual.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Visual.js","sourceRoot":"","sources":["../../src/components/Visual.ts"],"names":[],"mappings":"AAiCA,SAAS,iBAAiB,CAAC,QAA0B;IACnD,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,KAAK;YACR,OAAO,KAAK,CAAC;QACf;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,QAA4B;IACvD,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,OAAsE;IAEtE,MAAM,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAE3E,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IAClC,CAAC;IAED,OAAO;QACL,SAAS,EAAE,OAAO;QAClB,cAAc,EAAE,GAAG,mBAAmB,CACpC,sBAAsB,CACvB,IAAI,iBAAiB,CAAC,oBAAoB,CAAC,EAAE;KAC/C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,KAAa;IAEb,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAChB,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC;IACnD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,yBAAyB,CAAC,MAAgB,EAAE,SAAyB;IAC5E,MAAM,YAAY,GAChB,MAAM,EAAE,KAAK,EAAE,YAAY,IAAI,MAAM,EAAE,SAAS,EAAE,YAAY,IAAI,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC;IAEhG,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CAAC,YAAY,GAAG,GAAG,CAAC,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IACxD,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC9C,MAAgB,EAChB,SAAyB;IAEzB,MAAM,YAAY,GAAG,yBAAyB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAClE,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,EAAE,eAAe,EAAE,GAAG,YAAY,GAAG,EAAmB,CAAC;AAClE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { IVisual } from '@se-studio/core-data-types';
2
+ import type React from 'react';
3
+ import type { IVisualProps } from './Visual';
4
+ export declare const Visual: React.FC<{
5
+ visual: IVisual;
6
+ } & IVisualProps>;
7
+ //# sourceMappingURL=VisualComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VisualComponent.d.ts","sourceRoot":"","sources":["../../src/components/VisualComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GAAG,YAAY,CAmD/D,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { UnsupportedWarning } from '../utils/UnsupportedWarning';
3
+ import Animation from './AnimationComponent';
4
+ import ImageComponent from './ImageComponent';
5
+ import VideoComponent from './VideoComponent';
6
+ export const Visual = ({ visual, muted, controls, autoPlay, visualSizes, fullPlayer, loop, loopDelay, analyticsContext, componentLabel, ...props }) => {
7
+ const { animation, image, video } = visual;
8
+ if (animation) {
9
+ return (_jsx(Animation, { animation: animation, autoPlay: autoPlay, loop: loop, loopDelay: loopDelay, ...props }));
10
+ }
11
+ if (video) {
12
+ return (_jsx(VideoComponent, { video: video, autoPlay: autoPlay, muted: muted, controls: controls, visualSizes: visualSizes, fullPlayer: fullPlayer, loop: loop, analyticsContext: analyticsContext, componentLabel: componentLabel, ...props }));
13
+ }
14
+ if (image) {
15
+ return _jsx(ImageComponent, { image: image, visualSizes: visualSizes, ...props });
16
+ }
17
+ return (_jsx(UnsupportedWarning, { className: props.className, style: props.style, children: "Not supporting non images yet" }));
18
+ };
19
+ //# sourceMappingURL=VisualComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VisualComponent.js","sourceRoot":"","sources":["../../src/components/VisualComponent.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAC7C,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAG9C,MAAM,CAAC,MAAM,MAAM,GAAiD,CAAC,EACnE,MAAM,EACN,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,UAAU,EACV,IAAI,EACJ,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,GAAG,KAAK,EACT,EAAE,EAAE;IACH,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IAC3C,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CACL,KAAC,SAAS,IACR,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,KAChB,KAAK,GACT,CACH,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CACL,KAAC,cAAc,IACb,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,EACV,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,KAC1B,KAAK,GACT,CACH,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,KAAC,cAAc,IAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,KAAM,KAAK,GAAI,CAAC;IAC/E,CAAC;IAED,OAAO,CACL,KAAC,kBAAkB,IAAC,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,8CAE7C,CACtB,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { IContentfulRichText } from '@se-studio/contentful-rest-api';
2
+ import type { IContentContext } from '@se-studio/core-data-types';
3
+ import { type CmsRendererConfig } from '@se-studio/core-ui';
4
+ import type { CSSProperties } from 'react';
5
+ export declare const RtfOrString: React.FC<{
6
+ id?: string;
7
+ content: IContentfulRichText | string;
8
+ className?: string;
9
+ style?: CSSProperties;
10
+ rendererConfig?: CmsRendererConfig;
11
+ contentContext?: IContentContext;
12
+ }>;
13
+ //# sourceMappingURL=RtfOrString.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RtfOrString.d.ts","sourceRoot":"","sources":["../../src/elements/RtfOrString.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,KAAK,iBAAiB,EAAO,MAAM,oBAAoB,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;IACjC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,mBAAmB,GAAG,MAAM,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,cAAc,CAAC,EAAE,eAAe,CAAC;CAClC,CA+BA,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { RTF } from '@se-studio/core-ui';
3
+ export const RtfOrString = ({ id, content, className, style, rendererConfig, contentContext, ...other }) => {
4
+ if (typeof content === 'string') {
5
+ return (_jsx("div", { className: className, style: style, ...other, children: content }));
6
+ }
7
+ const json = content.json;
8
+ if (json) {
9
+ return (_jsx(RTF, { content: json, className: className, style: style, rendererConfig: rendererConfig, contentContext: contentContext, ...other }));
10
+ }
11
+ return null;
12
+ };
13
+ //# sourceMappingURL=RtfOrString.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RtfOrString.js","sourceRoot":"","sources":["../../src/elements/RtfOrString.tsx"],"names":[],"mappings":";AAEA,OAAO,EAA0B,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAGjE,MAAM,CAAC,MAAM,WAAW,GAOnB,CAAC,EACJ,EAAE,EACF,OAAO,EACP,SAAS,EACT,KAAK,EACL,cAAc,EACd,cAAc,EACd,GAAG,KAAK,EACT,EAA6B,EAAE;IAC9B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,CACL,cAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,KAAM,KAAK,YAC/C,OAAO,GACJ,CACP,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAI,OAA+B,CAAC,IAAI,CAAC;IACnD,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CACL,KAAC,GAAG,IACF,OAAO,EAAE,IAAI,EACb,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACZ,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,KAC1B,KAAK,GACT,CACH,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { type LinkProps } from 'next/link';
2
+ import type React from 'react';
3
+ import type { PropsWithChildren } from 'react';
4
+ export declare const UtmLink: React.FC<PropsWithChildren<Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, keyof LinkProps<string>> & LinkProps<string> & React.RefAttributes<HTMLAnchorElement> & {
5
+ internalOnly?: boolean;
6
+ }>>;
7
+ //# sourceMappingURL=UtmLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UtmLink.d.ts","sourceRoot":"","sources":["../../src/elements/UtmLink.tsx"],"names":[],"mappings":"AAIA,OAAa,EAAE,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAG/C,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAC5B,iBAAiB,CACf,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,GAC1E,SAAS,CAAC,MAAM,CAAC,GACjB,KAAK,CAAC,aAAa,CAAC,iBAAiB,CAAC,GAAG;IAAE,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,CACtE,CAmBF,CAAC"}
@@ -0,0 +1,24 @@
1
+ 'use client';
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import Link from 'next/link';
4
+ import { useEffect, useState } from 'react';
5
+ export const UtmLink = ({ href, internalOnly, ...props }) => {
6
+ const [link, setLink] = useState(href);
7
+ useEffect(() => {
8
+ const search = document?.location?.search;
9
+ if (search) {
10
+ if (typeof href === 'string') {
11
+ if ((!internalOnly || href.startsWith('/')) && href.indexOf('?') < 0) {
12
+ setLink(href + search);
13
+ }
14
+ }
15
+ else {
16
+ if ((!internalOnly || href.href?.startsWith('/')) && !href.search) {
17
+ setLink(href.href + search);
18
+ }
19
+ }
20
+ }
21
+ }, [href, internalOnly]);
22
+ return _jsx(Link, { href: link, ...props });
23
+ };
24
+ //# sourceMappingURL=UtmLink.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UtmLink.js","sourceRoot":"","sources":["../../src/elements/UtmLink.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAIb,OAAO,IAAwB,MAAM,WAAW,CAAC;AAGjD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,MAAM,CAAC,MAAM,OAAO,GAMhB,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACvC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,IAA0B,CAAC,CAAC;IAC7D,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,MAAM,GAAG,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC;QAC1C,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,IAAI,CAAC,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACrE,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBAClE,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAEzB,OAAO,KAAC,IAAI,IAAC,IAAI,EAAE,IAAa,KAAM,KAAK,GAAI,CAAC;AAClD,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { LinkProps } from 'next/link';
2
+ import type React from 'react';
3
+ import type { PropsWithChildren } from 'react';
4
+ export declare const UtmLinkOrDiv: React.FC<PropsWithChildren<Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, keyof LinkProps<Record<string, unknown>>> & Omit<LinkProps<Record<string, unknown>>, 'href'> & Partial<Pick<LinkProps<Record<string, unknown>>, 'href'>> & React.RefAttributes<HTMLAnchorElement>>>;
5
+ //# sourceMappingURL=UtmLinkOrDiv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UtmLinkOrDiv.d.ts","sourceRoot":"","sources":["../../src/elements/UtmLinkOrDiv.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAG/C,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CACjC,iBAAiB,CACf,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,MAAM,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,GAC3F,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,GAChD,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GACzD,KAAK,CAAC,aAAa,CAAC,iBAAiB,CAAC,CACzC,CAcF,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { UtmLink } from './UtmLink';
3
+ export const UtmLinkOrDiv = ({ href, className, style, children, ...props }) => {
4
+ if (href) {
5
+ return (_jsx(UtmLink, { href: href, className: className, style: style, ...props, children: children }));
6
+ }
7
+ return (_jsx("div", { className: className, style: style, children: children }));
8
+ };
9
+ //# sourceMappingURL=UtmLinkOrDiv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UtmLinkOrDiv.js","sourceRoot":"","sources":["../../src/elements/UtmLinkOrDiv.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,CAAC,MAAM,YAAY,GAOrB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACrD,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CACL,KAAC,OAAO,IAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,KAAM,KAAK,YAC/D,QAAQ,GACD,CACX,CAAC;IACJ,CAAC;IACD,OAAO,CACL,cAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,YACpC,QAAQ,GACL,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type React from 'react';
2
+ import type { CollectionConfig, ComponentConfig } from '../utils/componentUtils';
3
+ import type { IEmbeddableCollectionContext, IEmbeddableComponentContext } from './EmbeddableContext';
4
+ export declare function BuildEmbedFromComponentConfig<TProps extends Record<string, unknown>, TComponentConfig extends ComponentConfig>(Component: React.FC<TProps>, componentConfig: TComponentConfig): React.FC<IEmbeddableComponentContext>;
5
+ export declare function BuildEmbedFromCollectionConfig<TProps extends Record<string, unknown>, TCollectionConfig extends CollectionConfig>(Collection: React.FC<TProps>, collectionConfig: TCollectionConfig): React.FC<IEmbeddableCollectionContext>;
6
+ //# sourceMappingURL=BuildEmbed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BuildEmbed.d.ts","sourceRoot":"","sources":["../../src/embeddable/BuildEmbed.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAEjF,OAAO,KAAK,EACV,4BAA4B,EAC5B,2BAA2B,EAC5B,MAAM,qBAAqB,CAAC;AAwB7B,wBAAgB,6BAA6B,CAC3C,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACtC,gBAAgB,SAAS,eAAe,EAExC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAC3B,eAAe,EAAE,gBAAgB,GAChC,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAAC,CAKvC;AAwBD,wBAAgB,8BAA8B,CAC5C,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACtC,iBAAiB,SAAS,gBAAgB,EAE1C,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAC5B,gBAAgB,EAAE,iBAAiB,GAClC,KAAK,CAAC,EAAE,CAAC,4BAA4B,CAAC,CAKxC"}
@@ -0,0 +1,15 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { createCollectionProps, createComponentProps } from '../utils/componentUtils';
3
+ export function BuildEmbedFromComponentConfig(Component, componentConfig) {
4
+ return ({ information, pageContext }) => {
5
+ const props = createComponentProps(componentConfig, information, pageContext);
6
+ return _jsx(Component, { ...props });
7
+ };
8
+ }
9
+ export function BuildEmbedFromCollectionConfig(Collection, collectionConfig) {
10
+ return ({ information, pageContext }) => {
11
+ const props = createCollectionProps(collectionConfig, information, pageContext);
12
+ return _jsx(Collection, { ...props });
13
+ };
14
+ }
15
+ //# sourceMappingURL=BuildEmbed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BuildEmbed.js","sourceRoot":"","sources":["../../src/embeddable/BuildEmbed.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AA4BtF,MAAM,UAAU,6BAA6B,CAI3C,SAA2B,EAC3B,eAAiC;IAEjC,OAAO,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE;QACtC,MAAM,KAAK,GAAG,oBAAoB,CAAC,eAAe,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAC9E,OAAO,KAAC,SAAS,OAAM,KAA2B,GAAI,CAAC;IACzD,CAAC,CAAC;AACJ,CAAC;AAwBD,MAAM,UAAU,8BAA8B,CAI5C,UAA4B,EAC5B,gBAAmC;IAEnC,OAAO,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE;QACtC,MAAM,KAAK,GAAG,qBAAqB,CAAC,gBAAgB,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAChF,OAAO,KAAC,UAAU,OAAM,KAA2B,GAAI,CAAC;IAC1D,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { IBaseCollection, IBaseComponent, IPageContext } from '@se-studio/core-data-types';
2
+ export interface IEmbeddableComponentContext {
3
+ information: IBaseComponent;
4
+ parentIndex: number;
5
+ parentId: string;
6
+ pageContext: IPageContext;
7
+ }
8
+ export interface IEmbeddableCollectionContext {
9
+ information: IBaseCollection;
10
+ parentIndex: number;
11
+ parentId: string;
12
+ pageContext: IPageContext;
13
+ }
14
+ //# sourceMappingURL=EmbeddableContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbeddableContext.d.ts","sourceRoot":"","sources":["../../src/embeddable/EmbeddableContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAMhG,MAAM,WAAW,2BAA2B;IAC1C,WAAW,EAAE,cAAc,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,YAAY,CAAC;CAC3B;AAMD,MAAM,WAAW,4BAA4B;IAC3C,WAAW,EAAE,eAAe,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,YAAY,CAAC;CAC3B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=EmbeddableContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbeddableContext.js","sourceRoot":"","sources":["../../src/embeddable/EmbeddableContext.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import type React from 'react';
2
+ import type { IEmbeddableCollectionContext, IEmbeddableComponentContext } from './EmbeddableContext';
3
+ export type EmbeddableComponentMap = Partial<Record<string, React.FC<IEmbeddableComponentContext>>>;
4
+ export type EmbeddableCollectionMap = Partial<Record<string, React.FC<IEmbeddableCollectionContext>>>;
5
+ export declare function isComponentEmbeddable(componentType: string, embeddableMap: EmbeddableComponentMap): boolean;
6
+ export declare function isCollectionEmbeddable(collectionType: string, embeddableMap: EmbeddableCollectionMap): boolean;
7
+ //# sourceMappingURL=EmbeddableMaps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbeddableMaps.d.ts","sourceRoot":"","sources":["../../src/embeddable/EmbeddableMaps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EACV,4BAA4B,EAC5B,2BAA2B,EAC5B,MAAM,qBAAqB,CAAC;AAgB7B,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC;AAkBpG,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAC3C,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,4BAA4B,CAAC,CAAC,CACvD,CAAC;AAKF,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,sBAAsB,GACpC,OAAO,CAET;AAKD,wBAAgB,sBAAsB,CACpC,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,uBAAuB,GACrC,OAAO,CAET"}
@@ -0,0 +1,7 @@
1
+ export function isComponentEmbeddable(componentType, embeddableMap) {
2
+ return componentType in embeddableMap;
3
+ }
4
+ export function isCollectionEmbeddable(collectionType, embeddableMap) {
5
+ return collectionType in embeddableMap;
6
+ }
7
+ //# sourceMappingURL=EmbeddableMaps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbeddableMaps.js","sourceRoot":"","sources":["../../src/embeddable/EmbeddableMaps.ts"],"names":[],"mappings":"AA6CA,MAAM,UAAU,qBAAqB,CACnC,aAAqB,EACrB,aAAqC;IAErC,OAAO,aAAa,IAAI,aAAa,CAAC;AACxC,CAAC;AAKD,MAAM,UAAU,sBAAsB,CACpC,cAAsB,EACtB,aAAsC;IAEtC,OAAO,cAAc,IAAI,aAAa,CAAC;AACzC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { type IAnalyticsContext, type IResponsiveVisual } from '@se-studio/core-data-types';
2
+ interface BackgroundMediaProps {
3
+ responsiveVisual?: IResponsiveVisual;
4
+ overlayOpacity?: number | null;
5
+ className?: string;
6
+ analyticsContext?: IAnalyticsContext;
7
+ componentLabel?: string | null;
8
+ }
9
+ export declare function BackgroundMedia({ responsiveVisual, overlayOpacity, className, analyticsContext, componentLabel, }: BackgroundMediaProps): import("react/jsx-runtime").JSX.Element | null;
10
+ export {};
11
+ //# sourceMappingURL=BackgroundMedia.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BackgroundMedia.d.ts","sourceRoot":"","sources":["../../src/framework/BackgroundMedia.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EAEvB,MAAM,4BAA4B,CAAC;AAIpC,UAAU,oBAAoB;IAC5B,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,wBAAgB,eAAe,CAAC,EAC9B,gBAAgB,EAChB,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,cAAc,GACf,EAAE,oBAAoB,kDA2DtB"}
@@ -0,0 +1,19 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { isVisualVideo, } from '@se-studio/core-data-types';
3
+ import { Visual } from '../components/VisualComponent';
4
+ import { cn } from '../utils/cn';
5
+ export function BackgroundMedia({ responsiveVisual, overlayOpacity, className, analyticsContext, componentLabel, }) {
6
+ if (!responsiveVisual)
7
+ return null;
8
+ const { visual, mobileVisual, hideVisual, hideMobileVisual } = responsiveVisual;
9
+ const hasOverlay = overlayOpacity && overlayOpacity > 0;
10
+ const overlayStyle = hasOverlay
11
+ ? {
12
+ backgroundColor: `rgba(0, 0, 0, ${overlayOpacity / 100})`,
13
+ }
14
+ : undefined;
15
+ const isVideo = isVisualVideo(visual);
16
+ const isMobileVideo = isVisualVideo(mobileVisual);
17
+ return (_jsxs("div", { className: cn('absolute inset-0 overflow-hidden', className), children: [!hideVisual && (_jsx("div", { className: cn('size-full', (hideMobileVisual || mobileVisual) && 'max-laptop:hidden'), children: _jsx(Visual, { visual: visual, className: "size-full object-cover object-center", autoPlay: isVideo, muted: isVideo, loop: isVideo, controls: false, loading: "eager", priority: true, analyticsContext: analyticsContext, componentLabel: componentLabel }) })), mobileVisual && !hideMobileVisual && (_jsx("div", { className: "size-full block tablet:hidden", children: _jsx(Visual, { visual: mobileVisual, className: "size-full object-cover object-center", autoPlay: isMobileVideo, muted: isMobileVideo, loop: isMobileVideo, controls: false, loading: "eager", priority: true, analyticsContext: analyticsContext, componentLabel: componentLabel }) })), hasOverlay && _jsx("div", { className: "absolute inset-0", style: overlayStyle, "aria-hidden": "true" })] }));
18
+ }
19
+ //# sourceMappingURL=BackgroundMedia.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BackgroundMedia.js","sourceRoot":"","sources":["../../src/framework/BackgroundMedia.tsx"],"names":[],"mappings":";AAAA,OAAO,EAGL,aAAa,GACd,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAUjC,MAAM,UAAU,eAAe,CAAC,EAC9B,gBAAgB,EAChB,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,cAAc,GACO;IACrB,IAAI,CAAC,gBAAgB;QAAE,OAAO,IAAI,CAAC;IAEnC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,CAAC;IAEhF,MAAM,UAAU,GAAG,cAAc,IAAI,cAAc,GAAG,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,UAAU;QAC7B,CAAC,CAAC;YACE,eAAe,EAAE,iBAAiB,cAAc,GAAG,GAAG,GAAG;SAC1D;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,aAAa,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;IAElD,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,kCAAkC,EAAE,SAAS,CAAC,aAE9D,CAAC,UAAU,IAAI,CACd,cAAK,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC,gBAAgB,IAAI,YAAY,CAAC,IAAI,mBAAmB,CAAC,YACxF,KAAC,MAAM,IACL,MAAM,EAAE,MAAM,EACd,SAAS,EAAC,sCAAsC,EAEhD,QAAQ,EAAE,OAAO,EACjB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,KAAK,EACf,OAAO,EAAC,OAAO,EACf,QAAQ,EAAE,IAAI,EACd,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,GACE,CACP,EAGA,YAAY,IAAI,CAAC,gBAAgB,IAAI,CACpC,cAAK,SAAS,EAAC,+BAA+B,YAC5C,KAAC,MAAM,IACL,MAAM,EAAE,YAAY,EACpB,SAAS,EAAC,sCAAsC,EAEhD,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,KAAK,EACf,OAAO,EAAC,OAAO,EACf,QAAQ,EAAE,IAAI,EACd,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,GACE,CACP,EAGA,UAAU,IAAI,cAAK,SAAS,EAAC,kBAAkB,EAAC,KAAK,EAAE,YAAY,iBAAc,MAAM,GAAG,IACvF,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { IBaseContent } from '@se-studio/core-data-types';
2
+ export type ColourChange = {
3
+ all?: string;
4
+ top?: string;
5
+ bottom?: string;
6
+ };
7
+ export declare function calculateColourChanges(previousComponent?: IBaseContent, nextComponent?: IBaseContent, backgroundColour?: string): ColourChange | undefined;
8
+ //# sourceMappingURL=ColourChange.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColourChange.d.ts","sourceRoot":"","sources":["../../src/framework/ColourChange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,wBAAgB,sBAAsB,CACpC,iBAAiB,CAAC,EAAE,YAAY,EAChC,aAAa,CAAC,EAAE,YAAY,EAC5B,gBAAgB,CAAC,EAAE,MAAM,GACxB,YAAY,GAAG,SAAS,CAS1B"}
@@ -0,0 +1,13 @@
1
+ export function calculateColourChanges(previousComponent, nextComponent, backgroundColour) {
2
+ if (backgroundColour)
3
+ return { all: backgroundColour };
4
+ const top = previousComponent?.backgroundColour;
5
+ const bottom = nextComponent?.backgroundColour;
6
+ if (top || bottom) {
7
+ if (top === bottom)
8
+ return undefined;
9
+ return { top, bottom };
10
+ }
11
+ return undefined;
12
+ }
13
+ //# sourceMappingURL=ColourChange.js.map