sf-i-events 1.0.26 → 1.0.27
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/package.json +1 -1
- package/sf-i-events.d.ts +1 -0
- package/sf-i-events.d.ts.map +1 -1
- package/sf-i-events.js +11 -0
- package/sf-i-events.js.map +1 -1
- package/src/sf-i-events.ts +11 -1
package/package.json
CHANGED
package/sf-i-events.d.ts
CHANGED
package/sf-i-events.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sf-i-events.d.ts","sourceRoot":"","sources":["src/sf-i-events.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,UAAU,EAAa,gBAAgB,EAAC,MAAM,KAAK,CAAC;AAe5D;;;;;;;;;;GAUG;AACH,qBACa,SAAU,SAAQ,UAAU;IAGvC,SAAS,EAAG,MAAM,CAAC;IAGnB,WAAW,EAAG,MAAM,CAAC;IAGrB,aAAa,EAAG,MAAM,CAAC;IAGvB,eAAe,EAAG,MAAM,CAAC;IAGzB,WAAW,EAAG,MAAM,CAAC;IAGrB,aAAa,EAAG,MAAM,CAAC;IAGvB,oBAAoB,EAAG,MAAM,CAAC;IAG9B,eAAe,EAAG,MAAM,CAAC;IAGzB,eAAe,EAAG,MAAM,CAAC;IAGzB,iBAAiB,EAAG,MAAM,CAAC;IAG3B,QAAQ,EAAE,IAAI,EAAG,CAAM;IAGvB,UAAU,EAAE,MAAM,EAAG,CAA+H;IAGpJ,MAAM,EAAE,GAAG,CAAQ;IAGnB,WAAW,EAAE,GAAG,CAAQ;IAExB,cAAc,YAEb;IAGD,sBAAsB,EAAE,GAAG,CAAQ;IAEnC,yBAAyB,YAExB;IAED,cAAc,YAOb;IAED,gBAAgB,YAEf;IAGD,IAAI,EAAG,MAAM,CAAC;IAGd,IAAI,EAAE,MAAM,CAAM;IAElB,OAAgB,MAAM,0BA+TpB;
|
|
1
|
+
{"version":3,"file":"sf-i-events.d.ts","sourceRoot":"","sources":["src/sf-i-events.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,UAAU,EAAa,gBAAgB,EAAC,MAAM,KAAK,CAAC;AAe5D;;;;;;;;;;GAUG;AACH,qBACa,SAAU,SAAQ,UAAU;IAGvC,SAAS,EAAG,MAAM,CAAC;IAGnB,WAAW,EAAG,MAAM,CAAC;IAGrB,aAAa,EAAG,MAAM,CAAC;IAGvB,eAAe,EAAG,MAAM,CAAC;IAGzB,WAAW,EAAG,MAAM,CAAC;IAGrB,aAAa,EAAG,MAAM,CAAC;IAGvB,oBAAoB,EAAG,MAAM,CAAC;IAG9B,eAAe,EAAG,MAAM,CAAC;IAGzB,eAAe,EAAG,MAAM,CAAC;IAGzB,iBAAiB,EAAG,MAAM,CAAC;IAG3B,QAAQ,EAAE,IAAI,EAAG,CAAM;IAGvB,UAAU,EAAE,MAAM,EAAG,CAA+H;IAGpJ,MAAM,EAAE,GAAG,CAAQ;IAGnB,WAAW,EAAE,GAAG,CAAQ;IAExB,cAAc,YAEb;IAGD,sBAAsB,EAAE,GAAG,CAAQ;IAEnC,yBAAyB,YAExB;IAED,cAAc,YAOb;IAED,gBAAgB,YAEf;IAGD,IAAI,EAAG,MAAM,CAAC;IAGd,IAAI,EAAE,MAAM,CAAM;IAElB,OAAgB,MAAM,0BA+TpB;IAGF,qBAAqB,EAAE,GAAG,CAAC;IAG3B,WAAW,EAAE,GAAG,CAAC;IAGjB,kBAAkB,EAAE,GAAG,CAAC;IAGxB,aAAa,EAAE,GAAG,CAAC;IAGnB,oBAAoB,EAAE,GAAG,CAAC;IAG1B,SAAS,EAAE,GAAG,CAAC;IAGf,oBAAoB,EAAE,GAAG,CAAC;IAG1B,kBAAkB,EAAE,GAAG,CAAC;IAExB,aAAa,UAAW,MAAM,SAU7B;IAED,6BAA6B,UAAW,MAAM,SAY7C;IAED,aAAa,UAAW,MAAM,cAAc,MAAM,MAAM,CAAC,OAAO,GAAG,YAsDlE;IAED,YAAY,CAAC,KAAK,EAAE,OAAO;IAc3B,UAAU,SAAgB,GAAG,OAAO,MAAM,iBAAiB,GAAG,iBAAiB,GAAG,sBAQjF;IAED,aAAa,aAKZ;IAED,QAAQ,QAAS,MAAM,UAKtB;IAED,UAAU,QAAS,MAAM,UAKxB;IAED,qBAAqB,UAAW,MAAM,QAAQ,MAAM,YAGnD;IAED,iBAAiB,UAAW,MAAM,QAAQ,MAAM,YAG/C;IAED,SAAS,UAAW,MAAM,QAAQ,MAAM,YAMvC;IAED,WAAW,UAAW,MAAM,QAAQ,MAAM,YAqDzC;IAED,cAAc,eAsCb;IAED,kBAAkB,UAAW,MAAM,SAAS,MAAM,QAAQ,MAAM,YAoD/D;IAED,YAAY,WAAW,MAAM,UAoD5B;IAED,cAAc,aAqCb;IAED,YAAY,UAAW,GAAG,UAoEzB;IAED,WAAW,UAAiB,GAAG,mBAqB9B;IAED,SAAS,sBAmCR;IAED,YAAY,sBAsBX;IAED,UAAU,aAKT;IAED,aAAa,aAMZ;IAED,QAAQ,sBAgBP;;cAMkB,YAAY,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,GAAG,IAAI;IAMnG,iBAAiB;IAIjB,MAAM;CAsChB;AAGD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,aAAa,EAAE,SAAS,CAAC;KAC1B;CACF"}
|
package/sf-i-events.js
CHANGED
|
@@ -431,6 +431,9 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
431
431
|
this.calendarStartMM = ("0" + this.calendarStartMM).slice(-2);
|
|
432
432
|
};
|
|
433
433
|
this.initListeners = () => {
|
|
434
|
+
this._SfButtonStreamCancel.addEventListener('click', () => {
|
|
435
|
+
this.enableStream(false);
|
|
436
|
+
});
|
|
434
437
|
};
|
|
435
438
|
this.loadMode = async () => {
|
|
436
439
|
this.enableStream(false);
|
|
@@ -447,10 +450,12 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
447
450
|
}
|
|
448
451
|
enableStream(value) {
|
|
449
452
|
if (value) {
|
|
453
|
+
this._SfButtonStreamCancel.style.display = "inline";
|
|
450
454
|
this._SfCalendarContainer.style.display = 'none';
|
|
451
455
|
this._SfStreamContainer.style.display = 'flex';
|
|
452
456
|
}
|
|
453
457
|
else {
|
|
458
|
+
this._SfButtonStreamCancel.style.display = "none";
|
|
454
459
|
this._SfCalendarContainer.style.display = 'flex';
|
|
455
460
|
this._SfStreamContainer.style.display = 'none';
|
|
456
461
|
}
|
|
@@ -470,6 +475,9 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
470
475
|
<div class="d-flex justify-center">
|
|
471
476
|
<div class="loader-element"></div>
|
|
472
477
|
</div>
|
|
478
|
+
<div class="d-flex">
|
|
479
|
+
<button id="button-stream-cancel" part="button-icon" class="material-icons">keyboard_backspace</button>
|
|
480
|
+
</div>
|
|
473
481
|
<div class="d-flex justify-center">
|
|
474
482
|
<div class="d-flex flex-grow flex-wrap justify-center align-stretch" id="calendar-container">
|
|
475
483
|
|
|
@@ -866,6 +874,9 @@ __decorate([
|
|
|
866
874
|
__decorate([
|
|
867
875
|
property()
|
|
868
876
|
], SfIEvents.prototype, "flow", void 0);
|
|
877
|
+
__decorate([
|
|
878
|
+
query('#button-stream-cancel')
|
|
879
|
+
], SfIEvents.prototype, "_SfButtonStreamCancel", void 0);
|
|
869
880
|
__decorate([
|
|
870
881
|
query('.div-row-error')
|
|
871
882
|
], SfIEvents.prototype, "_SfRowError", void 0);
|
package/sf-i-events.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sf-i-events.js","sourceRoot":"","sources":["src/sf-i-events.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2022 Superflow.dev\n * SPDX-License-Identifier: MIT\n */\n\nimport {LitElement, html, css, PropertyValueMap} from 'lit';\n// import {customElement, query, queryAssignedElements, property} from 'lit/decorators.js';\nimport {customElement, query, property} from 'lit/decorators.js';\nimport Util from './util';\n// import {LitElement, html, css} from 'lit';\n// import {customElement} from 'lit/decorators.js';\n\n\n/*\n\nModes: View, Add, Edit, Delete, Admin\nDB: partitionKey, rangeKey, values\n\n*/\n\n/**\n * SfIEvents element.\n * @fires renderComplete - When the list is populated\n * @fires valueChanged - When the value is changed\n * @property apiId - backend api id\n * @property label - input label\n * @property name - name of the input\n * @property mode - mode of operation\n * @property selectedId - id to preselect\n * @property selectedValue - callback function\n */\n@customElement('sf-i-events')\nexport class SfIEvents extends LitElement {\n \n @property()\n apiIdList!: string;\n\n @property()\n apiIdDetail!: string;\n\n @property()\n apiMethodList!: string;\n\n @property()\n apiMethodDetail!: string;\n\n @property()\n apiBodyList!: string;\n\n @property()\n apiBodyDetail!: string;\n\n @property()\n apiResponseFieldList!: string;\n\n @property()\n calendarStartDD!: string;\n\n @property()\n calendarStartMM!: string;\n\n @property()\n calendarStartYYYY!: string;\n\n @property()\n calendar: Date [] = [];\n\n @property()\n monthNames: string [] = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n\n @property()\n events: any = null;\n\n @property()\n eventFields: any = null;\n\n getEventFields = () => {\n return JSON.parse(this.eventFields);\n }\n\n @property()\n eventFieldDependencies: any = null;\n\n getEventFieldDependencies = () => {\n return JSON.parse(this.eventFieldDependencies);\n }\n\n getApiBodyList = () => {\n console.log('calendar api body list', this.apiBodyList);\n try {\n return JSON.parse(this.apiBodyList);\n } catch (e: any) {\n return {};\n }\n }\n\n getApiBodyDetail = () => {\n return JSON.parse(this.apiBodyDetail);\n }\n\n @property()\n mode!: string;\n\n @property()\n flow: string = \"\";\n\n static override styles = css`\n\n \n .SfIEventsC {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n justify-content: space-between;\n }\n\n .flex-grow {\n flex-grow: 1;\n }\n\n .flex-wrap {\n flex-wrap: wrap;\n }\n\n .left-sticky {\n left: 0px;\n position: sticky;\n }\n\n .link {\n text-decoration: underline;\n cursor: pointer;\n }\n\n .gone {\n display: none\n }\n\n .loader-element {\n position: fixed;\n right: 10px;\n top: 10px;\n margin-left: 5px;\n }\n\n #calendar-container {\n width: 90%;\n }\n\n .stream-event-list {\n margin-left: 10px;\n padding: 10px;\n }\n\n .stream-events-container {\n overflow-x: auto;\n width: 200px;\n }\n .stream-event-selected {\n padding-left: 20px;\n padding-right: 10px;\n padding-top: 5px;\n padding-bottom: 5px;\n }\n \n .stream-event-not-selected {\n padding-left: 20px;\n padding-right: 10px;\n padding-top: 5px;\n padding-bottom: 5px;\n color: #aaa;\n }\n\n .stream-month-selected {\n padding: 10px;\n text-align: center;\n }\n\n .stream-month-not-selected {\n padding: 10px;\n text-align: center;\n }\n\n .calendar-left-col {\n width: 30%;\n }\n\n .calendar-right-data {\n width: 70%;\n }\n\n .day-item {\n width: 14%;\n margin-bottom: 5px;\n text-align: center;\n }\n\n .date-item {\n font-size: 80%;\n color: #333;\n }\n\n .date-item-before {\n font-size: 80%;\n color: #999;\n }\n\n .dot {\n width: 6px;\n height: 6px;\n border-radius: 3px;\n }\n\n .title-item {\n padding: 5px;\n margin-bottom: 20px;\n }\n\n .calendar-item {\n width: 90%;\n margin-bottom: 20px;\n }\n\n .td-head {\n text-transform: capitalize;\n }\n\n .td-body {\n padding: 5px;\n }\n\n .td-dark {\n background-color: #e9e9e9;\n }\n\n .td-highlight {\n background-color: black;\n color: white;\n }\n\n .td-light {\n background-color: #f6f6f6;\n }\n\n td {\n white-space: nowrap;\n }\n\n .fw-100 {\n font-weight: 100;\n }\n\n .fw-200 {\n font-weight: 200;\n }\n\n .fw-300 {\n font-weight: 300;\n }\n\n .fw-600 {\n font-weight: 600;\n }\n\n .align-start {\n align-items: flex-start;\n }\n\n .align-stretch {\n align-items: stretch;\n }\n\n .align-baseline {\n align-items: baseline;\n }\n\n .align-end {\n align-items: flex-end;\n }\n\n .align-center {\n align-items: center;\n }\n \n .lds-dual-ring {\n display: inline-block;\n width: 50px;\n height: 50px;\n }\n .lds-dual-ring:after {\n content: \" \";\n display: block;\n width: 50px;\n height: 50px;\n margin: 0px;\n border-radius: 50%;\n border: 2px solid #fff;\n border-color: #888 #ddd #888 #ddd;\n background-color: white;\n animation: lds-dual-ring 0.8s linear infinite;\n }\n\n .lds-dual-ring-lg {\n display: inline-block;\n width: 30px;\n height: 30px;\n }\n .lds-dual-ring-lg:after {\n content: \" \";\n display: block;\n width: 30px;\n height: 30px;\n margin: 0px;\n border-radius: 50%;\n border: 3px solid #fff;\n border-color: #888 #ddd #888 #ddd;\n animation: lds-dual-ring 0.8s linear infinite;\n }\n\n .div-row-error {\n display: flex;\n justify-content: center;\n position: fixed;\n position: fixed;\n top: 0px;\n right: 0px;\n margin-top: 20px;\n margin-right: 20px;\n display: none;\n align-items:center;\n background-color: white;\n border: dashed 1px red;\n padding: 20px;\n }\n\n .div-row-error-message {\n color: red;\n padding: 5px;\n background-color: white;\n text-align: center;\n }\n\n .div-row-success {\n display: flex;\n justify-content: center;\n position: fixed;\n top: 0px;\n right: 0px;\n margin-top: 20px;\n margin-right: 20px;\n display: none;\n align-items:center;\n background-color: white;\n border: dashed 1px green;\n padding: 20px;\n }\n\n .div-row-success-message {\n color: green;\n padding: 5px;\n background-color: white;\n text-align: center;\n }\n\n .d-flex {\n display: flex;\n }\n\n .flex-col {\n flex-direction: column;\n }\n\n .justify-center {\n justify-content: center;\n }\n\n .justify-between {\n justify-content: space-between;\n }\n\n .justify-end {\n justify-content: flex-end;\n }\n\n @keyframes lds-dual-ring {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n } \n\n .hide {\n display: none;\n }\n\n .lb {\n width: 5%\n }\n .rb {\n width: 5%\n }\n\n @media (orientation: landscape) {\n\n .lb {\n width: 30%\n }\n .rb {\n width: 30%\n }\n\n #calendar-container {\n width: 40%;\n }\n\n .calendar-item {\n width: 20%;\n margin: 1%;\n padding: 1.5%;\n }\n\n }\n\n `;\n \n\n @query('.div-row-error')\n _SfRowError: any;\n\n @query('.div-row-error-message')\n _SfRowErrorMessage: any;\n\n @query('.div-row-success')\n _SfRowSuccess: any;\n\n @query('.div-row-success-message')\n _SfRowSuccessMessage: any;\n\n @query('.loader-element')\n _SfLoader: any;\n\n @query('#calendar-container')\n _SfCalendarContainer: any;\n\n @query('#stream-container')\n _SfStreamContainer: any;\n\n getEventField = (field: string) => {\n\n for(var i = 0; i < this.getEventFields().length; i++) {\n\n if(this.getEventFields()[i].field == field) {\n return this.getEventFields()[i];\n }\n\n }\n\n }\n\n getParentFieldFromDepedencies = (field: string) => {\n\n for(var i = 0; i < this.getEventFieldDependencies().length; i++) {\n\n if(this.getEventFieldDependencies()[i].type == \"foreignkey\" && this.getEventFieldDependencies()[i].child == field) {\n return this.getEventFieldDependencies()[i].parent;\n }\n\n }\n\n return null;\n\n }\n\n getEventTexts = (field: string, selectedId: Array<string>, row: any) => {\n\n console.log('get event texts', field, selectedId, row);\n\n if(this.getEventField(field) != null && this.getEventField(field).type == \"sf-i-select\") {\n\n var selectedIds = \"\";\n selectedIds += '[';\n for(var i = 0; i < selectedId.length; i++) {\n selectedIds += ('"'+selectedId[i]+'"');\n if(i < selectedId.length - 1) {\n selectedIds += ',';\n }\n }\n selectedIds += ']';\n\n return '<sf-i-select apiId=\"'+this.getEventField(field).apiId+'\" name=\"Select\" label=\"Select\" mode=\"text\" selectedId=\"'+selectedIds+'\"></sf-i-select>'\n\n }\n\n if(this.getEventField(field) != null && this.getEventField(field).type == \"sf-i-sub-select\") {\n\n const parentField = this.getParentFieldFromDepedencies(field);\n\n console.log('parentfield', parentField);\n\n var selectedIds = \"\";\n selectedIds += '[';\n for(var i = 0; i < selectedId.length; i++) {\n selectedIds += ('"'+selectedId[i]+'"');\n if(i < selectedId.length - 1) {\n selectedIds += ',';\n }\n }\n selectedIds += ']';\n\n const filterId = JSON.parse(row[parentField])[0];\n\n console.log('<sf-i-sub-select apiId=\"'+this.getEventField(field).apiId+'\" name=\"Select\" label=\"Select\" mode=\"text\" selectedId=\"'+selectedIds+'\" filterId=\"'+filterId+'\"></sf-i-sub-select>');\n\n return '<sf-i-sub-select apiId=\"'+this.getEventField(field).apiId+'\" name=\"Select\" label=\"Select\" mode=\"text\" selectedId=\"'+selectedIds+'\" filterId=\"'+filterId+'\"></sf-i-sub-select>'\n\n }\n\n if(this.getEventField(field) != null && this.getEventField(field).type == \"sf-i-form\") {\n\n console.log('<sf-i-form name=\"Select\" apiId=\"'+this.getEventField(field).apiId+'\" selectedId=\"'+selectedId[0]+'\" projectField=\"'+this.getEventField(field).projectField+'\" mode=\"text\"></sf-i-form>');\n\n return '<sf-i-form name=\"Select\" apiId=\"'+this.getEventField(field).apiId+'\" selectedId=\"'+selectedId[0]+'\" projectField=\"'+this.getEventField(field).projectField+'\" mode=\"text\"></sf-i-form>'\n }\n\n \n\n return \"\";\n }\n\n enableStream(value: boolean) {\n\n if(value) {\n (this._SfCalendarContainer as HTMLDivElement).style.display = 'none';\n (this._SfStreamContainer as HTMLDivElement).style.display = 'flex';\n } else {\n (this._SfCalendarContainer as HTMLDivElement).style.display = 'flex';\n (this._SfStreamContainer as HTMLDivElement).style.display = 'none';\n }\n\n }\n\n prepareXhr = async (data: any, url: string, loaderElement: any, authorization: any) => {\n\n \n if(loaderElement != null) {\n loaderElement.innerHTML = '<div class=\"lds-dual-ring\"></div>';\n }\n return await Util.callApi(url, data, authorization);\n\n }\n\n clearMessages = () => {\n this._SfRowError.style.display = 'none';\n this._SfRowErrorMessage.innerHTML = '';\n this._SfRowSuccess.style.display = 'none';\n this._SfRowSuccessMessage.innerHTML = '';\n }\n\n setError = (msg: string) => {\n this._SfRowError.style.display = 'flex';\n this._SfRowErrorMessage.innerHTML = msg;\n this._SfRowSuccess.style.display = 'none';\n this._SfRowSuccessMessage.innerHTML = '';\n }\n\n setSuccess = (msg: string) => {\n this._SfRowError.style.display = 'none';\n this._SfRowErrorMessage.innerHTML = '';\n this._SfRowSuccess.style.display = 'flex';\n this._SfRowSuccessMessage.innerHTML = msg;\n }\n\n getLastDayOfLastMonth = (month: number, year: number) => {\n const date = new Date(year, month, 0);\n return date.getDate()\n }\n\n getLastDayOfMonth = (month: number, year: number) => {\n const date = new Date(year, month + 1, 0);\n return date.getDate()\n }\n\n getBlanks = (month: number, year: number) => {\n\n const date = new Date((\"0\" + (month+1)).slice(-2) + '/01/' + year);\n const day = date.getDay();\n return day;\n\n }\n\n insertDates = (month: number, year: number) => {\n\n var html = \"\";\n\n html += '<div class=\"d-flex align-baseline flex-grow flex-wrap\">';\n\n const dateNumber = this.getLastDayOfLastMonth(month, year);\n\n for(var i = 0; i < this.getBlanks(month, year); i++) {\n\n html += '<div class=\"day-item date-item-before fw-100\">';\n html += dateNumber-(this.getBlanks(month, year) - i - 1);\n html += '</div>'; \n\n }\n\n for(i = 0; i < this.getLastDayOfMonth(month, year); i++) {\n\n const mmdd = (\"0\" + (month+1)).slice(-2) + \"/\" + (\"0\" + (i+1)).slice(-2);\n\n var partName = \"\";\n\n if(this.events[mmdd] != null) {\n partName = \"compliance-calendar-day-with-compliance\";\n html += '<div part=\"' + partName + '\" class=\"day-item date-item fw-600\">';\n html += '<div>'\n html += (i + 1);\n html += '</div>'\n html += '<div class=\"d-flex justify-center\">'\n html += '<div part=\"compliance-date-indicator-primary\" class=\"dot\"></div>'\n html += '</div>'\n html += '</div>'; \n } else {\n partName = \"compliance-calendar-day-without-compliance\";\n html += '<div part=\"' + partName + '\" class=\"day-item date-item fw-100\">';\n html += '<div>'\n html += (i + 1);\n html += '</div>'\n html += '</div>'; \n }\n\n }\n\n for(i = 0; i < 42 - (this.getBlanks(month, year) + this.getLastDayOfMonth(month, year)); i++) {\n html += '<div class=\"day-item date-item-before fw-100\">';\n html += (i+1);\n html += '</div>'; \n }\n\n html += '</div>';\n\n return html;\n\n }\n\n insertDayNames = () => {\n\n var html = \"\";\n\n html += '<div class=\"d-flex align-center flex-grow\">';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'S';\n html += '</div>';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'M';\n html += '</div>';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'T';\n html += '</div>';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'W';\n html += '</div>';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'T';\n html += '</div>';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'F';\n html += '</div>';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'S';\n html += '</div>';\n\n html += '</div>';\n\n return html;\n\n }\n\n renderStreamEvents = (index: number, month: number, year: number) => {\n\n const lastDay = this.getLastDayOfMonth(month, year);\n\n var html = '<div id=\"stream-event-'+index+'\" part=\"stream-event-list\" class=\"stream-event-list\">';\n\n for(var i = 1; i <= lastDay; i++) {\n\n const mmdd = (\"0\" + (month+1)).slice(-2) + \"/\" + (\"0\" + i).slice(-2);\n if(this.events[mmdd] != null) {\n //html += '<div>'+month + ',' + year + ',' + i+'</div>'\n html += '<div part=\"stream-event-selected\" class=\"d-flex stream-event-selected\">';\n html += '<div>'+(\"0\" + i).slice(-2)+' |</div>';\n for(var j = 0; j < (this.events[mmdd] as Array<any>).length; j++) {\n html += '<div class=\"stream-events-container flex-grow\">';\n html += '<table>';\n html += '<thead>';\n for(var k = 0; k < Object.keys(this.events[mmdd][j]).length; k++) {\n html += '<th part=\"td-head\">';\n html += Object.keys(this.events[mmdd][j])[k];\n html += '</th>';\n }\n html += '</thead>';\n html += '<tbody>';\n for(var k = 0; k < Object.keys(this.events[mmdd][j]).length; k++) {\n html += '<th part=\"td-body\">';\n if(this.events[mmdd][j][Object.keys(this.events[mmdd][j])[k]].indexOf(\"[\") >= 0) {\n html += this.getEventTexts(Object.keys(this.events[mmdd][j])[k], JSON.parse(this.events[mmdd][j][Object.keys(this.events[mmdd][j])[k]]), this.events[mmdd][j]);\n } else {\n html += this.events[mmdd][j][Object.keys(this.events[mmdd][j])[k]].replace(/\"/g, \"\");\n }\n \n html += '</th>';\n }\n html += '</tbody>';\n html += '</table>';\n html += '</div>';\n }\n html += '</div>';\n } else {\n html += '<div part=\"stream-event-not-selected\" class=\"d-flex stream-event-not-selected\">';\n html += '<div>'+(\"0\" + i).slice(-2)+' | ---</div>';\n html += '</div>';\n }\n \n\n }\n\n html += '</div>'\n\n return html;\n\n }\n\n renderStream = (index: number = 0) => {\n\n console.log('renderstream', index);\n\n var startDate = new Date(this.calendarStartMM + '/' + this.calendarStartDD + '/' + this.calendarStartYYYY);\n\n var html = '';\n\n html += '<div class=\"d-flex flex-grow\">';\n html += '<div class=\"calendar-left-col\">';\n\n var startDate = new Date(this.calendarStartMM + '/' + this.calendarStartDD + '/' + this.calendarStartYYYY);\n\n for(var i = 0; i < 12; i++) {\n\n var part = \"\";\n\n if(i === index) {\n part = \"stream-month-selected\";\n } else {\n part = \"stream-month-not-selected\";\n }\n\n html += '<div part=\"'+part+'\" id=\"stream-month-'+i+'\" part=\"month-title\" class=\"title-item '+part+'\">' + this.monthNames[startDate.getMonth()] + ' ' + startDate.getFullYear() + '</div>';\n startDate.setMonth(startDate.getMonth() + 1);\n }\n\n html += '</div>';\n html += '<div class=\"calendar-right-data\">';\n\n startDate = new Date(this.calendarStartMM + '/' + this.calendarStartDD + '/' + this.calendarStartYYYY);\n for(i = 0; i < 12; i++) {\n if(i === index) {\n console.log(i, index)\n html += this.renderStreamEvents(i, startDate.getMonth(), startDate.getFullYear())\n }\n startDate.setMonth(startDate.getMonth() + 1);\n }\n html += '</div>';\n html += '</div>';\n\n (this._SfStreamContainer as HTMLDivElement).innerHTML = html;\n\n for(var i = 0; i < 12; i++) {\n (this._SfStreamContainer as HTMLDivElement).querySelector('#stream-month-' + i)?.addEventListener('click', (ev: any)=> {\n\n const target = parseInt((ev.target as HTMLDivElement).id.split('-')[2]);\n this.renderStream(target);\n\n })\n }\n\n }\n\n renderCalendar = () => {\n\n console.log('redering calendar', this.events);\n\n var startDate = new Date(this.calendarStartMM + '/' + this.calendarStartDD + '/' + this.calendarStartYYYY);\n\n var html = '';\n\n for(var i = 0; i < 12; i++) {\n\n html += '<div class=\"calendar-item d-flex flex-col flex-grow\" part=\"calendar-month\">';\n html += '<div class=\"d-flex justify-between align-center\">';\n html += '<div part=\"month-title\" class=\"title-item\">' + this.monthNames[startDate.getMonth()] + ' ' + startDate.getFullYear() + '</div>';\n html += '<button id=\"calendar-button-'+i+'\" part=\"button-icon-small\" class=\"title-item material-icons\">open_in_new</button>'\n html += '</div>';\n html += this.insertDayNames();\n html += this.insertDates(startDate.getMonth(), startDate.getFullYear());\n html += '</div>';\n\n startDate.setMonth(startDate.getMonth() + 1);\n \n }\n\n (this._SfCalendarContainer as HTMLDivElement).innerHTML = html;\n\n for(var i = 0; i < 12; i++) {\n\n (this._SfCalendarContainer as HTMLDivElement).querySelector('#calendar-button-' + i)?.addEventListener('click', (ev: any) => {\n\n const id = (ev.target as HTMLButtonElement).id.split(\"-\")[2];\n this.enableStream(true);\n this.renderStream(parseInt(id));\n\n })\n\n }\n\n }\n\n processEvent = (value: any) => {\n\n console.log('processing due date', value.duedate.replace(/['\"]+/g, ''));\n const duedateArr = value.duedate.replace(/['\"]+/g, '').split(\",\") as Array<string>;\n\n const startMonth = parseInt(this.calendarStartMM);\n\n for(var i = 0; i < duedateArr.length; i++) {\n\n const dateArr = duedateArr[i].split(\"/\");\n console.log('datearr', dateArr);\n\n if(dateArr[2] == \"*\") {\n if(dateArr[1] == \"*\") {\n\n var j = startMonth;\n\n while(true) {\n\n console.log('processing event',dateArr[2],dateArr[1],j);\n\n const mmdd = (\"0\" +j).slice(-2) + \"/\" + (\"0\" + dateArr[0]).slice(-2);\n\n if(this.events == null) {\n this.events = {};\n }\n if(this.events[mmdd] == null) {\n this.events[mmdd] = [];\n }\n (this.events[mmdd] as Array<any>).push(value);\n\n\n if(startMonth !== 12) {\n\n if(j === (startMonth - 1)) {\n break;\n }\n }\n\n\n j++;\n\n if(j === 13) {\n j = 0;\n }\n\n } \n\n } else {\n\n const mmdd = (\"0\" +(parseInt(dateArr[1]))).slice(-2) + \"/\" + (\"0\" + dateArr[0]).slice(-2);\n\n if(this.events == null) {\n this.events = {};\n }\n if(this.events[mmdd] == null) {\n this.events[mmdd] = [];\n }\n (this.events[mmdd] as Array<any>).push(value);\n\n }\n }\n\n }\n\n console.log('calendar processed', this.calendar);\n console.log('event processed', this.events);\n\n }\n\n fetchDetail = async (value: any) => {\n\n const body: any = this.getApiBodyList();\n body.id = value;\n console.log('detail', value, body);\n let url = \"https://\"+this.apiIdDetail+\".execute-api.us-east-1.amazonaws.com/test/\" + this.apiMethodDetail;\n\n const authorization = btoa(Util.readCookie('email') + \":\" + Util.readCookie('accessToken'));\n const xhr : any = (await this.prepareXhr(body, url, this._SfLoader, authorization)) as any;\n this._SfLoader.innerHTML = '';\n if(xhr.status == 200) {\n\n const jsonRespose = JSON.parse(xhr.responseText);\n console.log('jsonResponse', jsonRespose);\n this.processEvent(jsonRespose.data.value)\n \n } else {\n const jsonRespose = JSON.parse(xhr.responseText);\n this.setError(jsonRespose.error);\n }\n\n }\n\n fetchList = async () => {\n\n console.log('calendar fetching list', this.apiIdList);\n\n const body: any = this.getApiBodyList();\n\n if(this.apiIdList != null) {\n\n let url = \"https://\"+this.apiIdList+\".execute-api.us-east-1.amazonaws.com/test/\" + this.apiMethodList;\n\n console.log('calendar request body', body);\n console.log('calendar request url', url);\n\n const authorization = btoa(Util.readCookie('email') + \":\" + Util.readCookie('accessToken'));\n const xhr : any = (await this.prepareXhr(body, url, this._SfLoader, authorization)) as any;\n this._SfLoader.innerHTML = '';\n if(xhr.status == 200) {\n\n const jsonRespose = JSON.parse(xhr.responseText);\n const fieldArr = JSON.parse(jsonRespose.data.value[this.apiResponseFieldList]) as Array<string>;\n\n for(var i = 0; i < fieldArr.length; i++) {\n\n console.log('events', fieldArr[i]);\n await this.fetchDetail(fieldArr[i])\n\n }\n \n } else {\n const jsonRespose = JSON.parse(xhr.responseText);\n this.setError(jsonRespose.error);\n }\n\n }\n\n }\n\n initCalendar = async () => {\n\n var newDate = null;\n var newMonth = null;\n var newYear = null;\n var startDate = new Date(this.calendarStartMM + '/' + this.calendarStartDD + '/' + this.calendarStartYYYY);\n\n console.log('startDate', startDate);\n \n do {\n\n this.calendar.push(startDate);\n startDate.setDate(startDate.getDate() + 1);\n\n newDate = (\"0\" + startDate.getDate()).slice(-2);\n newMonth = (\"0\" + startDate.getMonth()).slice(-2);\n newYear = (startDate.getFullYear());\n\n } while(!(newDate == this.calendarStartDD && newMonth == ((\"0\" + ((parseInt(this.calendarStartMM) - 1) + \"\")).slice(-2)) && newYear === (parseInt(this.calendarStartYYYY) + 1)));\n\n console.log(this.calendar);\n\n }\n\n initInputs = () => {\n\n this.calendarStartDD = (\"0\" + this.calendarStartDD).slice(-2);\n this.calendarStartMM = (\"0\" + this.calendarStartMM).slice(-2);\n\n }\n\n initListeners = () => {\n\n \n }\n\n loadMode = async () => {\n\n this.enableStream(false);\n this.initListeners();\n this.initInputs();\n this.initCalendar();\n\n console.log('calendar init done');\n\n await this.fetchList();\n \n if(this.events != null) {\n this.renderCalendar();\n this.renderStream();\n }\n\n }\n\n constructor() {\n super();\n }\n\n protected override firstUpdated(_changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void {\n\n this.loadMode();\n\n }\n \n override connectedCallback() {\n super.connectedCallback()\n }\n \n override render() {\n\n return html`\n \n <link href=\"https://fonts.googleapis.com/icon?family=Material+Icons\" rel=\"stylesheet\">\n <div class=\"SfIEventsC\">\n \n <div class=\"d-flex justify-center\">\n <div class=\"loader-element\"></div>\n </div>\n <div class=\"d-flex justify-center\">\n <div class=\"d-flex flex-grow flex-wrap justify-center align-stretch\" id=\"calendar-container\">\n \n </div>\n <div class=\"d-flex flex-grow flex-wrap justify-center align-stretch\" id=\"stream-container\">\n \n </div>\n </div>\n <div class=\"d-flex justify-between\">\n <div class=\"lb\"></div>\n <div>\n <div class=\"div-row-error div-row-submit gone\">\n <div part=\"errormsg\" class=\"div-row-error-message\"></div>\n </div>\n <div class=\"div-row-success div-row-submit gone\">\n <div part=\"successmsg\" class=\"div-row-success-message\"></div>\n </div>\n </div>\n <div class=\"rb\"></div>\n </div>\n </div>\n\n `;\n }\n\n}\n\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'sf-i-events': SfIEvents;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"sf-i-events.js","sourceRoot":"","sources":["src/sf-i-events.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2022 Superflow.dev\n * SPDX-License-Identifier: MIT\n */\n\nimport {LitElement, html, css, PropertyValueMap} from 'lit';\n// import {customElement, query, queryAssignedElements, property} from 'lit/decorators.js';\nimport {customElement, query, property} from 'lit/decorators.js';\nimport Util from './util';\n// import {LitElement, html, css} from 'lit';\n// import {customElement} from 'lit/decorators.js';\n\n\n/*\n\nModes: View, Add, Edit, Delete, Admin\nDB: partitionKey, rangeKey, values\n\n*/\n\n/**\n * SfIEvents element.\n * @fires renderComplete - When the list is populated\n * @fires valueChanged - When the value is changed\n * @property apiId - backend api id\n * @property label - input label\n * @property name - name of the input\n * @property mode - mode of operation\n * @property selectedId - id to preselect\n * @property selectedValue - callback function\n */\n@customElement('sf-i-events')\nexport class SfIEvents extends LitElement {\n \n @property()\n apiIdList!: string;\n\n @property()\n apiIdDetail!: string;\n\n @property()\n apiMethodList!: string;\n\n @property()\n apiMethodDetail!: string;\n\n @property()\n apiBodyList!: string;\n\n @property()\n apiBodyDetail!: string;\n\n @property()\n apiResponseFieldList!: string;\n\n @property()\n calendarStartDD!: string;\n\n @property()\n calendarStartMM!: string;\n\n @property()\n calendarStartYYYY!: string;\n\n @property()\n calendar: Date [] = [];\n\n @property()\n monthNames: string [] = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n\n @property()\n events: any = null;\n\n @property()\n eventFields: any = null;\n\n getEventFields = () => {\n return JSON.parse(this.eventFields);\n }\n\n @property()\n eventFieldDependencies: any = null;\n\n getEventFieldDependencies = () => {\n return JSON.parse(this.eventFieldDependencies);\n }\n\n getApiBodyList = () => {\n console.log('calendar api body list', this.apiBodyList);\n try {\n return JSON.parse(this.apiBodyList);\n } catch (e: any) {\n return {};\n }\n }\n\n getApiBodyDetail = () => {\n return JSON.parse(this.apiBodyDetail);\n }\n\n @property()\n mode!: string;\n\n @property()\n flow: string = \"\";\n\n static override styles = css`\n\n \n .SfIEventsC {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n justify-content: space-between;\n }\n\n .flex-grow {\n flex-grow: 1;\n }\n\n .flex-wrap {\n flex-wrap: wrap;\n }\n\n .left-sticky {\n left: 0px;\n position: sticky;\n }\n\n .link {\n text-decoration: underline;\n cursor: pointer;\n }\n\n .gone {\n display: none\n }\n\n .loader-element {\n position: fixed;\n right: 10px;\n top: 10px;\n margin-left: 5px;\n }\n\n #calendar-container {\n width: 90%;\n }\n\n .stream-event-list {\n margin-left: 10px;\n padding: 10px;\n }\n\n .stream-events-container {\n overflow-x: auto;\n width: 200px;\n }\n .stream-event-selected {\n padding-left: 20px;\n padding-right: 10px;\n padding-top: 5px;\n padding-bottom: 5px;\n }\n \n .stream-event-not-selected {\n padding-left: 20px;\n padding-right: 10px;\n padding-top: 5px;\n padding-bottom: 5px;\n color: #aaa;\n }\n\n .stream-month-selected {\n padding: 10px;\n text-align: center;\n }\n\n .stream-month-not-selected {\n padding: 10px;\n text-align: center;\n }\n\n .calendar-left-col {\n width: 30%;\n }\n\n .calendar-right-data {\n width: 70%;\n }\n\n .day-item {\n width: 14%;\n margin-bottom: 5px;\n text-align: center;\n }\n\n .date-item {\n font-size: 80%;\n color: #333;\n }\n\n .date-item-before {\n font-size: 80%;\n color: #999;\n }\n\n .dot {\n width: 6px;\n height: 6px;\n border-radius: 3px;\n }\n\n .title-item {\n padding: 5px;\n margin-bottom: 20px;\n }\n\n .calendar-item {\n width: 90%;\n margin-bottom: 20px;\n }\n\n .td-head {\n text-transform: capitalize;\n }\n\n .td-body {\n padding: 5px;\n }\n\n .td-dark {\n background-color: #e9e9e9;\n }\n\n .td-highlight {\n background-color: black;\n color: white;\n }\n\n .td-light {\n background-color: #f6f6f6;\n }\n\n td {\n white-space: nowrap;\n }\n\n .fw-100 {\n font-weight: 100;\n }\n\n .fw-200 {\n font-weight: 200;\n }\n\n .fw-300 {\n font-weight: 300;\n }\n\n .fw-600 {\n font-weight: 600;\n }\n\n .align-start {\n align-items: flex-start;\n }\n\n .align-stretch {\n align-items: stretch;\n }\n\n .align-baseline {\n align-items: baseline;\n }\n\n .align-end {\n align-items: flex-end;\n }\n\n .align-center {\n align-items: center;\n }\n \n .lds-dual-ring {\n display: inline-block;\n width: 50px;\n height: 50px;\n }\n .lds-dual-ring:after {\n content: \" \";\n display: block;\n width: 50px;\n height: 50px;\n margin: 0px;\n border-radius: 50%;\n border: 2px solid #fff;\n border-color: #888 #ddd #888 #ddd;\n background-color: white;\n animation: lds-dual-ring 0.8s linear infinite;\n }\n\n .lds-dual-ring-lg {\n display: inline-block;\n width: 30px;\n height: 30px;\n }\n .lds-dual-ring-lg:after {\n content: \" \";\n display: block;\n width: 30px;\n height: 30px;\n margin: 0px;\n border-radius: 50%;\n border: 3px solid #fff;\n border-color: #888 #ddd #888 #ddd;\n animation: lds-dual-ring 0.8s linear infinite;\n }\n\n .div-row-error {\n display: flex;\n justify-content: center;\n position: fixed;\n position: fixed;\n top: 0px;\n right: 0px;\n margin-top: 20px;\n margin-right: 20px;\n display: none;\n align-items:center;\n background-color: white;\n border: dashed 1px red;\n padding: 20px;\n }\n\n .div-row-error-message {\n color: red;\n padding: 5px;\n background-color: white;\n text-align: center;\n }\n\n .div-row-success {\n display: flex;\n justify-content: center;\n position: fixed;\n top: 0px;\n right: 0px;\n margin-top: 20px;\n margin-right: 20px;\n display: none;\n align-items:center;\n background-color: white;\n border: dashed 1px green;\n padding: 20px;\n }\n\n .div-row-success-message {\n color: green;\n padding: 5px;\n background-color: white;\n text-align: center;\n }\n\n .d-flex {\n display: flex;\n }\n\n .flex-col {\n flex-direction: column;\n }\n\n .justify-center {\n justify-content: center;\n }\n\n .justify-between {\n justify-content: space-between;\n }\n\n .justify-end {\n justify-content: flex-end;\n }\n\n @keyframes lds-dual-ring {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n } \n\n .hide {\n display: none;\n }\n\n .lb {\n width: 5%\n }\n .rb {\n width: 5%\n }\n\n @media (orientation: landscape) {\n\n .lb {\n width: 30%\n }\n .rb {\n width: 30%\n }\n\n #calendar-container {\n width: 40%;\n }\n\n .calendar-item {\n width: 20%;\n margin: 1%;\n padding: 1.5%;\n }\n\n }\n\n `;\n \n @query('#button-stream-cancel')\n _SfButtonStreamCancel: any;\n\n @query('.div-row-error')\n _SfRowError: any;\n\n @query('.div-row-error-message')\n _SfRowErrorMessage: any;\n\n @query('.div-row-success')\n _SfRowSuccess: any;\n\n @query('.div-row-success-message')\n _SfRowSuccessMessage: any;\n\n @query('.loader-element')\n _SfLoader: any;\n\n @query('#calendar-container')\n _SfCalendarContainer: any;\n\n @query('#stream-container')\n _SfStreamContainer: any;\n\n getEventField = (field: string) => {\n\n for(var i = 0; i < this.getEventFields().length; i++) {\n\n if(this.getEventFields()[i].field == field) {\n return this.getEventFields()[i];\n }\n\n }\n\n }\n\n getParentFieldFromDepedencies = (field: string) => {\n\n for(var i = 0; i < this.getEventFieldDependencies().length; i++) {\n\n if(this.getEventFieldDependencies()[i].type == \"foreignkey\" && this.getEventFieldDependencies()[i].child == field) {\n return this.getEventFieldDependencies()[i].parent;\n }\n\n }\n\n return null;\n\n }\n\n getEventTexts = (field: string, selectedId: Array<string>, row: any) => {\n\n console.log('get event texts', field, selectedId, row);\n\n if(this.getEventField(field) != null && this.getEventField(field).type == \"sf-i-select\") {\n\n var selectedIds = \"\";\n selectedIds += '[';\n for(var i = 0; i < selectedId.length; i++) {\n selectedIds += ('"'+selectedId[i]+'"');\n if(i < selectedId.length - 1) {\n selectedIds += ',';\n }\n }\n selectedIds += ']';\n\n return '<sf-i-select apiId=\"'+this.getEventField(field).apiId+'\" name=\"Select\" label=\"Select\" mode=\"text\" selectedId=\"'+selectedIds+'\"></sf-i-select>'\n\n }\n\n if(this.getEventField(field) != null && this.getEventField(field).type == \"sf-i-sub-select\") {\n\n const parentField = this.getParentFieldFromDepedencies(field);\n\n console.log('parentfield', parentField);\n\n var selectedIds = \"\";\n selectedIds += '[';\n for(var i = 0; i < selectedId.length; i++) {\n selectedIds += ('"'+selectedId[i]+'"');\n if(i < selectedId.length - 1) {\n selectedIds += ',';\n }\n }\n selectedIds += ']';\n\n const filterId = JSON.parse(row[parentField])[0];\n\n console.log('<sf-i-sub-select apiId=\"'+this.getEventField(field).apiId+'\" name=\"Select\" label=\"Select\" mode=\"text\" selectedId=\"'+selectedIds+'\" filterId=\"'+filterId+'\"></sf-i-sub-select>');\n\n return '<sf-i-sub-select apiId=\"'+this.getEventField(field).apiId+'\" name=\"Select\" label=\"Select\" mode=\"text\" selectedId=\"'+selectedIds+'\" filterId=\"'+filterId+'\"></sf-i-sub-select>'\n\n }\n\n if(this.getEventField(field) != null && this.getEventField(field).type == \"sf-i-form\") {\n\n console.log('<sf-i-form name=\"Select\" apiId=\"'+this.getEventField(field).apiId+'\" selectedId=\"'+selectedId[0]+'\" projectField=\"'+this.getEventField(field).projectField+'\" mode=\"text\"></sf-i-form>');\n\n return '<sf-i-form name=\"Select\" apiId=\"'+this.getEventField(field).apiId+'\" selectedId=\"'+selectedId[0]+'\" projectField=\"'+this.getEventField(field).projectField+'\" mode=\"text\"></sf-i-form>'\n }\n\n \n\n return \"\";\n }\n\n enableStream(value: boolean) {\n\n if(value) {\n (this._SfButtonStreamCancel as HTMLButtonElement).style.display = \"inline\";\n (this._SfCalendarContainer as HTMLDivElement).style.display = 'none';\n (this._SfStreamContainer as HTMLDivElement).style.display = 'flex';\n } else {\n (this._SfButtonStreamCancel as HTMLButtonElement).style.display = \"none\";\n (this._SfCalendarContainer as HTMLDivElement).style.display = 'flex';\n (this._SfStreamContainer as HTMLDivElement).style.display = 'none';\n }\n\n }\n\n prepareXhr = async (data: any, url: string, loaderElement: any, authorization: any) => {\n\n \n if(loaderElement != null) {\n loaderElement.innerHTML = '<div class=\"lds-dual-ring\"></div>';\n }\n return await Util.callApi(url, data, authorization);\n\n }\n\n clearMessages = () => {\n this._SfRowError.style.display = 'none';\n this._SfRowErrorMessage.innerHTML = '';\n this._SfRowSuccess.style.display = 'none';\n this._SfRowSuccessMessage.innerHTML = '';\n }\n\n setError = (msg: string) => {\n this._SfRowError.style.display = 'flex';\n this._SfRowErrorMessage.innerHTML = msg;\n this._SfRowSuccess.style.display = 'none';\n this._SfRowSuccessMessage.innerHTML = '';\n }\n\n setSuccess = (msg: string) => {\n this._SfRowError.style.display = 'none';\n this._SfRowErrorMessage.innerHTML = '';\n this._SfRowSuccess.style.display = 'flex';\n this._SfRowSuccessMessage.innerHTML = msg;\n }\n\n getLastDayOfLastMonth = (month: number, year: number) => {\n const date = new Date(year, month, 0);\n return date.getDate()\n }\n\n getLastDayOfMonth = (month: number, year: number) => {\n const date = new Date(year, month + 1, 0);\n return date.getDate()\n }\n\n getBlanks = (month: number, year: number) => {\n\n const date = new Date((\"0\" + (month+1)).slice(-2) + '/01/' + year);\n const day = date.getDay();\n return day;\n\n }\n\n insertDates = (month: number, year: number) => {\n\n var html = \"\";\n\n html += '<div class=\"d-flex align-baseline flex-grow flex-wrap\">';\n\n const dateNumber = this.getLastDayOfLastMonth(month, year);\n\n for(var i = 0; i < this.getBlanks(month, year); i++) {\n\n html += '<div class=\"day-item date-item-before fw-100\">';\n html += dateNumber-(this.getBlanks(month, year) - i - 1);\n html += '</div>'; \n\n }\n\n for(i = 0; i < this.getLastDayOfMonth(month, year); i++) {\n\n const mmdd = (\"0\" + (month+1)).slice(-2) + \"/\" + (\"0\" + (i+1)).slice(-2);\n\n var partName = \"\";\n\n if(this.events[mmdd] != null) {\n partName = \"compliance-calendar-day-with-compliance\";\n html += '<div part=\"' + partName + '\" class=\"day-item date-item fw-600\">';\n html += '<div>'\n html += (i + 1);\n html += '</div>'\n html += '<div class=\"d-flex justify-center\">'\n html += '<div part=\"compliance-date-indicator-primary\" class=\"dot\"></div>'\n html += '</div>'\n html += '</div>'; \n } else {\n partName = \"compliance-calendar-day-without-compliance\";\n html += '<div part=\"' + partName + '\" class=\"day-item date-item fw-100\">';\n html += '<div>'\n html += (i + 1);\n html += '</div>'\n html += '</div>'; \n }\n\n }\n\n for(i = 0; i < 42 - (this.getBlanks(month, year) + this.getLastDayOfMonth(month, year)); i++) {\n html += '<div class=\"day-item date-item-before fw-100\">';\n html += (i+1);\n html += '</div>'; \n }\n\n html += '</div>';\n\n return html;\n\n }\n\n insertDayNames = () => {\n\n var html = \"\";\n\n html += '<div class=\"d-flex align-center flex-grow\">';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'S';\n html += '</div>';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'M';\n html += '</div>';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'T';\n html += '</div>';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'W';\n html += '</div>';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'T';\n html += '</div>';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'F';\n html += '</div>';\n\n html += '<div part=\"calendar-day-name\" class=\"day-item fw-100\">';\n html += 'S';\n html += '</div>';\n\n html += '</div>';\n\n return html;\n\n }\n\n renderStreamEvents = (index: number, month: number, year: number) => {\n\n const lastDay = this.getLastDayOfMonth(month, year);\n\n var html = '<div id=\"stream-event-'+index+'\" part=\"stream-event-list\" class=\"stream-event-list\">';\n\n for(var i = 1; i <= lastDay; i++) {\n\n const mmdd = (\"0\" + (month+1)).slice(-2) + \"/\" + (\"0\" + i).slice(-2);\n if(this.events[mmdd] != null) {\n //html += '<div>'+month + ',' + year + ',' + i+'</div>'\n html += '<div part=\"stream-event-selected\" class=\"d-flex stream-event-selected\">';\n html += '<div>'+(\"0\" + i).slice(-2)+' |</div>';\n for(var j = 0; j < (this.events[mmdd] as Array<any>).length; j++) {\n html += '<div class=\"stream-events-container flex-grow\">';\n html += '<table>';\n html += '<thead>';\n for(var k = 0; k < Object.keys(this.events[mmdd][j]).length; k++) {\n html += '<th part=\"td-head\">';\n html += Object.keys(this.events[mmdd][j])[k];\n html += '</th>';\n }\n html += '</thead>';\n html += '<tbody>';\n for(var k = 0; k < Object.keys(this.events[mmdd][j]).length; k++) {\n html += '<th part=\"td-body\">';\n if(this.events[mmdd][j][Object.keys(this.events[mmdd][j])[k]].indexOf(\"[\") >= 0) {\n html += this.getEventTexts(Object.keys(this.events[mmdd][j])[k], JSON.parse(this.events[mmdd][j][Object.keys(this.events[mmdd][j])[k]]), this.events[mmdd][j]);\n } else {\n html += this.events[mmdd][j][Object.keys(this.events[mmdd][j])[k]].replace(/\"/g, \"\");\n }\n \n html += '</th>';\n }\n html += '</tbody>';\n html += '</table>';\n html += '</div>';\n }\n html += '</div>';\n } else {\n html += '<div part=\"stream-event-not-selected\" class=\"d-flex stream-event-not-selected\">';\n html += '<div>'+(\"0\" + i).slice(-2)+' | ---</div>';\n html += '</div>';\n }\n \n\n }\n\n html += '</div>'\n\n return html;\n\n }\n\n renderStream = (index: number = 0) => {\n\n console.log('renderstream', index);\n\n var startDate = new Date(this.calendarStartMM + '/' + this.calendarStartDD + '/' + this.calendarStartYYYY);\n\n var html = '';\n\n html += '<div class=\"d-flex flex-grow\">';\n html += '<div class=\"calendar-left-col\">';\n\n var startDate = new Date(this.calendarStartMM + '/' + this.calendarStartDD + '/' + this.calendarStartYYYY);\n\n for(var i = 0; i < 12; i++) {\n\n var part = \"\";\n\n if(i === index) {\n part = \"stream-month-selected\";\n } else {\n part = \"stream-month-not-selected\";\n }\n\n html += '<div part=\"'+part+'\" id=\"stream-month-'+i+'\" part=\"month-title\" class=\"title-item '+part+'\">' + this.monthNames[startDate.getMonth()] + ' ' + startDate.getFullYear() + '</div>';\n startDate.setMonth(startDate.getMonth() + 1);\n }\n\n html += '</div>';\n html += '<div class=\"calendar-right-data\">';\n\n startDate = new Date(this.calendarStartMM + '/' + this.calendarStartDD + '/' + this.calendarStartYYYY);\n for(i = 0; i < 12; i++) {\n if(i === index) {\n console.log(i, index)\n html += this.renderStreamEvents(i, startDate.getMonth(), startDate.getFullYear())\n }\n startDate.setMonth(startDate.getMonth() + 1);\n }\n html += '</div>';\n html += '</div>';\n\n (this._SfStreamContainer as HTMLDivElement).innerHTML = html;\n\n for(var i = 0; i < 12; i++) {\n (this._SfStreamContainer as HTMLDivElement).querySelector('#stream-month-' + i)?.addEventListener('click', (ev: any)=> {\n\n const target = parseInt((ev.target as HTMLDivElement).id.split('-')[2]);\n this.renderStream(target);\n\n })\n }\n\n }\n\n renderCalendar = () => {\n\n console.log('redering calendar', this.events);\n\n var startDate = new Date(this.calendarStartMM + '/' + this.calendarStartDD + '/' + this.calendarStartYYYY);\n\n var html = '';\n\n for(var i = 0; i < 12; i++) {\n\n html += '<div class=\"calendar-item d-flex flex-col flex-grow\" part=\"calendar-month\">';\n html += '<div class=\"d-flex justify-between align-center\">';\n html += '<div part=\"month-title\" class=\"title-item\">' + this.monthNames[startDate.getMonth()] + ' ' + startDate.getFullYear() + '</div>';\n html += '<button id=\"calendar-button-'+i+'\" part=\"button-icon-small\" class=\"title-item material-icons\">open_in_new</button>'\n html += '</div>';\n html += this.insertDayNames();\n html += this.insertDates(startDate.getMonth(), startDate.getFullYear());\n html += '</div>';\n\n startDate.setMonth(startDate.getMonth() + 1);\n \n }\n\n (this._SfCalendarContainer as HTMLDivElement).innerHTML = html;\n\n for(var i = 0; i < 12; i++) {\n\n (this._SfCalendarContainer as HTMLDivElement).querySelector('#calendar-button-' + i)?.addEventListener('click', (ev: any) => {\n\n const id = (ev.target as HTMLButtonElement).id.split(\"-\")[2];\n this.enableStream(true);\n this.renderStream(parseInt(id));\n\n })\n\n }\n\n }\n\n processEvent = (value: any) => {\n\n console.log('processing due date', value.duedate.replace(/['\"]+/g, ''));\n const duedateArr = value.duedate.replace(/['\"]+/g, '').split(\",\") as Array<string>;\n\n const startMonth = parseInt(this.calendarStartMM);\n\n for(var i = 0; i < duedateArr.length; i++) {\n\n const dateArr = duedateArr[i].split(\"/\");\n console.log('datearr', dateArr);\n\n if(dateArr[2] == \"*\") {\n if(dateArr[1] == \"*\") {\n\n var j = startMonth;\n\n while(true) {\n\n console.log('processing event',dateArr[2],dateArr[1],j);\n\n const mmdd = (\"0\" +j).slice(-2) + \"/\" + (\"0\" + dateArr[0]).slice(-2);\n\n if(this.events == null) {\n this.events = {};\n }\n if(this.events[mmdd] == null) {\n this.events[mmdd] = [];\n }\n (this.events[mmdd] as Array<any>).push(value);\n\n\n if(startMonth !== 12) {\n\n if(j === (startMonth - 1)) {\n break;\n }\n }\n\n\n j++;\n\n if(j === 13) {\n j = 0;\n }\n\n } \n\n } else {\n\n const mmdd = (\"0\" +(parseInt(dateArr[1]))).slice(-2) + \"/\" + (\"0\" + dateArr[0]).slice(-2);\n\n if(this.events == null) {\n this.events = {};\n }\n if(this.events[mmdd] == null) {\n this.events[mmdd] = [];\n }\n (this.events[mmdd] as Array<any>).push(value);\n\n }\n }\n\n }\n\n console.log('calendar processed', this.calendar);\n console.log('event processed', this.events);\n\n }\n\n fetchDetail = async (value: any) => {\n\n const body: any = this.getApiBodyList();\n body.id = value;\n console.log('detail', value, body);\n let url = \"https://\"+this.apiIdDetail+\".execute-api.us-east-1.amazonaws.com/test/\" + this.apiMethodDetail;\n\n const authorization = btoa(Util.readCookie('email') + \":\" + Util.readCookie('accessToken'));\n const xhr : any = (await this.prepareXhr(body, url, this._SfLoader, authorization)) as any;\n this._SfLoader.innerHTML = '';\n if(xhr.status == 200) {\n\n const jsonRespose = JSON.parse(xhr.responseText);\n console.log('jsonResponse', jsonRespose);\n this.processEvent(jsonRespose.data.value)\n \n } else {\n const jsonRespose = JSON.parse(xhr.responseText);\n this.setError(jsonRespose.error);\n }\n\n }\n\n fetchList = async () => {\n\n console.log('calendar fetching list', this.apiIdList);\n\n const body: any = this.getApiBodyList();\n\n if(this.apiIdList != null) {\n\n let url = \"https://\"+this.apiIdList+\".execute-api.us-east-1.amazonaws.com/test/\" + this.apiMethodList;\n\n console.log('calendar request body', body);\n console.log('calendar request url', url);\n\n const authorization = btoa(Util.readCookie('email') + \":\" + Util.readCookie('accessToken'));\n const xhr : any = (await this.prepareXhr(body, url, this._SfLoader, authorization)) as any;\n this._SfLoader.innerHTML = '';\n if(xhr.status == 200) {\n\n const jsonRespose = JSON.parse(xhr.responseText);\n const fieldArr = JSON.parse(jsonRespose.data.value[this.apiResponseFieldList]) as Array<string>;\n\n for(var i = 0; i < fieldArr.length; i++) {\n\n console.log('events', fieldArr[i]);\n await this.fetchDetail(fieldArr[i])\n\n }\n \n } else {\n const jsonRespose = JSON.parse(xhr.responseText);\n this.setError(jsonRespose.error);\n }\n\n }\n\n }\n\n initCalendar = async () => {\n\n var newDate = null;\n var newMonth = null;\n var newYear = null;\n var startDate = new Date(this.calendarStartMM + '/' + this.calendarStartDD + '/' + this.calendarStartYYYY);\n\n console.log('startDate', startDate);\n \n do {\n\n this.calendar.push(startDate);\n startDate.setDate(startDate.getDate() + 1);\n\n newDate = (\"0\" + startDate.getDate()).slice(-2);\n newMonth = (\"0\" + startDate.getMonth()).slice(-2);\n newYear = (startDate.getFullYear());\n\n } while(!(newDate == this.calendarStartDD && newMonth == ((\"0\" + ((parseInt(this.calendarStartMM) - 1) + \"\")).slice(-2)) && newYear === (parseInt(this.calendarStartYYYY) + 1)));\n\n console.log(this.calendar);\n\n }\n\n initInputs = () => {\n\n this.calendarStartDD = (\"0\" + this.calendarStartDD).slice(-2);\n this.calendarStartMM = (\"0\" + this.calendarStartMM).slice(-2);\n\n }\n\n initListeners = () => {\n\n (this._SfButtonStreamCancel as HTMLButtonElement).addEventListener('click', () => {\n this.enableStream(false);\n });\n\n }\n\n loadMode = async () => {\n\n this.enableStream(false);\n this.initListeners();\n this.initInputs();\n this.initCalendar();\n\n console.log('calendar init done');\n\n await this.fetchList();\n \n if(this.events != null) {\n this.renderCalendar();\n this.renderStream();\n }\n\n }\n\n constructor() {\n super();\n }\n\n protected override firstUpdated(_changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void {\n\n this.loadMode();\n\n }\n \n override connectedCallback() {\n super.connectedCallback()\n }\n \n override render() {\n\n return html`\n \n <link href=\"https://fonts.googleapis.com/icon?family=Material+Icons\" rel=\"stylesheet\">\n <div class=\"SfIEventsC\">\n \n <div class=\"d-flex justify-center\">\n <div class=\"loader-element\"></div>\n </div>\n <div class=\"d-flex\">\n <button id=\"button-stream-cancel\" part=\"button-icon\" class=\"material-icons\">keyboard_backspace</button>\n </div>\n <div class=\"d-flex justify-center\">\n <div class=\"d-flex flex-grow flex-wrap justify-center align-stretch\" id=\"calendar-container\">\n \n </div>\n <div class=\"d-flex flex-grow flex-wrap justify-center align-stretch\" id=\"stream-container\">\n \n </div>\n </div>\n <div class=\"d-flex justify-between\">\n <div class=\"lb\"></div>\n <div>\n <div class=\"div-row-error div-row-submit gone\">\n <div part=\"errormsg\" class=\"div-row-error-message\"></div>\n </div>\n <div class=\"div-row-success div-row-submit gone\">\n <div part=\"successmsg\" class=\"div-row-success-message\"></div>\n </div>\n </div>\n <div class=\"rb\"></div>\n </div>\n </div>\n\n `;\n }\n\n}\n\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'sf-i-events': SfIEvents;\n }\n}\n"]}
|
package/src/sf-i-events.ts
CHANGED
|
@@ -426,6 +426,8 @@ export class SfIEvents extends LitElement {
|
|
|
426
426
|
|
|
427
427
|
`;
|
|
428
428
|
|
|
429
|
+
@query('#button-stream-cancel')
|
|
430
|
+
_SfButtonStreamCancel: any;
|
|
429
431
|
|
|
430
432
|
@query('.div-row-error')
|
|
431
433
|
_SfRowError: any;
|
|
@@ -533,9 +535,11 @@ export class SfIEvents extends LitElement {
|
|
|
533
535
|
enableStream(value: boolean) {
|
|
534
536
|
|
|
535
537
|
if(value) {
|
|
538
|
+
(this._SfButtonStreamCancel as HTMLButtonElement).style.display = "inline";
|
|
536
539
|
(this._SfCalendarContainer as HTMLDivElement).style.display = 'none';
|
|
537
540
|
(this._SfStreamContainer as HTMLDivElement).style.display = 'flex';
|
|
538
541
|
} else {
|
|
542
|
+
(this._SfButtonStreamCancel as HTMLButtonElement).style.display = "none";
|
|
539
543
|
(this._SfCalendarContainer as HTMLDivElement).style.display = 'flex';
|
|
540
544
|
(this._SfStreamContainer as HTMLDivElement).style.display = 'none';
|
|
541
545
|
}
|
|
@@ -996,7 +1000,10 @@ export class SfIEvents extends LitElement {
|
|
|
996
1000
|
|
|
997
1001
|
initListeners = () => {
|
|
998
1002
|
|
|
999
|
-
|
|
1003
|
+
(this._SfButtonStreamCancel as HTMLButtonElement).addEventListener('click', () => {
|
|
1004
|
+
this.enableStream(false);
|
|
1005
|
+
});
|
|
1006
|
+
|
|
1000
1007
|
}
|
|
1001
1008
|
|
|
1002
1009
|
loadMode = async () => {
|
|
@@ -1041,6 +1048,9 @@ export class SfIEvents extends LitElement {
|
|
|
1041
1048
|
<div class="d-flex justify-center">
|
|
1042
1049
|
<div class="loader-element"></div>
|
|
1043
1050
|
</div>
|
|
1051
|
+
<div class="d-flex">
|
|
1052
|
+
<button id="button-stream-cancel" part="button-icon" class="material-icons">keyboard_backspace</button>
|
|
1053
|
+
</div>
|
|
1044
1054
|
<div class="d-flex justify-center">
|
|
1045
1055
|
<div class="d-flex flex-grow flex-wrap justify-center align-stretch" id="calendar-container">
|
|
1046
1056
|
|