@everymatrix/general-footer-template 1.0.69
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.
- package/dist/cjs/app-globals-3a1e7e63.js +5 -0
- package/dist/cjs/custom-content-section.cjs.entry.js +9639 -0
- package/dist/cjs/general-footer-template.cjs.entry.js +315 -0
- package/dist/cjs/general-footer-template.cjs.js +25 -0
- package/dist/cjs/image-list.cjs.entry.js +29 -0
- package/dist/cjs/index-4c3922ac.js +1291 -0
- package/dist/cjs/index.cjs.js +2 -0
- package/dist/cjs/link-section-list.cjs.entry.js +62 -0
- package/dist/cjs/loader.cjs.js +15 -0
- package/dist/collection/collection-manifest.json +15 -0
- package/dist/collection/components/custom-content-section/custom-content-section.css +13 -0
- package/dist/collection/components/custom-content-section/custom-content-section.js +105 -0
- package/dist/collection/components/general-footer-template/demo-footer.css +160 -0
- package/dist/collection/components/general-footer-template/general-footer-template.css +84 -0
- package/dist/collection/components/general-footer-template/general-footer-template.js +321 -0
- package/dist/collection/components/general-footer-template/index.js +1 -0
- package/dist/collection/components/general-footer-template/pariuri_plus_variant.css +185 -0
- package/dist/collection/components/general-footer-template/variant_style_1.css +146 -0
- package/dist/collection/components/image-list/image-list.css +69 -0
- package/dist/collection/components/image-list/image-list.js +86 -0
- package/dist/collection/components/link-section-list/link-section-list.css +83 -0
- package/dist/collection/components/link-section-list/link-section-list.js +152 -0
- package/dist/collection/index.js +1 -0
- package/dist/collection/utils/utils.js +212 -0
- package/dist/esm/app-globals-0f993ce5.js +3 -0
- package/dist/esm/custom-content-section.entry.js +9635 -0
- package/dist/esm/general-footer-template.entry.js +311 -0
- package/dist/esm/general-footer-template.js +20 -0
- package/dist/esm/image-list.entry.js +25 -0
- package/dist/esm/index-7361445e.js +1265 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/link-section-list.entry.js +58 -0
- package/dist/esm/loader.js +11 -0
- package/dist/general-footer-template/general-footer-template.esm.js +1 -0
- package/dist/general-footer-template/index.esm.js +0 -0
- package/dist/general-footer-template/p-01f3f03f.entry.js +8 -0
- package/dist/general-footer-template/p-26b76a9c.js +2 -0
- package/dist/general-footer-template/p-572b7e03.entry.js +1 -0
- package/dist/general-footer-template/p-7e979c2e.entry.js +1 -0
- package/dist/general-footer-template/p-e1255160.js +1 -0
- package/dist/general-footer-template/p-e98c72d0.entry.js +1 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/stencil.config.dev.js +17 -0
- package/dist/stencil.config.js +17 -0
- package/dist/types/Users/raul.vasile/workspace/everymatrix/widgets-monorepo/packages/stencil/general-footer-template/.stencil/packages/stencil/general-footer-template/stencil.config.d.ts +2 -0
- package/dist/types/Users/raul.vasile/workspace/everymatrix/widgets-monorepo/packages/stencil/general-footer-template/.stencil/packages/stencil/general-footer-template/stencil.config.dev.d.ts +2 -0
- package/dist/types/components/custom-content-section/custom-content-section.d.ts +19 -0
- package/dist/types/components/general-footer-template/general-footer-template.d.ts +75 -0
- package/dist/types/components/general-footer-template/index.d.ts +1 -0
- package/dist/types/components/image-list/image-list.d.ts +16 -0
- package/dist/types/components/link-section-list/link-section-list.d.ts +24 -0
- package/dist/types/components.d.ts +268 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/stencil-public-runtime.d.ts +1674 -0
- package/dist/types/utils/utils.d.ts +95 -0
- package/loader/cdn.js +1 -0
- package/loader/index.cjs.js +1 -0
- package/loader/index.d.ts +24 -0
- package/loader/index.es2017.js +1 -0
- package/loader/index.js +2 -0
- package/loader/package.json +11 -0
- package/package.json +26 -0
|
@@ -0,0 +1,315 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const index = require('./index-4c3922ac.js');
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* custom rules for component types
|
|
9
|
+
*/
|
|
10
|
+
const getDevice = () => {
|
|
11
|
+
let userAgent = window.navigator.userAgent;
|
|
12
|
+
if (userAgent.toLowerCase().match(/android/i)) {
|
|
13
|
+
return 'Android';
|
|
14
|
+
}
|
|
15
|
+
if (userAgent.toLowerCase().match(/iphone/i)) {
|
|
16
|
+
return 'iPhone';
|
|
17
|
+
}
|
|
18
|
+
if (userAgent.toLowerCase().match(/ipad|ipod/i)) {
|
|
19
|
+
return 'iPad';
|
|
20
|
+
}
|
|
21
|
+
return 'PC';
|
|
22
|
+
};
|
|
23
|
+
const getDevicePlatform = () => {
|
|
24
|
+
const device = getDevice();
|
|
25
|
+
if (device) {
|
|
26
|
+
if (device === 'PC') {
|
|
27
|
+
return 'dk';
|
|
28
|
+
}
|
|
29
|
+
else if (device === 'iPad' || device === 'iPhone') {
|
|
30
|
+
return 'ios';
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
return 'mtWeb';
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
const componentRules = {
|
|
38
|
+
"downloadApp": {
|
|
39
|
+
component: 'custom-content-section'
|
|
40
|
+
},
|
|
41
|
+
"link-section": {
|
|
42
|
+
component: 'link-section-list'
|
|
43
|
+
},
|
|
44
|
+
"copyright": {
|
|
45
|
+
component: 'custom-content-section'
|
|
46
|
+
},
|
|
47
|
+
"download": {
|
|
48
|
+
component: 'custom-content-section'
|
|
49
|
+
},
|
|
50
|
+
"helpLinks": {
|
|
51
|
+
component: 'image-list'
|
|
52
|
+
},
|
|
53
|
+
"license-description": {
|
|
54
|
+
component: 'custom-content-section'
|
|
55
|
+
},
|
|
56
|
+
"licenses": {
|
|
57
|
+
component: 'image-list',
|
|
58
|
+
},
|
|
59
|
+
"payment": {
|
|
60
|
+
component: 'image-list',
|
|
61
|
+
},
|
|
62
|
+
"social": {
|
|
63
|
+
component: 'image-list',
|
|
64
|
+
},
|
|
65
|
+
"sponsors": {
|
|
66
|
+
component: 'image-list',
|
|
67
|
+
},
|
|
68
|
+
"vendors": {
|
|
69
|
+
component: 'image-list',
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
// This method takes repeater content and changes it to fit an uniform standard for property names in order to be treated in a general case by the footer
|
|
73
|
+
// ex. if helpLinks repeaters use "helpImage" and socialLinks repeaters use "socialImage", both will use "image" after the normalization
|
|
74
|
+
const normalizeRepeaterContent = (data) => {
|
|
75
|
+
const repeaterResponse = {
|
|
76
|
+
repeaters: {
|
|
77
|
+
vendors: {
|
|
78
|
+
categoryTitle: data.gameVendorsLinksTitle,
|
|
79
|
+
content: []
|
|
80
|
+
},
|
|
81
|
+
"link-section": {
|
|
82
|
+
categoryTitle: data.helpLinksTitle,
|
|
83
|
+
content: []
|
|
84
|
+
},
|
|
85
|
+
helpLinks: {
|
|
86
|
+
categoryTitle: data.helpLinksTitle,
|
|
87
|
+
content: []
|
|
88
|
+
},
|
|
89
|
+
licenses: {
|
|
90
|
+
categoryTitle: data.licensesLinksTitle,
|
|
91
|
+
content: []
|
|
92
|
+
},
|
|
93
|
+
sponsors: {
|
|
94
|
+
categoryTitle: data.sponsorsLinksTitle,
|
|
95
|
+
content: []
|
|
96
|
+
},
|
|
97
|
+
payment: {
|
|
98
|
+
categoryTitle: data.paymentLinksTitle,
|
|
99
|
+
content: []
|
|
100
|
+
},
|
|
101
|
+
social: {
|
|
102
|
+
categoryTitle: data.socialLinksTitle,
|
|
103
|
+
content: []
|
|
104
|
+
},
|
|
105
|
+
downloadApp: {
|
|
106
|
+
categoryTitle: data.downloadAppLinksTitle,
|
|
107
|
+
content: []
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
wysiwyg: {
|
|
111
|
+
copyright: {
|
|
112
|
+
categoryTitle: 'test',
|
|
113
|
+
content: 'test'
|
|
114
|
+
},
|
|
115
|
+
download: {
|
|
116
|
+
categoryTitle: 'test',
|
|
117
|
+
content: 'test'
|
|
118
|
+
},
|
|
119
|
+
downloadApp: {
|
|
120
|
+
categoryTitle: 'test',
|
|
121
|
+
content: 'test'
|
|
122
|
+
},
|
|
123
|
+
"license-description": {
|
|
124
|
+
categoryTitle: 'test',
|
|
125
|
+
content: 'test'
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
const propertyNamesMap = {
|
|
130
|
+
helpLinks: {
|
|
131
|
+
repeaterName: 'helpLinksRepeater',
|
|
132
|
+
isExternalLink: 'helpLinkType',
|
|
133
|
+
image: 'helpLinkImage',
|
|
134
|
+
title: 'helpLinkTitle',
|
|
135
|
+
url: 'helpLinkUrl',
|
|
136
|
+
target: 'target'
|
|
137
|
+
},
|
|
138
|
+
"link-section": {
|
|
139
|
+
repeaterName: 'helpLinksRepeater',
|
|
140
|
+
isExternalLink: 'helpLinkType',
|
|
141
|
+
linkCategory: 'helpLinkCategory',
|
|
142
|
+
image: 'helpLinkImage',
|
|
143
|
+
title: 'helpLinkTitle',
|
|
144
|
+
url: 'helpLinkUrl',
|
|
145
|
+
target: 'target'
|
|
146
|
+
},
|
|
147
|
+
social: {
|
|
148
|
+
repeaterName: 'socialLinksRepeater',
|
|
149
|
+
isExternalLink: 'isExternalLink',
|
|
150
|
+
image: 'socialLinkImage',
|
|
151
|
+
title: 'socialLinkTitle',
|
|
152
|
+
url: 'socialLinkUrl',
|
|
153
|
+
target: 'target'
|
|
154
|
+
},
|
|
155
|
+
vendors: {
|
|
156
|
+
repeaterName: 'gameVendorsRepeater',
|
|
157
|
+
isExternalLink: 'isExternalLink',
|
|
158
|
+
image: 'gameVendorImage',
|
|
159
|
+
title: 'gameVendorTitle',
|
|
160
|
+
url: 'gameVendorUrl',
|
|
161
|
+
target: 'target'
|
|
162
|
+
},
|
|
163
|
+
licenses: {
|
|
164
|
+
repeaterName: 'licensesRepeater',
|
|
165
|
+
isExternalLink: 'isExternalLink',
|
|
166
|
+
image: 'licenseImage',
|
|
167
|
+
title: 'licenseTitle',
|
|
168
|
+
url: 'licenseUrl',
|
|
169
|
+
target: 'target'
|
|
170
|
+
},
|
|
171
|
+
payment: {
|
|
172
|
+
repeaterName: 'paymentMethodsRepeater',
|
|
173
|
+
isExternalLink: 'isExternalLink',
|
|
174
|
+
image: 'paymentMethodImage',
|
|
175
|
+
title: 'paymentTitle',
|
|
176
|
+
url: 'paymentUrl',
|
|
177
|
+
target: 'target'
|
|
178
|
+
},
|
|
179
|
+
sponsors: {
|
|
180
|
+
repeaterName: 'sponsorsRepeater',
|
|
181
|
+
isExternalLink: 'isExternalLink',
|
|
182
|
+
image: 'sponsorImage',
|
|
183
|
+
title: 'sponsorTitle',
|
|
184
|
+
url: 'sponsorUrl',
|
|
185
|
+
target: 'target'
|
|
186
|
+
}
|
|
187
|
+
};
|
|
188
|
+
// this goes through all of the repeater content sections and uniformize their property names so that the footer can treat them generally instead of case-by-case
|
|
189
|
+
Object.entries(repeaterResponse.repeaters).forEach(repeater => {
|
|
190
|
+
var _a, _b, _c;
|
|
191
|
+
if (propertyNamesMap[repeater[0]] && data[(_a = propertyNamesMap[repeater[0]]) === null || _a === void 0 ? void 0 : _a.repeaterName]) {
|
|
192
|
+
repeater[1].content = (_c = data[(_b = propertyNamesMap[repeater[0]]) === null || _b === void 0 ? void 0 : _b.repeaterName]) === null || _c === void 0 ? void 0 : _c.map(content => {
|
|
193
|
+
var _a, _b, _c, _d, _e, _f;
|
|
194
|
+
return {
|
|
195
|
+
// all properties have a null fallback - avoid undefined propagation
|
|
196
|
+
isExternalLink: (_a = content[propertyNamesMap[repeater[0]].isExternalLink]) !== null && _a !== void 0 ? _a : null,
|
|
197
|
+
linkCategory: (_b = content[propertyNamesMap[repeater[0]].linkCategory]) !== null && _b !== void 0 ? _b : null,
|
|
198
|
+
image: (_c = content[propertyNamesMap[repeater[0]].image]) !== null && _c !== void 0 ? _c : null,
|
|
199
|
+
title: (_d = content[propertyNamesMap[repeater[0]].title]) !== null && _d !== void 0 ? _d : null,
|
|
200
|
+
url: (_e = content[propertyNamesMap[repeater[0]].url]) !== null && _e !== void 0 ? _e : null,
|
|
201
|
+
target: (_f = content[propertyNamesMap[repeater[0]].target]) !== null && _f !== void 0 ? _f : null,
|
|
202
|
+
};
|
|
203
|
+
});
|
|
204
|
+
}
|
|
205
|
+
});
|
|
206
|
+
repeaterResponse.repeaters.downloadApp.content = data.downloadInfos.imageArea || [];
|
|
207
|
+
repeaterResponse.wysiwyg.downloadApp.content = data.downloadInfos.downloadDescription || '';
|
|
208
|
+
repeaterResponse.wysiwyg.copyright.content = data.copyright;
|
|
209
|
+
repeaterResponse.wysiwyg["license-description"].content = data.licenseDesc;
|
|
210
|
+
return repeaterResponse;
|
|
211
|
+
};
|
|
212
|
+
|
|
213
|
+
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: 12px;\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 padding: 8px 24px 0 24px;\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}";
|
|
214
|
+
const GeneralFooterTemplateStyle0 = demoFooterCss;
|
|
215
|
+
|
|
216
|
+
const pariuriPlusVariantCss = ":host {\n display: block;\n}\n\n/* $-background-primary: #14202d; */\n\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: #fff;\n padding: 12px;\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\n.FooterGrid {\n background-color: #14202D;\n display: grid;\n padding: 8px 24px 0 24px;\n grid-template-rows: repeat(9, auto);\n grid-template-areas: \"one\"\n \"two\"\n \"three\"\n \"four\"\n \"five\"\n \"six\"\n \"seven\";\n}\n\n \n\n.FooterSectionContainer1 {\n position: relative;\n grid-area: one;\n \n}\n.FooterSectionContainer2 {\n position: relative;\n grid-area: two;\n border-bottom: 1px solid rgba(254, 254, 254, 0.2);\n}\n.FooterSectionContainer3 {\n position: relative;\n grid-area: three;\n \n}\n.FooterSectionContainer4 {\n position: relative;\n grid-area: four;\n border-bottom: 1px solid rgba(254, 254, 254, 0.2);\n}\n.FooterSectionContainer5 {\n grid-area: five;\n /* border-bottom: 1px solid #444; */\n}\n.FooterSectionContainer6 {\n padding-top: 22px;\n grid-area: six;\n}\n.FooterSectionContainer7 {\n grid-area: seven;\n}\n\n/* // remove paddings */\n.FooterSectionContainer7 div{\n padding: 0;\n}\n\n.FooterSectionContainer3:after {\n position: absolute;\n content: \"\";\n left: 30%;\n bottom: -20px;\n height: 1px;\n width: 40%;\n background-color: #444;\n}\n\n\n\n/* // STYLES FOR TABLET / DESKTOP */\n@container (min-width: 750px) {\n .FooterGrid {\n background: $-background-primary;\n display: grid;\n grid-template-rows: repeat(5, auto);\n grid-template-columns: 2fr 1fr;\n grid-template-areas: \"one two\"\n \"three four\"\n \"five five\"\n \"six six\"\n \"seven seven\";\n }\n \n \n .FooterSectionContainer1 {\n grid-area: one;\n border-bottom: 1px solid rgba(254, 254, 254, 0.2);\n }\n .FooterSectionContainer2 {\n grid-area: two;\n\n }\n .FooterSectionContainer3 {\n grid-area: three;\n border-bottom: 1px solid rgba(254, 254, 254, 0.2);\n }\n .FooterSectionContainer4 {\n grid-area: four;\n }\n .FooterSectionContainer5 {\n grid-area: five;\n }\n .FooterSectionContainer6 {\n grid-area: six;\n padding: 0;\n }\n .FooterSectionContainer7 {\n grid-area: seven;\n padding: 0;\n }\n\n /* VERTICAL BARS */\n .FooterSectionContainer3:after {\n position: absolute;\n content: \"\";\n left: initial;\n bottom:initial;\n top: 30%;\n right: 20px;\n width: 1px;\n height: 40%;\n background-color: #444;\n }\n\n /* // remove paddings */\n .FooterSectionContainer5 .CustomContentSectionWrapper {\n padding: 0;\n }\n\n .FooterSectionContainer5 .CustomContentSectionWrapper div {\n display: flex;\n flex-direction: column;\n align-items: center;\n }\n\n .FooterSectionContainer5 .CustomContentSectionWrapper div p {\n margin: 5px;\n text-align: center;\n }\n\n .FooterSectionContainer6 .CustomContentSectionWrapper div p {\n text-align: center;\n }\n\n .FooterSectionContainer6 .ImageListWrapper {\n padding: 0;\n }\n\n .FooterSectionContainer6 .ImageListWrapper {\n padding: 0;\n /* padding-bottom: 22px; */\n /* font-size: 14px; */\n }\n\n .FooterSectionContainer7 .CustomContentSectionWrapper {\n padding: 0;\n padding-bottom: 22px;\n font-size: 14px;\n }\n}";
|
|
217
|
+
const GeneralFooterTemplateStyle1 = pariuriPlusVariantCss;
|
|
218
|
+
|
|
219
|
+
const variantStyle1Css = ":host {\n display: block;\n}\n\n/* $-background-primary: #14202d; */\n\n* {\n font-family: sans-serif;\n}\n\nhtml,\nbody {\n margin: 0;\n padding: 0;\n font-family: inherit;\n}\n\n.footer-section__container {\n color: #777;\n padding: 12px;\n}\n\n/* // FOOTER CONTAINER - only serves to be read as a container */\n.footer-container {\n container-type: inline-size;\n container-name: footerContainer;\n}\n\n\n.footer-grid {\n background-color: #14202d;\n display: grid;\n padding: 0 50px;\n grid-template-rows: repeat(9, auto);\n grid-template-areas: \"one\"\n \"two\"\n \"three\"\n \"four\"\n \"five\"\n \"six\"\n \"seven\";\n}\n\n \n\n.footer-section__container--1 {\n grid-area: one;\n border-bottom: 1px solid #444;\n}\n.footer-section__container--2 {\n position: relative;\n grid-area: two;\n border-bottom: 1px solid #444;\n}\n.footer-section__container--3 {\n grid-area: three;\n border-bottom: 1px solid #444;\n}\n.footer-section__container--4 {\n position: relative;\n grid-area: four;\n border-bottom: 1px solid #444;\n}\n.footer-section__container--5 {\n grid-area: five;\n border-bottom: 1px solid #444;\n}\n.footer-section__container--6 {\n padding-top: 22px;\n grid-area: six;\n}\n.footer-section__container--7 {\n grid-area: seven;\n}\n\n/* // remove paddings */\n.footer-section__container--7 div{\n padding: 0;\n}\n\n\n\n/* // STYLES FOR TABLET / DESKTOP */\n@container (min-width: 750px) {\n .footer-grid {\n background: $-background-primary;\n display: grid;\n grid-template-rows: repeat(5, auto);\n grid-template-columns: 1fr 1fr;\n grid-template-areas: \"one one\"\n \"two three\"\n \"four five\"\n \"six six\"\n \"seven seven\";\n }\n \n \n .footer-section__container--1 {\n grid-area: one;\n }\n .footer-section__container--2 {\n grid-area: two;\n }\n .footer-section__container--3 {\n grid-area: three;\n }\n .footer-section__container--4 {\n grid-area: four;\n }\n .footer-section__container--5 {\n grid-area: five;\n }\n .footer-section__container--6 {\n grid-area: six;\n padding: 0;\n }\n .footer-section__container--7 {\n grid-area: seven;\n padding: 0;\n }\n\n /* VERTICAL BARS */\n .footer-section__container--2:after,\n .footer-section__container--4:after {\n position: absolute;\n content: \"\";\n top: 10%;\n right: 0;\n width: 1px;\n height: 80%;\n background-color: #444;\n }\n\n /* // remove paddings */\n .footer-section__container--6 .image-list__wrapper {\n padding: 22px 0 0 0;\n }\n\n .footer-section__container--7 .custom-content-section__wrapper {\n padding: 0;\n padding-bottom: 22px;\n font-size: 14px;\n }\n\n \n}";
|
|
220
|
+
const GeneralFooterTemplateStyle2 = variantStyle1Css;
|
|
221
|
+
|
|
222
|
+
const generalFooterTemplateCss = ":host {\n display: block;\n}\n\n* {\n font-family: sans-serif;\n}\n\nhtml,\nbody {\n margin: 0;\n padding: 0;\n font-family: inherit;\n}\n\n.footer-section__container {\n color: var(--emfe-w-footer-typography, var(--emfe-w-color-white, #FFFFFF));\n padding: 12px;\n}\n\n.footer-container {\n container-type: inline-size;\n container-name: footerContainer;\n}\n\n.footer-grid {\n background-color: var(--emfe-w-footer-color-bg, var(--emfe-w-color-dark-blue, #07072A));\n display: grid;\n grid-template-rows: repeat(9, auto);\n grid-template-areas: \"one\" \"two\" \"three\" \"four\" \"five\" \"six\" \"seven\";\n}\n\n.footer-section__container--1 {\n grid-area: one;\n}\n.footer-section__container--2 {\n grid-area: two;\n}\n.footer-section__container--3 {\n grid-area: three;\n}\n.footer-section__container--4 {\n grid-area: four;\n}\n.footer-section__container--5 {\n grid-area: five;\n}\n.footer-section__container--6 {\n grid-area: six;\n}\n.footer-section__container--7 {\n grid-area: seven;\n}\n\n@container (min-width: 750px) {\n .footer-grid {\n background: var(--emfe-w-footer-color-bg, var(--emfe-w-color-dark-blue, #07072A));\n display: grid;\n grid-template-rows: repeat(7, auto);\n grid-template-columns: 2fr 1fr;\n grid-template-areas: \"one two\" \"three four\" \"five five\" \"six six\" \"seven seven\" \"eight eight\" \"nine nine\";\n }\n .footer-section__container--1 {\n grid-area: one;\n }\n .footer-section__container--2 {\n grid-area: two;\n }\n .footer-section__container--3 {\n grid-area: three;\n }\n .footer-section__container--4 {\n grid-area: four;\n }\n .footer-section__container--5 {\n grid-area: five;\n }\n .footer-section__container--6 {\n grid-area: six;\n }\n .footer-section__container--7 {\n grid-area: seven;\n }\n}";
|
|
223
|
+
const GeneralFooterTemplateStyle3 = generalFooterTemplateCss;
|
|
224
|
+
|
|
225
|
+
const GeneralFooterTemplate = class {
|
|
226
|
+
constructor(hostRef) {
|
|
227
|
+
index.registerInstance(this, hostRef);
|
|
228
|
+
this.platform = getDevicePlatform();
|
|
229
|
+
/**
|
|
230
|
+
* Host element
|
|
231
|
+
*/
|
|
232
|
+
this.MANDATORY_FIELDS = ['endpoint', 'language', 'sections'];
|
|
233
|
+
this.setClientStyling = () => {
|
|
234
|
+
let sheet = document.createElement('style');
|
|
235
|
+
sheet.innerHTML = this.clientStyling;
|
|
236
|
+
this.stylingContainer.prepend(sheet);
|
|
237
|
+
};
|
|
238
|
+
this.setClientStylingURL = () => {
|
|
239
|
+
let url = new URL(this.clientStylingUrl);
|
|
240
|
+
let cssFile = document.createElement('style');
|
|
241
|
+
fetch(url.href)
|
|
242
|
+
.then((res) => res.text())
|
|
243
|
+
.then((data) => {
|
|
244
|
+
cssFile.innerHTML = data;
|
|
245
|
+
setTimeout(() => { this.stylingContainer.prepend(cssFile); }, 1);
|
|
246
|
+
})
|
|
247
|
+
.catch((err) => {
|
|
248
|
+
console.log('error ', err);
|
|
249
|
+
});
|
|
250
|
+
};
|
|
251
|
+
this.language = undefined;
|
|
252
|
+
this.sections = undefined;
|
|
253
|
+
this.endpoint = undefined;
|
|
254
|
+
this.env = 'stage';
|
|
255
|
+
this.userRoles = 'everyone';
|
|
256
|
+
this.userid = undefined;
|
|
257
|
+
this.session = undefined;
|
|
258
|
+
this.baseUrl = undefined;
|
|
259
|
+
this.navigateViaEvent = 'false';
|
|
260
|
+
this.postMessageEvent = 'NavigateTo';
|
|
261
|
+
this.clientStyling = '';
|
|
262
|
+
this.clientStylingUrl = '';
|
|
263
|
+
this.hasErrors = false;
|
|
264
|
+
this.stylingAppends = false;
|
|
265
|
+
}
|
|
266
|
+
validateMandatoryFields() {
|
|
267
|
+
this.MANDATORY_FIELDS.forEach((field) => {
|
|
268
|
+
if (!this[field]) {
|
|
269
|
+
console.error(`Mandatory parameter ${field} not received`);
|
|
270
|
+
this.hasErrors = true;
|
|
271
|
+
}
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
componentWillLoad() {
|
|
275
|
+
this.sectionsList = this.sections.split(',').map(section => section.trim());
|
|
276
|
+
const url = new URL(`${this.endpoint}/${this.language}/footer-raw-data`);
|
|
277
|
+
url.searchParams.append('env', this.env);
|
|
278
|
+
url.searchParams.append('device', this.platform);
|
|
279
|
+
url.searchParams.append('userroles', this.userRoles);
|
|
280
|
+
this.validateMandatoryFields();
|
|
281
|
+
return fetch(url.href)
|
|
282
|
+
.then((res) => res.json())
|
|
283
|
+
.then((data) => {
|
|
284
|
+
this.footerContent = normalizeRepeaterContent(data);
|
|
285
|
+
});
|
|
286
|
+
}
|
|
287
|
+
componentDidRender() {
|
|
288
|
+
// start custom styling area
|
|
289
|
+
if (!this.stylingAppends && this.stylingContainer) {
|
|
290
|
+
if (this.clientStyling)
|
|
291
|
+
this.setClientStyling();
|
|
292
|
+
if (this.clientStylingUrl)
|
|
293
|
+
this.setClientStylingURL();
|
|
294
|
+
this.stylingAppends = true;
|
|
295
|
+
}
|
|
296
|
+
// end custom styling area
|
|
297
|
+
}
|
|
298
|
+
render() {
|
|
299
|
+
const footerSections = this.sectionsList.map((section, i) => {
|
|
300
|
+
const FooterElement = componentRules[section].component;
|
|
301
|
+
const elementIsRepeater = this.footerContent.repeaters.hasOwnProperty(section);
|
|
302
|
+
const elementIsCustom = this.footerContent.wysiwyg.hasOwnProperty(section);
|
|
303
|
+
return index.h(FooterElement, { class: `${section} FooterSectionContainer FooterSectionContainer${i + 1}`, userid: this.userid, session: this.session, "base-url": this.baseUrl, language: this.language, "navigate-via-event": this.navigateViaEvent, "post-message-event": this.postMessageEvent, ruleset: componentRules[section], repeaterContent: elementIsRepeater ? this.footerContent.repeaters[section] : null, customContent: elementIsCustom ? this.footerContent.wysiwyg[section].content : null });
|
|
304
|
+
});
|
|
305
|
+
if (this.hasErrors) {
|
|
306
|
+
return index.h("div", null, "There was an error while bootstraping the widget");
|
|
307
|
+
}
|
|
308
|
+
else {
|
|
309
|
+
return (index.h("footer", { class: "FooterContainer", ref: el => this.stylingContainer = el }, index.h("div", { class: "FooterGrid customStyle" }, footerSections)));
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
};
|
|
313
|
+
GeneralFooterTemplate.style = GeneralFooterTemplateStyle0 + (GeneralFooterTemplateStyle1 + (GeneralFooterTemplateStyle2 + GeneralFooterTemplateStyle3));
|
|
314
|
+
|
|
315
|
+
exports.general_footer_template = GeneralFooterTemplate;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const index = require('./index-4c3922ac.js');
|
|
6
|
+
const appGlobals = require('./app-globals-3a1e7e63.js');
|
|
7
|
+
|
|
8
|
+
/*
|
|
9
|
+
Stencil Client Patch Browser v4.20.0 | MIT Licensed | https://stenciljs.com
|
|
10
|
+
*/
|
|
11
|
+
var patchBrowser = () => {
|
|
12
|
+
const importMeta = (typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('general-footer-template.cjs.js', document.baseURI).href));
|
|
13
|
+
const opts = {};
|
|
14
|
+
if (importMeta !== "") {
|
|
15
|
+
opts.resourcesUrl = new URL(".", importMeta).href;
|
|
16
|
+
}
|
|
17
|
+
return index.promiseResolve(opts);
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
patchBrowser().then(async (options) => {
|
|
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"]}]]],["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"],"hasErrors":[32],"stylingAppends":[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);
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
exports.setNonce = index.setNonce;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const index = require('./index-4c3922ac.js');
|
|
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}";
|
|
8
|
+
const ImageListStyle0 = imageListCss;
|
|
9
|
+
|
|
10
|
+
const ImageList = class {
|
|
11
|
+
constructor(hostRef) {
|
|
12
|
+
index.registerInstance(this, hostRef);
|
|
13
|
+
this.navigateLink = (url, target, externalLink) => {
|
|
14
|
+
window.postMessage({ type: this.postMessageEvent, url, target, externalLink }, window.location.href);
|
|
15
|
+
};
|
|
16
|
+
this.repeaterContent = undefined;
|
|
17
|
+
this.navigateViaEvent = false;
|
|
18
|
+
this.postMessageEvent = '';
|
|
19
|
+
}
|
|
20
|
+
render() {
|
|
21
|
+
var _a, _b, _c;
|
|
22
|
+
return index.h("div", { key: '16df5dda83672031449915c4a87aa904032ba5a1', class: "ImageListContainer" }, index.h("div", { key: '5bd3f924a852ebf20cdeef3349bc68bf3f11d18d', class: "ImageListWrapper" }, index.h("div", { key: '1aef8f464a64f1526cf608207fae6938aba83362', class: "ImageListSectionTitle" }, (_a = this.repeaterContent) === null || _a === void 0 ? void 0 : _a.categoryTitle), index.h("div", { key: '0388ae28994cfa29e19e6524e720b88e4ff29b54', 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)))));
|
|
24
|
+
}))));
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
ImageList.style = ImageListStyle0;
|
|
28
|
+
|
|
29
|
+
exports.image_list = ImageList;
|