@everymatrix/general-footer-template 1.59.2 → 1.60.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/cjs/custom-clock.cjs.entry.js +1 -1
  2. package/dist/cjs/custom-content-section.cjs.entry.js +2 -2
  3. package/dist/cjs/general-footer-template.cjs.entry.js +2 -2
  4. package/dist/cjs/general-footer-template.cjs.js +2 -2
  5. package/dist/cjs/image-list.cjs.entry.js +29 -4
  6. package/dist/cjs/{index-a7f717fa.js → index-a589a1e7.js} +10 -1
  7. package/dist/cjs/link-section-list.cjs.entry.js +29 -4
  8. package/dist/cjs/loader.cjs.js +2 -2
  9. package/dist/cjs/ui-skeleton.cjs.entry.js +148 -0
  10. package/dist/collection/collection-manifest.json +8 -1
  11. package/dist/collection/components/custom-content-section/custom-content-section.js +2 -1
  12. package/dist/collection/components/general-footer-template/demo-footer.css +31 -0
  13. package/dist/collection/components/general-footer-template/general-footer-template.js +1 -0
  14. package/dist/collection/components/image-list/image-list.css +10 -0
  15. package/dist/collection/components/image-list/image-list.js +32 -2
  16. package/dist/collection/components/link-section-list/link-section-list.js +33 -3
  17. package/dist/esm/custom-clock.entry.js +1 -1
  18. package/dist/esm/custom-content-section.entry.js +2 -2
  19. package/dist/esm/general-footer-template.entry.js +2 -2
  20. package/dist/esm/general-footer-template.js +3 -3
  21. package/dist/esm/image-list.entry.js +29 -4
  22. package/dist/esm/{index-e6e68604.js → index-0dd7df9f.js} +10 -2
  23. package/dist/esm/link-section-list.entry.js +29 -4
  24. package/dist/esm/loader.js +3 -3
  25. package/dist/esm/ui-skeleton.entry.js +144 -0
  26. package/dist/general-footer-template/general-footer-template.esm.js +1 -1
  27. package/dist/general-footer-template/p-13856e75.entry.js +1 -0
  28. package/dist/general-footer-template/p-15f41686.entry.js +1 -0
  29. package/dist/general-footer-template/p-2b4944f2.js +2 -0
  30. package/dist/general-footer-template/{p-5f13c34b.entry.js → p-46fff036.entry.js} +2 -2
  31. package/dist/general-footer-template/{p-f12f5263.entry.js → p-5816ee0c.entry.js} +1 -1
  32. package/dist/general-footer-template/p-8665d213.entry.js +1 -0
  33. package/dist/general-footer-template/p-abe53f3b.entry.js +1 -0
  34. package/dist/types/components/custom-content-section/custom-content-section.d.ts +1 -0
  35. package/dist/types/components/general-footer-template/general-footer-template.d.ts +1 -0
  36. package/dist/types/components/image-list/image-list.d.ts +8 -0
  37. package/dist/types/components/link-section-list/link-section-list.d.ts +8 -0
  38. package/package.json +1 -1
  39. package/dist/general-footer-template/p-076550c8.entry.js +0 -1
  40. package/dist/general-footer-template/p-16bd4237.js +0 -2
  41. package/dist/general-footer-template/p-2879096a.entry.js +0 -1
  42. package/dist/general-footer-template/p-d7132f51.entry.js +0 -1
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-a7f717fa.js');
5
+ const index = require('./index-a589a1e7.js');
6
6
  const _commonjsHelpers = require('./_commonjsHelpers-0a7b82d9.js');
7
7
 
8
8
  const DEFAULT_LANGUAGE = 'en';
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index$2 = require('./index-a7f717fa.js');
5
+ const index$2 = require('./index-a589a1e7.js');
6
6
  const _commonjsHelpers = require('./_commonjsHelpers-0a7b82d9.js');
7
7
 
8
8
  var decode = {};
@@ -9550,7 +9550,7 @@ const CustomContentSection = class {
9550
9550
  a: ['href', 'target', 'rel']
9551
9551
  }
9552
9552
  });
9553
- return index$2.h("div", { key: '7cfcf732fff969c5bcd0b08a4b921ae3592732b3', class: "CustomContentSectionContainer" }, index$2.h("div", { key: 'c5cf9a5ada78c792ebb778d3d3084e0b0b938ed4', class: "CustomContentSectionWrapper" }, index$2.h("div", { key: 'abc8184b4eb9c97e0261bec4baebfb7e272cd3bb', class: "CustomContentSectionContent", innerHTML: clean }), this.repeaterContent ? index$2.h("image-list", { style: { width: "100%" }, repeaterContent: this.repeaterContent ? this.repeaterContent : null, "navigate-via-event": this.navigateViaEvent, "post-message-event": this.postMessageEvent }) : ''));
9553
+ return index$2.h("div", { key: '9990a716f474932b66644b13ec3ef378302dfaeb', class: "CustomContentSectionContainer" }, index$2.h("div", { key: '0ff21f48796f21dee167a686e3e346896a56cf71', class: "CustomContentSectionWrapper" }, index$2.h("div", { key: '6b8be4492fdb7f8c3b07545089a2e4dd47a1d8c8', class: "CustomContentSectionContent", innerHTML: clean }), this.repeaterContent ? index$2.h("image-list", { style: { width: "100%" }, repeaterContent: this.repeaterContent ? this.repeaterContent : null, "navigate-via-event": this.navigateViaEvent, "post-message-event": this.postMessageEvent }) : ''));
9554
9554
  }
9555
9555
  };
9556
9556
  CustomContentSection.style = CustomContentSectionStyle0;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-a7f717fa.js');
5
+ const index = require('./index-a589a1e7.js');
6
6
 
7
7
  /**
8
8
  * custom rules for component types
@@ -270,7 +270,7 @@ function setStreamStyling(stylingContainer, domain, subscription) {
270
270
  }
271
271
  }
272
272
 
273
- const demoFooterCss = ":host {\n display: block;\n}\n\n/* $-background-primary: #14202d; */\n* {\n font-family: sans-serif;\n}\n\nhtml,\nbody {\n margin: 0;\n padding: 0;\n font-family: inherit;\n}\n\n.FooterSectionContainer {\n color: var(--emw--footer-typography, var(--emw--color-thpography, #fff));\n padding: 15px 20px 0;\n}\n\n/* // FOOTER CONTAINER - only serves to be read as a container */\n.FooterContainer {\n container-type: inline-size;\n container-name: footerContainer;\n}\n\n.FooterGrid {\n background-color: var(--emw--footer-color-bg, var(--emw--color-background, #0E1511));\n display: grid;\n grid-template-rows: repeat(9, auto);\n grid-template-areas: \"one\" \"two\" \"three\" \"four\" \"five\" \"six\" \"seven\";\n}\n\n.FooterSectionContainer1 {\n position: relative;\n grid-area: one;\n}\n\n.FooterSectionContainer2 {\n position: relative;\n grid-area: two;\n}\n\n.FooterSectionContainer3 {\n position: relative;\n grid-area: three;\n}\n\n.FooterSectionContainer4 {\n position: relative;\n grid-area: four;\n}\n\n.FooterSectionContainer5 {\n grid-area: five;\n}\n\n.FooterSectionContainer6 {\n padding-top: 22px;\n grid-area: six;\n}\n\n.FooterSectionContainer7 {\n grid-area: seven;\n}\n\n/* // remove paddings */\n.FooterSectionContainer7 div {\n padding: 0;\n}\n\n@container (max-width: 750px) {\n .FooterSectionContainer3:after,\n .FooterSectionContainer2:after {\n position: absolute;\n content: \"\";\n height: 1px;\n width: 90%;\n background-color: var(--emw--color-gray-100, #444);\n }\n .FooterSectionContainer5 {\n grid-area: five;\n background-color: var(--emw--color-background-secondary, #060706);\n padding: 30px 0;\n font-size: var(--emw--font-size-medium, 16px);\n min-height: var(--emw--size-medium-plus, 100px);\n justify-self: center;\n }\n}\n/* // STYLES FOR TABLET / DESKTOP */\n@container (min-width: 750px) {\n .FooterGrid {\n background: var(--emw--footer-color-bg, var(--emw--color-background, #0E1511));\n display: grid;\n border-top: 5px solid var(--emw--footer-color-primary, var(--emw--color-primary, #22B04E));\n grid-template-rows: repeat(5, auto);\n grid-template-columns: 1fr 1fr 1fr 1fr;\n grid-template-areas: \"one two three four\" \"five five five five\" \"six six six six\" \"seven seven seven seven\";\n }\n .FooterSectionContainer1 {\n padding: 30px 40px;\n grid-area: one;\n background: var(--emw--color-background, #000000);\n }\n .FooterSectionContainer2 {\n grid-area: two;\n min-height: var(--emw--size-4x-medium, 500px);\n }\n .FooterSectionContainer3 {\n grid-area: three;\n }\n .FooterSectionContainer4 {\n grid-area: four;\n }\n .FooterSectionContainer5 {\n grid-area: five;\n background-color: var(--emw--color-background-secondary, #091217);\n padding: var(--emw--spacing-x-large, 30px) 0;\n font-size: var(--emw--font-size-medium, 16px);\n min-height: var(--emw--size-medium-plus, 100px);\n }\n .FooterSectionContainer6 {\n grid-area: six;\n padding: 0;\n }\n .FooterSectionContainer7 {\n grid-area: seven;\n padding: 0;\n }\n /* // remove paddings */\n .FooterSectionContainer5 .CustomContentSectionWrapper {\n padding: 0;\n }\n .FooterSectionContainer5 .CustomContentSectionWrapper div {\n display: flex;\n flex-direction: left;\n align-items: center;\n padding-left: var(--emw--spacing-large, 20px);\n }\n .FooterSectionContainer5 .CustomContentSectionWrapper div p {\n margin: var(--emw--spacing-2x-small, 5px);\n text-align: center;\n }\n .FooterSectionContainer6 .CustomContentSectionWrapper div p {\n text-align: center;\n }\n .FooterSectionContainer6 .ImageListWrapper {\n padding: 0;\n }\n .FooterSectionContainer6 .ImageListWrapper {\n padding: 0;\n }\n .FooterSectionContainer7 .CustomContentSectionWrapper {\n padding: 0;\n padding-bottom: var(--emw--spacing-large, 22px);\n font-size: var(--emw--font-size-small, 14px);\n }\n}";
273
+ const demoFooterCss = ":host {\n display: block;\n}\n\n/* $-background-primary: #14202d; */\n* {\n font-family: sans-serif;\n}\n\nhtml,\nbody {\n margin: 0;\n padding: 0;\n font-family: inherit;\n}\n\n.SkeletonContainer {\n width: 100%;\n height: 1800px;\n background-color: var(--emw--footer-color-bg, var(--emw-color-dark-blue, #07072A));\n background-color: green !important;\n display: flex;\n gap: 100px;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n}\n.SkeletonContainer .FirstRow {\n display: grid;\n grid-template-columns: 100%;\n column-gap: 20px;\n gap: 10px;\n}\n.SkeletonContainer .FirstRow .SkeletonImage {\n display: flex;\n width: 20%;\n}\n.SkeletonContainer .SecondRow {\n display: flex;\n flex-direction: row;\n}\n.SkeletonContainer .SecondRow .SkeletonMenu {\n display: flex;\n gap: 10px;\n flex-direction: column;\n}\n\n.FooterSectionContainer {\n color: var(--emw--footer-typography, var(--emw--color-thpography, #fff));\n padding: 15px 20px 0;\n}\n\n/* // FOOTER CONTAINER - only serves to be read as a container */\n.FooterContainer {\n container-type: inline-size;\n container-name: footerContainer;\n}\n\n.FooterGrid {\n background-color: var(--emw--footer-color-bg, var(--emw--color-background, #0E1511));\n display: grid;\n grid-template-rows: repeat(9, auto);\n grid-template-areas: \"one\" \"two\" \"three\" \"four\" \"five\" \"six\" \"seven\";\n}\n\n.FooterSectionContainer1 {\n position: relative;\n grid-area: one;\n}\n\n.FooterSectionContainer2 {\n position: relative;\n grid-area: two;\n}\n\n.FooterSectionContainer3 {\n position: relative;\n grid-area: three;\n}\n\n.FooterSectionContainer4 {\n position: relative;\n grid-area: four;\n}\n\n.FooterSectionContainer5 {\n grid-area: five;\n}\n\n.FooterSectionContainer6 {\n padding-top: 22px;\n grid-area: six;\n}\n\n.FooterSectionContainer7 {\n grid-area: seven;\n}\n\n/* // remove paddings */\n.FooterSectionContainer7 div {\n padding: 0;\n}\n\n@container (max-width: 750px) {\n .FooterSectionContainer3:after,\n .FooterSectionContainer2:after {\n position: absolute;\n content: \"\";\n height: 1px;\n width: 90%;\n background-color: var(--emw--color-gray-100, #444);\n }\n .FooterSectionContainer5 {\n grid-area: five;\n background-color: var(--emw--color-background-secondary, #060706);\n padding: 30px 0;\n font-size: var(--emw--font-size-medium, 16px);\n min-height: var(--emw--size-medium-plus, 100px);\n justify-self: center;\n }\n}\n/* // STYLES FOR TABLET / DESKTOP */\n@container (min-width: 750px) {\n .FooterGrid {\n background: var(--emw--footer-color-bg, var(--emw--color-background, #0E1511));\n display: grid;\n border-top: 5px solid var(--emw--footer-color-primary, var(--emw--color-primary, #22B04E));\n grid-template-rows: repeat(5, auto);\n grid-template-columns: 1fr 1fr 1fr 1fr;\n grid-template-areas: \"one two three four\" \"five five five five\" \"six six six six\" \"seven seven seven seven\";\n }\n .FooterSectionContainer1 {\n padding: 30px 40px;\n grid-area: one;\n background: var(--emw--color-background, #000000);\n }\n .FooterSectionContainer2 {\n grid-area: two;\n min-height: var(--emw--size-4x-medium, 500px);\n }\n .FooterSectionContainer3 {\n grid-area: three;\n }\n .FooterSectionContainer4 {\n grid-area: four;\n }\n .FooterSectionContainer5 {\n grid-area: five;\n background-color: var(--emw--color-background-secondary, #091217);\n padding: var(--emw--spacing-x-large, 30px) 0;\n font-size: var(--emw--font-size-medium, 16px);\n min-height: var(--emw--size-medium-plus, 100px);\n }\n .FooterSectionContainer6 {\n grid-area: six;\n padding: 0;\n }\n .FooterSectionContainer7 {\n grid-area: seven;\n padding: 0;\n }\n /* // remove paddings */\n .FooterSectionContainer5 .CustomContentSectionWrapper {\n padding: 0;\n }\n .FooterSectionContainer5 .CustomContentSectionWrapper div {\n display: flex;\n flex-direction: left;\n align-items: center;\n padding-left: var(--emw--spacing-large, 20px);\n }\n .FooterSectionContainer5 .CustomContentSectionWrapper div p {\n margin: var(--emw--spacing-2x-small, 5px);\n text-align: center;\n }\n .FooterSectionContainer6 .CustomContentSectionWrapper div p {\n text-align: center;\n }\n .FooterSectionContainer6 .ImageListWrapper {\n padding: 0;\n }\n .FooterSectionContainer6 .ImageListWrapper {\n padding: 0;\n }\n .FooterSectionContainer7 .CustomContentSectionWrapper {\n padding: 0;\n padding-bottom: var(--emw--spacing-large, 22px);\n font-size: var(--emw--font-size-small, 14px);\n }\n}";
274
274
  const GeneralFooterTemplateStyle0 = demoFooterCss;
275
275
 
276
276
  const GeneralFooterTemplate = class {
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-a7f717fa.js');
5
+ const index = require('./index-a589a1e7.js');
6
6
  const appGlobals = require('./app-globals-3a1e7e63.js');
7
7
 
8
8
  /*
@@ -19,7 +19,7 @@ var patchBrowser = () => {
19
19
 
20
20
  patchBrowser().then(async (options) => {
21
21
  await appGlobals.globalScripts();
22
- return index.bootstrapLazy([["custom-content-section.cjs",[[2,"custom-content-section",{"customContent":[1,"custom-content"],"repeaterContent":[8,"repeater-content"],"navigateViaEvent":[516,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"]}]]],["custom-clock.cjs",[[2,"custom-clock",{"clockFormat":[513,"clock-format"],"timeZone":[513,"time-zone"],"translationUrl":[513,"translation-url"],"language":[513],"timeString":[32]},null,{"translationUrl":["handleNewTranslations"]}]]],["general-footer-template.cjs",[[1,"general-footer-template",{"language":[513],"sections":[513],"endpoint":[513],"env":[513],"userRoles":[513,"user-roles"],"userid":[513],"session":[513],"baseUrl":[513,"base-url"],"navigateViaEvent":[513,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"clockFormat":[513,"clock-format"],"timeZone":[513,"time-zone"],"mbSource":[513,"mb-source"],"hasErrors":[32]}]]],["link-section-list.cjs",[[0,"link-section-list",{"repeaterContent":[8,"repeater-content"],"baseUrl":[513,"base-url"],"language":[513],"navigateViaEvent":[4,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"]}]]],["image-list.cjs",[[2,"image-list",{"repeaterContent":[8,"repeater-content"],"navigateViaEvent":[4,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"]}]]]], options);
22
+ return index.bootstrapLazy([["custom-content-section.cjs",[[2,"custom-content-section",{"customContent":[1,"custom-content"],"repeaterContent":[8,"repeater-content"],"navigateViaEvent":[516,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"]}]]],["link-section-list.cjs",[[0,"link-section-list",{"repeaterContent":[8,"repeater-content"],"baseUrl":[513,"base-url"],"language":[513],"navigateViaEvent":[4,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"],"skeletonLoading":[32]}]]],["custom-clock.cjs",[[2,"custom-clock",{"clockFormat":[513,"clock-format"],"timeZone":[513,"time-zone"],"translationUrl":[513,"translation-url"],"language":[513],"timeString":[32]},null,{"translationUrl":["handleNewTranslations"]}]]],["general-footer-template.cjs",[[1,"general-footer-template",{"language":[513],"sections":[513],"endpoint":[513],"env":[513],"userRoles":[513,"user-roles"],"userid":[513],"session":[513],"baseUrl":[513,"base-url"],"navigateViaEvent":[513,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"clockFormat":[513,"clock-format"],"timeZone":[513,"time-zone"],"mbSource":[513,"mb-source"],"hasErrors":[32]}]]],["ui-skeleton.cjs",[[0,"ui-skeleton",{"structure":[1],"width":[1],"height":[1],"borderRadius":[2,"border-radius"],"marginBottom":[2,"margin-bottom"],"marginTop":[2,"margin-top"],"marginLeft":[2,"margin-left"],"marginRight":[2,"margin-right"],"animation":[4],"rows":[2],"size":[1],"color":[1],"primaryColor":[1,"primary-color"],"secondaryColor":[1,"secondary-color"]},null,{"structure":["handleStructureChange"],"primaryColor":["updateStyles"],"secondaryColor":["updateStyles"]}]]],["image-list.cjs",[[2,"image-list",{"repeaterContent":[8,"repeater-content"],"navigateViaEvent":[4,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"],"skeletonLoading":[32]}]]]], options);
23
23
  });
24
24
 
25
25
  exports.setNonce = index.setNonce;
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-a7f717fa.js');
5
+ const index = require('./index-a589a1e7.js');
6
6
 
7
- const imageListCss = ".sc-image-list-h {\n display: block;\n margin: 0;\n padding: 0;\n}\n\n.ImageListContainer.sc-image-list {\n height: 100%;\n}\n.ImageListWrapper.sc-image-list {\n box-sizing: border-box;\n height: 100%;\n display: flex;\n flex-direction: column;\n max-width: 90%;\n margin: auto;\n padding: var(--emw--spacing-large, 20px) 0;\n}\n.ImageListSectionTitle.sc-image-list {\n width: 100%;\n display: flex;\n justify-content: left;\n align-content: center;\n padding: var(--emw--spacing-large, 20px) var(--emw--spacing-medium, 14px) var(--emw--spacing-x-large, 30px);\n color: var(--emw--footer-typography, var(--emw--color-thpography, #fff));\n text-transform: uppercase;\n font-size: 24px;\n font-weight: 100;\n}\n.ImageListLineup.sc-image-list {\n box-sizing: border-box;\n display: flex;\n flex-wrap: wrap;\n gap: var(--emw--spacing-x-large, 30px);\n justify-content: left;\n align-items: flex-start;\n padding-left: var(--emw--spacing-large, 20px);\n}\n.ImageListIcon.sc-image-list img.sc-image-list {\n max-height: var(--emw--size-medium-2x-minus, 40px);\n}\n\na.sc-image-list {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: flex-end;\n text-decoration: none;\n}\n\na.sc-image-list p.sc-image-list {\n text-decoration: none;\n color: var(--emw--color-gray-100, #666);\n margin: 0;\n}\n\n@container (max-width: 750px) {\n .ImageListSectionTitle.sc-image-list {\n justify-content: center;\n font-size: var(--emw--font-size-medium, 16px);\n color: var(--emw--footer-typography, var(--emw--color-thpography, #fff));\n padding: var(--emw--spacing-large, 20px) 0 var(--emw--spacing-x-large, 30px);\n justify-content: center;\n }\n .ImageListLineup.sc-image-list {\n justify-content: center;\n padding: 0;\n }\n}";
7
+ const imageListCss = ".sc-image-list-h {\n display: block;\n margin: 0;\n padding: 0;\n}\n\n.ContainerImage.sc-image-list {\n position: relative;\n display: inline-block;\n width: 100%;\n}\n\n.SkeletonWrapper.sc-image-list {\n background-color: #f0f0f0;\n}\n\n.ImageListContainer.sc-image-list {\n height: 100%;\n}\n.ImageListWrapper.sc-image-list {\n box-sizing: border-box;\n height: 100%;\n display: flex;\n flex-direction: column;\n max-width: 90%;\n margin: auto;\n padding: var(--emw--spacing-large, 20px) 0;\n}\n.ImageListSectionTitle.sc-image-list {\n width: 100%;\n display: flex;\n justify-content: left;\n align-content: center;\n padding: var(--emw--spacing-large, 20px) var(--emw--spacing-medium, 14px) var(--emw--spacing-x-large, 30px);\n color: var(--emw--footer-typography, var(--emw--color-thpography, #fff));\n text-transform: uppercase;\n font-size: 24px;\n font-weight: 100;\n}\n.ImageListLineup.sc-image-list {\n box-sizing: border-box;\n display: flex;\n flex-wrap: wrap;\n gap: var(--emw--spacing-x-large, 30px);\n justify-content: left;\n align-items: flex-start;\n padding-left: var(--emw--spacing-large, 20px);\n}\n.ImageListIcon.sc-image-list img.sc-image-list {\n max-height: var(--emw--size-medium-2x-minus, 40px);\n}\n\na.sc-image-list {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: flex-end;\n text-decoration: none;\n}\n\na.sc-image-list p.sc-image-list {\n text-decoration: none;\n color: var(--emw--color-gray-100, #666);\n margin: 0;\n}\n\n@container (max-width: 750px) {\n .ImageListSectionTitle.sc-image-list {\n justify-content: center;\n font-size: var(--emw--font-size-medium, 16px);\n color: var(--emw--footer-typography, var(--emw--color-thpography, #fff));\n padding: var(--emw--spacing-large, 20px) 0 var(--emw--spacing-x-large, 30px);\n justify-content: center;\n }\n .ImageListLineup.sc-image-list {\n justify-content: center;\n padding: 0;\n }\n}";
8
8
  const ImageListStyle0 = imageListCss;
9
9
 
10
10
  const ImageList = class {
@@ -13,16 +13,41 @@ const ImageList = class {
13
13
  this.navigateLink = (url, target, externalLink) => {
14
14
  window.postMessage({ type: this.postMessageEvent, path: url, url, target, externalLink }, window.location.href);
15
15
  };
16
+ this.onImageLoad = () => {
17
+ this.removeLoadingState();
18
+ this.cleanupListeners();
19
+ };
16
20
  this.repeaterContent = undefined;
17
21
  this.navigateViaEvent = false;
18
22
  this.postMessageEvent = '';
23
+ this.skeletonLoading = true;
24
+ }
25
+ componentDidLoad() {
26
+ this.initImageListeners();
27
+ }
28
+ initImageListeners() {
29
+ if (!this.imgRef)
30
+ return;
31
+ if (this.imgRef.complete) {
32
+ this.onImageLoad();
33
+ return;
34
+ }
35
+ this.imgRef.addEventListener('load', this.onImageLoad);
36
+ }
37
+ removeLoadingState() {
38
+ this.skeletonLoading = false;
39
+ }
40
+ cleanupListeners() {
41
+ var _a;
42
+ (_a = this.imgRef) === null || _a === void 0 ? void 0 : _a.removeEventListener('load', this.onImageLoad);
19
43
  }
20
44
  render() {
21
45
  var _a, _b, _c;
22
- return index.h("div", { key: '904d6e891d4533b61fa5b5d56d94fef1b64e254f', class: "ImageListContainer" }, index.h("div", { key: '2519ef8038b27175a5cede599561d235e29ef1ee', class: "ImageListWrapper" }, index.h("div", { key: '10b2280a935e16b046ee3bac0a34c84740350b30', class: "ImageListSectionTitle" }, (_a = this.repeaterContent) === null || _a === void 0 ? void 0 : _a.categoryTitle), index.h("div", { key: '11fb15bd73372b2e9bbec9250195a7a93f62e935', class: "ImageListLineup" }, (_c = (_b = this.repeaterContent) === null || _b === void 0 ? void 0 : _b.content) === null || _c === void 0 ? void 0 : _c.map(repeater => {
23
- return (index.h("div", { class: 'ImageListIcon' }, this.navigateViaEvent === true ? (index.h("div", { class: 'ImageListIcon', style: { cursor: 'pointer' }, onClick: () => this.navigateLink(repeater === null || repeater === void 0 ? void 0 : repeater.url, repeater === null || repeater === void 0 ? void 0 : repeater.target, repeater === null || repeater === void 0 ? void 0 : repeater.isExternalLink) }, index.h("img", { src: repeater === null || repeater === void 0 ? void 0 : repeater.image, alt: "" }), index.h("p", null, repeater === null || repeater === void 0 ? void 0 : repeater.title))) : (index.h("a", { href: (repeater === null || repeater === void 0 ? void 0 : repeater.url) || 'javascript:void(0)', target: (repeater === null || repeater === void 0 ? void 0 : repeater.target) || '_parent' }, index.h("div", { class: "ImageListPositioner" }, index.h("img", { src: repeater === null || repeater === void 0 ? void 0 : repeater.image, alt: "" })), index.h("p", null, repeater === null || repeater === void 0 ? void 0 : repeater.title)))));
46
+ return index.h("div", { key: '9a0f6ba04dc838fe6fe02baf854fdd86f51a5107', class: "ImageListContainer" }, index.h("div", { key: '3eaaaed1c03bd32a48ea2449ce6f28c7dc5787d0', class: "ImageListWrapper" }, index.h("div", { key: '3f92875995f098dac4225ca2cc789e63c4689817', class: "ImageListSectionTitle" }, (_a = this.repeaterContent) === null || _a === void 0 ? void 0 : _a.categoryTitle), index.h("div", { key: '0b36613e5d4522b6dd3801031c29cb3a8fedc625', class: "ImageListLineup" }, (_c = (_b = this.repeaterContent) === null || _b === void 0 ? void 0 : _b.content) === null || _c === void 0 ? void 0 : _c.map(repeater => {
47
+ return (index.h("div", { class: 'ImageListIcon' }, this.navigateViaEvent === true ? (index.h("div", { class: 'ImageListIcon', style: { cursor: 'pointer' }, onClick: () => this.navigateLink(repeater === null || repeater === void 0 ? void 0 : repeater.url, repeater === null || repeater === void 0 ? void 0 : repeater.target, repeater === null || repeater === void 0 ? void 0 : repeater.isExternalLink) }, index.h("div", { class: "ContainerImage" }, this.skeletonLoading && (index.h("div", { class: "SkeletonWrapper" }, index.h("ui-skeleton", { structure: "text", rows: "1", width: "100%", height: "40px" }))), index.h("img", { src: repeater === null || repeater === void 0 ? void 0 : repeater.image, alt: "", ref: (el) => (this.imgRef = el) })), index.h("p", null, repeater === null || repeater === void 0 ? void 0 : repeater.title))) : (index.h("a", { href: (repeater === null || repeater === void 0 ? void 0 : repeater.url) || 'javascript:void(0)', target: (repeater === null || repeater === void 0 ? void 0 : repeater.target) || '_parent' }, index.h("div", { class: "ContainerImage" }, this.skeletonLoading && (index.h("div", { class: "SkeletonWrapper" }, index.h("ui-skeleton", { structure: "text", rows: "1", width: "100%", height: "40px" }))), index.h("div", { class: "ImageListPositioner" }, index.h("img", { src: repeater === null || repeater === void 0 ? void 0 : repeater.image, alt: "", ref: (el) => (this.imgRef = el) }))), index.h("p", null, repeater === null || repeater === void 0 ? void 0 : repeater.title)))));
24
48
  }))));
25
49
  }
50
+ get el() { return index.getElement(this); }
26
51
  };
27
52
  ImageList.style = ImageListStyle0;
28
53
 
@@ -21,7 +21,7 @@ function _interopNamespace(e) {
21
21
  }
22
22
 
23
23
  const NAMESPACE = 'general-footer-template';
24
- const BUILD = /* general-footer-template */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: false, propString: true, reflect: true, scoped: true, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: false, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: false, watchCallback: true };
24
+ const BUILD = /* general-footer-template */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: true, propString: true, reflect: true, scoped: true, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: false, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: false, watchCallback: true };
25
25
 
26
26
  /*
27
27
  Stencil Client Platform v4.19.2 | MIT Licensed | https://stenciljs.com
@@ -91,6 +91,10 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
91
91
  return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
92
92
  /* webpackMode: "lazy" */
93
93
  './image-list.cjs.entry.js')); }).then(processMod, consoleError);
94
+ case 'ui-skeleton.cjs':
95
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
96
+ /* webpackMode: "lazy" */
97
+ './ui-skeleton.cjs.entry.js')); }).then(processMod, consoleError);
94
98
  }
95
99
  }
96
100
  return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
@@ -351,6 +355,9 @@ var parsePropertyValue = (propValue, propType) => {
351
355
  if (propType & 4 /* Boolean */) {
352
356
  return propValue === "false" ? false : propValue === "" || !!propValue;
353
357
  }
358
+ if (propType & 2 /* Number */) {
359
+ return parseFloat(propValue);
360
+ }
354
361
  if (propType & 1 /* String */) {
355
362
  return String(propValue);
356
363
  }
@@ -358,6 +365,7 @@ var parsePropertyValue = (propValue, propType) => {
358
365
  }
359
366
  return propValue;
360
367
  };
368
+ var getElement = (ref) => getHostRef(ref).$hostElement$ ;
361
369
  var emitEvent = (elm, name, opts) => {
362
370
  const ev = plt.ce(name, opts);
363
371
  elm.dispatchEvent(ev);
@@ -1303,6 +1311,7 @@ var bootstrapLazy = (lazyBundles, options = {}) => {
1303
1311
  var setNonce = (nonce) => plt.$nonce$ = nonce;
1304
1312
 
1305
1313
  exports.bootstrapLazy = bootstrapLazy;
1314
+ exports.getElement = getElement;
1306
1315
  exports.h = h;
1307
1316
  exports.promiseResolve = promiseResolve;
1308
1317
  exports.registerInstance = registerInstance;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-a7f717fa.js');
5
+ const index = require('./index-a589a1e7.js');
6
6
 
7
7
  const linkSectionListCss = ":host {\n display: block;\n margin: 0;\n padding: 0;\n}\n\n.LinkSectionListContainer {\n display: block;\n container-type: inline-size;\n}\n.LinkSectionListWrapper {\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n grid-template-columns: 1fr;\n}\n.LinkSectionListTitle {\n font-weight: var(--emw--font-weight-semibold, 500);\n text-transform: uppercase;\n}\n.LinkSectionListLink {\n font-weight: var(--emw--font-weight-light, 300);\n}\n\nul {\n width: fit-content;\n margin: 0;\n display: flex;\n flex-direction: column;\n gap: var(--emw--spacing-medium, 16px);\n padding-left: var(--emw--spacing-small-minus, 10px);\n font-size: var(--emw--font-size-small, 16px);\n text-transform: uppercase;\n}\nul li {\n list-style: disc;\n display: flex;\n align-items: center;\n padding-left: 25px;\n position: relative;\n}\nul li::before {\n content: \"\";\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 8px;\n height: 8px;\n background-color: var(--emw--footer-color-primary, var(--emw--color-primary, #22B04E));\n border-radius: 50%;\n}\nul li .LinkSectionListLinkText {\n display: flex;\n flex-direction: row;\n align-items: center;\n}\nul li .LinkSectionListLinkText span {\n text-align: center;\n cursor: pointer;\n}\nul li .LinkSectionListLinkText img.LinkSectionIcon {\n position: relative;\n height: 25px;\n padding: 0 5px;\n}\n\na {\n color: inherit;\n}\n\n@container (min-width: 280px) {\n .LinkSectionListWrapper {\n grid-template-columns: repeat(2, 1fr);\n }\n}\n@container (min-width: 650px) {\n .LinkSectionListWrapper {\n grid-gap: 2rem;\n grid-template-columns: repeat(4, 1fr);\n grid-template-rows: 1fr;\n }\n}";
8
8
  const LinkSectionListStyle0 = linkSectionListCss;
@@ -10,11 +10,35 @@ const LinkSectionListStyle0 = linkSectionListCss;
10
10
  const LinkSectionList = class {
11
11
  constructor(hostRef) {
12
12
  index.registerInstance(this, hostRef);
13
+ this.onImageLoad = () => {
14
+ this.removeLoadingState();
15
+ this.cleanupListeners();
16
+ };
13
17
  this.repeaterContent = undefined;
14
18
  this.baseUrl = undefined;
15
19
  this.language = undefined;
16
20
  this.navigateViaEvent = false;
17
21
  this.postMessageEvent = '';
22
+ this.skeletonLoading = true;
23
+ }
24
+ componentDidLoad() {
25
+ this.initImageListeners();
26
+ }
27
+ initImageListeners() {
28
+ if (!this.imgRef)
29
+ return;
30
+ if (this.imgRef.complete) {
31
+ this.onImageLoad();
32
+ return;
33
+ }
34
+ this.imgRef.addEventListener('load', this.onImageLoad);
35
+ }
36
+ removeLoadingState() {
37
+ this.skeletonLoading = false;
38
+ }
39
+ cleanupListeners() {
40
+ var _a;
41
+ (_a = this.imgRef) === null || _a === void 0 ? void 0 : _a.removeEventListener('load', this.onImageLoad);
18
42
  }
19
43
  navigateLink(link) {
20
44
  window.postMessage({ type: this.postMessageEvent, path: link.linkUrl, url: link.linkUrl, target: link.target, externalLink: link.externalLink }, window.location.href);
@@ -48,14 +72,15 @@ const LinkSectionList = class {
48
72
  }
49
73
  return obj;
50
74
  }, []);
51
- return index.h("div", { class: "LinkSectionListContainer" }, index.h("div", { class: "LinkSectionListWrapper" }, this.repeaterContent.categoryTitle && index.h("h2", { class: "LinkSectionListTitle" }, this.repeaterContent.categoryTitle), linkSections.map(category => index.h("ul", null, category.categoryTitle && index.h("p", null, category.categoryTitle), category.links.map(link => index.h("li", { class: "LinkSectionListLink", key: link.linkName }, this.navigateViaEvent === true ? (index.h("span", null, link.linkName && link.icon ? (index.h("span", { class: "LinkSectionListLinkText", onClick: () => this.navigateLink(link) }, index.h("img", { class: "LinkSectionIcon", src: link.icon, alt: "icon" }), index.h("span", null, link.linkName, " "))) :
75
+ return index.h("div", { class: "LinkSectionListContainer" }, index.h("div", { class: "LinkSectionListWrapper" }, this.repeaterContent.categoryTitle && index.h("h2", { class: "LinkSectionListTitle" }, this.repeaterContent.categoryTitle), linkSections.map(category => index.h("ul", null, category.categoryTitle && index.h("p", null, category.categoryTitle), category.links.map(link => index.h("li", { class: "LinkSectionListLink", key: link.linkName }, this.navigateViaEvent === true ? (index.h("span", null, link.linkName && link.icon ? (index.h("span", { class: "LinkSectionListLinkText", onClick: () => this.navigateLink(link) }, index.h("div", { class: "ContainerImage" }, this.skeletonLoading && (index.h("div", { class: "SkeletonWrapper" }, index.h("ui-skeleton", { structure: "text", rows: "1", width: "100%", height: "20px" }))), index.h("img", { class: "LinkSectionIcon", src: link.icon, alt: "icon", ref: (el) => (this.imgRef = el) })), index.h("span", null, link.linkName, " "))) :
52
76
  link.linkName ?
53
77
  index.h("span", { class: "LinkSectionListLinkText", onClick: () => this.navigateLink(link) }, index.h("span", null, link.linkName, " "))
54
78
  :
55
- index.h("span", { class: "LinkSectionListLinkText", onClick: () => this.navigateLink(link) }, index.h("img", { class: "LinkSectionIcon", src: link.icon, alt: "icon" })))) : (index.h("a", { class: "LinkSectionListLink", href: link.externalLink ? link.linkUrl : `${this.baseUrl}/${this.language}${link.linkUrl}`, target: link.target || '_blank' }, link.linkName && link.icon ? (index.h("span", { class: "LinkSectionListLinkText" }, index.h("img", { class: "LinkSectionIcon", src: link.icon, alt: "icon" }), index.h("span", null, link.linkName))) :
79
+ index.h("span", { class: "LinkSectionListLinkText", onClick: () => this.navigateLink(link) }, index.h("div", { class: "ContainerImage" }, this.skeletonLoading && (index.h("div", { class: "SkeletonWrapper" }, index.h("ui-skeleton", { structure: "text", rows: "1", width: "100%", height: "20px" }))), index.h("img", { class: "LinkSectionIcon", src: link.icon, alt: "icon", ref: (el) => (this.imgRef = el) }))))) : (index.h("a", { class: "LinkSectionListLink", href: link.externalLink ? link.linkUrl : `${this.baseUrl}/${this.language}${link.linkUrl}`, target: link.target || '_blank' }, link.linkName && link.icon ? (index.h("span", { class: "LinkSectionListLinkText" }, index.h("div", { class: "ContainerImage" }, this.skeletonLoading && (index.h("div", { class: "SkeletonWrapper" }, index.h("ui-skeleton", { structure: "text", rows: "1", width: "100%", height: "20px" }))), index.h("img", { class: "LinkSectionIcon", src: link.icon, alt: "icon", ref: (el) => (this.imgRef = el) })), index.h("span", null, link.linkName))) :
56
80
  link.linkName ? (index.h("span", { class: "LinkSectionListLinkText" }, index.h("span", null, link.linkName))) :
57
- index.h("span", { class: "LinkSectionListLinkText" }, index.h("img", { class: "LinkSectionIcon", src: link.icon, alt: "icon" }))))))))));
81
+ index.h("span", { class: "LinkSectionListLinkText" }, index.h("div", { class: "ContainerImage" }, this.skeletonLoading && (index.h("div", { class: "SkeletonWrapper" }, index.h("ui-skeleton", { structure: "text", rows: "1", width: "100%", height: "20px" }))), index.h("img", { class: "LinkSectionIcon", src: link.icon, alt: "icon", ref: (el) => (this.imgRef = el) })))))))))));
58
82
  }
83
+ get el() { return index.getElement(this); }
59
84
  };
60
85
  LinkSectionList.style = LinkSectionListStyle0;
61
86
 
@@ -2,13 +2,13 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-a7f717fa.js');
5
+ const index = require('./index-a589a1e7.js');
6
6
  const appGlobals = require('./app-globals-3a1e7e63.js');
7
7
 
8
8
  const defineCustomElements = async (win, options) => {
9
9
  if (typeof window === 'undefined') return undefined;
10
10
  await appGlobals.globalScripts();
11
- return index.bootstrapLazy([["custom-content-section.cjs",[[2,"custom-content-section",{"customContent":[1,"custom-content"],"repeaterContent":[8,"repeater-content"],"navigateViaEvent":[516,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"]}]]],["custom-clock.cjs",[[2,"custom-clock",{"clockFormat":[513,"clock-format"],"timeZone":[513,"time-zone"],"translationUrl":[513,"translation-url"],"language":[513],"timeString":[32]},null,{"translationUrl":["handleNewTranslations"]}]]],["general-footer-template.cjs",[[1,"general-footer-template",{"language":[513],"sections":[513],"endpoint":[513],"env":[513],"userRoles":[513,"user-roles"],"userid":[513],"session":[513],"baseUrl":[513,"base-url"],"navigateViaEvent":[513,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"clockFormat":[513,"clock-format"],"timeZone":[513,"time-zone"],"mbSource":[513,"mb-source"],"hasErrors":[32]}]]],["link-section-list.cjs",[[0,"link-section-list",{"repeaterContent":[8,"repeater-content"],"baseUrl":[513,"base-url"],"language":[513],"navigateViaEvent":[4,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"]}]]],["image-list.cjs",[[2,"image-list",{"repeaterContent":[8,"repeater-content"],"navigateViaEvent":[4,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"]}]]]], options);
11
+ return index.bootstrapLazy([["custom-content-section.cjs",[[2,"custom-content-section",{"customContent":[1,"custom-content"],"repeaterContent":[8,"repeater-content"],"navigateViaEvent":[516,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"]}]]],["link-section-list.cjs",[[0,"link-section-list",{"repeaterContent":[8,"repeater-content"],"baseUrl":[513,"base-url"],"language":[513],"navigateViaEvent":[4,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"],"skeletonLoading":[32]}]]],["custom-clock.cjs",[[2,"custom-clock",{"clockFormat":[513,"clock-format"],"timeZone":[513,"time-zone"],"translationUrl":[513,"translation-url"],"language":[513],"timeString":[32]},null,{"translationUrl":["handleNewTranslations"]}]]],["general-footer-template.cjs",[[1,"general-footer-template",{"language":[513],"sections":[513],"endpoint":[513],"env":[513],"userRoles":[513,"user-roles"],"userid":[513],"session":[513],"baseUrl":[513,"base-url"],"navigateViaEvent":[513,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"clockFormat":[513,"clock-format"],"timeZone":[513,"time-zone"],"mbSource":[513,"mb-source"],"hasErrors":[32]}]]],["ui-skeleton.cjs",[[0,"ui-skeleton",{"structure":[1],"width":[1],"height":[1],"borderRadius":[2,"border-radius"],"marginBottom":[2,"margin-bottom"],"marginTop":[2,"margin-top"],"marginLeft":[2,"margin-left"],"marginRight":[2,"margin-right"],"animation":[4],"rows":[2],"size":[1],"color":[1],"primaryColor":[1,"primary-color"],"secondaryColor":[1,"secondary-color"]},null,{"structure":["handleStructureChange"],"primaryColor":["updateStyles"],"secondaryColor":["updateStyles"]}]]],["image-list.cjs",[[2,"image-list",{"repeaterContent":[8,"repeater-content"],"navigateViaEvent":[4,"navigate-via-event"],"postMessageEvent":[513,"post-message-event"],"skeletonLoading":[32]}]]]], options);
12
12
  };
13
13
 
14
14
  exports.setNonce = index.setNonce;
@@ -0,0 +1,148 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-a589a1e7.js');
6
+
7
+ const uiSkeletonCss = ".Skeleton{animation:skeleton-loading 1s linear infinite alternate}.Rectangle{background-color:var(--emw-skeleton-rectangle-background, #c2c2c2);width:var(--emw-skeleton-rectangle-width, 400px);height:var(--emw-skeleton-rectangle-height, 200px);border-radius:var(--emw-skeleton-rectangle-border-radius, 2px)}.Circle{background-color:var(--emw-skeleton-circle-background, #c2c2c2);width:var(--emw-skeleton-circle-size, 400px);height:var(--emw-skeleton-circle-size, 400px);border-radius:50%}.Text{background-color:var(--emw-skeleton-text-background, #c2c2c2);width:var(--emw-skeleton-text-width, 500px);height:var(--emw-skeleton-text-height, 20px);border-radius:var(--emw-skeleton-text-border-radius, 5px);margin-bottom:var(--emw-skeleton-text-margin-bottom, 5px)}.Text:last-child{width:var(--emw-skeleton-text-width-100, 300px)}.Title{background-color:var(--emw-skeleton-title-background, #c2c2c2);width:var(--emw-skeleton-title-width, 300px);height:var(--emw-skeleton-title-height, 30px);border-radius:var(--emw-skeleton-title-border-radius, 5px);margin-bottom:var(--emw-skeleton-title-margin-bottom, 5px)}.Image{background-color:var(--emw-skeleton-image-background, #c2c2c2);width:var(--emw-skeleton-image-width, 250px);height:var(--emw-skeleton-image-height, 200px);border-radius:var(--emw-skeleton-image-border-radius, 10px)}.Logo{background-color:var(--emw-skeleton-logo-background, #c2c2c2);width:var(--emw-skeleton-logo-width, 120px);height:var(--emw-skeleton-logo-height, 75px);border-radius:var(--emw-skeleton-logo-border-radius, 5px)}@keyframes skeleton-loading{0%{background-color:var(--emw-skeleton-primary-color, var(--emw-skeleton-color-0, #c2c2c2))}100%{background-color:var(--emw-skeleton-secondary-color, var(--emw-skeleton-color-100, #f0f0f0))}}";
8
+ const UiSkeletonStyle0 = uiSkeletonCss;
9
+
10
+ const UiSkeleton = class {
11
+ constructor(hostRef) {
12
+ index.registerInstance(this, hostRef);
13
+ this.structure = undefined;
14
+ this.width = undefined;
15
+ this.height = undefined;
16
+ this.borderRadius = undefined;
17
+ this.marginBottom = undefined;
18
+ this.marginTop = undefined;
19
+ this.marginLeft = undefined;
20
+ this.marginRight = undefined;
21
+ this.animation = true;
22
+ this.rows = undefined;
23
+ this.size = undefined;
24
+ this.color = undefined;
25
+ this.primaryColor = undefined;
26
+ this.secondaryColor = undefined;
27
+ }
28
+ handleStructureChange(newValue, oldValue) {
29
+ if (oldValue !== newValue) {
30
+ this.handleStructure(newValue);
31
+ }
32
+ }
33
+ updateStyles() {
34
+ if (this.primaryColor) {
35
+ this.skeletonContainer.style.setProperty('--emw-skeleton-primary-color', this.primaryColor);
36
+ }
37
+ if (this.secondaryColor) {
38
+ this.skeletonContainer.style.setProperty('--emw-skeleton-secondary-color', this.secondaryColor);
39
+ }
40
+ }
41
+ handleStructure(structure) {
42
+ switch (structure) {
43
+ case 'logo':
44
+ return this.renderLogo();
45
+ case 'image':
46
+ return this.renderImage();
47
+ case 'title':
48
+ return this.renderTitle();
49
+ case 'text':
50
+ return this.renderText();
51
+ case 'rectangle':
52
+ return this.renderRectangle();
53
+ case 'circle':
54
+ return this.renderCircle();
55
+ }
56
+ }
57
+ renderLogo() {
58
+ const styles = {
59
+ width: `${this.width}`,
60
+ height: `${this.height}`,
61
+ 'background-color': `${this.color}`,
62
+ 'border-radius': `${this.borderRadius}px`,
63
+ 'margin-bottom': `${this.marginBottom}px`,
64
+ 'margin-top': `${this.marginTop}px`,
65
+ 'margin-left': `${this.marginLeft}px`,
66
+ 'margin-right': `${this.marginRight}px`
67
+ };
68
+ return (index.h("div", { ref: el => this.skeletonContainer = el }, index.h("div", { style: styles, class: "Logo " + (this.animation ? 'Skeleton' : '') })));
69
+ }
70
+ renderImage() {
71
+ const styles = {
72
+ width: `${this.width}`,
73
+ height: `${this.height}`,
74
+ 'background-color': `${this.color}`,
75
+ 'border-radius': `${this.borderRadius}px`,
76
+ 'margin-bottom': `${this.marginBottom}px`,
77
+ 'margin-top': `${this.marginTop}px`,
78
+ 'margin-left': `${this.marginLeft}px`,
79
+ 'margin-right': `${this.marginRight}px`
80
+ };
81
+ return (index.h("div", { ref: el => this.skeletonContainer = el }, index.h("div", { style: styles, class: "Image " + (this.animation ? 'Skeleton' : '') })));
82
+ }
83
+ renderTitle() {
84
+ const styles = {
85
+ width: `${this.width}`,
86
+ height: `${this.height}`,
87
+ 'background-color': `${this.color}`,
88
+ 'border-radius': `${this.borderRadius}px`,
89
+ 'margin-bottom': `${this.marginBottom}px`,
90
+ 'margin-top': `${this.marginTop}px`,
91
+ 'margin-left': `${this.marginLeft}px`,
92
+ 'margin-right': `${this.marginRight}px`
93
+ };
94
+ return (index.h("div", { ref: el => this.skeletonContainer = el }, index.h("div", { style: styles, class: "Title " + (this.animation ? 'Skeleton' : '') })));
95
+ }
96
+ renderText() {
97
+ const styles = {
98
+ width: `${this.width}`,
99
+ height: `${this.height}`,
100
+ 'background-color': `${this.color}`,
101
+ 'border-radius': `${this.borderRadius}px`,
102
+ 'margin-bottom': `${this.marginBottom}px`,
103
+ 'margin-top': `${this.marginTop}px`,
104
+ 'margin-left': `${this.marginLeft}px`,
105
+ 'margin-right': `${this.marginRight}px`
106
+ };
107
+ return (Array.from({ length: this.rows > 0 ? this.rows : 1 }).map((_, index$1) => (index.h("div", { style: styles, key: index$1, class: "Text " + (this.animation ? 'Skeleton' : '') }))));
108
+ }
109
+ renderRectangle() {
110
+ const styles = {
111
+ width: `${this.width}`,
112
+ height: `${this.height}`,
113
+ 'background-color': `${this.color}`,
114
+ 'border-radius': `${this.borderRadius}px`,
115
+ 'margin-bottom': `${this.marginBottom}px`,
116
+ 'margin-top': `${this.marginTop}px`,
117
+ 'margin-left': `${this.marginLeft}px`,
118
+ 'margin-right': `${this.marginRight}px`
119
+ };
120
+ return (index.h("div", { ref: el => this.skeletonContainer = el }, index.h("div", { style: styles, class: "Rectangle " + (this.animation ? 'Skeleton' : '') })));
121
+ }
122
+ renderCircle() {
123
+ const styles = {
124
+ width: `${this.size}`,
125
+ height: `${this.size}`,
126
+ 'background-color': `${this.color}`,
127
+ 'margin-bottom': `${this.marginBottom}px`,
128
+ 'margin-top': `${this.marginTop}px`,
129
+ 'margin-left': `${this.marginLeft}px`,
130
+ 'margin-right': `${this.marginRight}px`
131
+ };
132
+ return (index.h("div", { ref: el => this.skeletonContainer = el }, index.h("div", { style: styles, class: "Circle " + (this.animation ? 'Skeleton' : '') })));
133
+ }
134
+ componentDidLoad() {
135
+ this.updateStyles();
136
+ }
137
+ render() {
138
+ return (this.handleStructure(this.structure));
139
+ }
140
+ static get watchers() { return {
141
+ "structure": ["handleStructureChange"],
142
+ "primaryColor": ["updateStyles"],
143
+ "secondaryColor": ["updateStyles"]
144
+ }; }
145
+ };
146
+ UiSkeleton.style = UiSkeletonStyle0;
147
+
148
+ exports.ui_skeleton = UiSkeleton;
@@ -11,6 +11,13 @@
11
11
  "version": "4.19.2",
12
12
  "typescriptVersion": "5.4.5"
13
13
  },
14
- "collections": [],
14
+ "collections": [
15
+ {
16
+ "name": "@everymatrix/ui-skeleton",
17
+ "tags": [
18
+ "ui-skeleton"
19
+ ]
20
+ }
21
+ ],
15
22
  "bundles": []
16
23
  }
@@ -1,5 +1,6 @@
1
1
  import { h } from "@stencil/core";
2
2
  import sanitizeHtml from "sanitize-html";
3
+ import "../../../../../ui-skeleton/dist/types/index";
3
4
  export class CustomContentSection {
4
5
  constructor() {
5
6
  this.customContent = undefined;
@@ -15,7 +16,7 @@ export class CustomContentSection {
15
16
  a: ['href', 'target', 'rel']
16
17
  }
17
18
  });
18
- return h("div", { key: '7cfcf732fff969c5bcd0b08a4b921ae3592732b3', class: "CustomContentSectionContainer" }, h("div", { key: 'c5cf9a5ada78c792ebb778d3d3084e0b0b938ed4', class: "CustomContentSectionWrapper" }, h("div", { key: 'abc8184b4eb9c97e0261bec4baebfb7e272cd3bb', class: "CustomContentSectionContent", innerHTML: clean }), this.repeaterContent ? h("image-list", { style: { width: "100%" }, repeaterContent: this.repeaterContent ? this.repeaterContent : null, "navigate-via-event": this.navigateViaEvent, "post-message-event": this.postMessageEvent }) : ''));
19
+ return h("div", { key: '9990a716f474932b66644b13ec3ef378302dfaeb', class: "CustomContentSectionContainer" }, h("div", { key: '0ff21f48796f21dee167a686e3e346896a56cf71', class: "CustomContentSectionWrapper" }, h("div", { key: '6b8be4492fdb7f8c3b07545089a2e4dd47a1d8c8', class: "CustomContentSectionContent", innerHTML: clean }), this.repeaterContent ? h("image-list", { style: { width: "100%" }, repeaterContent: this.repeaterContent ? this.repeaterContent : null, "navigate-via-event": this.navigateViaEvent, "post-message-event": this.postMessageEvent }) : ''));
19
20
  }
20
21
  static get is() { return "custom-content-section"; }
21
22
  static get encapsulation() { return "scoped"; }
@@ -14,6 +14,37 @@ body {
14
14
  font-family: inherit;
15
15
  }
16
16
 
17
+ .SkeletonContainer {
18
+ width: 100%;
19
+ height: 1800px;
20
+ background-color: var(--emw--footer-color-bg, var(--emw-color-dark-blue, #07072A));
21
+ background-color: green !important;
22
+ display: flex;
23
+ gap: 100px;
24
+ justify-content: center;
25
+ align-items: center;
26
+ flex-direction: column;
27
+ }
28
+ .SkeletonContainer .FirstRow {
29
+ display: grid;
30
+ grid-template-columns: 100%;
31
+ column-gap: 20px;
32
+ gap: 10px;
33
+ }
34
+ .SkeletonContainer .FirstRow .SkeletonImage {
35
+ display: flex;
36
+ width: 20%;
37
+ }
38
+ .SkeletonContainer .SecondRow {
39
+ display: flex;
40
+ flex-direction: row;
41
+ }
42
+ .SkeletonContainer .SecondRow .SkeletonMenu {
43
+ display: flex;
44
+ gap: 10px;
45
+ flex-direction: column;
46
+ }
47
+
17
48
  .FooterSectionContainer {
18
49
  color: var(--emw--footer-typography, var(--emw--color-thpography, #fff));
19
50
  padding: 15px 20px 0;
@@ -1,6 +1,7 @@
1
1
  import { h } from "@stencil/core";
2
2
  import { componentRules, normalizeRepeaterContent, getDevicePlatform } from "../../utils/utils";
3
3
  import { setClientStyling, setClientStylingURL, setStreamStyling } from "../../../../../../../../libs/common/src/styling/index";
4
+ import "../../../../../ui-skeleton/dist/types/index";
4
5
  export class GeneralFooterTemplate {
5
6
  constructor() {
6
7
  this.platform = getDevicePlatform();
@@ -4,6 +4,16 @@
4
4
  padding: 0;
5
5
  }
6
6
 
7
+ .ContainerImage {
8
+ position: relative;
9
+ display: inline-block;
10
+ width: 100%;
11
+ }
12
+
13
+ .SkeletonWrapper {
14
+ background-color: #f0f0f0;
15
+ }
16
+
7
17
  .ImageListContainer {
8
18
  height: 100%;
9
19
  }
@@ -4,14 +4,38 @@ export class ImageList {
4
4
  this.navigateLink = (url, target, externalLink) => {
5
5
  window.postMessage({ type: this.postMessageEvent, path: url, url, target, externalLink }, window.location.href);
6
6
  };
7
+ this.onImageLoad = () => {
8
+ this.removeLoadingState();
9
+ this.cleanupListeners();
10
+ };
7
11
  this.repeaterContent = undefined;
8
12
  this.navigateViaEvent = false;
9
13
  this.postMessageEvent = '';
14
+ this.skeletonLoading = true;
15
+ }
16
+ componentDidLoad() {
17
+ this.initImageListeners();
18
+ }
19
+ initImageListeners() {
20
+ if (!this.imgRef)
21
+ return;
22
+ if (this.imgRef.complete) {
23
+ this.onImageLoad();
24
+ return;
25
+ }
26
+ this.imgRef.addEventListener('load', this.onImageLoad);
27
+ }
28
+ removeLoadingState() {
29
+ this.skeletonLoading = false;
30
+ }
31
+ cleanupListeners() {
32
+ var _a;
33
+ (_a = this.imgRef) === null || _a === void 0 ? void 0 : _a.removeEventListener('load', this.onImageLoad);
10
34
  }
11
35
  render() {
12
36
  var _a, _b, _c;
13
- return h("div", { key: '904d6e891d4533b61fa5b5d56d94fef1b64e254f', class: "ImageListContainer" }, h("div", { key: '2519ef8038b27175a5cede599561d235e29ef1ee', class: "ImageListWrapper" }, h("div", { key: '10b2280a935e16b046ee3bac0a34c84740350b30', class: "ImageListSectionTitle" }, (_a = this.repeaterContent) === null || _a === void 0 ? void 0 : _a.categoryTitle), h("div", { key: '11fb15bd73372b2e9bbec9250195a7a93f62e935', class: "ImageListLineup" }, (_c = (_b = this.repeaterContent) === null || _b === void 0 ? void 0 : _b.content) === null || _c === void 0 ? void 0 : _c.map(repeater => {
14
- return (h("div", { class: 'ImageListIcon' }, this.navigateViaEvent === true ? (h("div", { class: 'ImageListIcon', style: { cursor: 'pointer' }, onClick: () => this.navigateLink(repeater === null || repeater === void 0 ? void 0 : repeater.url, repeater === null || repeater === void 0 ? void 0 : repeater.target, repeater === null || repeater === void 0 ? void 0 : repeater.isExternalLink) }, h("img", { src: repeater === null || repeater === void 0 ? void 0 : repeater.image, alt: "" }), h("p", null, repeater === null || repeater === void 0 ? void 0 : repeater.title))) : (h("a", { href: (repeater === null || repeater === void 0 ? void 0 : repeater.url) || 'javascript:void(0)', target: (repeater === null || repeater === void 0 ? void 0 : repeater.target) || '_parent' }, h("div", { class: "ImageListPositioner" }, h("img", { src: repeater === null || repeater === void 0 ? void 0 : repeater.image, alt: "" })), h("p", null, repeater === null || repeater === void 0 ? void 0 : repeater.title)))));
37
+ return h("div", { key: '9a0f6ba04dc838fe6fe02baf854fdd86f51a5107', class: "ImageListContainer" }, h("div", { key: '3eaaaed1c03bd32a48ea2449ce6f28c7dc5787d0', class: "ImageListWrapper" }, h("div", { key: '3f92875995f098dac4225ca2cc789e63c4689817', class: "ImageListSectionTitle" }, (_a = this.repeaterContent) === null || _a === void 0 ? void 0 : _a.categoryTitle), h("div", { key: '0b36613e5d4522b6dd3801031c29cb3a8fedc625', class: "ImageListLineup" }, (_c = (_b = this.repeaterContent) === null || _b === void 0 ? void 0 : _b.content) === null || _c === void 0 ? void 0 : _c.map(repeater => {
38
+ return (h("div", { class: 'ImageListIcon' }, this.navigateViaEvent === true ? (h("div", { class: 'ImageListIcon', style: { cursor: 'pointer' }, onClick: () => this.navigateLink(repeater === null || repeater === void 0 ? void 0 : repeater.url, repeater === null || repeater === void 0 ? void 0 : repeater.target, repeater === null || repeater === void 0 ? void 0 : repeater.isExternalLink) }, h("div", { class: "ContainerImage" }, this.skeletonLoading && (h("div", { class: "SkeletonWrapper" }, h("ui-skeleton", { structure: "text", rows: "1", width: "100%", height: "40px" }))), h("img", { src: repeater === null || repeater === void 0 ? void 0 : repeater.image, alt: "", ref: (el) => (this.imgRef = el) })), h("p", null, repeater === null || repeater === void 0 ? void 0 : repeater.title))) : (h("a", { href: (repeater === null || repeater === void 0 ? void 0 : repeater.url) || 'javascript:void(0)', target: (repeater === null || repeater === void 0 ? void 0 : repeater.target) || '_parent' }, h("div", { class: "ContainerImage" }, this.skeletonLoading && (h("div", { class: "SkeletonWrapper" }, h("ui-skeleton", { structure: "text", rows: "1", width: "100%", height: "40px" }))), h("div", { class: "ImageListPositioner" }, h("img", { src: repeater === null || repeater === void 0 ? void 0 : repeater.image, alt: "", ref: (el) => (this.imgRef = el) }))), h("p", null, repeater === null || repeater === void 0 ? void 0 : repeater.title)))));
15
39
  }))));
16
40
  }
17
41
  static get is() { return "image-list"; }
@@ -83,4 +107,10 @@ export class ImageList {
83
107
  }
84
108
  };
85
109
  }
110
+ static get states() {
111
+ return {
112
+ "skeletonLoading": {}
113
+ };
114
+ }
115
+ static get elementRef() { return "el"; }
86
116
  }