@sme.up/ketchup 11.0.0-SNAPSHOT-20241023150629 → 11.0.0-SNAPSHOT-20241024071006
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/ketchup.cjs.js +1 -1
- package/dist/cjs/kup-calendar.cjs.entry.js +21 -27
- package/dist/cjs/kup-calendar.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/assets/calendar.js +219 -36
- package/dist/collection/components/kup-calendar/kup-calendar-declarations.js.map +1 -1
- package/dist/collection/components/kup-calendar/kup-calendar.js +46 -27
- package/dist/collection/components/kup-calendar/kup-calendar.js.map +1 -1
- package/dist/components/kup-calendar.js +22 -27
- package/dist/components/kup-calendar.js.map +1 -1
- package/dist/esm/ketchup.js +1 -1
- package/dist/esm/kup-calendar.entry.js +21 -27
- package/dist/esm/kup-calendar.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/ketchup/ketchup.esm.js +1 -1
- package/dist/ketchup/ketchup.esm.js.map +1 -1
- package/dist/ketchup/{p-05a7120a.entry.js → p-1ffcc364.entry.js} +2 -2
- package/dist/ketchup/p-1ffcc364.entry.js.map +1 -0
- package/dist/types/components/kup-calendar/kup-calendar-declarations.d.ts +4 -4
- package/dist/types/components/kup-calendar/kup-calendar.d.ts +7 -1
- package/dist/types/components.d.ts +12 -2
- package/package.json +1 -1
- package/dist/ketchup/p-05a7120a.entry.js.map +0 -1
|
@@ -37,6 +37,15 @@ export class KupCalendar {
|
|
|
37
37
|
this.currentDate = null;
|
|
38
38
|
this.customStyle = '';
|
|
39
39
|
this.data = null;
|
|
40
|
+
this.calendarColumns = {
|
|
41
|
+
[KupCalendarOptions.DATE]: '',
|
|
42
|
+
[KupCalendarOptions.DESCR]: '',
|
|
43
|
+
[KupCalendarOptions.END]: '',
|
|
44
|
+
[KupCalendarOptions.ICON]: '',
|
|
45
|
+
[KupCalendarOptions.IMAGE]: '',
|
|
46
|
+
[KupCalendarOptions.START]: '',
|
|
47
|
+
[KupCalendarOptions.STYLE]: '',
|
|
48
|
+
};
|
|
40
49
|
this.hideNavigation = false;
|
|
41
50
|
this.editableEvents = true;
|
|
42
51
|
this.viewType = KupCalendarViewTypes.MONTH;
|
|
@@ -45,37 +54,22 @@ export class KupCalendar {
|
|
|
45
54
|
/* W a t c h e r s */
|
|
46
55
|
/*-------------------------------------------------*/
|
|
47
56
|
setCalendarData() {
|
|
57
|
+
var _a;
|
|
48
58
|
if (!this.calendarContainer) {
|
|
49
59
|
return;
|
|
50
60
|
}
|
|
51
61
|
if (this.calendar) {
|
|
52
62
|
this.calendar.destroy();
|
|
53
63
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
case KupCalendarOptions.END:
|
|
64
|
-
this.endCol = column.name;
|
|
65
|
-
break;
|
|
66
|
-
case KupCalendarOptions.ICON:
|
|
67
|
-
this.iconCol = column.name;
|
|
68
|
-
break;
|
|
69
|
-
case KupCalendarOptions.IMAGE:
|
|
70
|
-
this.imageCol = column.name;
|
|
71
|
-
break;
|
|
72
|
-
case KupCalendarOptions.START:
|
|
73
|
-
this.startCol = column.name;
|
|
74
|
-
break;
|
|
75
|
-
case KupCalendarOptions.STYLE:
|
|
76
|
-
this.styleCol = column.name;
|
|
77
|
-
break;
|
|
78
|
-
}
|
|
64
|
+
if ((_a = this.data) === null || _a === void 0 ? void 0 : _a.columns) {
|
|
65
|
+
this.data.columns.forEach((column) => {
|
|
66
|
+
for (const key in this.calendarColumns) {
|
|
67
|
+
if (this.calendarColumns[key] === column.name) {
|
|
68
|
+
this[`${key}Col`] = column.name;
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
});
|
|
79
73
|
}
|
|
80
74
|
this.calendar = new Calendar(this.calendarContainer, {
|
|
81
75
|
dateClick: ({ date }) => {
|
|
@@ -358,11 +352,11 @@ export class KupCalendar {
|
|
|
358
352
|
this.kupManager.debug.logRender(this, true);
|
|
359
353
|
}
|
|
360
354
|
render() {
|
|
361
|
-
return (h(Host, { key: '
|
|
355
|
+
return (h(Host, { key: 'bdd424eed81973543ce0456b76729821e630de31' }, h("style", { key: '390d5a2a2d06f5119d1e03c7fd00271983ebcce4' }, this.kupManager.theme.setKupStyle(this.rootElement)), h("div", { key: '7b24bb47c6b934f5fe47289790ee717ce261d9b9', id: componentWrapperId }, h("div", { key: '2f72c647d22945a38bce0073729ffbd3f28dec9e', class: "navigation" }, !this.hideNavigation ? (h("div", { class: "navigation__left" }, h(FButton, { icon: "chevron_left", onClick: () => this.onPrev(), title: this.kupManager.language.translate(KupLanguageGeneric.PREVIOUS), wrapperClass: "navigation__prev" }), h(FButton, { icon: "calendar", onClick: () => this.onToday(), title: this.kupManager.language.translate(KupLanguageGeneric.TODAY), wrapperClass: "navigation__today" }), h(FButton, { icon: "chevron_right", onClick: () => this.onNext(), title: this.kupManager.language.translate(KupLanguageGeneric.NEXT), wrapperClass: "navigation__next" }))) : null, h("div", { key: '35a9b8aa076db1e723de96fcd9a5eb8b6b7dcf40', class: `navigation__title ${this.hideNavigation
|
|
362
356
|
? 'navigation__title--centered'
|
|
363
357
|
: ''}`, ref: (el) => {
|
|
364
358
|
this.navTitle = el;
|
|
365
|
-
} }), !this.hideNavigation ? (h("div", { class: "navigation__right" }, h(FChip, Object.assign({}, this.setChipProps())))) : null), h("div", { key: '
|
|
359
|
+
} }), !this.hideNavigation ? (h("div", { class: "navigation__right" }, h(FChip, Object.assign({}, this.setChipProps())))) : null), h("div", { key: '4ade88713da0e92a1c21b62922db53c23f0e6e0a', class: "calendar", ref: (el) => (this.calendarContainer = el) }))));
|
|
366
360
|
}
|
|
367
361
|
disconnectedCallback() {
|
|
368
362
|
if (this.calendar) {
|
|
@@ -457,6 +451,31 @@ export class KupCalendar {
|
|
|
457
451
|
},
|
|
458
452
|
"defaultValue": "null"
|
|
459
453
|
},
|
|
454
|
+
"calendarColumns": {
|
|
455
|
+
"type": "unknown",
|
|
456
|
+
"mutable": false,
|
|
457
|
+
"complexType": {
|
|
458
|
+
"original": "KupCalendarColumnsProp",
|
|
459
|
+
"resolved": "{ date: string; descr: string; end: string; icon: string; image: string; start: string; style: string; }",
|
|
460
|
+
"references": {
|
|
461
|
+
"KupCalendarColumnsProp": {
|
|
462
|
+
"location": "import",
|
|
463
|
+
"path": "./kup-calendar-declarations",
|
|
464
|
+
"id": "src/components/kup-calendar/kup-calendar-declarations.ts::KupCalendarColumnsProp"
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
},
|
|
468
|
+
"required": false,
|
|
469
|
+
"optional": false,
|
|
470
|
+
"docs": {
|
|
471
|
+
"tags": [{
|
|
472
|
+
"name": "default",
|
|
473
|
+
"text": "{KupCalendarOptions: \"\"}"
|
|
474
|
+
}],
|
|
475
|
+
"text": "Sets which columns of the data property will be used to render each\ncharacteristic of an event in the calendar."
|
|
476
|
+
},
|
|
477
|
+
"defaultValue": "{\n [KupCalendarOptions.DATE]: '',\n [KupCalendarOptions.DESCR]: '',\n [KupCalendarOptions.END]: '',\n [KupCalendarOptions.ICON]: '',\n [KupCalendarOptions.IMAGE]: '',\n [KupCalendarOptions.START]: '',\n [KupCalendarOptions.STYLE]: '',\n }"
|
|
478
|
+
},
|
|
460
479
|
"hideNavigation": {
|
|
461
480
|
"type": "boolean",
|
|
462
481
|
"mutable": false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kup-calendar.js","sourceRoot":"","sources":["../../../src/components/kup-calendar/kup-calendar.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,SAAS,EACT,OAAO,EACP,KAAK,EAEL,WAAW,EACX,YAAY,EACZ,CAAC,EACD,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,GACR,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,QAAQ,GAIX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,aAAa,MAAM,uBAAuB,CAAC;AAClD,OAAO,iBAAiB,MAAM,2BAA2B,CAAC;AAC1D,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAC5C,OAAO,cAAc,MAAM,wBAAwB,CAAC;AACpD,OAAO,QAAQ,MAAM,kCAAkC,CAAC;AACxD,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,QAAQ,MAAM,kCAAkC,CAAC;AACxD,OAAO,EAEH,kBAAkB,GACrB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEvD,OAAO,EAKH,kBAAkB,EAClB,gBAAgB,EAEhB,oBAAoB,GACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACzD,OAAO,EAEH,SAAS,GACZ,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uDAAuD,CAAC;AAC3F,OAAO,EACH,eAAe,EACf,eAAe,GAClB,MAAM,iDAAiD,CAAC;AAYzD,MAAM,OAAO,WAAW;;QAgDZ,sBAAiB,GAAmB,IAAI,CAAC;QACzC,eAAU,GAAe,kBAAkB,EAAE,CAAC;QAC9C,aAAQ,GAAmB,IAAI,CAAC;QAChC,kBAAa,GAAW,IAAI,CAAC;QAC7B,YAAO,GAAW,IAAI,CAAC;QACvB,aAAQ,GAAW,IAAI,CAAC;QACxB,WAAM,GAAW,IAAI,CAAC;QACtB,YAAO,GAAW,IAAI,CAAC;QACvB,aAAQ,GAAW,IAAI,CAAC;QACxB,aAAQ,GAAW,IAAI,CAAC;QACxB,aAAQ,GAAW,IAAI,CAAC;2BA5CF,IAAI;2BAMJ,EAAE;oBAKA,IAAI;8BAKX,KAAK;8BAKI,IAAI;wBAMlC,oBAAoB,CAAC,KAAK;;IAgE9B,qDAAqD;IACrD,qDAAqD;IACrD,qDAAqD;IAIrD,eAAe;QACX,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC1B,OAAO;QACX,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC5B,CAAC;QACD,KACI,IAAI,KAAK,GAAG,CAAC,EACb,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAClE,KAAK,EAAE,EACT,CAAC;YACC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACxC,QAAQ,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC5B,KAAK,kBAAkB,CAAC,IAAI;oBACxB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC3B,MAAM;gBACV,KAAK,kBAAkB,CAAC,KAAK;oBACzB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC5B,MAAM;gBACV,KAAK,kBAAkB,CAAC,GAAG;oBACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC1B,MAAM;gBACV,KAAK,kBAAkB,CAAC,IAAI;oBACxB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC3B,MAAM;gBACV,KAAK,kBAAkB,CAAC,KAAK;oBACzB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC5B,MAAM;gBACV,KAAK,kBAAkB,CAAC,KAAK;oBACzB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC5B,MAAM;gBACV,KAAK,kBAAkB,CAAC,KAAK;oBACzB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC5B,MAAM;YACd,CAAC;QACL,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE;YACjD,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;gBACpB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;oBAC3B,IAAI,EAAE,IAAI;oBACV,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE;oBACvB,IAAI,EAAE,IAAI;iBACb,CAAC,CAAC;YACP,CAAC;YACD,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;gBACtB,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC;oBAC5B,IAAI,EAAE,IAAI;oBACV,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE;oBACvB,GAAG,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG;iBAC/B,CAAC,CAAC;YACP,CAAC;YACD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;gBACpB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACf,MAAM,GAAG,GAAe,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC;oBACrD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACrC,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBACrB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;wBAC9C,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;wBAEtC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;4BACnC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;4BAC5C,IAAI,CAAC,SAAS,GAAG,aAAa,CAAC;4BAC/B,MAAM,IAAI,GAAW,YAAY,CAC7B,gBAAgB,IAAI,MAAM,CAC7B,CAAC;4BACF,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,QAAQ,IAAI,qBAAqB,CAAC;4BACpD,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,IAAI,qBAAqB,CAAC;4BAC1D,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;wBAC9B,CAAC,CAAC,CAAC;wBAEH,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;oBACjC,CAAC;gBACL,CAAC;gBAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAChB,MAAM,GAAG,GAAe,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC;oBACrD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACtC,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBACrB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;wBAC9C,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;wBAEvC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;4BACnC,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;4BAC1C,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC;4BACf,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;wBAC7B,CAAC,CAAC,CAAC;wBAEH,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;oBACjC,CAAC;gBACL,CAAC;gBAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAChB,MAAM,GAAG,GAAe,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC;oBACrD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACtC,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAgB,CAAC;oBACrD,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC;oBACvC,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBACrB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;4BAClC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBACpC,CAAC,CAAC,CAAC;oBACP,CAAC;gBACL,CAAC;YACL,CAAC;YACD,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;;gBAC/B,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;oBAC3B,IAAI,EAAE,IAAI;oBACV,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE;oBACvB,QAAQ,EAAE;wBACN,KAAK,EAAE,QAAQ,CAAC,KAAK;wBACrB,GAAG,EAAE,QAAQ,CAAC,GAAG;qBACpB;oBACD,MAAM,EAAE;wBACJ,KAAK,EAAE,KAAK,CAAC,KAAK;wBAClB,GAAG,EAAE,KAAK,CAAC,GAAG;qBACjB;oBACD,GAAG,EAAE,MAAA,QAAQ,CAAC,aAAa,0CAAE,GAAG;iBACnC,CAAC,CAAC;YACP,CAAC;YACD,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE;YACxB,aAAa,EAAE,KAAK;YACpB,+FAA+F;YAC/F,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,EAAE,IAAI,CAAC,QAAQ;YAC1B,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE;YACxB,OAAO,EAAE;gBACL,QAAQ;gBACR,QAAQ;gBACR,QAAQ;gBACR,QAAQ;gBACR,QAAQ;gBACR,QAAQ;aACX;YACD,OAAO,EAAE;gBACL,aAAa;gBACb,iBAAiB;gBACjB,UAAU;gBACV,cAAc;aACjB;SACJ,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC3B,CAAC;IAED,qDAAqD;IACrD,qDAAqD;IACrD,qDAAqD;IAErD;;;;OAIG;IAEH,KAAK,CAAC,QAAQ,CAAC,YAAsB;QACjC,OAAO,QAAQ,CAAC,IAAI,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IAC1D,CAAC;IACD;;OAEG;IAEH,KAAK,CAAC,OAAO;QACT,WAAW,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IACD;;OAEG;IAEH,KAAK,CAAC,cAAc;QAChB,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACxC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE;YACxC,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC,EAAE,GAAG,CAAC,CAAC;IACZ,CAAC;IACD;;;OAGG;IAEH,KAAK,CAAC,QAAQ,CAAC,KAAoB;QAC/B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,qDAAqD;IACrD,qDAAqD;IACrD,qDAAqD;IAE7C,UAAU,CAAC,IAA0B;QACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IAEO,UAAU;QACd,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QAC7B,CAAC;QAED,OAAO,EAAE,CAAC;IACd,CAAC;IAEO,SAAS;QACb,QAAQ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACnC,KAAK,eAAe,CAAC,OAAO;gBACxB,OAAO,QAAQ,CAAC;YACpB,KAAK,eAAe,CAAC,MAAM;gBACvB,OAAO,QAAQ,CAAC;YACpB,KAAK,eAAe,CAAC,OAAO;gBACxB,OAAO,QAAQ,CAAC;YACpB,KAAK,eAAe,CAAC,MAAM;gBACvB,OAAO,QAAQ,CAAC;YACpB,KAAK,eAAe,CAAC,OAAO;gBACxB,OAAO,QAAQ,CAAC;YACpB,KAAK,eAAe,CAAC,OAAO;gBACxB,OAAO,QAAQ,CAAC;YACpB;gBACI,OAAO,QAAQ,CAAC;QACxB,CAAC;IACL,CAAC;IAEO,OAAO;QACX,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAC1B,CAAC;QAED,OAAO,EAAE,CAAC;IACd,CAAC;IAEO,YAAY;QAChB,MAAM,KAAK,GAAgB;YACvB,IAAI,EAAE,EAAE;YACR,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,SAAS,CAAC,MAAM;YACtB,YAAY,EAAE,oBAAoB;SACrC,CAAC;QACF,KAAK,MAAM,GAAG,IAAI,oBAAoB,EAAE,CAAC;YACrC,MAAM,IAAI,GAAyB,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAC7D,MAAM,QAAQ,GAAgB;gBAC1B,OAAO,EAAE,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;gBAC9C,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CACrC,kBAAkB,CAAC,GAAG,CAAC,CAC1B;gBACD,EAAE,EAAE,GAAG;aACV,CAAC;YACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1B,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,SAAS;QACb,MAAM,WAAW,GACb,IAAI,CAAC,QAAQ;YACb,IAAI,CAAC,MAAM;YACX,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC;YACjD,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAEpD,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACrC,IAAI,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1D,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAExD,IAAI,WAAW,EAAE,CAAC;gBACd,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC3C,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAEvC,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;oBACvB,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAC5C,SAAS,CAAC,KAAK,EACf,eAAe,CAAC,QAAQ,CAC3B,CAAC;oBACF,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAC1C,OAAO,CAAC,KAAK,EACb,eAAe,CAAC,QAAQ,CAC3B,CAAC;oBAEF,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC9C,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;oBAClD,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;oBAElD,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;oBACxC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;oBAC5C,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBAChD,CAAC;YACL,CAAC;YAED,MAAM,EAAE,GAAe;gBACnB,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;gBAClC,QAAQ,EAAE,IAAI,CAAC,cAAc;gBAC7B,GAAG,EAAE,OAAO,CAAC,WAAW,EAAE;gBAC1B,aAAa,EAAE;oBACX,GAAG;iBACN;gBACD,KAAK,EAAE,SAAS,CAAC,WAAW,EAAE;gBAC9B,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK;aACxC,CAAC;YAEF,OAAO,EAAE,CAAC;QACd,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,MAAM;QACV,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IAEO,MAAM;QACV,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IAEO,OAAO;QACX,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAEO,YAAY;QAChB,+CAA+C;QAC/C,MAAM,EAAE,GAAS,IAAI,CAAC,UAAU,CAAC,KAAK;aACjC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,KAAK,CAAC;aACjD,MAAM,EAAE,CAAC;QAEd,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC;YAC5B,IAAI,EAAE,IAAI;YACV,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE;YACvB,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY;YACrC,EAAE;SACL,CAAC,CAAC;IACP,CAAC;IAEO,cAAc;QAClB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;YACpD,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,SAAS,CAAC;YACnE,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC/B,CAAC;IACL,CAAC;IAED,qDAAqD;IACrD,qDAAqD;IACrD,qDAAqD;IAErD,iBAAiB;QACb,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,gBAAgB;QACZ,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,mBAAmB;QACf,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,kBAAkB;QACd,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,MAAM;QACF,OAAO,CACH,EAAC,IAAI;YACD,gEACK,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,CAC9B,IAAI,CAAC,WAA2B,CACnC,CACG;YACR,4DAAK,EAAE,EAAE,kBAAkB;gBACvB,4DAAK,KAAK,EAAC,YAAY;oBAClB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CACpB,WAAK,KAAK,EAAC,kBAAkB;wBACzB,EAAC,OAAO,IACJ,IAAI,EAAC,cAAc,EACnB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,EAC5B,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CACrC,kBAAkB,CAAC,QAAQ,CAC9B,EACD,YAAY,EAAC,kBAAkB,GACjC;wBACF,EAAC,OAAO,IACJ,IAAI,EAAC,UAAU,EACf,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAC7B,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CACrC,kBAAkB,CAAC,KAAK,CAC3B,EACD,YAAY,EAAC,mBAAmB,GAClC;wBACF,EAAC,OAAO,IACJ,IAAI,EAAC,eAAe,EACpB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,EAC5B,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CACrC,kBAAkB,CAAC,IAAI,CAC1B,EACD,YAAY,EAAC,kBAAkB,GACjC,CACA,CACT,CAAC,CAAC,CAAC,IAAI;oBACR,4DACI,KAAK,EAAE,qBACH,IAAI,CAAC,cAAc;4BACf,CAAC,CAAC,6BAA6B;4BAC/B,CAAC,CAAC,EACV,EAAE,EACF,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE;4BACR,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;wBACvB,CAAC,GACE;oBACN,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CACpB,WAAK,KAAK,EAAC,mBAAmB;wBAC1B,EAAC,KAAK,oBAAK,IAAI,CAAC,YAAY,EAAE,EAAU,CACtC,CACT,CAAC,CAAC,CAAC,IAAI,CACN;gBACN,4DACI,KAAK,EAAC,UAAU,EAChB,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC,GACvC,CACL,CACH,CACV,CAAC;IACN,CAAC;IAED,oBAAoB;QAChB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n forceUpdate,\n getAssetPath,\n h,\n Host,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport {\n Calendar,\n EventInput,\n EventSourceInput,\n LocaleInput,\n} from '@fullcalendar/core';\nimport dayGridPlugin from '@fullcalendar/daygrid';\nimport interactionPlugin from '@fullcalendar/interaction';\nimport listPlugin from '@fullcalendar/list';\nimport timeGridPlugin from '@fullcalendar/timegrid';\nimport enLocale from '@fullcalendar/core/locales/en-gb';\nimport esLocale from '@fullcalendar/core/locales/es';\nimport frLocale from '@fullcalendar/core/locales/fr';\nimport itLocale from '@fullcalendar/core/locales/it';\nimport plLocale from '@fullcalendar/core/locales/pl';\nimport ruLocale from '@fullcalendar/core/locales/ru';\nimport zhLocale from '@fullcalendar/core/locales/zh-cn';\nimport {\n KupManager,\n kupManagerInstance,\n} from '../../managers/kup-manager/kup-manager';\nimport { getColumnByName } from '../../utils/cell-utils';\nimport { componentWrapperId } from '../../variables/GenericVariables';\nimport { FButton } from '../../f-components/f-button/f-button';\nimport { getProps, setProps } from '../../utils/utils';\nimport { GenericObject, KupComponent } from '../../types/GenericTypes';\nimport {\n KupCalendarData,\n KupCalendarDateClickEventPayload,\n KupCalendarEventClickEventPayload,\n KupCalendarEventDropEventPayload,\n KupCalendarOptions,\n KupCalendarProps,\n KupCalendarViewChangeEventPayload,\n KupCalendarViewTypes,\n} from './kup-calendar-declarations';\nimport { FChip } from '../../f-components/f-chip/f-chip';\nimport {\n FChipsProps,\n FChipType,\n} from '../../f-components/f-chip/f-chip-declarations';\nimport { KupLanguageGeneric } from '../../managers/kup-language/kup-language-declarations';\nimport {\n KupDatesFormats,\n KupDatesLocales,\n} from '../../managers/kup-dates/kup-dates-declarations';\nimport {\n KupDataColumn,\n KupDataRow,\n} from '../../managers/kup-data/kup-data-declarations';\nimport { KupChipNode } from '../kup-chip/kup-chip-declarations';\n\n@Component({\n tag: 'kup-calendar',\n styleUrl: 'kup-calendar.scss',\n shadow: true,\n})\nexport class KupCalendar {\n /**\n * References the root HTML element of the component (<kup-calendar>).\n */\n @Element() rootElement: HTMLElement;\n\n /*-------------------------------------------------*/\n /* P r o p s */\n /*-------------------------------------------------*/\n\n /**\n * Sets the initial date of the calendar. Must be in ISO format (YYYY-MM-DD).\n * @default null\n */\n @Prop() currentDate: string = null;\n /**\n * Custom style of the component.\n * @default \"\"\n * @see https://smeup.github.io/ketchup/#/customization\n */\n @Prop() customStyle: string = '';\n /**\n * Actual data of the calendar.\n * @default null\n */\n @Prop() data: KupCalendarData = null;\n /**\n * When disabled, the navigation toolbar won't be displayed.\n * @default false\n */\n @Prop() hideNavigation = false;\n /**\n * When true, events are editable.\n * @default true\n */\n @Prop() editableEvents: boolean = true;\n /**\n * Type of the view.\n * @default KupCalendarViewTypes.MONTH\n */\n @Prop({ mutable: true }) viewType: KupCalendarViewTypes =\n KupCalendarViewTypes.MONTH;\n\n /*-------------------------------------------------*/\n /* I n t e r n a l V a r i a b l e s */\n /*-------------------------------------------------*/\n\n private calendar: Calendar;\n private calendarContainer: HTMLDivElement = null;\n private kupManager: KupManager = kupManagerInstance();\n private navTitle: HTMLDivElement = null;\n private resizeTimeout: number = null;\n private dateCol: string = null;\n private descrCol: string = null;\n private endCol: string = null;\n private iconCol: string = null;\n private imageCol: string = null;\n private startCol: string = null;\n private styleCol: string = null;\n\n /*-------------------------------------------------*/\n /* E v e n t s */\n /*-------------------------------------------------*/\n\n /**\n * When an event is clicked.\n */\n @Event({\n eventName: 'kup-calendar-eventclick',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n kupCalendarEventClick: EventEmitter<KupCalendarEventClickEventPayload>;\n /**\n * When a date is clicked.\n */\n @Event({\n eventName: 'kup-calendar-dateclick',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n kupCalendarDateClick: EventEmitter<KupCalendarDateClickEventPayload>;\n /**\n * When a date is dropped.\n */\n @Event({\n eventName: 'kup-calendar-eventdrop',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n kupCalendarEventDrop: EventEmitter<KupCalendarEventDropEventPayload>;\n /**\n * When the navigation change\n */\n @Event({\n eventName: 'kup-calendar-viewchange',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n kupCalendarViewChange: EventEmitter<KupCalendarViewChangeEventPayload>;\n\n /*-------------------------------------------------*/\n /* W a t c h e r s */\n /*-------------------------------------------------*/\n\n @Watch('data')\n @Watch('currentDate')\n setCalendarData() {\n if (!this.calendarContainer) {\n return;\n }\n if (this.calendar) {\n this.calendar.destroy();\n }\n for (\n let index = 0;\n this.data && this.data.columns && index < this.data.columns.length;\n index++\n ) {\n const column = this.data.columns[index];\n switch (column.calendarOption) {\n case KupCalendarOptions.DATE:\n this.dateCol = column.name;\n break;\n case KupCalendarOptions.DESCR:\n this.descrCol = column.name;\n break;\n case KupCalendarOptions.END:\n this.endCol = column.name;\n break;\n case KupCalendarOptions.ICON:\n this.iconCol = column.name;\n break;\n case KupCalendarOptions.IMAGE:\n this.imageCol = column.name;\n break;\n case KupCalendarOptions.START:\n this.startCol = column.name;\n break;\n case KupCalendarOptions.STYLE:\n this.styleCol = column.name;\n break;\n }\n }\n this.calendar = new Calendar(this.calendarContainer, {\n dateClick: ({ date }) => {\n this.kupCalendarDateClick.emit({\n comp: this,\n id: this.rootElement.id,\n date: date,\n });\n },\n editable: true,\n eventClick: ({ event }) => {\n this.kupCalendarEventClick.emit({\n comp: this,\n id: this.rootElement.id,\n row: event.extendedProps.row,\n });\n },\n eventDidMount: (info) => {\n if (this.iconCol) {\n const row: KupDataRow = info.event.extendedProps.row;\n const cell = row.cells[this.iconCol];\n if (cell && cell.value) {\n const wrapper = document.createElement('div');\n wrapper.classList.add('icon-wrapper');\n\n cell.value.split(';').forEach((icon) => {\n const span = document.createElement('span');\n span.className = 'custom-icon';\n const path: string = getAssetPath(\n `./assets/svg/${icon}.svg`\n );\n span.style.mask = `url('${path}') no-repeat center`;\n span.style.webkitMask = `url('${path}') no-repeat center`;\n wrapper.appendChild(span);\n });\n\n info.el.appendChild(wrapper);\n }\n }\n\n if (this.imageCol) {\n const row: KupDataRow = info.event.extendedProps.row;\n const cell = row.cells[this.imageCol];\n if (cell && cell.value) {\n const wrapper = document.createElement('div');\n wrapper.classList.add('image-wrapper');\n\n cell.value.split(';').forEach((icon) => {\n const img = document.createElement('img');\n img.src = icon;\n wrapper.appendChild(img);\n });\n\n info.el.appendChild(wrapper);\n }\n }\n\n if (this.styleCol) {\n const row: KupDataRow = info.event.extendedProps.row;\n const cell = row.cells[this.styleCol];\n const eventCell = info.el.children[0] as HTMLElement;\n const parent = eventCell.parentElement;\n if (cell && cell.style) {\n Object.keys(cell.style).forEach((k) => {\n parent.style[k] = cell.style[k];\n });\n }\n }\n },\n eventDrop: ({ event, oldEvent }) => {\n this.kupCalendarEventDrop.emit({\n comp: this,\n id: this.rootElement.id,\n fromDate: {\n start: oldEvent.start,\n end: oldEvent.end,\n },\n toDate: {\n start: event.start,\n end: event.end,\n },\n row: oldEvent.extendedProps?.row,\n });\n },\n events: this.getEvents(),\n headerToolbar: false,\n //initialDate: this.currentDate ? this.currentDate : new Date().toISOString().substring(0, 10),\n initialDate: this.currentDate,\n initialView: this.viewType,\n locale: this.getLocale(),\n locales: [\n esLocale,\n frLocale,\n itLocale,\n plLocale,\n ruLocale,\n zhLocale,\n ],\n plugins: [\n dayGridPlugin,\n interactionPlugin,\n listPlugin,\n timeGridPlugin,\n ],\n });\n this.calendar.render();\n }\n\n /*-------------------------------------------------*/\n /* P u b l i c M e t h o d s */\n /*-------------------------------------------------*/\n\n /**\n * Used to retrieve component's props values.\n * @param {boolean} descriptions - When provided and true, the result will be the list of props with their description.\n * @returns {Promise<GenericObject>} List of props as object, each key will be a prop.\n */\n @Method()\n async getProps(descriptions?: boolean): Promise<GenericObject> {\n return getProps(this, KupCalendarProps, descriptions);\n }\n /**\n * This method is used to trigger a new render of the component.\n */\n @Method()\n async refresh(): Promise<void> {\n forceUpdate(this);\n }\n /**\n * This method is invoked by KupManager whenever the component changes size.\n */\n @Method()\n async resizeCallback(): Promise<void> {\n window.clearTimeout(this.resizeTimeout);\n this.resizeTimeout = window.setTimeout(() => {\n this.refresh();\n }, 300);\n }\n /**\n * Sets the props to the component.\n * @param {GenericObject} props - Object containing props that will be set to the component.\n */\n @Method()\n async setProps(props: GenericObject): Promise<void> {\n setProps(this, KupCalendarProps, props);\n }\n\n /*-------------------------------------------------*/\n /* P r i v a t e M e t h o d s */\n /*-------------------------------------------------*/\n\n private changeView(view: KupCalendarViewTypes) {\n this.viewType = view;\n this.calendar.changeView(view);\n this.emitNavEvent();\n }\n\n private getColumns(): KupDataColumn[] {\n if (this.data && this.data.rows) {\n return this.data.columns;\n }\n\n return [];\n }\n\n private getLocale(): LocaleInput {\n switch (this.kupManager.dates.locale) {\n case KupDatesLocales.CHINESE:\n return zhLocale;\n case KupDatesLocales.FRENCH:\n return frLocale;\n case KupDatesLocales.ITALIAN:\n return itLocale;\n case KupDatesLocales.POLISH:\n return plLocale;\n case KupDatesLocales.RUSSIAN:\n return ruLocale;\n case KupDatesLocales.SPANISH:\n return esLocale;\n default:\n return enLocale;\n }\n }\n\n private getRows(): KupDataRow[] {\n if (this.data && this.data.rows) {\n return this.data.rows;\n }\n\n return [];\n }\n\n private setChipProps(): FChipsProps {\n const props: FChipsProps = {\n data: [],\n onClick: [],\n type: FChipType.CHOICE,\n wrapperClass: 'navigation__choice',\n };\n for (const key in KupCalendarViewTypes) {\n const view: KupCalendarViewTypes = KupCalendarViewTypes[key];\n const chipData: KupChipNode = {\n checked: this.viewType === view ? true : false,\n value: this.kupManager.language.translate(\n KupLanguageGeneric[key]\n ),\n id: key,\n };\n props.data.push(chipData);\n props.onClick.push(() => this.changeView(view));\n }\n return props;\n }\n\n private getEvents(): EventSourceInput {\n const isHourRange =\n this.startCol &&\n this.endCol &&\n getColumnByName(this.getColumns(), this.startCol) &&\n getColumnByName(this.getColumns(), this.endCol);\n\n return this.getRows().map((row) => {\n const cell = row.cells[this.dateCol];\n let startDate = this.kupManager.dates.toDayjs(cell.value);\n let endDate = this.kupManager.dates.toDayjs(cell.value);\n\n if (isHourRange) {\n const startCell = row.cells[this.startCol];\n const endCell = row.cells[this.endCol];\n\n if (startCell && endCell) {\n const dayjsStart = this.kupManager.dates.toDayjs(\n startCell.value,\n KupDatesFormats.ISO_TIME\n );\n const dayjsEnd = this.kupManager.dates.toDayjs(\n endCell.value,\n KupDatesFormats.ISO_TIME\n );\n\n startDate = startDate.hour(dayjsStart.hour());\n startDate = startDate.minute(dayjsStart.minute());\n startDate = startDate.second(dayjsStart.second());\n\n endDate = endDate.hour(dayjsEnd.hour());\n endDate = endDate.minute(dayjsEnd.minute());\n endDate = endDate.second(dayjsEnd.second());\n }\n }\n\n const el: EventInput = {\n allDay: isHourRange ? false : true,\n editable: this.editableEvents,\n end: endDate.toISOString(),\n extendedProps: {\n row,\n },\n start: startDate.toISOString(),\n title: row.cells[this.descrCol].value,\n };\n\n return el;\n });\n }\n\n private onPrev() {\n this.calendar.prev();\n this.updateCalendar();\n this.emitNavEvent();\n }\n\n private onNext() {\n this.calendar.next();\n this.updateCalendar();\n this.emitNavEvent();\n }\n\n private onToday() {\n this.calendar.today();\n this.updateCalendar();\n }\n\n private emitNavEvent() {\n // see https://fullcalendar.io/docs/view-object\n const to: Date = this.kupManager.dates\n .subtract(this.calendar.view.currentEnd, 1, 'day')\n .toDate();\n\n this.kupCalendarViewChange.emit({\n comp: this,\n id: this.rootElement.id,\n from: this.calendar.view.currentStart,\n to,\n });\n }\n\n private updateCalendar() {\n if (this.calendar) {\n this.calendar.setOption('locale', this.getLocale());\n this.navTitle.innerText = this.calendar.getCurrentData().viewTitle;\n this.calendar.updateSize();\n }\n }\n\n /*-------------------------------------------------*/\n /* L i f e c y c l e H o o k s */\n /*-------------------------------------------------*/\n\n componentWillLoad() {\n this.kupManager.dates.register(this);\n this.kupManager.debug.logLoad(this, false);\n this.kupManager.language.register(this);\n this.kupManager.theme.register(this);\n }\n\n componentDidLoad() {\n this.setCalendarData();\n this.updateCalendar();\n this.kupManager.resize.observe(this.rootElement);\n this.kupManager.debug.logLoad(this, true);\n }\n\n componentWillRender() {\n this.kupManager.debug.logRender(this, false);\n }\n\n componentDidRender() {\n this.updateCalendar();\n this.kupManager.debug.logRender(this, true);\n }\n\n render() {\n return (\n <Host>\n <style>\n {this.kupManager.theme.setKupStyle(\n this.rootElement as KupComponent\n )}\n </style>\n <div id={componentWrapperId}>\n <div class=\"navigation\">\n {!this.hideNavigation ? (\n <div class=\"navigation__left\">\n <FButton\n icon=\"chevron_left\"\n onClick={() => this.onPrev()}\n title={this.kupManager.language.translate(\n KupLanguageGeneric.PREVIOUS\n )}\n wrapperClass=\"navigation__prev\"\n />\n <FButton\n icon=\"calendar\"\n onClick={() => this.onToday()}\n title={this.kupManager.language.translate(\n KupLanguageGeneric.TODAY\n )}\n wrapperClass=\"navigation__today\"\n />\n <FButton\n icon=\"chevron_right\"\n onClick={() => this.onNext()}\n title={this.kupManager.language.translate(\n KupLanguageGeneric.NEXT\n )}\n wrapperClass=\"navigation__next\"\n />\n </div>\n ) : null}\n <div\n class={`navigation__title ${\n this.hideNavigation\n ? 'navigation__title--centered'\n : ''\n }`}\n ref={(el) => {\n this.navTitle = el;\n }}\n ></div>\n {!this.hideNavigation ? (\n <div class=\"navigation__right\">\n <FChip {...this.setChipProps()}></FChip>\n </div>\n ) : null}\n </div>\n <div\n class=\"calendar\"\n ref={(el) => (this.calendarContainer = el)}\n ></div>\n </div>\n </Host>\n );\n }\n\n disconnectedCallback() {\n if (this.calendar) {\n this.calendar.destroy();\n }\n this.kupManager.dates.unregister(this);\n this.kupManager.language.unregister(this);\n this.kupManager.resize.unobserve(this.rootElement);\n this.kupManager.theme.unregister(this);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"kup-calendar.js","sourceRoot":"","sources":["../../../src/components/kup-calendar/kup-calendar.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n forceUpdate,\n getAssetPath,\n h,\n Host,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport {\n Calendar,\n EventInput,\n EventSourceInput,\n LocaleInput,\n} from '@fullcalendar/core';\nimport dayGridPlugin from '@fullcalendar/daygrid';\nimport interactionPlugin from '@fullcalendar/interaction';\nimport listPlugin from '@fullcalendar/list';\nimport timeGridPlugin from '@fullcalendar/timegrid';\nimport enLocale from '@fullcalendar/core/locales/en-gb';\nimport esLocale from '@fullcalendar/core/locales/es';\nimport frLocale from '@fullcalendar/core/locales/fr';\nimport itLocale from '@fullcalendar/core/locales/it';\nimport plLocale from '@fullcalendar/core/locales/pl';\nimport ruLocale from '@fullcalendar/core/locales/ru';\nimport zhLocale from '@fullcalendar/core/locales/zh-cn';\nimport {\n KupManager,\n kupManagerInstance,\n} from '../../managers/kup-manager/kup-manager';\nimport { getColumnByName } from '../../utils/cell-utils';\nimport { componentWrapperId } from '../../variables/GenericVariables';\nimport { FButton } from '../../f-components/f-button/f-button';\nimport { getProps, setProps } from '../../utils/utils';\nimport { GenericObject, KupComponent } from '../../types/GenericTypes';\nimport {\n KupCalendarColumnsProp,\n KupCalendarData,\n KupCalendarDateClickEventPayload,\n KupCalendarEventClickEventPayload,\n KupCalendarEventDropEventPayload,\n KupCalendarOptions,\n KupCalendarProps,\n KupCalendarViewChangeEventPayload,\n KupCalendarViewTypes,\n} from './kup-calendar-declarations';\nimport { FChip } from '../../f-components/f-chip/f-chip';\nimport {\n FChipsProps,\n FChipType,\n} from '../../f-components/f-chip/f-chip-declarations';\nimport { KupLanguageGeneric } from '../../managers/kup-language/kup-language-declarations';\nimport {\n KupDatesFormats,\n KupDatesLocales,\n} from '../../managers/kup-dates/kup-dates-declarations';\nimport {\n KupDataColumn,\n KupDataRow,\n} from '../../managers/kup-data/kup-data-declarations';\nimport { KupChipNode } from '../kup-chip/kup-chip-declarations';\n\n@Component({\n tag: 'kup-calendar',\n styleUrl: 'kup-calendar.scss',\n shadow: true,\n})\nexport class KupCalendar {\n /**\n * References the root HTML element of the component (<kup-calendar>).\n */\n @Element() rootElement: HTMLElement;\n\n /*-------------------------------------------------*/\n /* P r o p s */\n /*-------------------------------------------------*/\n\n /**\n * Sets the initial date of the calendar. Must be in ISO format (YYYY-MM-DD).\n * @default null\n */\n @Prop() currentDate: string = null;\n /**\n * Custom style of the component.\n * @default \"\"\n * @see https://smeup.github.io/ketchup/#/customization\n */\n @Prop() customStyle: string = '';\n /**\n * Actual data of the calendar.\n * @default null\n */\n @Prop() data: KupCalendarData = null;\n /**\n * Sets which columns of the data property will be used to render each\n * characteristic of an event in the calendar.\n * @default {KupCalendarOptions: \"\"}\n */\n @Prop() calendarColumns: KupCalendarColumnsProp = {\n [KupCalendarOptions.DATE]: '',\n [KupCalendarOptions.DESCR]: '',\n [KupCalendarOptions.END]: '',\n [KupCalendarOptions.ICON]: '',\n [KupCalendarOptions.IMAGE]: '',\n [KupCalendarOptions.START]: '',\n [KupCalendarOptions.STYLE]: '',\n };\n /**\n * When disabled, the navigation toolbar won't be displayed.\n * @default false\n */\n @Prop() hideNavigation = false;\n /**\n * When true, events are editable.\n * @default true\n */\n @Prop() editableEvents: boolean = true;\n /**\n * Type of the view.\n * @default KupCalendarViewTypes.MONTH\n */\n @Prop({ mutable: true }) viewType: KupCalendarViewTypes =\n KupCalendarViewTypes.MONTH;\n\n /*-------------------------------------------------*/\n /* I n t e r n a l V a r i a b l e s */\n /*-------------------------------------------------*/\n\n private calendar: Calendar;\n private calendarContainer: HTMLDivElement = null;\n private kupManager: KupManager = kupManagerInstance();\n private navTitle: HTMLDivElement = null;\n private resizeTimeout: number = null;\n private dateCol: string = null;\n private descrCol: string = null;\n private endCol: string = null;\n private iconCol: string = null;\n private imageCol: string = null;\n private startCol: string = null;\n private styleCol: string = null;\n\n /*-------------------------------------------------*/\n /* E v e n t s */\n /*-------------------------------------------------*/\n\n /**\n * When an event is clicked.\n */\n @Event({\n eventName: 'kup-calendar-eventclick',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n kupCalendarEventClick: EventEmitter<KupCalendarEventClickEventPayload>;\n /**\n * When a date is clicked.\n */\n @Event({\n eventName: 'kup-calendar-dateclick',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n kupCalendarDateClick: EventEmitter<KupCalendarDateClickEventPayload>;\n /**\n * When a date is dropped.\n */\n @Event({\n eventName: 'kup-calendar-eventdrop',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n kupCalendarEventDrop: EventEmitter<KupCalendarEventDropEventPayload>;\n /**\n * When the navigation change\n */\n @Event({\n eventName: 'kup-calendar-viewchange',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n kupCalendarViewChange: EventEmitter<KupCalendarViewChangeEventPayload>;\n\n /*-------------------------------------------------*/\n /* W a t c h e r s */\n /*-------------------------------------------------*/\n\n @Watch('data')\n @Watch('currentDate')\n setCalendarData() {\n if (!this.calendarContainer) {\n return;\n }\n if (this.calendar) {\n this.calendar.destroy();\n }\n\n if (this.data?.columns) {\n this.data.columns.forEach((column) => {\n for (const key in this.calendarColumns) {\n if (this.calendarColumns[key] === column.name) {\n this[`${key}Col`] = column.name;\n break;\n }\n }\n });\n }\n this.calendar = new Calendar(this.calendarContainer, {\n dateClick: ({ date }) => {\n this.kupCalendarDateClick.emit({\n comp: this,\n id: this.rootElement.id,\n date: date,\n });\n },\n editable: true,\n eventClick: ({ event }) => {\n this.kupCalendarEventClick.emit({\n comp: this,\n id: this.rootElement.id,\n row: event.extendedProps.row,\n });\n },\n eventDidMount: (info) => {\n if (this.iconCol) {\n const row: KupDataRow = info.event.extendedProps.row;\n const cell = row.cells[this.iconCol];\n if (cell && cell.value) {\n const wrapper = document.createElement('div');\n wrapper.classList.add('icon-wrapper');\n\n cell.value.split(';').forEach((icon) => {\n const span = document.createElement('span');\n span.className = 'custom-icon';\n const path: string = getAssetPath(\n `./assets/svg/${icon}.svg`\n );\n span.style.mask = `url('${path}') no-repeat center`;\n span.style.webkitMask = `url('${path}') no-repeat center`;\n wrapper.appendChild(span);\n });\n\n info.el.appendChild(wrapper);\n }\n }\n\n if (this.imageCol) {\n const row: KupDataRow = info.event.extendedProps.row;\n const cell = row.cells[this.imageCol];\n if (cell && cell.value) {\n const wrapper = document.createElement('div');\n wrapper.classList.add('image-wrapper');\n\n cell.value.split(';').forEach((icon) => {\n const img = document.createElement('img');\n img.src = icon;\n wrapper.appendChild(img);\n });\n\n info.el.appendChild(wrapper);\n }\n }\n\n if (this.styleCol) {\n const row: KupDataRow = info.event.extendedProps.row;\n const cell = row.cells[this.styleCol];\n const eventCell = info.el.children[0] as HTMLElement;\n const parent = eventCell.parentElement;\n if (cell && cell.style) {\n Object.keys(cell.style).forEach((k) => {\n parent.style[k] = cell.style[k];\n });\n }\n }\n },\n eventDrop: ({ event, oldEvent }) => {\n this.kupCalendarEventDrop.emit({\n comp: this,\n id: this.rootElement.id,\n fromDate: {\n start: oldEvent.start,\n end: oldEvent.end,\n },\n toDate: {\n start: event.start,\n end: event.end,\n },\n row: oldEvent.extendedProps?.row,\n });\n },\n events: this.getEvents(),\n headerToolbar: false,\n //initialDate: this.currentDate ? this.currentDate : new Date().toISOString().substring(0, 10),\n initialDate: this.currentDate,\n initialView: this.viewType,\n locale: this.getLocale(),\n locales: [\n esLocale,\n frLocale,\n itLocale,\n plLocale,\n ruLocale,\n zhLocale,\n ],\n plugins: [\n dayGridPlugin,\n interactionPlugin,\n listPlugin,\n timeGridPlugin,\n ],\n });\n this.calendar.render();\n }\n\n /*-------------------------------------------------*/\n /* P u b l i c M e t h o d s */\n /*-------------------------------------------------*/\n\n /**\n * Used to retrieve component's props values.\n * @param {boolean} descriptions - When provided and true, the result will be the list of props with their description.\n * @returns {Promise<GenericObject>} List of props as object, each key will be a prop.\n */\n @Method()\n async getProps(descriptions?: boolean): Promise<GenericObject> {\n return getProps(this, KupCalendarProps, descriptions);\n }\n /**\n * This method is used to trigger a new render of the component.\n */\n @Method()\n async refresh(): Promise<void> {\n forceUpdate(this);\n }\n /**\n * This method is invoked by KupManager whenever the component changes size.\n */\n @Method()\n async resizeCallback(): Promise<void> {\n window.clearTimeout(this.resizeTimeout);\n this.resizeTimeout = window.setTimeout(() => {\n this.refresh();\n }, 300);\n }\n /**\n * Sets the props to the component.\n * @param {GenericObject} props - Object containing props that will be set to the component.\n */\n @Method()\n async setProps(props: GenericObject): Promise<void> {\n setProps(this, KupCalendarProps, props);\n }\n\n /*-------------------------------------------------*/\n /* P r i v a t e M e t h o d s */\n /*-------------------------------------------------*/\n\n private changeView(view: KupCalendarViewTypes) {\n this.viewType = view;\n this.calendar.changeView(view);\n this.emitNavEvent();\n }\n\n private getColumns(): KupDataColumn[] {\n if (this.data && this.data.rows) {\n return this.data.columns;\n }\n\n return [];\n }\n\n private getLocale(): LocaleInput {\n switch (this.kupManager.dates.locale) {\n case KupDatesLocales.CHINESE:\n return zhLocale;\n case KupDatesLocales.FRENCH:\n return frLocale;\n case KupDatesLocales.ITALIAN:\n return itLocale;\n case KupDatesLocales.POLISH:\n return plLocale;\n case KupDatesLocales.RUSSIAN:\n return ruLocale;\n case KupDatesLocales.SPANISH:\n return esLocale;\n default:\n return enLocale;\n }\n }\n\n private getRows(): KupDataRow[] {\n if (this.data && this.data.rows) {\n return this.data.rows;\n }\n\n return [];\n }\n\n private setChipProps(): FChipsProps {\n const props: FChipsProps = {\n data: [],\n onClick: [],\n type: FChipType.CHOICE,\n wrapperClass: 'navigation__choice',\n };\n for (const key in KupCalendarViewTypes) {\n const view: KupCalendarViewTypes = KupCalendarViewTypes[key];\n const chipData: KupChipNode = {\n checked: this.viewType === view ? true : false,\n value: this.kupManager.language.translate(\n KupLanguageGeneric[key]\n ),\n id: key,\n };\n props.data.push(chipData);\n props.onClick.push(() => this.changeView(view));\n }\n return props;\n }\n\n private getEvents(): EventSourceInput {\n const isHourRange =\n this.startCol &&\n this.endCol &&\n getColumnByName(this.getColumns(), this.startCol) &&\n getColumnByName(this.getColumns(), this.endCol);\n\n return this.getRows().map((row) => {\n const cell = row.cells[this.dateCol];\n let startDate = this.kupManager.dates.toDayjs(cell.value);\n let endDate = this.kupManager.dates.toDayjs(cell.value);\n\n if (isHourRange) {\n const startCell = row.cells[this.startCol];\n const endCell = row.cells[this.endCol];\n\n if (startCell && endCell) {\n const dayjsStart = this.kupManager.dates.toDayjs(\n startCell.value,\n KupDatesFormats.ISO_TIME\n );\n const dayjsEnd = this.kupManager.dates.toDayjs(\n endCell.value,\n KupDatesFormats.ISO_TIME\n );\n\n startDate = startDate.hour(dayjsStart.hour());\n startDate = startDate.minute(dayjsStart.minute());\n startDate = startDate.second(dayjsStart.second());\n\n endDate = endDate.hour(dayjsEnd.hour());\n endDate = endDate.minute(dayjsEnd.minute());\n endDate = endDate.second(dayjsEnd.second());\n }\n }\n\n const el: EventInput = {\n allDay: isHourRange ? false : true,\n editable: this.editableEvents,\n end: endDate.toISOString(),\n extendedProps: {\n row,\n },\n start: startDate.toISOString(),\n title: row.cells[this.descrCol].value,\n };\n\n return el;\n });\n }\n\n private onPrev() {\n this.calendar.prev();\n this.updateCalendar();\n this.emitNavEvent();\n }\n\n private onNext() {\n this.calendar.next();\n this.updateCalendar();\n this.emitNavEvent();\n }\n\n private onToday() {\n this.calendar.today();\n this.updateCalendar();\n }\n\n private emitNavEvent() {\n // see https://fullcalendar.io/docs/view-object\n const to: Date = this.kupManager.dates\n .subtract(this.calendar.view.currentEnd, 1, 'day')\n .toDate();\n\n this.kupCalendarViewChange.emit({\n comp: this,\n id: this.rootElement.id,\n from: this.calendar.view.currentStart,\n to,\n });\n }\n\n private updateCalendar() {\n if (this.calendar) {\n this.calendar.setOption('locale', this.getLocale());\n this.navTitle.innerText = this.calendar.getCurrentData().viewTitle;\n this.calendar.updateSize();\n }\n }\n\n /*-------------------------------------------------*/\n /* L i f e c y c l e H o o k s */\n /*-------------------------------------------------*/\n\n componentWillLoad() {\n this.kupManager.dates.register(this);\n this.kupManager.debug.logLoad(this, false);\n this.kupManager.language.register(this);\n this.kupManager.theme.register(this);\n }\n\n componentDidLoad() {\n this.setCalendarData();\n this.updateCalendar();\n this.kupManager.resize.observe(this.rootElement);\n this.kupManager.debug.logLoad(this, true);\n }\n\n componentWillRender() {\n this.kupManager.debug.logRender(this, false);\n }\n\n componentDidRender() {\n this.updateCalendar();\n this.kupManager.debug.logRender(this, true);\n }\n\n render() {\n return (\n <Host>\n <style>\n {this.kupManager.theme.setKupStyle(\n this.rootElement as KupComponent\n )}\n </style>\n <div id={componentWrapperId}>\n <div class=\"navigation\">\n {!this.hideNavigation ? (\n <div class=\"navigation__left\">\n <FButton\n icon=\"chevron_left\"\n onClick={() => this.onPrev()}\n title={this.kupManager.language.translate(\n KupLanguageGeneric.PREVIOUS\n )}\n wrapperClass=\"navigation__prev\"\n />\n <FButton\n icon=\"calendar\"\n onClick={() => this.onToday()}\n title={this.kupManager.language.translate(\n KupLanguageGeneric.TODAY\n )}\n wrapperClass=\"navigation__today\"\n />\n <FButton\n icon=\"chevron_right\"\n onClick={() => this.onNext()}\n title={this.kupManager.language.translate(\n KupLanguageGeneric.NEXT\n )}\n wrapperClass=\"navigation__next\"\n />\n </div>\n ) : null}\n <div\n class={`navigation__title ${\n this.hideNavigation\n ? 'navigation__title--centered'\n : ''\n }`}\n ref={(el) => {\n this.navTitle = el;\n }}\n ></div>\n {!this.hideNavigation ? (\n <div class=\"navigation__right\">\n <FChip {...this.setChipProps()}></FChip>\n </div>\n ) : null}\n </div>\n <div\n class=\"calendar\"\n ref={(el) => (this.calendarContainer = el)}\n ></div>\n </div>\n </Host>\n );\n }\n\n disconnectedCallback() {\n if (this.calendar) {\n this.calendar.destroy();\n }\n this.kupManager.dates.unregister(this);\n this.kupManager.language.unregister(this);\n this.kupManager.resize.unobserve(this.rootElement);\n this.kupManager.theme.unregister(this);\n }\n}\n"]}
|
|
@@ -13977,6 +13977,15 @@ const KupCalendar$1 = /*@__PURE__*/ proxyCustomElement(class KupCalendar extends
|
|
|
13977
13977
|
this.currentDate = null;
|
|
13978
13978
|
this.customStyle = '';
|
|
13979
13979
|
this.data = null;
|
|
13980
|
+
this.calendarColumns = {
|
|
13981
|
+
[KupCalendarOptions.DATE]: '',
|
|
13982
|
+
[KupCalendarOptions.DESCR]: '',
|
|
13983
|
+
[KupCalendarOptions.END]: '',
|
|
13984
|
+
[KupCalendarOptions.ICON]: '',
|
|
13985
|
+
[KupCalendarOptions.IMAGE]: '',
|
|
13986
|
+
[KupCalendarOptions.START]: '',
|
|
13987
|
+
[KupCalendarOptions.STYLE]: '',
|
|
13988
|
+
};
|
|
13980
13989
|
this.hideNavigation = false;
|
|
13981
13990
|
this.editableEvents = true;
|
|
13982
13991
|
this.viewType = KupCalendarViewTypes.MONTH;
|
|
@@ -13985,37 +13994,22 @@ const KupCalendar$1 = /*@__PURE__*/ proxyCustomElement(class KupCalendar extends
|
|
|
13985
13994
|
/* W a t c h e r s */
|
|
13986
13995
|
/*-------------------------------------------------*/
|
|
13987
13996
|
setCalendarData() {
|
|
13997
|
+
var _a;
|
|
13988
13998
|
if (!this.calendarContainer) {
|
|
13989
13999
|
return;
|
|
13990
14000
|
}
|
|
13991
14001
|
if (this.calendar) {
|
|
13992
14002
|
this.calendar.destroy();
|
|
13993
14003
|
}
|
|
13994
|
-
|
|
13995
|
-
|
|
13996
|
-
|
|
13997
|
-
|
|
13998
|
-
|
|
13999
|
-
|
|
14000
|
-
|
|
14001
|
-
|
|
14002
|
-
|
|
14003
|
-
case KupCalendarOptions.END:
|
|
14004
|
-
this.endCol = column.name;
|
|
14005
|
-
break;
|
|
14006
|
-
case KupCalendarOptions.ICON:
|
|
14007
|
-
this.iconCol = column.name;
|
|
14008
|
-
break;
|
|
14009
|
-
case KupCalendarOptions.IMAGE:
|
|
14010
|
-
this.imageCol = column.name;
|
|
14011
|
-
break;
|
|
14012
|
-
case KupCalendarOptions.START:
|
|
14013
|
-
this.startCol = column.name;
|
|
14014
|
-
break;
|
|
14015
|
-
case KupCalendarOptions.STYLE:
|
|
14016
|
-
this.styleCol = column.name;
|
|
14017
|
-
break;
|
|
14018
|
-
}
|
|
14004
|
+
if ((_a = this.data) === null || _a === void 0 ? void 0 : _a.columns) {
|
|
14005
|
+
this.data.columns.forEach((column) => {
|
|
14006
|
+
for (const key in this.calendarColumns) {
|
|
14007
|
+
if (this.calendarColumns[key] === column.name) {
|
|
14008
|
+
this[`${key}Col`] = column.name;
|
|
14009
|
+
break;
|
|
14010
|
+
}
|
|
14011
|
+
}
|
|
14012
|
+
});
|
|
14019
14013
|
}
|
|
14020
14014
|
this.calendar = new Calendar(this.calendarContainer, {
|
|
14021
14015
|
dateClick: ({ date }) => {
|
|
@@ -14298,11 +14292,11 @@ const KupCalendar$1 = /*@__PURE__*/ proxyCustomElement(class KupCalendar extends
|
|
|
14298
14292
|
this.kupManager.debug.logRender(this, true);
|
|
14299
14293
|
}
|
|
14300
14294
|
render() {
|
|
14301
|
-
return (h$1(Host, { key: '
|
|
14295
|
+
return (h$1(Host, { key: 'bdd424eed81973543ce0456b76729821e630de31' }, h$1("style", { key: '390d5a2a2d06f5119d1e03c7fd00271983ebcce4' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: '7b24bb47c6b934f5fe47289790ee717ce261d9b9', id: componentWrapperId }, h$1("div", { key: '2f72c647d22945a38bce0073729ffbd3f28dec9e', class: "navigation" }, !this.hideNavigation ? (h$1("div", { class: "navigation__left" }, h$1(FButton, { icon: "chevron_left", onClick: () => this.onPrev(), title: this.kupManager.language.translate(KupLanguageGeneric.PREVIOUS), wrapperClass: "navigation__prev" }), h$1(FButton, { icon: "calendar", onClick: () => this.onToday(), title: this.kupManager.language.translate(KupLanguageGeneric.TODAY), wrapperClass: "navigation__today" }), h$1(FButton, { icon: "chevron_right", onClick: () => this.onNext(), title: this.kupManager.language.translate(KupLanguageGeneric.NEXT), wrapperClass: "navigation__next" }))) : null, h$1("div", { key: '35a9b8aa076db1e723de96fcd9a5eb8b6b7dcf40', class: `navigation__title ${this.hideNavigation
|
|
14302
14296
|
? 'navigation__title--centered'
|
|
14303
14297
|
: ''}`, ref: (el) => {
|
|
14304
14298
|
this.navTitle = el;
|
|
14305
|
-
} }), !this.hideNavigation ? (h$1("div", { class: "navigation__right" }, h$1(FChip, Object.assign({}, this.setChipProps())))) : null), h$1("div", { key: '
|
|
14299
|
+
} }), !this.hideNavigation ? (h$1("div", { class: "navigation__right" }, h$1(FChip, Object.assign({}, this.setChipProps())))) : null), h$1("div", { key: '4ade88713da0e92a1c21b62922db53c23f0e6e0a', class: "calendar", ref: (el) => (this.calendarContainer = el) }))));
|
|
14306
14300
|
}
|
|
14307
14301
|
disconnectedCallback() {
|
|
14308
14302
|
if (this.calendar) {
|
|
@@ -14323,6 +14317,7 @@ const KupCalendar$1 = /*@__PURE__*/ proxyCustomElement(class KupCalendar extends
|
|
|
14323
14317
|
"currentDate": [1, "current-date"],
|
|
14324
14318
|
"customStyle": [1, "custom-style"],
|
|
14325
14319
|
"data": [16],
|
|
14320
|
+
"calendarColumns": [16],
|
|
14326
14321
|
"hideNavigation": [4, "hide-navigation"],
|
|
14327
14322
|
"editableEvents": [4, "editable-events"],
|
|
14328
14323
|
"viewType": [1025, "view-type"],
|