ps-toolkit-ui 1.21.42 → 1.21.67
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/bundles/ps-toolkit-ui.umd.js +10322 -0
- package/bundles/ps-toolkit-ui.umd.js.map +1 -0
- package/bundles/ps-toolkit-ui.umd.min.js +2 -0
- package/bundles/ps-toolkit-ui.umd.min.js.map +1 -0
- package/esm2015/lib/classes/addModal.class.js +36 -0
- package/esm2015/lib/classes/chart.class.js +165 -0
- package/esm2015/lib/classes/currentDataClass.js +17 -0
- package/esm2015/lib/classes/enum.class.js +253 -0
- package/esm2015/lib/classes/excel.class.js +56 -0
- package/esm2015/lib/classes/form.class.js +667 -0
- package/esm2015/lib/classes/header.class.js +16 -0
- package/esm2015/lib/classes/helper.class.js +650 -0
- package/esm2015/lib/classes/lang.class.js +35 -0
- package/esm2015/lib/classes/login.class.js +29 -0
- package/esm2015/lib/classes/modal.class.js +49 -0
- package/esm2015/lib/classes/permission.class.js +63 -0
- package/esm2015/lib/classes/request.class.js +155 -0
- package/esm2015/lib/classes/safehtml.class.js +17 -0
- package/esm2015/lib/classes/safestyle.class.js +17 -0
- package/esm2015/lib/classes/sidebar.class.js +16 -0
- package/esm2015/lib/classes/steps.class.js +45 -0
- package/esm2015/lib/classes/string.class.js +251 -0
- package/esm2015/lib/classes/table.class.js +593 -0
- package/esm2015/lib/components/accordion/accordion.component.js +45 -0
- package/esm2015/lib/components/alert/alert.component.js +39 -0
- package/esm2015/lib/components/base.component.js +54 -0
- package/esm2015/lib/components/calendar/calendar.component.js +98 -0
- package/esm2015/lib/components/chart/chart.component.js +17 -0
- package/esm2015/lib/components/clock/clock.component.js +33 -0
- package/esm2015/lib/components/confirm/confirm.component.js +50 -0
- package/esm2015/lib/components/error/error.component.js +26 -0
- package/esm2015/lib/components/footer/footer.component.js +23 -0
- package/esm2015/lib/components/form/bank-card/form.bank-card.component.js +200 -0
- package/esm2015/lib/components/form/button/form.button.component.js +68 -0
- package/esm2015/lib/components/form/checkbox/form.checkbox.component.js +67 -0
- package/esm2015/lib/components/form/ckeditor/form.ckeditor.component.js +90 -0
- package/esm2015/lib/components/form/date/form.date.component.js +314 -0
- package/esm2015/lib/components/form/datetime/form.datetime.component.js +106 -0
- package/esm2015/lib/components/form/file/form.file.component.js +124 -0
- package/esm2015/lib/components/form/finger/form.finger.component.js +140 -0
- package/esm2015/lib/components/form/hidden/form.hidden.component.js +31 -0
- package/esm2015/lib/components/form/icon/form.icon.component.js +84 -0
- package/esm2015/lib/components/form/index/form.component.js +51 -0
- package/esm2015/lib/components/form/label/form.label.component.js +32 -0
- package/esm2015/lib/components/form/plaque/form.plaque.component.js +258 -0
- package/esm2015/lib/components/form/plaque/select/form.plaque.select.component.js +468 -0
- package/esm2015/lib/components/form/radio/form.radio.component.js +82 -0
- package/esm2015/lib/components/form/select/form.select.component.js +452 -0
- package/esm2015/lib/components/form/select/item/form.select.item.component.js +27 -0
- package/esm2015/lib/components/form/slide/form.slide.component.js +84 -0
- package/esm2015/lib/components/form/star/form.star.component.js +66 -0
- package/esm2015/lib/components/form/table/form.table.component.js +96 -0
- package/esm2015/lib/components/form/tag/form.tag.component.js +100 -0
- package/esm2015/lib/components/form/textarea/form.textarea.component.js +83 -0
- package/esm2015/lib/components/form/textbox/form.textbox.component.js +227 -0
- package/esm2015/lib/components/form/time/form.time.component.js +149 -0
- package/esm2015/lib/components/form/toggle/form.toggle.component.js +72 -0
- package/esm2015/lib/components/form/tree/form.tree.component.js +157 -0
- package/esm2015/lib/components/form/tree/item/form.tree.item.component.js +50 -0
- package/esm2015/lib/components/form/uploader/form.uploader.component.js +159 -0
- package/esm2015/lib/components/form/vehicle/form.vehicle.component.js +104 -0
- package/esm2015/lib/components/form/vehicle/search/form.vehicle.search.component.js +237 -0
- package/esm2015/lib/components/header/header.component.js +28 -0
- package/esm2015/lib/components/header/sub/sub.header.component.js +14 -0
- package/esm2015/lib/components/layout/layout.component.js +18 -0
- package/esm2015/lib/components/loading/loading.component.js +22 -0
- package/esm2015/lib/components/login/login.component.js +159 -0
- package/esm2015/lib/components/modal/modal.component.js +25 -0
- package/esm2015/lib/components/notfound/notfound.component.js +29 -0
- package/esm2015/lib/components/notification/notification.component.js +14 -0
- package/esm2015/lib/components/sidebar/item/sidebar.item.component.js +55 -0
- package/esm2015/lib/components/sidebar/sidebar.component.js +98 -0
- package/esm2015/lib/components/steps/steps.component.js +88 -0
- package/esm2015/lib/components/table/loading/table.loading.component.js +17 -0
- package/esm2015/lib/components/table/pagination/table.pagination.component.js +84 -0
- package/esm2015/lib/components/table/row/table.row.component.js +451 -0
- package/esm2015/lib/components/table/table.component.js +240 -0
- package/esm2015/lib/components/tooltip/tooltip.component.js +19 -0
- package/esm2015/lib/ps-toolkit-ui.module.js +105 -0
- package/esm2015/lib/services/config.service.js +14 -0
- package/esm2015/lib/services/sidebar.service.js +21 -0
- package/esm2015/ps-toolkit-ui.js +21 -0
- package/esm2015/public-api.js +64 -0
- package/fesm2015/ps-toolkit-ui.js +8927 -0
- package/fesm2015/ps-toolkit-ui.js.map +1 -0
- package/lib/classes/addModal.class.d.ts +14 -0
- package/lib/classes/chart.class.d.ts +15 -0
- package/lib/classes/currentDataClass.d.ts +10 -0
- package/lib/classes/enum.class.d.ts +221 -0
- package/lib/classes/excel.class.d.ts +8 -0
- package/lib/classes/form.class.d.ts +193 -0
- package/lib/classes/header.class.d.ts +8 -0
- package/lib/classes/helper.class.d.ts +50 -0
- package/lib/classes/lang.class.d.ts +5 -0
- package/lib/classes/login.class.d.ts +21 -0
- package/lib/classes/modal.class.d.ts +19 -0
- package/lib/classes/permission.class.d.ts +35 -0
- package/lib/classes/request.class.d.ts +10 -0
- package/lib/classes/safehtml.class.d.ts +7 -0
- package/lib/classes/safestyle.class.d.ts +7 -0
- package/lib/classes/sidebar.class.d.ts +14 -0
- package/lib/classes/steps.class.d.ts +31 -0
- package/lib/classes/string.class.d.ts +249 -0
- package/lib/classes/table.class.d.ts +88 -0
- package/lib/components/accordion/accordion.component.d.ts +7 -0
- package/lib/components/alert/alert.component.d.ts +10 -0
- package/lib/components/base.component.d.ts +17 -0
- package/lib/components/calendar/calendar.component.d.ts +26 -0
- package/lib/components/chart/chart.component.d.ts +5 -0
- package/lib/components/clock/clock.component.d.ts +11 -0
- package/lib/components/confirm/confirm.component.d.ts +14 -0
- package/lib/components/error/error.component.d.ts +7 -0
- package/lib/components/footer/footer.component.d.ts +6 -0
- package/lib/components/form/bank-card/form.bank-card.component.d.ts +28 -0
- package/lib/components/form/button/form.button.component.d.ts +15 -0
- package/lib/components/form/checkbox/form.checkbox.component.d.ts +14 -0
- package/lib/components/form/ckeditor/form.ckeditor.component.d.ts +14 -0
- package/lib/components/form/date/form.date.component.d.ts +45 -0
- package/lib/components/form/datetime/form.datetime.component.d.ts +13 -0
- package/lib/components/form/file/form.file.component.d.ts +18 -0
- package/lib/components/form/finger/form.finger.component.d.ts +15 -0
- package/lib/components/form/hidden/form.hidden.component.d.ts +7 -0
- package/lib/components/form/icon/form.icon.component.d.ts +16 -0
- package/lib/components/form/index/form.component.d.ts +10 -0
- package/lib/components/form/label/form.label.component.d.ts +8 -0
- package/lib/components/form/plaque/form.plaque.component.d.ts +21 -0
- package/lib/components/form/plaque/select/form.plaque.select.component.d.ts +38 -0
- package/lib/components/form/radio/form.radio.component.d.ts +13 -0
- package/lib/components/form/select/form.select.component.d.ts +45 -0
- package/lib/components/form/select/item/form.select.item.component.d.ts +12 -0
- package/lib/components/form/slide/form.slide.component.d.ts +13 -0
- package/lib/components/form/star/form.star.component.d.ts +13 -0
- package/lib/components/form/table/form.table.component.d.ts +9 -0
- package/lib/components/form/tag/form.tag.component.d.ts +16 -0
- package/lib/components/form/textarea/form.textarea.component.d.ts +13 -0
- package/lib/components/form/textbox/form.textbox.component.d.ts +20 -0
- package/lib/components/form/time/form.time.component.d.ts +25 -0
- package/lib/components/form/toggle/form.toggle.component.d.ts +13 -0
- package/lib/components/form/tree/form.tree.component.d.ts +21 -0
- package/lib/components/form/tree/item/form.tree.item.component.d.ts +19 -0
- package/lib/components/form/uploader/form.uploader.component.d.ts +21 -0
- package/lib/components/form/vehicle/form.vehicle.component.d.ts +18 -0
- package/lib/components/form/vehicle/search/form.vehicle.search.component.d.ts +22 -0
- package/lib/components/header/header.component.d.ts +10 -0
- package/lib/components/header/sub/sub.header.component.d.ts +3 -0
- package/lib/components/layout/layout.component.d.ts +7 -0
- package/lib/components/loading/loading.component.d.ts +5 -0
- package/lib/components/login/login.component.d.ts +15 -0
- package/lib/components/modal/modal.component.d.ts +9 -0
- package/lib/components/notfound/notfound.component.d.ts +8 -0
- package/lib/components/notification/notification.component.d.ts +3 -0
- package/lib/components/sidebar/item/sidebar.item.component.d.ts +14 -0
- package/lib/components/sidebar/sidebar.component.d.ts +22 -0
- package/lib/components/steps/steps.component.d.ts +16 -0
- package/lib/components/table/loading/table.loading.component.d.ts +5 -0
- package/lib/components/table/pagination/table.pagination.component.d.ts +15 -0
- package/lib/components/table/row/table.row.component.d.ts +44 -0
- package/lib/components/table/table.component.d.ts +43 -0
- package/lib/components/tooltip/tooltip.component.d.ts +5 -0
- package/lib/ps-toolkit-ui.module.d.ts +4 -0
- package/lib/services/config.service.d.ts +6 -0
- package/lib/services/sidebar.service.d.ts +9 -0
- package/package.json +12 -16
- package/ps-toolkit-ui.d.ts +20 -0
- package/ps-toolkit-ui.metadata.json +1 -0
- package/public-api.d.ts +60 -0
- package/fesm2022/ps-toolkit-ui.mjs +0 -9472
- package/fesm2022/ps-toolkit-ui.mjs.map +0 -1
- package/types/ps-toolkit-ui.d.ts +0 -1671
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as $ from 'jquery';
|
|
3
|
+
export class AccordionComponent {
|
|
4
|
+
constructor() {
|
|
5
|
+
}
|
|
6
|
+
toggle(e) {
|
|
7
|
+
const chOpen = $(e.target).closest('.accordion').find('.content.open');
|
|
8
|
+
const ocOpen = chOpen.closest('.accordion-item').find('.header > .icon');
|
|
9
|
+
const ch = $(e.target).closest('.accordion-item').find(' > .content');
|
|
10
|
+
const oc = ch.closest('.accordion-item').find(' > .header > .icon');
|
|
11
|
+
if (ch.hasClass('open')) {
|
|
12
|
+
ch.removeClass('open');
|
|
13
|
+
ch.stop().slideUp();
|
|
14
|
+
oc.removeClass('fa-caret-down').addClass('fa-caret-left');
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
if (chOpen) {
|
|
18
|
+
chOpen.removeClass('open');
|
|
19
|
+
chOpen.stop().slideUp();
|
|
20
|
+
ocOpen.removeClass('fa-caret-down').addClass('fa-caret-left');
|
|
21
|
+
}
|
|
22
|
+
ch.addClass('open');
|
|
23
|
+
ch.stop().slideDown();
|
|
24
|
+
oc.addClass('fa-caret-down').removeClass('fa-caret-left');
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
deleteRow(acc) {
|
|
28
|
+
this.accordion.rows = this.accordion.rows.filter(x => x.name !== acc.name);
|
|
29
|
+
if (this.accordion.onDelete) {
|
|
30
|
+
this.accordion.onDelete(acc);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
AccordionComponent.decorators = [
|
|
35
|
+
{ type: Component, args: [{
|
|
36
|
+
selector: 'lib-accordion',
|
|
37
|
+
template: "<div [id]=\"'Accordion' + accordion.name\" [className]=\"'accordion ' + accordion.class\">\r\n <div *ngIf=\"accordion.loading\" class=\"loading\">\r\n <div class=\"text\" [innerHTML]=\"accordion.l('LoadingTable', 'Processing')\"></div>\r\n </div>\r\n <div *ngIf=\"!accordion.access\" class=\"loading access\">\r\n <div class=\"text\"><i class=\"fas fa-shield-alt icon\"></i>{{ accordion.l(\"PermissionDenied\") }}</div>\r\n </div>\r\n <div *ngIf=\"accordion.rows.length === 0 && !accordion.loading && accordion.access\" class=\"loading access\">\r\n <div class=\"text\"><i class=\"fad fa-empty-set icon\"></i>{{ accordion.l(\"EmptyData\") }}</div>\r\n </div>\r\n <div *ngIf=\"accordion.displayLabel\" class=\"title underline\">{{accordion.l(accordion.name)}}</div>\r\n <div class=\"accordion-item-con w-100\" *ngFor=\"let acc of accordion.rows; let i = index\">\r\n <div class=\"accordion-item\" [id]=\"'AccordionRow' + acc.id\" *ngIf=\"acc.show\">\r\n <div class=\"header\" *ngIf=\"accordion.rows.length > 1\" (click)=\"toggle($event)\">\r\n <div class=\"title\">{{accordion.l(acc.name)}}</div>\r\n <i [className]=\"(i == 0 ? 'fa-caret-down ' : 'fa-caret-left ') + 'fad icon'\"></i>\r\n <i *ngIf=\"accordion.hasDelete\" (click)=\"deleteRow(acc)\" class=\"fas fa-times delete-icon\"></i>\r\n </div>\r\n <div [className]=\"(i == 0 ? 'open ' : '') + 'content'\">\r\n <lib-table *ngIf=\"acc.table != null && acc.firstTable\" [table]=\"acc.table\"></lib-table>\r\n <lib-form *ngIf=\"acc.form != null\" [form]=\"acc.form\"></lib-form>\r\n <lib-table *ngIf=\"acc.table != null && !acc.firstTable\" [table]=\"acc.table\"></lib-table>\r\n <lib-chart *ngIf=\"acc.chart != null\" [chart]=\"acc.chart\"></lib-chart>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
38
|
+
styles: [".accordion{float:right;min-height:300px!important;padding:20px;position:relative}.accordion,.accordion>.loading{background-color:#fff;border-radius:var(--border-radius-base);width:100%}.accordion>.loading{height:100%;position:absolute;right:0;text-align:center;top:0;z-index:4}.accordion>.loading .text{font-weight:var(--font-bold);height:35px;line-height:35px;position:absolute;text-align:center;top:calc(50% - 20px);width:100%}::ng-deep .accordion>.loading .icon{font-size:20px!important;line-height:30px;margin-left:5px;position:relative;top:5px}.accordion>.title{font-size:16px;font-weight:var(--font-bold);height:30px;line-height:30px;text-align:center}.accordion .accordion-item,.accordion>.title{float:right;margin-bottom:10px;position:relative;width:100%}.accordion .accordion-item .header{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;float:right;position:relative;width:100%}.accordion .accordion-item .title{background-color:var(--base);border-radius:var(--border-radius-base);color:#fff;cursor:pointer;float:right;font-size:12px;height:30px;line-height:30px;text-align:center;width:100%}.accordion .accordion-item .title:hover{background-color:var(--base-dark)}.accordion .accordion-item .header .icon{right:0}.accordion .accordion-item .header .delete-icon,.accordion .accordion-item .header .icon{color:#fff;cursor:pointer;font-size:18px;height:30px;line-height:29px;position:absolute;text-align:center;top:0;width:30px}.accordion .accordion-item .header .delete-icon{left:0}.accordion .accordion-item .content{display:none;float:right;padding:10px;width:100%}.accordion .accordion-item-con:first-of-type .content{display:block}::ng-deep .accordion .accordion-item .content .table-con{box-shadow:unset!important}"]
|
|
39
|
+
},] }
|
|
40
|
+
];
|
|
41
|
+
AccordionComponent.ctorParameters = () => [];
|
|
42
|
+
AccordionComponent.propDecorators = {
|
|
43
|
+
accordion: [{ type: Input }]
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9hY2NvcmRpb24vYWNjb3JkaW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUE0QixLQUFLLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBUTVCLE1BQU0sT0FBTyxrQkFBa0I7SUFHN0I7SUFDQSxDQUFDO0lBQ0QsTUFBTSxDQUFDLENBQUM7UUFDTixNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDdkUsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3pFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3RFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUNwRSxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDdkIsRUFBRSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN2QixFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsRUFBRSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDM0Q7YUFBTTtZQUNMLElBQUksTUFBTSxFQUFDO2dCQUNULE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzNCLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDeEIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUM7YUFDL0Q7WUFDRCxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3BCLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUN0QixFQUFFLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUMzRDtJQUNILENBQUM7SUFDRCxTQUFTLENBQUMsR0FBc0I7UUFDOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0UsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBQztZQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUM5QjtJQUNILENBQUM7OztZQW5DRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGVBQWU7Z0JBQ3pCLGcwREFBeUM7O2FBRTFDOzs7O3dCQUVFLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyAkIGZyb20gJ2pxdWVyeSc7XHJcbmltcG9ydCB7QWNjb3JkaW9uQ2xhc3MsIEFjY29yZGlvblJvd0NsYXNzfSBmcm9tICcuLi8uLi9jbGFzc2VzL2Zvcm0uY2xhc3MnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItYWNjb3JkaW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYWNjb3JkaW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hY2NvcmRpb24uY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBY2NvcmRpb25Db21wb25lbnR7XHJcbiAgQElucHV0KClcclxuICBhY2NvcmRpb246IEFjY29yZGlvbkNsYXNzO1xyXG4gIGNvbnN0cnVjdG9yKCl7XHJcbiAgfVxyXG4gIHRvZ2dsZShlKTogdm9pZHtcclxuICAgIGNvbnN0IGNoT3BlbiA9ICQoZS50YXJnZXQpLmNsb3Nlc3QoJy5hY2NvcmRpb24nKS5maW5kKCcuY29udGVudC5vcGVuJyk7XHJcbiAgICBjb25zdCBvY09wZW4gPSBjaE9wZW4uY2xvc2VzdCgnLmFjY29yZGlvbi1pdGVtJykuZmluZCgnLmhlYWRlciA+IC5pY29uJyk7XHJcbiAgICBjb25zdCBjaCA9ICQoZS50YXJnZXQpLmNsb3Nlc3QoJy5hY2NvcmRpb24taXRlbScpLmZpbmQoJyA+IC5jb250ZW50Jyk7XHJcbiAgICBjb25zdCBvYyA9IGNoLmNsb3Nlc3QoJy5hY2NvcmRpb24taXRlbScpLmZpbmQoJyA+IC5oZWFkZXIgPiAuaWNvbicpO1xyXG4gICAgaWYgKGNoLmhhc0NsYXNzKCdvcGVuJykpIHtcclxuICAgICAgY2gucmVtb3ZlQ2xhc3MoJ29wZW4nKTtcclxuICAgICAgY2guc3RvcCgpLnNsaWRlVXAoKTtcclxuICAgICAgb2MucmVtb3ZlQ2xhc3MoJ2ZhLWNhcmV0LWRvd24nKS5hZGRDbGFzcygnZmEtY2FyZXQtbGVmdCcpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKGNoT3Blbil7XHJcbiAgICAgICAgY2hPcGVuLnJlbW92ZUNsYXNzKCdvcGVuJyk7XHJcbiAgICAgICAgY2hPcGVuLnN0b3AoKS5zbGlkZVVwKCk7XHJcbiAgICAgICAgb2NPcGVuLnJlbW92ZUNsYXNzKCdmYS1jYXJldC1kb3duJykuYWRkQ2xhc3MoJ2ZhLWNhcmV0LWxlZnQnKTtcclxuICAgICAgfVxyXG4gICAgICBjaC5hZGRDbGFzcygnb3BlbicpO1xyXG4gICAgICBjaC5zdG9wKCkuc2xpZGVEb3duKCk7XHJcbiAgICAgIG9jLmFkZENsYXNzKCdmYS1jYXJldC1kb3duJykucmVtb3ZlQ2xhc3MoJ2ZhLWNhcmV0LWxlZnQnKTtcclxuICAgIH1cclxuICB9XHJcbiAgZGVsZXRlUm93KGFjYzogQWNjb3JkaW9uUm93Q2xhc3MpOiB2b2lke1xyXG4gICAgdGhpcy5hY2NvcmRpb24ucm93cyA9IHRoaXMuYWNjb3JkaW9uLnJvd3MuZmlsdGVyKHggPT4geC5uYW1lICE9PSBhY2MubmFtZSk7XHJcbiAgICBpZiAodGhpcy5hY2NvcmRpb24ub25EZWxldGUpe1xyXG4gICAgICB0aGlzLmFjY29yZGlvbi5vbkRlbGV0ZShhY2MpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { FormClass, InputClass } from '../../classes/form.class';
|
|
3
|
+
import { ModalClass } from '../../classes/modal.class';
|
|
4
|
+
import { InputType } from '../../classes/enum.class';
|
|
5
|
+
import { LangClass } from '../../classes/lang.class';
|
|
6
|
+
import { PsToolkitUiConfigService } from '../../services/config.service';
|
|
7
|
+
export class AlertComponent {
|
|
8
|
+
constructor(config) {
|
|
9
|
+
this.config = config;
|
|
10
|
+
const lang = new LangClass(config.currentLang, config.strings);
|
|
11
|
+
const l = (key, v = null) => {
|
|
12
|
+
return lang.get('Public', 'Alert', key, v);
|
|
13
|
+
};
|
|
14
|
+
this.alert = new ModalClass(config.environment, l, 'Alert');
|
|
15
|
+
this.alert.form = new FormClass(config.environment, l, 'Alert');
|
|
16
|
+
this.alertLabel = new InputClass(config.environment, l, 'Alert', null, InputType.Label, 'f-s-16 p-h-20 p-t-10 l-h-30');
|
|
17
|
+
this.alert.form.inputs = [
|
|
18
|
+
this.alertLabel
|
|
19
|
+
];
|
|
20
|
+
}
|
|
21
|
+
show(l, accept) {
|
|
22
|
+
this.alertLabel.value = l;
|
|
23
|
+
this.alert.onHide = () => {
|
|
24
|
+
accept();
|
|
25
|
+
};
|
|
26
|
+
this.alert.show();
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
AlertComponent.decorators = [
|
|
30
|
+
{ type: Component, args: [{
|
|
31
|
+
selector: 'lib-alert',
|
|
32
|
+
template: "<lib-modal *ngIf=\"alert\" [modal]=\"alert\"></lib-modal>\r\n",
|
|
33
|
+
styles: [".accordion{float:right;min-height:300px!important;padding:20px;position:relative}.accordion,.accordion>.loading{background-color:#fff;border-radius:var(--border-radius-base);width:100%}.accordion>.loading{height:100%;position:absolute;right:0;text-align:center;top:0;z-index:4}.accordion>.loading .text{font-weight:var(--font-bold);height:35px;line-height:35px;position:absolute;text-align:center;top:calc(50% - 20px);width:100%}::ng-deep .accordion>.loading .icon{font-size:20px!important;line-height:30px;margin-left:5px;position:relative;top:5px}.accordion>.title{font-size:16px;font-weight:var(--font-bold);height:30px;line-height:30px;text-align:center}.accordion .accordion-item,.accordion>.title{float:right;margin-bottom:10px;position:relative;width:100%}.accordion .accordion-item .header{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;float:right;position:relative;width:100%}.accordion .accordion-item .title{background-color:var(--base);border-radius:var(--border-radius-base);color:#fff;cursor:pointer;float:right;font-size:12px;height:30px;line-height:30px;text-align:center;width:100%}.accordion .accordion-item .title:hover{background-color:var(--base-dark)}.accordion .accordion-item .header .icon{right:0}.accordion .accordion-item .header .delete-icon,.accordion .accordion-item .header .icon{color:#fff;cursor:pointer;font-size:18px;height:30px;line-height:29px;position:absolute;text-align:center;top:0;width:30px}.accordion .accordion-item .header .delete-icon{left:0}.accordion .accordion-item .content{display:none;float:right;padding:10px;width:100%}.accordion .accordion-item-con:first-of-type .content{display:block}"]
|
|
34
|
+
},] }
|
|
35
|
+
];
|
|
36
|
+
AlertComponent.ctorParameters = () => [
|
|
37
|
+
{ type: PsToolkitUiConfigService }
|
|
38
|
+
];
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1BzVG9vbGtpdC9VSS9wcm9qZWN0cy9wcy10b29sa2l0LXVpL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDbkQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFPdkUsTUFBTSxPQUFPLGNBQWM7SUFHekIsWUFBbUIsTUFBZ0M7UUFBaEMsV0FBTSxHQUFOLE1BQU0sQ0FBMEI7UUFDakQsTUFBTSxJQUFJLEdBQUcsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0QsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFXLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBVSxFQUFFO1lBQzFDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3QyxDQUFDLENBQUM7UUFDRixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFDdkgsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHO1lBQ3ZCLElBQUksQ0FBQyxVQUFVO1NBQ2hCLENBQUM7SUFDSixDQUFDO0lBQ0QsSUFBSSxDQUFDLENBQVMsRUFBRSxNQUFrQjtRQUNoQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ3ZCLE1BQU0sRUFBRSxDQUFDO1FBQ1gsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNwQixDQUFDOzs7WUExQkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxXQUFXO2dCQUNyQix5RUFBcUM7O2FBRXRDOzs7WUFOTyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Rm9ybUNsYXNzLCBJbnB1dENsYXNzfSBmcm9tICcuLi8uLi9jbGFzc2VzL2Zvcm0uY2xhc3MnO1xyXG5pbXBvcnQge01vZGFsQ2xhc3N9IGZyb20gJy4uLy4uL2NsYXNzZXMvbW9kYWwuY2xhc3MnO1xyXG5pbXBvcnQge0lucHV0VHlwZX0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9lbnVtLmNsYXNzJztcclxuaW1wb3J0IHtMYW5nQ2xhc3N9IGZyb20gJy4uLy4uL2NsYXNzZXMvbGFuZy5jbGFzcyc7XHJcbmltcG9ydCB7UHNUb29sa2l0VWlDb25maWdTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25maWcuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1hbGVydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FsZXJ0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hbGVydC5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEFsZXJ0Q29tcG9uZW50IHtcclxuICBhbGVydDogTW9kYWxDbGFzcztcclxuICBhbGVydExhYmVsOiBJbnB1dENsYXNzO1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjb25maWc6IFBzVG9vbGtpdFVpQ29uZmlnU2VydmljZSl7XHJcbiAgICBjb25zdCBsYW5nID0gbmV3IExhbmdDbGFzcyhjb25maWcuY3VycmVudExhbmcsIGNvbmZpZy5zdHJpbmdzKTtcclxuICAgIGNvbnN0IGwgPSAoa2V5OiBzdHJpbmcsIHYgPSBudWxsKTogc3RyaW5nID0+IHtcclxuICAgICAgcmV0dXJuIGxhbmcuZ2V0KCdQdWJsaWMnLCAnQWxlcnQnLCBrZXksIHYpO1xyXG4gICAgfTtcclxuICAgIHRoaXMuYWxlcnQgPSBuZXcgTW9kYWxDbGFzcyhjb25maWcuZW52aXJvbm1lbnQsIGwsICdBbGVydCcpO1xyXG4gICAgdGhpcy5hbGVydC5mb3JtID0gbmV3IEZvcm1DbGFzcyhjb25maWcuZW52aXJvbm1lbnQsIGwsICdBbGVydCcpO1xyXG4gICAgdGhpcy5hbGVydExhYmVsID0gbmV3IElucHV0Q2xhc3MoY29uZmlnLmVudmlyb25tZW50LCBsLCAnQWxlcnQnLCBudWxsLCBJbnB1dFR5cGUuTGFiZWwsICdmLXMtMTYgcC1oLTIwIHAtdC0xMCBsLWgtMzAnKTtcclxuICAgIHRoaXMuYWxlcnQuZm9ybS5pbnB1dHMgPSBbXHJcbiAgICAgIHRoaXMuYWxlcnRMYWJlbFxyXG4gICAgXTtcclxuICB9XHJcbiAgc2hvdyhsOiBzdHJpbmcsIGFjY2VwdDogKCkgPT4gdm9pZCk6IHZvaWR7XHJcbiAgICB0aGlzLmFsZXJ0TGFiZWwudmFsdWUgPSBsO1xyXG4gICAgdGhpcy5hbGVydC5vbkhpZGUgPSAoKSA9PiB7XHJcbiAgICAgIGFjY2VwdCgpO1xyXG4gICAgfTtcclxuICAgIHRoaXMuYWxlcnQuc2hvdygpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { PermissionClass } from '../classes/permission.class';
|
|
3
|
+
import { PermissionTypeEnum } from '../classes/enum.class';
|
|
4
|
+
export class BaseComponent {
|
|
5
|
+
constructor(app, c, a = null) {
|
|
6
|
+
this.app = app;
|
|
7
|
+
this.c = c;
|
|
8
|
+
this.a = a;
|
|
9
|
+
this.setL();
|
|
10
|
+
this.permissions = this.getPermission(this.c, this.a);
|
|
11
|
+
if (this.permissions) {
|
|
12
|
+
this.permissions.Area = app.area;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
setL() {
|
|
16
|
+
this.l = (key, v = null) => {
|
|
17
|
+
return this.app.getL(`${this.c}${(this.a ? `.${this.a}` : '')}`, key, v);
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
getPermission(c, a = null) {
|
|
21
|
+
const p = this.app.currentData.permissions.filter(per => per.Area === this.app.area && per.Controller === c && per.Action === a &&
|
|
22
|
+
per.Type === PermissionTypeEnum.Item);
|
|
23
|
+
return p.length > 0 ? this.getPermissionClass(p[0]) : null;
|
|
24
|
+
}
|
|
25
|
+
getPermissionAccess(c, a = null) {
|
|
26
|
+
const p = this.app.currentData.permissions.filter(per => per.Area === this.app.area && per.Controller === c && per.Action === a &&
|
|
27
|
+
per.Type === PermissionTypeEnum.Access);
|
|
28
|
+
return p.length > 0 ? this.getPermissionClass(p[0]) : null;
|
|
29
|
+
}
|
|
30
|
+
getPermissionClass(p) {
|
|
31
|
+
return new PermissionClass(p.Name, p.Icon, p.Type, p.InputType, p.AccessType, p.InputAction, this.app.area, p.Controller, p.Action, p.Url, p.Multi, p.Condition, this.getPermissionAccessesClass(p.Id));
|
|
32
|
+
}
|
|
33
|
+
getPermissionAccessesClass(parentId) {
|
|
34
|
+
return this.app.currentData.permissions.filter(x => x.ParentId === parentId).map(x => this.getPermissionClass(x));
|
|
35
|
+
}
|
|
36
|
+
hasAccess(a) {
|
|
37
|
+
return this.permissions ? this.permissions.hasAccessByName(a) : false;
|
|
38
|
+
}
|
|
39
|
+
getAccess(a) {
|
|
40
|
+
return this.permissions ? this.permissions.getAccessByName(a) : null;
|
|
41
|
+
}
|
|
42
|
+
hasOption(a) {
|
|
43
|
+
return this.permissions ? this.permissions.hasAccessByName(a) : false;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
BaseComponent.decorators = [
|
|
47
|
+
{ type: Injectable }
|
|
48
|
+
];
|
|
49
|
+
BaseComponent.ctorParameters = () => [
|
|
50
|
+
{ type: undefined },
|
|
51
|
+
null,
|
|
52
|
+
null
|
|
53
|
+
];
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiRDovUHNUb29sa2l0L1VJL3Byb2plY3RzL3BzLXRvb2xraXQtdWkvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFHekQsTUFBTSxPQUFnQixhQUFhO0lBR2pDLFlBQTZCLEdBQVEsRUFBUyxDQUFDLEVBQVMsSUFBSSxJQUFJO1FBQW5DLFFBQUcsR0FBSCxHQUFHLENBQUs7UUFBUyxNQUFDLEdBQUQsQ0FBQyxDQUFBO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBTztRQUM5RCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDWixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEQsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFDO1lBQ25CLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7U0FDbEM7SUFDSCxDQUFDO0lBQ0QsSUFBSTtRQUNGLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFXLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBVSxFQUFFO1lBQ3pDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsR0FB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Q0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUN4RSxDQUFDOzs7WUF6Q0YsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7UGVybWlzc2lvbkNsYXNzfSBmcm9tICcuLi9jbGFzc2VzL3Blcm1pc3Npb24uY2xhc3MnO1xyXG5pbXBvcnQge1Blcm1pc3Npb25UeXBlRW51bX0gZnJvbSAnLi4vY2xhc3Nlcy9lbnVtLmNsYXNzJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDb21wb25lbnQge1xyXG4gIGw6IChrLCB2PykgPT4gc3RyaW5nO1xyXG4gIHBlcm1pc3Npb25zOiBQZXJtaXNzaW9uQ2xhc3M7XHJcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHB1YmxpYyBhcHA6IGFueSwgcHVibGljIGMsIHB1YmxpYyBhID0gbnVsbCl7XHJcbiAgICB0aGlzLnNldEwoKTtcclxuICAgIHRoaXMucGVybWlzc2lvbnMgPSB0aGlzLmdldFBlcm1pc3Npb24odGhpcy5jLCB0aGlzLmEpO1xyXG4gICAgaWYgKHRoaXMucGVybWlzc2lvbnMpe1xyXG4gICAgICB0aGlzLnBlcm1pc3Npb25zLkFyZWEgPSBhcHAuYXJlYTtcclxuICAgIH1cclxuICB9XHJcbiAgc2V0TCgpOiB2b2lke1xyXG4gICAgdGhpcy5sID0gKGtleTogc3RyaW5nLCB2ID0gbnVsbCk6IHN0cmluZyA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLmFwcC5nZXRMKGAke3RoaXMuY30keyh0aGlzLmEgPyBgLiR7dGhpcy5hfWAgOiAnJyl9YCwga2V5LCB2KTtcclxuICAgIH07XHJcbiAgfVxyXG4gIGdldFBlcm1pc3Npb24oYywgYSA9IG51bGwpOiBQZXJtaXNzaW9uQ2xhc3N7XHJcbiAgICBjb25zdCBwID0gdGhpcy5hcHAuY3VycmVudERhdGEucGVybWlzc2lvbnMuZmlsdGVyKHBlciA9PiBwZXIuQXJlYSA9PT0gdGhpcy5hcHAuYXJlYSAmJiBwZXIuQ29udHJvbGxlciA9PT0gYyAmJiBwZXIuQWN0aW9uID09PSBhICYmXHJcbiAgICAgIHBlci5UeXBlID09PSBQZXJtaXNzaW9uVHlwZUVudW0uSXRlbSk7XHJcbiAgICByZXR1cm4gcC5sZW5ndGggPiAwID8gdGhpcy5nZXRQZXJtaXNzaW9uQ2xhc3MocFswXSkgOiBudWxsO1xyXG4gIH1cclxuICBnZXRQZXJtaXNzaW9uQWNjZXNzKGMsIGEgPSBudWxsKTogUGVybWlzc2lvbkNsYXNze1xyXG4gICAgY29uc3QgcCA9IHRoaXMuYXBwLmN1cnJlbnREYXRhLnBlcm1pc3Npb25zLmZpbHRlcihwZXIgPT4gcGVyLkFyZWEgPT09IHRoaXMuYXBwLmFyZWEgJiYgcGVyLkNvbnRyb2xsZXIgPT09IGMgJiYgcGVyLkFjdGlvbiA9PT0gYSAmJlxyXG4gICAgICBwZXIuVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLkFjY2Vzcyk7XHJcbiAgICByZXR1cm4gcC5sZW5ndGggPiAwID8gdGhpcy5nZXRQZXJtaXNzaW9uQ2xhc3MocFswXSkgOiBudWxsO1xyXG4gIH1cclxuICBnZXRQZXJtaXNzaW9uQ2xhc3MocDogYW55KTogUGVybWlzc2lvbkNsYXNze1xyXG4gICAgcmV0dXJuIG5ldyBQZXJtaXNzaW9uQ2xhc3MocC5OYW1lLCBwLkljb24sIHAuVHlwZSwgcC5JbnB1dFR5cGUsIHAuQWNjZXNzVHlwZSwgcC5JbnB1dEFjdGlvbiwgdGhpcy5hcHAuYXJlYSwgcC5Db250cm9sbGVyLCBwLkFjdGlvbiwgcC5VcmwsXHJcbiAgICAgIHAuTXVsdGksIHAuQ29uZGl0aW9uLCB0aGlzLmdldFBlcm1pc3Npb25BY2Nlc3Nlc0NsYXNzKHAuSWQpKTtcclxuICB9XHJcbiAgZ2V0UGVybWlzc2lvbkFjY2Vzc2VzQ2xhc3MocGFyZW50SWQ6IHN0cmluZyk6IFBlcm1pc3Npb25DbGFzc1tde1xyXG4gICAgcmV0dXJuIHRoaXMuYXBwLmN1cnJlbnREYXRhLnBlcm1pc3Npb25zLmZpbHRlcih4ID0+IHguUGFyZW50SWQgPT09IHBhcmVudElkKS5tYXAoeCA9PiB0aGlzLmdldFBlcm1pc3Npb25DbGFzcyh4KSk7XHJcbiAgfVxyXG4gIGhhc0FjY2VzcyhhOiBzdHJpbmcpOiBib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMucGVybWlzc2lvbnMgPyB0aGlzLnBlcm1pc3Npb25zLmhhc0FjY2Vzc0J5TmFtZShhKSA6IGZhbHNlO1xyXG4gIH1cclxuICBnZXRBY2Nlc3MoYTogc3RyaW5nKTogUGVybWlzc2lvbkNsYXNze1xyXG4gICAgcmV0dXJuIHRoaXMucGVybWlzc2lvbnMgPyB0aGlzLnBlcm1pc3Npb25zLmdldEFjY2Vzc0J5TmFtZShhKSA6IG51bGw7XHJcbiAgfVxyXG4gIGhhc09wdGlvbihhOiBzdHJpbmcpOiBib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMucGVybWlzc2lvbnMgPyB0aGlzLnBlcm1pc3Npb25zLmhhc0FjY2Vzc0J5TmFtZShhKSA6IGZhbHNlO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { DayClass } from '../../classes/form.class';
|
|
3
|
+
import * as moment from 'jalali-moment';
|
|
4
|
+
import { PsToolkitUiConfigService } from '../../services/config.service';
|
|
5
|
+
import { LangClass } from '../../classes/lang.class';
|
|
6
|
+
export class CalendarComponent {
|
|
7
|
+
constructor(config) {
|
|
8
|
+
this.config = config;
|
|
9
|
+
this.state = 'day';
|
|
10
|
+
this.months = [];
|
|
11
|
+
this.previousDays = [];
|
|
12
|
+
this.nextDays = [];
|
|
13
|
+
this.days = [];
|
|
14
|
+
const lang = new LangClass(config.currentLang, config.strings);
|
|
15
|
+
this.l = (key, v = null) => {
|
|
16
|
+
return lang.get('Public', null, key, v);
|
|
17
|
+
};
|
|
18
|
+
this.months = [this.l('Month1'), this.l('Month2'), this.l('Month3'), this.l('Month4'), this.l('Month5'),
|
|
19
|
+
this.l('Month6'), this.l('Month7'), this.l('Month8'), this.l('Month9'), this.l('Month10'), this.l('Month11'), this.l('Month12')];
|
|
20
|
+
this.setActive(moment());
|
|
21
|
+
}
|
|
22
|
+
changeState(s) {
|
|
23
|
+
this.state = s;
|
|
24
|
+
}
|
|
25
|
+
getYears() {
|
|
26
|
+
const y = parseInt(this.active.format('jYYYY'), 10);
|
|
27
|
+
const sy = y - (y % 20);
|
|
28
|
+
return Array.from({ length: 20 }, (x, i) => sy + i);
|
|
29
|
+
}
|
|
30
|
+
getActiveMonth() {
|
|
31
|
+
return this.months[parseInt(this.active.format('jM'), 10) - 1];
|
|
32
|
+
}
|
|
33
|
+
add(c) {
|
|
34
|
+
this.active.add(c, this.state === 'day' ? 'month' : 'year');
|
|
35
|
+
this.setDate();
|
|
36
|
+
}
|
|
37
|
+
changeMonth(c) {
|
|
38
|
+
this.active = moment(this.active.format('jYYYY') + '/' + ('0' + c).slice(-2) + '/' + this.active.format('jDD HH:mm:ss'), 'jYYYY/jMM/jDD HH:mm:ss');
|
|
39
|
+
this.setDate();
|
|
40
|
+
this.changeState('day');
|
|
41
|
+
}
|
|
42
|
+
changeYear(c) {
|
|
43
|
+
this.active = moment(('000' + c).slice(-4) + '/' + this.active.format('jMM/jDD HH:mm:ss'), 'jYYYY/jMM/jDD HH:mm:ss');
|
|
44
|
+
this.setDate();
|
|
45
|
+
this.changeState('month');
|
|
46
|
+
}
|
|
47
|
+
setDate() {
|
|
48
|
+
const n = this.active.clone();
|
|
49
|
+
const countDayInMonth = n.daysInMonth();
|
|
50
|
+
const startWeek = parseInt(n.startOf('month').format('d'), 10);
|
|
51
|
+
const previousMonth = n.subtract(1, 'month');
|
|
52
|
+
const countDayInPreviousMonth = previousMonth.daysInMonth();
|
|
53
|
+
const nextMonth = n.add(2, 'month');
|
|
54
|
+
const previousDays = [];
|
|
55
|
+
const nextDays = [];
|
|
56
|
+
const days = [];
|
|
57
|
+
if (startWeek !== 6) {
|
|
58
|
+
for (let i = countDayInPreviousMonth - startWeek; i <= countDayInPreviousMonth; i++) {
|
|
59
|
+
previousDays.push(new DayClass(i, this.isToday(previousMonth, i), false, false));
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
for (let i = 1; i <= countDayInMonth; i++) {
|
|
63
|
+
days.push(new DayClass(i, this.isToday(this.active, i), false, true));
|
|
64
|
+
}
|
|
65
|
+
const end = (days.length + previousDays.length) % 7;
|
|
66
|
+
if (end !== 0) {
|
|
67
|
+
for (let i = 1; i <= 7 - end; i++) {
|
|
68
|
+
nextDays.push(new DayClass(i, this.isToday(nextMonth, i), false, false));
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
this.previousDays = previousDays;
|
|
72
|
+
this.nextDays = nextDays;
|
|
73
|
+
this.days = days;
|
|
74
|
+
}
|
|
75
|
+
isToday(m, d) {
|
|
76
|
+
const month = parseInt(m.format('jMM'), 10);
|
|
77
|
+
const year = parseInt(m.format('jYYYY'), 10);
|
|
78
|
+
return year === this.todayYear && month === this.todayMonth && d === this.todayDay;
|
|
79
|
+
}
|
|
80
|
+
setActive(m) {
|
|
81
|
+
this.active = m;
|
|
82
|
+
this.todayDay = parseInt(this.active.format('jDD'), 10);
|
|
83
|
+
this.todayMonth = parseInt(this.active.format('jMM'), 10);
|
|
84
|
+
this.todayYear = parseInt(this.active.format('jYYYY'), 10);
|
|
85
|
+
this.setDate();
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
CalendarComponent.decorators = [
|
|
89
|
+
{ type: Component, args: [{
|
|
90
|
+
selector: 'lib-calendar',
|
|
91
|
+
template: "<div id=\"Calendar\">\r\n <div class=\"header\">\r\n <i (click)=\"add(state === 'day' || state === 'month' ? -1 : -20)\" class=\"fas fa-angle-right previous-month\"></i>\r\n <div class=\"title\">\r\n <div (click)=\"state === 'day' && changeState('month')\" class=\"month header-item\">\r\n {{getActiveMonth()}}\r\n </div>\r\n <div (click)=\"(state === 'day' || state === 'month') && changeState('year')\" class=\"year header-item\">\r\n {{active.format('jYYYY')}}\r\n </div>\r\n </div>\r\n <i (click)=\"add(state === 'day' || state === 'month' ? 1 : 20)\" class=\"fas fa-angle-left next-month\"></i>\r\n </div>\r\n <div [style]=\"state === 'day' ? {} : {display: 'none'}\" class=\"days-con\">\r\n <div class=\"day-names underline\">\r\n <div class=\"item-con\"><div class=\"item\">\u0634</div></div>\r\n <div class=\"item-con\"><div class=\"item\">\u06CC</div></div>\r\n <div class=\"item-con\"><div class=\"item\">\u062F</div></div>\r\n <div class=\"item-con\"><div class=\"item\">\u0633</div></div>\r\n <div class=\"item-con\"><div class=\"item\">\u0686</div></div>\r\n <div class=\"item-con\"><div class=\"item\">\u067E</div></div>\r\n <div class=\"item-con\"><div class=\"item\">\u062C</div></div>\r\n </div>\r\n <div class=\"days\">\r\n <div [className]=\"'item-con not-in-month' + (d.today ? ' today' : '')\" *ngFor=\"let d of previousDays\"><div class=\"item\">{{d.day}}</div></div>\r\n <div [className]=\"'item-con' + (d.today ? ' today' : '') + (d.selected ? ' selected' : '')\" *ngFor=\"let d of days\"><div class=\"item\">{{d.day}}</div></div>\r\n <div [className]=\"'item-con not-in-month' + (d.today ? ' today' : '')\" *ngFor=\"let d of nextDays\"><div class=\"item\">{{d.day}}</div></div>\r\n </div>\r\n </div>\r\n <div [style]=\"state === 'month' ? {} : {display: 'none'}\" class=\"months-con\">\r\n <div [className]=\"(i + 1 == active.format('jM') ? 'selected ' : '') + 'month'\" (click)=\"changeMonth(i + 1)\" *ngFor=\"let m of months; let i = index\">{{m}}</div>\r\n </div>\r\n <div [style]=\"state === 'year' ? {} : {display: 'none'}\" class=\"years-con\">\r\n <div [className]=\"(y == active.format('jYYYY') ? 'selected ' : '') + 'year'\" (click)=\"changeYear(y)\" *ngFor=\"let y of getYears()\">{{y}}</div>\r\n </div>\r\n</div>\r\n",
|
|
92
|
+
styles: ["#Calendar{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-color:#fff;border-radius:var(--border-radius-base);box-shadow:0 1px 3px 0 rgba(0,0,0,.4);float:right;position:relative;width:100%;z-index:4}#Calendar>.title{font-weight:var(--font-bold);line-height:30px;text-align:center}#Calendar .days-con,#Calendar .header,#Calendar>.title{float:right;width:100%}#Calendar .header{background:var(--black-white)}#Calendar .header .next-month,#Calendar .header .previous-month{cursor:pointer;float:right;font-size:15px;height:30px;line-height:30px;text-align:center;width:30px}#Calendar .header .next-month:hover,#Calendar .header .previous-month:hover{background:var(--black-white)}#Calendar .header .title{float:right;font-size:12px;font-weight:var(--font-bold);height:30px;text-align:center;width:calc(100% - 60px)}#Calendar .header .header-item{background-color:#fff;border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);cursor:pointer;float:right;height:20px;line-height:20px;margin-right:5px;margin-top:5px;text-align:center}#Calendar .header .header-item:hover{background-color:var(--base-white)}#Calendar .header .header-item.year{width:calc(40% - 10px)}#Calendar .header .header-item.month{width:calc(60% - 10px)}#Calendar .days-con .day-names{float:right;font-size:12px;font-weight:var(--font-bold);position:relative;text-align:center;width:100%}#Calendar .days-con .day-names .item-con{float:right;padding-top:14.28571%;position:relative;width:14.28571%}#Calendar .days-con .day-names .item-con .item{align-items:center;display:flex;font-size:11px;height:100%;justify-content:center;position:absolute;right:0;top:0;width:100%}#Calendar .days-con .days{border-radius:var(--border-radius-base);float:right;font-size:12px;overflow:hidden;text-align:center;width:100%}#Calendar .days-con .days .item-con{cursor:pointer;float:right;padding-top:14.28571%;position:relative;width:14.28571%}#Calendar .days-con .days .item-con.not-in-month{cursor:default;opacity:.5}#Calendar .days-con .days .item-con:hover{background-color:var(--black-white)}#Calendar .days-con .days .item-con.not-in-month:hover{background-color:unset}#Calendar .days-con .days .item-con.today{background-color:var(--primary);color:#fff}#Calendar .days-con .days .item-con.today.not-in-month:hover{background-color:var(--black-white)}#Calendar .days-con .days .item-con .item{align-items:center;display:flex;font-size:11px;height:100%;justify-content:center;position:absolute;right:0;top:0;width:100%}#Calendar .months-con{float:right;height:325px;width:100%}#Calendar .months-con .month{cursor:pointer;float:right;font-size:13px;height:81.25px;line-height:81.25px;text-align:center;width:33.33333%}#Calendar .months-con .month.selected,#Calendar .months-con .month:hover{background-color:var(--black-white)}#Calendar .years-con{float:right;width:100%}#Calendar .years-con .year{cursor:pointer;float:right;font-size:13px;height:65px;line-height:65px;text-align:center;width:25%}#Calendar .years-con .year.selected,#Calendar .years-con .year:hover{background-color:var(--black-white)}"]
|
|
93
|
+
},] }
|
|
94
|
+
];
|
|
95
|
+
CalendarComponent.ctorParameters = () => [
|
|
96
|
+
{ type: PsToolkitUiConfigService }
|
|
97
|
+
];
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1BzVG9vbGtpdC9VSS9wcm9qZWN0cy9wcy10b29sa2l0LXVpL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2NhbGVuZGFyL2NhbGVuZGFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNsRCxPQUFPLEtBQUssTUFBTSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUN2RSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFPbkQsTUFBTSxPQUFPLGlCQUFpQjtJQVc1QixZQUFtQixNQUFnQztRQUFoQyxXQUFNLEdBQU4sTUFBTSxDQUEwQjtRQVZuRCxVQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ2QsV0FBTSxHQUFHLEVBQUUsQ0FBQztRQUVaLGlCQUFZLEdBQWUsRUFBRSxDQUFDO1FBQzlCLGFBQVEsR0FBZSxFQUFFLENBQUM7UUFDMUIsU0FBSSxHQUFlLEVBQUUsQ0FBQztRQU1wQixNQUFNLElBQUksR0FBRyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBVyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQVUsRUFBRTtZQUN6QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUMsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsSUFBSSxD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RyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7OztZQTVGRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGNBQWM7Z0JBQ3hCLGsxRUFBd0M7O2FBRXpDOzs7WUFQTyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7RGF5Q2xhc3N9IGZyb20gJy4uLy4uL2NsYXNzZXMvZm9ybS5jbGFzcyc7XHJcbmltcG9ydCAqIGFzIG1vbWVudCBmcm9tICdqYWxhbGktbW9tZW50JztcclxuaW1wb3J0IHtQc1Rvb2xraXRVaUNvbmZpZ1NlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NvbmZpZy5zZXJ2aWNlJztcclxuaW1wb3J0IHtMYW5nQ2xhc3N9IGZyb20gJy4uLy4uL2NsYXNzZXMvbGFuZy5jbGFzcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1jYWxlbmRhcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NhbGVuZGFyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jYWxlbmRhci5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENhbGVuZGFyQ29tcG9uZW50IHtcclxuICBzdGF0ZSA9ICdkYXknO1xyXG4gIG1vbnRocyA9IFtdO1xyXG4gIGFjdGl2ZTogbW9tZW50Lk1vbWVudDtcclxuICBwcmV2aW91c0RheXM6IERheUNsYXNzW10gPSBbXTtcclxuICBuZXh0RGF5czogRGF5Q2xhc3NbXSA9IFtdO1xyXG4gIGRheXM6IERheUNsYXNzW10gPSBbXTtcclxuICB0b2RheURheTogbnVtYmVyO1xyXG4gIHRvZGF5TW9udGg6IG51bWJlcjtcclxuICB0b2RheVllYXI6IG51bWJlcjtcclxuICBsOiAoaywgdj8pID0+IHN0cmluZztcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY29uZmlnOiBQc1Rvb2xraXRVaUNvbmZpZ1NlcnZpY2Upe1xyXG4gICAgY29uc3QgbGFuZyA9IG5ldyBMYW5nQ2xhc3MoY29uZmlnLmN1cnJlbnRMYW5nLCBjb25maWcuc3RyaW5ncyk7XHJcbiAgICB0aGlzLmwgPSAoa2V5OiBzdHJpbmcsIHYgPSBudWxsKTogc3RyaW5nID0+IHtcclxuICAgICAgcmV0dXJuIGxhbmcuZ2V0KCdQdWJsaWMnLCBudWxsLCBrZXksIHYpO1xyXG4gICAgfTtcclxuICAgIHRoaXMubW9udGhzID0gW3RoaXMubCgnTW9udGgxJyksIHRoaXMubCgnTW9udGgyJyksIHRoaXMubCgnTW9udGgzJyksIHRoaXMubCgnTW9udGg0JyksIHRoaXMubCgnTW9udGg1JyksXHJcbiAgICAgIHRoaXMubCgnTW9udGg2JyksIHRoaXMubCgnTW9udGg3JyksIHRoaXMubCgnTW9udGg4JyksIHRoaXMubCgnTW9udGg5JyksIHRoaXMubCgnTW9udGgxMCcpLCB0aGlzLmwoJ01vbnRoMTEnKSwgdGhpcy5sKCdNb250aDEyJyldO1xyXG4gICAgdGhpcy5zZXRBY3RpdmUobW9tZW50KCkpO1xyXG4gIH1cclxuXHJcbiAgY2hhbmdlU3RhdGUoczogc3RyaW5nKTogdm9pZHtcclxuICAgIHRoaXMuc3RhdGUgPSBzO1xyXG4gIH1cclxuICBnZXRZZWFycygpOiBudW1iZXJbXXtcclxuICAgIGNvbnN0IHkgPSBwYXJzZUludCh0aGlzLmFjdGl2ZS5mb3JtYXQoJ2pZWVlZJyksIDEwKTtcclxuICAgIGNvbnN0IHN5ID0geSAtICh5ICUgMjApO1xyXG4gICAgcmV0dXJuIEFycmF5LmZyb20oe2xlbmd0aDogMjB9LCAoeCwgaSkgPT4gc3kgKyBpKTtcclxuICB9XHJcbiAgZ2V0QWN0aXZlTW9udGgoKTogc3RyaW5ne1xyXG4gICAgcmV0dXJuIHRoaXMubW9udGhzW3BhcnNlSW50KHRoaXMuYWN0aXZlLmZvcm1hdCgnak0nKSwgMTApIC0gMV07XHJcbiAgfVxyXG4gIGFkZChjOiBudW1iZXIpOiB2b2lke1xyXG4gICAgdGhpcy5hY3RpdmUuYWRkKGMsIHRoaXMuc3RhdGUgPT09ICdkYXknID8gJ21vbnRoJyA6ICd5ZWFyJyk7XHJcbiAgICB0aGlzLnNldERhdGUoKTtcclxuICB9XHJcbiAgY2hhbmdlTW9udGgoYzogbnVtYmVyKTogdm9pZHtcclxuICAgIHRoaXMuYWN0aXZlID0gbW9tZW50KHRoaXMuYWN0aXZlLmZvcm1hdCgnallZWVknKSArICcvJyArICgnMCcgKyBjKS5zbGljZSgtMikgKyAnLycgKyB0aGlzLmFjdGl2ZS5mb3JtYXQoJ2pERCBISDptbTpzcycpLCAnallZWVkvak1NL2pERCBISDptbTpzcycpO1xyXG4gICAgdGhpcy5zZXREYXRlKCk7XHJcbiAgICB0aGlzLmNoYW5nZVN0YXRlKCdkYXknKTtcclxuICB9XHJcbiAgY2hhbmdlWWVhcihjOiBudW1iZXIpOiB2b2lke1xyXG4gICAgdGhpcy5hY3RpdmUgPSBtb21lbnQoKCcwMDAnICsgYykuc2xpY2UoLTQpICsgJy8nICsgdGhpcy5hY3RpdmUuZm9ybWF0KCdqTU0vakREIEhIOm1tOnNzJyksICdqWVlZWS9qTU0vakREIEhIOm1tOnNzJyk7XHJcbiAgICB0aGlzLnNldERhdGUoKTtcclxuICAgIHRoaXMuY2hhbmdlU3RhdGUoJ21vbnRoJyk7XHJcbiAgfVxyXG5cclxuICBzZXREYXRlKCk6IHZvaWR7XHJcbiAgICBjb25zdCBuID0gdGhpcy5hY3RpdmUuY2xvbmUoKTtcclxuICAgIGNvbnN0IGNvdW50RGF5SW5Nb250aCA9IG4uZGF5c0luTW9udGgoKTtcclxuICAgIGNvbnN0IHN0YXJ0V2VlayA9IHBhcnNlSW50KG4uc3RhcnRPZignbW9udGgnKS5mb3JtYXQoJ2QnKSwgMTApO1xyXG4gICAgY29uc3QgcHJldmlvdXNNb250aCA9IG4uc3VidHJhY3QoMSwgJ21vbnRoJyk7XHJcbiAgICBjb25zdCBjb3VudERheUluUHJldmlvdXNNb250aCA9IHByZXZpb3VzTW9udGguZGF5c0luTW9udGgoKTtcclxuICAgIGNvbnN0IG5leHRNb250aCA9IG4uYWRkKDIsICdtb250aCcpO1xyXG4gICAgY29uc3QgcHJldmlvdXNEYXlzOiBEYXlDbGFzc1tdID0gW107XHJcbiAgICBjb25zdCBuZXh0RGF5cyA9IFtdO1xyXG4gICAgY29uc3QgZGF5cyA9IFtdO1xyXG4gICAgaWYgKHN0YXJ0V2VlayAhPT0gNil7XHJcbiAgICAgIGZvciAobGV0IGkgPSBjb3VudERheUluUHJldmlvdXNNb250aCAtIHN0YXJ0V2VlazsgaSA8PSBjb3VudERheUluUHJldmlvdXNNb250aDsgaSsrKXtcclxuICAgICAgICBwcmV2aW91c0RheXMucHVzaChuZXcgRGF5Q2xhc3MoaSwgdGhpcy5pc1RvZGF5KHByZXZpb3VzTW9udGgsIGkpLCBmYWxzZSwgZmFsc2UpKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZm9yIChsZXQgaSA9IDE7IGkgPD0gY291bnREYXlJbk1vbnRoOyBpKyspe1xyXG4gICAgICBkYXlzLnB1c2gobmV3IERheUNsYXNzKGksIHRoaXMuaXNUb2RheSh0aGlzLmFjdGl2ZSwgaSksIGZhbHNlLCB0cnVlKSk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBlbmQgPSAoZGF5cy5sZW5ndGggKyBwcmV2aW91c0RheXMubGVuZ3RoKSAlIDc7XHJcbiAgICBpZiAoZW5kICE9PSAwKXtcclxuICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPD0gNyAtIGVuZDsgaSsrKXtcclxuICAgICAgICBuZXh0RGF5cy5wdXNoKG5ldyBEYXlDbGFzcyhpLCB0aGlzLmlzVG9kYXkobmV4dE1vbnRoLCBpKSwgZmFsc2UsIGZhbHNlKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMucHJldmlvdXNEYXlzID0gcHJldmlvdXNEYXlzO1xyXG4gICAgdGhpcy5uZXh0RGF5cyA9IG5leHREYXlzO1xyXG4gICAgdGhpcy5kYXlzID0gZGF5cztcclxuICB9XHJcblxyXG4gIGlzVG9kYXkobTogbW9tZW50Lk1vbWVudCwgZDogbnVtYmVyKTogYm9vbGVhbntcclxuICAgIGNvbnN0IG1vbnRoID0gcGFyc2VJbnQobS5mb3JtYXQoJ2pNTScpLCAxMCk7XHJcbiAgICBjb25zdCB5ZWFyID0gcGFyc2VJbnQobS5mb3JtYXQoJ2pZWVlZJyksIDEwKTtcclxuICAgIHJldHVybiB5ZWFyID09PSB0aGlzLnRvZGF5WWVhciAmJiBtb250aCA9PT0gdGhpcy50b2RheU1vbnRoICYmIGQgPT09IHRoaXMudG9kYXlEYXk7XHJcbiAgfVxyXG4gIHNldEFjdGl2ZShtKTogdm9pZHtcclxuICAgIHRoaXMuYWN0aXZlID0gbTtcclxuICAgIHRoaXMudG9kYXlEYXkgPSBwYXJzZUludCh0aGlzLmFjdGl2ZS5mb3JtYXQoJ2pERCcpLCAxMCk7XHJcbiAgICB0aGlzLnRvZGF5TW9udGggPSBwYXJzZUludCh0aGlzLmFjdGl2ZS5mb3JtYXQoJ2pNTScpLCAxMCk7XHJcbiAgICB0aGlzLnRvZGF5WWVhciA9IHBhcnNlSW50KHRoaXMuYWN0aXZlLmZvcm1hdCgnallZWVknKSwgMTApO1xyXG4gICAgdGhpcy5zZXREYXRlKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
export class ChartComponent {
|
|
3
|
+
constructor() {
|
|
4
|
+
}
|
|
5
|
+
}
|
|
6
|
+
ChartComponent.decorators = [
|
|
7
|
+
{ type: Component, args: [{
|
|
8
|
+
selector: 'lib-chart',
|
|
9
|
+
template: "<div class=\"chart-con\" [style]=\"chart.style\">\r\n <div *ngIf=\"chart.loading\" class=\"loading\">\r\n <div class=\"text\" [innerHTML]=\"chart.l('LoadingTable', 'Processing')\"></div>\r\n </div>\r\n <div *ngIf=\"chart.empty\" class=\"loading\">\r\n <div class=\"text\"><i class=\"fad fa-empty-set icon\"></i>{{ chart.l(\"EmptyData\") }}</div>\r\n </div>\r\n <div style=\"height: 100%; width: 100%\" [id]=\"this.chart.name + 'Chart'\"></div>\r\n</div>\r\n",
|
|
10
|
+
styles: [".chart-con{direction:ltr;float:right;min-height:200px;position:relative;width:100%}.chart-con .loading{background-color:#fff;height:100%;position:absolute;right:0;top:0;width:100%;z-index:9}.chart-con .loading .text{direction:rtl;font-weight:var(--font-bold);height:40px;line-height:40px;position:absolute;text-align:center;top:calc(50% - 20px);width:100%}"]
|
|
11
|
+
},] }
|
|
12
|
+
];
|
|
13
|
+
ChartComponent.ctorParameters = () => [];
|
|
14
|
+
ChartComponent.propDecorators = {
|
|
15
|
+
chart: [{ type: Input }]
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1BzVG9vbGtpdC9VSS9wcm9qZWN0cy9wcy10b29sa2l0LXVpL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2NoYXJ0L2NoYXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQVEvQyxNQUFNLE9BQU8sY0FBYztJQUd6QjtJQUNBLENBQUM7OztZQVRGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsV0FBVztnQkFDckIsZ2VBQXFDOzthQUV0Qzs7OztvQkFFRSxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDaGFydENsYXNzfSBmcm9tICcuLi8uLi9jbGFzc2VzL2NoYXJ0LmNsYXNzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWNoYXJ0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY2hhcnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NoYXJ0LmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hhcnRDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpXHJcbiAgY2hhcnQ6IENoYXJ0Q2xhc3M7XHJcbiAgY29uc3RydWN0b3IoKXtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Component, ViewChild } from '@angular/core';
|
|
2
|
+
import * as moment from 'jalali-moment';
|
|
3
|
+
export class ClockComponent {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.active = moment();
|
|
6
|
+
}
|
|
7
|
+
ngOnInit() {
|
|
8
|
+
this.clockInterval = setInterval(() => {
|
|
9
|
+
this.clockUpdate();
|
|
10
|
+
}, 1000);
|
|
11
|
+
}
|
|
12
|
+
ngOnDestroy() {
|
|
13
|
+
clearInterval(this.clockInterval);
|
|
14
|
+
}
|
|
15
|
+
clockUpdate() {
|
|
16
|
+
this.active = this.active.add(1, 'second');
|
|
17
|
+
document.getElementById('hour').style.transform = 'rotate(' + (this.active.get('hour') * 30 + (Math.floor(this.active.get('minute') / 12) * 6)) + 'deg)';
|
|
18
|
+
document.getElementById('minute').style.transform = 'rotate(' + (this.active.get('minute') * 6) + 'deg)';
|
|
19
|
+
document.getElementById('second').style.transform = 'rotate(' + (this.active.get('second') * 6) + 'deg)';
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
ClockComponent.decorators = [
|
|
23
|
+
{ type: Component, args: [{
|
|
24
|
+
selector: 'lib-clock',
|
|
25
|
+
template: "<div id=\"ClockCon\">\r\n <div id=\"clock\">\r\n <b></b>\r\n <span></span>\r\n <span></span>\r\n <i id=\"hour\"></i>\r\n <i id=\"minute\"></i>\r\n <i id=\"second\"></i>\r\n </div>\r\n</div>\r\n",
|
|
26
|
+
styles: ["#ClockCon{float:right}#ClockCon,#ClockCon #clock{height:10em;position:relative;width:10em}#ClockCon #clock{background-color:#fff;border:.0625em solid var(--black-white);border-radius:50%;box-shadow:inset .125em .25em .5em var(--black-white),-.25em -.5em .5em var(--black-white),0 0 .0625em .5em var(--black-white),0 0 .0625em .5625em var(--black-white),.125em .25em .5em .5em var(--black-white);line-height:1.5em;transform:scale(.9)}#ClockCon #clock *,#ClockCon #clock :after,#ClockCon #clock :before{background-clip:padding-box;box-sizing:border-box}#ClockCon #clock:after,#ClockCon #clock:before,#ClockCon #clock b:after,#ClockCon #clock b:before{position:absolute;text-align:center;width:1.5em}#ClockCon #clock b{position:absolute;top:4.25em;width:100%}#ClockCon #clock:after,#ClockCon #clock:before{left:4.25em}#ClockCon #clock:before{content:\"12\";top:0}#ClockCon #clock:after{bottom:0;content:\"6\"}#ClockCon #clock b:before{content:\"9\";left:0}#ClockCon #clock b:after{content:\"3\";right:0}#ClockCon #clock span{height:100%;left:4.9375em;position:absolute;top:0;width:.125em}#ClockCon #clock span+span{transform:rotate(90deg)}#ClockCon #clock i,#ClockCon #clock span:after,#ClockCon #clock span:before{height:9em;left:0;position:absolute;top:.5em;width:100%}#ClockCon #clock span:after,#ClockCon #clock span:before{border-color:#000;border-style:solid;border-width:.5em 0;content:\"\";transform:rotate(30deg)}#ClockCon #clock span:after{transform:rotate(60deg)}#ClockCon #clock i{background-color:#000;border:solid transparent;border-radius:40%;border-width:0 0 3em;left:4.85em;width:.3em;z-index:2}#ClockCon #clock i:first-of-type{border-width:1.5em 0 3em}#ClockCon #clock i:last-of-type{background-color:var(--primary)}#ClockCon #clock i:last-of-type:after,#ClockCon #clock i:last-of-type:before{border-radius:50%;content:\"\";position:absolute}#ClockCon #clock i:last-of-type:before{background:#000;height:1em;left:-.375em;top:4em;width:1em}#ClockCon #clock i:last-of-type:after{background:#abc;height:.5em;left:-.125em;top:4.25em;width:.5em}"]
|
|
27
|
+
},] }
|
|
28
|
+
];
|
|
29
|
+
ClockComponent.ctorParameters = () => [];
|
|
30
|
+
ClockComponent.propDecorators = {
|
|
31
|
+
clock: [{ type: ViewChild, args: ['clock',] }]
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1BzVG9vbGtpdC9VSS9wcm9qZWN0cy9wcy10b29sa2l0LXVpL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2Nsb2NrL2Nsb2NrLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUF3QyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFPeEMsTUFBTSxPQUFPLGNBQWM7SUFJekI7UUFDRSxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFDRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUMsR0FBRyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNyQixDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDWCxDQUFDO0lBQ0QsV0FBVztRQUNULGFBQWEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUMzQyxRQUFRLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsU0FBUyxHQUFHLENBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQ2hGLEdBQUcsTUFBTSxDQUFDO1FBQ1gsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLFNBQVMsR0FBRyxDQUM5RCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQzlCLEdBQUcsTUFBTSxDQUFDO1FBQ1gsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLFNBQVMsR0FBRyxDQUM5RCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQzlCLEdBQUcsTUFBTSxDQUFDO0lBQ2IsQ0FBQzs7O1lBaENGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsV0FBVztnQkFDckIsaU9BQXFDOzthQUV0Qzs7OztvQkFHRSxTQUFTLFNBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCAqIGFzIG1vbWVudCBmcm9tICdqYWxhbGktbW9tZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWNsb2NrJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY2xvY2suY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Nsb2NrLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2xvY2tDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveXtcclxuICBjbG9ja0ludGVydmFsO1xyXG4gIEBWaWV3Q2hpbGQoJ2Nsb2NrJykgY2xvY2s6IEVsZW1lbnRSZWY7XHJcbiAgYWN0aXZlOiBtb21lbnQuTW9tZW50O1xyXG4gIGNvbnN0cnVjdG9yKCl7XHJcbiAgICB0aGlzLmFjdGl2ZSA9IG1vbWVudCgpO1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lke1xyXG4gICAgdGhpcy5jbG9ja0ludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gICAgICB0aGlzLmNsb2NrVXBkYXRlKCk7XHJcbiAgICB9LCAxMDAwKTtcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZHtcclxuICAgIGNsZWFySW50ZXJ2YWwodGhpcy5jbG9ja0ludGVydmFsKTtcclxuICB9XHJcblxyXG4gIGNsb2NrVXBkYXRlKCk6IHZvaWR7XHJcbiAgICB0aGlzLmFjdGl2ZSA9IHRoaXMuYWN0aXZlLmFkZCgxLCAnc2Vjb25kJyk7XHJcbiAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaG91cicpLnN0eWxlLnRyYW5zZm9ybSA9ICdyb3RhdGUoJyArIChcclxuICAgICAgdGhpcy5hY3RpdmUuZ2V0KCdob3VyJykgKiAzMCArIChNYXRoLmZsb29yKHRoaXMuYWN0aXZlLmdldCgnbWludXRlJykgLyAxMikgKiA2KVxyXG4gICAgKSArICdkZWcpJztcclxuICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtaW51dGUnKS5zdHlsZS50cmFuc2Zvcm0gPSAncm90YXRlKCcgKyAoXHJcbiAgICAgIHRoaXMuYWN0aXZlLmdldCgnbWludXRlJykgKiA2XHJcbiAgICApICsgJ2RlZyknO1xyXG4gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NlY29uZCcpLnN0eWxlLnRyYW5zZm9ybSA9ICdyb3RhdGUoJyArIChcclxuICAgICAgdGhpcy5hY3RpdmUuZ2V0KCdzZWNvbmQnKSAqIDZcclxuICAgICkgKyAnZGVnKSc7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { FormClass, InputClass } from '../../classes/form.class';
|
|
3
|
+
import { ModalClass } from '../../classes/modal.class';
|
|
4
|
+
import { InputType } from '../../classes/enum.class';
|
|
5
|
+
import { PsToolkitUiConfigService } from '../../services/config.service';
|
|
6
|
+
import { LangClass } from '../../classes/lang.class';
|
|
7
|
+
export class ConfirmComponent {
|
|
8
|
+
constructor(config) {
|
|
9
|
+
this.config = config;
|
|
10
|
+
const lang = new LangClass(config.currentLang, config.strings);
|
|
11
|
+
this.l = (key, v = null) => {
|
|
12
|
+
return lang.get('Public', 'Confirm', key, v);
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
ngOnInit() {
|
|
16
|
+
this.confirm = new ModalClass(this.config.environment, this.l, (this.tableId ? this.tableId : '') + 'Confirm');
|
|
17
|
+
this.confirm.form = new FormClass(this.config.environment, this.l, 'Confirm');
|
|
18
|
+
this.confirmLabel = new InputClass(this.config.environment, this.l, 'Confirm', null, InputType.Label, 'f-s-16 p-h-20 p-t-10 l-h-30', 'Confirm');
|
|
19
|
+
this.confirm.form.inputs = [
|
|
20
|
+
this.confirmLabel,
|
|
21
|
+
];
|
|
22
|
+
this.confirm.form.addButtons('Accept', 'blue', false);
|
|
23
|
+
}
|
|
24
|
+
show(l, url, data, accept) {
|
|
25
|
+
this.confirmLabel.value = l;
|
|
26
|
+
this.confirm.form.url = url;
|
|
27
|
+
this.confirm.form.data = () => {
|
|
28
|
+
return data;
|
|
29
|
+
};
|
|
30
|
+
this.confirm.form.onSuccess = (result) => {
|
|
31
|
+
this.confirm.hide();
|
|
32
|
+
accept(result);
|
|
33
|
+
};
|
|
34
|
+
this.confirm.show();
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
ConfirmComponent.decorators = [
|
|
38
|
+
{ type: Component, args: [{
|
|
39
|
+
selector: 'lib-confirm',
|
|
40
|
+
template: "<lib-modal *ngIf=\"confirm\" [modal]=\"confirm\"></lib-modal>\r\n",
|
|
41
|
+
styles: [".accordion{float:right;min-height:300px!important;padding:20px;position:relative}.accordion,.accordion>.loading{background-color:#fff;border-radius:var(--border-radius-base);width:100%}.accordion>.loading{height:100%;position:absolute;right:0;text-align:center;top:0;z-index:4}.accordion>.loading .text{font-weight:var(--font-bold);height:35px;line-height:35px;position:absolute;text-align:center;top:calc(50% - 20px);width:100%}::ng-deep .accordion>.loading .icon{font-size:20px!important;line-height:30px;margin-left:5px;position:relative;top:5px}.accordion>.title{font-size:16px;font-weight:var(--font-bold);height:30px;line-height:30px;text-align:center}.accordion .accordion-item,.accordion>.title{float:right;margin-bottom:10px;position:relative;width:100%}.accordion .accordion-item .header{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;float:right;position:relative;width:100%}.accordion .accordion-item .title{background-color:var(--base);border-radius:var(--border-radius-base);color:#fff;cursor:pointer;float:right;font-size:12px;height:30px;line-height:30px;text-align:center;width:100%}.accordion .accordion-item .title:hover{background-color:var(--base-dark)}.accordion .accordion-item .header .icon{right:0}.accordion .accordion-item .header .delete-icon,.accordion .accordion-item .header .icon{color:#fff;cursor:pointer;font-size:18px;height:30px;line-height:29px;position:absolute;text-align:center;top:0;width:30px}.accordion .accordion-item .header .delete-icon{left:0}.accordion .accordion-item .content{display:none;float:right;padding:10px;width:100%}.accordion .accordion-item-con:first-of-type .content{display:block}"]
|
|
42
|
+
},] }
|
|
43
|
+
];
|
|
44
|
+
ConfirmComponent.ctorParameters = () => [
|
|
45
|
+
{ type: PsToolkitUiConfigService }
|
|
46
|
+
];
|
|
47
|
+
ConfirmComponent.propDecorators = {
|
|
48
|
+
tableId: [{ type: Input }]
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiRDovUHNUb29sa2l0L1VJL3Byb2plY3RzL3BzLXRvb2xraXQtdWkvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvY29uZmlybS9jb25maXJtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDbkQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDdkUsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBT25ELE1BQU0sT0FBTyxnQkFBZ0I7SUFNM0IsWUFBbUIsTUFBZ0M7UUFBaEMsV0FBTSxHQUFOLE1BQU0sQ0FBMEI7UUFDakQsTUFBTSxJQUFJLEdBQUcsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0QsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQVcsRUFBRSxDQUFDLEdBQUcsSUFBSSxFQUFVLEVBQUU7WUFDekMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9DLENBQUMsQ0FBQztJQUNKLENBQUM7SUFDRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7UUFDL0csSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUM5RSxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLDZCQUE2QixFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ2hKLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRztZQUN6QixJQUFJLENBQUMsWUFBWTtTQUNsQixDQUFDO1FBQ0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELElBQUksQ0FBQyxDQUFTLEVBQUUsR0FBVyxFQUFFLElBQUksRUFBRSxNQUE2QjtRQUM5RCxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUM1QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxFQUFFO1lBQzVCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDdkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNwQixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakIsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDOzs7WUF0Q0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxhQUFhO2dCQUN2Qiw2RUFBdUM7O2FBRXhDOzs7WUFQTyx3QkFBd0I7OztzQkFTN0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtGb3JtQ2xhc3MsIElucHV0Q2xhc3N9IGZyb20gJy4uLy4uL2NsYXNzZXMvZm9ybS5jbGFzcyc7XHJcbmltcG9ydCB7TW9kYWxDbGFzc30gZnJvbSAnLi4vLi4vY2xhc3Nlcy9tb2RhbC5jbGFzcyc7XHJcbmltcG9ydCB7SW5wdXRUeXBlfSBmcm9tICcuLi8uLi9jbGFzc2VzL2VudW0uY2xhc3MnO1xyXG5pbXBvcnQge1BzVG9vbGtpdFVpQ29uZmlnU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQge0xhbmdDbGFzc30gZnJvbSAnLi4vLi4vY2xhc3Nlcy9sYW5nLmNsYXNzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWNvbmZpcm0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb25maXJtLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb25maXJtLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29uZmlybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdHtcclxuICBASW5wdXQoKVxyXG4gIHRhYmxlSWQ6IHN0cmluZztcclxuICBsOiAoaywgdj8pID0+IHN0cmluZztcclxuICBjb25maXJtOiBNb2RhbENsYXNzO1xyXG4gIGNvbmZpcm1MYWJlbDogSW5wdXRDbGFzcztcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY29uZmlnOiBQc1Rvb2xraXRVaUNvbmZpZ1NlcnZpY2Upe1xyXG4gICAgY29uc3QgbGFuZyA9IG5ldyBMYW5nQ2xhc3MoY29uZmlnLmN1cnJlbnRMYW5nLCBjb25maWcuc3RyaW5ncyk7XHJcbiAgICB0aGlzLmwgPSAoa2V5OiBzdHJpbmcsIHYgPSBudWxsKTogc3RyaW5nID0+IHtcclxuICAgICAgcmV0dXJuIGxhbmcuZ2V0KCdQdWJsaWMnLCAnQ29uZmlybScsIGtleSwgdik7XHJcbiAgICB9O1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29uZmlybSA9IG5ldyBNb2RhbENsYXNzKHRoaXMuY29uZmlnLmVudmlyb25tZW50LCB0aGlzLmwsICh0aGlzLnRhYmxlSWQgPyB0aGlzLnRhYmxlSWQgOiAnJykgKyAnQ29uZmlybScpO1xyXG4gICAgdGhpcy5jb25maXJtLmZvcm0gPSBuZXcgRm9ybUNsYXNzKHRoaXMuY29uZmlnLmVudmlyb25tZW50LCB0aGlzLmwsICdDb25maXJtJyk7XHJcbiAgICB0aGlzLmNvbmZpcm1MYWJlbCA9IG5ldyBJbnB1dENsYXNzKHRoaXMuY29uZmlnLmVudmlyb25tZW50LCB0aGlzLmwsICdDb25maXJtJywgbnVsbCwgSW5wdXRUeXBlLkxhYmVsLCAnZi1zLTE2IHAtaC0yMCBwLXQtMTAgbC1oLTMwJywgJ0NvbmZpcm0nKTtcclxuICAgIHRoaXMuY29uZmlybS5mb3JtLmlucHV0cyA9IFtcclxuICAgICAgdGhpcy5jb25maXJtTGFiZWwsXHJcbiAgICBdO1xyXG4gICAgdGhpcy5jb25maXJtLmZvcm0uYWRkQnV0dG9ucygnQWNjZXB0JywgJ2JsdWUnLCBmYWxzZSk7XHJcbiAgfVxyXG5cclxuICBzaG93KGw6IHN0cmluZywgdXJsOiBzdHJpbmcsIGRhdGEsIGFjY2VwdDogKHJlc3VsdDogYW55KSA9PiB2b2lkKTogdm9pZHtcclxuICAgIHRoaXMuY29uZmlybUxhYmVsLnZhbHVlID0gbDtcclxuICAgIHRoaXMuY29uZmlybS5mb3JtLnVybCA9IHVybDtcclxuICAgIHRoaXMuY29uZmlybS5mb3JtLmRhdGEgPSAoKSA9PiB7XHJcbiAgICAgIHJldHVybiBkYXRhO1xyXG4gICAgfTtcclxuICAgIHRoaXMuY29uZmlybS5mb3JtLm9uU3VjY2VzcyA9IChyZXN1bHQpID0+IHtcclxuICAgICAgdGhpcy5jb25maXJtLmhpZGUoKTtcclxuICAgICAgYWNjZXB0KHJlc3VsdCk7XHJcbiAgICB9O1xyXG4gICAgdGhpcy5jb25maXJtLnNob3coKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { PsToolkitUiConfigService } from '../../services/config.service';
|
|
3
|
+
import { LangClass } from '../../classes/lang.class';
|
|
4
|
+
export class ErrorComponent {
|
|
5
|
+
constructor(config) {
|
|
6
|
+
this.config = config;
|
|
7
|
+
const lang = new LangClass(config.currentLang, config.strings);
|
|
8
|
+
this.l = (key, v = null) => {
|
|
9
|
+
return lang.get('Public', 'Error', key, v);
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
ErrorComponent.decorators = [
|
|
14
|
+
{ type: Component, args: [{
|
|
15
|
+
selector: 'lib-error',
|
|
16
|
+
template: "<div id=\"Error\">\r\n <div class=\"error-con\" *ngIf=\"error === 'FormBaseErrorNotRegistered'\">\r\n <i class=\"fad fa-registered error-icon\"></i>\r\n <div class=\"error-text\">{{l(\"FormBaseErrorNotRegistered\")}}</div>\r\n </div>\r\n <div class=\"error-con\" *ngIf=\"error === 'FormBaseErrorExpiredRegistered'\">\r\n <i class=\"fad fa-hourglass-end error-icon\"></i>\r\n <div class=\"error-text\">{{l(\"FormBaseErrorExpiredRegistered\")}}</div>\r\n </div>\r\n <div class=\"error-con\" *ngIf=\"error === 'FormBaseErrorInvalidIp'\">\r\n <i class=\"fad fas fa-signal-stream error-icon\"></i>\r\n <div class=\"error-text\">{{l(\"FormBaseErrorInvalidIp\")}}</div>\r\n </div>\r\n</div>\r\n",
|
|
17
|
+
styles: ["#Error{align-items:center;background-color:#fff;display:flex;float:right;justify-content:center;min-height:calc(100vh - 125px);position:relative;width:100%}#Error .error-con{border-radius:var(--border-radius-base);float:right;height:100%;width:100%}#Error .error-con .error-text{float:right;font-size:30px;font-weight:var(--font-bold);height:100px;line-height:120px;position:relative;text-align:center;width:100%;z-index:2}#Error .error-con .error-icon{color:var(--base-white);float:right;font-size:150px;text-align:center;width:100%}@media (max-width:399.99px){#Error .error-con{right:5%;width:90%}#Error .error-con .error-text{font-size:25px}#Error .error-con .error-icon{font-size:170px}}@media (min-width:400px) and (max-width:499.99px){#Error .error-con{right:5%;width:90%}#Error .error-con .error-text{font-size:25px}#Error .error-con .error-icon{font-size:170px}}@media (min-width:500px) and (max-width:599.99px){#Error .error-con{right:5%;width:90%}#Error .error-con .error-icon{font-size:200px}}@media (min-width:600px) and (max-width:699.99px){#Error .error-con{right:10%;width:80%}}"]
|
|
18
|
+
},] }
|
|
19
|
+
];
|
|
20
|
+
ErrorComponent.ctorParameters = () => [
|
|
21
|
+
{ type: PsToolkitUiConfigService }
|
|
22
|
+
];
|
|
23
|
+
ErrorComponent.propDecorators = {
|
|
24
|
+
error: [{ type: Input }]
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1BzVG9vbGtpdC9VSS9wcm9qZWN0cy9wcy10b29sa2l0LXVpL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2Vycm9yL2Vycm9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFnQixLQUFLLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDdkUsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBUW5ELE1BQU0sT0FBTyxjQUFjO0lBSXpCLFlBQW1CLE1BQWdDO1FBQWhDLFdBQU0sR0FBTixNQUFNLENBQTBCO1FBQ2pELE1BQU0sSUFBSSxHQUFHLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFXLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBVSxFQUFFO1lBQ3pDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3QyxDQUFDLENBQUM7SUFDSixDQUFDOzs7WUFkRixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLG10QkFBcUM7O2FBRXhDOzs7WUFSTyx3QkFBd0I7OztvQkFVN0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1BzVG9vbGtpdFVpQ29uZmlnU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQge0xhbmdDbGFzc30gZnJvbSAnLi4vLi4vY2xhc3Nlcy9sYW5nLmNsYXNzJztcclxuaW1wb3J0IHtJbnB1dENsYXNzfSBmcm9tICcuLi8uLi9jbGFzc2VzL2Zvcm0uY2xhc3MnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2xpYi1lcnJvcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXJyb3IuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vZXJyb3IuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFcnJvckNvbXBvbmVudCB7XHJcbiAgQElucHV0KClcclxuICBlcnJvcjogc3RyaW5nO1xyXG4gIGw6IChrLCB2PykgPT4gc3RyaW5nO1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjb25maWc6IFBzVG9vbGtpdFVpQ29uZmlnU2VydmljZSl7XHJcbiAgICBjb25zdCBsYW5nID0gbmV3IExhbmdDbGFzcyhjb25maWcuY3VycmVudExhbmcsIGNvbmZpZy5zdHJpbmdzKTtcclxuICAgIHRoaXMubCA9IChrZXk6IHN0cmluZywgdiA9IG51bGwpOiBzdHJpbmcgPT4ge1xyXG4gICAgICByZXR1cm4gbGFuZy5nZXQoJ1B1YmxpYycsICdFcnJvcicsIGtleSwgdik7XHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { LangClass } from '../../classes/lang.class';
|
|
3
|
+
import { PsToolkitUiConfigService } from '../../services/config.service';
|
|
4
|
+
export class FooterComponent {
|
|
5
|
+
constructor(config) {
|
|
6
|
+
this.config = config;
|
|
7
|
+
const lang = new LangClass(config.currentLang, config.strings);
|
|
8
|
+
this.l = (key, v = null) => {
|
|
9
|
+
return lang.get('Public', 'Footer', key, v);
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
FooterComponent.decorators = [
|
|
14
|
+
{ type: Component, args: [{
|
|
15
|
+
selector: 'lib-footer',
|
|
16
|
+
template: "<div id=\"Footer\">\r\n <div class=\"copyright\">\r\n <i class=\"far fa-copyright\"></i>\r\n {{l('Copyright', 'SoftwareName')}}\r\n </div>\r\n <div class=\"creator\">\r\n <i class=\"fas fa-heart\"></i> {{l('CreatorDesc')}} <a href=\"http://partsilicon.ir/\" target=\"_blank\">{{l('CreatorCom')}}</a>\r\n </div>\r\n</div>\r\n",
|
|
17
|
+
styles: ["#Footer{background-color:var(--base-dark);bottom:0;color:#fff;font-size:12px;font-weight:var(--font-bold);line-height:35px;position:fixed;right:0;text-align:center;width:100%;z-index:2}#Footer .copyright,#Footer .creator{float:right;width:50%}#Footer .copyright i,#Footer .creator a,#Footer .creator i{color:var(--primary)!important}@media (max-width:599.98px){#Footer{z-index:-1}#Footer .copyright,#Footer .creator{line-height:30px;width:100%}}"]
|
|
18
|
+
},] }
|
|
19
|
+
];
|
|
20
|
+
FooterComponent.ctorParameters = () => [
|
|
21
|
+
{ type: PsToolkitUiConfigService }
|
|
22
|
+
];
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9mb290ZXIvZm9vdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQU92RSxNQUFNLE9BQU8sZUFBZTtJQUUxQixZQUFtQixNQUFnQztRQUFoQyxXQUFNLEdBQU4sTUFBTSxDQUEwQjtRQUNqRCxNQUFNLElBQUksR0FBRyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBVyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQVUsRUFBRTtZQUN6QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDOUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs7O1lBWkYsU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxZQUFZO2dCQUN0QiwyV0FBc0M7O2FBRXpDOzs7WUFOTyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7TGFuZ0NsYXNzfSBmcm9tICcuLi8uLi9jbGFzc2VzL2xhbmcuY2xhc3MnO1xyXG5pbXBvcnQge1BzVG9vbGtpdFVpQ29uZmlnU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29uZmlnLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2xpYi1mb290ZXInLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Zvb3Rlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9mb290ZXIuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb290ZXJDb21wb25lbnR7XHJcbiAgbDogKGssIHY/KSA9PiBzdHJpbmc7XHJcbiAgY29uc3RydWN0b3IocHVibGljIGNvbmZpZzogUHNUb29sa2l0VWlDb25maWdTZXJ2aWNlKXtcclxuICAgIGNvbnN0IGxhbmcgPSBuZXcgTGFuZ0NsYXNzKGNvbmZpZy5jdXJyZW50TGFuZywgY29uZmlnLnN0cmluZ3MpO1xyXG4gICAgdGhpcy5sID0gKGtleTogc3RyaW5nLCB2ID0gbnVsbCk6IHN0cmluZyA9PiB7XHJcbiAgICAgIHJldHVybiBsYW5nLmdldCgnUHVibGljJywgJ0Zvb3RlcicsIGtleSwgdik7XHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
|