ngx-sfc-components 0.0.1
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/README.md +685 -0
- package/esm2020/lib/components/avatar/avatar.component.mjs +83 -0
- package/esm2020/lib/components/avatar/avatar.constants.mjs +9 -0
- package/esm2020/lib/components/avatar/models/avatar-data.model.mjs +2 -0
- package/esm2020/lib/components/avatar/models/avatar-image.model.mjs +14 -0
- package/esm2020/lib/components/avatar/models/avatar-progress.model.mjs +2 -0
- package/esm2020/lib/components/avatar/parts/badge/avatar-badge-position.enum.mjs +12 -0
- package/esm2020/lib/components/avatar/parts/badge/avatar-badge.component.mjs +88 -0
- package/esm2020/lib/components/avatar/parts/badge/avatar-badge.constants.mjs +5 -0
- package/esm2020/lib/components/carousel/carousel.component.mjs +230 -0
- package/esm2020/lib/components/carousel/carousel.enum.mjs +33 -0
- package/esm2020/lib/components/carousel/directive/carousel-slide.directive.mjs +31 -0
- package/esm2020/lib/components/carousel/models/dom.model.mjs +2 -0
- package/esm2020/lib/components/carousel/models/navigation.model.mjs +2 -0
- package/esm2020/lib/components/carousel/models/options.model.mjs +2 -0
- package/esm2020/lib/components/carousel/models/slide.model.mjs +3 -0
- package/esm2020/lib/components/carousel/parts/stage/carousel-stage.component.mjs +83 -0
- package/esm2020/lib/components/carousel/parts/stage/carousel-stage.model.mjs +2 -0
- package/esm2020/lib/components/carousel/service/animate/carousel-animate.service.mjs +86 -0
- package/esm2020/lib/components/carousel/service/autoplay/carousel-autoplay.service.mjs +129 -0
- package/esm2020/lib/components/carousel/service/carousel/carousel-service.constants.mjs +44 -0
- package/esm2020/lib/components/carousel/service/carousel/carousel-service.enum.mjs +14 -0
- package/esm2020/lib/components/carousel/service/carousel/carousel-service.model.mjs +2 -0
- package/esm2020/lib/components/carousel/service/carousel/carousel.service.mjs +697 -0
- package/esm2020/lib/components/carousel/service/lazy/carousel-lazy-load.service.mjs +59 -0
- package/esm2020/lib/components/carousel/service/navigation/carousel-navigation.service.mjs +211 -0
- package/esm2020/lib/components/chart/chart-option.model.mjs +2 -0
- package/esm2020/lib/components/chart/chart.component.mjs +124 -0
- package/esm2020/lib/components/chart/chart.constants.mjs +95 -0
- package/esm2020/lib/components/chart/service/settings/chart-settings.service.mjs +87 -0
- package/esm2020/lib/components/chart/service/theme/chart-theme.model.mjs +2 -0
- package/esm2020/lib/components/chart/service/theme/chart-theme.service.mjs +25 -0
- package/esm2020/lib/components/index.mjs +40 -0
- package/esm2020/lib/components/menu/dropdown/dropdown-menu.component.mjs +86 -0
- package/esm2020/lib/components/menu/dropdown/parts/item/dropdown-menu-item.component.mjs +26 -0
- package/esm2020/lib/components/menu/dropdown/parts/item/dropdown-menu-item.model.mjs +2 -0
- package/esm2020/lib/components/menu/navigation/navigation-menu.component.mjs +26 -0
- package/esm2020/lib/components/menu/navigation/parts/item/navigation-menu-item.component.mjs +31 -0
- package/esm2020/lib/components/menu/navigation/parts/item/navigation-menu-item.model.mjs +2 -0
- package/esm2020/lib/components/menu/side/parts/header/side-menu-header.component.mjs +31 -0
- package/esm2020/lib/components/menu/side/parts/item/content/side-menu-item-content.component.mjs +56 -0
- package/esm2020/lib/components/menu/side/parts/item/side-menu-item.component.mjs +81 -0
- package/esm2020/lib/components/menu/side/parts/title/side-menu-title.component.mjs +24 -0
- package/esm2020/lib/components/menu/side/side-menu.component.mjs +47 -0
- package/esm2020/lib/components/menu/side/side-menu.model.mjs +6 -0
- package/esm2020/lib/components/no-export-index.mjs +15 -0
- package/esm2020/lib/components/notification/enums/notification-template.enum.mjs +5 -0
- package/esm2020/lib/components/notification/enums/notification-type.enum.mjs +7 -0
- package/esm2020/lib/components/notification/notification-auto-close.model.mjs +2 -0
- package/esm2020/lib/components/notification/notification.component.mjs +67 -0
- package/esm2020/lib/components/notification/parts/content/notification-content.component.mjs +33 -0
- package/esm2020/lib/components/notification/parts/content/notification-content.model.mjs +2 -0
- package/esm2020/lib/components/progress/circle/progress-circle.component.mjs +23 -0
- package/esm2020/lib/components/progress/line/progress-line.component.mjs +40 -0
- package/esm2020/lib/components/progress/progress-color.enum.mjs +13 -0
- package/esm2020/lib/components/progress/progress.component.mjs +50 -0
- package/esm2020/lib/components/progress/semi-circle/progress-semi-circle.component.mjs +42 -0
- package/esm2020/lib/components/slider/parts/button/slider-button-type.enum.mjs +6 -0
- package/esm2020/lib/components/slider/parts/button/slider-button.component.mjs +34 -0
- package/esm2020/lib/components/slider/parts/item/slider-item.component.mjs +17 -0
- package/esm2020/lib/components/slider/parts/item/slider-item.model.mjs +2 -0
- package/esm2020/lib/components/slider/parts/pagination/slider-pagination.component.mjs +29 -0
- package/esm2020/lib/components/slider/service/automatic/slider-automatic.service.mjs +35 -0
- package/esm2020/lib/components/slider/service/slider/slider-move-type.enum.mjs +7 -0
- package/esm2020/lib/components/slider/service/slider/slider-move.event.mjs +2 -0
- package/esm2020/lib/components/slider/service/slider/slider-move.model.mjs +2 -0
- package/esm2020/lib/components/slider/service/slider/slider.service.mjs +40 -0
- package/esm2020/lib/components/slider/slider-type.enum.mjs +6 -0
- package/esm2020/lib/components/slider/slider.component.mjs +116 -0
- package/esm2020/lib/components/stars/star-type.enum.mjs +9 -0
- package/esm2020/lib/components/stars/stars.component.mjs +42 -0
- package/esm2020/lib/components/table/enums/table-data-type.enum.mjs +6 -0
- package/esm2020/lib/components/table/enums/table-template.enum.mjs +7 -0
- package/esm2020/lib/components/table/models/table-pagination.model.mjs +2 -0
- package/esm2020/lib/components/table/models/table.model.mjs +2 -0
- package/esm2020/lib/components/table/parts/columns/default/default-table-column.component.mjs +24 -0
- package/esm2020/lib/components/table/parts/columns/selectable/selectable-table-column.component.mjs +30 -0
- package/esm2020/lib/components/table/parts/columns/table-column-type.enum.mjs +8 -0
- package/esm2020/lib/components/table/parts/columns/table-column.model.mjs +2 -0
- package/esm2020/lib/components/table/parts/content/base-default-table-content.component.mjs +74 -0
- package/esm2020/lib/components/table/parts/content/cards/default/default-table-card.component.mjs +14 -0
- package/esm2020/lib/components/table/parts/content/rows/default/default-table-row.component.mjs +28 -0
- package/esm2020/lib/components/table/parts/content/rows/expanded/expanded-table-row-template.enum.mjs +6 -0
- package/esm2020/lib/components/table/parts/content/rows/expanded/expanded-table-row.component.mjs +42 -0
- package/esm2020/lib/components/table/parts/content/rows/expanded/expanded-table-row.model.mjs +2 -0
- package/esm2020/lib/components/table/parts/toggle/columns-toggle.component.mjs +33 -0
- package/esm2020/lib/components/table/parts/toggle/columns-toggle.constants.mjs +11 -0
- package/esm2020/lib/components/table/parts/toggle/service/columns-toggle.service.mjs +34 -0
- package/esm2020/lib/components/table/service/select/table-select.event.mjs +2 -0
- package/esm2020/lib/components/table/service/select/table-select.service.mjs +24 -0
- package/esm2020/lib/components/table/table.component.mjs +250 -0
- package/esm2020/lib/components/table/table.constants.mjs +11 -0
- package/esm2020/lib/components/tabs/models/tab.model.mjs +2 -0
- package/esm2020/lib/components/tabs/models/tabs-view.model.mjs +2 -0
- package/esm2020/lib/components/tabs/parts/labels/tab-label-content-base.component.mjs +29 -0
- package/esm2020/lib/components/tabs/parts/labels/tab-label-icon/tab-label-icon.component.mjs +20 -0
- package/esm2020/lib/components/tabs/parts/labels/tab-label-line/tab-label-line.component.mjs +13 -0
- package/esm2020/lib/components/tabs/parts/sliders/tab-label-icon/tab-label-icon-slider.component.mjs +20 -0
- package/esm2020/lib/components/tabs/parts/sliders/tab-label-line/tab-label-line-slider.component.mjs +20 -0
- package/esm2020/lib/components/tabs/parts/sliders/tab-slider-base.component.mjs +18 -0
- package/esm2020/lib/components/tabs/parts/sliders/tab-slider-context.model.mjs +2 -0
- package/esm2020/lib/components/tabs/service/tab.service.mjs +11 -0
- package/esm2020/lib/components/tabs/tabs-template.enum.mjs +7 -0
- package/esm2020/lib/components/tabs/tabs.component.mjs +69 -0
- package/esm2020/lib/components/tags/parts/tag/tag.component.mjs +18 -0
- package/esm2020/lib/components/tags/parts/tag/tag.model.mjs +2 -0
- package/esm2020/lib/components/tags/tags.component.mjs +18 -0
- package/esm2020/lib/components/timeline/parts/item/timeline-item-position.enum.mjs +6 -0
- package/esm2020/lib/components/timeline/parts/item/timeline-item.component.mjs +34 -0
- package/esm2020/lib/components/timeline/parts/item/timeline-item.model.mjs +2 -0
- package/esm2020/lib/components/timeline/timeline.component.mjs +18 -0
- package/esm2020/lib/ngx-sfc-components.module.mjs +208 -0
- package/esm2020/ngx-sfc-components.mjs +5 -0
- package/esm2020/public-api.mjs +6 -0
- package/fesm2015/ngx-sfc-components.mjs +4006 -0
- package/fesm2015/ngx-sfc-components.mjs.map +1 -0
- package/fesm2020/ngx-sfc-components.mjs +3989 -0
- package/fesm2020/ngx-sfc-components.mjs.map +1 -0
- package/lib/components/avatar/avatar.component.d.ts +42 -0
- package/lib/components/avatar/avatar.constants.d.ts +8 -0
- package/lib/components/avatar/models/avatar-data.model.d.ts +6 -0
- package/lib/components/avatar/models/avatar-image.model.d.ts +12 -0
- package/lib/components/avatar/models/avatar-progress.model.d.ts +4 -0
- package/lib/components/avatar/parts/badge/avatar-badge-position.enum.d.ts +10 -0
- package/lib/components/avatar/parts/badge/avatar-badge.component.d.ts +14 -0
- package/lib/components/avatar/parts/badge/avatar-badge.constants.d.ts +4 -0
- package/lib/components/carousel/carousel.component.d.ts +62 -0
- package/lib/components/carousel/carousel.enum.d.ts +26 -0
- package/lib/components/carousel/directive/carousel-slide.directive.d.ts +13 -0
- package/lib/components/carousel/models/dom.model.d.ts +7 -0
- package/lib/components/carousel/models/navigation.model.d.ts +17 -0
- package/lib/components/carousel/models/options.model.d.ts +40 -0
- package/lib/components/carousel/models/slide.model.d.ts +28 -0
- package/lib/components/carousel/parts/stage/carousel-stage.component.d.ts +30 -0
- package/lib/components/carousel/parts/stage/carousel-stage.model.d.ts +7 -0
- package/lib/components/carousel/service/animate/carousel-animate.service.d.ts +17 -0
- package/lib/components/carousel/service/autoplay/carousel-autoplay.service.d.ts +29 -0
- package/lib/components/carousel/service/carousel/carousel-service.constants.d.ts +5 -0
- package/lib/components/carousel/service/carousel/carousel-service.enum.d.ts +9 -0
- package/lib/components/carousel/service/carousel/carousel-service.model.d.ts +21 -0
- package/lib/components/carousel/service/carousel/carousel.service.d.ts +92 -0
- package/lib/components/carousel/service/lazy/carousel-lazy-load.service.d.ts +14 -0
- package/lib/components/carousel/service/navigation/carousel-navigation.service.d.ts +28 -0
- package/lib/components/chart/chart-option.model.d.ts +9 -0
- package/lib/components/chart/chart.component.d.ts +38 -0
- package/lib/components/chart/chart.constants.d.ts +100 -0
- package/lib/components/chart/service/settings/chart-settings.service.d.ts +14 -0
- package/lib/components/chart/service/theme/chart-theme.model.d.ts +15 -0
- package/lib/components/chart/service/theme/chart-theme.service.d.ts +11 -0
- package/lib/components/index.d.ts +56 -0
- package/lib/components/menu/dropdown/dropdown-menu.component.d.ts +28 -0
- package/lib/components/menu/dropdown/parts/item/dropdown-menu-item.component.d.ts +8 -0
- package/lib/components/menu/dropdown/parts/item/dropdown-menu-item.model.d.ts +6 -0
- package/lib/components/menu/navigation/navigation-menu.component.d.ts +10 -0
- package/lib/components/menu/navigation/parts/item/navigation-menu-item.component.d.ts +9 -0
- package/lib/components/menu/navigation/parts/item/navigation-menu-item.model.d.ts +6 -0
- package/lib/components/menu/side/parts/header/side-menu-header.component.d.ts +11 -0
- package/lib/components/menu/side/parts/item/content/side-menu-item-content.component.d.ts +17 -0
- package/lib/components/menu/side/parts/item/side-menu-item.component.d.ts +17 -0
- package/lib/components/menu/side/parts/title/side-menu-title.component.d.ts +7 -0
- package/lib/components/menu/side/side-menu.component.d.ts +13 -0
- package/lib/components/menu/side/side-menu.model.d.ts +15 -0
- package/lib/components/no-export-index.d.ts +14 -0
- package/lib/components/notification/enums/notification-template.enum.d.ts +3 -0
- package/lib/components/notification/enums/notification-type.enum.d.ts +5 -0
- package/lib/components/notification/notification-auto-close.model.d.ts +4 -0
- package/lib/components/notification/notification.component.d.ts +26 -0
- package/lib/components/notification/parts/content/notification-content.component.d.ts +14 -0
- package/lib/components/notification/parts/content/notification-content.model.d.ts +8 -0
- package/lib/components/progress/circle/progress-circle.component.d.ts +8 -0
- package/lib/components/progress/line/progress-line.component.d.ts +17 -0
- package/lib/components/progress/progress-color.enum.d.ts +11 -0
- package/lib/components/progress/progress.component.d.ts +9 -0
- package/lib/components/progress/semi-circle/progress-semi-circle.component.d.ts +16 -0
- package/lib/components/slider/parts/button/slider-button-type.enum.d.ts +4 -0
- package/lib/components/slider/parts/button/slider-button.component.d.ts +11 -0
- package/lib/components/slider/parts/item/slider-item.component.d.ts +7 -0
- package/lib/components/slider/parts/item/slider-item.model.d.ts +5 -0
- package/lib/components/slider/parts/pagination/slider-pagination.component.d.ts +11 -0
- package/lib/components/slider/service/automatic/slider-automatic.service.d.ts +17 -0
- package/lib/components/slider/service/slider/slider-move-type.enum.d.ts +5 -0
- package/lib/components/slider/service/slider/slider-move.event.d.ts +5 -0
- package/lib/components/slider/service/slider/slider-move.model.d.ts +4 -0
- package/lib/components/slider/service/slider/slider.service.d.ts +12 -0
- package/lib/components/slider/slider-type.enum.d.ts +4 -0
- package/lib/components/slider/slider.component.d.ts +45 -0
- package/lib/components/stars/star-type.enum.d.ts +7 -0
- package/lib/components/stars/stars.component.d.ts +11 -0
- package/lib/components/table/enums/table-data-type.enum.d.ts +4 -0
- package/lib/components/table/enums/table-template.enum.d.ts +5 -0
- package/lib/components/table/models/table-pagination.model.d.ts +5 -0
- package/lib/components/table/models/table.model.d.ts +9 -0
- package/lib/components/table/parts/columns/default/default-table-column.component.d.ts +8 -0
- package/lib/components/table/parts/columns/selectable/selectable-table-column.component.d.ts +10 -0
- package/lib/components/table/parts/columns/table-column-type.enum.d.ts +6 -0
- package/lib/components/table/parts/columns/table-column.model.d.ts +11 -0
- package/lib/components/table/parts/content/base-default-table-content.component.d.ts +27 -0
- package/lib/components/table/parts/content/cards/default/default-table-card.component.d.ts +6 -0
- package/lib/components/table/parts/content/rows/default/default-table-row.component.d.ts +10 -0
- package/lib/components/table/parts/content/rows/expanded/expanded-table-row-template.enum.d.ts +4 -0
- package/lib/components/table/parts/content/rows/expanded/expanded-table-row.component.d.ts +16 -0
- package/lib/components/table/parts/content/rows/expanded/expanded-table-row.model.d.ts +11 -0
- package/lib/components/table/parts/toggle/columns-toggle.component.d.ts +13 -0
- package/lib/components/table/parts/toggle/columns-toggle.constants.d.ts +10 -0
- package/lib/components/table/parts/toggle/service/columns-toggle.service.d.ts +15 -0
- package/lib/components/table/service/select/table-select.event.d.ts +4 -0
- package/lib/components/table/service/select/table-select.service.d.ts +11 -0
- package/lib/components/table/table.component.d.ts +74 -0
- package/lib/components/table/table.constants.d.ts +11 -0
- package/lib/components/tabs/models/tab.model.d.ts +7 -0
- package/lib/components/tabs/models/tabs-view.model.d.ts +8 -0
- package/lib/components/tabs/parts/labels/tab-label-content-base.component.d.ts +9 -0
- package/lib/components/tabs/parts/labels/tab-label-icon/tab-label-icon.component.d.ts +9 -0
- package/lib/components/tabs/parts/labels/tab-label-line/tab-label-line.component.d.ts +6 -0
- package/lib/components/tabs/parts/sliders/tab-label-icon/tab-label-icon-slider.component.d.ts +7 -0
- package/lib/components/tabs/parts/sliders/tab-label-line/tab-label-line-slider.component.d.ts +10 -0
- package/lib/components/tabs/parts/sliders/tab-slider-base.component.d.ts +8 -0
- package/lib/components/tabs/parts/sliders/tab-slider-context.model.d.ts +4 -0
- package/lib/components/tabs/service/tab.service.d.ts +6 -0
- package/lib/components/tabs/tabs-template.enum.d.ts +5 -0
- package/lib/components/tabs/tabs.component.d.ts +26 -0
- package/lib/components/tags/parts/tag/tag.component.d.ts +7 -0
- package/lib/components/tags/parts/tag/tag.model.d.ts +4 -0
- package/lib/components/tags/tags.component.d.ts +7 -0
- package/lib/components/timeline/parts/item/timeline-item-position.enum.d.ts +4 -0
- package/lib/components/timeline/parts/item/timeline-item.component.d.ts +11 -0
- package/lib/components/timeline/parts/item/timeline-item.model.d.ts +10 -0
- package/lib/components/timeline/timeline.component.d.ts +7 -0
- package/lib/ngx-sfc-components.module.d.ts +49 -0
- package/ngx-sfc-components.d.ts +5 -0
- package/package.json +50 -0
- package/public-api.d.ts +2 -0
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { animate, style, transition, trigger } from '@angular/animations';
|
|
2
|
+
import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
|
|
3
|
+
import { any, CommonConstants, firstOrDefault, isDefined, UIClass } from 'ngx-sfc-common';
|
|
4
|
+
import { SideMenuItemType } from '../../side-menu.model';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "./content/side-menu-item-content.component";
|
|
7
|
+
import * as i2 from "@angular/common";
|
|
8
|
+
export class SideMenuItemComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.item = {
|
|
11
|
+
icon: CommonConstants.EMPTY_STRING,
|
|
12
|
+
label: CommonConstants.EMPTY_STRING,
|
|
13
|
+
type: SideMenuItemType.Item,
|
|
14
|
+
items: [],
|
|
15
|
+
active: false
|
|
16
|
+
};
|
|
17
|
+
this.open = false;
|
|
18
|
+
this.selectItem = new EventEmitter();
|
|
19
|
+
this.openParent = false;
|
|
20
|
+
}
|
|
21
|
+
get hasActiveChild() {
|
|
22
|
+
return isDefined(firstOrDefault(this.item.items, (item) => item.active));
|
|
23
|
+
}
|
|
24
|
+
hasChildren(item) {
|
|
25
|
+
return any(item.items);
|
|
26
|
+
}
|
|
27
|
+
isActive(item) {
|
|
28
|
+
return this.hasChildren(item)
|
|
29
|
+
? this.hasActiveChild && !this.openParent
|
|
30
|
+
: item.active;
|
|
31
|
+
}
|
|
32
|
+
ngOnInit() {
|
|
33
|
+
this.openParent = this.hasActiveChild;
|
|
34
|
+
}
|
|
35
|
+
onParentClick(item) {
|
|
36
|
+
this.openParent = !this.openParent;
|
|
37
|
+
this.selectItem.emit(item);
|
|
38
|
+
}
|
|
39
|
+
onChildClick(item, child) {
|
|
40
|
+
item.items?.forEach((item) => item.active = false);
|
|
41
|
+
this.selectItem.emit(child);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
SideMenuItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SideMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
45
|
+
SideMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SideMenuItemComponent, selector: "sfc-side-menu-item", inputs: { item: "item", open: "open" }, outputs: { selectItem: "selectItem" }, host: { properties: { "class.open": "this.open" } }, ngImport: i0, template: "<div class=\"container\">\r\n <sfc-side-menu-item-content [item]=\"item\" [active]=\"isActive(item)\" [open]=\"open\" [openParent]=\"openParent\"\r\n [hasChildren]=\"hasChildren(item)\" (selectItem)=\"onParentClick(item)\">\r\n </sfc-side-menu-item-content>\r\n\r\n <div class=\"children\" *ngIf=\"hasChildren(item) && openParent\" [@enterAnimation]>\r\n\r\n <sfc-side-menu-item-content *ngFor=\"let child of item.items\" [item]=\"child\" [open]=\"open\"\r\n [active]=\"isActive(child)\" [openParent]=\"true\" (selectItem)=\"onChildClick(item, child)\">\r\n </sfc-side-menu-item-content>\r\n\r\n </div>\r\n</div>", styles: [":host .container{margin-bottom:1em}:host .container .children{margin:1em 0}\n"], components: [{ type: i1.SideMenuItemContentComponent, selector: "sfc-side-menu-item-content", inputs: ["item", "active", "open", "openParent", "hasChildren"], outputs: ["selectItem"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], animations: [
|
|
46
|
+
trigger('enterAnimation', [
|
|
47
|
+
transition(':enter', [
|
|
48
|
+
style({ transform: 'translateX(-20%)', opacity: 0 }),
|
|
49
|
+
animate('300ms', style({ transform: 'translateX(0%)', opacity: 1 }))
|
|
50
|
+
]),
|
|
51
|
+
transition(':leave', [
|
|
52
|
+
style({ transform: 'translateX(0%)', opacity: 1 }),
|
|
53
|
+
animate('300ms', style({ transform: 'translateX(-20%)', opacity: 0 }))
|
|
54
|
+
])
|
|
55
|
+
])
|
|
56
|
+
] });
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SideMenuItemComponent, decorators: [{
|
|
58
|
+
type: Component,
|
|
59
|
+
args: [{ selector: 'sfc-side-menu-item', animations: [
|
|
60
|
+
trigger('enterAnimation', [
|
|
61
|
+
transition(':enter', [
|
|
62
|
+
style({ transform: 'translateX(-20%)', opacity: 0 }),
|
|
63
|
+
animate('300ms', style({ transform: 'translateX(0%)', opacity: 1 }))
|
|
64
|
+
]),
|
|
65
|
+
transition(':leave', [
|
|
66
|
+
style({ transform: 'translateX(0%)', opacity: 1 }),
|
|
67
|
+
animate('300ms', style({ transform: 'translateX(-20%)', opacity: 0 }))
|
|
68
|
+
])
|
|
69
|
+
])
|
|
70
|
+
], template: "<div class=\"container\">\r\n <sfc-side-menu-item-content [item]=\"item\" [active]=\"isActive(item)\" [open]=\"open\" [openParent]=\"openParent\"\r\n [hasChildren]=\"hasChildren(item)\" (selectItem)=\"onParentClick(item)\">\r\n </sfc-side-menu-item-content>\r\n\r\n <div class=\"children\" *ngIf=\"hasChildren(item) && openParent\" [@enterAnimation]>\r\n\r\n <sfc-side-menu-item-content *ngFor=\"let child of item.items\" [item]=\"child\" [open]=\"open\"\r\n [active]=\"isActive(child)\" [openParent]=\"true\" (selectItem)=\"onChildClick(item, child)\">\r\n </sfc-side-menu-item-content>\r\n\r\n </div>\r\n</div>", styles: [":host .container{margin-bottom:1em}:host .container .children{margin:1em 0}\n"] }]
|
|
71
|
+
}], propDecorators: { item: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}], open: [{
|
|
74
|
+
type: Input
|
|
75
|
+
}, {
|
|
76
|
+
type: HostBinding,
|
|
77
|
+
args: ['class.' + UIClass.Open]
|
|
78
|
+
}], selectItem: [{
|
|
79
|
+
type: Output
|
|
80
|
+
}] } });
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1tZW51LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNmYy1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9tZW51L3NpZGUvcGFydHMvaXRlbS9zaWRlLW1lbnUtaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL21lbnUvc2lkZS9wYXJ0cy9pdGVtL3NpZGUtbWVudS1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RixPQUFPLEVBQUUsR0FBRyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFGLE9BQU8sRUFBc0IsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7OztBQXFCN0UsTUFBTSxPQUFPLHFCQUFxQjtJQW5CbEM7UUFzQkUsU0FBSSxHQUF1QjtZQUN6QixJQUFJLEVBQUUsZUFBZSxDQUFDLFlBQVk7WUFDbEMsS0FBSyxFQUFFLGVBQWUsQ0FBQyxZQUFZO1lBQ25DLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJO1lBQzNCLEtBQUssRUFBRSxFQUFFO1lBQ1QsTUFBTSxFQUFFLEtBQUs7U0FDZCxDQUFDO1FBSUYsU0FBSSxHQUFZLEtBQUssQ0FBQztRQUd0QixlQUFVLEdBQXFDLElBQUksWUFBWSxFQUFzQixDQUFDO1FBRXRGLGVBQVUsR0FBWSxLQUFLLENBQUM7S0E2QjdCO0lBM0JDLElBQVksY0FBYztRQUN4QixPQUFPLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUF3QixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUMvRixDQUFDO0lBRUQsV0FBVyxDQUFDLElBQXdCO1FBQ2xDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsUUFBUSxDQUFDLElBQXdCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDM0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVTtZQUN6QyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQTtJQUNqQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsYUFBYSxDQUFDLElBQXdCO1FBQ3BDLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ25DLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBd0IsRUFBRSxLQUF5QjtRQUM5RCxJQUFJLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDOztrSEE5Q1UscUJBQXFCO3NHQUFyQixxQkFBcUIsOExDeEJsQyxrcEJBWU0sNmVESFE7UUFDVixPQUFPLENBQ0wsZ0JBQWdCLEVBQUU7WUFDbEIsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQkFDbkIsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQztnQkFDcEQsT0FBTyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDckUsQ0FBQztZQUNGLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0JBQ25CLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQ2xELE9BQU8sQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQ3ZFLENBQUM7U0FDSCxDQUNBO0tBQ0Y7MkZBRVUscUJBQXFCO2tCQW5CakMsU0FBUzsrQkFDRSxvQkFBb0IsY0FHbEI7d0JBQ1YsT0FBTyxDQUNMLGdCQUFnQixFQUFFOzRCQUNsQixVQUFVLENBQUMsUUFBUSxFQUFFO2dDQUNuQixLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDO2dDQUNwRCxPQUFPLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzs2QkFDckUsQ0FBQzs0QkFDRixVQUFVLENBQUMsUUFBUSxFQUFFO2dDQUNuQixLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDO2dDQUNsRCxPQUFPLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzs2QkFDdkUsQ0FBQzt5QkFDSCxDQUNBO3FCQUNGOzhCQUtELElBQUk7c0JBREgsS0FBSztnQkFXTixJQUFJO3NCQUZILEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxJQUFJO2dCQUlwQyxVQUFVO3NCQURULE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBhbnksIENvbW1vbkNvbnN0YW50cywgZmlyc3RPckRlZmF1bHQsIGlzRGVmaW5lZCwgVUlDbGFzcyB9IGZyb20gJ25neC1zZmMtY29tbW9uJztcclxuaW1wb3J0IHsgSVNpZGVNZW51SXRlbU1vZGVsLCBTaWRlTWVudUl0ZW1UeXBlIH0gZnJvbSAnLi4vLi4vc2lkZS1tZW51Lm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ZjLXNpZGUtbWVudS1pdGVtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2lkZS1tZW51LWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NpZGUtbWVudS1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgYW5pbWF0aW9uczogW1xyXG4gICAgdHJpZ2dlcihcclxuICAgICAgJ2VudGVyQW5pbWF0aW9uJywgW1xyXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXHJcbiAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKC0yMCUpJywgb3BhY2l0eTogMCB9KSxcclxuICAgICAgICBhbmltYXRlKCczMDBtcycsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgwJSknLCBvcGFjaXR5OiAxIH0pKVxyXG4gICAgICBdKSxcclxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xyXG4gICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgwJSknLCBvcGFjaXR5OiAxIH0pLFxyXG4gICAgICAgIGFuaW1hdGUoJzMwMG1zJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKC0yMCUpJywgb3BhY2l0eTogMCB9KSlcclxuICAgICAgXSlcclxuICAgIF1cclxuICAgIClcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaWRlTWVudUl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGl0ZW06IElTaWRlTWVudUl0ZW1Nb2RlbCA9IHtcclxuICAgIGljb246IENvbW1vbkNvbnN0YW50cy5FTVBUWV9TVFJJTkcsXHJcbiAgICBsYWJlbDogQ29tbW9uQ29uc3RhbnRzLkVNUFRZX1NUUklORyxcclxuICAgIHR5cGU6IFNpZGVNZW51SXRlbVR5cGUuSXRlbSxcclxuICAgIGl0ZW1zOiBbXSxcclxuICAgIGFjdGl2ZTogZmFsc2VcclxuICB9O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuJyArIFVJQ2xhc3MuT3BlbilcclxuICBvcGVuOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHNlbGVjdEl0ZW06IEV2ZW50RW1pdHRlcjxJU2lkZU1lbnVJdGVtTW9kZWw+ID0gbmV3IEV2ZW50RW1pdHRlcjxJU2lkZU1lbnVJdGVtTW9kZWw+KCk7XHJcblxyXG4gIG9wZW5QYXJlbnQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHJpdmF0ZSBnZXQgaGFzQWN0aXZlQ2hpbGQoKSB7XHJcbiAgICByZXR1cm4gaXNEZWZpbmVkKGZpcnN0T3JEZWZhdWx0KHRoaXMuaXRlbS5pdGVtcywgKGl0ZW06IElTaWRlTWVudUl0ZW1Nb2RlbCkgPT4gaXRlbS5hY3RpdmUpKTtcclxuICB9XHJcblxyXG4gIGhhc0NoaWxkcmVuKGl0ZW06IElTaWRlTWVudUl0ZW1Nb2RlbCkge1xyXG4gICAgcmV0dXJuIGFueShpdGVtLml0ZW1zKTtcclxuICB9XHJcblxyXG4gIGlzQWN0aXZlKGl0ZW06IElTaWRlTWVudUl0ZW1Nb2RlbCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaGFzQ2hpbGRyZW4oaXRlbSlcclxuICAgICAgPyB0aGlzLmhhc0FjdGl2ZUNoaWxkICYmICF0aGlzLm9wZW5QYXJlbnRcclxuICAgICAgOiBpdGVtLmFjdGl2ZVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLm9wZW5QYXJlbnQgPSB0aGlzLmhhc0FjdGl2ZUNoaWxkO1xyXG4gIH1cclxuXHJcbiAgb25QYXJlbnRDbGljayhpdGVtOiBJU2lkZU1lbnVJdGVtTW9kZWwpe1xyXG4gICAgdGhpcy5vcGVuUGFyZW50ID0gIXRoaXMub3BlblBhcmVudDtcclxuICAgIHRoaXMuc2VsZWN0SXRlbS5lbWl0KGl0ZW0pO1xyXG4gIH1cclxuXHJcbiAgb25DaGlsZENsaWNrKGl0ZW06IElTaWRlTWVudUl0ZW1Nb2RlbCwgY2hpbGQ6IElTaWRlTWVudUl0ZW1Nb2RlbCkge1xyXG4gICAgaXRlbS5pdGVtcz8uZm9yRWFjaCgoaXRlbSkgPT4gaXRlbS5hY3RpdmUgPSBmYWxzZSk7XHJcbiAgICB0aGlzLnNlbGVjdEl0ZW0uZW1pdChjaGlsZCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cclxuICAgIDxzZmMtc2lkZS1tZW51LWl0ZW0tY29udGVudCBbaXRlbV09XCJpdGVtXCIgW2FjdGl2ZV09XCJpc0FjdGl2ZShpdGVtKVwiIFtvcGVuXT1cIm9wZW5cIiBbb3BlblBhcmVudF09XCJvcGVuUGFyZW50XCJcclxuICAgICAgICBbaGFzQ2hpbGRyZW5dPVwiaGFzQ2hpbGRyZW4oaXRlbSlcIiAoc2VsZWN0SXRlbSk9XCJvblBhcmVudENsaWNrKGl0ZW0pXCI+XHJcbiAgICA8L3NmYy1zaWRlLW1lbnUtaXRlbS1jb250ZW50PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJjaGlsZHJlblwiICpuZ0lmPVwiaGFzQ2hpbGRyZW4oaXRlbSkgJiYgb3BlblBhcmVudFwiIFtAZW50ZXJBbmltYXRpb25dPlxyXG5cclxuICAgICAgICA8c2ZjLXNpZGUtbWVudS1pdGVtLWNvbnRlbnQgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGl0ZW0uaXRlbXNcIiBbaXRlbV09XCJjaGlsZFwiIFtvcGVuXT1cIm9wZW5cIlxyXG4gICAgICAgICAgICBbYWN0aXZlXT1cImlzQWN0aXZlKGNoaWxkKVwiIFtvcGVuUGFyZW50XT1cInRydWVcIiAoc2VsZWN0SXRlbSk9XCJvbkNoaWxkQ2xpY2soaXRlbSwgY2hpbGQpXCI+XHJcbiAgICAgICAgPC9zZmMtc2lkZS1tZW51LWl0ZW0tY29udGVudD5cclxuXHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Component, HostBinding, Input } from '@angular/core';
|
|
2
|
+
import { CommonConstants, UIClass } from 'ngx-sfc-common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "ngx-sfc-common";
|
|
5
|
+
export class SideMenuTitleComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.label = CommonConstants.EMPTY_STRING;
|
|
8
|
+
this.open = false;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
SideMenuTitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SideMenuTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
SideMenuTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SideMenuTitleComponent, selector: "sfc-side-menu-title", inputs: { label: "label", open: "open" }, host: { properties: { "class.open": "this.open" } }, ngImport: i0, template: "<sfc-delimeter></sfc-delimeter>\r\n<li><span>{{label}}</span></li>", styles: [":host li{text-transform:uppercase;font-weight:700;font-size:.65em;padding:1.25em 0;transform:translate(7%);display:inline-block;transition:transform .5s ease-in-out}:host-context(.sfc-default-theme) :host li{color:#545e61}:host-context(.sfc-dark-theme) :host li{color:#ccd1d9}:host.open li{transform:translate(30%)}\n"], components: [{ type: i1.DelimeterComponent, selector: "sfc-delimeter" }] });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SideMenuTitleComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{ selector: 'sfc-side-menu-title', template: "<sfc-delimeter></sfc-delimeter>\r\n<li><span>{{label}}</span></li>", styles: [":host li{text-transform:uppercase;font-weight:700;font-size:.65em;padding:1.25em 0;transform:translate(7%);display:inline-block;transition:transform .5s ease-in-out}:host-context(.sfc-default-theme) :host li{color:#545e61}:host-context(.sfc-dark-theme) :host li{color:#ccd1d9}:host.open li{transform:translate(30%)}\n"] }]
|
|
16
|
+
}], propDecorators: { label: [{
|
|
17
|
+
type: Input
|
|
18
|
+
}], open: [{
|
|
19
|
+
type: Input
|
|
20
|
+
}, {
|
|
21
|
+
type: HostBinding,
|
|
22
|
+
args: ['class.' + UIClass.Open]
|
|
23
|
+
}] } });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1tZW51LXRpdGxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZmMtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbWVudS9zaWRlL3BhcnRzL3RpdGxlL3NpZGUtbWVudS10aXRsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL21lbnUvc2lkZS9wYXJ0cy90aXRsZS9zaWRlLW1lbnUtdGl0bGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU8xRCxNQUFNLE9BQU8sc0JBQXNCO0lBTG5DO1FBUUUsVUFBSyxHQUFXLGVBQWUsQ0FBQyxZQUFZLENBQUM7UUFJN0MsU0FBSSxHQUFZLEtBQUssQ0FBQztLQUV2Qjs7bUhBVFksc0JBQXNCO3VHQUF0QixzQkFBc0IsMEpDUm5DLG9FQUMrQjsyRkRPbEIsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLHFCQUFxQjs4QkFPL0IsS0FBSztzQkFESixLQUFLO2dCQUtOLElBQUk7c0JBRkgsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Db25zdGFudHMsIFVJQ2xhc3MgfSBmcm9tICduZ3gtc2ZjLWNvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NmYy1zaWRlLW1lbnUtdGl0bGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWRlLW1lbnUtdGl0bGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NpZGUtbWVudS10aXRsZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaWRlTWVudVRpdGxlQ29tcG9uZW50IHtcclxuXHJcbiAgQElucHV0KClcclxuICBsYWJlbDogc3RyaW5nID0gQ29tbW9uQ29uc3RhbnRzLkVNUFRZX1NUUklORztcclxuXHJcbiAgQElucHV0KClcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLicgKyBVSUNsYXNzLk9wZW4pXHJcbiAgb3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxufVxyXG4iLCI8c2ZjLWRlbGltZXRlcj48L3NmYy1kZWxpbWV0ZXI+XHJcbjxsaT48c3Bhbj57e2xhYmVsfX08L3NwYW4+PC9saT4iXX0=
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
|
|
2
|
+
import { any, UIClass } from 'ngx-sfc-common';
|
|
3
|
+
import { SideMenuItemType } from './side-menu.model';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "./parts/header/side-menu-header.component";
|
|
6
|
+
import * as i2 from "./parts/item/side-menu-item.component";
|
|
7
|
+
import * as i3 from "./parts/title/side-menu-title.component";
|
|
8
|
+
import * as i4 from "@angular/common";
|
|
9
|
+
export class SideMenuComponent {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.SideMenuItemType = SideMenuItemType;
|
|
12
|
+
this.model = { open: false, items: [] };
|
|
13
|
+
this.selected = new EventEmitter();
|
|
14
|
+
}
|
|
15
|
+
get open() {
|
|
16
|
+
return this.model.open;
|
|
17
|
+
}
|
|
18
|
+
set open(value) {
|
|
19
|
+
this.model.open = value;
|
|
20
|
+
}
|
|
21
|
+
onItemSelect(item) {
|
|
22
|
+
// handle only items without childrens
|
|
23
|
+
if (!any(item.items)) {
|
|
24
|
+
this.model.items.forEach((item) => {
|
|
25
|
+
item.active = false;
|
|
26
|
+
if (any(item.items))
|
|
27
|
+
item.items?.forEach((item) => item.active = false);
|
|
28
|
+
});
|
|
29
|
+
item.active = true;
|
|
30
|
+
}
|
|
31
|
+
this.selected.emit(item);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
SideMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SideMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
35
|
+
SideMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SideMenuComponent, selector: "sfc-side-menu", inputs: { model: "model" }, outputs: { selected: "selected" }, host: { properties: { "class.open": "this.open" } }, ngImport: i0, template: "<div class=\"container\">\r\n <ul>\r\n <sfc-side-menu-header [open]=\"open\" (toggle)=\"open =!open\"></sfc-side-menu-header>\r\n\r\n <ng-container *ngFor=\"let item of model.items\" [ngSwitch]=\"item.type\">\r\n <sfc-side-menu-item *ngSwitchCase=\"SideMenuItemType.Item\" [item]=\"item\" [open]=\"open\"\r\n (selectItem)=\"onItemSelect($event)\">\r\n </sfc-side-menu-item>\r\n\r\n <sfc-side-menu-title *ngSwitchCase=\"SideMenuItemType.Title\" [label]=\"item.label\" [open]=\"open\">\r\n </sfc-side-menu-title>\r\n </ng-container>\r\n </ul>\r\n</div>", styles: [":host .container{width:5em;overflow:hidden;transition:width .5s ease-in-out}:host-context(.sfc-default-theme) :host .container{background:#f5f7fa}:host-context(.sfc-dark-theme) :host .container{background:#1b1d1f}:host .container ul{margin:0;padding:0;list-style:none;overflow:hidden;display:flex;flex-direction:column}:host.open .container{width:11.25em}\n"], components: [{ type: i1.SideMenuHeaderComponent, selector: "sfc-side-menu-header", inputs: ["label", "open"], outputs: ["toggle"] }, { type: i2.SideMenuItemComponent, selector: "sfc-side-menu-item", inputs: ["item", "open"], outputs: ["selectItem"] }, { type: i3.SideMenuTitleComponent, selector: "sfc-side-menu-title", inputs: ["label", "open"] }], directives: [{ type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] });
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SideMenuComponent, decorators: [{
|
|
37
|
+
type: Component,
|
|
38
|
+
args: [{ selector: 'sfc-side-menu', template: "<div class=\"container\">\r\n <ul>\r\n <sfc-side-menu-header [open]=\"open\" (toggle)=\"open =!open\"></sfc-side-menu-header>\r\n\r\n <ng-container *ngFor=\"let item of model.items\" [ngSwitch]=\"item.type\">\r\n <sfc-side-menu-item *ngSwitchCase=\"SideMenuItemType.Item\" [item]=\"item\" [open]=\"open\"\r\n (selectItem)=\"onItemSelect($event)\">\r\n </sfc-side-menu-item>\r\n\r\n <sfc-side-menu-title *ngSwitchCase=\"SideMenuItemType.Title\" [label]=\"item.label\" [open]=\"open\">\r\n </sfc-side-menu-title>\r\n </ng-container>\r\n </ul>\r\n</div>", styles: [":host .container{width:5em;overflow:hidden;transition:width .5s ease-in-out}:host-context(.sfc-default-theme) :host .container{background:#f5f7fa}:host-context(.sfc-dark-theme) :host .container{background:#1b1d1f}:host .container ul{margin:0;padding:0;list-style:none;overflow:hidden;display:flex;flex-direction:column}:host.open .container{width:11.25em}\n"] }]
|
|
39
|
+
}], propDecorators: { model: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], selected: [{
|
|
42
|
+
type: Output
|
|
43
|
+
}], open: [{
|
|
44
|
+
type: HostBinding,
|
|
45
|
+
args: ['class.' + UIClass.Open]
|
|
46
|
+
}] } });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZmMtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbWVudS9zaWRlL3NpZGUtbWVudS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL21lbnUvc2lkZS9zaWRlLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQXNDLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7OztBQU96RixNQUFNLE9BQU8saUJBQWlCO0lBTDlCO1FBT0UscUJBQWdCLEdBQUcsZ0JBQWdCLENBQUM7UUFHcEMsVUFBSyxHQUFtQixFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBR25ELGFBQVEsR0FBcUMsSUFBSSxZQUFZLEVBQXNCLENBQUM7S0EwQnJGO0lBeEJDLElBQ0ksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksSUFBSSxDQUFDLEtBQWM7UUFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQzFCLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBd0I7UUFDbkMsc0NBQXNDO1FBQ3RDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztnQkFFcEIsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztvQkFDakIsSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDdkQsQ0FBQyxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztTQUNwQjtRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNCLENBQUM7OzhHQWpDVSxpQkFBaUI7a0dBQWpCLGlCQUFpQix5S0NUOUIsOG5CQWFNOzJGREpPLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxlQUFlOzhCQVN6QixLQUFLO3NCQURKLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxNQUFNO2dCQUlILElBQUk7c0JBRFAsV0FBVzt1QkFBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgYW55LCBVSUNsYXNzIH0gZnJvbSAnbmd4LXNmYy1jb21tb24nO1xyXG5pbXBvcnQgeyBJU2lkZU1lbnVJdGVtTW9kZWwsIElTaWRlTWVudU1vZGVsLCBTaWRlTWVudUl0ZW1UeXBlIH0gZnJvbSAnLi9zaWRlLW1lbnUubW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZmMtc2lkZS1tZW51JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2lkZS1tZW51LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zaWRlLW1lbnUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2lkZU1lbnVDb21wb25lbnQge1xyXG5cclxuICBTaWRlTWVudUl0ZW1UeXBlID0gU2lkZU1lbnVJdGVtVHlwZTtcclxuXHJcbiAgQElucHV0KClcclxuICBtb2RlbDogSVNpZGVNZW51TW9kZWwgPSB7IG9wZW46IGZhbHNlLCBpdGVtczogW10gfTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgc2VsZWN0ZWQ6IEV2ZW50RW1pdHRlcjxJU2lkZU1lbnVJdGVtTW9kZWw+ID0gbmV3IEV2ZW50RW1pdHRlcjxJU2lkZU1lbnVJdGVtTW9kZWw+KCk7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuJyArIFVJQ2xhc3MuT3BlbilcclxuICBnZXQgb3BlbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLm1vZGVsLm9wZW47XHJcbiAgfVxyXG5cclxuICBzZXQgb3Blbih2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5tb2RlbC5vcGVuID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBvbkl0ZW1TZWxlY3QoaXRlbTogSVNpZGVNZW51SXRlbU1vZGVsKSB7XHJcbiAgICAvLyBoYW5kbGUgb25seSBpdGVtcyB3aXRob3V0IGNoaWxkcmVuc1xyXG4gICAgaWYgKCFhbnkoaXRlbS5pdGVtcykpIHtcclxuICAgICAgdGhpcy5tb2RlbC5pdGVtcy5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgICAgaXRlbS5hY3RpdmUgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgaWYgKGFueShpdGVtLml0ZW1zKSlcclxuICAgICAgICAgIGl0ZW0uaXRlbXM/LmZvckVhY2goKGl0ZW0pID0+IGl0ZW0uYWN0aXZlID0gZmFsc2UpO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIGl0ZW0uYWN0aXZlID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnNlbGVjdGVkLmVtaXQoaXRlbSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cclxuICAgIDx1bD5cclxuICAgICAgICA8c2ZjLXNpZGUtbWVudS1oZWFkZXIgW29wZW5dPVwib3BlblwiICh0b2dnbGUpPVwib3BlbiA9IW9wZW5cIj48L3NmYy1zaWRlLW1lbnUtaGVhZGVyPlxyXG5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIG1vZGVsLml0ZW1zXCIgW25nU3dpdGNoXT1cIml0ZW0udHlwZVwiPlxyXG4gICAgICAgICAgICA8c2ZjLXNpZGUtbWVudS1pdGVtICpuZ1N3aXRjaENhc2U9XCJTaWRlTWVudUl0ZW1UeXBlLkl0ZW1cIiBbaXRlbV09XCJpdGVtXCIgW29wZW5dPVwib3BlblwiXHJcbiAgICAgICAgICAgICAgICAoc2VsZWN0SXRlbSk9XCJvbkl0ZW1TZWxlY3QoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICA8L3NmYy1zaWRlLW1lbnUtaXRlbT5cclxuXHJcbiAgICAgICAgICAgIDxzZmMtc2lkZS1tZW51LXRpdGxlICpuZ1N3aXRjaENhc2U9XCJTaWRlTWVudUl0ZW1UeXBlLlRpdGxlXCIgW2xhYmVsXT1cIml0ZW0ubGFiZWxcIiBbb3Blbl09XCJvcGVuXCI+XHJcbiAgICAgICAgICAgIDwvc2ZjLXNpZGUtbWVudS10aXRsZT5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvdWw+XHJcbjwvZGl2PiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export var SideMenuItemType;
|
|
2
|
+
(function (SideMenuItemType) {
|
|
3
|
+
SideMenuItemType["Item"] = "item";
|
|
4
|
+
SideMenuItemType["Title"] = "title";
|
|
5
|
+
})(SideMenuItemType || (SideMenuItemType = {}));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1tZW51Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNmYy1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9tZW51L3NpZGUvc2lkZS1tZW51Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWFBLE1BQU0sQ0FBTixJQUFZLGdCQUdYO0FBSEQsV0FBWSxnQkFBZ0I7SUFDeEIsaUNBQWEsQ0FBQTtJQUNiLG1DQUFlLENBQUE7QUFDbkIsQ0FBQyxFQUhXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFHM0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElTaWRlTWVudU1vZGVsIHtcclxuICAgIG9wZW46IGJvb2xlYW47XHJcbiAgICBpdGVtczogSVNpZGVNZW51SXRlbU1vZGVsW107XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVNpZGVNZW51SXRlbU1vZGVsIHtcclxuICAgIGFjdGl2ZTogYm9vbGVhbjtcclxuICAgIGxhYmVsOiBzdHJpbmc7XHJcbiAgICBpY29uOiBzdHJpbmc7XHJcbiAgICB0eXBlOiBTaWRlTWVudUl0ZW1UeXBlO1xyXG4gICAgaXRlbXM/OiBJU2lkZU1lbnVJdGVtTW9kZWxbXTtcclxufVxyXG5cclxuZXhwb3J0IGVudW0gU2lkZU1lbnVJdGVtVHlwZSB7XHJcbiAgICBJdGVtID0gJ2l0ZW0nLFxyXG4gICAgVGl0bGUgPSAndGl0bGUnXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export { SideMenuHeaderComponent } from './menu/side/parts/header/side-menu-header.component';
|
|
2
|
+
export { SideMenuItemContentComponent } from './menu/side/parts/item/content/side-menu-item-content.component';
|
|
3
|
+
export { SideMenuItemComponent } from './menu/side/parts/item/side-menu-item.component';
|
|
4
|
+
export { SideMenuTitleComponent } from './menu/side/parts/title/side-menu-title.component';
|
|
5
|
+
export { DropdownMenuItemComponent } from './menu/dropdown/parts/item/dropdown-menu-item.component';
|
|
6
|
+
export { NavigationMenuItemComponent } from './menu/navigation/parts/item/navigation-menu-item.component';
|
|
7
|
+
export { TagComponent } from './tags/parts/tag/tag.component';
|
|
8
|
+
export { SliderItemComponent } from './slider/parts/item/slider-item.component';
|
|
9
|
+
export { SliderButtonComponent } from './slider/parts/button/slider-button.component';
|
|
10
|
+
export { SliderPaginationComponent } from './slider/parts/pagination/slider-pagination.component';
|
|
11
|
+
export { TimelineItemComponent } from './timeline/parts/item/timeline-item.component';
|
|
12
|
+
export { NotificationContentComponent } from './notification/parts/content/notification-content.component';
|
|
13
|
+
export { CarouselStageComponent } from './carousel/parts/stage/carousel-stage.component';
|
|
14
|
+
export { CarouselSlideDirective } from './carousel/directive/carousel-slide.directive';
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8tZXhwb3J0LWluZGV4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNmYy1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9uby1leHBvcnQtaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDOUYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDL0csT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDeEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDM0YsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDcEcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDMUcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBQzNHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgU2lkZU1lbnVIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL21lbnUvc2lkZS9wYXJ0cy9oZWFkZXIvc2lkZS1tZW51LWhlYWRlci5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBTaWRlTWVudUl0ZW1Db250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9tZW51L3NpZGUvcGFydHMvaXRlbS9jb250ZW50L3NpZGUtbWVudS1pdGVtLWNvbnRlbnQuY29tcG9uZW50JztcclxuZXhwb3J0IHsgU2lkZU1lbnVJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9tZW51L3NpZGUvcGFydHMvaXRlbS9zaWRlLW1lbnUtaXRlbS5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBTaWRlTWVudVRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi9tZW51L3NpZGUvcGFydHMvdGl0bGUvc2lkZS1tZW51LXRpdGxlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IERyb3Bkb3duTWVudUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL21lbnUvZHJvcGRvd24vcGFydHMvaXRlbS9kcm9wZG93bi1tZW51LWl0ZW0uY29tcG9uZW50JztcclxuZXhwb3J0IHsgTmF2aWdhdGlvbk1lbnVJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9tZW51L25hdmlnYXRpb24vcGFydHMvaXRlbS9uYXZpZ2F0aW9uLW1lbnUtaXRlbS5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBUYWdDb21wb25lbnQgfSBmcm9tICcuL3RhZ3MvcGFydHMvdGFnL3RhZy5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBTbGlkZXJJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9zbGlkZXIvcGFydHMvaXRlbS9zbGlkZXItaXRlbS5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBTbGlkZXJCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3NsaWRlci9wYXJ0cy9idXR0b24vc2xpZGVyLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBTbGlkZXJQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9zbGlkZXIvcGFydHMvcGFnaW5hdGlvbi9zbGlkZXItcGFnaW5hdGlvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBUaW1lbGluZUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL3RpbWVsaW5lL3BhcnRzL2l0ZW0vdGltZWxpbmUtaXRlbS5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBOb3RpZmljYXRpb25Db250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9ub3RpZmljYXRpb24vcGFydHMvY29udGVudC9ub3RpZmljYXRpb24tY29udGVudC5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBDYXJvdXNlbFN0YWdlQ29tcG9uZW50IH0gZnJvbSAnLi9jYXJvdXNlbC9wYXJ0cy9zdGFnZS9jYXJvdXNlbC1zdGFnZS5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBDYXJvdXNlbFNsaWRlRGlyZWN0aXZlIH0gZnJvbSAnLi9jYXJvdXNlbC9kaXJlY3RpdmUvY2Fyb3VzZWwtc2xpZGUuZGlyZWN0aXZlJzsiXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export var NotificationTemplate;
|
|
2
|
+
(function (NotificationTemplate) {
|
|
3
|
+
NotificationTemplate["Content"] = "content";
|
|
4
|
+
})(NotificationTemplate || (NotificationTemplate = {}));
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLXRlbXBsYXRlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9lbnVtcy9ub3RpZmljYXRpb24tdGVtcGxhdGUuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxvQkFFWDtBQUZELFdBQVksb0JBQW9CO0lBQzVCLDJDQUFtQixDQUFBO0FBQ3ZCLENBQUMsRUFGVyxvQkFBb0IsS0FBcEIsb0JBQW9CLFFBRS9CIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gTm90aWZpY2F0aW9uVGVtcGxhdGUge1xyXG4gICAgQ29udGVudCA9ICdjb250ZW50J1xyXG59Il19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export var NotificationType;
|
|
2
|
+
(function (NotificationType) {
|
|
3
|
+
NotificationType["Info"] = "info";
|
|
4
|
+
NotificationType["Success"] = "success";
|
|
5
|
+
NotificationType["Failed"] = "failed";
|
|
6
|
+
})(NotificationType || (NotificationType = {}));
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLXR5cGUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZmMtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uL2VudW1zL25vdGlmaWNhdGlvbi10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksZ0JBSVg7QUFKRCxXQUFZLGdCQUFnQjtJQUN4QixpQ0FBYSxDQUFBO0lBQ2IsdUNBQW1CLENBQUE7SUFDbkIscUNBQWlCLENBQUE7QUFDckIsQ0FBQyxFQUpXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFJM0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBOb3RpZmljYXRpb25UeXBlIHtcclxuICAgIEluZm8gPSAnaW5mbycsXHJcbiAgICBTdWNjZXNzID0gJ3N1Y2Nlc3MnLFxyXG4gICAgRmFpbGVkID0gJ2ZhaWxlZCdcclxufSJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWF1dG8tY2xvc2UubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24tYXV0by1jbG9zZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJTm90aWZpY2F0aW9uQXV0b0Nsb3NlTW9kZWwge1xyXG4gICAgZW5hYmxlZDogYm9vbGVhbjtcclxuICAgIGludGVydmFsPzogbnVtYmVyO1xyXG59Il19
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { Component, ContentChildren, EventEmitter, HostBinding, Input, Output } from '@angular/core';
|
|
2
|
+
import { isDefined, TemplateReferenceDirective } from 'ngx-sfc-common';
|
|
3
|
+
import { NotificationTemplate } from './enums/notification-template.enum';
|
|
4
|
+
import { NotificationType } from './enums/notification-type.enum';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "ngx-sfc-common";
|
|
7
|
+
import * as i2 from "./parts/content/notification-content.component";
|
|
8
|
+
import * as i3 from "@angular/common";
|
|
9
|
+
export class NotificationComponent {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.AUTO_CLOSE_INTERVAL_DEFAULT = 5000;
|
|
12
|
+
this.DESTROY_HOST_INTERVAL = 500;
|
|
13
|
+
this.NotificationTemplate = NotificationTemplate;
|
|
14
|
+
this.showClose = true;
|
|
15
|
+
this.autoCloseModel = { enabled: false, interval: this.AUTO_CLOSE_INTERVAL_DEFAULT };
|
|
16
|
+
this.type = NotificationType.Info;
|
|
17
|
+
this.model = { showButton: true };
|
|
18
|
+
this.closed = new EventEmitter();
|
|
19
|
+
this.buttonClicked = new EventEmitter();
|
|
20
|
+
this.destroy = false;
|
|
21
|
+
this.show = false;
|
|
22
|
+
}
|
|
23
|
+
ngOnInit() {
|
|
24
|
+
if (!isDefined(this.autoCloseModel.interval))
|
|
25
|
+
this.autoCloseModel.interval = this.AUTO_CLOSE_INTERVAL_DEFAULT;
|
|
26
|
+
if (this.autoCloseModel.enabled)
|
|
27
|
+
setTimeout(() => {
|
|
28
|
+
if (this.show) {
|
|
29
|
+
this.close();
|
|
30
|
+
}
|
|
31
|
+
}, this.autoCloseModel.interval);
|
|
32
|
+
// for animation purpose
|
|
33
|
+
setTimeout(() => this.show = true);
|
|
34
|
+
}
|
|
35
|
+
close() {
|
|
36
|
+
this.show = false;
|
|
37
|
+
this.destroy = true;
|
|
38
|
+
this.closed.emit();
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
NotificationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: NotificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
42
|
+
NotificationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: NotificationComponent, selector: "sfc-notification", inputs: { showClose: "showClose", autoCloseModel: "autoCloseModel", type: "type", model: "model", content: "content" }, outputs: { closed: "closed", buttonClicked: "buttonClicked" }, host: { properties: { "class": "this.type" } }, queries: [{ propertyName: "templates", predicate: TemplateReferenceDirective, read: TemplateReferenceDirective }], ngImport: i0, template: "<div class=\"container\" [sfcDestroyParent]=\"destroy\" [delay]=\"DESTROY_HOST_INTERVAL\">\r\n <div class=\"notification\" [sfcShowHideElement]=\"show\">\r\n <sfc-close *ngIf=\"showClose\" (click)=\"close()\"></sfc-close>\r\n\r\n <sfc-template-content [referenceContent]=\"content\" [templatesContent]=\"templates\"\r\n [templateType]=\"NotificationTemplate.Content\" [defaultContent]=\"defaultContent\">\r\n </sfc-template-content>\r\n\r\n <ng-template #defaultContent>\r\n <sfc-notification-content [type]=\"type\" [model]=\"model\" (buttonClicked)=\"buttonClicked.emit()\">\r\n </sfc-notification-content>\r\n </ng-template>\r\n </div>\r\n</div>", styles: [":host{display:inline-block}:host .container .notification{border-radius:1.25em;box-shadow:5px 5px 20px #656d78;padding:1em;display:flex;justify-content:center;align-items:center;flex-direction:column;color:#f5f7fa}:host .container .notification sfc-close{align-self:end}:host .container .notification ::ng-deep sfc-close{color:#f5f7fa}:host .container .notification ::ng-deep sfc-close:hover{color:#fff}:host.info .container .notification{background:linear-gradient(to bottom right,#4fc1e9 40%,#4a89dc 100%)}:host.success .container .notification{background:linear-gradient(to bottom right,#b0db7d 40%,#99dbb4 100%)}:host.failed .container .notification{background:linear-gradient(to bottom left,#ef8d9c 40%,#ffc39e 100%)}\n"], components: [{ type: i1.CloseComponent, selector: "sfc-close" }, { type: i1.TemplateContentComponent, selector: "sfc-template-content", inputs: ["contextData", "referenceContent", "templateType", "templatesContent", "defaultContent"] }, { type: i2.NotificationContentComponent, selector: "sfc-notification-content", inputs: ["type", "model"], outputs: ["buttonClicked"] }], directives: [{ type: i1.DestroyParentDirective, selector: "[sfcDestroyParent]", inputs: ["sfcDestroyParent", "delay"] }, { type: i1.ShowHideElementDirective, selector: "[sfcShowHideElement]", inputs: ["sfcShowHideElement", "delay"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: NotificationComponent, decorators: [{
|
|
44
|
+
type: Component,
|
|
45
|
+
args: [{ selector: 'sfc-notification', template: "<div class=\"container\" [sfcDestroyParent]=\"destroy\" [delay]=\"DESTROY_HOST_INTERVAL\">\r\n <div class=\"notification\" [sfcShowHideElement]=\"show\">\r\n <sfc-close *ngIf=\"showClose\" (click)=\"close()\"></sfc-close>\r\n\r\n <sfc-template-content [referenceContent]=\"content\" [templatesContent]=\"templates\"\r\n [templateType]=\"NotificationTemplate.Content\" [defaultContent]=\"defaultContent\">\r\n </sfc-template-content>\r\n\r\n <ng-template #defaultContent>\r\n <sfc-notification-content [type]=\"type\" [model]=\"model\" (buttonClicked)=\"buttonClicked.emit()\">\r\n </sfc-notification-content>\r\n </ng-template>\r\n </div>\r\n</div>", styles: [":host{display:inline-block}:host .container .notification{border-radius:1.25em;box-shadow:5px 5px 20px #656d78;padding:1em;display:flex;justify-content:center;align-items:center;flex-direction:column;color:#f5f7fa}:host .container .notification sfc-close{align-self:end}:host .container .notification ::ng-deep sfc-close{color:#f5f7fa}:host .container .notification ::ng-deep sfc-close:hover{color:#fff}:host.info .container .notification{background:linear-gradient(to bottom right,#4fc1e9 40%,#4a89dc 100%)}:host.success .container .notification{background:linear-gradient(to bottom right,#b0db7d 40%,#99dbb4 100%)}:host.failed .container .notification{background:linear-gradient(to bottom left,#ef8d9c 40%,#ffc39e 100%)}\n"] }]
|
|
46
|
+
}], propDecorators: { showClose: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], autoCloseModel: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], type: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}, {
|
|
53
|
+
type: HostBinding,
|
|
54
|
+
args: ['class']
|
|
55
|
+
}], model: [{
|
|
56
|
+
type: Input
|
|
57
|
+
}], content: [{
|
|
58
|
+
type: Input
|
|
59
|
+
}], closed: [{
|
|
60
|
+
type: Output
|
|
61
|
+
}], buttonClicked: [{
|
|
62
|
+
type: Output
|
|
63
|
+
}], templates: [{
|
|
64
|
+
type: ContentChildren,
|
|
65
|
+
args: [TemplateReferenceDirective, { read: TemplateReferenceDirective }]
|
|
66
|
+
}] } });
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZmMtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUEwQixNQUFNLGVBQWUsQ0FBQztBQUNySSxPQUFPLEVBQUUsU0FBUyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7O0FBUWxFLE1BQU0sT0FBTyxxQkFBcUI7SUFMbEM7UUFPbUIsZ0NBQTJCLEdBQUcsSUFBSSxDQUFDO1FBRTNDLDBCQUFxQixHQUFHLEdBQUcsQ0FBQztRQUVyQyx5QkFBb0IsR0FBRyxvQkFBb0IsQ0FBQztRQUc1QyxjQUFTLEdBQVksSUFBSSxDQUFDO1FBRzFCLG1CQUFjLEdBQWdDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFJN0csU0FBSSxHQUFxQixnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7UUFHL0MsVUFBSyxHQUE4QixFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQU14RCxXQUFNLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFHdEQsa0JBQWEsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUs3RCxZQUFPLEdBQVksS0FBSyxDQUFDO1FBRXpCLFNBQUksR0FBWSxLQUFLLENBQUM7S0FzQnZCO0lBcEJDLFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDO1lBQzFDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQztRQUVsRSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTztZQUM3QixVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtvQkFDYixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7aUJBQ2Q7WUFDSCxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVuQyx3QkFBd0I7UUFDeEIsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7O2tIQXhEVSxxQkFBcUI7c0dBQXJCLHFCQUFxQix5VEE4QmYsMEJBQTBCLFFBQVUsMEJBQTBCLDZCQzFDakYsb3RCQWFNOzJGRERPLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxrQkFBa0I7OEJBYTVCLFNBQVM7c0JBRFIsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBS04sSUFBSTtzQkFGSCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLE9BQU87Z0JBSXBCLEtBQUs7c0JBREosS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxNQUFNO2dCQUlQLGFBQWE7c0JBRFosTUFBTTtnQkFJUCxTQUFTO3NCQURSLGVBQWU7dUJBQUMsMEJBQTBCLEVBQUUsRUFBRSxJQUFJLEVBQUUsMEJBQTBCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBRdWVyeUxpc3QsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGlzRGVmaW5lZCwgVGVtcGxhdGVSZWZlcmVuY2VEaXJlY3RpdmUgfSBmcm9tICduZ3gtc2ZjLWNvbW1vbic7XHJcbmltcG9ydCB7IElOb3RpZmljYXRpb25BdXRvQ2xvc2VNb2RlbCB9IGZyb20gJy4vbm90aWZpY2F0aW9uLWF1dG8tY2xvc2UubW9kZWwnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25UZW1wbGF0ZSB9IGZyb20gJy4vZW51bXMvbm90aWZpY2F0aW9uLXRlbXBsYXRlLmVudW0nO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25UeXBlIH0gZnJvbSAnLi9lbnVtcy9ub3RpZmljYXRpb24tdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgSU5vdGlmaWNhdGlvbkNvbnRlbnRNb2RlbCB9IGZyb20gJy4vcGFydHMvY29udGVudC9ub3RpZmljYXRpb24tY29udGVudC5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NmYy1ub3RpZmljYXRpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9ub3RpZmljYXRpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL25vdGlmaWNhdGlvbi5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IEFVVE9fQ0xPU0VfSU5URVJWQUxfREVGQVVMVCA9IDUwMDA7XHJcblxyXG4gIHJlYWRvbmx5IERFU1RST1lfSE9TVF9JTlRFUlZBTCA9IDUwMDtcclxuXHJcbiAgTm90aWZpY2F0aW9uVGVtcGxhdGUgPSBOb3RpZmljYXRpb25UZW1wbGF0ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBzaG93Q2xvc2U6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGF1dG9DbG9zZU1vZGVsOiBJTm90aWZpY2F0aW9uQXV0b0Nsb3NlTW9kZWwgPSB7IGVuYWJsZWQ6IGZhbHNlLCBpbnRlcnZhbDogdGhpcy5BVVRPX0NMT1NFX0lOVEVSVkFMX0RFRkFVTFQgfTtcclxuXHJcbiAgQElucHV0KClcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcclxuICB0eXBlOiBOb3RpZmljYXRpb25UeXBlID0gTm90aWZpY2F0aW9uVHlwZS5JbmZvO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIG1vZGVsOiBJTm90aWZpY2F0aW9uQ29udGVudE1vZGVsID0geyBzaG93QnV0dG9uOiB0cnVlIH07XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgY29udGVudD86IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGNsb3NlZDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBidXR0b25DbGlja2VkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIEBDb250ZW50Q2hpbGRyZW4oVGVtcGxhdGVSZWZlcmVuY2VEaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWZlcmVuY2VEaXJlY3RpdmUgfSlcclxuICB0ZW1wbGF0ZXM6IFF1ZXJ5TGlzdDxUZW1wbGF0ZVJlZmVyZW5jZURpcmVjdGl2ZT4gfCB1bmRlZmluZWQ7XHJcblxyXG4gIGRlc3Ryb3k6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgc2hvdzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICghaXNEZWZpbmVkKHRoaXMuYXV0b0Nsb3NlTW9kZWwuaW50ZXJ2YWwpKVxyXG4gICAgICB0aGlzLmF1dG9DbG9zZU1vZGVsLmludGVydmFsID0gdGhpcy5BVVRPX0NMT1NFX0lOVEVSVkFMX0RFRkFVTFQ7XHJcblxyXG4gICAgaWYgKHRoaXMuYXV0b0Nsb3NlTW9kZWwuZW5hYmxlZClcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMuc2hvdykge1xyXG4gICAgICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSwgdGhpcy5hdXRvQ2xvc2VNb2RlbC5pbnRlcnZhbCk7XHJcblxyXG4gICAgLy8gZm9yIGFuaW1hdGlvbiBwdXJwb3NlXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2hvdyA9IHRydWUpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoKSB7XHJcbiAgICB0aGlzLnNob3cgPSBmYWxzZTtcclxuICAgIHRoaXMuZGVzdHJveSA9IHRydWU7XHJcbiAgICB0aGlzLmNsb3NlZC5lbWl0KCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXJcIiBbc2ZjRGVzdHJveVBhcmVudF09XCJkZXN0cm95XCIgW2RlbGF5XT1cIkRFU1RST1lfSE9TVF9JTlRFUlZBTFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvblwiIFtzZmNTaG93SGlkZUVsZW1lbnRdPVwic2hvd1wiPlxyXG4gICAgICAgIDxzZmMtY2xvc2UgKm5nSWY9XCJzaG93Q2xvc2VcIiAoY2xpY2spPVwiY2xvc2UoKVwiPjwvc2ZjLWNsb3NlPlxyXG5cclxuICAgICAgICA8c2ZjLXRlbXBsYXRlLWNvbnRlbnQgW3JlZmVyZW5jZUNvbnRlbnRdPVwiY29udGVudFwiIFt0ZW1wbGF0ZXNDb250ZW50XT1cInRlbXBsYXRlc1wiXHJcbiAgICAgICAgICAgIFt0ZW1wbGF0ZVR5cGVdPVwiTm90aWZpY2F0aW9uVGVtcGxhdGUuQ29udGVudFwiIFtkZWZhdWx0Q29udGVudF09XCJkZWZhdWx0Q29udGVudFwiPlxyXG4gICAgICAgIDwvc2ZjLXRlbXBsYXRlLWNvbnRlbnQ+XHJcblxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdENvbnRlbnQ+XHJcbiAgICAgICAgICAgIDxzZmMtbm90aWZpY2F0aW9uLWNvbnRlbnQgW3R5cGVdPVwidHlwZVwiIFttb2RlbF09XCJtb2RlbFwiIChidXR0b25DbGlja2VkKT1cImJ1dHRvbkNsaWNrZWQuZW1pdCgpXCI+XHJcbiAgICAgICAgICAgIDwvc2ZjLW5vdGlmaWNhdGlvbi1jb250ZW50PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
|
|
2
|
+
import { ButtonType, isNullOrEmptyString } from 'ngx-sfc-common';
|
|
3
|
+
import { NotificationType } from '../../enums/notification-type.enum';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "ngx-sfc-common";
|
|
6
|
+
import * as i2 from "@angular/common";
|
|
7
|
+
export class NotificationContentComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.ButtonType = ButtonType;
|
|
10
|
+
this.type = NotificationType.Info;
|
|
11
|
+
this.model = {};
|
|
12
|
+
this.buttonClicked = new EventEmitter();
|
|
13
|
+
}
|
|
14
|
+
get showImage() {
|
|
15
|
+
return !isNullOrEmptyString(this.model.image) && isNullOrEmptyString(this.model.icon);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
NotificationContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: NotificationContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
+
NotificationContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: NotificationContentComponent, selector: "sfc-notification-content", inputs: { type: "type", model: "model" }, outputs: { buttonClicked: "buttonClicked" }, host: { properties: { "class": "this.type" } }, ngImport: i0, template: "<div class=\"container\">\r\n <div class=\"illustration\">\r\n <div *ngIf=\"model.icon\">\r\n <i class=\"{{model.icon}}\"></i>\r\n </div>\r\n <div *ngIf=\"showImage\">\r\n <img [src]=\"model.image\">\r\n </div>\r\n </div>\r\n <div class=\"message\">\r\n <h1>{{model.title}}</h1>\r\n <p>{{model.subTitle}}</p>\r\n </div>\r\n <div *ngIf=\"model.showButton\" class=\"action\">\r\n <sfc-button text=\"{{model.buttonText || type}}\" [types]=\"[ButtonType.Rounded, ButtonType.Filled]\"\r\n (click)=\"buttonClicked.emit()\"></sfc-button>\r\n </div>\r\n</div>", styles: [":host{display:inline-block;font-size:3em}:host.info ::ng-deep sfc-button .button.filled{color:#4fc1e9!important}:host.success ::ng-deep sfc-button .button.filled{color:#4ec07d!important}:host.failed ::ng-deep sfc-button .button.filled{color:#e96075!important}:host .container{display:flex;flex-direction:column;justify-content:center;align-items:center}:host .container .illustration{color:#f5f7fa;display:flex;justify-content:center;align-items:center;font-size:.7em}:host .container .illustration img{object-fit:contain;width:3em;height:3em}:host .container .message{text-align:center;-webkit-user-select:none;user-select:none}:host .container .message h1{font-size:.4em;color:#f5f7fa;font-weight:700;letter-spacing:.3em;text-transform:uppercase}:host .container .message p{font-size:.2em;font-weight:100;color:#434a54;letter-spacing:.1em}:host .container .action{font-size:.25em}:host .container .action ::ng-deep sfc-button{transition:transform .3s ease-in-out}:host .container .action ::ng-deep sfc-button .button.filled{background:#f5f7fa;border:solid .125em #f5f7fa}:host .container .action ::ng-deep sfc-button:hover{transform:scale(1.05)}\n"], components: [{ type: i1.ButtonComponent, selector: "sfc-button", inputs: ["text", "iconBefore", "iconAfter", "disabled", "types"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: NotificationContentComponent, decorators: [{
|
|
21
|
+
type: Component,
|
|
22
|
+
args: [{ selector: 'sfc-notification-content', template: "<div class=\"container\">\r\n <div class=\"illustration\">\r\n <div *ngIf=\"model.icon\">\r\n <i class=\"{{model.icon}}\"></i>\r\n </div>\r\n <div *ngIf=\"showImage\">\r\n <img [src]=\"model.image\">\r\n </div>\r\n </div>\r\n <div class=\"message\">\r\n <h1>{{model.title}}</h1>\r\n <p>{{model.subTitle}}</p>\r\n </div>\r\n <div *ngIf=\"model.showButton\" class=\"action\">\r\n <sfc-button text=\"{{model.buttonText || type}}\" [types]=\"[ButtonType.Rounded, ButtonType.Filled]\"\r\n (click)=\"buttonClicked.emit()\"></sfc-button>\r\n </div>\r\n</div>", styles: [":host{display:inline-block;font-size:3em}:host.info ::ng-deep sfc-button .button.filled{color:#4fc1e9!important}:host.success ::ng-deep sfc-button .button.filled{color:#4ec07d!important}:host.failed ::ng-deep sfc-button .button.filled{color:#e96075!important}:host .container{display:flex;flex-direction:column;justify-content:center;align-items:center}:host .container .illustration{color:#f5f7fa;display:flex;justify-content:center;align-items:center;font-size:.7em}:host .container .illustration img{object-fit:contain;width:3em;height:3em}:host .container .message{text-align:center;-webkit-user-select:none;user-select:none}:host .container .message h1{font-size:.4em;color:#f5f7fa;font-weight:700;letter-spacing:.3em;text-transform:uppercase}:host .container .message p{font-size:.2em;font-weight:100;color:#434a54;letter-spacing:.1em}:host .container .action{font-size:.25em}:host .container .action ::ng-deep sfc-button{transition:transform .3s ease-in-out}:host .container .action ::ng-deep sfc-button .button.filled{background:#f5f7fa;border:solid .125em #f5f7fa}:host .container .action ::ng-deep sfc-button:hover{transform:scale(1.05)}\n"] }]
|
|
23
|
+
}], propDecorators: { type: [{
|
|
24
|
+
type: Input
|
|
25
|
+
}, {
|
|
26
|
+
type: HostBinding,
|
|
27
|
+
args: ['class']
|
|
28
|
+
}], model: [{
|
|
29
|
+
type: Input
|
|
30
|
+
}], buttonClicked: [{
|
|
31
|
+
type: Output
|
|
32
|
+
}] } });
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNmYy1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb24vcGFydHMvY29udGVudC9ub3RpZmljYXRpb24tY29udGVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9wYXJ0cy9jb250ZW50L25vdGlmaWNhdGlvbi1jb250ZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxVQUFVLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7OztBQVF0RSxNQUFNLE9BQU8sNEJBQTRCO0lBTHpDO1FBT0UsZUFBVSxHQUFHLFVBQVUsQ0FBQztRQUl4QixTQUFJLEdBQXFCLGdCQUFnQixDQUFDLElBQUksQ0FBQztRQUcvQyxVQUFLLEdBQThCLEVBQUUsQ0FBQztRQUd0QyxrQkFBYSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO0tBSzlEO0lBSEMsSUFBSSxTQUFTO1FBQ1gsT0FBTyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4RixDQUFDOzt5SEFoQlUsNEJBQTRCOzZHQUE1Qiw0QkFBNEIsdU1DVnpDLDZvQkFpQk07MkZEUE8sNEJBQTRCO2tCQUx4QyxTQUFTOytCQUNFLDBCQUEwQjs4QkFVcEMsSUFBSTtzQkFGSCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLE9BQU87Z0JBSXBCLEtBQUs7c0JBREosS0FBSztnQkFJTixhQUFhO3NCQURaLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQnV0dG9uVHlwZSwgaXNOdWxsT3JFbXB0eVN0cmluZyB9IGZyb20gJ25neC1zZmMtY29tbW9uJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uVHlwZSB9IGZyb20gJy4uLy4uL2VudW1zL25vdGlmaWNhdGlvbi10eXBlLmVudW0nO1xyXG5pbXBvcnQgeyBJTm90aWZpY2F0aW9uQ29udGVudE1vZGVsIH0gZnJvbSAnLi9ub3RpZmljYXRpb24tY29udGVudC5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NmYy1ub3RpZmljYXRpb24tY29udGVudCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL25vdGlmaWNhdGlvbi1jb250ZW50LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9ub3RpZmljYXRpb24tY29udGVudC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25Db250ZW50Q29tcG9uZW50IHtcclxuXHJcbiAgQnV0dG9uVHlwZSA9IEJ1dHRvblR5cGU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXHJcbiAgdHlwZTogTm90aWZpY2F0aW9uVHlwZSA9IE5vdGlmaWNhdGlvblR5cGUuSW5mbztcclxuXHJcbiAgQElucHV0KClcclxuICBtb2RlbDogSU5vdGlmaWNhdGlvbkNvbnRlbnRNb2RlbCA9IHt9O1xyXG5cclxuICBAT3V0cHV0KClcclxuICBidXR0b25DbGlja2VkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIGdldCBzaG93SW1hZ2UoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gIWlzTnVsbE9yRW1wdHlTdHJpbmcodGhpcy5tb2RlbC5pbWFnZSkgJiYgaXNOdWxsT3JFbXB0eVN0cmluZyh0aGlzLm1vZGVsLmljb24pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaWxsdXN0cmF0aW9uXCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cIm1vZGVsLmljb25cIj5cclxuICAgICAgICAgICAgPGkgY2xhc3M9XCJ7e21vZGVsLmljb259fVwiPjwvaT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwic2hvd0ltYWdlXCI+XHJcbiAgICAgICAgICAgIDxpbWcgW3NyY109XCJtb2RlbC5pbWFnZVwiPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZVwiPlxyXG4gICAgICAgIDxoMT57e21vZGVsLnRpdGxlfX08L2gxPlxyXG4gICAgICAgIDxwPnt7bW9kZWwuc3ViVGl0bGV9fTwvcD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cIm1vZGVsLnNob3dCdXR0b25cIiBjbGFzcz1cImFjdGlvblwiPlxyXG4gICAgICAgIDxzZmMtYnV0dG9uIHRleHQ9XCJ7e21vZGVsLmJ1dHRvblRleHQgfHwgdHlwZX19XCIgW3R5cGVzXT1cIltCdXR0b25UeXBlLlJvdW5kZWQsIEJ1dHRvblR5cGUuRmlsbGVkXVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJidXR0b25DbGlja2VkLmVtaXQoKVwiPjwvc2ZjLWJ1dHRvbj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWNvbnRlbnQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9wYXJ0cy9jb250ZW50L25vdGlmaWNhdGlvbi1jb250ZW50Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElOb3RpZmljYXRpb25Db250ZW50TW9kZWwge1xyXG4gICAgdGl0bGU/OiBzdHJpbmc7XHJcbiAgICBzdWJUaXRsZT86IHN0cmluZztcclxuICAgIHNob3dCdXR0b24/OiBib29sZWFuO1xyXG4gICAgYnV0dG9uVGV4dD86IHN0cmluZztcclxuICAgIGljb24/OiBzdHJpbmc7XHJcbiAgICBpbWFnZT86IHN0cmluZztcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Component, HostBinding } from '@angular/core';
|
|
2
|
+
import { CommonConstants, getCssLikeValue, UIConstants } from 'ngx-sfc-common';
|
|
3
|
+
import { ProgressBaseComponent } from '../progress.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
export class ProgressCircleComponent extends ProgressBaseComponent {
|
|
7
|
+
get reversed() {
|
|
8
|
+
return this.progress > 50;
|
|
9
|
+
}
|
|
10
|
+
get transformRotate() {
|
|
11
|
+
return `rotate(${getCssLikeValue((this.progress * 360) / CommonConstants.FULL_PERCENTAGE, UIConstants.CSS_DEGREES)})`;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
ProgressCircleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ProgressCircleComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
15
|
+
ProgressCircleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: ProgressCircleComponent, selector: "sfc-progress-circle", host: { properties: { "class.reversed": "this.reversed" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"container\" [style.background]=\"background\">\r\n <span>{{progress}}</span>\r\n <div class=\"circle\">\r\n <div class=\"bar\" [ngStyle]=\"{'transform': transformRotate, \r\n 'border-color': getColor(progress)}\"></div>\r\n <div class=\"fill\" [ngStyle]=\"{'border-color': getColor(progress)}\"></div>\r\n </div>\r\n</div>", styles: [":host.reversed .container .circle .fill,:host .container .circle .bar{position:absolute;border:.09em solid;clip:rect(0,.5em,1em,0);border-radius:50%;width:.82em;height:.82em}:host .container{position:relative;border-radius:50%;background:#e6e9ed;font-size:5em;text-align:initial;width:1em;height:1em}:host .container:after{position:absolute;top:.082em;left:.09em;content:\" \";border-radius:50%;background:#fff;transition-property:all;transition-duration:.2s;transition-timing-function:ease-in;width:.83em;height:.83em}:host .container span{position:absolute;z-index:1;width:5em;line-height:5em;font-size:.2em;color:#545e61;font-weight:700;text-align:center;white-space:nowrap;-webkit-user-select:none;user-select:none;transition-property:all;transition-duration:.2s;transition-timing-function:ease-out}:host .container:hover:after{top:.07em;left:.07em;width:.86em;height:.86em}:host .container:hover span{width:3.33em;line-height:3.33em;font-size:.3em}:host .container .circle{position:absolute;clip:rect(0,1em,1em,.5em);width:1em;height:1em}:host .container .circle .bar{transition:transform .2s ease-out,border-color .2s ease-out}:host.reversed .container .circle{clip:rect(auto,auto,auto,auto)}:host.reversed .container .circle .fill{transform:rotate(180deg)}\n"], directives: [{ type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ProgressCircleComponent, decorators: [{
|
|
17
|
+
type: Component,
|
|
18
|
+
args: [{ selector: 'sfc-progress-circle', template: "<div class=\"container\" [style.background]=\"background\">\r\n <span>{{progress}}</span>\r\n <div class=\"circle\">\r\n <div class=\"bar\" [ngStyle]=\"{'transform': transformRotate, \r\n 'border-color': getColor(progress)}\"></div>\r\n <div class=\"fill\" [ngStyle]=\"{'border-color': getColor(progress)}\"></div>\r\n </div>\r\n</div>", styles: [":host.reversed .container .circle .fill,:host .container .circle .bar{position:absolute;border:.09em solid;clip:rect(0,.5em,1em,0);border-radius:50%;width:.82em;height:.82em}:host .container{position:relative;border-radius:50%;background:#e6e9ed;font-size:5em;text-align:initial;width:1em;height:1em}:host .container:after{position:absolute;top:.082em;left:.09em;content:\" \";border-radius:50%;background:#fff;transition-property:all;transition-duration:.2s;transition-timing-function:ease-in;width:.83em;height:.83em}:host .container span{position:absolute;z-index:1;width:5em;line-height:5em;font-size:.2em;color:#545e61;font-weight:700;text-align:center;white-space:nowrap;-webkit-user-select:none;user-select:none;transition-property:all;transition-duration:.2s;transition-timing-function:ease-out}:host .container:hover:after{top:.07em;left:.07em;width:.86em;height:.86em}:host .container:hover span{width:3.33em;line-height:3.33em;font-size:.3em}:host .container .circle{position:absolute;clip:rect(0,1em,1em,.5em);width:1em;height:1em}:host .container .circle .bar{transition:transform .2s ease-out,border-color .2s ease-out}:host.reversed .container .circle{clip:rect(auto,auto,auto,auto)}:host.reversed .container .circle .fill{transform:rotate(180deg)}\n"] }]
|
|
19
|
+
}], propDecorators: { reversed: [{
|
|
20
|
+
type: HostBinding,
|
|
21
|
+
args: ['class.reversed']
|
|
22
|
+
}] } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtY2lyY2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZmMtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvcHJvZ3Jlc3MvY2lyY2xlL3Byb2dyZXNzLWNpcmNsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Byb2dyZXNzL2NpcmNsZS9wcm9ncmVzcy1jaXJjbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7OztBQU85RCxNQUFNLE9BQU8sdUJBQ1gsU0FBUSxxQkFBcUI7SUFFN0IsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sVUFBVSxlQUFlLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxlQUFlLEVBQ3RGLFdBQVcsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO0lBQ2hDLENBQUM7O29IQVhVLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLCtJQ1RwQyxtWEFPTTsyRkRFTyx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0UscUJBQXFCOzhCQVEzQixRQUFRO3NCQURYLFdBQVc7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Db25zdGFudHMsIGdldENzc0xpa2VWYWx1ZSwgVUlDb25zdGFudHMgfSBmcm9tICduZ3gtc2ZjLWNvbW1vbic7XHJcbmltcG9ydCB7IFByb2dyZXNzQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL3Byb2dyZXNzLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NmYy1wcm9ncmVzcy1jaXJjbGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9ncmVzcy1jaXJjbGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3Byb2dyZXNzLWNpcmNsZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQcm9ncmVzc0NpcmNsZUNvbXBvbmVudFxyXG4gIGV4dGVuZHMgUHJvZ3Jlc3NCYXNlQ29tcG9uZW50IHtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5yZXZlcnNlZCcpXHJcbiAgZ2V0IHJldmVyc2VkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMucHJvZ3Jlc3MgPiA1MDtcclxuICB9XHJcblxyXG4gIGdldCB0cmFuc2Zvcm1Sb3RhdGUoKSB7XHJcbiAgICByZXR1cm4gYHJvdGF0ZSgke2dldENzc0xpa2VWYWx1ZSgodGhpcy5wcm9ncmVzcyAqIDM2MCkgLyBDb21tb25Db25zdGFudHMuRlVMTF9QRVJDRU5UQUdFLFxyXG4gICAgICBVSUNvbnN0YW50cy5DU1NfREVHUkVFUyl9KWA7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXJcIiBbc3R5bGUuYmFja2dyb3VuZF09XCJiYWNrZ3JvdW5kXCI+XHJcbiAgICA8c3Bhbj57e3Byb2dyZXNzfX08L3NwYW4+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2lyY2xlXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJhclwiIFtuZ1N0eWxlXT1cInsndHJhbnNmb3JtJzogdHJhbnNmb3JtUm90YXRlLCBcclxuICAgICAgICAgICAgJ2JvcmRlci1jb2xvcic6IGdldENvbG9yKHByb2dyZXNzKX1cIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmlsbFwiIFtuZ1N0eWxlXT1cInsnYm9yZGVyLWNvbG9yJzogZ2V0Q29sb3IocHJvZ3Jlc3MpfVwiPjwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { CommonConstants, getCssLikeValue, isNullOrEmptyString, UIConstants } from 'ngx-sfc-common';
|
|
3
|
+
import { ProgressBaseComponent } from '../progress.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
export class ProgressLineComponent extends ProgressBaseComponent {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.total = CommonConstants.FULL_PERCENTAGE;
|
|
10
|
+
this.hideEnd = false;
|
|
11
|
+
}
|
|
12
|
+
ngOnInit() {
|
|
13
|
+
if (this.progress > this.total)
|
|
14
|
+
this.progress = this.total = CommonConstants.FULL_PERCENTAGE;
|
|
15
|
+
}
|
|
16
|
+
get label() {
|
|
17
|
+
return isNullOrEmptyString(this.labelEnd) ? `${this.progress}` : this.labelEnd;
|
|
18
|
+
}
|
|
19
|
+
get progressStyles() {
|
|
20
|
+
return {
|
|
21
|
+
width: getCssLikeValue((this.progress / this.total) * CommonConstants.FULL_PERCENTAGE, UIConstants.CSS_PERCENTAGE),
|
|
22
|
+
backgroundColor: this.getColor(this.progress)
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
ProgressLineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ProgressLineComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
+
ProgressLineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: ProgressLineComponent, selector: "sfc-progress-line", inputs: { total: "total", labelStart: "labelStart", labelEnd: "labelEnd", hideEnd: "hideEnd" }, usesInheritance: true, ngImport: i0, template: "<div class=\"container\">\r\n <div class=\"labels\">\r\n <span>{{labelStart}}</span>\r\n <span *ngIf=\"!hideEnd\">{{label}}</span>\r\n </div>\r\n <div class=\"progress-bar\" [style.background]=\"background\">\r\n <div class=\"progress\" [ngStyle]=\"progressStyles\"></div>\r\n </div>\r\n</div>", styles: [":host{width:100%}:host .container .progress-bar{border-radius:.5em;background:#e6e9ed}:host .container .progress-bar .progress{height:.4em;border-radius:.5em;background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,.05));transition:.4s linear;transition-property:width,background-color}:host .container .labels{display:flex;justify-content:space-between;margin-bottom:.3em;font-weight:700;-webkit-user-select:none;user-select:none;font-size:.8em}:host-context(.sfc-default-theme) :host .container .labels{color:#545e61}:host-context(.sfc-dark-theme) :host .container .labels{color:#ccd1d9}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ProgressLineComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{ selector: 'sfc-progress-line', template: "<div class=\"container\">\r\n <div class=\"labels\">\r\n <span>{{labelStart}}</span>\r\n <span *ngIf=\"!hideEnd\">{{label}}</span>\r\n </div>\r\n <div class=\"progress-bar\" [style.background]=\"background\">\r\n <div class=\"progress\" [ngStyle]=\"progressStyles\"></div>\r\n </div>\r\n</div>", styles: [":host{width:100%}:host .container .progress-bar{border-radius:.5em;background:#e6e9ed}:host .container .progress-bar .progress{height:.4em;border-radius:.5em;background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,.05));transition:.4s linear;transition-property:width,background-color}:host .container .labels{display:flex;justify-content:space-between;margin-bottom:.3em;font-weight:700;-webkit-user-select:none;user-select:none;font-size:.8em}:host-context(.sfc-default-theme) :host .container .labels{color:#545e61}:host-context(.sfc-dark-theme) :host .container .labels{color:#ccd1d9}\n"] }]
|
|
31
|
+
}], propDecorators: { total: [{
|
|
32
|
+
type: Input
|
|
33
|
+
}], labelStart: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}], labelEnd: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}], hideEnd: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}] } });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtbGluZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Byb2dyZXNzL2xpbmUvcHJvZ3Jlc3MtbGluZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Byb2dyZXNzL2xpbmUvcHJvZ3Jlc3MtbGluZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQ0wsZUFBZSxFQUFFLGVBQWUsRUFDaEMsbUJBQW1CLEVBQUUsV0FBVyxFQUNqQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFPOUQsTUFBTSxPQUFPLHFCQUNYLFNBQVEscUJBQXFCO0lBTi9COztRQVVFLFVBQUssR0FBVyxlQUFlLENBQUMsZUFBZSxDQUFDO1FBU2hELFlBQU8sR0FBWSxLQUFLLENBQUM7S0FrQjFCO0lBaEJDLFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUs7WUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLGVBQWUsQ0FBQyxlQUFlLENBQUM7SUFDakUsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sbUJBQW1CLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQWtCLENBQUM7SUFDM0YsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPO1lBQ0wsS0FBSyxFQUFFLGVBQWUsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLGVBQWUsQ0FBQyxlQUFlLEVBQ25GLFdBQVcsQ0FBQyxjQUFjLENBQUM7WUFDN0IsZUFBZSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztTQUM5QyxDQUFBO0lBQ0gsQ0FBQzs7a0hBL0JVLHFCQUFxQjtzR0FBckIscUJBQXFCLGdMQ1psQyx3VUFRTTsyRkRJTyxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsbUJBQW1COzhCQVM3QixLQUFLO3NCQURKLEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFFBQVE7c0JBRFAsS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBDb21tb25Db25zdGFudHMsIGdldENzc0xpa2VWYWx1ZSxcclxuICBpc051bGxPckVtcHR5U3RyaW5nLCBVSUNvbnN0YW50c1xyXG59IGZyb20gJ25neC1zZmMtY29tbW9uJztcclxuaW1wb3J0IHsgUHJvZ3Jlc3NCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vcHJvZ3Jlc3MuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ZjLXByb2dyZXNzLWxpbmUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9ncmVzcy1saW5lLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wcm9ncmVzcy1saW5lLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFByb2dyZXNzTGluZUNvbXBvbmVudFxyXG4gIGV4dGVuZHMgUHJvZ3Jlc3NCYXNlQ29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHRvdGFsOiBudW1iZXIgPSBDb21tb25Db25zdGFudHMuRlVMTF9QRVJDRU5UQUdFO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGxhYmVsU3RhcnQ/OiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgbGFiZWxFbmQ/OiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgaGlkZUVuZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnByb2dyZXNzID4gdGhpcy50b3RhbClcclxuICAgICAgdGhpcy5wcm9ncmVzcyA9IHRoaXMudG90YWwgPSBDb21tb25Db25zdGFudHMuRlVMTF9QRVJDRU5UQUdFO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxhYmVsKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gaXNOdWxsT3JFbXB0eVN0cmluZyh0aGlzLmxhYmVsRW5kKSA/IGAke3RoaXMucHJvZ3Jlc3N9YCA6IHRoaXMubGFiZWxFbmQgYXMgc3RyaW5nO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHByb2dyZXNzU3R5bGVzKCkge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgd2lkdGg6IGdldENzc0xpa2VWYWx1ZSgodGhpcy5wcm9ncmVzcyAvIHRoaXMudG90YWwpICogQ29tbW9uQ29uc3RhbnRzLkZVTExfUEVSQ0VOVEFHRSxcclxuICAgICAgICBVSUNvbnN0YW50cy5DU1NfUEVSQ0VOVEFHRSksXHJcbiAgICAgIGJhY2tncm91bmRDb2xvcjogdGhpcy5nZXRDb2xvcih0aGlzLnByb2dyZXNzKVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibGFiZWxzXCI+XHJcbiAgICAgICAgPHNwYW4+e3tsYWJlbFN0YXJ0fX08L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gKm5nSWY9XCIhaGlkZUVuZFwiPnt7bGFiZWx9fTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInByb2dyZXNzLWJhclwiIFtzdHlsZS5iYWNrZ3JvdW5kXT1cImJhY2tncm91bmRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3NcIiBbbmdTdHlsZV09XCJwcm9ncmVzc1N0eWxlc1wiPjwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export var ProgressColor;
|
|
2
|
+
(function (ProgressColor) {
|
|
3
|
+
ProgressColor["MIN_LOW"] = "#f08d97";
|
|
4
|
+
ProgressColor["LOW"] = "#ED5565";
|
|
5
|
+
ProgressColor["MAX_LOW"] = "#DA4453";
|
|
6
|
+
ProgressColor["MIN_MEDIUM"] = "#dfc47f";
|
|
7
|
+
ProgressColor["MEDIUM"] = "#FFCE54";
|
|
8
|
+
ProgressColor["MAX_MEDIUM"] = "#FCBB42";
|
|
9
|
+
ProgressColor["MIN_HIGH"] = "#b5dd88";
|
|
10
|
+
ProgressColor["HIGH"] = "#A0D468";
|
|
11
|
+
ProgressColor["MAX_HIGH"] = "#8CC152";
|
|
12
|
+
})(ProgressColor || (ProgressColor = {}));
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtY29sb3IuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZmMtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvcHJvZ3Jlc3MvcHJvZ3Jlc3MtY29sb3IuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxhQVVYO0FBVkQsV0FBWSxhQUFhO0lBQ3JCLG9DQUFtQixDQUFBO0lBQ25CLGdDQUFlLENBQUE7SUFDZixvQ0FBbUIsQ0FBQTtJQUNuQix1Q0FBc0IsQ0FBQTtJQUN0QixtQ0FBa0IsQ0FBQTtJQUNsQix1Q0FBc0IsQ0FBQTtJQUN0QixxQ0FBb0IsQ0FBQTtJQUNwQixpQ0FBZ0IsQ0FBQTtJQUNoQixxQ0FBb0IsQ0FBQTtBQUN4QixDQUFDLEVBVlcsYUFBYSxLQUFiLGFBQWEsUUFVeEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBQcm9ncmVzc0NvbG9yIHtcclxuICAgIE1JTl9MT1cgPSAnI2YwOGQ5NycsXHJcbiAgICBMT1cgPSAnI0VENTU2NScsXHJcbiAgICBNQVhfTE9XID0gJyNEQTQ0NTMnLFxyXG4gICAgTUlOX01FRElVTSA9ICcjZGZjNDdmJyxcclxuICAgIE1FRElVTSA9ICcjRkZDRTU0JyxcclxuICAgIE1BWF9NRURJVU0gPSAnI0ZDQkI0MicsXHJcbiAgICBNSU5fSElHSCA9ICcjYjVkZDg4JyxcclxuICAgIEhJR0ggPSAnI0EwRDQ2OCcsXHJcbiAgICBNQVhfSElHSCA9ICcjOENDMTUyJyxcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Directive, Input } from "@angular/core";
|
|
2
|
+
import { ProgressColor } from "./progress-color.enum";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ProgressBaseComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.progress = 0;
|
|
7
|
+
this.getColor = this.getDefaultColor;
|
|
8
|
+
}
|
|
9
|
+
getDefaultColor(value) {
|
|
10
|
+
if (value < 12) {
|
|
11
|
+
return ProgressColor.MIN_LOW;
|
|
12
|
+
}
|
|
13
|
+
else if (value >= 12 && value < 24) {
|
|
14
|
+
return ProgressColor.LOW;
|
|
15
|
+
}
|
|
16
|
+
else if (value >= 24 && value < 36) {
|
|
17
|
+
return ProgressColor.MAX_LOW;
|
|
18
|
+
}
|
|
19
|
+
else if (value >= 36 && value < 48) {
|
|
20
|
+
return ProgressColor.MIN_MEDIUM;
|
|
21
|
+
}
|
|
22
|
+
else if (value >= 48 && value < 60) {
|
|
23
|
+
return ProgressColor.MEDIUM;
|
|
24
|
+
}
|
|
25
|
+
else if (value >= 60 && value < 72) {
|
|
26
|
+
return ProgressColor.MAX_MEDIUM;
|
|
27
|
+
}
|
|
28
|
+
else if (value >= 72 && value < 84) {
|
|
29
|
+
return ProgressColor.MIN_HIGH;
|
|
30
|
+
}
|
|
31
|
+
else if (value >= 84 && value < 96) {
|
|
32
|
+
return ProgressColor.HIGH;
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
return ProgressColor.MAX_HIGH;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
ProgressBaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ProgressBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
40
|
+
ProgressBaseComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.7", type: ProgressBaseComponent, inputs: { progress: "progress", background: "background", getColor: "getColor" }, ngImport: i0 });
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ProgressBaseComponent, decorators: [{
|
|
42
|
+
type: Directive
|
|
43
|
+
}], propDecorators: { progress: [{
|
|
44
|
+
type: Input
|
|
45
|
+
}], background: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}], getColor: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}] } });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNmYy1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9wcm9ncmVzcy9wcm9ncmVzcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUd0RCxNQUFNLE9BQWdCLHFCQUFxQjtJQUQzQztRQUlJLGFBQVEsR0FBVyxDQUFDLENBQUM7UUFNckIsYUFBUSxHQUE4QixJQUFJLENBQUMsZUFBZSxDQUFDO0tBdUI5RDtJQXJCRyxlQUFlLENBQUMsS0FBYTtRQUN6QixJQUFJLEtBQUssR0FBRyxFQUFFLEVBQUU7WUFDWixPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUM7U0FDaEM7YUFBTSxJQUFJLEtBQUssSUFBSSxFQUFFLElBQUksS0FBSyxHQUFHLEVBQUUsRUFBRTtZQUNsQyxPQUFPLGFBQWEsQ0FBQyxHQUFHLENBQUM7U0FDNUI7YUFBTSxJQUFJLEtBQUssSUFBSSxFQUFFLElBQUksS0FBSyxHQUFHLEVBQUUsRUFBRTtZQUNsQyxPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUM7U0FDaEM7YUFBTSxJQUFJLEtBQUssSUFBSSxFQUFFLElBQUksS0FBSyxHQUFHLEVBQUUsRUFBRTtZQUNsQyxPQUFPLGFBQWEsQ0FBQyxVQUFVLENBQUM7U0FDbkM7YUFBTSxJQUFJLEtBQUssSUFBSSxFQUFFLElBQUksS0FBSyxHQUFHLEVBQUUsRUFBRTtZQUNsQyxPQUFPLGFBQWEsQ0FBQyxNQUFNLENBQUM7U0FDL0I7YUFBTSxJQUFJLEtBQUssSUFBSSxFQUFFLElBQUksS0FBSyxHQUFHLEVBQUUsRUFBRTtZQUNsQyxPQUFPLGFBQWEsQ0FBQyxVQUFVLENBQUM7U0FDbkM7YUFBTSxJQUFJLEtBQUssSUFBSSxFQUFFLElBQUksS0FBSyxHQUFHLEVBQUUsRUFBRTtZQUNsQyxPQUFPLGFBQWEsQ0FBQyxRQUFRLENBQUM7U0FDakM7YUFBTSxJQUFJLEtBQUssSUFBSSxFQUFFLElBQUksS0FBSyxHQUFHLEVBQUUsRUFBRTtZQUNsQyxPQUFPLGFBQWEsQ0FBQyxJQUFJLENBQUM7U0FDN0I7YUFBTTtZQUNILE9BQU8sYUFBYSxDQUFDLFFBQVEsQ0FBQztTQUNqQztJQUNMLENBQUM7O2tIQS9CaUIscUJBQXFCO3NHQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFEMUMsU0FBUzs4QkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFFBQVE7c0JBRFAsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBQcm9ncmVzc0NvbG9yIH0gZnJvbSBcIi4vcHJvZ3Jlc3MtY29sb3IuZW51bVwiO1xyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBQcm9ncmVzc0Jhc2VDb21wb25lbnQge1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwcm9ncmVzczogbnVtYmVyID0gMDtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgYmFja2dyb3VuZD86IHN0cmluZztcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0Q29sb3I6ICh2YWx1ZTogbnVtYmVyKSA9PiBzdHJpbmcgPSB0aGlzLmdldERlZmF1bHRDb2xvcjtcclxuXHJcbiAgICBnZXREZWZhdWx0Q29sb3IodmFsdWU6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICAgICAgaWYgKHZhbHVlIDwgMTIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFByb2dyZXNzQ29sb3IuTUlOX0xPVztcclxuICAgICAgICB9IGVsc2UgaWYgKHZhbHVlID49IDEyICYmIHZhbHVlIDwgMjQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFByb2dyZXNzQ29sb3IuTE9XO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPj0gMjQgJiYgdmFsdWUgPCAzNikge1xyXG4gICAgICAgICAgICByZXR1cm4gUHJvZ3Jlc3NDb2xvci5NQVhfTE9XO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPj0gMzYgJiYgdmFsdWUgPCA0OCkge1xyXG4gICAgICAgICAgICByZXR1cm4gUHJvZ3Jlc3NDb2xvci5NSU5fTUVESVVNO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPj0gNDggJiYgdmFsdWUgPCA2MCkge1xyXG4gICAgICAgICAgICByZXR1cm4gUHJvZ3Jlc3NDb2xvci5NRURJVU07XHJcbiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSA+PSA2MCAmJiB2YWx1ZSA8IDcyKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBQcm9ncmVzc0NvbG9yLk1BWF9NRURJVU07XHJcbiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSA+PSA3MiAmJiB2YWx1ZSA8IDg0KSB7XHJcbiAgICAgICAgICAgIHJldHVybiBQcm9ncmVzc0NvbG9yLk1JTl9ISUdIO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPj0gODQgJiYgdmFsdWUgPCA5Nikge1xyXG4gICAgICAgICAgICByZXR1cm4gUHJvZ3Jlc3NDb2xvci5ISUdIO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiBQcm9ncmVzc0NvbG9yLk1BWF9ISUdIO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSJdfQ==
|