@everymatrix/general-footer-template 1.52.6 → 1.53.10

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/_commonjsHelpers-0a7b82d9.js +21 -0
  2. package/dist/cjs/custom-clock.cjs.entry.js +43 -2194
  3. package/dist/cjs/custom-content-section.cjs.entry.js +164 -132
  4. package/dist/cjs/general-footer-template.cjs.entry.js +43 -18
  5. package/dist/cjs/general-footer-template.cjs.js +3 -3
  6. package/dist/cjs/image-list.cjs.entry.js +9 -4
  7. package/dist/cjs/{index-465b4ca9.js → index-bd066c40.js} +188 -92
  8. package/dist/cjs/link-section-list.cjs.entry.js +7 -4
  9. package/dist/cjs/loader.cjs.js +2 -2
  10. package/dist/collection/collection-manifest.json +1 -1
  11. package/dist/collection/components/custom-clock/custom-clock.js +56 -8
  12. package/dist/collection/components/custom-content-section/custom-content-section.js +14 -2
  13. package/dist/collection/components/general-footer-template/general-footer-template.js +90 -17
  14. package/dist/collection/components/image-list/image-list.js +14 -3
  15. package/dist/collection/components/link-section-list/link-section-list.js +16 -3
  16. package/dist/esm/_commonjsHelpers-57e89916.js +18 -0
  17. package/dist/esm/custom-clock.entry.js +43 -2194
  18. package/dist/esm/custom-content-section.entry.js +155 -123
  19. package/dist/esm/general-footer-template.entry.js +43 -18
  20. package/dist/esm/general-footer-template.js +4 -4
  21. package/dist/esm/image-list.entry.js +9 -4
  22. package/dist/esm/{index-9775f5ee.js → index-f9286439.js} +188 -92
  23. package/dist/esm/link-section-list.entry.js +7 -4
  24. package/dist/esm/loader.js +3 -3
  25. package/dist/general-footer-template/general-footer-template.esm.js +1 -1
  26. package/dist/general-footer-template/p-9db940d5.entry.js +1 -0
  27. package/dist/general-footer-template/p-a1261e98.entry.js +1 -0
  28. package/dist/general-footer-template/p-bf402206.entry.js +1 -0
  29. package/dist/general-footer-template/p-c032aa40.entry.js +1 -0
  30. package/dist/general-footer-template/p-cb65c223.js +1 -0
  31. package/dist/general-footer-template/p-f798fd15.js +2 -0
  32. package/dist/general-footer-template/p-faca7e12.entry.js +8 -0
  33. package/dist/types/components/custom-clock/custom-clock.d.ts +4 -0
  34. package/dist/types/components/general-footer-template/general-footer-template.d.ts +4 -0
  35. package/dist/types/components.d.ts +16 -0
  36. package/package.json +1 -1
  37. package/dist/general-footer-template/p-2fce3c9f.js +0 -2
  38. package/dist/general-footer-template/p-330130cd.entry.js +0 -1
  39. package/dist/general-footer-template/p-5982a2ca.entry.js +0 -8
  40. package/dist/general-footer-template/p-8a165606.entry.js +0 -1
  41. package/dist/general-footer-template/p-abce093a.entry.js +0 -1
  42. package/dist/general-footer-template/p-e19d7226.entry.js +0 -1
@@ -1,17 +1,39 @@
1
1
  import { h } from "@stencil/core";
2
2
  import { translate, getTranslations } from "../../utils/locale.utils";
3
- import { format } from "date-fns";
3
+ import dayjs from "dayjs";
4
+ import utc from "dayjs/plugin/utc";
5
+ import timezone from "dayjs/plugin/timezone";
4
6
  export class CustomClock {
5
7
  constructor() {
8
+ /**
9
+ * clockformat
10
+ */
11
+ this.clockFormat = 'HH:mm:ss';
12
+ /**
13
+ * configurable time zone
14
+ */
15
+ this.timeZone = '';
16
+ /**
17
+ * custom translation by href
18
+ */
19
+ this.translationUrl = '';
20
+ /**
21
+ * language
22
+ */
23
+ this.language = 'en';
24
+ this.timeString = '';
6
25
  this.startClock = () => {
7
26
  this.intervalId = setInterval(() => {
8
- this.timeString = format(new Date(), this.clockFormat);
27
+ if (this.timeZone.length > 0) {
28
+ dayjs.extend(utc);
29
+ dayjs.extend(timezone);
30
+ this.timeString = dayjs().tz(this.timeZone).format(this.clockFormat);
31
+ }
32
+ else {
33
+ this.timeString = dayjs().format(this.clockFormat);
34
+ }
9
35
  }, 1000);
10
36
  };
11
- this.clockFormat = 'hh:MM a';
12
- this.translationUrl = '';
13
- this.language = 'en';
14
- this.timeString = '';
15
37
  }
16
38
  handleNewTranslations() {
17
39
  getTranslations(this.translationUrl);
@@ -28,7 +50,7 @@ export class CustomClock {
28
50
  clearInterval(this.intervalId);
29
51
  }
30
52
  render() {
31
- return (h("div", { key: '35cc9ba979bdc24b138d98d94f5a68139b126634', class: "CustomClockContainer" }, h("p", { key: '49654823c681d720bdb2beca7516395afadfe123' }, translate('currentTime', this.language), ": ", this.timeString)));
53
+ return (h("div", { key: 'a5f785406272352dfe1797105d524c042ff03b41', class: "CustomClockContainer" }, h("p", { key: '8e9ebfae2f06a4297af2f39210e8687bc6c141b4' }, translate('currentTime', this.language), ": ", this.timeString)));
32
54
  }
33
55
  static get is() { return "custom-clock"; }
34
56
  static get encapsulation() { return "scoped"; }
@@ -58,9 +80,31 @@ export class CustomClock {
58
80
  "tags": [],
59
81
  "text": "clockformat"
60
82
  },
83
+ "getter": false,
84
+ "setter": false,
61
85
  "attribute": "clock-format",
62
86
  "reflect": true,
63
- "defaultValue": "'hh:MM a'"
87
+ "defaultValue": "'HH:mm:ss'"
88
+ },
89
+ "timeZone": {
90
+ "type": "string",
91
+ "mutable": false,
92
+ "complexType": {
93
+ "original": "string",
94
+ "resolved": "string",
95
+ "references": {}
96
+ },
97
+ "required": false,
98
+ "optional": false,
99
+ "docs": {
100
+ "tags": [],
101
+ "text": "configurable time zone"
102
+ },
103
+ "getter": false,
104
+ "setter": false,
105
+ "attribute": "time-zone",
106
+ "reflect": true,
107
+ "defaultValue": "''"
64
108
  },
65
109
  "translationUrl": {
66
110
  "type": "string",
@@ -76,6 +120,8 @@ export class CustomClock {
76
120
  "tags": [],
77
121
  "text": "custom translation by href"
78
122
  },
123
+ "getter": false,
124
+ "setter": false,
79
125
  "attribute": "translation-url",
80
126
  "reflect": true,
81
127
  "defaultValue": "''"
@@ -94,6 +140,8 @@ export class CustomClock {
94
140
  "tags": [],
95
141
  "text": "language"
96
142
  },
143
+ "getter": false,
144
+ "setter": false,
97
145
  "attribute": "language",
98
146
  "reflect": true,
99
147
  "defaultValue": "'en'"
@@ -2,9 +2,13 @@ import { h } from "@stencil/core";
2
2
  import sanitizeHtml from "sanitize-html";
3
3
  export class CustomContentSection {
4
4
  constructor() {
5
- this.customContent = undefined;
6
- this.repeaterContent = undefined;
5
+ /**
6
+ * If this is true it will emit an event at the moment the content with url its clicked
7
+ */
7
8
  this.navigateViaEvent = false;
9
+ /**
10
+ * Post Message event to be sent on navigation via Event
11
+ */
8
12
  this.postMessageEvent = '';
9
13
  }
10
14
  render() {
@@ -44,6 +48,8 @@ export class CustomContentSection {
44
48
  "tags": [],
45
49
  "text": "custom HTML content to be rendered"
46
50
  },
51
+ "getter": false,
52
+ "setter": false,
47
53
  "attribute": "custom-content",
48
54
  "reflect": false
49
55
  },
@@ -61,6 +67,8 @@ export class CustomContentSection {
61
67
  "tags": [],
62
68
  "text": "the links content to be displayed, including titles, url, open target"
63
69
  },
70
+ "getter": false,
71
+ "setter": false,
64
72
  "attribute": "repeater-content",
65
73
  "reflect": false
66
74
  },
@@ -78,6 +86,8 @@ export class CustomContentSection {
78
86
  "tags": [],
79
87
  "text": "If this is true it will emit an event at the moment the content with url its clicked"
80
88
  },
89
+ "getter": false,
90
+ "setter": false,
81
91
  "attribute": "navigate-via-event",
82
92
  "reflect": true,
83
93
  "defaultValue": "false"
@@ -96,6 +106,8 @@ export class CustomContentSection {
96
106
  "tags": [],
97
107
  "text": "Post Message event to be sent on navigation via Event"
98
108
  },
109
+ "getter": false,
110
+ "setter": false,
99
111
  "attribute": "post-message-event",
100
112
  "reflect": true,
101
113
  "defaultValue": "''"
@@ -2,6 +2,47 @@ import { h } from "@stencil/core";
2
2
  import { componentRules, normalizeRepeaterContent, getDevicePlatform } from "../../utils/utils";
3
3
  export class GeneralFooterTemplate {
4
4
  constructor() {
5
+ /**
6
+ * Environment segregation
7
+ */
8
+ this.env = 'stage';
9
+ /**
10
+ * User roles
11
+ */
12
+ this.userRoles = 'everyone';
13
+ /**
14
+ * If this is true it will emit an event at the moment the content with url its clicked
15
+ */
16
+ this.navigateViaEvent = 'false';
17
+ /**
18
+ * Post Message event to be sent on navigation via Event
19
+ */
20
+ this.postMessageEvent = 'NavigateTo';
21
+ /**
22
+ * custom styling by string content
23
+ */
24
+ this.clientStyling = '';
25
+ /**
26
+ * custom styling by href
27
+ */
28
+ this.clientStylingUrl = '';
29
+ /**
30
+ * custom translation by href
31
+ */
32
+ this.translationUrl = '';
33
+ /**
34
+ * clockformat
35
+ */
36
+ this.clockFormat = 'HH:MM:ss';
37
+ /**
38
+ * configurable time zone
39
+ */
40
+ this.timeZone = '';
41
+ /**
42
+ * wether or not styling appends should be disallowed
43
+ */
44
+ this.hasErrors = false;
45
+ this.stylingAppends = false;
5
46
  this.platform = getDevicePlatform();
6
47
  /**
7
48
  * Host element
@@ -25,22 +66,6 @@ export class GeneralFooterTemplate {
25
66
  console.log('error ', err);
26
67
  });
27
68
  };
28
- this.language = undefined;
29
- this.sections = undefined;
30
- this.endpoint = undefined;
31
- this.env = 'stage';
32
- this.userRoles = 'everyone';
33
- this.userid = undefined;
34
- this.session = undefined;
35
- this.baseUrl = undefined;
36
- this.navigateViaEvent = 'false';
37
- this.postMessageEvent = 'NavigateTo';
38
- this.clientStyling = '';
39
- this.clientStylingUrl = '';
40
- this.translationUrl = '';
41
- this.clockFormat = 'HH:MM:ss';
42
- this.hasErrors = false;
43
- this.stylingAppends = false;
44
69
  }
45
70
  validateMandatoryFields() {
46
71
  this.MANDATORY_FIELDS.forEach((field) => {
@@ -88,7 +113,7 @@ export class GeneralFooterTemplate {
88
113
  const FooterElement = componentRules[section].component;
89
114
  const elementIsRepeater = this.footerContent.repeaters.hasOwnProperty(section);
90
115
  const elementIsCustom = this.footerContent.wysiwyg.hasOwnProperty(section);
91
- return 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, "translation-url": this.translationUrl, "clock-format": this.clockFormat });
116
+ return 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, "translation-url": this.translationUrl, "clock-format": this.clockFormat, "time-zone": this.timeZone });
92
117
  });
93
118
  return (h("footer", { class: "FooterContainer", ref: el => this.stylingContainer = el }, h("div", { class: "FooterGrid customStyle" }, footerSections)));
94
119
  }
@@ -121,6 +146,8 @@ export class GeneralFooterTemplate {
121
146
  "tags": [],
122
147
  "text": "the language of the footer"
123
148
  },
149
+ "getter": false,
150
+ "setter": false,
124
151
  "attribute": "language",
125
152
  "reflect": true
126
153
  },
@@ -138,6 +165,8 @@ export class GeneralFooterTemplate {
138
165
  "tags": [],
139
166
  "text": "which sections should be included in the footer (some have defined attributes)"
140
167
  },
168
+ "getter": false,
169
+ "setter": false,
141
170
  "attribute": "sections",
142
171
  "reflect": true
143
172
  },
@@ -155,6 +184,8 @@ export class GeneralFooterTemplate {
155
184
  "tags": [],
156
185
  "text": "endpoint for data retrieval"
157
186
  },
187
+ "getter": false,
188
+ "setter": false,
158
189
  "attribute": "endpoint",
159
190
  "reflect": true
160
191
  },
@@ -172,6 +203,8 @@ export class GeneralFooterTemplate {
172
203
  "tags": [],
173
204
  "text": "Environment segregation"
174
205
  },
206
+ "getter": false,
207
+ "setter": false,
175
208
  "attribute": "env",
176
209
  "reflect": true,
177
210
  "defaultValue": "'stage'"
@@ -190,6 +223,8 @@ export class GeneralFooterTemplate {
190
223
  "tags": [],
191
224
  "text": "User roles"
192
225
  },
226
+ "getter": false,
227
+ "setter": false,
193
228
  "attribute": "user-roles",
194
229
  "reflect": true,
195
230
  "defaultValue": "'everyone'"
@@ -208,6 +243,8 @@ export class GeneralFooterTemplate {
208
243
  "tags": [],
209
244
  "text": "the id of the current userid, to be used in order to determine login status (relevant for certain components ex. \"panic button\")"
210
245
  },
246
+ "getter": false,
247
+ "setter": false,
211
248
  "attribute": "userid",
212
249
  "reflect": true
213
250
  },
@@ -225,6 +262,8 @@ export class GeneralFooterTemplate {
225
262
  "tags": [],
226
263
  "text": "the current session, to be used in order to determine login status (relevant for certain components ex. \"panic button\")"
227
264
  },
265
+ "getter": false,
266
+ "setter": false,
228
267
  "attribute": "session",
229
268
  "reflect": true
230
269
  },
@@ -242,6 +281,8 @@ export class GeneralFooterTemplate {
242
281
  "tags": [],
243
282
  "text": "If this is present, then the footer will attach the baseurl inside src for all HelperLinks present in the footer (so it will be baseurl + helper_link) - This is needed when the footer is integrated inside an iframe it can\u2019t take the parent host to create the right anchors."
244
283
  },
284
+ "getter": false,
285
+ "setter": false,
245
286
  "attribute": "base-url",
246
287
  "reflect": true
247
288
  },
@@ -259,6 +300,8 @@ export class GeneralFooterTemplate {
259
300
  "tags": [],
260
301
  "text": "If this is true it will emit an event at the moment the content with url its clicked"
261
302
  },
303
+ "getter": false,
304
+ "setter": false,
262
305
  "attribute": "navigate-via-event",
263
306
  "reflect": true,
264
307
  "defaultValue": "'false'"
@@ -277,6 +320,8 @@ export class GeneralFooterTemplate {
277
320
  "tags": [],
278
321
  "text": "Post Message event to be sent on navigation via Event"
279
322
  },
323
+ "getter": false,
324
+ "setter": false,
280
325
  "attribute": "post-message-event",
281
326
  "reflect": true,
282
327
  "defaultValue": "'NavigateTo'"
@@ -295,6 +340,8 @@ export class GeneralFooterTemplate {
295
340
  "tags": [],
296
341
  "text": "custom styling by string content"
297
342
  },
343
+ "getter": false,
344
+ "setter": false,
298
345
  "attribute": "client-styling",
299
346
  "reflect": true,
300
347
  "defaultValue": "''"
@@ -313,6 +360,8 @@ export class GeneralFooterTemplate {
313
360
  "tags": [],
314
361
  "text": "custom styling by href"
315
362
  },
363
+ "getter": false,
364
+ "setter": false,
316
365
  "attribute": "client-styling-url",
317
366
  "reflect": true,
318
367
  "defaultValue": "''"
@@ -331,6 +380,8 @@ export class GeneralFooterTemplate {
331
380
  "tags": [],
332
381
  "text": "custom translation by href"
333
382
  },
383
+ "getter": false,
384
+ "setter": false,
334
385
  "attribute": "translation-url",
335
386
  "reflect": true,
336
387
  "defaultValue": "''"
@@ -349,9 +400,31 @@ export class GeneralFooterTemplate {
349
400
  "tags": [],
350
401
  "text": "clockformat"
351
402
  },
403
+ "getter": false,
404
+ "setter": false,
352
405
  "attribute": "clock-format",
353
406
  "reflect": true,
354
407
  "defaultValue": "'HH:MM:ss'"
408
+ },
409
+ "timeZone": {
410
+ "type": "string",
411
+ "mutable": false,
412
+ "complexType": {
413
+ "original": "string",
414
+ "resolved": "string",
415
+ "references": {}
416
+ },
417
+ "required": false,
418
+ "optional": false,
419
+ "docs": {
420
+ "tags": [],
421
+ "text": "configurable time zone"
422
+ },
423
+ "getter": false,
424
+ "setter": false,
425
+ "attribute": "time-zone",
426
+ "reflect": true,
427
+ "defaultValue": "''"
355
428
  }
356
429
  };
357
430
  }
@@ -1,12 +1,17 @@
1
1
  import { h } from "@stencil/core";
2
2
  export class ImageList {
3
3
  constructor() {
4
+ /**
5
+ * If this is true it will emit an event at the moment the content with url its clicked
6
+ */
7
+ this.navigateViaEvent = false;
8
+ /**
9
+ * Post Message event to be sent on navigation via event
10
+ */
11
+ this.postMessageEvent = '';
4
12
  this.navigateLink = (url, target, externalLink) => {
5
13
  window.postMessage({ type: this.postMessageEvent, path: url, url, target, externalLink }, window.location.href);
6
14
  };
7
- this.repeaterContent = undefined;
8
- this.navigateViaEvent = false;
9
- this.postMessageEvent = '';
10
15
  }
11
16
  render() {
12
17
  var _a, _b, _c;
@@ -42,6 +47,8 @@ export class ImageList {
42
47
  "tags": [],
43
48
  "text": "the links content to be displayed, including titles, url, open target"
44
49
  },
50
+ "getter": false,
51
+ "setter": false,
45
52
  "attribute": "repeater-content",
46
53
  "reflect": false
47
54
  },
@@ -59,6 +66,8 @@ export class ImageList {
59
66
  "tags": [],
60
67
  "text": "If this is true it will emit an event at the moment the content with url its clicked"
61
68
  },
69
+ "getter": false,
70
+ "setter": false,
62
71
  "attribute": "navigate-via-event",
63
72
  "reflect": false,
64
73
  "defaultValue": "false"
@@ -77,6 +86,8 @@ export class ImageList {
77
86
  "tags": [],
78
87
  "text": "Post Message event to be sent on navigation via event"
79
88
  },
89
+ "getter": false,
90
+ "setter": false,
80
91
  "attribute": "post-message-event",
81
92
  "reflect": true,
82
93
  "defaultValue": "''"
@@ -1,10 +1,13 @@
1
1
  import { h } from "@stencil/core";
2
2
  export class LinkSectionList {
3
3
  constructor() {
4
- this.repeaterContent = undefined;
5
- this.baseUrl = undefined;
6
- this.language = undefined;
4
+ /**
5
+ * If this is true it will emit an event at the moment the content with url its clicked
6
+ */
7
7
  this.navigateViaEvent = false;
8
+ /**
9
+ * Post Message event to be sent on navigation via event
10
+ */
8
11
  this.postMessageEvent = '';
9
12
  }
10
13
  navigateLink(link) {
@@ -74,6 +77,8 @@ export class LinkSectionList {
74
77
  "tags": [],
75
78
  "text": "the links content to be displayed, including titles, url, open target"
76
79
  },
80
+ "getter": false,
81
+ "setter": false,
77
82
  "attribute": "repeater-content",
78
83
  "reflect": false
79
84
  },
@@ -91,6 +96,8 @@ export class LinkSectionList {
91
96
  "tags": [],
92
97
  "text": "If this is present, then the footer will attach the baseurl inside src for all HelperLinks present in the footer (so it will be baseurl + helper_link) - This is needed when the footer is integrated inside an iframe it can\u2019t take the parent host to create the right anchors."
93
98
  },
99
+ "getter": false,
100
+ "setter": false,
94
101
  "attribute": "base-url",
95
102
  "reflect": true
96
103
  },
@@ -108,6 +115,8 @@ export class LinkSectionList {
108
115
  "tags": [],
109
116
  "text": "the language of the footer"
110
117
  },
118
+ "getter": false,
119
+ "setter": false,
111
120
  "attribute": "language",
112
121
  "reflect": true
113
122
  },
@@ -125,6 +134,8 @@ export class LinkSectionList {
125
134
  "tags": [],
126
135
  "text": "If this is true it will emit an event at the moment the content with url its clicked"
127
136
  },
137
+ "getter": false,
138
+ "setter": false,
128
139
  "attribute": "navigate-via-event",
129
140
  "reflect": false,
130
141
  "defaultValue": "false"
@@ -143,6 +154,8 @@ export class LinkSectionList {
143
154
  "tags": [],
144
155
  "text": "Post Message event to be sent on navigation via event"
145
156
  },
157
+ "getter": false,
158
+ "setter": false,
146
159
  "attribute": "post-message-event",
147
160
  "reflect": true,
148
161
  "defaultValue": "''"
@@ -0,0 +1,18 @@
1
+ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
2
+
3
+ function getAugmentedNamespace(n) {
4
+ if (n.__esModule) return n;
5
+ var a = Object.defineProperty({}, '__esModule', {value: true});
6
+ Object.keys(n).forEach(function (k) {
7
+ var d = Object.getOwnPropertyDescriptor(n, k);
8
+ Object.defineProperty(a, k, d.get ? d : {
9
+ enumerable: true,
10
+ get: function () {
11
+ return n[k];
12
+ }
13
+ });
14
+ });
15
+ return a;
16
+ }
17
+
18
+ export { commonjsGlobal as c, getAugmentedNamespace as g };