spiderly 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/esm2022/lib/components/auth/auth.module.mjs +65 -0
- package/esm2022/lib/components/auth/login/login.component.mjs +60 -0
- package/esm2022/lib/components/auth/partials/auth.component.mjs +53 -0
- package/esm2022/lib/components/auth/partials/login-verification.component.mjs +39 -0
- package/esm2022/lib/components/auth/partials/registration-verification.component.mjs +37 -0
- package/esm2022/lib/components/auth/partials/verification-wrapper.component.mjs +74 -0
- package/esm2022/lib/components/auth/registration/registration.component.mjs +59 -0
- package/esm2022/lib/components/base-details/role-base-details.component.mjs +171 -0
- package/esm2022/lib/components/base-form/base-form copy.mjs +247 -0
- package/esm2022/lib/components/card-skeleton/card-skeleton.component.mjs +25 -0
- package/esm2022/lib/components/footer/footer.component.mjs +16 -0
- package/esm2022/lib/components/index-card/index-card.component.mjs +57 -0
- package/esm2022/lib/components/info-card/info-card.component.mjs +29 -0
- package/esm2022/lib/components/layout/layout-base.component.mjs +120 -0
- package/esm2022/lib/components/layout/sidebar/menuitem.component.mjs +161 -0
- package/esm2022/lib/components/layout/sidebar/sidebar-menu.component.mjs +34 -0
- package/esm2022/lib/components/layout/sidebar/sidebar-menu.service.mjs +26 -0
- package/esm2022/lib/components/layout/sidebar/sidebar.component.mjs +21 -0
- package/esm2022/lib/components/layout/topbar/topbar.component.mjs +115 -0
- package/esm2022/lib/components/not-found/not-found.component.mjs +20 -0
- package/esm2022/lib/components/required/required.component.mjs +12 -0
- package/esm2022/lib/components/spiderly-buttons/google-button/google-button.component.mjs +43 -0
- package/esm2022/lib/components/spiderly-buttons/return-button/return-button.component.mjs +37 -0
- package/esm2022/lib/components/spiderly-buttons/spiderly-button/spiderly-button.component.mjs +20 -0
- package/esm2022/lib/components/spiderly-buttons/spiderly-button-base/spiderly-button-base.mjs +68 -0
- package/esm2022/lib/components/spiderly-buttons/spiderly-split-button/spiderly-split-button.component.mjs +22 -0
- package/esm2022/lib/components/spiderly-data-table/spiderly-data-table.component.mjs +502 -0
- package/esm2022/lib/components/spiderly-delete-dialog/spiderly-delete-confirmation.component.mjs +42 -0
- package/esm2022/lib/components/spiderly-form-control/spiderly-form-control.mjs +36 -0
- package/esm2022/lib/components/spiderly-panels/panel-body/panel-body.component.mjs +19 -0
- package/esm2022/lib/components/spiderly-panels/panel-footer/panel-footer.component.mjs +14 -0
- package/esm2022/lib/components/spiderly-panels/panel-header/panel-header.component.mjs +49 -0
- package/esm2022/lib/components/spiderly-panels/spiderly-card/spiderly-card.component.mjs +20 -0
- package/esm2022/lib/components/spiderly-panels/spiderly-panel/spiderly-panel.component.mjs +63 -0
- package/esm2022/lib/components/spiderly-panels/spiderly-panels.module.mjs +49 -0
- package/esm2022/lib/controls/base-autocomplete-control.mjs +18 -0
- package/esm2022/lib/controls/base-control.mjs +62 -0
- package/esm2022/lib/controls/base-dropdown-control.mjs +37 -0
- package/esm2022/lib/controls/spiderly-autocomplete/spiderly-autocomplete.component.mjs +60 -0
- package/esm2022/lib/controls/spiderly-calendar/spiderly-calendar.component.mjs +39 -0
- package/esm2022/lib/controls/spiderly-checkbox/spiderly-checkbox.component.mjs +45 -0
- package/esm2022/lib/controls/spiderly-colorpick/spiderly-colorpick.component.mjs +40 -0
- package/esm2022/lib/controls/spiderly-controls.module.mjs +112 -0
- package/esm2022/lib/controls/spiderly-dropdown/spiderly-dropdown.component.mjs +40 -0
- package/esm2022/lib/controls/spiderly-editor/spiderly-editor.component.mjs +59 -0
- package/esm2022/lib/controls/spiderly-file/spiderly-file.component.mjs +106 -0
- package/esm2022/lib/controls/spiderly-multiautocomplete/spiderly-multiautocomplete.component.mjs +38 -0
- package/esm2022/lib/controls/spiderly-multiselect/spiderly-multiselect.component.mjs +34 -0
- package/esm2022/lib/controls/spiderly-number/spiderly-number.component.mjs +44 -0
- package/esm2022/lib/controls/spiderly-password/spiderly-password.component.mjs +37 -0
- package/esm2022/lib/controls/spiderly-textarea/spiderly-textarea.component.mjs +34 -0
- package/esm2022/lib/controls/spiderly-textbox/spiderly-textbox.component.mjs +45 -0
- package/esm2022/lib/entities/base-entity.mjs +18 -0
- package/esm2022/lib/entities/codebook.mjs +10 -0
- package/esm2022/lib/entities/init-company-auth-dialog-details.mjs +9 -0
- package/esm2022/lib/entities/init-top-bar-data.mjs +12 -0
- package/esm2022/lib/entities/is-authorized-for-save-event.mjs +9 -0
- package/esm2022/lib/entities/last-menu-icon-index-clicked.mjs +8 -0
- package/esm2022/lib/entities/lazy-load-selected-ids-result.mjs +11 -0
- package/esm2022/lib/entities/menuchangeevent.mjs +3 -0
- package/esm2022/lib/entities/mime-type.mjs +15 -0
- package/esm2022/lib/entities/namebook.mjs +9 -0
- package/esm2022/lib/entities/primeng-option.mjs +9 -0
- package/esm2022/lib/entities/security-entities.mjs +169 -0
- package/esm2022/lib/entities/simple-save-result.mjs +9 -0
- package/esm2022/lib/entities/spiderly-button.mjs +11 -0
- package/esm2022/lib/entities/table-filter-context.mjs +3 -0
- package/esm2022/lib/entities/table-filter-sort-meta.mjs +3 -0
- package/esm2022/lib/entities/table-filter.mjs +15 -0
- package/esm2022/lib/entities/table-response.mjs +3 -0
- package/esm2022/lib/enums/security-enums.mjs +26 -0
- package/esm2022/lib/enums/verification-type-codes.mjs +6 -0
- package/esm2022/lib/guards/auth.guard.mjs +40 -0
- package/esm2022/lib/guards/not-auth.guard.mjs +32 -0
- package/esm2022/lib/handlers/spiderly-error-handler.mjs +30 -0
- package/esm2022/lib/handlers/spiderly-transloco-fallback-strategy.mjs +24 -0
- package/esm2022/lib/interceptors/http-loading.interceptor.mjs +27 -0
- package/esm2022/lib/interceptors/json-parser.interceptor.mjs +47 -0
- package/esm2022/lib/interceptors/jwt.interceptor.mjs +27 -0
- package/esm2022/lib/interceptors/unauthorized.interceptor.mjs +64 -0
- package/esm2022/lib/modules/core.module.mjs +140 -0
- package/esm2022/lib/modules/primeng.module.mjs +278 -0
- package/esm2022/lib/modules/spiderly-transloco.module.mjs +44 -0
- package/esm2022/lib/services/api.service.security.mjs +86 -0
- package/esm2022/lib/services/app-initializer.mjs +6 -0
- package/esm2022/lib/services/app-layout-base.service.mjs +132 -0
- package/esm2022/lib/services/auth-base.service.mjs +220 -0
- package/esm2022/lib/services/base-form.service.mjs +124 -0
- package/esm2022/lib/services/config-base.service.mjs +33 -0
- package/esm2022/lib/services/helper-functions.mjs +229 -0
- package/esm2022/lib/services/spiderly-message.service.mjs +64 -0
- package/esm2022/lib/services/spiderly-transloco-loader.mjs +20 -0
- package/esm2022/lib/services/translate-labels-abstract.service.mjs +15 -0
- package/esm2022/lib/services/validator-abstract.service.mjs +51 -0
- package/esm2022/public-api.mjs +94 -0
- package/esm2022/spiderly.mjs +5 -0
- package/fesm2022/spiderly.mjs +4807 -0
- package/fesm2022/spiderly.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/components/auth/auth.module.d.ts +17 -0
- package/lib/components/auth/login/login.component.d.ts +35 -0
- package/lib/components/auth/partials/auth.component.d.ts +21 -0
- package/lib/components/auth/partials/login-verification.component.d.ts +18 -0
- package/lib/components/auth/partials/registration-verification.component.d.ts +17 -0
- package/lib/components/auth/partials/verification-wrapper.component.d.ts +31 -0
- package/lib/components/auth/registration/registration.component.d.ts +34 -0
- package/lib/components/base-details/role-base-details.component.d.ts +50 -0
- package/lib/components/base-form/base-form copy.d.ts +54 -0
- package/lib/components/card-skeleton/card-skeleton.component.d.ts +12 -0
- package/lib/components/footer/footer.component.d.ts +9 -0
- package/lib/components/index-card/index-card.component.d.ts +22 -0
- package/lib/components/info-card/info-card.component.d.ts +11 -0
- package/lib/components/layout/layout-base.component.d.ts +37 -0
- package/lib/components/layout/sidebar/menuitem.component.d.ts +43 -0
- package/lib/components/layout/sidebar/sidebar-menu.component.d.ts +23 -0
- package/lib/components/layout/sidebar/sidebar-menu.service.d.ts +12 -0
- package/lib/components/layout/sidebar/sidebar.component.d.ts +11 -0
- package/lib/components/layout/topbar/topbar.component.d.ts +45 -0
- package/lib/components/not-found/not-found.component.d.ts +9 -0
- package/lib/components/required/required.component.d.ts +6 -0
- package/lib/components/spiderly-buttons/google-button/google-button.component.d.ts +17 -0
- package/lib/components/spiderly-buttons/return-button/return-button.component.d.ts +10 -0
- package/lib/components/spiderly-buttons/spiderly-button/spiderly-button.component.d.ts +6 -0
- package/lib/components/spiderly-buttons/spiderly-button-base/spiderly-button-base.d.ts +27 -0
- package/lib/components/spiderly-buttons/spiderly-split-button/spiderly-split-button.component.d.ts +8 -0
- package/lib/components/spiderly-data-table/spiderly-data-table.component.d.ts +157 -0
- package/lib/components/spiderly-delete-dialog/spiderly-delete-confirmation.component.d.ts +11 -0
- package/lib/components/spiderly-form-control/spiderly-form-control.d.ts +37 -0
- package/lib/components/spiderly-panels/panel-body/panel-body.component.d.ts +9 -0
- package/lib/components/spiderly-panels/panel-footer/panel-footer.component.d.ts +8 -0
- package/lib/components/spiderly-panels/panel-header/panel-header.component.d.ts +29 -0
- package/lib/components/spiderly-panels/spiderly-card/spiderly-card.component.d.ts +10 -0
- package/lib/components/spiderly-panels/spiderly-panel/spiderly-panel.component.d.ts +25 -0
- package/lib/components/spiderly-panels/spiderly-panels.module.d.ts +13 -0
- package/lib/controls/base-autocomplete-control.d.ts +9 -0
- package/lib/controls/base-control.d.ts +23 -0
- package/lib/controls/base-dropdown-control.d.ts +18 -0
- package/lib/controls/spiderly-autocomplete/spiderly-autocomplete.component.d.ts +18 -0
- package/lib/controls/spiderly-calendar/spiderly-calendar.component.d.ts +13 -0
- package/lib/controls/spiderly-checkbox/spiderly-checkbox.component.d.ts +14 -0
- package/lib/controls/spiderly-colorpick/spiderly-colorpick.component.d.ts +11 -0
- package/lib/controls/spiderly-controls.module.d.ts +22 -0
- package/lib/controls/spiderly-dropdown/spiderly-dropdown.component.d.ts +14 -0
- package/lib/controls/spiderly-editor/spiderly-editor.component.d.ts +16 -0
- package/lib/controls/spiderly-file/spiderly-file.component.d.ts +36 -0
- package/lib/controls/spiderly-multiautocomplete/spiderly-multiautocomplete.component.d.ts +13 -0
- package/lib/controls/spiderly-multiselect/spiderly-multiselect.component.d.ts +11 -0
- package/lib/controls/spiderly-number/spiderly-number.component.d.ts +15 -0
- package/lib/controls/spiderly-password/spiderly-password.component.d.ts +12 -0
- package/lib/controls/spiderly-textarea/spiderly-textarea.component.d.ts +11 -0
- package/lib/controls/spiderly-textbox/spiderly-textbox.component.d.ts +15 -0
- package/lib/entities/base-entity.d.ts +14 -0
- package/lib/entities/codebook.d.ts +9 -0
- package/lib/entities/init-company-auth-dialog-details.d.ts +9 -0
- package/lib/entities/init-top-bar-data.d.ts +16 -0
- package/lib/entities/is-authorized-for-save-event.d.ts +9 -0
- package/lib/entities/last-menu-icon-index-clicked.d.ts +7 -0
- package/lib/entities/lazy-load-selected-ids-result.d.ts +9 -0
- package/lib/entities/menuchangeevent.d.ts +4 -0
- package/lib/entities/mime-type.d.ts +11 -0
- package/lib/entities/namebook.d.ts +9 -0
- package/lib/entities/primeng-option.d.ts +9 -0
- package/lib/entities/security-entities.d.ts +211 -0
- package/lib/entities/simple-save-result.d.ts +7 -0
- package/lib/entities/spiderly-button.d.ts +13 -0
- package/lib/entities/table-filter-context.d.ts +5 -0
- package/lib/entities/table-filter-sort-meta.d.ts +4 -0
- package/lib/entities/table-filter.d.ts +23 -0
- package/lib/entities/table-response.d.ts +4 -0
- package/lib/enums/security-enums.d.ts +22 -0
- package/lib/enums/verification-type-codes.d.ts +4 -0
- package/lib/guards/auth.guard.d.ts +15 -0
- package/lib/guards/not-auth.guard.d.ts +12 -0
- package/lib/handlers/spiderly-error-handler.d.ts +14 -0
- package/lib/handlers/spiderly-transloco-fallback-strategy.d.ts +13 -0
- package/lib/interceptors/http-loading.interceptor.d.ts +11 -0
- package/lib/interceptors/json-parser.interceptor.d.ts +11 -0
- package/lib/interceptors/jwt.interceptor.d.ts +11 -0
- package/lib/interceptors/unauthorized.interceptor.d.ts +16 -0
- package/lib/modules/core.module.d.ts +13 -0
- package/lib/modules/primeng.module.d.ts +42 -0
- package/lib/modules/spiderly-transloco.module.d.ts +9 -0
- package/lib/services/api.service.security.d.ts +35 -0
- package/lib/services/app-initializer.d.ts +4 -0
- package/lib/services/app-layout-base.service.d.ts +60 -0
- package/lib/services/auth-base.service.d.ts +55 -0
- package/lib/services/base-form.service.d.ts +27 -0
- package/lib/services/config-base.service.d.ts +24 -0
- package/lib/services/helper-functions.d.ts +37 -0
- package/lib/services/spiderly-message.service.d.ts +17 -0
- package/lib/services/spiderly-transloco-loader.d.ts +10 -0
- package/lib/services/translate-labels-abstract.service.d.ts +7 -0
- package/lib/services/validator-abstract.service.d.ts +13 -0
- package/package.json +60 -0
- package/public-api.d.ts +90 -0
- package/styles/components/spiderly-data-table/spiderly-data-table.component.scss +34 -0
- package/styles/components/spiderly-panels/panel-footer/panel-footer.component.scss +10 -0
- package/styles/styles/layout/_config.scss +42 -0
- package/styles/styles/layout/_content.scss +12 -0
- package/styles/styles/layout/_footer.scss +9 -0
- package/styles/styles/layout/_main.scss +28 -0
- package/styles/styles/layout/_menu.scss +135 -0
- package/styles/styles/layout/_mixins.scss +13 -0
- package/styles/styles/layout/_preloading.scss +47 -0
- package/styles/styles/layout/_responsive.scss +100 -0
- package/styles/styles/layout/_spiderly-controls.scss +12 -0
- package/styles/styles/layout/_topbar.scss +231 -0
- package/styles/styles/layout/_typography.scss +63 -0
- package/styles/styles/layout/_utils.scss +20 -0
- package/styles/styles/layout/_variables.scss +903 -0
- package/styles/styles/layout/layout.scss +13 -0
- package/styles/styles/shared.scss +519 -0
- package/styles/styles/styles.scss +6 -0
- package/styles/styles/theme/base/_colors.scss +18 -0
- package/styles/styles/theme/base/_common.scss +75 -0
- package/styles/styles/theme/base/_components.scss +106 -0
- package/styles/styles/theme/base/_mixins.scss +343 -0
- package/styles/styles/theme/base/components/button/_button.scss +564 -0
- package/styles/styles/theme/base/components/button/_speeddial.scss +96 -0
- package/styles/styles/theme/base/components/button/_splitbutton.scss +381 -0
- package/styles/styles/theme/base/components/data/_carousel.scss +37 -0
- package/styles/styles/theme/base/components/data/_datatable.scss +338 -0
- package/styles/styles/theme/base/components/data/_dataview.scss +55 -0
- package/styles/styles/theme/base/components/data/_filter.scss +138 -0
- package/styles/styles/theme/base/components/data/_orderlist.scss +103 -0
- package/styles/styles/theme/base/components/data/_organizationchart.scss +50 -0
- package/styles/styles/theme/base/components/data/_paginator.scss +92 -0
- package/styles/styles/theme/base/components/data/_picklist.scss +103 -0
- package/styles/styles/theme/base/components/data/_timeline.scss +81 -0
- package/styles/styles/theme/base/components/data/_tree.scss +149 -0
- package/styles/styles/theme/base/components/data/_treetable.scss +256 -0
- package/styles/styles/theme/base/components/data/_virtualscroller.scss +28 -0
- package/styles/styles/theme/base/components/file/_fileupload.scss +64 -0
- package/styles/styles/theme/base/components/input/_autocomplete.scss +118 -0
- package/styles/styles/theme/base/components/input/_calendar.scss +263 -0
- package/styles/styles/theme/base/components/input/_cascadeselect.scss +130 -0
- package/styles/styles/theme/base/components/input/_checkbox.scss +90 -0
- package/styles/styles/theme/base/components/input/_chips.scss +55 -0
- package/styles/styles/theme/base/components/input/_colorpicker.scss +26 -0
- package/styles/styles/theme/base/components/input/_dropdown.scss +152 -0
- package/styles/styles/theme/base/components/input/_editor.scss +122 -0
- package/styles/styles/theme/base/components/input/_inputgroup.scss +75 -0
- package/styles/styles/theme/base/components/input/_inputmask.scss +16 -0
- package/styles/styles/theme/base/components/input/_inputnumber.scss +28 -0
- package/styles/styles/theme/base/components/input/_inputswitch.scss +60 -0
- package/styles/styles/theme/base/components/input/_inputtext.scss +100 -0
- package/styles/styles/theme/base/components/input/_listbox.scss +82 -0
- package/styles/styles/theme/base/components/input/_multiselect.scss +173 -0
- package/styles/styles/theme/base/components/input/_password.scss +52 -0
- package/styles/styles/theme/base/components/input/_radiobutton.scss +78 -0
- package/styles/styles/theme/base/components/input/_rating.scss +55 -0
- package/styles/styles/theme/base/components/input/_selectbutton.scss +50 -0
- package/styles/styles/theme/base/components/input/_slider.scss +71 -0
- package/styles/styles/theme/base/components/input/_togglebutton.scss +48 -0
- package/styles/styles/theme/base/components/input/_treeselect.scss +139 -0
- package/styles/styles/theme/base/components/menu/_breadcrumb.scss +42 -0
- package/styles/styles/theme/base/components/menu/_contextmenu.scss +39 -0
- package/styles/styles/theme/base/components/menu/_dock.scss +95 -0
- package/styles/styles/theme/base/components/menu/_megamenu.scss +55 -0
- package/styles/styles/theme/base/components/menu/_menu.scss +37 -0
- package/styles/styles/theme/base/components/menu/_menubar.scss +141 -0
- package/styles/styles/theme/base/components/menu/_panelmenu.scss +153 -0
- package/styles/styles/theme/base/components/menu/_slidemenu.scss +59 -0
- package/styles/styles/theme/base/components/menu/_steps.scss +56 -0
- package/styles/styles/theme/base/components/menu/_tabmenu.scss +74 -0
- package/styles/styles/theme/base/components/menu/_tieredmenu.scss +43 -0
- package/styles/styles/theme/base/components/messages/_inlinemessage.scss +69 -0
- package/styles/styles/theme/base/components/messages/_message.scss +107 -0
- package/styles/styles/theme/base/components/messages/_toast.scss +103 -0
- package/styles/styles/theme/base/components/misc/_avatar.scss +30 -0
- package/styles/styles/theme/base/components/misc/_badge.scss +48 -0
- package/styles/styles/theme/base/components/misc/_blockui.scss +0 -0
- package/styles/styles/theme/base/components/misc/_chip.scss +42 -0
- package/styles/styles/theme/base/components/misc/_inplace.scss +17 -0
- package/styles/styles/theme/base/components/misc/_progressbar.scss +17 -0
- package/styles/styles/theme/base/components/misc/_scrolltop.scss +25 -0
- package/styles/styles/theme/base/components/misc/_skeleton.scss +8 -0
- package/styles/styles/theme/base/components/misc/_tag.scss +40 -0
- package/styles/styles/theme/base/components/misc/_terminal.scss +12 -0
- package/styles/styles/theme/base/components/multimedia/_galleria.scss +155 -0
- package/styles/styles/theme/base/components/multimedia/_image.scss +49 -0
- package/styles/styles/theme/base/components/overlay/_confirmpopup.scss +72 -0
- package/styles/styles/theme/base/components/overlay/_dialog.scss +73 -0
- package/styles/styles/theme/base/components/overlay/_overlaypanel.scss +64 -0
- package/styles/styles/theme/base/components/overlay/_sidebar.scss +27 -0
- package/styles/styles/theme/base/components/overlay/_tooltip.scss +33 -0
- package/styles/styles/theme/base/components/panel/_accordion.scss +119 -0
- package/styles/styles/theme/base/components/panel/_card.scss +30 -0
- package/styles/styles/theme/base/components/panel/_divider.scss +31 -0
- package/styles/styles/theme/base/components/panel/_fieldset.scss +47 -0
- package/styles/styles/theme/base/components/panel/_panel.scss +58 -0
- package/styles/styles/theme/base/components/panel/_scrollpanel.scss +6 -0
- package/styles/styles/theme/base/components/panel/_splitter.scss +19 -0
- package/styles/styles/theme/base/components/panel/_tabview.scss +82 -0
- package/styles/styles/theme/base/components/panel/_toolbar.scss +11 -0
- package/styles/styles/theme/saga/_extensions.scss +27 -0
- package/styles/styles/theme/saga/_variables.scss +1 -0
- package/styles/styles/theme/saga/saga-blue/_extensions.scss +2 -0
- package/styles/styles/theme/saga/saga-blue/_fonts.scss +1 -0
- package/styles/styles/theme/saga/saga-blue/_variables.scss +1 -0
- package/styles/styles/theme/saga/saga-blue/theme.scss +4 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
+
import { SpiderlyPanelsModule } from "../spiderly-panels/spiderly-panels.module";
|
|
4
|
+
import { PrimengModule } from '../../modules/primeng.module';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/forms";
|
|
7
|
+
import * as i2 from "@angular/common";
|
|
8
|
+
import * as i3 from "../spiderly-panels/panel-header/panel-header.component";
|
|
9
|
+
import * as i4 from "../spiderly-panels/panel-body/panel-body.component";
|
|
10
|
+
import * as i5 from "../spiderly-panels/spiderly-panel/spiderly-panel.component";
|
|
11
|
+
export class IndexCardComponent {
|
|
12
|
+
constructor(formBuilder) {
|
|
13
|
+
this.formBuilder = formBuilder;
|
|
14
|
+
this.header = '';
|
|
15
|
+
this.showCrudMenu = true;
|
|
16
|
+
this.onMenuIconClick = new EventEmitter();
|
|
17
|
+
this.onRemoveIconClick = new EventEmitter();
|
|
18
|
+
}
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
// console.log(this.last);
|
|
21
|
+
}
|
|
22
|
+
menuIconClick(index) {
|
|
23
|
+
this.onMenuIconClick.next(index);
|
|
24
|
+
}
|
|
25
|
+
removeIconClick() {
|
|
26
|
+
this.onRemoveIconClick.next(null);
|
|
27
|
+
}
|
|
28
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IndexCardComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
29
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IndexCardComponent, isStandalone: true, selector: "index-card", inputs: { last: "last", index: "index", header: "header", description: "description", showRemoveIcon: "showRemoveIcon", showCrudMenu: "showCrudMenu", crudMenu: "crudMenu" }, outputs: { onMenuIconClick: "onMenuIconClick", onRemoveIconClick: "onRemoveIconClick" }, ngImport: i0, template: "<div [ngClass]=\"{\r\n\t'last-child-zero-margin': last,\r\n 'card-margin-bottom': true,\r\n\t}\">\r\n\t<spiderly-panel [crudMenu]=\"crudMenu\" [showCrudMenu]=\"showCrudMenu\" (onMenuIconClick)=\"menuIconClick($event)\" [showRemoveIcon]=\"showRemoveIcon\" (onRemoveIconClick)=\"removeIconClick()\" [index]=\"index\">\r\n\t\t<panel-header [title]=\"header\" [index]=\"index\" [showIcon]=\"false\"></panel-header>\r\n\t\t\r\n\t\t<panel-body>\r\n\t\t\t<ng-content>\r\n\t\t\t\t<!-- Custom things below description -->\r\n\t\t\t</ng-content>\r\n\t\t</panel-body>\r\n\t\t\r\n\t</spiderly-panel>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: PrimengModule }, { kind: "ngmodule", type: SpiderlyPanelsModule }, { kind: "component", type: i3.PanelHeaderComponent, selector: "panel-header", inputs: ["title", "showBigTitle", "showIcon", "icon", "index", "tabs"] }, { kind: "component", type: i4.PanelBodyComponent, selector: "panel-body", inputs: ["normalBottomPadding"] }, { kind: "component", type: i5.SpiderlyPanelComponent, selector: "spiderly-panel", inputs: ["isFirstMultiplePanel", "isMiddleMultiplePanel", "isLastMultiplePanel", "toggleable", "collapsed", "crudMenu", "showCrudMenu", "showRemoveIcon", "index", "showPanelHeader"], outputs: ["onMenuIconClick", "onRemoveIconClick"] }] }); }
|
|
30
|
+
}
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IndexCardComponent, decorators: [{
|
|
32
|
+
type: Component,
|
|
33
|
+
args: [{ selector: 'index-card', standalone: true, imports: [
|
|
34
|
+
CommonModule,
|
|
35
|
+
PrimengModule,
|
|
36
|
+
SpiderlyPanelsModule
|
|
37
|
+
], template: "<div [ngClass]=\"{\r\n\t'last-child-zero-margin': last,\r\n 'card-margin-bottom': true,\r\n\t}\">\r\n\t<spiderly-panel [crudMenu]=\"crudMenu\" [showCrudMenu]=\"showCrudMenu\" (onMenuIconClick)=\"menuIconClick($event)\" [showRemoveIcon]=\"showRemoveIcon\" (onRemoveIconClick)=\"removeIconClick()\" [index]=\"index\">\r\n\t\t<panel-header [title]=\"header\" [index]=\"index\" [showIcon]=\"false\"></panel-header>\r\n\t\t\r\n\t\t<panel-body>\r\n\t\t\t<ng-content>\r\n\t\t\t\t<!-- Custom things below description -->\r\n\t\t\t</ng-content>\r\n\t\t</panel-body>\r\n\t\t\r\n\t</spiderly-panel>\r\n</div>\r\n" }]
|
|
38
|
+
}], ctorParameters: () => [{ type: i1.FormBuilder }], propDecorators: { last: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], index: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], header: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], description: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], showRemoveIcon: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], showCrudMenu: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], crudMenu: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}], onMenuIconClick: [{
|
|
53
|
+
type: Output
|
|
54
|
+
}], onRemoveIconClick: [{
|
|
55
|
+
type: Output
|
|
56
|
+
}] } });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGlkZXJseS9zcmMvbGliL2NvbXBvbmVudHMvaW5kZXgtY2FyZC9pbmRleC1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwaWRlcmx5L3NyYy9saWIvY29tcG9uZW50cy9pbmRleC1jYXJkL2luZGV4LWNhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7O0FBWTdELE1BQU0sT0FBTyxrQkFBa0I7SUFhM0IsWUFDYyxXQUF3QjtRQUF4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQVg3QixXQUFNLEdBQVcsRUFBRSxDQUFDO1FBR3BCLGlCQUFZLEdBQVksSUFBSSxDQUFDO1FBSTVCLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUM3QyxzQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBTXZELENBQUM7SUFFRCxRQUFRO1FBQ0osMEJBQTBCO0lBQzlCLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBYTtRQUN2QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQzsrR0E3QlEsa0JBQWtCO21HQUFsQixrQkFBa0IsNlVDakIvQiw4bEJBZUEsMkNESEksWUFBWSw0SEFDWixhQUFhLDhCQUNiLG9CQUFvQjs7NEZBR1gsa0JBQWtCO2tCQVY5QixTQUFTOytCQUNJLFlBQVksY0FFVixJQUFJLFdBQ1A7d0JBQ1QsWUFBWTt3QkFDWixhQUFhO3dCQUNiLG9CQUFvQjtxQkFDdkI7Z0ZBR1ksSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFFSSxlQUFlO3NCQUF4QixNQUFNO2dCQUNHLGlCQUFpQjtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgU3BpZGVybHlQYW5lbHNNb2R1bGUgfSBmcm9tIFwiLi4vc3BpZGVybHktcGFuZWxzL3NwaWRlcmx5LXBhbmVscy5tb2R1bGVcIjtcclxuaW1wb3J0IHsgUHJpbWVuZ01vZHVsZSB9IGZyb20gJy4uLy4uL21vZHVsZXMvcHJpbWVuZy5tb2R1bGUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2luZGV4LWNhcmQnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2luZGV4LWNhcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFByaW1lbmdNb2R1bGUsXHJcbiAgICBTcGlkZXJseVBhbmVsc01vZHVsZVxyXG5dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmRleENhcmRDb21wb25lbnQge1xyXG4gICAgQElucHV0KCkgbGFzdDogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIGluZGV4OiBudW1iZXI7XHJcbiAgICBASW5wdXQoKSBoZWFkZXI6IHN0cmluZyA9ICcnO1xyXG4gICAgQElucHV0KCkgZGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIEBJbnB1dCgpIHNob3dSZW1vdmVJY29uOiBib29sZWFuO1xyXG4gICAgQElucHV0KCkgc2hvd0NydWRNZW51OiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgICBASW5wdXQoKSBjcnVkTWVudTogTWVudUl0ZW1bXTtcclxuXHJcbiAgICBAT3V0cHV0KCkgb25NZW51SWNvbkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcbiAgICBAT3V0cHV0KCkgb25SZW1vdmVJY29uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPG51bGw+KCk7XHJcbiAgICBcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByb3RlY3RlZCBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsXHJcbiAgICApIHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKXtcclxuICAgICAgICAvLyBjb25zb2xlLmxvZyh0aGlzLmxhc3QpO1xyXG4gICAgfVxyXG5cclxuICAgIG1lbnVJY29uQ2xpY2soaW5kZXg6IG51bWJlcil7XHJcbiAgICAgICAgdGhpcy5vbk1lbnVJY29uQ2xpY2submV4dChpbmRleCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlSWNvbkNsaWNrKCl7XHJcbiAgICAgICAgdGhpcy5vblJlbW92ZUljb25DbGljay5uZXh0KG51bGwpO1xyXG4gICAgfVxyXG5cclxufSIsIjxkaXYgW25nQ2xhc3NdPVwie1xyXG5cdCdsYXN0LWNoaWxkLXplcm8tbWFyZ2luJzogbGFzdCxcclxuICAgICdjYXJkLW1hcmdpbi1ib3R0b20nOiB0cnVlLFxyXG5cdH1cIj5cclxuXHQ8c3BpZGVybHktcGFuZWwgW2NydWRNZW51XT1cImNydWRNZW51XCIgW3Nob3dDcnVkTWVudV09XCJzaG93Q3J1ZE1lbnVcIiAob25NZW51SWNvbkNsaWNrKT1cIm1lbnVJY29uQ2xpY2soJGV2ZW50KVwiIFtzaG93UmVtb3ZlSWNvbl09XCJzaG93UmVtb3ZlSWNvblwiIChvblJlbW92ZUljb25DbGljayk9XCJyZW1vdmVJY29uQ2xpY2soKVwiIFtpbmRleF09XCJpbmRleFwiPlxyXG5cdFx0PHBhbmVsLWhlYWRlciBbdGl0bGVdPVwiaGVhZGVyXCIgW2luZGV4XT1cImluZGV4XCIgW3Nob3dJY29uXT1cImZhbHNlXCI+PC9wYW5lbC1oZWFkZXI+XHJcblx0XHRcclxuXHRcdDxwYW5lbC1ib2R5PlxyXG5cdFx0XHQ8bmctY29udGVudD5cclxuXHRcdFx0XHQ8IS0tIEN1c3RvbSB0aGluZ3MgYmVsb3cgZGVzY3JpcHRpb24gLS0+XHJcblx0XHRcdDwvbmctY29udGVudD5cclxuXHRcdDwvcGFuZWwtYm9keT5cclxuXHRcdFxyXG5cdDwvc3BpZGVybHktcGFuZWw+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, Input } from '@angular/core';
|
|
3
|
+
import { SpiderlyPanelsModule } from "../spiderly-panels/spiderly-panels.module";
|
|
4
|
+
import { PrimengModule } from '../../modules/primeng.module';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/forms";
|
|
7
|
+
export class InfoCardComponent {
|
|
8
|
+
constructor(formBuilder) {
|
|
9
|
+
this.formBuilder = formBuilder;
|
|
10
|
+
this.header = '';
|
|
11
|
+
}
|
|
12
|
+
ngOnInit() {
|
|
13
|
+
}
|
|
14
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InfoCardComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: InfoCardComponent, isStandalone: true, selector: "info-card", inputs: { header: "header", description: "description" }, ngImport: i0, template: "<div class=\"card responsive-card-padding\" style=\"background-color: var(--primary-lighter-color); position: relative; overflow: hidden;\">\r\n <!-- TODO FT: Translate -->\r\n <div style=\"display: flex; align-items: center; gap: 21px; position: relative; z-index: 2;\">\r\n <i class=\"pi pi-info-circle\" style=\"font-size: 26px; color: var(--primary-color);\"></i>\r\n <div>\r\n <div class=\"header\" style=\"color:var(--primary-color); font-weight: 600; text-align: left;\">\r\n {{header}}\r\n </div>\r\n <div style=\"color:var(--primary-color); text-align: left; margin-top: 8px;\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-overflow-icon\" style=\"position: absolute; overflow: hidden; right: 8px; top: -25px; z-index: 1;\">\r\n <i class=\"pi pi-info-circle\" style=\"font-size: 270px;\"></i>\r\n </div>\r\n </div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: PrimengModule }, { kind: "ngmodule", type: SpiderlyPanelsModule }] }); }
|
|
16
|
+
}
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InfoCardComponent, decorators: [{
|
|
18
|
+
type: Component,
|
|
19
|
+
args: [{ selector: 'info-card', standalone: true, imports: [
|
|
20
|
+
CommonModule,
|
|
21
|
+
PrimengModule,
|
|
22
|
+
SpiderlyPanelsModule
|
|
23
|
+
], template: "<div class=\"card responsive-card-padding\" style=\"background-color: var(--primary-lighter-color); position: relative; overflow: hidden;\">\r\n <!-- TODO FT: Translate -->\r\n <div style=\"display: flex; align-items: center; gap: 21px; position: relative; z-index: 2;\">\r\n <i class=\"pi pi-info-circle\" style=\"font-size: 26px; color: var(--primary-color);\"></i>\r\n <div>\r\n <div class=\"header\" style=\"color:var(--primary-color); font-weight: 600; text-align: left;\">\r\n {{header}}\r\n </div>\r\n <div style=\"color:var(--primary-color); text-align: left; margin-top: 8px;\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-overflow-icon\" style=\"position: absolute; overflow: hidden; right: 8px; top: -25px; z-index: 1;\">\r\n <i class=\"pi pi-info-circle\" style=\"font-size: 270px;\"></i>\r\n </div>\r\n </div>" }]
|
|
24
|
+
}], ctorParameters: () => [{ type: i1.FormBuilder }], propDecorators: { header: [{
|
|
25
|
+
type: Input
|
|
26
|
+
}], description: [{
|
|
27
|
+
type: Input
|
|
28
|
+
}] } });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mby1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwaWRlcmx5L3NyYy9saWIvY29tcG9uZW50cy9pbmZvLWNhcmQvaW5mby1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwaWRlcmx5L3NyYy9saWIvY29tcG9uZW50cy9pbmZvLWNhcmQvaW5mby1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7OztBQVk3RCxNQUFNLE9BQU8saUJBQWlCO0lBSTFCLFlBQ2MsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFKdEIsV0FBTSxHQUFXLEVBQUUsQ0FBQztJQU9oQyxDQUFDO0lBRUwsUUFBUTtJQUNSLENBQUM7K0dBWFEsaUJBQWlCO21HQUFqQixpQkFBaUIsK0hDaEI5QixxOEJBaUJRLDJDRE5KLFlBQVksOEJBQ1osYUFBYSw4QkFDYixvQkFBb0I7OzRGQUdYLGlCQUFpQjtrQkFWN0IsU0FBUzsrQkFDSSxXQUFXLGNBRVQsSUFBSSxXQUNQO3dCQUNULFlBQVk7d0JBQ1osYUFBYTt3QkFDYixvQkFBb0I7cUJBQ3ZCO2dGQUdtQixNQUFNO3NCQUFyQixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTcGlkZXJseVBhbmVsc01vZHVsZSB9IGZyb20gXCIuLi9zcGlkZXJseS1wYW5lbHMvc3BpZGVybHktcGFuZWxzLm1vZHVsZVwiO1xyXG5pbXBvcnQgeyBQcmltZW5nTW9kdWxlIH0gZnJvbSAnLi4vLi4vbW9kdWxlcy9wcmltZW5nLm1vZHVsZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnaW5mby1jYXJkJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9pbmZvLWNhcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFByaW1lbmdNb2R1bGUsXHJcbiAgICBTcGlkZXJseVBhbmVsc01vZHVsZVxyXG5dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmZvQ2FyZENvbXBvbmVudCB7XHJcbiAgICBASW5wdXQoKSBwdWJsaWMgaGVhZGVyOiBzdHJpbmcgPSAnJztcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gICAgXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcm90ZWN0ZWQgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxyXG4gICAgICAgICkge1xyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKXtcclxuICAgIH1cclxuXHJcbn0iLCI8ZGl2IGNsYXNzPVwiY2FyZCByZXNwb25zaXZlLWNhcmQtcGFkZGluZ1wiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1saWdodGVyLWNvbG9yKTsgcG9zaXRpb246IHJlbGF0aXZlOyBvdmVyZmxvdzogaGlkZGVuO1wiPlxyXG4gICAgPCEtLSBUT0RPIEZUOiBUcmFuc2xhdGUgLS0+XHJcbiAgICA8ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiAyMXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDI7XCI+XHJcbiAgICAgIDxpIGNsYXNzPVwicGkgcGktaW5mby1jaXJjbGVcIiBzdHlsZT1cImZvbnQtc2l6ZTogMjZweDsgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1wiPjwvaT5cclxuICAgICAgPGRpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJcIiBzdHlsZT1cImNvbG9yOnZhcigtLXByaW1hcnktY29sb3IpOyBmb250LXdlaWdodDogNjAwOyB0ZXh0LWFsaWduOiBsZWZ0O1wiPlxyXG4gICAgICAgICAgICAgIHt7aGVhZGVyfX1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBzdHlsZT1cImNvbG9yOnZhcigtLXByaW1hcnktY29sb3IpOyB0ZXh0LWFsaWduOiBsZWZ0OyBtYXJnaW4tdG9wOiA4cHg7XCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLW92ZXJmbG93LWljb25cIiBzdHlsZT1cInBvc2l0aW9uOiBhYnNvbHV0ZTsgb3ZlcmZsb3c6IGhpZGRlbjsgcmlnaHQ6IDhweDsgdG9wOiAtMjVweDsgei1pbmRleDogMTtcIj5cclxuICAgICAgPGkgY2xhc3M9XCJwaSBwaS1pbmZvLWNpcmNsZVwiIHN0eWxlPVwiZm9udC1zaXplOiAyNzBweDtcIj48L2k+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj4iXX0=
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { Component, ViewChild } from '@angular/core';
|
|
2
|
+
import { NavigationEnd } from '@angular/router';
|
|
3
|
+
import { filter } from 'rxjs';
|
|
4
|
+
import { AppSidebarComponent } from './sidebar/sidebar.component';
|
|
5
|
+
import { AppTopBarComponent } from './topbar/topbar.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../services/app-layout-base.service";
|
|
8
|
+
import * as i2 from "@angular/router";
|
|
9
|
+
export class LayoutBaseComponent {
|
|
10
|
+
constructor(layoutService, renderer, router) {
|
|
11
|
+
this.layoutService = layoutService;
|
|
12
|
+
this.renderer = renderer;
|
|
13
|
+
this.router = router;
|
|
14
|
+
this.onAfterNgDestroy = () => { };
|
|
15
|
+
this.overlayMenuOpenSubscription = this.layoutService.overlayOpen$.subscribe(() => {
|
|
16
|
+
if (!this.menuOutsideClickListener) {
|
|
17
|
+
this.menuOutsideClickListener = this.renderer.listen('document', 'click', event => {
|
|
18
|
+
const isOutsideClicked = !(this.appSidebar.el.nativeElement.isSameNode(event.target) ||
|
|
19
|
+
this.appSidebar.el.nativeElement.contains(event.target) ||
|
|
20
|
+
this.appTopbar.menuButton.nativeElement.isSameNode(event.target) ||
|
|
21
|
+
this.appTopbar.menuButton.nativeElement.contains(event.target) ||
|
|
22
|
+
(event.target.closest('.p-autocomplete-items')) ||
|
|
23
|
+
(event.target.closest('.p-autocomplete-clear-icon')));
|
|
24
|
+
if (isOutsideClicked) {
|
|
25
|
+
this.hideMenu();
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
if (!this.profileMenuOutsideClickListener) {
|
|
30
|
+
this.profileMenuOutsideClickListener = this.renderer.listen('document', 'click', event => {
|
|
31
|
+
const isOutsideClicked = !(this.appTopbar.menu.nativeElement.isSameNode(event.target) || this.appTopbar.menu.nativeElement.contains(event.target));
|
|
32
|
+
if (isOutsideClicked) {
|
|
33
|
+
this.hideProfileMenu();
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
if (this.layoutService.state.staticMenuMobileActive) {
|
|
38
|
+
this.blockBodyScroll();
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
this.router.events.pipe(filter(event => event instanceof NavigationEnd))
|
|
42
|
+
.subscribe(() => {
|
|
43
|
+
this.hideMenu();
|
|
44
|
+
this.hideProfileMenu();
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
hideMenu() {
|
|
48
|
+
this.layoutService.state.overlayMenuActive = false;
|
|
49
|
+
this.layoutService.state.staticMenuMobileActive = false;
|
|
50
|
+
this.layoutService.state.menuHoverActive = false;
|
|
51
|
+
if (this.menuOutsideClickListener) {
|
|
52
|
+
this.menuOutsideClickListener();
|
|
53
|
+
this.menuOutsideClickListener = null;
|
|
54
|
+
}
|
|
55
|
+
this.unblockBodyScroll();
|
|
56
|
+
}
|
|
57
|
+
hideProfileMenu() {
|
|
58
|
+
this.layoutService.state.profileSidebarVisible = false;
|
|
59
|
+
if (this.profileMenuOutsideClickListener) {
|
|
60
|
+
this.profileMenuOutsideClickListener();
|
|
61
|
+
this.profileMenuOutsideClickListener = null;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
blockBodyScroll() {
|
|
65
|
+
if (document.body.classList) {
|
|
66
|
+
document.body.classList.add('blocked-scroll');
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
document.body.className += ' blocked-scroll';
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
unblockBodyScroll() {
|
|
73
|
+
if (document.body.classList) {
|
|
74
|
+
document.body.classList.remove('blocked-scroll');
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
document.body.className = document.body.className.replace(new RegExp('(^|\\b)' +
|
|
78
|
+
'blocked-scroll'.split(' ').join('|') + '(\\b|$)', 'gi'), ' ');
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
get containerClass() {
|
|
82
|
+
return {
|
|
83
|
+
'layout-theme-light': this.layoutService.layoutConfig.colorScheme === 'light',
|
|
84
|
+
'layout-theme-dark': this.layoutService.layoutConfig.colorScheme === 'dark',
|
|
85
|
+
'layout-overlay': this.layoutService.layoutConfig.menuMode === 'overlay',
|
|
86
|
+
'layout-static': this.layoutService.layoutConfig.menuMode === 'static',
|
|
87
|
+
'layout-static-inactive': this.layoutService.state.staticMenuDesktopInactive && this.layoutService.layoutConfig.menuMode === 'static',
|
|
88
|
+
'layout-overlay-active': this.layoutService.state.overlayMenuActive,
|
|
89
|
+
'layout-mobile-active': this.layoutService.state.staticMenuMobileActive,
|
|
90
|
+
'p-input-filled': this.layoutService.layoutConfig.inputStyle === 'filled',
|
|
91
|
+
'p-ripple-disabled': !this.layoutService.layoutConfig.ripple
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
ngOnDestroy() {
|
|
95
|
+
if (this.overlayMenuOpenSubscription) {
|
|
96
|
+
this.overlayMenuOpenSubscription.unsubscribe();
|
|
97
|
+
}
|
|
98
|
+
if (this.menuOutsideClickListener) {
|
|
99
|
+
this.menuOutsideClickListener();
|
|
100
|
+
}
|
|
101
|
+
this.onAfterNgDestroy();
|
|
102
|
+
}
|
|
103
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LayoutBaseComponent, deps: [{ token: i1.LayoutBaseService }, { token: i0.Renderer2 }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
104
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: LayoutBaseComponent, isStandalone: true, selector: "layout-base", viewQueries: [{ propertyName: "appSidebar", first: true, predicate: AppSidebarComponent, descendants: true }, { propertyName: "appTopbar", first: true, predicate: AppTopBarComponent, descendants: true }], ngImport: i0, template: '', isInline: true }); }
|
|
105
|
+
}
|
|
106
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LayoutBaseComponent, decorators: [{
|
|
107
|
+
type: Component,
|
|
108
|
+
args: [{
|
|
109
|
+
selector: 'layout-base',
|
|
110
|
+
template: '',
|
|
111
|
+
standalone: true
|
|
112
|
+
}]
|
|
113
|
+
}], ctorParameters: () => [{ type: i1.LayoutBaseService }, { type: i0.Renderer2 }, { type: i2.Router }], propDecorators: { appSidebar: [{
|
|
114
|
+
type: ViewChild,
|
|
115
|
+
args: [AppSidebarComponent]
|
|
116
|
+
}], appTopbar: [{
|
|
117
|
+
type: ViewChild,
|
|
118
|
+
args: [AppTopBarComponent]
|
|
119
|
+
}] } });
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWJhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BpZGVybHkvc3JjL2xpYi9jb21wb25lbnRzL2xheW91dC9sYXlvdXQtYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBd0IsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxhQUFhLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUM1QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7OztBQVEvRCxNQUFNLE9BQU8sbUJBQW1CO0lBWTVCLFlBQ2MsYUFBZ0MsRUFDaEMsUUFBbUIsRUFDbkIsTUFBYztRQUZkLGtCQUFhLEdBQWIsYUFBYSxDQUFtQjtRQUNoQyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFdBQU0sR0FBTixNQUFNLENBQVE7UUEwRzVCLHFCQUFnQixHQUFHLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQTtRQXhHdkIsSUFBSSxDQUFDLDJCQUEyQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDOUUsSUFBSSxDQUFDLElBQUksQ0FBQyx3QkFBd0IsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUU7b0JBQzlFLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxDQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLEtB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QXNCLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsc0JBQXNCO1lBQ3ZFLGdCQUFnQixFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLFVBQVUsS0FBSyxRQUFRO1lBQ3pFLG1CQUFtQixFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsTUFBTTtTQUMvRCxDQUFBO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLElBQUksQ0FBQywyQkFBMkIsRUFBRTtZQUNsQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDbEQ7UUFFRCxJQUFJLElBQUksQ0FBQyx3QkFBd0IsRUFBRTtZQUMvQixJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztTQUNuQztRQUVELElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7K0dBdkhRLG1CQUFtQjttR0FBbkIsbUJBQW1CLG1IQVFqQixtQkFBbUIsNEVBRW5CLGtCQUFrQixnREFibkIsRUFBRTs7NEZBR0gsbUJBQW1CO2tCQUwvQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxhQUFhO29CQUN2QixRQUFRLEVBQUUsRUFBRTtvQkFDWixVQUFVLEVBQUUsSUFBSTtpQkFDbkI7bUlBU21DLFVBQVU7c0JBQXpDLFNBQVM7dUJBQUMsbUJBQW1CO2dCQUVDLFNBQVM7c0JBQXZDLFNBQVM7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIFJlbmRlcmVyMiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IGZpbHRlciwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEFwcFNpZGViYXJDb21wb25lbnQgfSBmcm9tICcuL3NpZGViYXIvc2lkZWJhci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBcHBUb3BCYXJDb21wb25lbnQgfSBmcm9tICcuL3RvcGJhci90b3BiYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTGF5b3V0QmFzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hcHAtbGF5b3V0LWJhc2Uuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnbGF5b3V0LWJhc2UnLFxyXG4gICAgdGVtcGxhdGU6ICcnLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTGF5b3V0QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcblxyXG4gICAgb3ZlcmxheU1lbnVPcGVuU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG4gICAgbWVudU91dHNpZGVDbGlja0xpc3RlbmVyOiBhbnk7XHJcblxyXG4gICAgcHJvZmlsZU1lbnVPdXRzaWRlQ2xpY2tMaXN0ZW5lcjogYW55O1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoQXBwU2lkZWJhckNvbXBvbmVudCkgYXBwU2lkZWJhciE6IEFwcFNpZGViYXJDb21wb25lbnQ7XHJcblxyXG4gICAgQFZpZXdDaGlsZChBcHBUb3BCYXJDb21wb25lbnQpIGFwcFRvcGJhciE6IEFwcFRvcEJhckNvbXBvbmVudDtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcm90ZWN0ZWQgbGF5b3V0U2VydmljZTogTGF5b3V0QmFzZVNlcnZpY2UsIFxyXG4gICAgICAgIHByb3RlY3RlZCByZW5kZXJlcjogUmVuZGVyZXIyLCBcclxuICAgICAgICBwcm90ZWN0ZWQgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICApIHtcclxuICAgICAgICB0aGlzLm92ZXJsYXlNZW51T3BlblN1YnNjcmlwdGlvbiA9IHRoaXMubGF5b3V0U2VydmljZS5vdmVybGF5T3BlbiQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLm1lbnVPdXRzaWRlQ2xpY2tMaXN0ZW5lcikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5tZW51T3V0c2lkZUNsaWNrTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbignZG9jdW1lbnQnLCAnY2xpY2snLCBldmVudCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNPdXRzaWRlQ2xpY2tlZCA9ICEoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYXBwU2lkZWJhci5lbC5uYXRpdmVFbGVtZW50LmlzU2FtZU5vZGUoZXZlbnQudGFyZ2V0KSB8fCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hcHBTaWRlYmFyLmVsLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFwcFRvcGJhci5tZW51QnV0dG9uLm5hdGl2ZUVsZW1lbnQuaXNTYW1lTm9kZShldmVudC50YXJnZXQpIHx8IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFwcFRvcGJhci5tZW51QnV0dG9uLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoZXZlbnQudGFyZ2V0LmNsb3Nlc3QoJy5wLWF1dG9jb21wbGV0ZS1pdGVtcycpKSB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoZXZlbnQudGFyZ2V0LmNsb3Nlc3QoJy5wLWF1dG9jb21wbGV0ZS1jbGVhci1pY29uJykpXHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNPdXRzaWRlQ2xpY2tlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhpZGVNZW51KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICghdGhpcy5wcm9maWxlTWVudU91dHNpZGVDbGlja0xpc3RlbmVyKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnByb2ZpbGVNZW51T3V0c2lkZUNsaWNrTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbignZG9jdW1lbnQnLCAnY2xpY2snLCBldmVudCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNPdXRzaWRlQ2xpY2tlZCA9ICEodGhpcy5hcHBUb3BiYXIubWVudS5uYXRpdmVFbGVtZW50LmlzU2FtZU5vZGUoZXZlbnQudGFyZ2V0KSB8fCB0aGlzLmFwcFRvcGJhci5tZW51Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChpc091dHNpZGVDbGlja2VkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaGlkZVByb2ZpbGVNZW51KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUuc3RhdGljTWVudU1vYmlsZUFjdGl2ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ibG9ja0JvZHlTY3JvbGwoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICB0aGlzLnJvdXRlci5ldmVudHMucGlwZShmaWx0ZXIoZXZlbnQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmhpZGVNZW51KCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmhpZGVQcm9maWxlTWVudSgpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBoaWRlTWVudSgpIHtcclxuICAgICAgICB0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUub3ZlcmxheU1lbnVBY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUuc3RhdGljTWVudU1vYmlsZUFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMubGF5b3V0U2VydmljZS5zdGF0ZS5tZW51SG92ZXJBY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICBpZiAodGhpcy5tZW51T3V0c2lkZUNsaWNrTGlzdGVuZXIpIHtcclxuICAgICAgICAgICAgdGhpcy5tZW51T3V0c2lkZUNsaWNrTGlzdGVuZXIoKTtcclxuICAgICAgICAgICAgdGhpcy5tZW51T3V0c2lkZUNsaWNrTGlzdGVuZXIgPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnVuYmxvY2tCb2R5U2Nyb2xsKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaGlkZVByb2ZpbGVNZW51KCkge1xyXG4gICAgICAgIHRoaXMubGF5b3V0U2VydmljZS5zdGF0ZS5wcm9maWxlU2lkZWJhclZpc2libGUgPSBmYWxzZTtcclxuICAgICAgICBpZiAodGhpcy5wcm9maWxlTWVudU91dHNpZGVDbGlja0xpc3RlbmVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMucHJvZmlsZU1lbnVPdXRzaWRlQ2xpY2tMaXN0ZW5lcigpO1xyXG4gICAgICAgICAgICB0aGlzLnByb2ZpbGVNZW51T3V0c2lkZUNsaWNrTGlzdGVuZXIgPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBibG9ja0JvZHlTY3JvbGwoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0KSB7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgnYmxvY2tlZC1zY3JvbGwnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NOYW1lICs9ICcgYmxvY2tlZC1zY3JvbGwnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB1bmJsb2NrQm9keVNjcm9sbCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAoZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QpIHtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCdibG9ja2VkLXNjcm9sbCcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc05hbWUgPSBkb2N1bWVudC5ib2R5LmNsYXNzTmFtZS5yZXBsYWNlKG5ldyBSZWdFeHAoJyhefFxcXFxiKScgK1xyXG4gICAgICAgICAgICAgICAgJ2Jsb2NrZWQtc2Nyb2xsJy5zcGxpdCgnICcpLmpvaW4oJ3wnKSArICcoXFxcXGJ8JCknLCAnZ2knKSwgJyAnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGNvbnRhaW5lckNsYXNzKCkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICdsYXlvdXQtdGhlbWUtbGlnaHQnOiB0aGlzLmxheW91dFNlcnZpY2UubGF5b3V0Q29uZmlnLmNvbG9yU2NoZW1lID09PSAnbGlnaHQnLFxyXG4gICAgICAgICAgICAnbGF5b3V0LXRoZW1lLWRhcmsnOiB0aGlzLmxheW91dFNlcnZpY2UubGF5b3V0Q29uZmlnLmNvbG9yU2NoZW1lID09PSAnZGFyaycsXHJcbiAgICAgICAgICAgICdsYXlvdXQtb3ZlcmxheSc6IHRoaXMubGF5b3V0U2VydmljZS5sYXlvdXRDb25maWcubWVudU1vZGUgPT09ICdvdmVybGF5JyxcclxuICAgICAgICAgICAgJ2xheW91dC1zdGF0aWMnOiB0aGlzLmxheW91dFNlcnZpY2UubGF5b3V0Q29uZmlnLm1lbnVNb2RlID09PSAnc3RhdGljJyxcclxuICAgICAgICAgICAgJ2xheW91dC1zdGF0aWMtaW5hY3RpdmUnOiB0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUuc3RhdGljTWVudURlc2t0b3BJbmFjdGl2ZSAmJiB0aGlzLmxheW91dFNlcnZpY2UubGF5b3V0Q29uZmlnLm1lbnVNb2RlID09PSAnc3RhdGljJyxcclxuICAgICAgICAgICAgJ2xheW91dC1vdmVybGF5LWFjdGl2ZSc6IHRoaXMubGF5b3V0U2VydmljZS5zdGF0ZS5vdmVybGF5TWVudUFjdGl2ZSxcclxuICAgICAgICAgICAgJ2xheW91dC1tb2JpbGUtYWN0aXZlJzogdGhpcy5sYXlvdXRTZXJ2aWNlLnN0YXRlLnN0YXRpY01lbnVNb2JpbGVBY3RpdmUsXHJcbiAgICAgICAgICAgICdwLWlucHV0LWZpbGxlZCc6IHRoaXMubGF5b3V0U2VydmljZS5sYXlvdXRDb25maWcuaW5wdXRTdHlsZSA9PT0gJ2ZpbGxlZCcsXHJcbiAgICAgICAgICAgICdwLXJpcHBsZS1kaXNhYmxlZCc6ICF0aGlzLmxheW91dFNlcnZpY2UubGF5b3V0Q29uZmlnLnJpcHBsZVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICBpZiAodGhpcy5vdmVybGF5TWVudU9wZW5TdWJzY3JpcHRpb24pIHtcclxuICAgICAgICAgICAgdGhpcy5vdmVybGF5TWVudU9wZW5TdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLm1lbnVPdXRzaWRlQ2xpY2tMaXN0ZW5lcikge1xyXG4gICAgICAgICAgICB0aGlzLm1lbnVPdXRzaWRlQ2xpY2tMaXN0ZW5lcigpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5vbkFmdGVyTmdEZXN0cm95KCk7XHJcbiAgICB9XHJcblxyXG4gICAgb25BZnRlck5nRGVzdHJveSA9ICgpID0+IHt9XHJcbiAgICBcclxufVxyXG5cclxuIl19
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { Component, HostBinding, Input } from '@angular/core';
|
|
2
|
+
import { NavigationEnd } from '@angular/router';
|
|
3
|
+
import { animate, state, style, transition, trigger } from '@angular/animations';
|
|
4
|
+
import { filter } from 'rxjs/operators';
|
|
5
|
+
import { SpiderlyFormControl } from '../../spiderly-form-control/spiderly-form-control';
|
|
6
|
+
import { CommonModule } from '@angular/common';
|
|
7
|
+
import { PrimengModule } from '../../../modules/primeng.module';
|
|
8
|
+
import { SpiderlyControlsModule } from '../../../controls/spiderly-controls.module';
|
|
9
|
+
import { TranslocoDirective } from '@jsverse/transloco';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "../../../services/app-layout-base.service";
|
|
12
|
+
import * as i2 from "@angular/router";
|
|
13
|
+
import * as i3 from "./sidebar-menu.service";
|
|
14
|
+
import * as i4 from "../../../services/auth-base.service";
|
|
15
|
+
import * as i5 from "../../../services/api.service.security";
|
|
16
|
+
import * as i6 from "../../../services/config-base.service";
|
|
17
|
+
import * as i7 from "@angular/common";
|
|
18
|
+
import * as i8 from "primeng/ripple";
|
|
19
|
+
import * as i9 from "../../../controls/spiderly-autocomplete/spiderly-autocomplete.component";
|
|
20
|
+
export class MenuitemComponent {
|
|
21
|
+
constructor(layoutService, cd, router, menuService, authService, apiService, config) {
|
|
22
|
+
this.layoutService = layoutService;
|
|
23
|
+
this.cd = cd;
|
|
24
|
+
this.router = router;
|
|
25
|
+
this.menuService = menuService;
|
|
26
|
+
this.authService = authService;
|
|
27
|
+
this.apiService = apiService;
|
|
28
|
+
this.config = config;
|
|
29
|
+
this.active = false;
|
|
30
|
+
this.permissionSubscription = null;
|
|
31
|
+
this.key = "";
|
|
32
|
+
this.selectedPartner = new SpiderlyFormControl(null, { updateOn: 'change' });
|
|
33
|
+
this.partnersAutocompleteButtonClick = async () => {
|
|
34
|
+
this.layoutService.partnersAutocompleteButtonClick(this.selectedPartner);
|
|
35
|
+
};
|
|
36
|
+
this.menuSourceSubscription = this.menuService.menuSource$.subscribe(value => {
|
|
37
|
+
Promise.resolve(null).then(() => {
|
|
38
|
+
if (value.routeEvent) {
|
|
39
|
+
this.active = (value.key === this.key || value.key.startsWith(this.key + '-')) ? true : false;
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
if (value.key !== this.key && !value.key.startsWith(this.key + '-')) {
|
|
43
|
+
this.active = false;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
this.menuResetSubscription = this.menuService.resetSource$.subscribe(() => {
|
|
49
|
+
this.active = false;
|
|
50
|
+
});
|
|
51
|
+
this.router.events.pipe(filter(event => event instanceof NavigationEnd))
|
|
52
|
+
.subscribe(params => {
|
|
53
|
+
if (this.item.routerLink) {
|
|
54
|
+
this.updateActiveStateFromRoute();
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
ngOnInit() {
|
|
59
|
+
this.key = this.parentKey ? this.parentKey + '-' + this.index : String(this.index);
|
|
60
|
+
if (this.item.routerLink) {
|
|
61
|
+
this.updateActiveStateFromRoute();
|
|
62
|
+
}
|
|
63
|
+
this.permissionSubscription = this.authService.currentUserPermissionCodes$.subscribe((currentUserPermissionCodes) => {
|
|
64
|
+
if (this.item && typeof this.item.hasPermission === 'function') {
|
|
65
|
+
this.item.visible = this.item.hasPermission(currentUserPermissionCodes);
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
updateActiveStateFromRoute() {
|
|
70
|
+
let activeRoute = this.router.isActive(this.item.routerLink[0], { paths: 'exact', queryParams: 'ignored', matrixParams: 'ignored', fragment: 'ignored' });
|
|
71
|
+
if (activeRoute) {
|
|
72
|
+
this.menuService.onMenuStateChange({ key: this.key, routeEvent: true });
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
itemClick(event) {
|
|
76
|
+
// avoid processing disabled items
|
|
77
|
+
if (this.item.disabled || event === null) {
|
|
78
|
+
event.preventDefault();
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
// execute command
|
|
82
|
+
if (this.item.command) {
|
|
83
|
+
this.item.command({ originalEvent: event, item: this.item });
|
|
84
|
+
}
|
|
85
|
+
// toggle active state
|
|
86
|
+
if (this.item.items) {
|
|
87
|
+
this.active = !this.active;
|
|
88
|
+
}
|
|
89
|
+
this.menuService.onMenuStateChange({ key: this.key });
|
|
90
|
+
}
|
|
91
|
+
get submenuAnimation() {
|
|
92
|
+
return this.root ? 'expanded' : (this.active ? 'expanded' : 'collapsed');
|
|
93
|
+
}
|
|
94
|
+
get activeClass() {
|
|
95
|
+
return this.active && !this.root;
|
|
96
|
+
}
|
|
97
|
+
//#region FT HACK: Partner
|
|
98
|
+
searchPartners(event) {
|
|
99
|
+
this.layoutService.searchPartners(event).subscribe(po => {
|
|
100
|
+
this.partnerOptions = po;
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
//#endregion
|
|
104
|
+
ngOnDestroy() {
|
|
105
|
+
if (this.menuSourceSubscription) {
|
|
106
|
+
this.menuSourceSubscription.unsubscribe();
|
|
107
|
+
}
|
|
108
|
+
if (this.menuResetSubscription) {
|
|
109
|
+
this.menuResetSubscription.unsubscribe();
|
|
110
|
+
}
|
|
111
|
+
if (this.permissionSubscription) {
|
|
112
|
+
this.permissionSubscription.unsubscribe();
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MenuitemComponent, deps: [{ token: i1.LayoutBaseService }, { token: i0.ChangeDetectorRef }, { token: i2.Router }, { token: i3.SidebarMenuService }, { token: i4.AuthBaseService }, { token: i5.ApiSecurityService }, { token: i6.ConfigBaseService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
116
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MenuitemComponent, isStandalone: true, selector: "[menuitem]", inputs: { item: "item", index: "index", root: "root", parentKey: "parentKey" }, host: { properties: { "class.layout-root-menuitem": "this.root", "class.active-menuitem": "this.activeClass" } }, ngImport: i0, template: "<ng-container *transloco=\"let t\">\r\n <div *ngIf=\"root && item.visible === true\" class=\"layout-menuitem-root-text\">{{item.label}}</div>\r\n <a *ngIf=\"(!item.routerLink || item.items) && item.visible === true\" [attr.href]=\"item.url\" (click)=\"itemClick($event)\"\r\n [ngClass]=\"item.styleClass\" [attr.target]=\"item.target\" tabindex=\"0\" pRipple>\r\n <i [ngClass]=\"item.icon\" class=\"layout-menuitem-icon\"></i>\r\n <span class=\"layout-menuitem-text\">{{item.label}}</span>\r\n <i class=\"pi pi-fw pi-angle-down layout-submenu-toggler\" *ngIf=\"item.items\"></i>\r\n </a>\r\n <a *ngIf=\"(item.routerLink && !item.items) && item.visible === true\" (click)=\"itemClick($event)\" [ngClass]=\"item.styleClass\"\r\n [routerLink]=\"item.routerLink\" routerLinkActive=\"active-route\" [routerLinkActiveOptions]=\"item.routerLinkActiveOptions||{ paths: 'exact', queryParams: 'ignored', matrixParams: 'ignored', fragment: 'ignored' }\"\r\n [fragment]=\"item.fragment\" [queryParamsHandling]=\"item.queryParamsHandling\" [preserveFragment]=\"item.preserveFragment\"\r\n [skipLocationChange]=\"item.skipLocationChange\" [replaceUrl]=\"item.replaceUrl\" [state]=\"item.state\" [queryParams]=\"item.queryParams\"\r\n [attr.target]=\"item.target\" tabindex=\"0\" pRipple>\r\n <i [ngClass]=\"item.icon\" class=\"layout-menuitem-icon\"></i>\r\n <span class=\"layout-menuitem-text\">{{item.label}}</span>\r\n <i class=\"pi pi-fw pi-angle-down layout-submenu-toggler\" *ngIf=\"item.items\"></i>\r\n </a>\r\n\r\n <ul *ngIf=\"item.items && item.visible === true\" [@children]=\"submenuAnimation\">\r\n <ng-template ngFor let-child let-i=\"index\" [ngForOf]=\"item.items\">\r\n <li menuitem [item]=\"child\" [index]=\"i\" [parentKey]=\"key\" [class]=\"child.badgeStyleClass\"></li>\r\n </ng-template>\r\n </ul>\r\n\r\n <!-- FT: Delete this in the future iterations, make link to partner in /partners page -->\r\n <spiderly-autocomplete\r\n *ngIf=\"item.showPartnerDialog\"\r\n [control]=\"selectedPartner\"\r\n [options]=\"partnerOptions\"\r\n (onTextInput)=\"searchPartners($event)\"\r\n label=\"\"\r\n [placeholder]=\"t('SelectThePartner')\"\r\n [showAddon]=\"true\"\r\n (onButtonClick)=\"partnersAutocompleteButtonClick()\"\r\n addonIcon=\"pi pi-check\"\r\n [emptyMessage]=\"t('LeftCornerPartnersEmptyMessage')\"\r\n class=\"mobile-stay-open\"\r\n ></spiderly-autocomplete>\r\n \r\n</ng-container>", dependencies: [{ kind: "component", type: MenuitemComponent, selector: "[menuitem]", inputs: ["item", "index", "root", "parentKey"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: PrimengModule }, { kind: "directive", type: i8.Ripple, selector: "[pRipple]" }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "ngmodule", type: SpiderlyControlsModule }, { kind: "component", type: i9.SpiderlyAutocompleteComponent, selector: "spiderly-autocomplete", inputs: ["appendTo", "showClear", "emptyMessage", "displayName"] }], animations: [
|
|
117
|
+
trigger('children', [
|
|
118
|
+
state('collapsed', style({
|
|
119
|
+
height: '0'
|
|
120
|
+
})),
|
|
121
|
+
state('expanded', style({
|
|
122
|
+
height: '*'
|
|
123
|
+
})),
|
|
124
|
+
transition('collapsed <=> expanded', animate('400ms cubic-bezier(0.86, 0, 0.07, 1)'))
|
|
125
|
+
])
|
|
126
|
+
] }); }
|
|
127
|
+
}
|
|
128
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MenuitemComponent, decorators: [{
|
|
129
|
+
type: Component,
|
|
130
|
+
args: [{ selector: '[menuitem]', animations: [
|
|
131
|
+
trigger('children', [
|
|
132
|
+
state('collapsed', style({
|
|
133
|
+
height: '0'
|
|
134
|
+
})),
|
|
135
|
+
state('expanded', style({
|
|
136
|
+
height: '*'
|
|
137
|
+
})),
|
|
138
|
+
transition('collapsed <=> expanded', animate('400ms cubic-bezier(0.86, 0, 0.07, 1)'))
|
|
139
|
+
])
|
|
140
|
+
], standalone: true, imports: [
|
|
141
|
+
CommonModule,
|
|
142
|
+
PrimengModule,
|
|
143
|
+
TranslocoDirective,
|
|
144
|
+
SpiderlyControlsModule,
|
|
145
|
+
], template: "<ng-container *transloco=\"let t\">\r\n <div *ngIf=\"root && item.visible === true\" class=\"layout-menuitem-root-text\">{{item.label}}</div>\r\n <a *ngIf=\"(!item.routerLink || item.items) && item.visible === true\" [attr.href]=\"item.url\" (click)=\"itemClick($event)\"\r\n [ngClass]=\"item.styleClass\" [attr.target]=\"item.target\" tabindex=\"0\" pRipple>\r\n <i [ngClass]=\"item.icon\" class=\"layout-menuitem-icon\"></i>\r\n <span class=\"layout-menuitem-text\">{{item.label}}</span>\r\n <i class=\"pi pi-fw pi-angle-down layout-submenu-toggler\" *ngIf=\"item.items\"></i>\r\n </a>\r\n <a *ngIf=\"(item.routerLink && !item.items) && item.visible === true\" (click)=\"itemClick($event)\" [ngClass]=\"item.styleClass\"\r\n [routerLink]=\"item.routerLink\" routerLinkActive=\"active-route\" [routerLinkActiveOptions]=\"item.routerLinkActiveOptions||{ paths: 'exact', queryParams: 'ignored', matrixParams: 'ignored', fragment: 'ignored' }\"\r\n [fragment]=\"item.fragment\" [queryParamsHandling]=\"item.queryParamsHandling\" [preserveFragment]=\"item.preserveFragment\"\r\n [skipLocationChange]=\"item.skipLocationChange\" [replaceUrl]=\"item.replaceUrl\" [state]=\"item.state\" [queryParams]=\"item.queryParams\"\r\n [attr.target]=\"item.target\" tabindex=\"0\" pRipple>\r\n <i [ngClass]=\"item.icon\" class=\"layout-menuitem-icon\"></i>\r\n <span class=\"layout-menuitem-text\">{{item.label}}</span>\r\n <i class=\"pi pi-fw pi-angle-down layout-submenu-toggler\" *ngIf=\"item.items\"></i>\r\n </a>\r\n\r\n <ul *ngIf=\"item.items && item.visible === true\" [@children]=\"submenuAnimation\">\r\n <ng-template ngFor let-child let-i=\"index\" [ngForOf]=\"item.items\">\r\n <li menuitem [item]=\"child\" [index]=\"i\" [parentKey]=\"key\" [class]=\"child.badgeStyleClass\"></li>\r\n </ng-template>\r\n </ul>\r\n\r\n <!-- FT: Delete this in the future iterations, make link to partner in /partners page -->\r\n <spiderly-autocomplete\r\n *ngIf=\"item.showPartnerDialog\"\r\n [control]=\"selectedPartner\"\r\n [options]=\"partnerOptions\"\r\n (onTextInput)=\"searchPartners($event)\"\r\n label=\"\"\r\n [placeholder]=\"t('SelectThePartner')\"\r\n [showAddon]=\"true\"\r\n (onButtonClick)=\"partnersAutocompleteButtonClick()\"\r\n addonIcon=\"pi pi-check\"\r\n [emptyMessage]=\"t('LeftCornerPartnersEmptyMessage')\"\r\n class=\"mobile-stay-open\"\r\n ></spiderly-autocomplete>\r\n \r\n</ng-container>" }]
|
|
146
|
+
}], ctorParameters: () => [{ type: i1.LayoutBaseService }, { type: i0.ChangeDetectorRef }, { type: i2.Router }, { type: i3.SidebarMenuService }, { type: i4.AuthBaseService }, { type: i5.ApiSecurityService }, { type: i6.ConfigBaseService }], propDecorators: { item: [{
|
|
147
|
+
type: Input
|
|
148
|
+
}], index: [{
|
|
149
|
+
type: Input
|
|
150
|
+
}], root: [{
|
|
151
|
+
type: Input
|
|
152
|
+
}, {
|
|
153
|
+
type: HostBinding,
|
|
154
|
+
args: ['class.layout-root-menuitem']
|
|
155
|
+
}], parentKey: [{
|
|
156
|
+
type: Input
|
|
157
|
+
}], activeClass: [{
|
|
158
|
+
type: HostBinding,
|
|
159
|
+
args: ['class.active-menuitem']
|
|
160
|
+
}] } });
|
|
161
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BpZGVybHkvc3JjL2xpYi9jb21wb25lbnRzL2xheW91dC9zaWRlYmFyL21lbnVpdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwaWRlcmx5L3NyYy9saWIvY29tcG9uZW50cy9sYXlvdXQvc2lkZWJhci9tZW51aXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUUsYUFBYSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVqRixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJeEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFNeEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7Ozs7Ozs7QUF5QnhELE1BQU0sT0FBTyxpQkFBaUI7SUF3QjFCLFlBQ1csYUFBZ0MsRUFDL0IsRUFBcUIsRUFDdEIsTUFBYyxFQUNiLFdBQStCLEVBQy9CLFdBQTRCLEVBQzVCLFVBQThCLEVBQzlCLE1BQXlCO1FBTjFCLGtCQUFhLEdBQWIsYUFBYSxDQUFtQjtRQUMvQixP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SyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUM7b0JBQ3JCLE1BQU0sRUFBRSxHQUFHO2lCQUNkLENBQUMsQ0FBQztnQkFDSCxLQUFLLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQztvQkFDcEIsTUFBTSxFQUFFLEdBQUc7aUJBQ2QsQ0FBQyxDQUFDO2dCQUNILFVBQVUsQ0FBQyx3QkFBd0IsRUFBRSxPQUFPLENBQUMsc0NBQXNDLENBQUMsQ0FBQzthQUN4RixDQUFDO1NBQ0w7OzRGQVNRLGlCQUFpQjtrQkF2QjdCLFNBQVM7K0JBRUksWUFBWSxjQUVWO3dCQUNSLE9BQU8sQ0FBQyxVQUFVLEVBQUU7NEJBQ2hCLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDO2dDQUNyQixNQUFNLEVBQUUsR0FBRzs2QkFDZCxDQUFDLENBQUM7NEJBQ0gsS0FBSyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUM7Z0NBQ3BCLE1BQU0sRUFBRSxHQUFHOzZCQUNkLENBQUMsQ0FBQzs0QkFDSCxVQUFVLENBQUMsd0JBQXdCLEVBQUUsT0FBTyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7eUJBQ3hGLENBQUM7cUJBQ0wsY0FDVyxJQUFJLFdBQ1A7d0JBQ0wsWUFBWTt3QkFDWixhQUFhO3dCQUNiLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3FCQUN6QjsyUUFJUSxJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUU4QyxJQUFJO3NCQUF2RCxLQUFLOztzQkFBSSxXQUFXO3VCQUFDLDRCQUE0QjtnQkFFekMsU0FBUztzQkFBakIsS0FBSztnQkFpR0YsV0FBVztzQkFEZCxXQUFXO3VCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFNpZGViYXJNZW51U2VydmljZSB9IGZyb20gJy4vc2lkZWJhci1tZW51LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTcGlkZXJseU1lbnVJdGVtIH0gZnJvbSAnLi9zaWRlYmFyLW1lbnUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXV0b0NvbXBsZXRlQ29tcGxldGVFdmVudCB9IGZyb20gJ3ByaW1lbmcvYXV0b2NvbXBsZXRlJztcclxuaW1wb3J0IHsgU3BpZGVybHlGb3JtQ29udHJvbCB9IGZyb20gJy4uLy4uL3NwaWRlcmx5LWZvcm0tY29udHJvbC9zcGlkZXJseS1mb3JtLWNvbnRyb2wnO1xyXG5pbXBvcnQgeyBQcmltZW5nT3B0aW9uIH0gZnJvbSAnLi4vLi4vLi4vZW50aXRpZXMvcHJpbWVuZy1vcHRpb24nO1xyXG5pbXBvcnQgeyBMYXlvdXRCYXNlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2FwcC1sYXlvdXQtYmFzZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXV0aEJhc2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYXV0aC1iYXNlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcGlTZWN1cml0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hcGkuc2VydmljZS5zZWN1cml0eSc7XHJcbmltcG9ydCB7IENvbmZpZ0Jhc2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY29uZmlnLWJhc2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFByaW1lbmdNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9tb2R1bGVzL3ByaW1lbmcubW9kdWxlJztcclxuaW1wb3J0IHsgU3BpZGVybHlDb250cm9sc01vZHVsZSB9IGZyb20gJy4uLy4uLy4uL2NvbnRyb2xzL3NwaWRlcmx5LWNvbnRyb2xzLm1vZHVsZSc7XHJcbmltcG9ydCB7IFRyYW5zbG9jb0RpcmVjdGl2ZSB9IGZyb20gJ0Bqc3ZlcnNlL3RyYW5zbG9jbyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXHJcbiAgICBzZWxlY3RvcjogJ1ttZW51aXRlbV0nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL21lbnVpdGVtLmNvbXBvbmVudC5odG1sJyxcclxuICAgIGFuaW1hdGlvbnM6IFtcclxuICAgICAgICB0cmlnZ2VyKCdjaGlsZHJlbicsIFtcclxuICAgICAgICAgICAgc3RhdGUoJ2NvbGxhcHNlZCcsIHN0eWxlKHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogJzAnXHJcbiAgICAgICAgICAgIH0pKSxcclxuICAgICAgICAgICAgc3RhdGUoJ2V4cGFuZGVkJywgc3R5bGUoe1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAnKidcclxuICAgICAgICAgICAgfSkpLFxyXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCdjb2xsYXBzZWQgPD0+IGV4cGFuZGVkJywgYW5pbWF0ZSgnNDAwbXMgY3ViaWMtYmV6aWVyKDAuODYsIDAsIDAuMDcsIDEpJykpXHJcbiAgICAgICAgXSlcclxuICAgIF0sXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBQcmltZW5nTW9kdWxlLFxyXG4gICAgICAgIFRyYW5zbG9jb0RpcmVjdGl2ZSxcclxuICAgICAgICBTcGlkZXJseUNvbnRyb2xzTW9kdWxlLFxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWVudWl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gICAgQElucHV0KCkgaXRlbTogU3BpZGVybHlNZW51SXRlbTtcclxuXHJcbiAgICBASW5wdXQoKSBpbmRleCE6IG51bWJlcjtcclxuXHJcbiAgICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzLmxheW91dC1yb290LW1lbnVpdGVtJykgcm9vdCE6IGJvb2xlYW47XHJcblxyXG4gICAgQElucHV0KCkgcGFyZW50S2V5ITogc3RyaW5nO1xyXG5cclxuICAgIGFjdGl2ZSA9IGZhbHNlO1xyXG5cclxuICAgIHByaXZhdGUgbWVudVNvdXJjZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cclxuICAgIHByaXZhdGUgbWVudVJlc2V0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG4gICAgcHJpdmF0ZSBwZXJtaXNzaW9uU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCBudWxsID0gbnVsbDtcclxuXHJcbiAgICBrZXk6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gICAgc2VsZWN0ZWRQYXJ0bmVyOiBTcGlkZXJseUZvcm1Db250cm9sID0gbmV3IFNwaWRlcmx5Rm9ybUNvbnRyb2w8c3RyaW5nPihudWxsLCB7IHVwZGF0ZU9uOiAnY2hhbmdlJyB9KTtcclxuXHJcbiAgICBwYXJ0bmVyT3B0aW9uczogUHJpbWVuZ09wdGlvbltdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHB1YmxpYyBsYXlvdXRTZXJ2aWNlOiBMYXlvdXRCYXNlU2VydmljZSwgXHJcbiAgICAgICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsIFxyXG4gICAgICAgIHB1YmxpYyByb3V0ZXI6IFJvdXRlciwgXHJcbiAgICAgICAgcHJpdmF0ZSBtZW51U2VydmljZTogU2lkZWJhck1lbnVTZXJ2aWNlLCBcclxuICAgICAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoQmFzZVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBhcGlTZXJ2aWNlOiBBcGlTZWN1cml0eVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBjb25maWc6IENvbmZpZ0Jhc2VTZXJ2aWNlXHJcbiAgICApIHtcclxuICAgICAgICB0aGlzLm1lbnVTb3VyY2VTdWJzY3JpcHRpb24gPSB0aGlzLm1lbnVTZXJ2aWNlLm1lbnVTb3VyY2UkLnN1YnNjcmliZSh2YWx1ZSA9PiB7XHJcbiAgICAgICAgICAgIFByb21pc2UucmVzb2x2ZShudWxsKS50aGVuKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICh2YWx1ZS5yb3V0ZUV2ZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hY3RpdmUgPSAodmFsdWUua2V5ID09PSB0aGlzLmtleSB8fCB2YWx1ZS5rZXkuc3RhcnRzV2l0aCh0aGlzLmtleSArICctJykpID8gdHJ1ZSA6IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlLmtleSAhPT0gdGhpcy5rZXkgJiYgIXZhbHVlLmtleS5zdGFydHNXaXRoKHRoaXMua2V5ICsgJy0nKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMubWVudVJlc2V0U3Vic2NyaXB0aW9uID0gdGhpcy5tZW51U2VydmljZS5yZXNldFNvdXJjZSQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoZmlsdGVyKGV2ZW50ID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocGFyYW1zID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLml0ZW0ucm91dGVyTGluaykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlQWN0aXZlU3RhdGVGcm9tUm91dGUoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5rZXkgPSB0aGlzLnBhcmVudEtleSA/IHRoaXMucGFyZW50S2V5ICsgJy0nICsgdGhpcy5pbmRleCA6IFN0cmluZyh0aGlzLmluZGV4KTtcclxuICAgICAgICBcclxuICAgICAgICBpZiAodGhpcy5pdGVtLnJvdXRlckxpbmspIHtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVBY3RpdmVTdGF0ZUZyb21Sb3V0ZSgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5wZXJtaXNzaW9uU3Vic2NyaXB0aW9uID0gdGhpcy5hdXRoU2VydmljZS5jdXJyZW50VXNlclBlcm1pc3Npb25Db2RlcyQuc3Vic2NyaWJlKChjdXJyZW50VXNlclBlcm1pc3Npb25Db2Rlczogc3RyaW5nW10pID0+IHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuaXRlbSAmJiB0eXBlb2YgdGhpcy5pdGVtLmhhc1Blcm1pc3Npb24gPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuaXRlbS52aXNpYmxlID0gdGhpcy5pdGVtLmhhc1Blcm1pc3Npb24oY3VycmVudFVzZXJQZXJtaXNzaW9uQ29kZXMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlQWN0aXZlU3RhdGVGcm9tUm91dGUoKSB7XHJcbiAgICAgICAgbGV0IGFjdGl2ZVJvdXRlID0gdGhpcy5yb3V0ZXIuaXNBY3RpdmUodGhpcy5pdGVtLnJvdXRlckxpbmtbMF0sIHsgcGF0aHM6ICdleGFjdCcsIHF1ZXJ5UGFyYW1zOiAnaWdub3JlZCcsIG1hdHJpeFBhcmFtczogJ2lnbm9yZWQnLCBmcmFnbWVudDogJ2lnbm9yZWQnIH0pO1xyXG5cclxuICAgICAgICBpZiAoYWN0aXZlUm91dGUpIHtcclxuICAgICAgICAgICAgdGhpcy5tZW51U2VydmljZS5vbk1lbnVTdGF0ZUNoYW5nZSh7IGtleTogdGhpcy5rZXksIHJvdXRlRXZlbnQ6IHRydWUgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGl0ZW1DbGljayhldmVudDogRXZlbnQpIHtcclxuICAgICAgICAvLyBhdm9pZCBwcm9jZXNzaW5nIGRpc2FibGVkIGl0ZW1zXHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbS5kaXNhYmxlZCB8fCBldmVudCA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBleGVjdXRlIGNvbW1hbmRcclxuICAgICAgICBpZiAodGhpcy5pdGVtLmNvbW1hbmQpIHtcclxuICAgICAgICAgICAgdGhpcy5pdGVtLmNvbW1hbmQoeyBvcmlnaW5hbEV2ZW50OiBldmVudCwgaXRlbTogdGhpcy5pdGVtIH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gdG9nZ2xlIGFjdGl2ZSBzdGF0ZVxyXG4gICAgICAgIGlmICh0aGlzLml0ZW0uaXRlbXMpIHtcclxuICAgICAgICAgICAgdGhpcy5hY3RpdmUgPSAhdGhpcy5hY3RpdmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIHRoaXMubWVudVNlcnZpY2Uub25NZW51U3RhdGVDaGFuZ2UoeyBrZXk6IHRoaXMua2V5IH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBzdWJtZW51QW5pbWF0aW9uKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJvb3QgPyAnZXhwYW5kZWQnIDogKHRoaXMuYWN0aXZlID8gJ2V4cGFuZGVkJyA6ICdjb2xsYXBzZWQnKTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFjdGl2ZS1tZW51aXRlbScpIFxyXG4gICAgZ2V0IGFjdGl2ZUNsYXNzKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmFjdGl2ZSAmJiAhdGhpcy5yb290O1xyXG4gICAgfVxyXG5cclxuICAgIC8vI3JlZ2lvbiBGVCBIQUNLOiBQYXJ0bmVyXHJcblxyXG4gICAgc2VhcmNoUGFydG5lcnMoZXZlbnQ6IEF1dG9Db21wbGV0ZUNvbXBsZXRlRXZlbnQpIHtcclxuICAgICAgICB0aGlzLmxheW91dFNlcnZpY2Uuc2VhcmNoUGFydG5lcnMoZXZlbnQpLnN1YnNjcmliZShwbyA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMucGFydG5lck9wdGlvbnMgPSBwbzsgICAgXHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuXHJcbiAgICBwYXJ0bmVyc0F1dG9jb21wbGV0ZUJ1dHRvbkNsaWNrID0gYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgIHRoaXMubGF5b3V0U2VydmljZS5wYXJ0bmVyc0F1dG9jb21wbGV0ZUJ1dHRvbkNsaWNrKHRoaXMuc2VsZWN0ZWRQYXJ0bmVyKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyNlbmRyZWdpb25cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICBpZiAodGhpcy5tZW51U291cmNlU3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWVudVNvdXJjZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMubWVudVJlc2V0U3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWVudVJlc2V0U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5wZXJtaXNzaW9uU3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgICAgICAgIHRoaXMucGVybWlzc2lvblN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICp0cmFuc2xvY289XCJsZXQgdFwiPlxyXG4gICAgPGRpdiAqbmdJZj1cInJvb3QgJiYgaXRlbS52aXNpYmxlID09PSB0cnVlXCIgY2xhc3M9XCJsYXlvdXQtbWVudWl0ZW0tcm9vdC10ZXh0XCI+e3tpdGVtLmxhYmVsfX08L2Rpdj5cclxuICAgIDxhICpuZ0lmPVwiKCFpdGVtLnJvdXRlckxpbmsgfHwgaXRlbS5pdGVtcykgJiYgaXRlbS52aXNpYmxlID09PSB0cnVlXCIgW2F0dHIuaHJlZl09XCJpdGVtLnVybFwiIChjbGljayk9XCJpdGVtQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICBbbmdDbGFzc109XCJpdGVtLnN0eWxlQ2xhc3NcIiBbYXR0ci50YXJnZXRdPVwiaXRlbS50YXJnZXRcIiB0YWJpbmRleD1cIjBcIiBwUmlwcGxlPlxyXG4gICAgICAgIDxpIFtuZ0NsYXNzXT1cIml0ZW0uaWNvblwiIGNsYXNzPVwibGF5b3V0LW1lbnVpdGVtLWljb25cIj48L2k+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJsYXlvdXQtbWVudWl0ZW0tdGV4dFwiPnt7aXRlbS5sYWJlbH19PC9zcGFuPlxyXG4gICAgICAgIDxpIGNsYXNzPVwicGkgcGktZncgcGktYW5nbGUtZG93biBsYXlvdXQtc3VibWVudS10b2dnbGVyXCIgKm5nSWY9XCJpdGVtLml0ZW1zXCI+PC9pPlxyXG4gICAgPC9hPlxyXG4gICAgPGEgKm5nSWY9XCIoaXRlbS5yb3V0ZXJMaW5rICYmICFpdGVtLml0ZW1zKSAmJiBpdGVtLnZpc2libGUgPT09IHRydWVcIiAoY2xpY2spPVwiaXRlbUNsaWNrKCRldmVudClcIiBbbmdDbGFzc109XCJpdGVtLnN0eWxlQ2xhc3NcIlxyXG4gICAgW3JvdXRlckxpbmtdPVwiaXRlbS5yb3V0ZXJMaW5rXCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1yb3V0ZVwiIFtyb3V0ZXJMaW5rQWN0aXZlT3B0aW9uc109XCJpdGVtLnJvdXRlckxpbmtBY3RpdmVPcHRpb25zfHx7IHBhdGhzOiAnZXhhY3QnLCBxdWVyeVBhcmFtczogJ2lnbm9yZWQnLCBtYXRyaXhQYXJhbXM6ICdpZ25vcmVkJywgZnJhZ21lbnQ6ICdpZ25vcmVkJyB9XCJcclxuICAgIFtmcmFnbWVudF09XCJpdGVtLmZyYWdtZW50XCIgW3F1ZXJ5UGFyYW1zSGFuZGxpbmddPVwiaXRlbS5xdWVyeVBhcmFtc0hhbmRsaW5nXCIgW3ByZXNlcnZlRnJhZ21lbnRdPVwiaXRlbS5wcmVzZXJ2ZUZyYWdtZW50XCJcclxuICAgIFtza2lwTG9jYXRpb25DaGFuZ2VdPVwiaXRlbS5za2lwTG9jYXRpb25DaGFuZ2VcIiBbcmVwbGFjZVVybF09XCJpdGVtLnJlcGxhY2VVcmxcIiBbc3RhdGVdPVwiaXRlbS5zdGF0ZVwiIFtxdWVyeVBhcmFtc109XCJpdGVtLnF1ZXJ5UGFyYW1zXCJcclxuICAgIFthdHRyLnRhcmdldF09XCJpdGVtLnRhcmdldFwiIHRhYmluZGV4PVwiMFwiIHBSaXBwbGU+XHJcbiAgICAgICAgPGkgW25nQ2xhc3NdPVwiaXRlbS5pY29uXCIgY2xhc3M9XCJsYXlvdXQtbWVudWl0ZW0taWNvblwiPjwvaT5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImxheW91dC1tZW51aXRlbS10ZXh0XCI+e3tpdGVtLmxhYmVsfX08L3NwYW4+XHJcbiAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1mdyBwaS1hbmdsZS1kb3duIGxheW91dC1zdWJtZW51LXRvZ2dsZXJcIiAqbmdJZj1cIml0ZW0uaXRlbXNcIj48L2k+XHJcbiAgICA8L2E+XHJcblxyXG4gICAgPHVsICpuZ0lmPVwiaXRlbS5pdGVtcyAmJiBpdGVtLnZpc2libGUgPT09IHRydWVcIiBbQGNoaWxkcmVuXT1cInN1Ym1lbnVBbmltYXRpb25cIj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgbmdGb3IgbGV0LWNoaWxkIGxldC1pPVwiaW5kZXhcIiBbbmdGb3JPZl09XCJpdGVtLml0ZW1zXCI+XHJcbiAgICAgICAgICAgIDxsaSBtZW51aXRlbSBbaXRlbV09XCJjaGlsZFwiIFtpbmRleF09XCJpXCIgW3BhcmVudEtleV09XCJrZXlcIiBbY2xhc3NdPVwiY2hpbGQuYmFkZ2VTdHlsZUNsYXNzXCI+PC9saT5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPC91bD5cclxuXHJcbiAgICA8IS0tIEZUOiBEZWxldGUgdGhpcyBpbiB0aGUgZnV0dXJlIGl0ZXJhdGlvbnMsIG1ha2UgbGluayB0byBwYXJ0bmVyIGluIC9wYXJ0bmVycyBwYWdlIC0tPlxyXG4gICAgPHNwaWRlcmx5LWF1dG9jb21wbGV0ZVxyXG4gICAgKm5nSWY9XCJpdGVtLnNob3dQYXJ0bmVyRGlhbG9nXCJcclxuICAgIFtjb250cm9sXT1cInNlbGVjdGVkUGFydG5lclwiXHJcbiAgICBbb3B0aW9uc109XCJwYXJ0bmVyT3B0aW9uc1wiXHJcbiAgICAob25UZXh0SW5wdXQpPVwic2VhcmNoUGFydG5lcnMoJGV2ZW50KVwiXHJcbiAgICBsYWJlbD1cIlwiXHJcbiAgICBbcGxhY2Vob2xkZXJdPVwidCgnU2VsZWN0VGhlUGFydG5lcicpXCJcclxuICAgIFtzaG93QWRkb25dPVwidHJ1ZVwiXHJcbiAgICAob25CdXR0b25DbGljayk9XCJwYXJ0bmVyc0F1dG9jb21wbGV0ZUJ1dHRvbkNsaWNrKClcIlxyXG4gICAgYWRkb25JY29uPVwicGkgcGktY2hlY2tcIlxyXG4gICAgW2VtcHR5TWVzc2FnZV09XCJ0KCdMZWZ0Q29ybmVyUGFydG5lcnNFbXB0eU1lc3NhZ2UnKVwiXHJcbiAgICBjbGFzcz1cIm1vYmlsZS1zdGF5LW9wZW5cIlxyXG4gICAgPjwvc3BpZGVybHktYXV0b2NvbXBsZXRlPlxyXG4gICAgIFxyXG48L25nLWNvbnRhaW5lcj4iXX0=
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Input } from '@angular/core';
|
|
2
|
+
import { Component } from '@angular/core';
|
|
3
|
+
import { MenuitemComponent } from './menuitem.component';
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../../../services/app-layout-base.service";
|
|
7
|
+
import * as i2 from "../../../services/auth-base.service";
|
|
8
|
+
import * as i3 from "@jsverse/transloco";
|
|
9
|
+
import * as i4 from "../../../services/config-base.service";
|
|
10
|
+
import * as i5 from "@angular/common";
|
|
11
|
+
export class SidebarMenuComponent {
|
|
12
|
+
constructor(layoutService, authService, translocoService, config) {
|
|
13
|
+
this.layoutService = layoutService;
|
|
14
|
+
this.authService = authService;
|
|
15
|
+
this.translocoService = translocoService;
|
|
16
|
+
this.config = config;
|
|
17
|
+
}
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
}
|
|
20
|
+
ngOnDestroy() {
|
|
21
|
+
}
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SidebarMenuComponent, deps: [{ token: i1.LayoutBaseService }, { token: i2.AuthBaseService }, { token: i3.TranslocoService }, { token: i4.ConfigBaseService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SidebarMenuComponent, isStandalone: true, selector: "sidebar-menu", inputs: { menu: "menu" }, ngImport: i0, template: "<ul class=\"layout-menu\">\r\n <ng-container *ngFor=\"let item of menu; let i = index;\">\r\n <li menuitem *ngIf=\"!item.separator\" [item]=\"item\" [index]=\"i\" [root]=\"true\"></li>\r\n <li *ngIf=\"item.separator\" class=\"gray-separator\" style=\"margin-top: 11px;\"></li>\r\n </ng-container>\r\n</ul>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MenuitemComponent, selector: "[menuitem]", inputs: ["item", "index", "root", "parentKey"] }] }); }
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SidebarMenuComponent, decorators: [{
|
|
26
|
+
type: Component,
|
|
27
|
+
args: [{ selector: 'sidebar-menu', standalone: true, imports: [
|
|
28
|
+
CommonModule,
|
|
29
|
+
MenuitemComponent
|
|
30
|
+
], template: "<ul class=\"layout-menu\">\r\n <ng-container *ngFor=\"let item of menu; let i = index;\">\r\n <li menuitem *ngIf=\"!item.separator\" [item]=\"item\" [index]=\"i\" [root]=\"true\"></li>\r\n <li *ngIf=\"item.separator\" class=\"gray-separator\" style=\"margin-top: 11px;\"></li>\r\n </ng-container>\r\n</ul>\r\n" }]
|
|
31
|
+
}], ctorParameters: () => [{ type: i1.LayoutBaseService }, { type: i2.AuthBaseService }, { type: i3.TranslocoService }, { type: i4.ConfigBaseService }], propDecorators: { menu: [{
|
|
32
|
+
type: Input
|
|
33
|
+
}] } });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwaWRlcmx5L3NyYy9saWIvY29tcG9uZW50cy9sYXlvdXQvc2lkZWJhci9zaWRlYmFyLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BpZGVybHkvc3JjL2xpYi9jb21wb25lbnRzL2xheW91dC9zaWRlYmFyL3NpZGViYXItbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7O0FBZ0IvQyxNQUFNLE9BQU8sb0JBQW9CO0lBRzdCLFlBQ1csYUFBZ0MsRUFDL0IsV0FBNEIsRUFDNUIsZ0JBQWtDLEVBQ2xDLE1BQXlCO1FBSDFCLGtCQUFhLEdBQWIsYUFBYSxDQUFtQjtRQUMvQixnQkFBVyxHQUFYLFdBQVcsQ0FBaUI7UUFDNUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxXQUFNLEdBQU4sTUFBTSxDQUFtQjtJQUdyQyxDQUFDO0lBRUQsUUFBUTtJQUNSLENBQUM7SUFHRCxXQUFXO0lBRVgsQ0FBQzsrR0FsQlEsb0JBQW9CO21HQUFwQixvQkFBb0Isa0dDeEJqQywyVUFNQSwyQ0RjUSxZQUFZLGdRQUNaLGlCQUFpQjs7NEZBR1osb0JBQW9CO2tCQVRoQyxTQUFTOytCQUNJLGNBQWMsY0FFWixJQUFJLFdBQ1A7d0JBQ0wsWUFBWTt3QkFDWixpQkFBaUI7cUJBQ3BCO21MQUdRLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zbG9jb1NlcnZpY2UgfSBmcm9tICdAanN2ZXJzZS90cmFuc2xvY28nO1xyXG5pbXBvcnQgeyBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgTGF5b3V0QmFzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hcHAtbGF5b3V0LWJhc2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dGhCYXNlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2F1dGgtYmFzZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29uZmlnQmFzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9jb25maWctYmFzZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTWVudWl0ZW1Db21wb25lbnQgfSBmcm9tICcuL21lbnVpdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNwaWRlcmx5TWVudUl0ZW0gZXh0ZW5kcyBNZW51SXRlbXtcclxuICAgIGhhc1Blcm1pc3Npb24/OiAocGVybWlzc2lvbkNvZGVzOiBzdHJpbmdbXSkgPT4gYm9vbGVhbjtcclxuICAgIHNob3dQYXJ0bmVyRGlhbG9nPzogYm9vbGVhbjsgXHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdzaWRlYmFyLW1lbnUnLCAvLyBGVDogRG9uJ3QgY2hhbmUgc2VsZWN0b3IgdG8gJ21lbnUnLCBiZWNhdXNlIG90aGVyIHN0eWxlIHdpbGwgYXBwbHkgdG8gaXRcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9zaWRlYmFyLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGUsXHJcbiAgICAgICAgTWVudWl0ZW1Db21wb25lbnRcclxuICAgIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNpZGViYXJNZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBJbnB1dCgpIG1lbnU6IFNwaWRlcmx5TWVudUl0ZW1bXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwdWJsaWMgbGF5b3V0U2VydmljZTogTGF5b3V0QmFzZVNlcnZpY2UsIFxyXG4gICAgICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhCYXNlU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHRyYW5zbG9jb1NlcnZpY2U6IFRyYW5zbG9jb1NlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBjb25maWc6IENvbmZpZ0Jhc2VTZXJ2aWNlXHJcbiAgICApIHtcclxuICAgICAgICBcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgIH1cclxuXHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcblxyXG4gICAgfVxyXG5cclxufVxyXG4iLCI8dWwgY2xhc3M9XCJsYXlvdXQtbWVudVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBtZW51OyBsZXQgaSA9IGluZGV4O1wiPlxyXG4gICAgICAgIDxsaSBtZW51aXRlbSAqbmdJZj1cIiFpdGVtLnNlcGFyYXRvclwiIFtpdGVtXT1cIml0ZW1cIiBbaW5kZXhdPVwiaVwiIFtyb290XT1cInRydWVcIj48L2xpPlxyXG4gICAgICAgIDxsaSAqbmdJZj1cIml0ZW0uc2VwYXJhdG9yXCIgY2xhc3M9XCJncmF5LXNlcGFyYXRvclwiIHN0eWxlPVwibWFyZ2luLXRvcDogMTFweDtcIj48L2xpPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbjwvdWw+XHJcbiJdfQ==
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class SidebarMenuService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.menuSource = new Subject();
|
|
7
|
+
this.resetSource = new Subject();
|
|
8
|
+
this.menuSource$ = this.menuSource.asObservable();
|
|
9
|
+
this.resetSource$ = this.resetSource.asObservable();
|
|
10
|
+
}
|
|
11
|
+
onMenuStateChange(event) {
|
|
12
|
+
this.menuSource.next(event);
|
|
13
|
+
}
|
|
14
|
+
reset() {
|
|
15
|
+
this.resetSource.next(true);
|
|
16
|
+
}
|
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SidebarMenuService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
18
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SidebarMenuService, providedIn: 'root' }); }
|
|
19
|
+
}
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SidebarMenuService, decorators: [{
|
|
21
|
+
type: Injectable,
|
|
22
|
+
args: [{
|
|
23
|
+
providedIn: 'root'
|
|
24
|
+
}]
|
|
25
|
+
}] });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci1tZW51LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGlkZXJseS9zcmMvbGliL2NvbXBvbmVudHMvbGF5b3V0L3NpZGViYXIvc2lkZWJhci1tZW51LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQU0vQixNQUFNLE9BQU8sa0JBQWtCO0lBSC9CO1FBSVksZUFBVSxHQUFHLElBQUksT0FBTyxFQUFtQixDQUFDO1FBQzVDLGdCQUFXLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUVwQyxnQkFBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDN0MsaUJBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO0tBU2xEO0lBUEcsaUJBQWlCLENBQUMsS0FBc0I7UUFDcEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDOytHQWJRLGtCQUFrQjttSEFBbEIsa0JBQWtCLGNBRmYsTUFBTTs7NEZBRVQsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBNZW51Q2hhbmdlRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9lbnRpdGllcy9tZW51Y2hhbmdlZXZlbnQnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaWRlYmFyTWVudVNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSBtZW51U291cmNlID0gbmV3IFN1YmplY3Q8TWVudUNoYW5nZUV2ZW50PigpO1xyXG4gICAgcHJpdmF0ZSByZXNldFNvdXJjZSA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gICAgbWVudVNvdXJjZSQgPSB0aGlzLm1lbnVTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICByZXNldFNvdXJjZSQgPSB0aGlzLnJlc2V0U291cmNlLmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuICAgIG9uTWVudVN0YXRlQ2hhbmdlKGV2ZW50OiBNZW51Q2hhbmdlRXZlbnQpIHtcclxuICAgICAgICB0aGlzLm1lbnVTb3VyY2UubmV4dChldmVudCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVzZXQoKSB7XHJcbiAgICAgICAgdGhpcy5yZXNldFNvdXJjZS5uZXh0KHRydWUpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { SidebarMenuComponent } from './sidebar-menu.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class AppSidebarComponent {
|
|
5
|
+
constructor(el) {
|
|
6
|
+
this.el = el;
|
|
7
|
+
}
|
|
8
|
+
ngOnInit() {
|
|
9
|
+
}
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AppSidebarComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: AppSidebarComponent, isStandalone: true, selector: "sidebar", inputs: { menu: "menu" }, ngImport: i0, template: " <sidebar-menu [menu]=\"menu\"></sidebar-menu>\r\n", dependencies: [{ kind: "component", type: SidebarMenuComponent, selector: "sidebar-menu", inputs: ["menu"] }] }); }
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AppSidebarComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{ selector: 'sidebar', standalone: true, imports: [
|
|
16
|
+
SidebarMenuComponent
|
|
17
|
+
], template: " <sidebar-menu [menu]=\"menu\"></sidebar-menu>\r\n" }]
|
|
18
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { menu: [{
|
|
19
|
+
type: Input
|
|
20
|
+
}] } });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGlkZXJseS9zcmMvbGliL2NvbXBvbmVudHMvbGF5b3V0L3NpZGViYXIvc2lkZWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGlkZXJseS9zcmMvbGliL2NvbXBvbmVudHMvbGF5b3V0L3NpZGViYXIvc2lkZWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsb0JBQW9CLEVBQW9CLE1BQU0sMEJBQTBCLENBQUM7O0FBVWxGLE1BQU0sT0FBTyxtQkFBbUI7SUFHNUIsWUFBbUIsRUFBYztRQUFkLE9BQUUsR0FBRixFQUFFLENBQVk7SUFDakMsQ0FBQztJQUVELFFBQVE7SUFDUixDQUFDOytHQVBRLG1CQUFtQjttR0FBbkIsbUJBQW1CLDZGQ1hoQyxvREFDQSw0Q0RPUSxvQkFBb0I7OzRGQUdmLG1CQUFtQjtrQkFSL0IsU0FBUzsrQkFDSSxTQUFTLGNBRVAsSUFBSSxXQUNQO3dCQUNMLG9CQUFvQjtxQkFDdkI7K0VBR1EsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTaWRlYmFyTWVudUNvbXBvbmVudCwgU3BpZGVybHlNZW51SXRlbSB9IGZyb20gJy4vc2lkZWJhci1tZW51LmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnc2lkZWJhcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2lkZWJhci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIFNpZGViYXJNZW51Q29tcG9uZW50XHJcbiAgICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcHBTaWRlYmFyQ29tcG9uZW50IHtcclxuICAgIEBJbnB1dCgpIG1lbnU6IFNwaWRlcmx5TWVudUl0ZW1bXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZWw6IEVsZW1lbnRSZWYpIHsgXHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKXtcclxuICAgIH1cclxufVxyXG5cclxuIiwiIDxzaWRlYmFyLW1lbnUgW21lbnVdPVwibWVudVwiPjwvc2lkZWJhci1tZW51PlxyXG4iXX0=
|