raise-common-lib-new 0.0.63 → 0.0.64
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/esm2022/lib/actions/toolbar/index.component.mjs +4 -3
- package/esm2022/lib/actions/toolbar-item/index.component.mjs +2 -2
- package/esm2022/lib/common-grid/grid-action/grid-action-item/grid-action-item.component.mjs +1 -1
- package/esm2022/lib/common-grid/grid-action/grid-action.component.mjs +3 -2
- package/esm2022/lib/common-grid/index.component.mjs +6 -3
- package/esm2022/lib/dashboard/api.mjs +33 -0
- package/esm2022/lib/dashboard/bar-charts/bar-charts.component.mjs +430 -0
- package/esm2022/lib/dashboard/bar-charts/utils.mjs +18 -0
- package/esm2022/lib/dashboard/dashboard-properties/data-mart-new/data-mart-new.component.mjs +442 -0
- package/esm2022/lib/dashboard/dashboard.service.mjs +295 -0
- package/esm2022/lib/dashboard/dashboardPorlets.service.mjs +2169 -0
- package/esm2022/lib/dashboard/dialog-group/download/index.component.mjs +212 -0
- package/esm2022/lib/dashboard/dialog-group/empty-icon-prompt/empty-icon-prompt.component.mjs +36 -0
- package/esm2022/lib/dashboard/gadget-group/gadget-pivot/gadget-pivot.component.mjs +3211 -0
- package/esm2022/lib/dashboard/gadget-group/gadget-pivot-chart/gadget-pivot.component.mjs +3117 -0
- package/esm2022/lib/dashboard/gadget-group/gadget-table/gadget-table.component.mjs +1099 -0
- package/esm2022/lib/dashboard/gadget-group/gadget-transpose/gadget-transpose.component.mjs +583 -0
- package/esm2022/lib/dashboard/pane-group-new.component.mjs +2031 -0
- package/esm2022/lib/dashboard/sidebar-iconlist/field-filter/field-filter.component.mjs +637 -0
- package/esm2022/lib/dashboard/sidebar-iconlist/field-format/field-format.component.mjs +753 -0
- package/esm2022/lib/dashboard/sidebar-iconlist/portlet-type-new/portlet-type-new.component.mjs +216 -0
- package/esm2022/lib/dashboard/sidebar-iconlist/sidebar-iconlist-new.component.mjs +1239 -0
- package/esm2022/lib/dialog/common-delete-dialog/index.component.mjs +1 -1
- package/esm2022/lib/dialog/common-dialog/index.component.mjs +16 -5
- package/esm2022/lib/float-box/index.component.mjs +18 -4
- package/esm2022/lib/form/checkbox-group/index.component.mjs +35 -5
- package/esm2022/lib/form/drawer-form/drawer-form.component.mjs +177 -76
- package/esm2022/lib/layout/drawer/index.component.mjs +2 -2
- package/esm2022/lib/layout/page-list/index.component.mjs +9 -3
- package/esm2022/lib/layout/page-tab/index.component.mjs +5 -3
- package/esm2022/lib/layout/rs-stepper/constants.mjs +2 -0
- package/esm2022/lib/layout/rs-stepper/index.component.mjs +148 -0
- package/esm2022/lib/raise-common-lib.module.mjs +114 -7
- package/esm2022/lib/service/InjectionToken.mjs +5 -0
- package/esm2022/lib/service/keep-alive.service.mjs +2 -2
- package/esm2022/lib/smart-popup/index.component.mjs +1084 -0
- package/esm2022/public-api.mjs +19 -1
- package/fesm2022/raise-common-lib-new.mjs +18037 -220
- package/fesm2022/raise-common-lib-new.mjs.map +1 -1
- package/lib/common-grid/index.component.d.ts +2 -1
- package/lib/dashboard/api.d.ts +24 -0
- package/lib/dashboard/bar-charts/bar-charts.component.d.ts +63 -0
- package/lib/dashboard/bar-charts/utils.d.ts +1 -0
- package/lib/dashboard/dashboard-properties/data-mart-new/data-mart-new.component.d.ts +52 -0
- package/lib/dashboard/dashboard.service.d.ts +152 -0
- package/lib/dashboard/dashboardPorlets.service.d.ts +214 -0
- package/lib/dashboard/dialog-group/download/index.component.d.ts +36 -0
- package/lib/dashboard/dialog-group/empty-icon-prompt/empty-icon-prompt.component.d.ts +15 -0
- package/lib/dashboard/gadget-group/gadget-pivot/gadget-pivot.component.d.ts +128 -0
- package/lib/dashboard/gadget-group/gadget-pivot-chart/gadget-pivot.component.d.ts +131 -0
- package/lib/dashboard/gadget-group/gadget-table/gadget-table.component.d.ts +77 -0
- package/lib/dashboard/gadget-group/gadget-transpose/gadget-transpose.component.d.ts +47 -0
- package/lib/dashboard/pane-group-new.component.d.ts +169 -0
- package/lib/dashboard/sidebar-iconlist/field-filter/field-filter.component.d.ts +56 -0
- package/lib/dashboard/sidebar-iconlist/field-format/field-format.component.d.ts +62 -0
- package/lib/dashboard/sidebar-iconlist/portlet-type-new/portlet-type-new.component.d.ts +30 -0
- package/lib/dashboard/sidebar-iconlist/sidebar-iconlist-new.component.d.ts +150 -0
- package/lib/dialog/common-dialog/index.component.d.ts +3 -1
- package/lib/float-box/index.component.d.ts +4 -3
- package/lib/form/checkbox-group/index.component.d.ts +5 -0
- package/lib/form/drawer-form/drawer-form.component.d.ts +21 -8
- package/lib/layout/page-list/index.component.d.ts +3 -1
- package/lib/layout/page-tab/index.component.d.ts +1 -0
- package/lib/layout/rs-stepper/constants.d.ts +5 -0
- package/lib/layout/rs-stepper/index.component.d.ts +31 -0
- package/lib/raise-common-lib.module.d.ts +61 -40
- package/lib/service/InjectionToken.d.ts +4 -0
- package/lib/smart-popup/index.component.d.ts +60 -0
- package/package.json +1 -1
- package/public-api.d.ts +18 -0
- package/src/assets/img/dashboard_icon/AddPerson.svg +4 -0
- package/src/assets/img/dashboard_icon/Angle-double-left.svg +12 -0
- package/src/assets/img/dashboard_icon/Angle-double-right.svg +12 -0
- package/src/assets/img/dashboard_icon/Arrow_collapse.svg +3 -0
- package/src/assets/img/dashboard_icon/Arrow_expand.svg +3 -0
- package/src/assets/img/dashboard_icon/Close.svg +4 -0
- package/src/assets/img/dashboard_icon/Edit_label.svg +3 -0
- package/src/assets/img/dashboard_icon/RemoveMini.svg +3 -0
- package/src/assets/img/dashboard_icon/ShareTo.svg +3 -0
- package/src/assets/img/dashboard_icon/add-dashboard.svg +4 -0
- package/src/assets/img/dashboard_icon/add-tab.svg +4 -0
- package/src/assets/img/dashboard_icon/angle-left.svg +12 -0
- package/src/assets/img/dashboard_icon/angle-right.svg +12 -0
- package/src/assets/img/dashboard_icon/area-white.svg +3 -0
- package/src/assets/img/dashboard_icon/area.svg +3 -0
- package/src/assets/img/dashboard_icon/bar-white.svg +14 -0
- package/src/assets/img/dashboard_icon/bar.svg +14 -0
- package/src/assets/img/dashboard_icon/basic-icon-filter.svg +14 -0
- package/src/assets/img/dashboard_icon/chart-combined-active.svg +7 -0
- package/src/assets/img/dashboard_icon/chart-combined.svg +7 -0
- package/src/assets/img/dashboard_icon/column-white.svg +14 -0
- package/src/assets/img/dashboard_icon/column.svg +26 -0
- package/src/assets/img/dashboard_icon/customize.png +0 -0
- package/src/assets/img/dashboard_icon/dashboard-description.svg +18 -0
- package/src/assets/img/dashboard_icon/dashboard-download.svg +18 -0
- package/src/assets/img/dashboard_icon/dashboard-drag.svg +28 -0
- package/src/assets/img/dashboard_icon/dashboard-duplicate.svg +24 -0
- package/src/assets/img/dashboard_icon/dashboard-icon.svg +12 -0
- package/src/assets/img/dashboard_icon/dashboard-properties.svg +18 -0
- package/src/assets/img/dashboard_icon/dashboard-rename.svg +18 -0
- package/src/assets/img/dashboard_icon/dashboard-share.svg +20 -0
- package/src/assets/img/dashboard_icon/dashboard-tab-delete.svg +4 -0
- package/src/assets/img/dashboard_icon/dashboard_Share.svg +3 -0
- package/src/assets/img/dashboard_icon/dashboard_ToolsHide.svg +4 -0
- package/src/assets/img/dashboard_icon/datamart_.svg +5 -0
- package/src/assets/img/dashboard_icon/datamart_Admin.svg +3 -0
- package/src/assets/img/dashboard_icon/datamart_Asset Portfolio.svg +4 -0
- package/src/assets/img/dashboard_icon/datamart_Bank.svg +3 -0
- package/src/assets/img/dashboard_icon/datamart_CRM.svg +6 -0
- package/src/assets/img/dashboard_icon/datamart_Company.svg +6 -0
- package/src/assets/img/dashboard_icon/datamart_Compliance.svg +3 -0
- package/src/assets/img/dashboard_icon/datamart_Contact.svg +3 -0
- package/src/assets/img/dashboard_icon/datamart_DASHBOARD.svg +4 -0
- package/src/assets/img/dashboard_icon/datamart_DOCX.svg +4 -0
- package/src/assets/img/dashboard_icon/datamart_ESG.svg +4 -0
- package/src/assets/img/dashboard_icon/datamart_Financials - Company.svg +3 -0
- package/src/assets/img/dashboard_icon/datamart_Fund.svg +4 -0
- package/src/assets/img/dashboard_icon/datamart_FundFinancial.svg +4 -0
- package/src/assets/img/dashboard_icon/datamart_HTML.svg +4 -0
- package/src/assets/img/dashboard_icon/datamart_Logs.svg +8 -0
- package/src/assets/img/dashboard_icon/datamart_PDF.svg +5 -0
- package/src/assets/img/dashboard_icon/datamart_Project.svg +3 -0
- package/src/assets/img/dashboard_icon/datamart_Templates.svg +7 -0
- package/src/assets/img/dashboard_icon/datamart_Track Change.svg +3 -0
- package/src/assets/img/dashboard_icon/datamart_VirtualGroup.svg +5 -0
- package/src/assets/img/dashboard_icon/datamart_XLS.svg +4 -0
- package/src/assets/img/dashboard_icon/desktop_selected.svg +10 -0
- package/src/assets/img/dashboard_icon/desktop_unselected.svg +10 -0
- package/src/assets/img/dashboard_icon/favourite-grey.svg +3 -0
- package/src/assets/img/dashboard_icon/favourite-yellow.svg +3 -0
- package/src/assets/img/dashboard_icon/forms-checkbox-square-tick.svg +3 -0
- package/src/assets/img/dashboard_icon/ftable-white.svg +24 -0
- package/src/assets/img/dashboard_icon/ftable.svg +24 -0
- package/src/assets/img/dashboard_icon/gadget-basic-arrow-down.svg +14 -0
- package/src/assets/img/dashboard_icon/gadget-basic-format.svg +21 -0
- package/src/assets/img/dashboard_icon/gadget-basic-sub-total.svg +18 -0
- package/src/assets/img/dashboard_icon/gadget-basic-total-1.svg +9 -0
- package/src/assets/img/dashboard_icon/gadget-basic-total.svg +16 -0
- package/src/assets/img/dashboard_icon/gadget-columns.svg +12 -0
- package/src/assets/img/dashboard_icon/gadget-delete.svg +18 -0
- package/src/assets/img/dashboard_icon/gadget-download.svg +18 -0
- package/src/assets/img/dashboard_icon/gadget-duplicate.svg +24 -0
- package/src/assets/img/dashboard_icon/gadget-edit.svg +18 -0
- package/src/assets/img/dashboard_icon/gadget-filters-light.svg +9 -0
- package/src/assets/img/dashboard_icon/gadget-filters.svg +9 -0
- package/src/assets/img/dashboard_icon/gadget-format-0.svg +8 -0
- package/src/assets/img/dashboard_icon/gadget-format-1.svg +8 -0
- package/src/assets/img/dashboard_icon/gadget-format.svg +19 -0
- package/src/assets/img/dashboard_icon/gadget-fullscreen.svg +30 -0
- package/src/assets/img/dashboard_icon/gadget-settings.svg +18 -0
- package/src/assets/img/dashboard_icon/gadget-sub-total-0.svg +18 -0
- package/src/assets/img/dashboard_icon/gadget-sub-total-1.svg +18 -0
- package/src/assets/img/dashboard_icon/gadget-thumbnail.svg +12 -0
- package/src/assets/img/dashboard_icon/gadget-type-light.svg +15 -0
- package/src/assets/img/dashboard_icon/gadget-type.svg +16 -0
- package/src/assets/img/dashboard_icon/geo-white.svg +14 -0
- package/src/assets/img/dashboard_icon/geo.svg +14 -0
- package/src/assets/img/dashboard_icon/historic-IRR-white.svg +9 -0
- package/src/assets/img/dashboard_icon/historic-IRR.svg +5 -0
- package/src/assets/img/dashboard_icon/information-1.png +0 -0
- package/src/assets/img/dashboard_icon/information-grey.svg +4 -0
- package/src/assets/img/dashboard_icon/menu-change-group.svg +3 -0
- package/src/assets/img/dashboard_icon/menu-close.svg +20 -0
- package/src/assets/img/dashboard_icon/menu-delete.svg +18 -0
- package/src/assets/img/dashboard_icon/menu-description.svg +19 -0
- package/src/assets/img/dashboard_icon/menu-download.svg +24 -0
- package/src/assets/img/dashboard_icon/menu-drag.svg +28 -0
- package/src/assets/img/dashboard_icon/menu-duplicate.svg +26 -0
- package/src/assets/img/dashboard_icon/menu-properties.svg +18 -0
- package/src/assets/img/dashboard_icon/menu-rename.svg +23 -0
- package/src/assets/img/dashboard_icon/menu-share.svg +20 -0
- package/src/assets/img/dashboard_icon/menu-toolbar.svg +10 -0
- package/src/assets/img/dashboard_icon/mobile_selected.svg +10 -0
- package/src/assets/img/dashboard_icon/mobile_unselected.svg +10 -0
- package/src/assets/img/dashboard_icon/more_Save.svg +3 -0
- package/src/assets/img/dashboard_icon/more_View.svg +3 -0
- package/src/assets/img/dashboard_icon/multi-series-white.svg +20 -0
- package/src/assets/img/dashboard_icon/multi-series.svg +6 -0
- package/src/assets/img/dashboard_icon/paint-bucket.svg +6 -0
- package/src/assets/img/dashboard_icon/pie-white.svg +16 -0
- package/src/assets/img/dashboard_icon/pie.svg +16 -0
- package/src/assets/img/dashboard_icon/pivot-chart-active.svg +8 -0
- package/src/assets/img/dashboard_icon/pivot-chart.svg +8 -0
- package/src/assets/img/dashboard_icon/pivot-white.svg +8 -0
- package/src/assets/img/dashboard_icon/pivot.svg +8 -0
- package/src/assets/img/dashboard_icon/pivot_column.svg +9 -0
- package/src/assets/img/dashboard_icon/pivot_column_active.svg +9 -0
- package/src/assets/img/dashboard_icon/pivot_line.svg +12 -0
- package/src/assets/img/dashboard_icon/pivot_line_active.svg +12 -0
- package/src/assets/img/dashboard_icon/print-A2.svg +3 -0
- package/src/assets/img/dashboard_icon/radar-white.svg +19 -0
- package/src/assets/img/dashboard_icon/radar.svg +19 -0
- package/src/assets/img/dashboard_icon/saveAs.svg +3 -0
- package/src/assets/img/dashboard_icon/search_input.svg +4 -0
- package/src/assets/img/dashboard_icon/table-3-white.svg +16 -0
- package/src/assets/img/dashboard_icon/table-3.svg +16 -0
- package/src/assets/img/dashboard_icon/table-filter-off.svg +5 -0
- package/src/assets/img/dashboard_icon/table-filter-on.svg +5 -0
- package/src/assets/img/dashboard_icon/tag_dashboard_selected.svg +3 -0
- package/src/assets/img/dashboard_icon/tag_dashboard_unselected.svg +3 -0
- package/src/assets/img/dashboard_icon/tag_share_selected.svg +3 -0
- package/src/assets/img/dashboard_icon/tag_share_unselected.svg +3 -0
- package/src/assets/img/dashboard_icon/tick.svg +26 -0
- package/src/assets/img/dashboard_icon/toolbar_AddDashboard.svg +5 -0
- package/src/assets/img/dashboard_icon/toolbar_AddGroup.svg +3 -0
- package/src/assets/img/dashboard_icon/toolbar_AddReport.svg +3 -0
- package/src/assets/img/dashboard_icon/toolbar_CollapseAll.svg +3 -0
- package/src/assets/img/dashboard_icon/toolbar_Customize.svg +3 -0
- package/src/assets/img/dashboard_icon/toolbar_DeleteDark.svg +3 -0
- package/src/assets/img/dashboard_icon/toolbar_Duplicate.svg +3 -0
- package/src/assets/img/dashboard_icon/toolbar_Edit.svg +3 -0
- package/src/assets/img/dashboard_icon/toolbar_ExpandAll.svg +3 -0
- package/src/assets/img/dashboard_icon/toolbar_Search.svg +3 -0
- package/src/assets/img/dashboard_icon/topbar-menu.svg +33 -0
- package/src/assets/img/dashboard_icon/topbar-refresh.svg +17 -0
- package/src/assets/img/dashboard_icon/topbar-tool-off.svg +12 -0
- package/src/assets/img/dashboard_icon/topbar-tool-on.svg +12 -0
- package/src/assets/img/dashboard_icon/trade-up-white.svg +14 -0
- package/src/assets/img/dashboard_icon/trade-up.svg +14 -0
- package/src/assets/img/dashboard_icon/transpose-white.svg +16 -0
- package/src/assets/img/dashboard_icon/transpose.svg +16 -0
|
@@ -139,11 +139,11 @@ export class DrawerComponent {
|
|
|
139
139
|
}
|
|
140
140
|
}
|
|
141
141
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrawerComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: i1.DrawerService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
142
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrawerComponent, selector: "rs-drawer", viewQueries: [{ propertyName: "element", first: true, predicate: ["element"], descendants: true }, { propertyName: "drawer", first: true, predicate: ["drawer"], descendants: true }, { propertyName: "header", first: true, predicate: ["header"], descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true }, { propertyName: "toolbarSlot", first: true, predicate: ["toolbarSlot"], descendants: true }, { propertyName: "headerSlot", first: true, predicate: ["headerSlot"], descendants: true }, { propertyName: "topSlot", first: true, predicate: ["topSlot"], descendants: true }, { propertyName: "container", first: true, predicate: ["dynamicComponentContainer"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div #element id=\"rs-drawer-container\" class=\"rs-drawer-container\">\r\n <div class=\"rs-drawer-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div\r\n #drawer\r\n class=\"rs-drawer\"\r\n [attr.data-mode]=\"config.mode\"\r\n [attr.data-opened]=\"isOpened ? 'yes' : 'no'\"\r\n [attr.data-animation]=\"useAnimation\"\r\n [hidden]=\"hiddenDrawer\"\r\n (animationend)=\"onAnimationEnd()\"\r\n >\r\n <div class=\"drawer-header\" #header>\r\n <button class=\"drawer-return-button\" (click)=\"hide()\">\r\n <span class=\"drawer-sub-title\" *ngIf=\"config.subTitle\">\r\n {{ config.subTitle }}\r\n </span>\r\n </button>\r\n <div class=\"drawer-title\">{{ config.title }}</div>\r\n <div class=\"drawer-header-slot\" #headerSlot></div>\r\n </div>\r\n <div class=\"drawer-top-slot\" #topSlot></div>\r\n <div class=\"drawer-content-box\">\r\n <div class=\"drawer-content\" #content>\r\n <div class=\"drawer-content-container\">\r\n <ng-template #dynamicComponentContainer></ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"drawer-toolbar-slot\" #toolbarSlot></div>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;height:100%}#rs-drawer-container{height:100%}.rs-drawer-container{height:100%;background-color:transparent;overflow:hidden;position:relative}.rs-drawer-container .rs-drawer-content{width:100%;height:100%;overflow:auto;margin-right:0!important}.rs-drawer-container .rs-drawer
|
|
142
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrawerComponent, selector: "rs-drawer", viewQueries: [{ propertyName: "element", first: true, predicate: ["element"], descendants: true }, { propertyName: "drawer", first: true, predicate: ["drawer"], descendants: true }, { propertyName: "header", first: true, predicate: ["header"], descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true }, { propertyName: "toolbarSlot", first: true, predicate: ["toolbarSlot"], descendants: true }, { propertyName: "headerSlot", first: true, predicate: ["headerSlot"], descendants: true }, { propertyName: "topSlot", first: true, predicate: ["topSlot"], descendants: true }, { propertyName: "container", first: true, predicate: ["dynamicComponentContainer"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div #element id=\"rs-drawer-container\" class=\"rs-drawer-container\">\r\n <div class=\"rs-drawer-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div\r\n #drawer\r\n class=\"rs-drawer\"\r\n [attr.data-mode]=\"config.mode\"\r\n [attr.data-opened]=\"isOpened ? 'yes' : 'no'\"\r\n [attr.data-animation]=\"useAnimation\"\r\n [hidden]=\"hiddenDrawer\"\r\n (animationend)=\"onAnimationEnd()\"\r\n >\r\n <div class=\"drawer-header\" #header>\r\n <button class=\"drawer-return-button\" (click)=\"hide()\">\r\n <span class=\"drawer-sub-title\" *ngIf=\"config.subTitle\">\r\n {{ config.subTitle }}\r\n </span>\r\n </button>\r\n <div class=\"drawer-title\">{{ config.title }}</div>\r\n <div class=\"drawer-header-slot\" #headerSlot></div>\r\n </div>\r\n <div class=\"drawer-top-slot\" #topSlot></div>\r\n <div class=\"drawer-content-box\">\r\n <div class=\"drawer-content\" #content>\r\n <div class=\"drawer-content-container\">\r\n <ng-template #dynamicComponentContainer></ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"drawer-toolbar-slot\" #toolbarSlot></div>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;height:100%}#rs-drawer-container{height:100%}.rs-drawer-container{height:100%;background-color:transparent;overflow:hidden;position:relative}.rs-drawer-container .rs-drawer-content{width:100%;height:100%;overflow:auto;margin-right:0!important}.rs-drawer-container .rs-drawer{width:100%;height:100%;border-left:none;background-color:transparent;overflow:visible;pointer-events:none;opacity:0;display:flex;flex-flow:column nowrap;position:absolute;z-index:2;top:0;left:100%}.rs-drawer-container .rs-drawer[data-opened=yes]{left:0;opacity:1}.rs-drawer-container .rs-drawer[data-animation=yes][data-opened=yes]{animation:drawer-open ease-in-out .5s}@keyframes drawer-open{0%{left:100%;opacity:0}to{left:0;opacity:1}}.rs-drawer-container .rs-drawer[data-animation=yes][data-opened=no]{animation:drawer-close ease-in-out .5s}@keyframes drawer-close{0%{left:0;opacity:1}to{left:100%;opacity:0}}.rs-drawer-container .rs-drawer[hidden]{display:none}.rs-drawer-container .rs-drawer .drawer-header{flex:none;display:flex;flex-flow:row nowrap;justify-content:flex-start;align-items:center;box-sizing:content-box;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button{flex:none;display:flex;flex-flow:row nowrap;align-items:center;padding:0;border:none;background-color:transparent;cursor:pointer}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button:before{content:url(\"data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cpath d%3D%22M12 18L7.54986 12L12 6%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3Cpath d%3D%22M17.427 12.5C17.7031 12.5 17.927 12.2761 17.927 12C17.927 11.7239 17.7031 11.5 17.427 11.5L17.427 12.5ZM7.39893 12.5L17.427 12.5L17.427 11.5L7.39893 11.5L7.39893 12.5Z%22 fill%3D%22%236C7C90%22%2F%3E%0D%3C%2Fsvg%3E%0D\");width:24px;height:24px;margin-right:8px;transition:transform ease-in-out 125ms}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button:hover:before{transform:translate(-2px)}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button .drawer-sub-title{margin-right:12px;font-family:Arial;font-style:normal;font-weight:400}.rs-drawer-container .rs-drawer .drawer-header .drawer-title{flex:none;min-height:14px;padding:0 12px;border-left:1px solid #bdc4ca;font-family:Arial;font-style:normal;font-weight:400}.rs-drawer-container .rs-drawer .drawer-header .drawer-title:empty{padding:0}.rs-drawer-container .rs-drawer .drawer-content-box{flex:auto;height:0;background-color:#f7fafb;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-content{height:100%;padding:0 20px;border:1px solid #ebedf0;border-radius:15px;background-color:#fff;display:flex;flex-flow:column nowrap}.rs-drawer-container .rs-drawer .drawer-content .drawer-content-container{flex:auto;overflow:hidden auto}.rs-drawer-container .rs-drawer .drawer-toolbar-slot{flex:none;height:32px;margin-left:auto;display:flex;flex-flow:row nowrap;justify-content:flex-end;align-items:center;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-toolbar-slot:empty{display:none}.rs-drawer-container .rs-drawer .drawer-top-slot{flex:none;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-top-slot:empty{height:var(--drawer-top, 0px);pointer-events:none}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header{height:46px;padding:0 12px 0 8px;background-color:#f7fafb}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header .drawer-sub-title,.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header .drawer-title{color:#1f3f5c;font-size:15px;font-weight:700;line-height:18px}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-content{padding-bottom:20px}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-content .drawer-content-container{margin-right:-20px;padding-right:20px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-top-slot:empty+.drawer-content-box{padding-top:calc((var(--drawer-top, 0) + 1) * 16px)}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header{height:24px;padding:6px 0;border-bottom:1px solid #eaedf0}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-sub-title,.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-title{color:#44566c;font-size:12px;line-height:14px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-title{font-weight:700}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-content .drawer-content-container{margin-right:-20px;padding-right:20px;padding-left:8px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-toolbar-slot{width:100%;padding:16px 0;box-sizing:content-box;border-top:1px solid #eaedf0}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar]{display:flex;flex-flow:row nowrap;justify-content:flex-end;align-items:center;gap:12px}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button{display:flex;flex-flow:row nowrap;justify-content:center;align-items:center;gap:6px;min-width:80px;height:32px;padding:0 12px;border:1px solid #adb5bd;border-radius:4px;background-color:#fff;cursor:pointer;color:#44566c;font-size:13px;font-family:Arial;font-style:normal;font-weight:400;line-height:16px}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button:hover{border-color:#6c7c90}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button:disabled{opacity:1!important;border-color:#6c7c9066;color:#44566c66;cursor:unset}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary{border:none;background-color:#1364b3;color:#fff}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary:hover{background-color:#176bca}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary:disabled{background-color:#1364b366}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button img{width:16px;height:16px}::ng-deep .rs-drawer-container .rs-drawer[data-mode=outer] .drawer-toolbar-slot [drawer-toolbar] button{height:26px;font-size:12px;line-height:14px}::ng-deep .rs-drawer-container .rs-drawer[data-mode=inner] .drawer-toolbar-slot [drawer-toolbar] button img{display:none}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
143
143
|
}
|
|
144
144
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrawerComponent, decorators: [{
|
|
145
145
|
type: Component,
|
|
146
|
-
args: [{ selector: "rs-drawer", template: "<div #element id=\"rs-drawer-container\" class=\"rs-drawer-container\">\r\n <div class=\"rs-drawer-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div\r\n #drawer\r\n class=\"rs-drawer\"\r\n [attr.data-mode]=\"config.mode\"\r\n [attr.data-opened]=\"isOpened ? 'yes' : 'no'\"\r\n [attr.data-animation]=\"useAnimation\"\r\n [hidden]=\"hiddenDrawer\"\r\n (animationend)=\"onAnimationEnd()\"\r\n >\r\n <div class=\"drawer-header\" #header>\r\n <button class=\"drawer-return-button\" (click)=\"hide()\">\r\n <span class=\"drawer-sub-title\" *ngIf=\"config.subTitle\">\r\n {{ config.subTitle }}\r\n </span>\r\n </button>\r\n <div class=\"drawer-title\">{{ config.title }}</div>\r\n <div class=\"drawer-header-slot\" #headerSlot></div>\r\n </div>\r\n <div class=\"drawer-top-slot\" #topSlot></div>\r\n <div class=\"drawer-content-box\">\r\n <div class=\"drawer-content\" #content>\r\n <div class=\"drawer-content-container\">\r\n <ng-template #dynamicComponentContainer></ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"drawer-toolbar-slot\" #toolbarSlot></div>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;height:100%}#rs-drawer-container{height:100%}.rs-drawer-container{height:100%;background-color:transparent;overflow:hidden;position:relative}.rs-drawer-container .rs-drawer-content{width:100%;height:100%;overflow:auto;margin-right:0!important}.rs-drawer-container .rs-drawer
|
|
146
|
+
args: [{ selector: "rs-drawer", template: "<div #element id=\"rs-drawer-container\" class=\"rs-drawer-container\">\r\n <div class=\"rs-drawer-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div\r\n #drawer\r\n class=\"rs-drawer\"\r\n [attr.data-mode]=\"config.mode\"\r\n [attr.data-opened]=\"isOpened ? 'yes' : 'no'\"\r\n [attr.data-animation]=\"useAnimation\"\r\n [hidden]=\"hiddenDrawer\"\r\n (animationend)=\"onAnimationEnd()\"\r\n >\r\n <div class=\"drawer-header\" #header>\r\n <button class=\"drawer-return-button\" (click)=\"hide()\">\r\n <span class=\"drawer-sub-title\" *ngIf=\"config.subTitle\">\r\n {{ config.subTitle }}\r\n </span>\r\n </button>\r\n <div class=\"drawer-title\">{{ config.title }}</div>\r\n <div class=\"drawer-header-slot\" #headerSlot></div>\r\n </div>\r\n <div class=\"drawer-top-slot\" #topSlot></div>\r\n <div class=\"drawer-content-box\">\r\n <div class=\"drawer-content\" #content>\r\n <div class=\"drawer-content-container\">\r\n <ng-template #dynamicComponentContainer></ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"drawer-toolbar-slot\" #toolbarSlot></div>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;height:100%}#rs-drawer-container{height:100%}.rs-drawer-container{height:100%;background-color:transparent;overflow:hidden;position:relative}.rs-drawer-container .rs-drawer-content{width:100%;height:100%;overflow:auto;margin-right:0!important}.rs-drawer-container .rs-drawer{width:100%;height:100%;border-left:none;background-color:transparent;overflow:visible;pointer-events:none;opacity:0;display:flex;flex-flow:column nowrap;position:absolute;z-index:2;top:0;left:100%}.rs-drawer-container .rs-drawer[data-opened=yes]{left:0;opacity:1}.rs-drawer-container .rs-drawer[data-animation=yes][data-opened=yes]{animation:drawer-open ease-in-out .5s}@keyframes drawer-open{0%{left:100%;opacity:0}to{left:0;opacity:1}}.rs-drawer-container .rs-drawer[data-animation=yes][data-opened=no]{animation:drawer-close ease-in-out .5s}@keyframes drawer-close{0%{left:0;opacity:1}to{left:100%;opacity:0}}.rs-drawer-container .rs-drawer[hidden]{display:none}.rs-drawer-container .rs-drawer .drawer-header{flex:none;display:flex;flex-flow:row nowrap;justify-content:flex-start;align-items:center;box-sizing:content-box;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button{flex:none;display:flex;flex-flow:row nowrap;align-items:center;padding:0;border:none;background-color:transparent;cursor:pointer}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button:before{content:url(\"data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cpath d%3D%22M12 18L7.54986 12L12 6%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3Cpath d%3D%22M17.427 12.5C17.7031 12.5 17.927 12.2761 17.927 12C17.927 11.7239 17.7031 11.5 17.427 11.5L17.427 12.5ZM7.39893 12.5L17.427 12.5L17.427 11.5L7.39893 11.5L7.39893 12.5Z%22 fill%3D%22%236C7C90%22%2F%3E%0D%3C%2Fsvg%3E%0D\");width:24px;height:24px;margin-right:8px;transition:transform ease-in-out 125ms}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button:hover:before{transform:translate(-2px)}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button .drawer-sub-title{margin-right:12px;font-family:Arial;font-style:normal;font-weight:400}.rs-drawer-container .rs-drawer .drawer-header .drawer-title{flex:none;min-height:14px;padding:0 12px;border-left:1px solid #bdc4ca;font-family:Arial;font-style:normal;font-weight:400}.rs-drawer-container .rs-drawer .drawer-header .drawer-title:empty{padding:0}.rs-drawer-container .rs-drawer .drawer-content-box{flex:auto;height:0;background-color:#f7fafb;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-content{height:100%;padding:0 20px;border:1px solid #ebedf0;border-radius:15px;background-color:#fff;display:flex;flex-flow:column nowrap}.rs-drawer-container .rs-drawer .drawer-content .drawer-content-container{flex:auto;overflow:hidden auto}.rs-drawer-container .rs-drawer .drawer-toolbar-slot{flex:none;height:32px;margin-left:auto;display:flex;flex-flow:row nowrap;justify-content:flex-end;align-items:center;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-toolbar-slot:empty{display:none}.rs-drawer-container .rs-drawer .drawer-top-slot{flex:none;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-top-slot:empty{height:var(--drawer-top, 0px);pointer-events:none}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header{height:46px;padding:0 12px 0 8px;background-color:#f7fafb}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header .drawer-sub-title,.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header .drawer-title{color:#1f3f5c;font-size:15px;font-weight:700;line-height:18px}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-content{padding-bottom:20px}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-content .drawer-content-container{margin-right:-20px;padding-right:20px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-top-slot:empty+.drawer-content-box{padding-top:calc((var(--drawer-top, 0) + 1) * 16px)}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header{height:24px;padding:6px 0;border-bottom:1px solid #eaedf0}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-sub-title,.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-title{color:#44566c;font-size:12px;line-height:14px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-title{font-weight:700}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-content .drawer-content-container{margin-right:-20px;padding-right:20px;padding-left:8px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-toolbar-slot{width:100%;padding:16px 0;box-sizing:content-box;border-top:1px solid #eaedf0}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar]{display:flex;flex-flow:row nowrap;justify-content:flex-end;align-items:center;gap:12px}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button{display:flex;flex-flow:row nowrap;justify-content:center;align-items:center;gap:6px;min-width:80px;height:32px;padding:0 12px;border:1px solid #adb5bd;border-radius:4px;background-color:#fff;cursor:pointer;color:#44566c;font-size:13px;font-family:Arial;font-style:normal;font-weight:400;line-height:16px}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button:hover{border-color:#6c7c90}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button:disabled{opacity:1!important;border-color:#6c7c9066;color:#44566c66;cursor:unset}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary{border:none;background-color:#1364b3;color:#fff}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary:hover{background-color:#176bca}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary:disabled{background-color:#1364b366}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button img{width:16px;height:16px}::ng-deep .rs-drawer-container .rs-drawer[data-mode=outer] .drawer-toolbar-slot [drawer-toolbar] button{height:26px;font-size:12px;line-height:14px}::ng-deep .rs-drawer-container .rs-drawer[data-mode=inner] .drawer-toolbar-slot [drawer-toolbar] button img{display:none}\n"] }]
|
|
147
147
|
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i1.DrawerService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { element: [{
|
|
148
148
|
type: ViewChild,
|
|
149
149
|
args: ["element", { static: false }]
|
|
@@ -12,12 +12,14 @@ export class RsPageListComponent {
|
|
|
12
12
|
treeGrid;
|
|
13
13
|
wholeToolbarSlot;
|
|
14
14
|
searchInput;
|
|
15
|
+
leftContentSlot;
|
|
15
16
|
pageTitle;
|
|
16
17
|
customPageTitle = false;
|
|
17
18
|
hideSearch = false;
|
|
18
19
|
isInner = false;
|
|
19
20
|
onGridSearch = new EventEmitter();
|
|
20
21
|
hasWholeToolbarSlot = false;
|
|
22
|
+
hasLeftContentSlot = false;
|
|
21
23
|
translation;
|
|
22
24
|
ngOnInit() {
|
|
23
25
|
this.getInfo();
|
|
@@ -28,6 +30,7 @@ export class RsPageListComponent {
|
|
|
28
30
|
ngAfterContentInit() {
|
|
29
31
|
// 检测是否传入了 wholeToolbarSlot
|
|
30
32
|
this.hasWholeToolbarSlot = !!this.wholeToolbarSlot;
|
|
33
|
+
this.hasLeftContentSlot = !!this.leftContentSlot;
|
|
31
34
|
}
|
|
32
35
|
setSearchValue(value) {
|
|
33
36
|
this.searchInput.searchValue = value;
|
|
@@ -48,11 +51,11 @@ export class RsPageListComponent {
|
|
|
48
51
|
}
|
|
49
52
|
}
|
|
50
53
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RsPageListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
51
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RsPageListComponent, selector: "rs-page-list", inputs: { pageTitle: "pageTitle", customPageTitle: "customPageTitle", hideSearch: "hideSearch", isInner: "isInner" }, outputs: { onGridSearch: "onGridSearch" }, queries: [{ propertyName: "gridContent", first: true, predicate: CommonGridComponent, descendants: true }, { propertyName: "orignGrid", first: true, predicate: GridComponent, descendants: true }, { propertyName: "treeGrid", first: true, predicate: TreeGridComponent, descendants: true }, { propertyName: "wholeToolbarSlot", first: true, predicate: ["wholeToolbarSlot"], descendants: true }], viewQueries: [{ propertyName: "searchInput", first: true, predicate: ["searchInput"], descendants: true }], ngImport: i0, template: "<div class=\"rs-page-list-wrap\" [ngClass]=\"{ 'is-not-inner': !isInner }\">\r\n <ng-container *ngIf=\"customPageTitle; else defaultTitle\">\r\n <ng-content select=\"[titleSlot]\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultTitle>\r\n <h1 class=\"rs-page-title\" *ngIf=\"pageTitle\">{{ pageTitle }}</h1>\r\n </ng-template>\r\n <div class=\"rs-sub-section\">\r\n <ng-content select=\"[subSectionSlot]\"></ng-content>\r\n </div>\r\n <div
|
|
54
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RsPageListComponent, selector: "rs-page-list", inputs: { pageTitle: "pageTitle", customPageTitle: "customPageTitle", hideSearch: "hideSearch", isInner: "isInner" }, outputs: { onGridSearch: "onGridSearch" }, queries: [{ propertyName: "gridContent", first: true, predicate: CommonGridComponent, descendants: true }, { propertyName: "orignGrid", first: true, predicate: GridComponent, descendants: true }, { propertyName: "treeGrid", first: true, predicate: TreeGridComponent, descendants: true }, { propertyName: "wholeToolbarSlot", first: true, predicate: ["wholeToolbarSlot"], descendants: true }, { propertyName: "leftContentSlot", first: true, predicate: ["leftContentSlot"], descendants: true }], viewQueries: [{ propertyName: "searchInput", first: true, predicate: ["searchInput"], descendants: true }], ngImport: i0, template: "<div class=\"rs-page-list-wrap\" [ngClass]=\"{ 'is-not-inner': !isInner }\">\r\n <ng-container *ngIf=\"customPageTitle; else defaultTitle\">\r\n <ng-content select=\"[titleSlot]\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultTitle>\r\n <h1 class=\"rs-page-title\" *ngIf=\"pageTitle\">{{ pageTitle }}</h1>\r\n </ng-template>\r\n <div class=\"rs-sub-section\">\r\n <ng-content select=\"[subSectionSlot]\"></ng-content>\r\n </div>\r\n <div\r\n class=\"rs-content-wrap\"\r\n [ngClass]=\"{ 'has-left-content': hasLeftContentSlot }\"\r\n >\r\n <div class=\"rs-left-content\" *ngIf=\"hasLeftContentSlot\">\r\n <ng-content select=\"[leftContentSlot]\"></ng-content>\r\n </div>\r\n <div class=\"rs-right-content\">\r\n <div class=\"rs-content-tab\">\r\n <ng-content select=\"[contentTabSlot]\"></ng-content>\r\n </div>\r\n <div class=\"rs-toolbar-wrap\">\r\n <div class=\"rs-whole-bar\" *ngIf=\"hasWholeToolbarSlot\">\r\n <ng-content select=\"[wholeToolbarSlot]\"></ng-content>\r\n </div>\r\n <div class=\"rs-left-col\" *ngIf=\"!hasWholeToolbarSlot\">\r\n <ng-content select=\"[leftToolbarBtnSlot]\"></ng-content>\r\n </div>\r\n <div class=\"rs-right-col\" *ngIf=\"!hasWholeToolbarSlot\">\r\n <ng-content select=\"[rightToolbarBtnSlot]\"></ng-content>\r\n <rs-search-input\r\n #searchInput\r\n *ngIf=\"!hideSearch\"\r\n [placeholder]=\"translation.SEARCH_ALL_FIELD\"\r\n (hanleSearch)=\"onSeach($event)\"\r\n ></rs-search-input>\r\n </div>\r\n </div>\r\n <div class=\"rs-grid-wrap\">\r\n <ng-content select=\"[gridSlot]\"></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".rs-page-list-wrap{height:100%;display:flex;flex-direction:column;position:relative;margin:0 auto;max-width:1885px}.rs-page-list-wrap .rs-page-title{font-family:var(--rs-font-family);font-size:var(--rs-page-title-font-size);font-weight:700;text-align:left;color:var(--rs-page-title-color);display:flex;align-items:center;padding:16px 8px 12px 20px}.rs-page-list-wrap .rs-sub-section{width:100%}.rs-page-list-wrap .rs-content-wrap{display:flex;flex-direction:column;flex:1;height:0}.rs-page-list-wrap .rs-content-wrap .rs-left-content{height:100%}.rs-page-list-wrap .rs-content-wrap .rs-right-content{display:flex;flex-direction:column;flex:1;height:0}.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap{display:flex;justify-content:space-between;align-items:center;padding-bottom:4px;border-bottom:1px solid #eaedf0}.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap .rs-whole-bar{width:100%}.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap .rs-left-col,.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap .rs-right-col{display:flex;align-items:center}.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap .rs-left-col ::ng-deep .e-btn,.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap .rs-right-col ::ng-deep .e-btn{height:24px!important;min-width:auto!important}.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap .rs-right-col{gap:12px}.rs-page-list-wrap .rs-content-wrap .rs-left-col{flex:1;width:0;gap:4px}.rs-page-list-wrap .rs-content-wrap .rs-grid-wrap{flex:1;height:0}.rs-page-list-wrap.is-not-inner .rs-content-wrap{border-radius:15px;padding:12px 20px;background:#fff;border:1px solid var(--rs-border-color);box-shadow:0 0 4px #0000001a}.rs-page-list-wrap .rs-content-wrap.has-left-content{flex-direction:row}.rs-page-list-wrap .rs-content-wrap.has-left-content .rs-right-content{height:auto;width:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.SearchInputComponent, selector: "rs-search-input", inputs: ["placeholder"], outputs: ["hanleSearch", "handleInput"] }] });
|
|
52
55
|
}
|
|
53
56
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RsPageListComponent, decorators: [{
|
|
54
57
|
type: Component,
|
|
55
|
-
args: [{ selector: "rs-page-list", template: "<div class=\"rs-page-list-wrap\" [ngClass]=\"{ 'is-not-inner': !isInner }\">\r\n <ng-container *ngIf=\"customPageTitle; else defaultTitle\">\r\n <ng-content select=\"[titleSlot]\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultTitle>\r\n <h1 class=\"rs-page-title\" *ngIf=\"pageTitle\">{{ pageTitle }}</h1>\r\n </ng-template>\r\n <div class=\"rs-sub-section\">\r\n <ng-content select=\"[subSectionSlot]\"></ng-content>\r\n </div>\r\n <div
|
|
58
|
+
args: [{ selector: "rs-page-list", template: "<div class=\"rs-page-list-wrap\" [ngClass]=\"{ 'is-not-inner': !isInner }\">\r\n <ng-container *ngIf=\"customPageTitle; else defaultTitle\">\r\n <ng-content select=\"[titleSlot]\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultTitle>\r\n <h1 class=\"rs-page-title\" *ngIf=\"pageTitle\">{{ pageTitle }}</h1>\r\n </ng-template>\r\n <div class=\"rs-sub-section\">\r\n <ng-content select=\"[subSectionSlot]\"></ng-content>\r\n </div>\r\n <div\r\n class=\"rs-content-wrap\"\r\n [ngClass]=\"{ 'has-left-content': hasLeftContentSlot }\"\r\n >\r\n <div class=\"rs-left-content\" *ngIf=\"hasLeftContentSlot\">\r\n <ng-content select=\"[leftContentSlot]\"></ng-content>\r\n </div>\r\n <div class=\"rs-right-content\">\r\n <div class=\"rs-content-tab\">\r\n <ng-content select=\"[contentTabSlot]\"></ng-content>\r\n </div>\r\n <div class=\"rs-toolbar-wrap\">\r\n <div class=\"rs-whole-bar\" *ngIf=\"hasWholeToolbarSlot\">\r\n <ng-content select=\"[wholeToolbarSlot]\"></ng-content>\r\n </div>\r\n <div class=\"rs-left-col\" *ngIf=\"!hasWholeToolbarSlot\">\r\n <ng-content select=\"[leftToolbarBtnSlot]\"></ng-content>\r\n </div>\r\n <div class=\"rs-right-col\" *ngIf=\"!hasWholeToolbarSlot\">\r\n <ng-content select=\"[rightToolbarBtnSlot]\"></ng-content>\r\n <rs-search-input\r\n #searchInput\r\n *ngIf=\"!hideSearch\"\r\n [placeholder]=\"translation.SEARCH_ALL_FIELD\"\r\n (hanleSearch)=\"onSeach($event)\"\r\n ></rs-search-input>\r\n </div>\r\n </div>\r\n <div class=\"rs-grid-wrap\">\r\n <ng-content select=\"[gridSlot]\"></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".rs-page-list-wrap{height:100%;display:flex;flex-direction:column;position:relative;margin:0 auto;max-width:1885px}.rs-page-list-wrap .rs-page-title{font-family:var(--rs-font-family);font-size:var(--rs-page-title-font-size);font-weight:700;text-align:left;color:var(--rs-page-title-color);display:flex;align-items:center;padding:16px 8px 12px 20px}.rs-page-list-wrap .rs-sub-section{width:100%}.rs-page-list-wrap .rs-content-wrap{display:flex;flex-direction:column;flex:1;height:0}.rs-page-list-wrap .rs-content-wrap .rs-left-content{height:100%}.rs-page-list-wrap .rs-content-wrap .rs-right-content{display:flex;flex-direction:column;flex:1;height:0}.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap{display:flex;justify-content:space-between;align-items:center;padding-bottom:4px;border-bottom:1px solid #eaedf0}.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap .rs-whole-bar{width:100%}.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap .rs-left-col,.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap .rs-right-col{display:flex;align-items:center}.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap .rs-left-col ::ng-deep .e-btn,.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap .rs-right-col ::ng-deep .e-btn{height:24px!important;min-width:auto!important}.rs-page-list-wrap .rs-content-wrap .rs-toolbar-wrap .rs-right-col{gap:12px}.rs-page-list-wrap .rs-content-wrap .rs-left-col{flex:1;width:0;gap:4px}.rs-page-list-wrap .rs-content-wrap .rs-grid-wrap{flex:1;height:0}.rs-page-list-wrap.is-not-inner .rs-content-wrap{border-radius:15px;padding:12px 20px;background:#fff;border:1px solid var(--rs-border-color);box-shadow:0 0 4px #0000001a}.rs-page-list-wrap .rs-content-wrap.has-left-content{flex-direction:row}.rs-page-list-wrap .rs-content-wrap.has-left-content .rs-right-content{height:auto;width:0}\n"] }]
|
|
56
59
|
}], propDecorators: { gridContent: [{
|
|
57
60
|
type: ContentChild,
|
|
58
61
|
args: [CommonGridComponent, { static: false }]
|
|
@@ -68,6 +71,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
68
71
|
}], searchInput: [{
|
|
69
72
|
type: ViewChild,
|
|
70
73
|
args: ["searchInput", { static: false }]
|
|
74
|
+
}], leftContentSlot: [{
|
|
75
|
+
type: ContentChild,
|
|
76
|
+
args: ["leftContentSlot", { static: false }]
|
|
71
77
|
}], pageTitle: [{
|
|
72
78
|
type: Input
|
|
73
79
|
}], customPageTitle: [{
|
|
@@ -79,4 +85,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
79
85
|
}], onGridSearch: [{
|
|
80
86
|
type: Output
|
|
81
87
|
}] } });
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcmFpc2UtY29tbW9uLWxpYi9zcmMvbGliL2xheW91dC9wYWdlLWxpc3QvaW5kZXguY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcmFpc2UtY29tbW9uLWxpYi9zcmMvbGliL2xheW91dC9wYWdlLWxpc3QvaW5kZXguY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTTtBQUNOLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7QUFRckUsTUFBTSxPQUFPLG1CQUFtQjtJQUN3QixXQUFXLENBQUM7SUFDbEIsU0FBUyxDQUFDO0lBQ04sUUFBUSxDQUFDO0lBQ1IsZ0JBQWdCLENBQU07SUFFM0UsV0FBVyxDQUF1QjtJQUNrQixlQUFlLENBQU07SUFDaEUsU0FBUyxDQUFDO0lBQ1YsZUFBZSxHQUFHLEtBQUssQ0FBQztJQUN4QixVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQ25CLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFDZixZQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUU1QyxtQkFBbUIsR0FBWSxLQUFLLENBQUM7SUFDckMsa0JBQWtCLEdBQVksS0FBSyxDQUFDO0lBQ3BDLFdBQVcsQ0FBQztJQUVaLFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUNELE9BQU87UUFDTCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsMkJBQTJCO1FBQzNCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQ25ELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNuRCxDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQUs7UUFDbEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEIsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFLO1FBQ1gsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNyQzthQUFNLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUN6QixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM5QjthQUFNLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM3QjthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDL0I7SUFDSCxDQUFDO3dHQTlDVSxtQkFBbUI7NEZBQW5CLG1CQUFtQiw4UEFDaEIsbUJBQW1CLDRFQUNuQixhQUFhLDJFQUNiLGlCQUFpQix3V0N4QmpDLDZ3REE0Q0E7OzRGRHZCYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsY0FBYzs4QkFLOEIsV0FBVztzQkFBaEUsWUFBWTt1QkFBQyxtQkFBbUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ0osU0FBUztzQkFBeEQsWUFBWTt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNNLFFBQVE7c0JBQTNELFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNHLGdCQUFnQjtzQkFBcEUsWUFBWTt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBRW5ELFdBQVc7c0JBRFYsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUVTLGVBQWU7c0JBQWxFLFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUN6QyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8vIOe7hOS7tuexu1xyXG5pbXBvcnQge1xyXG4gIEFmdGVyQ29udGVudEluaXQsXHJcbiAgQ29tcG9uZW50LFxyXG4gIENvbnRlbnRDaGlsZCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQ29tbW9uR3JpZENvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9jb21tb24tZ3JpZC9pbmRleC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgR3JpZENvbXBvbmVudCB9IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci1ncmlkc1wiO1xyXG5pbXBvcnQgeyBUcmVlR3JpZENvbXBvbmVudCB9IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci10cmVlZ3JpZFwiO1xyXG5pbXBvcnQgeyBTZWFyY2hJbnB1dENvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9mb3JtL3NlYXJjaC1pbnB1dC9pbmRleC5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcInJzLXBhZ2UtbGlzdFwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vaW5kZXguY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vaW5kZXguY29tcG9uZW50LnNjc3NcIl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSc1BhZ2VMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0IHtcclxuICBAQ29udGVudENoaWxkKENvbW1vbkdyaWRDb21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSB9KSBncmlkQ29udGVudDtcclxuICBAQ29udGVudENoaWxkKEdyaWRDb21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSB9KSBvcmlnbkdyaWQ7XHJcbiAgQENvbnRlbnRDaGlsZChUcmVlR3JpZENvbXBvbmVudCwgeyBzdGF0aWM6IGZhbHNlIH0pIHRyZWVHcmlkO1xyXG4gIEBDb250ZW50Q2hpbGQoXCJ3aG9sZVRvb2xiYXJTbG90XCIsIHsgc3RhdGljOiBmYWxzZSB9KSB3aG9sZVRvb2xiYXJTbG90OiBhbnk7XHJcbiAgQFZpZXdDaGlsZChcInNlYXJjaElucHV0XCIsIHsgc3RhdGljOiBmYWxzZSB9KVxyXG4gIHNlYXJjaElucHV0OiBTZWFyY2hJbnB1dENvbXBvbmVudDtcclxuICBAQ29udGVudENoaWxkKFwibGVmdENvbnRlbnRTbG90XCIsIHsgc3RhdGljOiBmYWxzZSB9KSBsZWZ0Q29udGVudFNsb3Q6IGFueTtcclxuICBASW5wdXQoKSBwYWdlVGl0bGU7XHJcbiAgQElucHV0KCkgY3VzdG9tUGFnZVRpdGxlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgaGlkZVNlYXJjaCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGlzSW5uZXIgPSBmYWxzZTtcclxuICBAT3V0cHV0KCkgb25HcmlkU2VhcmNoID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBoYXNXaG9sZVRvb2xiYXJTbG90OiBib29sZWFuID0gZmFsc2U7XHJcbiAgaGFzTGVmdENvbnRlbnRTbG90OiBib29sZWFuID0gZmFsc2U7XHJcbiAgdHJhbnNsYXRpb247XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5nZXRJbmZvKCk7XHJcbiAgfVxyXG4gIGdldEluZm8oKSB7XHJcbiAgICB0aGlzLnRyYW5zbGF0aW9uID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInRyYW5zbGF0aW9uXCIpKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcclxuICAgIC8vIOajgOa1i+aYr+WQpuS8oOWFpeS6hiB3aG9sZVRvb2xiYXJTbG90XHJcbiAgICB0aGlzLmhhc1dob2xlVG9vbGJhclNsb3QgPSAhIXRoaXMud2hvbGVUb29sYmFyU2xvdDtcclxuICAgIHRoaXMuaGFzTGVmdENvbnRlbnRTbG90ID0gISF0aGlzLmxlZnRDb250ZW50U2xvdDtcclxuICB9XHJcblxyXG4gIHNldFNlYXJjaFZhbHVlKHZhbHVlKSB7XHJcbiAgICB0aGlzLnNlYXJjaElucHV0LnNlYXJjaFZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLm9uU2VhY2godmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgb25TZWFjaCh2YWx1ZSkge1xyXG4gICAgaWYgKHRoaXMuZ3JpZENvbnRlbnQpIHtcclxuICAgICAgdGhpcy5ncmlkQ29udGVudC5ncmlkLnNlYXJjaCh2YWx1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMub3JpZ25HcmlkKSB7XHJcbiAgICAgIHRoaXMub3JpZ25HcmlkLnNlYXJjaCh2YWx1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMudHJlZUdyaWQpIHtcclxuICAgICAgdGhpcy50cmVlR3JpZC5zZWFyY2godmFsdWUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5vbkdyaWRTZWFyY2guZW1pdCh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJycy1wYWdlLWxpc3Qtd3JhcFwiIFtuZ0NsYXNzXT1cInsgJ2lzLW5vdC1pbm5lcic6ICFpc0lubmVyIH1cIj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiY3VzdG9tUGFnZVRpdGxlOyBlbHNlIGRlZmF1bHRUaXRsZVwiPlxyXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3RpdGxlU2xvdF1cIj48L25nLWNvbnRlbnQ+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbiAgPG5nLXRlbXBsYXRlICNkZWZhdWx0VGl0bGU+XHJcbiAgICA8aDEgY2xhc3M9XCJycy1wYWdlLXRpdGxlXCIgKm5nSWY9XCJwYWdlVGl0bGVcIj57eyBwYWdlVGl0bGUgfX08L2gxPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cInJzLXN1Yi1zZWN0aW9uXCI+XHJcbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc3ViU2VjdGlvblNsb3RdXCI+PC9uZy1jb250ZW50PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwicnMtY29udGVudC13cmFwXCJcclxuICAgIFtuZ0NsYXNzXT1cInsgJ2hhcy1sZWZ0LWNvbnRlbnQnOiBoYXNMZWZ0Q29udGVudFNsb3QgfVwiXHJcbiAgPlxyXG4gICAgPGRpdiBjbGFzcz1cInJzLWxlZnQtY29udGVudFwiICpuZ0lmPVwiaGFzTGVmdENvbnRlbnRTbG90XCI+XHJcbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltsZWZ0Q29udGVudFNsb3RdXCI+PC9uZy1jb250ZW50PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwicnMtcmlnaHQtY29udGVudFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicnMtY29udGVudC10YWJcIj5cclxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbY29udGVudFRhYlNsb3RdXCI+PC9uZy1jb250ZW50PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cInJzLXRvb2xiYXItd3JhcFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJycy13aG9sZS1iYXJcIiAqbmdJZj1cImhhc1dob2xlVG9vbGJhclNsb3RcIj5cclxuICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlt3aG9sZVRvb2xiYXJTbG90XVwiPjwvbmctY29udGVudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicnMtbGVmdC1jb2xcIiAqbmdJZj1cIiFoYXNXaG9sZVRvb2xiYXJTbG90XCI+XHJcbiAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbbGVmdFRvb2xiYXJCdG5TbG90XVwiPjwvbmctY29udGVudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicnMtcmlnaHQtY29sXCIgKm5nSWY9XCIhaGFzV2hvbGVUb29sYmFyU2xvdFwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3JpZ2h0VG9vbGJhckJ0blNsb3RdXCI+PC9uZy1jb250ZW50PlxyXG4gICAgICAgICAgPHJzLXNlYXJjaC1pbnB1dFxyXG4gICAgICAgICAgICAjc2VhcmNoSW5wdXRcclxuICAgICAgICAgICAgKm5nSWY9XCIhaGlkZVNlYXJjaFwiXHJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJ0cmFuc2xhdGlvbi5TRUFSQ0hfQUxMX0ZJRUxEXCJcclxuICAgICAgICAgICAgKGhhbmxlU2VhcmNoKT1cIm9uU2VhY2goJGV2ZW50KVwiXHJcbiAgICAgICAgICA+PC9ycy1zZWFyY2gtaW5wdXQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicnMtZ3JpZC13cmFwXCI+XHJcbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2dyaWRTbG90XVwiPjwvbmctY29udGVudD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -10,6 +10,7 @@ export class RsPageTabComponent {
|
|
|
10
10
|
tabList = [];
|
|
11
11
|
currentTab;
|
|
12
12
|
tabChange = new EventEmitter();
|
|
13
|
+
selectedItemIndex = 0;
|
|
13
14
|
animation = {
|
|
14
15
|
previous: { effect: "", duration: 0, easing: "" },
|
|
15
16
|
next: { effect: "", duration: 0, easing: "" },
|
|
@@ -26,6 +27,7 @@ export class RsPageTabComponent {
|
|
|
26
27
|
onTabClick(e) {
|
|
27
28
|
const index = e.selectedItem.dataset.id.split('_')[1]; // sy的bug只能这么取了
|
|
28
29
|
if (e.isInteracted) {
|
|
30
|
+
this.selectedItemIndex = index;
|
|
29
31
|
this.tabChange.emit(this.tabList[index]);
|
|
30
32
|
}
|
|
31
33
|
}
|
|
@@ -34,11 +36,11 @@ export class RsPageTabComponent {
|
|
|
34
36
|
this.tabObj.select(idx);
|
|
35
37
|
}
|
|
36
38
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RsPageTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
37
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RsPageTabComponent, selector: "rs-page-tab", inputs: { pageTitle: "pageTitle", customPageTitle: "customPageTitle", tabList: "tabList", currentTab: "currentTab" }, outputs: { tabChange: "tabChange" }, viewQueries: [{ propertyName: "tabObj", first: true, predicate: ["tabObj"], descendants: true }], ngImport: i0, template: "<div class=\"rs-page-list-wrap\">\r\n <ng-container *ngIf=\"customPageTitle; else defaultTitle\">\r\n <ng-content select=\"[titleSlot]\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultTitle>\r\n <div class=\"rs-page-title\" *ngIf=\"pageTitle\">{{ pageTitle }}</div>\r\n </ng-template>\r\n <ejs-tab\r\n class=\"rs-tab\"\r\n #tabObj\r\n (selected)=\"onTabClick($event)\"\r\n [animation]=\"animation\"\r\n\t overflowMode=\"Popup\"\r\n heightAdjustMode=\"None\"\r\n >\r\n <e-tabitems>\r\n <e-tabitem *ngFor=\"let item of tabList\">\r\n <ng-template #headerText>\r\n <div>{{ item.title }}</div>\r\n </ng-template>\r\n </e-tabitem>\r\n </e-tabitems>\r\n </ejs-tab>\r\n <div class=\"rs-grid-wrap\">\r\n <ng-content select=\"[tabContentSlot]\"></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".rs-page-list-wrap{height:100%;display:flex;flex-direction:column;position:relative;margin:0 auto;max-width:1885px}.rs-page-list-wrap .rs-page-title{font-family:var(--rs-font-family);font-size:var(--rs-page-title-font-size);font-weight:700;text-align:left;color:var(--rs-page-title-color);display:flex;align-items:center;padding:16px 8px 12px 20px}.rs-page-list-wrap .rs-tab{padding:0 20px}.rs-page-list-wrap .rs-tab .e-tab-header:before{display:none}.rs-page-list-wrap .rs-tab .e-toolbar-items{gap:32px;min-height:36px}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item{border:0}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item .e-tab-wrap{padding:0;border:0;position:relative;height:36px}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item .e-tab-wrap:before{content:\" \";position:absolute;left:0;bottom:0;width:100%;height:2px;background-color:transparent}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item .e-tab-text{color:#5f6f81;font-family:Arial;font-size:13px;font-style:normal;font-weight:400;line-height:16px}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item.e-active .e-tab-wrap:before{background-color:#1f7bff}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item.e-active .e-tab-text{color:#44566c}.rs-page-list-wrap .rs-tab .e-hor-nav{width:24px;height:24px;min-height:24px;top:3px;border-radius:4px;background-color:transparent!important;border:1px solid #eaedf0!important}.rs-page-list-wrap .rs-tab .e-hor-nav .e-icons{box-shadow:none;background-color:transparent!important;border-color:transparent!important;background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2214%22 height%3D%223%22 viewBox%3D%220 0 14 3%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cg id%3D%22Drag bar%22%3E%0D%3Ccircle id%3D%22Ellipse 30%22 cx%3D%221.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 1.5 1.5)%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 31%22 cx%3D%227%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 7 1.5)%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 32%22 cx%3D%2212.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 12.5 1.5)%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\");background-size:14px 3px;background-repeat:no-repeat;background-position:4px 14px}.rs-page-list-wrap .rs-tab .e-hor-nav .e-icons:before{display:none}.rs-page-list-wrap .rs-tab .e-hor-nav .e-icons:hover{background-color:#eff5fb!important;border-color:#b1d0fc!important;background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2214%22 height%3D%223%22 viewBox%3D%220 0 14 3%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cg id%3D%22Drag bar%22%3E%0D%3Ccircle id%3D%22Ellipse 30%22 cx%3D%221.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 1.5 1.5)%22 fill%3D%22%231F7BFF%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 31%22 cx%3D%227%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 7 1.5)%22 fill%3D%22%231F7BFF%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 32%22 cx%3D%2212.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 12.5 1.5)%22 fill%3D%22%231F7BFF%22%2F%3E%0D%3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\")}.rs-page-list-wrap .rs-tab .e-toolbar-pop{min-width:160px;border-radius:10px;background:#fff;box-shadow:0 0 8px #00000040;padding:8px}.rs-page-list-wrap .rs-tab .e-toolbar-pop .e-toolbar-item .e-tab-wrap{padding:0 8px}.rs-page-list-wrap .rs-tab .e-toolbar-pop .e-toolbar-item .e-tab-wrap .e-tab-text{color:#44566c;font-family:Arial;font-size:13px;font-weight:400;line-height:16px}.rs-page-list-wrap .rs-tab .e-toolbar-pop .e-toolbar-item .e-tab-wrap:hover{border-radius:6px;background:#1f7bff0d}.rs-page-list-wrap .rs-grid-wrap{flex:1;height:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.TabComponent, selector: "ejs-tab", inputs: ["allowDragAndDrop", "animation", "clearTemplates", "cssClass", "dragArea", "enableHtmlSanitizer", "enablePersistence", "enableRtl", "headerPlacement", "height", "heightAdjustMode", "items", "loadOn", "locale", "overflowMode", "reorderActiveTab", "scrollStep", "selectedItem", "showCloseButton", "width"], outputs: ["added", "adding", "created", "destroyed", "dragged", "dragging", "onDragStart", "removed", "removing", "selected", "selecting"] }, { kind: "directive", type: i2.TabItemDirective, selector: "e-tabitems>e-tabitem", inputs: ["content", "cssClass", "disabled", "header", "headerTemplate", "id", "tabIndex", "visible"] }, { kind: "directive", type: i2.TabItemsDirective, selector: "ejs-tab>e-tabitems" }] });
|
|
39
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RsPageTabComponent, selector: "rs-page-tab", inputs: { pageTitle: "pageTitle", customPageTitle: "customPageTitle", tabList: "tabList", currentTab: "currentTab" }, outputs: { tabChange: "tabChange" }, viewQueries: [{ propertyName: "tabObj", first: true, predicate: ["tabObj"], descendants: true }], ngImport: i0, template: "<div class=\"rs-page-list-wrap\">\r\n <ng-container *ngIf=\"customPageTitle; else defaultTitle\">\r\n <ng-content select=\"[titleSlot]\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultTitle>\r\n <div class=\"rs-page-title\" *ngIf=\"pageTitle\">{{ pageTitle }}</div>\r\n </ng-template>\r\n <ejs-tab\r\n class=\"rs-tab\"\r\n #tabObj\r\n (selected)=\"onTabClick($event)\"\r\n [animation]=\"animation\"\r\n\t overflowMode=\"Popup\"\r\n heightAdjustMode=\"None\"\r\n [selectedItem]=\"selectedItemIndex\"\r\n >\r\n <e-tabitems>\r\n <e-tabitem *ngFor=\"let item of tabList\">\r\n <ng-template #headerText>\r\n <div>{{ item.title }}</div>\r\n </ng-template>\r\n </e-tabitem>\r\n </e-tabitems>\r\n </ejs-tab>\r\n <div class=\"rs-grid-wrap\">\r\n <ng-content select=\"[tabContentSlot]\"></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".rs-page-list-wrap{height:100%;display:flex;flex-direction:column;position:relative;margin:0 auto;max-width:1885px}.rs-page-list-wrap .rs-page-title{font-family:var(--rs-font-family);font-size:var(--rs-page-title-font-size);font-weight:700;text-align:left;color:var(--rs-page-title-color);display:flex;align-items:center;padding:16px 8px 12px 20px}.rs-page-list-wrap .rs-tab{padding:0 20px}.rs-page-list-wrap .rs-tab .e-tab-header:before{display:none}.rs-page-list-wrap .rs-tab .e-toolbar-items{gap:32px;min-height:36px}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item{border:0}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item .e-tab-wrap{padding:0;border:0;position:relative;height:36px}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item .e-tab-wrap:before{content:\" \";position:absolute;left:0;bottom:0;width:100%;height:2px;background-color:transparent}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item .e-tab-text{color:#5f6f81;font-family:Arial;font-size:13px;font-style:normal;font-weight:400;line-height:16px}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item.e-active .e-tab-wrap:before{background-color:#1f7bff}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item.e-active .e-tab-text{color:#44566c}.rs-page-list-wrap .rs-tab .e-hor-nav{width:24px;height:24px;min-height:24px;top:3px;border-radius:4px;background-color:transparent!important;border:1px solid #eaedf0!important}.rs-page-list-wrap .rs-tab .e-hor-nav .e-icons{box-shadow:none;background-color:transparent!important;border-color:transparent!important;background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2214%22 height%3D%223%22 viewBox%3D%220 0 14 3%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cg id%3D%22Drag bar%22%3E%0D%3Ccircle id%3D%22Ellipse 30%22 cx%3D%221.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 1.5 1.5)%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 31%22 cx%3D%227%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 7 1.5)%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 32%22 cx%3D%2212.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 12.5 1.5)%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\");background-size:14px 3px;background-repeat:no-repeat;background-position:4px 14px}.rs-page-list-wrap .rs-tab .e-hor-nav .e-icons:before{display:none}.rs-page-list-wrap .rs-tab .e-hor-nav .e-icons:hover{background-color:#eff5fb!important;border-color:#b1d0fc!important;background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2214%22 height%3D%223%22 viewBox%3D%220 0 14 3%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cg id%3D%22Drag bar%22%3E%0D%3Ccircle id%3D%22Ellipse 30%22 cx%3D%221.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 1.5 1.5)%22 fill%3D%22%231F7BFF%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 31%22 cx%3D%227%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 7 1.5)%22 fill%3D%22%231F7BFF%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 32%22 cx%3D%2212.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 12.5 1.5)%22 fill%3D%22%231F7BFF%22%2F%3E%0D%3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\")}.rs-page-list-wrap .rs-tab .e-toolbar-pop{min-width:160px;border-radius:10px;background:#fff;box-shadow:0 0 8px #00000040;padding:8px}.rs-page-list-wrap .rs-tab .e-toolbar-pop .e-toolbar-item .e-tab-wrap{padding:0 8px}.rs-page-list-wrap .rs-tab .e-toolbar-pop .e-toolbar-item .e-tab-wrap .e-tab-text{color:#44566c;font-family:Arial;font-size:13px;font-weight:400;line-height:16px}.rs-page-list-wrap .rs-tab .e-toolbar-pop .e-toolbar-item .e-tab-wrap:hover{border-radius:6px;background:#1f7bff0d}.rs-page-list-wrap .rs-grid-wrap{flex:1;height:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.TabComponent, selector: "ejs-tab", inputs: ["allowDragAndDrop", "animation", "clearTemplates", "cssClass", "dragArea", "enableHtmlSanitizer", "enablePersistence", "enableRtl", "headerPlacement", "height", "heightAdjustMode", "items", "loadOn", "locale", "overflowMode", "reorderActiveTab", "scrollStep", "selectedItem", "showCloseButton", "width"], outputs: ["added", "adding", "created", "destroyed", "dragged", "dragging", "onDragStart", "removed", "removing", "selected", "selecting"] }, { kind: "directive", type: i2.TabItemDirective, selector: "e-tabitems>e-tabitem", inputs: ["content", "cssClass", "disabled", "header", "headerTemplate", "id", "tabIndex", "visible"] }, { kind: "directive", type: i2.TabItemsDirective, selector: "ejs-tab>e-tabitems" }] });
|
|
38
40
|
}
|
|
39
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RsPageTabComponent, decorators: [{
|
|
40
42
|
type: Component,
|
|
41
|
-
args: [{ selector: "rs-page-tab", template: "<div class=\"rs-page-list-wrap\">\r\n <ng-container *ngIf=\"customPageTitle; else defaultTitle\">\r\n <ng-content select=\"[titleSlot]\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultTitle>\r\n <div class=\"rs-page-title\" *ngIf=\"pageTitle\">{{ pageTitle }}</div>\r\n </ng-template>\r\n <ejs-tab\r\n class=\"rs-tab\"\r\n #tabObj\r\n (selected)=\"onTabClick($event)\"\r\n [animation]=\"animation\"\r\n\t overflowMode=\"Popup\"\r\n heightAdjustMode=\"None\"\r\n >\r\n <e-tabitems>\r\n <e-tabitem *ngFor=\"let item of tabList\">\r\n <ng-template #headerText>\r\n <div>{{ item.title }}</div>\r\n </ng-template>\r\n </e-tabitem>\r\n </e-tabitems>\r\n </ejs-tab>\r\n <div class=\"rs-grid-wrap\">\r\n <ng-content select=\"[tabContentSlot]\"></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".rs-page-list-wrap{height:100%;display:flex;flex-direction:column;position:relative;margin:0 auto;max-width:1885px}.rs-page-list-wrap .rs-page-title{font-family:var(--rs-font-family);font-size:var(--rs-page-title-font-size);font-weight:700;text-align:left;color:var(--rs-page-title-color);display:flex;align-items:center;padding:16px 8px 12px 20px}.rs-page-list-wrap .rs-tab{padding:0 20px}.rs-page-list-wrap .rs-tab .e-tab-header:before{display:none}.rs-page-list-wrap .rs-tab .e-toolbar-items{gap:32px;min-height:36px}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item{border:0}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item .e-tab-wrap{padding:0;border:0;position:relative;height:36px}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item .e-tab-wrap:before{content:\" \";position:absolute;left:0;bottom:0;width:100%;height:2px;background-color:transparent}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item .e-tab-text{color:#5f6f81;font-family:Arial;font-size:13px;font-style:normal;font-weight:400;line-height:16px}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item.e-active .e-tab-wrap:before{background-color:#1f7bff}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item.e-active .e-tab-text{color:#44566c}.rs-page-list-wrap .rs-tab .e-hor-nav{width:24px;height:24px;min-height:24px;top:3px;border-radius:4px;background-color:transparent!important;border:1px solid #eaedf0!important}.rs-page-list-wrap .rs-tab .e-hor-nav .e-icons{box-shadow:none;background-color:transparent!important;border-color:transparent!important;background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2214%22 height%3D%223%22 viewBox%3D%220 0 14 3%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cg id%3D%22Drag bar%22%3E%0D%3Ccircle id%3D%22Ellipse 30%22 cx%3D%221.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 1.5 1.5)%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 31%22 cx%3D%227%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 7 1.5)%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 32%22 cx%3D%2212.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 12.5 1.5)%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\");background-size:14px 3px;background-repeat:no-repeat;background-position:4px 14px}.rs-page-list-wrap .rs-tab .e-hor-nav .e-icons:before{display:none}.rs-page-list-wrap .rs-tab .e-hor-nav .e-icons:hover{background-color:#eff5fb!important;border-color:#b1d0fc!important;background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2214%22 height%3D%223%22 viewBox%3D%220 0 14 3%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cg id%3D%22Drag bar%22%3E%0D%3Ccircle id%3D%22Ellipse 30%22 cx%3D%221.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 1.5 1.5)%22 fill%3D%22%231F7BFF%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 31%22 cx%3D%227%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 7 1.5)%22 fill%3D%22%231F7BFF%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 32%22 cx%3D%2212.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 12.5 1.5)%22 fill%3D%22%231F7BFF%22%2F%3E%0D%3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\")}.rs-page-list-wrap .rs-tab .e-toolbar-pop{min-width:160px;border-radius:10px;background:#fff;box-shadow:0 0 8px #00000040;padding:8px}.rs-page-list-wrap .rs-tab .e-toolbar-pop .e-toolbar-item .e-tab-wrap{padding:0 8px}.rs-page-list-wrap .rs-tab .e-toolbar-pop .e-toolbar-item .e-tab-wrap .e-tab-text{color:#44566c;font-family:Arial;font-size:13px;font-weight:400;line-height:16px}.rs-page-list-wrap .rs-tab .e-toolbar-pop .e-toolbar-item .e-tab-wrap:hover{border-radius:6px;background:#1f7bff0d}.rs-page-list-wrap .rs-grid-wrap{flex:1;height:0}\n"] }]
|
|
43
|
+
args: [{ selector: "rs-page-tab", template: "<div class=\"rs-page-list-wrap\">\r\n <ng-container *ngIf=\"customPageTitle; else defaultTitle\">\r\n <ng-content select=\"[titleSlot]\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultTitle>\r\n <div class=\"rs-page-title\" *ngIf=\"pageTitle\">{{ pageTitle }}</div>\r\n </ng-template>\r\n <ejs-tab\r\n class=\"rs-tab\"\r\n #tabObj\r\n (selected)=\"onTabClick($event)\"\r\n [animation]=\"animation\"\r\n\t overflowMode=\"Popup\"\r\n heightAdjustMode=\"None\"\r\n [selectedItem]=\"selectedItemIndex\"\r\n >\r\n <e-tabitems>\r\n <e-tabitem *ngFor=\"let item of tabList\">\r\n <ng-template #headerText>\r\n <div>{{ item.title }}</div>\r\n </ng-template>\r\n </e-tabitem>\r\n </e-tabitems>\r\n </ejs-tab>\r\n <div class=\"rs-grid-wrap\">\r\n <ng-content select=\"[tabContentSlot]\"></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".rs-page-list-wrap{height:100%;display:flex;flex-direction:column;position:relative;margin:0 auto;max-width:1885px}.rs-page-list-wrap .rs-page-title{font-family:var(--rs-font-family);font-size:var(--rs-page-title-font-size);font-weight:700;text-align:left;color:var(--rs-page-title-color);display:flex;align-items:center;padding:16px 8px 12px 20px}.rs-page-list-wrap .rs-tab{padding:0 20px}.rs-page-list-wrap .rs-tab .e-tab-header:before{display:none}.rs-page-list-wrap .rs-tab .e-toolbar-items{gap:32px;min-height:36px}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item{border:0}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item .e-tab-wrap{padding:0;border:0;position:relative;height:36px}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item .e-tab-wrap:before{content:\" \";position:absolute;left:0;bottom:0;width:100%;height:2px;background-color:transparent}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item .e-tab-text{color:#5f6f81;font-family:Arial;font-size:13px;font-style:normal;font-weight:400;line-height:16px}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item.e-active .e-tab-wrap:before{background-color:#1f7bff}.rs-page-list-wrap .rs-tab .e-toolbar-items .e-toolbar-item.e-active .e-tab-text{color:#44566c}.rs-page-list-wrap .rs-tab .e-hor-nav{width:24px;height:24px;min-height:24px;top:3px;border-radius:4px;background-color:transparent!important;border:1px solid #eaedf0!important}.rs-page-list-wrap .rs-tab .e-hor-nav .e-icons{box-shadow:none;background-color:transparent!important;border-color:transparent!important;background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2214%22 height%3D%223%22 viewBox%3D%220 0 14 3%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cg id%3D%22Drag bar%22%3E%0D%3Ccircle id%3D%22Ellipse 30%22 cx%3D%221.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 1.5 1.5)%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 31%22 cx%3D%227%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 7 1.5)%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 32%22 cx%3D%2212.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 12.5 1.5)%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\");background-size:14px 3px;background-repeat:no-repeat;background-position:4px 14px}.rs-page-list-wrap .rs-tab .e-hor-nav .e-icons:before{display:none}.rs-page-list-wrap .rs-tab .e-hor-nav .e-icons:hover{background-color:#eff5fb!important;border-color:#b1d0fc!important;background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2214%22 height%3D%223%22 viewBox%3D%220 0 14 3%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cg id%3D%22Drag bar%22%3E%0D%3Ccircle id%3D%22Ellipse 30%22 cx%3D%221.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 1.5 1.5)%22 fill%3D%22%231F7BFF%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 31%22 cx%3D%227%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 7 1.5)%22 fill%3D%22%231F7BFF%22%2F%3E%0D%3Ccircle id%3D%22Ellipse 32%22 cx%3D%2212.5%22 cy%3D%221.5%22 r%3D%221.5%22 transform%3D%22rotate(-90 12.5 1.5)%22 fill%3D%22%231F7BFF%22%2F%3E%0D%3C%2Fg%3E%0D%3C%2Fsvg%3E%0D\")}.rs-page-list-wrap .rs-tab .e-toolbar-pop{min-width:160px;border-radius:10px;background:#fff;box-shadow:0 0 8px #00000040;padding:8px}.rs-page-list-wrap .rs-tab .e-toolbar-pop .e-toolbar-item .e-tab-wrap{padding:0 8px}.rs-page-list-wrap .rs-tab .e-toolbar-pop .e-toolbar-item .e-tab-wrap .e-tab-text{color:#44566c;font-family:Arial;font-size:13px;font-weight:400;line-height:16px}.rs-page-list-wrap .rs-tab .e-toolbar-pop .e-toolbar-item .e-tab-wrap:hover{border-radius:6px;background:#1f7bff0d}.rs-page-list-wrap .rs-grid-wrap{flex:1;height:0}\n"] }]
|
|
42
44
|
}], propDecorators: { tabObj: [{
|
|
43
45
|
type: ViewChild,
|
|
44
46
|
args: ["tabObj", { static: false }]
|
|
@@ -53,4 +55,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
53
55
|
}], tabChange: [{
|
|
54
56
|
type: Output
|
|
55
57
|
}] } });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcmFpc2UtY29tbW9uLWxpYi9zcmMvbGliL2xheW91dC9wYWdlLXRhYi9pbmRleC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yYWlzZS1jb21tb24tbGliL3NyYy9saWIvbGF5b3V0L3BhZ2UtdGFiL2luZGV4LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU07QUFDTixPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQzs7OztBQVF2QixNQUFNLE9BQU8sa0JBQWtCO0lBRXRCLE1BQU0sQ0FBZTtJQUNuQixTQUFTLENBQUM7SUFDVixlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDYixVQUFVLENBQUM7SUFHcEIsU0FBUyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFDL0IsaUJBQWlCLEdBQUcsQ0FBQyxDQUFDO0lBRWYsU0FBUyxHQUFXO1FBQ3pCLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFO1FBQ2pELElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFO0tBQzlDLENBQUM7SUFDRixRQUFRLEtBQUksQ0FBQztJQUViLGVBQWU7UUFDYixJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssU0FBUyxFQUFFO1lBQ2pDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUNoQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsVUFBVSxDQUN2QyxDQUFDO1lBQ0YsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMxQixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDUjtJQUNILENBQUM7SUFDRCxVQUFVLENBQUMsQ0FBQztRQUNWLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQyxlQUFlO1FBQ3JFLElBQUksQ0FBQyxDQUFDLFlBQVksRUFBRTtZQUNsQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1lBQy9CLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUMxQztJQUNILENBQUM7SUFDRCxhQUFhO0lBQ2IsU0FBUyxDQUFDLEdBQVc7UUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUIsQ0FBQzt3R0F0Q1Usa0JBQWtCOzRGQUFsQixrQkFBa0IsZ1RDbEIvQix5NEJBNEJBOzs0RkRWYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsYUFBYTs4QkFNaEIsTUFBTTtzQkFEWixTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBRTdCLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFHTixTQUFTO3NCQURSLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvLyDnu4Tku7bnsbtcclxuaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFRhYkNvbXBvbmVudCB9IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci1uYXZpZ2F0aW9uc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwicnMtcGFnZS10YWJcIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL2luZGV4LmNvbXBvbmVudC5odG1sXCIsXHJcbiAgc3R5bGVVcmxzOiBbXCIuL2luZGV4LmNvbXBvbmVudC5zY3NzXCJdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUnNQYWdlVGFiQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICBAVmlld0NoaWxkKFwidGFiT2JqXCIsIHsgc3RhdGljOiBmYWxzZSB9KVxyXG4gIHB1YmxpYyB0YWJPYmo6IFRhYkNvbXBvbmVudDtcclxuICBASW5wdXQoKSBwYWdlVGl0bGU7XHJcbiAgQElucHV0KCkgY3VzdG9tUGFnZVRpdGxlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgdGFiTGlzdCA9IFtdO1xyXG4gIEBJbnB1dCgpIGN1cnJlbnRUYWI7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHRhYkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBzZWxlY3RlZEl0ZW1JbmRleCA9IDA7XHJcblxyXG4gIHB1YmxpYyBhbmltYXRpb246IG9iamVjdCA9IHtcclxuICAgIHByZXZpb3VzOiB7IGVmZmVjdDogXCJcIiwgZHVyYXRpb246IDAsIGVhc2luZzogXCJcIiB9LFxyXG4gICAgbmV4dDogeyBlZmZlY3Q6IFwiXCIsIGR1cmF0aW9uOiAwLCBlYXNpbmc6IFwiXCIgfSxcclxuICB9O1xyXG4gIG5nT25Jbml0KCkge31cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY3VycmVudFRhYiAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIGNvbnN0IGlkeCA9IHRoaXMudGFiTGlzdC5maW5kSW5kZXgoXHJcbiAgICAgICAgKGVsZSkgPT4gZWxlLnZhbHVlID09PSB0aGlzLmN1cnJlbnRUYWJcclxuICAgICAgKTtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy50YWJPYmouc2VsZWN0KGlkeCk7XHJcbiAgICAgIH0sIDMwKTtcclxuICAgIH1cclxuICB9XHJcbiAgb25UYWJDbGljayhlKSB7XHJcbiAgICBjb25zdCBpbmRleCA9IGUuc2VsZWN0ZWRJdGVtLmRhdGFzZXQuaWQuc3BsaXQoJ18nKVsxXSAvLyBzeeeahGJ1Z+WPquiDvei/meS5iOWPluS6hlxyXG4gICAgaWYgKGUuaXNJbnRlcmFjdGVkKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtSW5kZXggPSBpbmRleDtcclxuICAgICAgdGhpcy50YWJDaGFuZ2UuZW1pdCh0aGlzLnRhYkxpc3RbaW5kZXhdKTtcclxuICAgIH1cclxuICB9XHJcbiAgLy8g5YiH5o2idGFiLOS8oOWFpeS4i+agh1xyXG4gIGNoYW5nZVRhYihpZHg6IG51bWJlcikge1xyXG4gICAgdGhpcy50YWJPYmouc2VsZWN0KGlkeCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJycy1wYWdlLWxpc3Qtd3JhcFwiPlxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXN0b21QYWdlVGl0bGU7IGVsc2UgZGVmYXVsdFRpdGxlXCI+XHJcbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbdGl0bGVTbG90XVwiPjwvbmctY29udGVudD5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8bmctdGVtcGxhdGUgI2RlZmF1bHRUaXRsZT5cclxuICAgIDxkaXYgY2xhc3M9XCJycy1wYWdlLXRpdGxlXCIgKm5nSWY9XCJwYWdlVGl0bGVcIj57eyBwYWdlVGl0bGUgfX08L2Rpdj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG4gIDxlanMtdGFiXHJcbiAgICBjbGFzcz1cInJzLXRhYlwiXHJcbiAgICAjdGFiT2JqXHJcbiAgICAoc2VsZWN0ZWQpPVwib25UYWJDbGljaygkZXZlbnQpXCJcclxuICAgIFthbmltYXRpb25dPVwiYW5pbWF0aW9uXCJcclxuXHQgIG92ZXJmbG93TW9kZT1cIlBvcHVwXCJcclxuICAgIGhlaWdodEFkanVzdE1vZGU9XCJOb25lXCJcclxuICAgIFtzZWxlY3RlZEl0ZW1dPVwic2VsZWN0ZWRJdGVtSW5kZXhcIlxyXG4gID5cclxuICAgIDxlLXRhYml0ZW1zPlxyXG4gICAgICA8ZS10YWJpdGVtICpuZ0Zvcj1cImxldCBpdGVtIG9mIHRhYkxpc3RcIj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI2hlYWRlclRleHQ+XHJcbiAgICAgICAgICA8ZGl2Pnt7IGl0ZW0udGl0bGUgfX08L2Rpdj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L2UtdGFiaXRlbT5cclxuICAgIDwvZS10YWJpdGVtcz5cclxuICA8L2Vqcy10YWI+XHJcbiAgPGRpdiBjbGFzcz1cInJzLWdyaWQtd3JhcFwiPlxyXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3RhYkNvbnRlbnRTbG90XVwiPjwvbmctY29udGVudD5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcmFpc2UtY29tbW9uLWxpYi9zcmMvbGliL2xheW91dC9ycy1zdGVwcGVyL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgU3RlcEl0ZW0gPSB7XHJcbiAgICBsYWJlbDogc3RyaW5nO1xyXG4gICAgc3RlcDogbnVtYmVyO1xyXG4gICAgZGlzcGxheVRpdGxlPzogc3RyaW5nO1xyXG59OyJdfQ==
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
// 组件类
|
|
2
|
+
import { Component, EventEmitter, Input, Output, ViewChild, HostListener, } from "@angular/core";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../service/common-function.service";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
import * as i3 from "@angular/material/tooltip";
|
|
7
|
+
export class RSStepperComponent {
|
|
8
|
+
cf;
|
|
9
|
+
ref;
|
|
10
|
+
menu;
|
|
11
|
+
steps = [];
|
|
12
|
+
currentStep = 0;
|
|
13
|
+
constructor(cf, ref) {
|
|
14
|
+
this.cf = cf;
|
|
15
|
+
this.ref = ref;
|
|
16
|
+
}
|
|
17
|
+
stepClick = new EventEmitter();
|
|
18
|
+
unlockedStep = 0; //已解锁的最大步骤
|
|
19
|
+
containerRefId;
|
|
20
|
+
ngOnInit() {
|
|
21
|
+
this.steps.forEach((step) => {
|
|
22
|
+
step.displayTitle = this.cf.setMiddleEllipsis(step.label, 132, 12);
|
|
23
|
+
});
|
|
24
|
+
this.syncUnlockedStep();
|
|
25
|
+
}
|
|
26
|
+
ngAfterViewInit() {
|
|
27
|
+
setTimeout(() => this.checkBtnShow(true));
|
|
28
|
+
}
|
|
29
|
+
ngOnChanges(changes) {
|
|
30
|
+
if (changes["currentStep"] && !changes["currentStep"].firstChange) {
|
|
31
|
+
this.syncUnlockedStep();
|
|
32
|
+
// 当外部传入的 currentStep 变化时,滚动到对应步骤
|
|
33
|
+
setTimeout(() => this.scrollToStep());
|
|
34
|
+
}
|
|
35
|
+
if ((changes["steps"] && changes["steps"].currentValue) ||
|
|
36
|
+
changes["currentStep"]) {
|
|
37
|
+
setTimeout(() => this.checkBtnShow());
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
// 同步unlockedStep的最大值
|
|
41
|
+
syncUnlockedStep() {
|
|
42
|
+
if (this.currentStep > this.unlockedStep) {
|
|
43
|
+
this.unlockedStep = this.currentStep;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
onStepClick(step, index) {
|
|
47
|
+
if (step.step <= this.unlockedStep) {
|
|
48
|
+
this.currentStep = step.step;
|
|
49
|
+
this.stepClick.emit(step);
|
|
50
|
+
setTimeout(() => this.scrollToStep(index));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
scrollToStep(index) {
|
|
54
|
+
if (!this.menu || !this.menu.nativeElement)
|
|
55
|
+
return;
|
|
56
|
+
const menuEl = this.menu.nativeElement;
|
|
57
|
+
const items = menuEl.querySelectorAll(".step");
|
|
58
|
+
const targetIndex = typeof index === "number"
|
|
59
|
+
? index
|
|
60
|
+
: this.steps.findIndex((s) => s.step === this.currentStep);
|
|
61
|
+
if (targetIndex < 0 || targetIndex >= items.length)
|
|
62
|
+
return;
|
|
63
|
+
const targetEl = items[targetIndex];
|
|
64
|
+
//获取相对位置
|
|
65
|
+
const containerRect = menuEl.getBoundingClientRect();
|
|
66
|
+
const elementRect = targetEl.getBoundingClientRect();
|
|
67
|
+
// 计算元素相对于容器的位置
|
|
68
|
+
const elementRelativeLeft = elementRect.left - containerRect.left + menuEl.scrollLeft;
|
|
69
|
+
const elementWidth = elementRect.width;
|
|
70
|
+
const containerWidth = menuEl.clientWidth;
|
|
71
|
+
// 计算元素中心点相对于容器的位置
|
|
72
|
+
const elementCenter = elementRelativeLeft + elementWidth / 2;
|
|
73
|
+
// 目标滚动位置:让元素中心出现在可视区域中心
|
|
74
|
+
const scrollTarget = elementCenter - containerWidth / 2;
|
|
75
|
+
// 限制在有效滚动范围内
|
|
76
|
+
const maxScroll = Math.max(0, menuEl.scrollWidth - containerWidth);
|
|
77
|
+
const finalTarget = Math.max(0, Math.min(scrollTarget, maxScroll));
|
|
78
|
+
menuEl.scrollTo({ left: finalTarget, behavior: "smooth" });
|
|
79
|
+
this.onScroll();
|
|
80
|
+
}
|
|
81
|
+
onResize(event) {
|
|
82
|
+
this.checkBtnShow();
|
|
83
|
+
}
|
|
84
|
+
checkBtnShow(init) {
|
|
85
|
+
if (!this.menu || !this.menu.nativeElement)
|
|
86
|
+
return;
|
|
87
|
+
const menuEl = this.menu.nativeElement;
|
|
88
|
+
const { scrollWidth, clientWidth } = menuEl;
|
|
89
|
+
// 判断是否需要显示滚动按钮
|
|
90
|
+
let threshold = clientWidth;
|
|
91
|
+
if (this.containerRefId) {
|
|
92
|
+
const containerRef = document.getElementById(this.containerRefId);
|
|
93
|
+
if (containerRef) {
|
|
94
|
+
threshold = Math.max(containerRef.offsetWidth * 0.8, 400);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
this.showBtn = scrollWidth > threshold;
|
|
98
|
+
// 初始化时滚动到当前步骤
|
|
99
|
+
if (init) {
|
|
100
|
+
setTimeout(() => this.scrollToStep(), 0);
|
|
101
|
+
}
|
|
102
|
+
this.onScroll();
|
|
103
|
+
this.ref.markForCheck();
|
|
104
|
+
}
|
|
105
|
+
scrollLeft() {
|
|
106
|
+
const { scrollLeft } = this.menu.nativeElement;
|
|
107
|
+
const dis = scrollLeft / 100 < 2 ? scrollLeft + 10 : 100;
|
|
108
|
+
this.menu.nativeElement.scrollBy({ left: -dis, behavior: "smooth" });
|
|
109
|
+
}
|
|
110
|
+
scrollRight() {
|
|
111
|
+
const { scrollLeft, scrollWidth, clientWidth } = this.menu.nativeElement;
|
|
112
|
+
const rest = scrollWidth - clientWidth - scrollLeft;
|
|
113
|
+
const dis = rest / 100 < 2 ? rest + 10 : 100;
|
|
114
|
+
this.menu.nativeElement.scrollBy({ left: dis, behavior: "smooth" });
|
|
115
|
+
}
|
|
116
|
+
showBtn = false;
|
|
117
|
+
isAtStart = true;
|
|
118
|
+
isAtEnd = false;
|
|
119
|
+
onScroll() {
|
|
120
|
+
const { scrollLeft, scrollWidth, clientWidth } = this.menu.nativeElement;
|
|
121
|
+
this.isAtStart = scrollLeft <= 1;
|
|
122
|
+
this.isAtEnd = scrollLeft + clientWidth >= scrollWidth - 1;
|
|
123
|
+
this.ref.markForCheck();
|
|
124
|
+
}
|
|
125
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RSStepperComponent, deps: [{ token: i1.CommonFunctionService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
126
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RSStepperComponent, selector: "rs-stepper", inputs: { steps: "steps", currentStep: "currentStep", unlockedStep: "unlockedStep", containerRefId: "containerRefId" }, outputs: { stepClick: "stepClick" }, host: { listeners: { "window:resize": "onResize($event)" } }, viewQueries: [{ propertyName: "menu", first: true, predicate: ["menu"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"rs-stepper\">\r\n <div class=\"steps-wrap\">\r\n <div\r\n class=\"row-btn\"\r\n [class.hidden]=\"isAtStart || !showBtn\"\r\n (click)=\"scrollLeft()\"\r\n >\r\n <div class=\"hover\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"17\"\r\n height=\"16\"\r\n viewBox=\"0 0 17 16\"\r\n fill=\"none\"\r\n >\r\n <path\r\n d=\"M10.4995 3.99955L7.24219 8.24219L10.4995 12.4848\"\r\n stroke=\"#1F7BFF\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"normal\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"17\"\r\n height=\"16\"\r\n viewBox=\"0 0 17 16\"\r\n fill=\"none\"\r\n >\r\n <path\r\n d=\"M10.4995 3.99955L7.24219 8.24219L10.4995 12.4848\"\r\n stroke=\"#6B6B6B\"\r\n />\r\n </svg>\r\n </div>\r\n </div>\r\n <div\r\n class=\"steps-content\"\r\n [ngClass]=\"{\r\n leftMask: showBtn && !isAtStart,\r\n rightMask: showBtn && !isAtEnd,\r\n bothMask: showBtn && !isAtStart && showBtn && !isAtEnd\r\n }\"\r\n #menu\r\n (scroll)=\"onScroll()\"\r\n >\r\n <ng-container *ngFor=\"let item of steps; let i = index\">\r\n <div\r\n class=\"step\"\r\n [ngClass]=\"{\r\n done: item.step <= unlockedStep,\r\n active: item.step === currentStep\r\n }\"\r\n (click)=\"onStepClick(item, i)\"\r\n >\r\n <div\r\n class=\"step-label\"\r\n [matTooltip]=\"item.label !== item.displayTitle ? item.label : ''\"\r\n matTooltipPosition=\"above\"\r\n >\r\n {{ item.displayTitle }}\r\n </div>\r\n </div>\r\n <div class=\"step-arrow\" *ngIf=\"i < steps.length - 1\">\r\n <img src=\"/assets/img/step-arrow.svg\" />\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div\r\n class=\"row-btn\"\r\n [class.hidden]=\"isAtEnd || !showBtn\"\r\n (click)=\"scrollRight()\"\r\n >\r\n <div class=\"hover\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"17\"\r\n height=\"16\"\r\n viewBox=\"0 0 17 16\"\r\n fill=\"none\"\r\n >\r\n <path\r\n d=\"M7.50045 3.99955L10.7578 8.24219L7.50045 12.4848\"\r\n stroke=\"#1F7BFF\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"normal\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"17\"\r\n height=\"16\"\r\n viewBox=\"0 0 17 16\"\r\n fill=\"none\"\r\n >\r\n <path\r\n d=\"M7.50045 3.99955L10.7578 8.24219L7.50045 12.4848\"\r\n stroke=\"#6B6B6B\"\r\n />\r\n </svg>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".rs-stepper{font-family:Arial;width:100%;border-bottom:1px solid var(--rs-border-color)}.rs-stepper .steps-wrap{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 auto}.rs-stepper .steps-wrap .steps-content{display:flex;align-items:center;flex-wrap:nowrap;min-width:0;overflow-x:auto;overflow-y:hidden;gap:8px}.rs-stepper .steps-wrap .steps-content.leftMask{-webkit-mask-image:linear-gradient(90deg,transparent,#fff 10%,#d8d3d3 100%);mask-image:linear-gradient(90deg,transparent,#fff 10%,#d8d3d3 100%)}.rs-stepper .steps-wrap .steps-content.rightMask{-webkit-mask-image:linear-gradient(90deg,#fff 0%,#fff 90%,transparent);mask-image:linear-gradient(90deg,#fff 0%,#fff 90%,transparent)}.rs-stepper .steps-wrap .steps-content.bothMask{-webkit-mask-image:linear-gradient(90deg,transparent,#fff 10%,#fff 90%,transparent)!important;mask-image:linear-gradient(90deg,transparent,#fff 10%,#fff 90%,transparent)!important}.rs-stepper .steps-wrap .steps-content::-webkit-scrollbar{width:0;height:0}.rs-stepper .steps-wrap .step{flex:0 0 auto}.rs-stepper .steps-wrap .step .step-label{color:var(--rs-labels-color);font-size:12px;font-weight:400;line-height:22px;text-align:center;white-space:nowrap;padding:0 12px 12px;display:flex;align-items:center}.rs-stepper .steps-wrap .step.done{cursor:pointer}.rs-stepper .steps-wrap .step.done .step-label{color:var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step.active .step-label{color:var(--rs-active-labels-color);font-weight:700;border-bottom:1px solid var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step-arrow{flex:0 0 auto;padding:0 12px 12px;display:flex;align-items:center}.rs-stepper .row-btn{margin-bottom:12px;display:flex;width:20px;height:20px;align-items:center;justify-content:center;border-radius:4px;border:1px #bdc4ca solid;flex-shrink:0;cursor:pointer;visibility:visible}.rs-stepper .row-btn .hover{display:none}.rs-stepper .row-btn .normal{display:flex}.rs-stepper .row-btn:hover{background-color:#1f7bff0a}.rs-stepper .row-btn:hover .normal{display:none}.rs-stepper .row-btn:hover .hover{display:flex}.rs-stepper .row-btn.hidden{visibility:hidden}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
|
|
127
|
+
}
|
|
128
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RSStepperComponent, decorators: [{
|
|
129
|
+
type: Component,
|
|
130
|
+
args: [{ selector: "rs-stepper", template: "<div class=\"rs-stepper\">\r\n <div class=\"steps-wrap\">\r\n <div\r\n class=\"row-btn\"\r\n [class.hidden]=\"isAtStart || !showBtn\"\r\n (click)=\"scrollLeft()\"\r\n >\r\n <div class=\"hover\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"17\"\r\n height=\"16\"\r\n viewBox=\"0 0 17 16\"\r\n fill=\"none\"\r\n >\r\n <path\r\n d=\"M10.4995 3.99955L7.24219 8.24219L10.4995 12.4848\"\r\n stroke=\"#1F7BFF\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"normal\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"17\"\r\n height=\"16\"\r\n viewBox=\"0 0 17 16\"\r\n fill=\"none\"\r\n >\r\n <path\r\n d=\"M10.4995 3.99955L7.24219 8.24219L10.4995 12.4848\"\r\n stroke=\"#6B6B6B\"\r\n />\r\n </svg>\r\n </div>\r\n </div>\r\n <div\r\n class=\"steps-content\"\r\n [ngClass]=\"{\r\n leftMask: showBtn && !isAtStart,\r\n rightMask: showBtn && !isAtEnd,\r\n bothMask: showBtn && !isAtStart && showBtn && !isAtEnd\r\n }\"\r\n #menu\r\n (scroll)=\"onScroll()\"\r\n >\r\n <ng-container *ngFor=\"let item of steps; let i = index\">\r\n <div\r\n class=\"step\"\r\n [ngClass]=\"{\r\n done: item.step <= unlockedStep,\r\n active: item.step === currentStep\r\n }\"\r\n (click)=\"onStepClick(item, i)\"\r\n >\r\n <div\r\n class=\"step-label\"\r\n [matTooltip]=\"item.label !== item.displayTitle ? item.label : ''\"\r\n matTooltipPosition=\"above\"\r\n >\r\n {{ item.displayTitle }}\r\n </div>\r\n </div>\r\n <div class=\"step-arrow\" *ngIf=\"i < steps.length - 1\">\r\n <img src=\"/assets/img/step-arrow.svg\" />\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div\r\n class=\"row-btn\"\r\n [class.hidden]=\"isAtEnd || !showBtn\"\r\n (click)=\"scrollRight()\"\r\n >\r\n <div class=\"hover\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"17\"\r\n height=\"16\"\r\n viewBox=\"0 0 17 16\"\r\n fill=\"none\"\r\n >\r\n <path\r\n d=\"M7.50045 3.99955L10.7578 8.24219L7.50045 12.4848\"\r\n stroke=\"#1F7BFF\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"normal\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"17\"\r\n height=\"16\"\r\n viewBox=\"0 0 17 16\"\r\n fill=\"none\"\r\n >\r\n <path\r\n d=\"M7.50045 3.99955L10.7578 8.24219L7.50045 12.4848\"\r\n stroke=\"#6B6B6B\"\r\n />\r\n </svg>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".rs-stepper{font-family:Arial;width:100%;border-bottom:1px solid var(--rs-border-color)}.rs-stepper .steps-wrap{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 auto}.rs-stepper .steps-wrap .steps-content{display:flex;align-items:center;flex-wrap:nowrap;min-width:0;overflow-x:auto;overflow-y:hidden;gap:8px}.rs-stepper .steps-wrap .steps-content.leftMask{-webkit-mask-image:linear-gradient(90deg,transparent,#fff 10%,#d8d3d3 100%);mask-image:linear-gradient(90deg,transparent,#fff 10%,#d8d3d3 100%)}.rs-stepper .steps-wrap .steps-content.rightMask{-webkit-mask-image:linear-gradient(90deg,#fff 0%,#fff 90%,transparent);mask-image:linear-gradient(90deg,#fff 0%,#fff 90%,transparent)}.rs-stepper .steps-wrap .steps-content.bothMask{-webkit-mask-image:linear-gradient(90deg,transparent,#fff 10%,#fff 90%,transparent)!important;mask-image:linear-gradient(90deg,transparent,#fff 10%,#fff 90%,transparent)!important}.rs-stepper .steps-wrap .steps-content::-webkit-scrollbar{width:0;height:0}.rs-stepper .steps-wrap .step{flex:0 0 auto}.rs-stepper .steps-wrap .step .step-label{color:var(--rs-labels-color);font-size:12px;font-weight:400;line-height:22px;text-align:center;white-space:nowrap;padding:0 12px 12px;display:flex;align-items:center}.rs-stepper .steps-wrap .step.done{cursor:pointer}.rs-stepper .steps-wrap .step.done .step-label{color:var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step.active .step-label{color:var(--rs-active-labels-color);font-weight:700;border-bottom:1px solid var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step-arrow{flex:0 0 auto;padding:0 12px 12px;display:flex;align-items:center}.rs-stepper .row-btn{margin-bottom:12px;display:flex;width:20px;height:20px;align-items:center;justify-content:center;border-radius:4px;border:1px #bdc4ca solid;flex-shrink:0;cursor:pointer;visibility:visible}.rs-stepper .row-btn .hover{display:none}.rs-stepper .row-btn .normal{display:flex}.rs-stepper .row-btn:hover{background-color:#1f7bff0a}.rs-stepper .row-btn:hover .normal{display:none}.rs-stepper .row-btn:hover .hover{display:flex}.rs-stepper .row-btn.hidden{visibility:hidden}\n"] }]
|
|
131
|
+
}], ctorParameters: function () { return [{ type: i1.CommonFunctionService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { menu: [{
|
|
132
|
+
type: ViewChild,
|
|
133
|
+
args: ["menu", { static: false }]
|
|
134
|
+
}], steps: [{
|
|
135
|
+
type: Input
|
|
136
|
+
}], currentStep: [{
|
|
137
|
+
type: Input
|
|
138
|
+
}], stepClick: [{
|
|
139
|
+
type: Output
|
|
140
|
+
}], unlockedStep: [{
|
|
141
|
+
type: Input
|
|
142
|
+
}], containerRefId: [{
|
|
143
|
+
type: Input
|
|
144
|
+
}], onResize: [{
|
|
145
|
+
type: HostListener,
|
|
146
|
+
args: ["window:resize", ["$event"]]
|
|
147
|
+
}] } });
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcmFpc2UtY29tbW9uLWxpYi9zcmMvbGliL2xheW91dC9ycy1zdGVwcGVyL2luZGV4LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JhaXNlLWNvbW1vbi1saWIvc3JjL2xpYi9sYXlvdXQvcnMtc3RlcHBlci9pbmRleC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNO0FBQ04sT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFFTixTQUFTLEVBRVQsWUFBWSxHQUdiLE1BQU0sZUFBZSxDQUFDOzs7OztBQVN2QixNQUFNLE9BQU8sa0JBQWtCO0lBS3BCO0lBQ0M7SUFMNEIsSUFBSSxDQUFjO0lBQy9DLEtBQUssR0FBZSxFQUFFLENBQUM7SUFDdkIsV0FBVyxHQUFXLENBQUMsQ0FBQztJQUNqQyxZQUNTLEVBQXlCLEVBQ3hCLEdBQXNCO1FBRHZCLE9BQUUsR0FBRixFQUFFLENBQXVCO1FBQ3hCLFFBQUcsR0FBSCxHQUFHLENBQW1CO0lBQzdCLENBQUM7SUFDTSxTQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVksQ0FBQztJQUMxQyxZQUFZLEdBQVcsQ0FBQyxDQUFDLENBQUMsVUFBVTtJQUNwQyxjQUFjLENBQUM7SUFFeEIsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3JFLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVE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VUFBVSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUN6RSxJQUFJLENBQUMsU0FBUyxHQUFHLFVBQVUsSUFBSSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxVQUFVLEdBQUcsV0FBVyxJQUFJLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO3dHQTVJVSxrQkFBa0I7NEZBQWxCLGtCQUFrQixnWUN0Qi9CLHE5RkF3R0E7OzRGRGxGYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsWUFBWTs0SUFLZ0IsSUFBSTtzQkFBekMsU0FBUzt1QkFBQyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUMzQixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFLSSxTQUFTO3NCQUFsQixNQUFNO2dCQUNFLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFpRk4sUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIOe7hOS7tuexu1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBBZnRlclZpZXdJbml0LFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFN0ZXBJdGVtIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IENvbW1vbkZ1bmN0aW9uU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2NvbW1vbi1mdW5jdGlvbi5zZXJ2aWNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJycy1zdGVwcGVyXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9pbmRleC5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi9pbmRleC5jb21wb25lbnQuc2Nzc1wiXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJTU3RlcHBlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQFZpZXdDaGlsZChcIm1lbnVcIiwgeyBzdGF0aWM6IGZhbHNlIH0pIG1lbnUhOiBFbGVtZW50UmVmO1xyXG4gIEBJbnB1dCgpIHN0ZXBzOiBTdGVwSXRlbVtdID0gW107XHJcbiAgQElucHV0KCkgY3VycmVudFN0ZXA6IG51bWJlciA9IDA7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgY2Y6IENvbW1vbkZ1bmN0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge31cclxuICBAT3V0cHV0KCkgc3RlcENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxTdGVwSXRlbT4oKTtcclxuICBASW5wdXQoKSB1bmxvY2tlZFN0ZXA6IG51bWJlciA9IDA7IC8v5bey6Kej6ZSB55qE5pyA5aSn5q2l6aqkXHJcbiAgQElucHV0KCkgY29udGFpbmVyUmVmSWQ7XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zdGVwcy5mb3JFYWNoKChzdGVwKSA9PiB7XHJcbiAgICAgIHN0ZXAuZGlzcGxheVRpdGxlID0gdGhpcy5jZi5zZXRNaWRkbGVFbGxpcHNpcyhzdGVwLmxhYmVsLCAxMzIsIDEyKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5zeW5jVW5sb2NrZWRTdGVwKCk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuY2hlY2tCdG5TaG93KHRydWUpKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGlmIChjaGFuZ2VzW1wiY3VycmVudFN0ZXBcIl0gJiYgIWNoYW5nZXNbXCJjdXJyZW50U3RlcFwiXS5maXJzdENoYW5nZSkge1xyXG4gICAgICB0aGlzLnN5bmNVbmxvY2tlZFN0ZXAoKTtcclxuICAgICAgLy8g5b2T5aSW6YOo5Lyg5YWl55qEIGN1cnJlbnRTdGVwIOWPmOWMluaXtu+8jOa7muWKqOWIsOWvueW6lOatpemqpFxyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2Nyb2xsVG9TdGVwKCkpO1xyXG4gICAgfVxyXG4gICAgaWYgKFxyXG4gICAgICAoY2hhbmdlc1tcInN0ZXBzXCJdICYmIGNoYW5nZXNbXCJzdGVwc1wiXS5jdXJyZW50VmFsdWUpIHx8XHJcbiAgICAgIGNoYW5nZXNbXCJjdXJyZW50U3RlcFwiXVxyXG4gICAgKSB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jaGVja0J0blNob3coKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyDlkIzmraV1bmxvY2tlZFN0ZXDnmoTmnIDlpKflgLxcclxuICBwcml2YXRlIHN5bmNVbmxvY2tlZFN0ZXAoKSB7XHJcbiAgICBpZiAodGhpcy5jdXJyZW50U3RlcCA+IHRoaXMudW5sb2NrZWRTdGVwKSB7XHJcbiAgICAgIHRoaXMudW5sb2NrZWRTdGVwID0gdGhpcy5jdXJyZW50U3RlcDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uU3RlcENsaWNrKHN0ZXA6IFN0ZXBJdGVtLCBpbmRleD86IG51bWJlcikge1xyXG4gICAgaWYgKHN0ZXAuc3RlcCA8PSB0aGlzLnVubG9ja2VkU3RlcCkge1xyXG4gICAgICB0aGlzLmN1cnJlbnRTdGVwID0gc3RlcC5zdGVwO1xyXG4gICAgICB0aGlzLnN0ZXBDbGljay5lbWl0KHN0ZXApO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2Nyb2xsVG9TdGVwKGluZGV4KSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNjcm9sbFRvU3RlcChpbmRleD86IG51bWJlcikge1xyXG4gICAgaWYgKCF0aGlzLm1lbnUgfHwgIXRoaXMubWVudS5uYXRpdmVFbGVtZW50KSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgbWVudUVsID0gdGhpcy5tZW51Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBjb25zdCBpdGVtcyA9IG1lbnVFbC5xdWVyeVNlbGVjdG9yQWxsKFwiLnN0ZXBcIik7XHJcbiAgICBjb25zdCB0YXJnZXRJbmRleCA9XHJcbiAgICAgIHR5cGVvZiBpbmRleCA9PT0gXCJudW1iZXJcIlxyXG4gICAgICAgID8gaW5kZXhcclxuICAgICAgICA6IHRoaXMuc3RlcHMuZmluZEluZGV4KChzKSA9PiBzLnN0ZXAgPT09IHRoaXMuY3VycmVudFN0ZXApO1xyXG5cclxuICAgIGlmICh0YXJnZXRJbmRleCA8IDAgfHwgdGFyZ2V0SW5kZXggPj0gaXRlbXMubGVuZ3RoKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgdGFyZ2V0RWwgPSBpdGVtc1t0YXJnZXRJbmRleF0gYXMgSFRNTEVsZW1lbnQ7XHJcblxyXG4gICAgLy/ojrflj5bnm7jlr7nkvY3nva5cclxuICAgIGNvbnN0IGNvbnRhaW5lclJlY3QgPSBtZW51RWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICBjb25zdCBlbGVtZW50UmVjdCA9IHRhcmdldEVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG5cclxuICAgIC8vIOiuoeeul+WFg+e0oOebuOWvueS6juWuueWZqOeahOS9jee9rlxyXG4gICAgY29uc3QgZWxlbWVudFJlbGF0aXZlTGVmdCA9XHJcbiAgICAgIGVsZW1lbnRSZWN0LmxlZnQgLSBjb250YWluZXJSZWN0LmxlZnQgKyBtZW51RWwuc2Nyb2xsTGVmdDtcclxuICAgIGNvbnN0IGVsZW1lbnRXaWR0aCA9IGVsZW1lbnRSZWN0LndpZHRoO1xyXG4gICAgY29uc3QgY29udGFpbmVyV2lkdGggPSBtZW51RWwuY2xpZW50V2lkdGg7XHJcblxyXG4gICAgLy8g6K6h566X5YWD57Sg5Lit5b+D54K555u45a+55LqO5a655Zmo55qE5L2N572uXHJcbiAgICBjb25zdCBlbGVtZW50Q2VudGVyID0gZWxlbWVudFJlbGF0aXZlTGVmdCArIGVsZW1lbnRXaWR0aCAvIDI7XHJcblxyXG4gICAgLy8g55uu5qCH5rua5Yqo5L2N572u77ya6K6p5YWD57Sg5Lit5b+D5Ye6546w5Zyo5Y+v6KeG5Yy65Z+f5Lit5b+DXHJcbiAgICBjb25zdCBzY3JvbGxUYXJnZXQgPSBlbGVtZW50Q2VudGVyIC0gY29udGFpbmVyV2lkdGggLyAyO1xyXG5cclxuICAgIC8vIOmZkOWItuWcqOacieaViOa7muWKqOiMg+WbtOWGhVxyXG4gICAgY29uc3QgbWF4U2Nyb2xsID0gTWF0aC5tYXgoMCwgbWVudUVsLnNjcm9sbFdpZHRoIC0gY29udGFpbmVyV2lkdGgpO1xyXG4gICAgY29uc3QgZmluYWxUYXJnZXQgPSBNYXRoLm1heCgwLCBNYXRoLm1pbihzY3JvbGxUYXJnZXQsIG1heFNjcm9sbCkpO1xyXG5cclxuICAgIG1lbnVFbC5zY3JvbGxUbyh7IGxlZnQ6IGZpbmFsVGFyZ2V0LCBiZWhhdmlvcjogXCJzbW9vdGhcIiB9KTtcclxuICAgIHRoaXMub25TY3JvbGwoKTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoXCJ3aW5kb3c6cmVzaXplXCIsIFtcIiRldmVudFwiXSlcclxuICBvblJlc2l6ZShldmVudDogRXZlbnQpIHtcclxuICAgIHRoaXMuY2hlY2tCdG5TaG93KCk7XHJcbiAgfVxyXG5cclxuICBjaGVja0J0blNob3coaW5pdD86IGJvb2xlYW4pIHtcclxuICAgIGlmICghdGhpcy5tZW51IHx8ICF0aGlzLm1lbnUubmF0aXZlRWxlbWVudCkgcmV0dXJuO1xyXG5cclxuICAgIGNvbnN0IG1lbnVFbCA9IHRoaXMubWVudS5uYXRpdmVFbGVtZW50O1xyXG4gICAgY29uc3QgeyBzY3JvbGxXaWR0aCwgY2xpZW50V2lkdGggfSA9IG1lbnVFbDtcclxuXHJcbiAgICAvLyDliKTmlq3mmK/lkKbpnIDopoHmmL7npLrmu5rliqjmjInpkq5cclxuICAgIGxldCB0aHJlc2hvbGQgPSBjbGllbnRXaWR0aDtcclxuICAgIGlmICh0aGlzLmNvbnRhaW5lclJlZklkKSB7XHJcbiAgICAgIGNvbnN0IGNvbnRhaW5lclJlZiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuY29udGFpbmVyUmVmSWQpO1xyXG4gICAgICBpZiAoY29udGFpbmVyUmVmKSB7XHJcbiAgICAgICAgdGhyZXNob2xkID0gTWF0aC5tYXgoY29udGFpbmVyUmVmLm9mZnNldFdpZHRoICogMC44LCA0MDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zaG93QnRuID0gc2Nyb2xsV2lkdGggPiB0aHJlc2hvbGQ7XHJcblxyXG4gICAgLy8g5Yid5aeL5YyW5pe25rua5Yqo5Yiw5b2T5YmN5q2l6aqkXHJcbiAgICBpZiAoaW5pdCkge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2Nyb2xsVG9TdGVwKCksIDApO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMub25TY3JvbGwoKTtcclxuICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxuICBzY3JvbGxMZWZ0KCkge1xyXG4gICAgY29uc3QgeyBzY3JvbGxMZWZ0IH0gPSB0aGlzLm1lbnUubmF0aXZlRWxlbWVudDtcclxuICAgIGNvbnN0IGRpcyA9IHNjcm9sbExlZnQgLyAxMDAgPCAyID8gc2Nyb2xsTGVmdCArIDEwIDogMTAwO1xyXG4gICAgdGhpcy5tZW51Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsQnkoeyBsZWZ0OiAtZGlzLCBiZWhhdmlvcjogXCJzbW9vdGhcIiB9KTtcclxuICB9XHJcbiAgc2Nyb2xsUmlnaHQoKSB7XHJcbiAgICBjb25zdCB7IHNjcm9sbExlZnQsIHNjcm9sbFdpZHRoLCBjbGllbnRXaWR0aCB9ID0gdGhpcy5tZW51Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBjb25zdCByZXN0ID0gc2Nyb2xsV2lkdGggLSBjbGllbnRXaWR0aCAtIHNjcm9sbExlZnQ7XHJcbiAgICBjb25zdCBkaXMgPSByZXN0IC8gMTAwIDwgMiA/IHJlc3QgKyAxMCA6IDEwMDtcclxuICAgIHRoaXMubWVudS5uYXRpdmVFbGVtZW50LnNjcm9sbEJ5KHsgbGVmdDogZGlzLCBiZWhhdmlvcjogXCJzbW9vdGhcIiB9KTtcclxuICB9XHJcblxyXG4gIHNob3dCdG4gPSBmYWxzZTtcclxuICBpc0F0U3RhcnQgPSB0cnVlO1xyXG4gIGlzQXRFbmQgPSBmYWxzZTtcclxuICBvblNjcm9sbCgpIHtcclxuICAgIGNvbnN0IHsgc2Nyb2xsTGVmdCwgc2Nyb2xsV2lkdGgsIGNsaWVudFdpZHRoIH0gPSB0aGlzLm1lbnUubmF0aXZlRWxlbWVudDtcclxuICAgIHRoaXMuaXNBdFN0YXJ0ID0gc2Nyb2xsTGVmdCA8PSAxO1xyXG4gICAgdGhpcy5pc0F0RW5kID0gc2Nyb2xsTGVmdCArIGNsaWVudFdpZHRoID49IHNjcm9sbFdpZHRoIC0gMTtcclxuICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicnMtc3RlcHBlclwiPlxyXG4gIDxkaXYgY2xhc3M9XCJzdGVwcy13cmFwXCI+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwicm93LWJ0blwiXHJcbiAgICAgIFtjbGFzcy5oaWRkZW5dPVwiaXNBdFN0YXJ0IHx8ICFzaG93QnRuXCJcclxuICAgICAgKGNsaWNrKT1cInNjcm9sbExlZnQoKVwiXHJcbiAgICA+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJob3ZlclwiPlxyXG4gICAgICAgIDxzdmdcclxuICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgd2lkdGg9XCIxN1wiXHJcbiAgICAgICAgICBoZWlnaHQ9XCIxNlwiXHJcbiAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE3IDE2XCJcclxuICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICBkPVwiTTEwLjQ5OTUgMy45OTk1NUw3LjI0MjE5IDguMjQyMTlMMTAuNDk5NSAxMi40ODQ4XCJcclxuICAgICAgICAgICAgc3Ryb2tlPVwiIzFGN0JGRlwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvc3ZnPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm5vcm1hbFwiPlxyXG4gICAgICAgIDxzdmdcclxuICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgd2lkdGg9XCIxN1wiXHJcbiAgICAgICAgICBoZWlnaHQ9XCIxNlwiXHJcbiAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE3IDE2XCJcclxuICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICBkPVwiTTEwLjQ5OTUgMy45OTk1NUw3LjI0MjE5IDguMjQyMTlMMTAuNDk5NSAxMi40ODQ4XCJcclxuICAgICAgICAgICAgc3Ryb2tlPVwiIzZCNkI2QlwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvc3ZnPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cInN0ZXBzLWNvbnRlbnRcIlxyXG4gICAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICAgbGVmdE1hc2s6IHNob3dCdG4gJiYgIWlzQXRTdGFydCxcclxuICAgICAgICByaWdodE1hc2s6IHNob3dCdG4gJiYgIWlzQXRFbmQsXHJcbiAgICAgICAgYm90aE1hc2s6IHNob3dCdG4gJiYgIWlzQXRTdGFydCAmJiBzaG93QnRuICYmICFpc0F0RW5kXHJcbiAgICAgIH1cIlxyXG4gICAgICAjbWVudVxyXG4gICAgICAoc2Nyb2xsKT1cIm9uU2Nyb2xsKClcIlxyXG4gICAgPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHN0ZXBzOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3M9XCJzdGVwXCJcclxuICAgICAgICAgIFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgZG9uZTogaXRlbS5zdGVwIDw9IHVubG9ja2VkU3RlcCxcclxuICAgICAgICAgICAgYWN0aXZlOiBpdGVtLnN0ZXAgPT09IGN1cnJlbnRTdGVwXHJcbiAgICAgICAgICB9XCJcclxuICAgICAgICAgIChjbGljayk9XCJvblN0ZXBDbGljayhpdGVtLCBpKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzcz1cInN0ZXAtbGFiZWxcIlxyXG4gICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJpdGVtLmxhYmVsICE9PSBpdGVtLmRpc3BsYXlUaXRsZSA/IGl0ZW0ubGFiZWwgOiAnJ1wiXHJcbiAgICAgICAgICAgIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAge3sgaXRlbS5kaXNwbGF5VGl0bGUgfX1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdGVwLWFycm93XCIgKm5nSWY9XCJpIDwgc3RlcHMubGVuZ3RoIC0gMVwiPlxyXG4gICAgICAgICAgPGltZyBzcmM9XCIvYXNzZXRzL2ltZy9zdGVwLWFycm93LnN2Z1wiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwicm93LWJ0blwiXHJcbiAgICAgIFtjbGFzcy5oaWRkZW5dPVwiaXNBdEVuZCB8fCAhc2hvd0J0blwiXHJcbiAgICAgIChjbGljayk9XCJzY3JvbGxSaWdodCgpXCJcclxuICAgID5cclxuICAgICAgPGRpdiBjbGFzcz1cImhvdmVyXCI+XHJcbiAgICAgICAgPHN2Z1xyXG4gICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICB3aWR0aD1cIjE3XCJcclxuICAgICAgICAgIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTcgMTZcIlxyXG4gICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgIGQ9XCJNNy41MDA0NSAzLjk5OTU1TDEwLjc1NzggOC4yNDIxOUw3LjUwMDQ1IDEyLjQ4NDhcIlxyXG4gICAgICAgICAgICBzdHJva2U9XCIjMUY3QkZGXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9zdmc+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibm9ybWFsXCI+XHJcbiAgICAgICAgPHN2Z1xyXG4gICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICB3aWR0aD1cIjE3XCJcclxuICAgICAgICAgIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTcgMTZcIlxyXG4gICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgIGQ9XCJNNy41MDA0NSAzLjk5OTU1TDEwLjc1NzggOC4yNDIxOUw3LjUwMDQ1IDEyLjQ4NDhcIlxyXG4gICAgICAgICAgICBzdHJva2U9XCIjNkI2QjZCXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9zdmc+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|