@unipin/angular-applet 18.9.2 → 18.9.4
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/.editorconfig +16 -0
- package/.eslintrc.json +72 -0
- package/.github/ISSUE_TEMPLATE/bug_fix.yml +60 -0
- package/.github/ISSUE_TEMPLATE/dependency_update.yml +20 -0
- package/.github/ISSUE_TEMPLATE/documentation.yml +13 -0
- package/.github/ISSUE_TEMPLATE/engineering.yml +22 -0
- package/.github/ISSUE_TEMPLATE/feature_request.yml +38 -0
- package/.github/ISSUE_TEMPLATE/testing.yml +38 -0
- package/.github/dependabot.yml +11 -0
- package/.github/pull_request_template.md +77 -0
- package/.github/workflows/npm_publish.yml +52 -0
- package/.storybook/main.ts +28 -0
- package/.storybook/preview.ts +19 -0
- package/.storybook/test-runner.ts +29 -0
- package/.storybook/tsconfig.json +14 -0
- package/.storybook/typings.d.ts +4 -0
- package/.vscode/extensions.json +7 -0
- package/.vscode/launch.json +20 -0
- package/.vscode/settings.json +16 -0
- package/.vscode/tasks.json +42 -0
- package/README.md +11 -8
- package/angular.json +102 -0
- package/codegen.yml +8 -0
- package/package.json +86 -38
- package/projects/unipin-angular/README.md +24 -0
- package/projects/unipin-angular/documentation.json +116258 -0
- package/projects/unipin-angular/ng-package.json +19 -0
- package/projects/unipin-angular/package-lock.json +23 -0
- package/projects/unipin-angular/package.json +32 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_accordion.scss +149 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_alert.scss +71 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_badge.scss +38 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_breadcrumb.scss +40 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_button-group.scss +142 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_buttons.scss +209 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_card.scss +234 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_carousel.scss +226 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_close.scss +40 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_containers.scss +41 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_dropdown.scss +249 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_forms.scss +9 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_functions.scss +302 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_grid.scss +33 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_helpers.scss +10 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_images.scss +42 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_list-group.scss +192 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_maps.scss +54 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_mixins.scss +43 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_modal.scss +237 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_nav.scss +172 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_navbar.scss +278 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_offcanvas.scss +144 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_pagination.scss +109 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_placeholders.scss +51 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_popover.scss +196 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_progress.scss +59 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_reboot.scss +610 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_root.scss +73 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_spinners.scss +85 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_tables.scss +164 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_toasts.scss +73 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_tooltip.scss +120 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_transitions.scss +27 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_type.scss +106 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_utilities.scss +647 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/_variables.scss +1634 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/bootstrap-grid.scss +64 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/bootstrap-reboot.scss +9 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/bootstrap-utilities.scss +18 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/bootstrap.scss +24 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_floating-labels.scss +75 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_form-check.scss +175 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_form-control.scss +195 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_form-range.scss +91 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_form-select.scss +71 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_form-text.scss +11 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_input-group.scss +132 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_labels.scss +36 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_validation.scss +12 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_clearfix.scss +3 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_color-bg.scss +10 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_colored-links.scss +12 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_position.scss +36 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_ratio.scss +26 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_stacks.scss +15 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_stretched-link.scss +15 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_text-truncation.scss +7 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_visually-hidden.scss +8 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_vr.scss +8 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_alert.scss +15 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_backdrop.scss +14 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_banner.scss +9 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_border-radius.scss +78 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_box-shadow.scss +18 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_breakpoints.scss +127 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_buttons.scss +70 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_caret.scss +64 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_clearfix.scss +9 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_color-scheme.scss +7 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_container.scss +11 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_deprecate.scss +10 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_forms.scss +152 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_gradients.scss +47 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_grid.scss +151 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_image.scss +16 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_list-group.scss +24 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_lists.scss +7 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_pagination.scss +10 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_reset-text.scss +17 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_resize.scss +6 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_table-variants.scss +24 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_text-truncate.scss +8 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_transition.scss +26 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_utilities.scss +97 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_visually-hidden.scss +29 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/utilities/_api.scss +47 -0
- package/projects/unipin-angular/src/assets/private/scss/bootstrap/vendor/_rfs.scss +354 -0
- package/projects/unipin-angular/src/assets/private/scss/theme/variables.scss +59 -0
- package/projects/unipin-angular/src/graphql/generated.d.ts +715 -0
- package/projects/unipin-angular/src/graphql/generated.mjs +49 -0
- package/projects/unipin-angular/src/graphql/generated.ts +19998 -0
- package/projects/unipin-angular/src/lib/components/approval/detail/approval-detail.component.html +14 -0
- package/projects/unipin-angular/src/lib/components/approval/detail/approval-detail.component.scss +0 -0
- package/projects/unipin-angular/src/lib/components/approval/detail/approval-detail.component.ts +90 -0
- package/projects/unipin-angular/src/lib/components/approval/detail/approval-detail.stories.ts +61 -0
- package/projects/unipin-angular/src/lib/components/approval/form/approval-form.component.html +41 -0
- package/projects/unipin-angular/src/lib/components/approval/form/approval-form.component.scss +0 -0
- package/projects/unipin-angular/src/lib/components/approval/form/approval-form.component.ts +152 -0
- package/projects/unipin-angular/src/lib/components/approval/form/approval-form.stories.ts +111 -0
- package/{lib/components/approval/index.d.ts → projects/unipin-angular/src/lib/components/approval/index.ts} +1 -0
- package/projects/unipin-angular/src/lib/components/approval/list/approval-list.component.html +15 -0
- package/projects/unipin-angular/src/lib/components/approval/list/approval-list.component.scss +0 -0
- package/projects/unipin-angular/src/lib/components/approval/list/approval-list.component.ts +136 -0
- package/projects/unipin-angular/src/lib/components/approval/list/approval-list.stories.ts +141 -0
- package/projects/unipin-angular/src/lib/components/approval/list/provide-approval-entities.util.ts +10 -0
- package/projects/unipin-angular/src/lib/components/approval/services/approval.service.ts +46 -0
- package/projects/unipin-angular/src/lib/components/audit/detail/audit-detail.component.html +50 -0
- package/projects/unipin-angular/src/lib/components/audit/detail/audit-detail.component.scss +4 -0
- package/projects/unipin-angular/src/lib/components/audit/detail/audit-detail.component.spec.ts +51 -0
- package/projects/unipin-angular/src/lib/components/audit/detail/audit-detail.component.ts +141 -0
- package/projects/unipin-angular/src/lib/components/audit/detail/audit-detail.stories.ts +126 -0
- package/projects/unipin-angular/src/lib/components/audit/list/audit-list.component.html +5 -0
- package/projects/unipin-angular/src/lib/components/audit/list/audit-list.component.scss +0 -0
- package/projects/unipin-angular/src/lib/components/audit/list/audit-list.component.ts +85 -0
- package/projects/unipin-angular/src/lib/components/audit/list/audit-list.stories.ts +170 -0
- package/projects/unipin-angular/src/lib/components/audit/service/audit.service.ts +48 -0
- package/projects/unipin-angular/src/lib/components/audit/types/audit-detail-form.type.ts +13 -0
- package/projects/unipin-angular/src/lib/components/buttons/group/btn-group.component.html +42 -0
- package/projects/unipin-angular/src/lib/components/buttons/group/btn-group.component.scss +19 -0
- package/projects/unipin-angular/src/lib/components/buttons/group/btn-group.component.ts +72 -0
- package/projects/unipin-angular/src/lib/components/buttons/group/btn-group.stories.ts +132 -0
- package/projects/unipin-angular/src/lib/components/buttons/group/interfaces/btn-group-config.interface.ts +63 -0
- package/projects/unipin-angular/src/lib/components/buttons/loading/btn-loading.component.html +9 -0
- package/projects/unipin-angular/src/lib/components/buttons/loading/btn-loading.component.scss +8 -0
- package/projects/unipin-angular/src/lib/components/buttons/loading/btn-loading.component.ts +87 -0
- package/projects/unipin-angular/src/lib/components/buttons/loading/btn-loading.stories.ts +188 -0
- package/projects/unipin-angular/src/lib/components/containers/applet-container/applet-container.component.html +39 -0
- package/projects/unipin-angular/src/lib/components/containers/applet-container/applet-container.component.scss +68 -0
- package/projects/unipin-angular/src/lib/components/containers/applet-container/applet-container.component.ts +98 -0
- package/projects/unipin-angular/src/lib/components/containers/applet-container/provide-applet-config.util.ts +23 -0
- package/projects/unipin-angular/src/lib/components/containers/colum-header-container/column-header-container.component.html +17 -0
- package/projects/unipin-angular/src/lib/components/containers/colum-header-container/column-header-container.component.scss +4 -0
- package/projects/unipin-angular/src/lib/components/containers/colum-header-container/column-header-container.component.ts +32 -0
- package/projects/unipin-angular/src/lib/components/containers/colum-header-container/column-header.stories.ts +77 -0
- package/projects/unipin-angular/src/lib/components/containers/column-container/column-container.component.html +17 -0
- package/projects/unipin-angular/src/lib/components/containers/column-container/column-container.component.scss +0 -0
- package/projects/unipin-angular/src/lib/components/containers/column-container/column-container.component.ts +139 -0
- package/projects/unipin-angular/src/lib/components/containers/column-container/directives/lazy-route.directive.ts +86 -0
- package/{lib/components/containers/index.d.ts → projects/unipin-angular/src/lib/components/containers/index.ts} +1 -0
- package/{lib/components/containers/list-container/interfaces/list-container-config.interface.d.ts → projects/unipin-angular/src/lib/components/containers/list-container/interfaces/list-container-config.interface.ts} +5 -4
- package/projects/unipin-angular/src/lib/components/containers/list-container/list-pagination-container/list-pagination-container.component.html +19 -0
- package/projects/unipin-angular/src/lib/components/containers/list-container/list-pagination-container/list-pagination-container.component.scss +7 -0
- package/projects/unipin-angular/src/lib/components/containers/list-container/list-pagination-container/list-pagination-container.component.ts +113 -0
- package/projects/unipin-angular/src/lib/components/containers/list-container/list-pagination-container/list-pagination-container.stories.ts +207 -0
- package/projects/unipin-angular/src/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.component.html +19 -0
- package/projects/unipin-angular/src/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.component.scss +7 -0
- package/projects/unipin-angular/src/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.component.ts +114 -0
- package/projects/unipin-angular/src/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.stories.ts +212 -0
- package/projects/unipin-angular/src/lib/components/containers/modal-container/modal-container.component.html +15 -0
- package/projects/unipin-angular/src/lib/components/containers/modal-container/modal-container.component.scss +2 -0
- package/projects/unipin-angular/src/lib/components/containers/modal-container/modal-container.component.ts +88 -0
- package/projects/unipin-angular/src/lib/components/containers/modal-container/modal-container.stories.ts +66 -0
- package/projects/unipin-angular/src/lib/components/filter/filter.component.html +112 -0
- package/projects/unipin-angular/src/lib/components/filter/filter.component.scss +28 -0
- package/projects/unipin-angular/src/lib/components/filter/filter.component.ts +329 -0
- package/projects/unipin-angular/src/lib/components/filter/filter.stories.ts +176 -0
- package/{lib/components/filter/index.d.ts → projects/unipin-angular/src/lib/components/filter/index.ts} +1 -1
- package/projects/unipin-angular/src/lib/components/filter/interfaces/filter-config.interface.ts +17 -0
- package/projects/unipin-angular/src/lib/components/filter/interfaces/filter-field.interface.ts +73 -0
- package/projects/unipin-angular/src/lib/components/filter/interfaces/filter-search-event.interface.ts +15 -0
- package/projects/unipin-angular/src/lib/components/forms/country-input/form-country-input.component.html +19 -0
- package/projects/unipin-angular/src/lib/components/forms/country-input/form-country-input.component.scss +0 -0
- package/projects/unipin-angular/src/lib/components/forms/country-input/form-country-input.component.ts +210 -0
- package/projects/unipin-angular/src/lib/components/forms/country-input/form-country-input.stories.ts +175 -0
- package/projects/unipin-angular/src/lib/components/forms/currency-input/form-currency-input.component.html +42 -0
- package/projects/unipin-angular/src/lib/components/forms/currency-input/form-currency-input.component.scss +4 -0
- package/projects/unipin-angular/src/lib/components/forms/currency-input/form-currency-input.component.ts +285 -0
- package/projects/unipin-angular/src/lib/components/forms/currency-input/form-currency-input.spec.ts +119 -0
- package/projects/unipin-angular/src/lib/components/forms/currency-input/form-currency-input.stories.ts +243 -0
- package/projects/unipin-angular/src/lib/components/forms/date/form-date.component.html +27 -0
- package/projects/unipin-angular/src/lib/components/forms/date/form-date.component.scss +7 -0
- package/projects/unipin-angular/src/lib/components/forms/date/form-date.component.ts +225 -0
- package/projects/unipin-angular/src/lib/components/forms/date/form-date.stories.ts +201 -0
- package/projects/unipin-angular/src/lib/components/forms/image-picker/directives/drag-n-drop.directive.ts +40 -0
- package/projects/unipin-angular/src/lib/components/forms/image-picker/form-image-picker.component.html +29 -0
- package/projects/unipin-angular/src/lib/components/forms/image-picker/form-image-picker.component.scss +40 -0
- package/projects/unipin-angular/src/lib/components/forms/image-picker/form-image-picker.component.ts +109 -0
- package/projects/unipin-angular/src/lib/components/forms/image-picker/form-image-picker.stories.ts +133 -0
- package/projects/unipin-angular/src/lib/components/forms/input/form-input.component.html +22 -0
- package/projects/unipin-angular/src/lib/components/forms/input/form-input.component.scss +0 -0
- package/projects/unipin-angular/src/lib/components/forms/input/form-input.component.ts +177 -0
- package/projects/unipin-angular/src/lib/components/forms/input/form-input.stories.ts +185 -0
- package/projects/unipin-angular/src/lib/components/forms/number/form-number.component.html +6 -0
- package/projects/unipin-angular/src/lib/components/forms/number/form-number.component.scss +0 -0
- package/projects/unipin-angular/src/lib/components/forms/number/form-number.component.ts +176 -0
- package/projects/unipin-angular/src/lib/components/forms/number/form-number.spec.ts +62 -0
- package/projects/unipin-angular/src/lib/components/forms/number/form-number.stories.ts +150 -0
- package/projects/unipin-angular/src/lib/components/forms/number/pipes/locale-number.pipe.ts +32 -0
- package/projects/unipin-angular/src/lib/components/forms/password/form-password.component.html +11 -0
- package/projects/unipin-angular/src/lib/components/forms/password/form-password.component.scss +5 -0
- package/projects/unipin-angular/src/lib/components/forms/password/form-password.component.ts +177 -0
- package/projects/unipin-angular/src/lib/components/forms/password/form-password.stories.ts +151 -0
- package/projects/unipin-angular/src/lib/components/forms/rate-group-code-input/form-rate-group-code-input.component.html +30 -0
- package/projects/unipin-angular/src/lib/components/forms/rate-group-code-input/form-rate-group-code-input.component.scss +0 -0
- package/projects/unipin-angular/src/lib/components/forms/rate-group-code-input/form-rate-group-code-input.component.ts +271 -0
- package/projects/unipin-angular/src/lib/components/forms/rate-group-code-input/form-rate-group-code-input.stories.ts +248 -0
- package/projects/unipin-angular/src/lib/components/forms/searchable-select/form-searchable-select.component.html +28 -0
- package/projects/unipin-angular/src/lib/components/forms/searchable-select/form-searchable-select.component.scss +0 -0
- package/projects/unipin-angular/src/lib/components/forms/searchable-select/form-searchable-select.component.ts +281 -0
- package/projects/unipin-angular/src/lib/components/forms/searchable-select/form-searchable-select.stories.ts +267 -0
- package/projects/unipin-angular/src/lib/components/forms/select/form-select.component.html +24 -0
- package/projects/unipin-angular/src/lib/components/forms/select/form-select.component.scss +1 -0
- package/projects/unipin-angular/src/lib/components/forms/select/form-select.component.ts +216 -0
- package/projects/unipin-angular/src/lib/components/forms/select/form-select.stories.ts +220 -0
- package/projects/unipin-angular/src/lib/components/forms/textarea/form-textarea.component.html +9 -0
- package/projects/unipin-angular/src/lib/components/forms/textarea/form-textarea.component.scss +0 -0
- package/projects/unipin-angular/src/lib/components/forms/textarea/form-textarea.component.ts +146 -0
- package/projects/unipin-angular/src/lib/components/forms/textarea/form-textarea.stories.ts +163 -0
- package/projects/unipin-angular/src/lib/components/grids/grid-pagination/grid-pagination.component.html +17 -0
- package/projects/unipin-angular/src/lib/components/grids/grid-pagination/grid-pagination.component.scss +8 -0
- package/projects/unipin-angular/src/lib/components/grids/grid-pagination/grid-pagination.component.ts +224 -0
- package/projects/unipin-angular/src/lib/components/grids/grid-pagination/grid-pagination.stories.ts +219 -0
- package/projects/unipin-angular/src/lib/components/grids/grid-snapshot/grid-snapshot.component.html +17 -0
- package/projects/unipin-angular/src/lib/components/grids/grid-snapshot/grid-snapshot.component.scss +8 -0
- package/projects/unipin-angular/src/lib/components/grids/grid-snapshot/grid-snapshot.component.ts +229 -0
- package/projects/unipin-angular/src/lib/components/grids/grid-snapshot/grid-snapshot.stories.ts +173 -0
- package/projects/unipin-angular/src/lib/components/grids/interfaces/grid-config.interface.ts +44 -0
- package/projects/unipin-angular/src/lib/components/grids/services/grid.service.ts +23 -0
- package/{lib/components/index.d.ts → projects/unipin-angular/src/lib/components/index.ts} +14 -2
- package/projects/unipin-angular/src/lib/components/infinite-scroll/directive/infinite-scroll.directive.ts +72 -0
- package/projects/unipin-angular/src/lib/components/infinite-scroll/infinite-scroll.component.html +13 -0
- package/projects/unipin-angular/src/lib/components/infinite-scroll/infinite-scroll.component.scss +10 -0
- package/projects/unipin-angular/src/lib/components/infinite-scroll/infinite-scroll.component.ts +61 -0
- package/projects/unipin-angular/src/lib/components/infinite-scroll/infinite-scroll.stories.ts +80 -0
- package/{lib/components/tabs/index.d.ts → projects/unipin-angular/src/lib/components/tabs/index.ts} +3 -2
- package/projects/unipin-angular/src/lib/components/tabs/tab-content/tab-content.component.html +3 -0
- package/projects/unipin-angular/src/lib/components/tabs/tab-content/tab-content.component.scss +6 -0
- package/projects/unipin-angular/src/lib/components/tabs/tab-content/tab-content.component.ts +56 -0
- package/projects/unipin-angular/src/lib/components/tabs/tab-group/tab-group.component.html +24 -0
- package/projects/unipin-angular/src/lib/components/tabs/tab-group/tab-group.component.scss +39 -0
- package/projects/unipin-angular/src/lib/components/tabs/tab-group/tab-group.component.ts +92 -0
- package/projects/unipin-angular/src/lib/components/tabs/tab.stories.ts +117 -0
- package/projects/unipin-angular/src/lib/guards/auth/auth.guard.ts +11 -0
- package/projects/unipin-angular/src/lib/interceptors/header/header.interceptor.ts +36 -0
- package/projects/unipin-angular/src/lib/interceptors/refresh-token/refresh-token.interceptor.ts +123 -0
- package/projects/unipin-angular/src/lib/interfaces/user/user.interface.ts +27 -0
- package/projects/unipin-angular/src/lib/modules/index.ts +11 -0
- package/projects/unipin-angular/src/lib/modules/micro-frontend/utils/mf-bootstrap.util.ts +74 -0
- package/projects/unipin-angular/src/lib/modules/micro-frontend/utils/mf-global-state.util.ts +20 -0
- package/projects/unipin-angular/src/lib/modules/permission/directive/permission.directive.spec.ts +50 -0
- package/projects/unipin-angular/src/lib/modules/permission/directive/permission.directive.ts +68 -0
- package/projects/unipin-angular/src/lib/modules/permission/guards/permission.guard.spec.ts +76 -0
- package/projects/unipin-angular/src/lib/modules/permission/guards/permission.guard.ts +30 -0
- package/{lib/modules/permission/index.d.ts → projects/unipin-angular/src/lib/modules/permission/index.ts} +1 -0
- package/projects/unipin-angular/src/lib/modules/permission/pages/401/unauthorized.page.html +3 -0
- package/projects/unipin-angular/src/lib/modules/permission/pages/401/unauthorized.page.scss +3 -0
- package/projects/unipin-angular/src/lib/modules/permission/pages/401/unauthorized.page.ts +14 -0
- package/projects/unipin-angular/src/lib/modules/permission/pages/loading/loading.page.html +2 -0
- package/projects/unipin-angular/src/lib/modules/permission/pages/loading/loading.page.scss +4 -0
- package/projects/unipin-angular/src/lib/modules/permission/pages/loading/loading.page.ts +76 -0
- package/projects/unipin-angular/src/lib/modules/permission/pages/loading/provide-loading-config.util.ts +18 -0
- package/projects/unipin-angular/src/lib/modules/permission/services/permission.service.spec.ts +62 -0
- package/projects/unipin-angular/src/lib/modules/permission/services/permission.service.ts +78 -0
- package/projects/unipin-angular/src/lib/resolvers/auth/auth.resolver.spec.ts +46 -0
- package/projects/unipin-angular/src/lib/resolvers/auth/auth.resolver.ts +144 -0
- package/projects/unipin-angular/src/lib/services/auth/auth.service.ts +243 -0
- package/projects/unipin-angular/src/lib/services/country/country.service.ts +47 -0
- package/projects/unipin-angular/src/lib/services/currency/currency.service.ts +44 -0
- package/projects/unipin-angular/src/lib/services/profile/profile.service.ts +86 -0
- package/projects/unipin-angular/src/lib/services/rate-group-code/rate-group-code.service.ts +29 -0
- package/projects/unipin-angular/src/lib/utils/contrast-color-generator/contrast-color-generator.util.spec.ts +19 -0
- package/projects/unipin-angular/src/lib/utils/contrast-color-generator/contrast-color-generator.util.ts +28 -0
- package/projects/unipin-angular/src/lib/utils/form-error-message/form-error-message.util.spec.ts +58 -0
- package/projects/unipin-angular/src/lib/utils/form-error-message/form-error-message.util.ts +30 -0
- package/projects/unipin-angular/src/lib/utils/format-capitalize/format-capitalize.util.spec.ts +30 -0
- package/projects/unipin-angular/src/lib/utils/format-capitalize/format-capitalize.util.ts +22 -0
- package/projects/unipin-angular/src/lib/utils/redirect-to-first-menu/redirect-to-first-menu.util.ts +15 -0
- package/projects/unipin-angular/src/public-api.ts +126 -0
- package/projects/unipin-angular/tsconfig.lib.json +14 -0
- package/projects/unipin-angular/tsconfig.lib.prod.json +10 -0
- package/projects/unipin-angular/tsconfig.spec.json +14 -0
- package/snapshot-serializer.js +12 -0
- package/test-runner-jest.config.js +13 -0
- package/tsconfig.json +51 -0
- package/esm2022/graphql/generated.mjs +0 -888
- package/esm2022/lib/components/approval/detail/approval-detail.component.mjs +0 -78
- package/esm2022/lib/components/approval/form/approval-form.component.mjs +0 -128
- package/esm2022/lib/components/approval/index.mjs +0 -5
- package/esm2022/lib/components/approval/list/approval-list.component.mjs +0 -114
- package/esm2022/lib/components/approval/list/provide-approval-entities.util.mjs +0 -9
- package/esm2022/lib/components/approval/services/approval.service.mjs +0 -46
- package/esm2022/lib/components/audit/detail/audit-detail.component.mjs +0 -123
- package/esm2022/lib/components/audit/index.mjs +0 -3
- package/esm2022/lib/components/audit/list/audit-list.component.mjs +0 -81
- package/esm2022/lib/components/audit/service/audit.service.mjs +0 -49
- package/esm2022/lib/components/audit/types/audit-detail-form.type.mjs +0 -2
- package/esm2022/lib/components/buttons/group/btn-group.component.mjs +0 -43
- package/esm2022/lib/components/buttons/group/interfaces/btn-group-config.interface.mjs +0 -2
- package/esm2022/lib/components/buttons/index.mjs +0 -3
- package/esm2022/lib/components/buttons/loading/btn-loading.component.mjs +0 -48
- package/esm2022/lib/components/containers/applet-container/applet-container.component.mjs +0 -55
- package/esm2022/lib/components/containers/applet-container/provide-applet-config.util.mjs +0 -9
- package/esm2022/lib/components/containers/colum-header-container/column-header-container.component.mjs +0 -23
- package/esm2022/lib/components/containers/column-container/column-container.component.mjs +0 -79
- package/esm2022/lib/components/containers/column-container/directives/lazy-route.directive.mjs +0 -57
- package/esm2022/lib/components/containers/index.mjs +0 -7
- package/esm2022/lib/components/containers/list-container/index.mjs +0 -3
- package/esm2022/lib/components/containers/list-container/interfaces/list-container-config.interface.mjs +0 -2
- package/esm2022/lib/components/containers/list-container/list-pagination-container/list-pagination-container.component.mjs +0 -58
- package/esm2022/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.component.mjs +0 -57
- package/esm2022/lib/components/containers/modal-container/modal-container.component.mjs +0 -40
- package/esm2022/lib/components/filter/filter.component.mjs +0 -222
- package/esm2022/lib/components/filter/index.mjs +0 -2
- package/esm2022/lib/components/filter/interfaces/filter-config.interface.mjs +0 -2
- package/esm2022/lib/components/filter/interfaces/filter-field.interface.mjs +0 -2
- package/esm2022/lib/components/filter/interfaces/filter-search-event.interface.mjs +0 -2
- package/esm2022/lib/components/forms/country-input/form-country-input.component.mjs +0 -122
- package/esm2022/lib/components/forms/currency-input/form-currency-input.component.mjs +0 -157
- package/esm2022/lib/components/forms/date/form-date.component.mjs +0 -114
- package/esm2022/lib/components/forms/image-picker/directives/drag-n-drop.directive.mjs +0 -49
- package/esm2022/lib/components/forms/image-picker/form-image-picker.component.mjs +0 -68
- package/esm2022/lib/components/forms/index.mjs +0 -12
- package/esm2022/lib/components/forms/input/form-input.component.mjs +0 -98
- package/esm2022/lib/components/forms/number/form-number.component.mjs +0 -97
- package/esm2022/lib/components/forms/number/pipes/locale-number.pipe.mjs +0 -33
- package/esm2022/lib/components/forms/password/form-password.component.mjs +0 -100
- package/esm2022/lib/components/forms/rate-group-code-input/form-rate-group-code-input.component.mjs +0 -135
- package/esm2022/lib/components/forms/searchable-select/form-searchable-select.component.mjs +0 -138
- package/esm2022/lib/components/forms/select/form-select.component.mjs +0 -116
- package/esm2022/lib/components/forms/textarea/form-textarea.component.mjs +0 -88
- package/esm2022/lib/components/grids/grid-pagination/grid-pagination.component.mjs +0 -111
- package/esm2022/lib/components/grids/grid-snapshot/grid-snapshot.component.mjs +0 -109
- package/esm2022/lib/components/grids/index.mjs +0 -4
- package/esm2022/lib/components/grids/interfaces/grid-config.interface.mjs +0 -2
- package/esm2022/lib/components/grids/services/grid.service.mjs +0 -25
- package/esm2022/lib/components/index.mjs +0 -9
- package/esm2022/lib/components/infinite-scroll/directive/infinite-scroll.directive.mjs +0 -43
- package/esm2022/lib/components/infinite-scroll/index.mjs +0 -3
- package/esm2022/lib/components/infinite-scroll/infinite-scroll.component.mjs +0 -36
- package/esm2022/lib/components/tabs/index.mjs +0 -3
- package/esm2022/lib/components/tabs/tab-content/tab-content.component.mjs +0 -37
- package/esm2022/lib/components/tabs/tab-group/tab-group.component.mjs +0 -47
- package/esm2022/lib/guards/auth/auth.guard.mjs +0 -10
- package/esm2022/lib/guards/index.mjs +0 -2
- package/esm2022/lib/interceptors/header/header.interceptor.mjs +0 -29
- package/esm2022/lib/interceptors/index.mjs +0 -3
- package/esm2022/lib/interceptors/refresh-token/refresh-token.interceptor.mjs +0 -83
- package/esm2022/lib/interfaces/index.mjs +0 -2
- package/esm2022/lib/interfaces/user/user.interface.mjs +0 -2
- package/esm2022/lib/modules/index.mjs +0 -3
- package/esm2022/lib/modules/micro-frontend/index.mjs +0 -2
- package/esm2022/lib/modules/micro-frontend/utils/mf-bootstrap.util.mjs +0 -55
- package/esm2022/lib/modules/micro-frontend/utils/mf-global-state.util.mjs +0 -14
- package/esm2022/lib/modules/permission/directive/permission.directive.mjs +0 -41
- package/esm2022/lib/modules/permission/guards/permission.guard.mjs +0 -26
- package/esm2022/lib/modules/permission/index.mjs +0 -7
- package/esm2022/lib/modules/permission/pages/401/unauthorized.page.mjs +0 -15
- package/esm2022/lib/modules/permission/pages/loading/loading.page.mjs +0 -65
- package/esm2022/lib/modules/permission/pages/loading/provide-loading-config.util.mjs +0 -9
- package/esm2022/lib/modules/permission/services/permission.service.mjs +0 -50
- package/esm2022/lib/resolvers/auth/auth.resolver.mjs +0 -87
- package/esm2022/lib/resolvers/index.mjs +0 -2
- package/esm2022/lib/services/auth/auth.service.mjs +0 -171
- package/esm2022/lib/services/country/country.service.mjs +0 -43
- package/esm2022/lib/services/currency/currency.service.mjs +0 -40
- package/esm2022/lib/services/index.mjs +0 -6
- package/esm2022/lib/services/profile/profile.service.mjs +0 -82
- package/esm2022/lib/services/rate-group-code/rate-group-code.service.mjs +0 -31
- package/esm2022/lib/utils/contrast-color-generator/contrast-color-generator.util.mjs +0 -16
- package/esm2022/lib/utils/form-error-message/form-error-message.util.mjs +0 -21
- package/esm2022/lib/utils/format-capitalize/format-capitalize.util.mjs +0 -18
- package/esm2022/lib/utils/index.mjs +0 -5
- package/esm2022/lib/utils/redirect-to-first-menu/redirect-to-first-menu.util.mjs +0 -9
- package/esm2022/public-api.mjs +0 -10
- package/esm2022/unipin-angular-applet.mjs +0 -2
- package/fesm2022/unipin-angular-applet.mjs +0 -4564
- package/fesm2022/unipin-angular-applet.mjs.map +0 -1
- package/graphql/generated.d.ts +0 -15719
- package/index.d.ts +0 -2
- package/lib/components/approval/detail/approval-detail.component.d.ts +0 -26
- package/lib/components/approval/form/approval-form.component.d.ts +0 -33
- package/lib/components/approval/list/approval-list.component.d.ts +0 -33
- package/lib/components/approval/list/provide-approval-entities.util.d.ts +0 -3
- package/lib/components/approval/services/approval.service.d.ts +0 -18
- package/lib/components/audit/detail/audit-detail.component.d.ts +0 -33
- package/lib/components/audit/list/audit-list.component.d.ts +0 -31
- package/lib/components/audit/service/audit.service.d.ts +0 -15
- package/lib/components/audit/types/audit-detail-form.type.d.ts +0 -12
- package/lib/components/buttons/group/btn-group.component.d.ts +0 -18
- package/lib/components/buttons/group/interfaces/btn-group-config.interface.d.ts +0 -11
- package/lib/components/buttons/loading/btn-loading.component.d.ts +0 -19
- package/lib/components/containers/applet-container/applet-container.component.d.ts +0 -22
- package/lib/components/containers/applet-container/provide-applet-config.util.d.ts +0 -15
- package/lib/components/containers/colum-header-container/column-header-container.component.d.ts +0 -7
- package/lib/components/containers/column-container/column-container.component.d.ts +0 -26
- package/lib/components/containers/column-container/directives/lazy-route.directive.d.ts +0 -17
- package/lib/components/containers/list-container/list-pagination-container/list-pagination-container.component.d.ts +0 -23
- package/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.component.d.ts +0 -23
- package/lib/components/containers/modal-container/modal-container.component.d.ts +0 -16
- package/lib/components/filter/filter.component.d.ts +0 -44
- package/lib/components/filter/interfaces/filter-config.interface.d.ts +0 -5
- package/lib/components/filter/interfaces/filter-field.interface.d.ts +0 -23
- package/lib/components/filter/interfaces/filter-search-event.interface.d.ts +0 -4
- package/lib/components/forms/country-input/form-country-input.component.d.ts +0 -41
- package/lib/components/forms/currency-input/form-currency-input.component.d.ts +0 -52
- package/lib/components/forms/date/form-date.component.d.ts +0 -32
- package/lib/components/forms/image-picker/directives/drag-n-drop.directive.d.ts +0 -10
- package/lib/components/forms/image-picker/form-image-picker.component.d.ts +0 -21
- package/lib/components/forms/input/form-input.component.d.ts +0 -31
- package/lib/components/forms/number/form-number.component.d.ts +0 -27
- package/lib/components/forms/number/pipes/locale-number.pipe.d.ts +0 -8
- package/lib/components/forms/password/form-password.component.d.ts +0 -27
- package/lib/components/forms/rate-group-code-input/form-rate-group-code-input.component.d.ts +0 -41
- package/lib/components/forms/searchable-select/form-searchable-select.component.d.ts +0 -42
- package/lib/components/forms/select/form-select.component.d.ts +0 -33
- package/lib/components/forms/textarea/form-textarea.component.d.ts +0 -26
- package/lib/components/grids/grid-pagination/grid-pagination.component.d.ts +0 -33
- package/lib/components/grids/grid-snapshot/grid-snapshot.component.d.ts +0 -36
- package/lib/components/grids/interfaces/grid-config.interface.d.ts +0 -16
- package/lib/components/grids/services/grid.service.d.ts +0 -12
- package/lib/components/infinite-scroll/directive/infinite-scroll.directive.d.ts +0 -15
- package/lib/components/infinite-scroll/infinite-scroll.component.d.ts +0 -12
- package/lib/components/tabs/tab-content/tab-content.component.d.ts +0 -14
- package/lib/components/tabs/tab-group/tab-group.component.d.ts +0 -18
- package/lib/guards/auth/auth.guard.d.ts +0 -1
- package/lib/interceptors/header/header.interceptor.d.ts +0 -9
- package/lib/interceptors/refresh-token/refresh-token.interceptor.d.ts +0 -14
- package/lib/interfaces/user/user.interface.d.ts +0 -27
- package/lib/modules/index.d.ts +0 -2
- package/lib/modules/micro-frontend/utils/mf-bootstrap.util.d.ts +0 -9
- package/lib/modules/micro-frontend/utils/mf-global-state.util.d.ts +0 -4
- package/lib/modules/permission/directive/permission.directive.d.ts +0 -16
- package/lib/modules/permission/guards/permission.guard.d.ts +0 -2
- package/lib/modules/permission/pages/401/unauthorized.page.d.ts +0 -5
- package/lib/modules/permission/pages/loading/loading.page.d.ts +0 -18
- package/lib/modules/permission/pages/loading/provide-loading-config.util.d.ts +0 -10
- package/lib/modules/permission/services/permission.service.d.ts +0 -21
- package/lib/resolvers/auth/auth.resolver.d.ts +0 -14
- package/lib/services/auth/auth.service.d.ts +0 -39
- package/lib/services/country/country.service.d.ts +0 -16
- package/lib/services/currency/currency.service.d.ts +0 -16
- package/lib/services/profile/profile.service.d.ts +0 -12
- package/lib/services/rate-group-code/rate-group-code.service.d.ts +0 -14
- package/lib/utils/contrast-color-generator/contrast-color-generator.util.d.ts +0 -4
- package/lib/utils/form-error-message/form-error-message.util.d.ts +0 -2
- package/lib/utils/format-capitalize/format-capitalize.util.d.ts +0 -1
- package/lib/utils/redirect-to-first-menu/redirect-to-first-menu.util.d.ts +0 -2
- package/public-api.d.ts +0 -11
- /package/{src → projects/unipin-angular/src}/assets/scss/forms.scss +0 -0
- /package/{src → projects/unipin-angular/src}/assets/scss/grid.scss +0 -0
- /package/{src → projects/unipin-angular/src}/assets/scss/select.scss +0 -0
- /package/{lib/components/audit/index.d.ts → projects/unipin-angular/src/lib/components/audit/index.ts} +0 -0
- /package/{lib/components/buttons/index.d.ts → projects/unipin-angular/src/lib/components/buttons/index.ts} +0 -0
- /package/{lib/components/containers/list-container/index.d.ts → projects/unipin-angular/src/lib/components/containers/list-container/index.ts} +0 -0
- /package/{lib/components/forms/index.d.ts → projects/unipin-angular/src/lib/components/forms/index.ts} +0 -0
- /package/{lib/components/grids/index.d.ts → projects/unipin-angular/src/lib/components/grids/index.ts} +0 -0
- /package/{lib/components/infinite-scroll/index.d.ts → projects/unipin-angular/src/lib/components/infinite-scroll/index.ts} +0 -0
- /package/{lib/guards/index.d.ts → projects/unipin-angular/src/lib/guards/index.ts} +0 -0
- /package/{lib/interceptors/index.d.ts → projects/unipin-angular/src/lib/interceptors/index.ts} +0 -0
- /package/{lib/interfaces/index.d.ts → projects/unipin-angular/src/lib/interfaces/index.ts} +0 -0
- /package/{lib/modules/micro-frontend/index.d.ts → projects/unipin-angular/src/lib/modules/micro-frontend/index.ts} +0 -0
- /package/{lib/resolvers/index.d.ts → projects/unipin-angular/src/lib/resolvers/index.ts} +0 -0
- /package/{lib/services/index.d.ts → projects/unipin-angular/src/lib/services/index.ts} +0 -0
- /package/{lib/utils/index.d.ts → projects/unipin-angular/src/lib/utils/index.ts} +0 -0
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import { formatDate } from '@angular/common';
|
|
3
|
-
import { FormControl, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { IonicModule } from '@ionic/angular';
|
|
5
|
-
import { FormInputComponent } from '../../forms/input/form-input.component';
|
|
6
|
-
import { FormTextareaComponent } from '../../forms/textarea/form-textarea.component';
|
|
7
|
-
import { GridPaginationComponent } from '../../grids/grid-pagination/grid-pagination.component';
|
|
8
|
-
import { TabContentComponent, TabGroupComponent } from '../../tabs';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/forms";
|
|
11
|
-
import * as i2 from "../service/audit.service";
|
|
12
|
-
import * as i3 from "@angular/router";
|
|
13
|
-
import * as i4 from "@ionic/angular";
|
|
14
|
-
export class AuditDetailComponent {
|
|
15
|
-
constructor(fb, service, route, navCtrl) {
|
|
16
|
-
this.fb = fb;
|
|
17
|
-
this.service = service;
|
|
18
|
-
this.route = route;
|
|
19
|
-
this.navCtrl = navCtrl;
|
|
20
|
-
this.gridConfig = {
|
|
21
|
-
useTotalRecord: false,
|
|
22
|
-
colDefs: [
|
|
23
|
-
{ headerName: 'Attribute Name', field: 'attribute', sort: 'asc' },
|
|
24
|
-
{ headerName: 'Old Value', field: 'oldData' },
|
|
25
|
-
{ headerName: 'New Value', field: 'newData' }
|
|
26
|
-
]
|
|
27
|
-
};
|
|
28
|
-
this.form = this.fb.group({
|
|
29
|
-
guid: new FormControl({ value: null, disabled: true }),
|
|
30
|
-
action: new FormControl({ value: null, disabled: true }),
|
|
31
|
-
description: new FormControl({ value: null, disabled: true }),
|
|
32
|
-
userName: new FormControl({ value: null, disabled: true }),
|
|
33
|
-
sourceIp: new FormControl({ value: null, disabled: true }),
|
|
34
|
-
createdAt: new FormControl({ value: null, disabled: true }),
|
|
35
|
-
msSource: new FormControl({ value: null, disabled: true }),
|
|
36
|
-
sourcePlatform: new FormControl({ value: null, disabled: true }),
|
|
37
|
-
function: new FormControl({ value: null, disabled: true }),
|
|
38
|
-
});
|
|
39
|
-
this.isLoading = true;
|
|
40
|
-
this.guid = '';
|
|
41
|
-
}
|
|
42
|
-
ngOnDestroy() {
|
|
43
|
-
this.sub?.unsubscribe();
|
|
44
|
-
}
|
|
45
|
-
setGridApi({ api }) {
|
|
46
|
-
this.gridApi = api;
|
|
47
|
-
this.getData();
|
|
48
|
-
}
|
|
49
|
-
isIsoDateString(str) {
|
|
50
|
-
const regex = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,9})?Z$/;
|
|
51
|
-
return regex.test(str);
|
|
52
|
-
}
|
|
53
|
-
formatData(value) {
|
|
54
|
-
if (value === null)
|
|
55
|
-
return value;
|
|
56
|
-
if (typeof value === 'object')
|
|
57
|
-
return JSON.stringify(value);
|
|
58
|
-
if (this.isIsoDateString(value))
|
|
59
|
-
return formatDate(value, 'dd MMM yyyy HH:mm', 'en-US');
|
|
60
|
-
return value;
|
|
61
|
-
}
|
|
62
|
-
getData() {
|
|
63
|
-
const newGuid = this.route.children[0].snapshot.params['audit'];
|
|
64
|
-
if (!newGuid || this.guid === newGuid)
|
|
65
|
-
return;
|
|
66
|
-
this.sub?.unsubscribe();
|
|
67
|
-
this.gridApi?.showLoadingOverlay();
|
|
68
|
-
this.guid = newGuid;
|
|
69
|
-
this.isLoading = true;
|
|
70
|
-
this.sub = this.service.query({ guid: this.guid }, 'data tags { tagKey tagValue }').subscribe({
|
|
71
|
-
next: ({ data: { auditMsAuditTrail: data } }) => {
|
|
72
|
-
this.gridApi?.hideOverlay();
|
|
73
|
-
if (data.length !== 1) {
|
|
74
|
-
this.navCtrl.back();
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
const { guid, action, description, function: func, msSource, sourceIp, createdAt } = data[0];
|
|
78
|
-
this.form.patchValue({
|
|
79
|
-
guid,
|
|
80
|
-
function: func,
|
|
81
|
-
msSource, sourceIp,
|
|
82
|
-
action, description,
|
|
83
|
-
userName: data[0].user?.name,
|
|
84
|
-
sourcePlatform: data[0].user?.sourcePlatform,
|
|
85
|
-
createdAt: formatDate(createdAt, 'dd MMM yyyy HH:mm', 'en-US'),
|
|
86
|
-
});
|
|
87
|
-
this.isLoading = false;
|
|
88
|
-
this.getChangedData(data[0].data);
|
|
89
|
-
},
|
|
90
|
-
error: () => this.navCtrl.back()
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
getChangedData({ oldData, newData }) {
|
|
94
|
-
if (!newData || Array.isArray(JSON.parse(newData))) {
|
|
95
|
-
this.gridApi.setGridOption('rowData', []);
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
const objNewData = JSON.parse(newData);
|
|
99
|
-
const changedData = Object.entries(oldData ? JSON.parse(oldData) : JSON.parse(newData))
|
|
100
|
-
.filter(([key, oldVal]) => JSON.stringify(oldData ? oldVal : null) !== JSON.stringify(objNewData[key]) && !key.match(/update|created/))
|
|
101
|
-
.map(([key, oldVal]) => ({
|
|
102
|
-
attribute: key,
|
|
103
|
-
oldData: oldData ? this.formatData(oldVal) : null,
|
|
104
|
-
newData: this.formatData(objNewData[key])
|
|
105
|
-
}));
|
|
106
|
-
this.gridApi.setGridOption('rowData', changedData);
|
|
107
|
-
}
|
|
108
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuditDetailComponent, deps: [{ token: i1.FormBuilder }, { token: i2.AuditService }, { token: i3.ActivatedRoute }, { token: i4.NavController }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
109
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AuditDetailComponent, isStandalone: true, selector: "up-audit-detail", ngImport: i0, template: "<up-tab-group class=\"h-100\">\n <up-tab-content header=\"Detail\" fragment=\"detail\">\n @if (isLoading) {\n @for(i of [0,1,2,3,4,5,6]; track $index) {\n <ion-skeleton-text class=\"sk-input mx-4 mb-4\" />\n }\n } @else {\n <form [formGroup]=\"form\" class=\"px-4 pb-4\">\n <div class=\"d-flex align-items-center gap-2 pb-3\">\n <ion-icon name=\"information-circle\" />\n <h5 class=\"m-0\">Information</h5>\n </div>\n \n <div class=\"d-flex flex-column flex-lg-row gap-4\">\n <div class=\"flex-grow-1\">\n <up-input class=\"mb-lg-4\" label=\"Action\" formControlName=\"action\" />\n </div>\n \n <div class=\"flex-grow-1\">\n <up-input class=\"mb-4\" label=\"Source IP\" formControlName=\"sourceIp\" />\n </div>\n </div>\n \n <up-input class=\"mb-4\" label=\"User Name\" formControlName=\"userName\" />\n <up-textarea class=\"mb-4\" label=\"Description\" formControlName=\"description\" />\n \n <div class=\"d-flex align-items-center gap-2 pb-3 pt-2\">\n <ion-icon name=\"laptop\" />\n <h5 class=\"m-0\">System Information</h5>\n </div>\n \n <div class=\"d-flex flex-column flex-lg-row gap-4\">\n <div class=\"flex-grow-1\">\n <up-input class=\"mb-4\" label=\"Action Date\" formControlName=\"createdAt\" />\n <up-input class=\"mb-lg-4\" label=\"Source Platform\" formControlName=\"sourcePlatform\" />\n </div>\n \n <div class=\"flex-grow-1\">\n <up-input class=\"mb-4\" label=\"MS Source\" formControlName=\"msSource\" />\n <up-input class=\"mb-4\" label=\"Function\" formControlName=\"function\" />\n </div>\n </div>\n </form>\n } \n </up-tab-content>\n\n <up-tab-content header=\"Attributes\" fragment=\"attributes\">\n <up-pagination-grid id=\"grid-audit-detail\" rowModelType=\"clientSide\" [config]=\"gridConfig\" (onGridReady)=\"setGridApi($event)\" />\n </up-tab-content>\n</up-tab-group>\n", styles: ["ion-icon{font-size:24px;margin-right:5px}\n"], dependencies: [{ kind: "ngmodule", type: IonicModule }, { kind: "component", type: i4.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i4.IonSkeletonText, selector: "ion-skeleton-text", inputs: ["animated"] }, { kind: "component", type: TabGroupComponent, selector: "up-tab-group", outputs: ["onChange", "changed"] }, { kind: "component", type: TabContentComponent, selector: "up-tab-content", inputs: ["header"] }, { kind: "component", type: GridPaginationComponent, selector: "up-pagination-grid", inputs: ["config", "rowData", "id", "rowModelType", "rowSelection", "getRowClass"], outputs: ["onRowClick", "onGridReady", "onSelectionChanged"] }, { kind: "component", type: FormInputComponent, selector: "up-input", inputs: ["label", "value", "required", "disabled", "min", "max"], outputs: ["onInput"] }, { kind: "component", type: FormTextareaComponent, selector: "up-textarea", inputs: ["value", "required", "disabled"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] }); }
|
|
110
|
-
}
|
|
111
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuditDetailComponent, decorators: [{
|
|
112
|
-
type: Component,
|
|
113
|
-
args: [{ standalone: true, selector: 'up-audit-detail', imports: [
|
|
114
|
-
IonicModule,
|
|
115
|
-
TabGroupComponent,
|
|
116
|
-
TabContentComponent,
|
|
117
|
-
GridPaginationComponent,
|
|
118
|
-
FormInputComponent,
|
|
119
|
-
FormTextareaComponent,
|
|
120
|
-
ReactiveFormsModule
|
|
121
|
-
], template: "<up-tab-group class=\"h-100\">\n <up-tab-content header=\"Detail\" fragment=\"detail\">\n @if (isLoading) {\n @for(i of [0,1,2,3,4,5,6]; track $index) {\n <ion-skeleton-text class=\"sk-input mx-4 mb-4\" />\n }\n } @else {\n <form [formGroup]=\"form\" class=\"px-4 pb-4\">\n <div class=\"d-flex align-items-center gap-2 pb-3\">\n <ion-icon name=\"information-circle\" />\n <h5 class=\"m-0\">Information</h5>\n </div>\n \n <div class=\"d-flex flex-column flex-lg-row gap-4\">\n <div class=\"flex-grow-1\">\n <up-input class=\"mb-lg-4\" label=\"Action\" formControlName=\"action\" />\n </div>\n \n <div class=\"flex-grow-1\">\n <up-input class=\"mb-4\" label=\"Source IP\" formControlName=\"sourceIp\" />\n </div>\n </div>\n \n <up-input class=\"mb-4\" label=\"User Name\" formControlName=\"userName\" />\n <up-textarea class=\"mb-4\" label=\"Description\" formControlName=\"description\" />\n \n <div class=\"d-flex align-items-center gap-2 pb-3 pt-2\">\n <ion-icon name=\"laptop\" />\n <h5 class=\"m-0\">System Information</h5>\n </div>\n \n <div class=\"d-flex flex-column flex-lg-row gap-4\">\n <div class=\"flex-grow-1\">\n <up-input class=\"mb-4\" label=\"Action Date\" formControlName=\"createdAt\" />\n <up-input class=\"mb-lg-4\" label=\"Source Platform\" formControlName=\"sourcePlatform\" />\n </div>\n \n <div class=\"flex-grow-1\">\n <up-input class=\"mb-4\" label=\"MS Source\" formControlName=\"msSource\" />\n <up-input class=\"mb-4\" label=\"Function\" formControlName=\"function\" />\n </div>\n </div>\n </form>\n } \n </up-tab-content>\n\n <up-tab-content header=\"Attributes\" fragment=\"attributes\">\n <up-pagination-grid id=\"grid-audit-detail\" rowModelType=\"clientSide\" [config]=\"gridConfig\" (onGridReady)=\"setGridApi($event)\" />\n </up-tab-content>\n</up-tab-group>\n", styles: ["ion-icon{font-size:24px;margin-right:5px}\n"] }]
|
|
122
|
-
}], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.AuditService }, { type: i3.ActivatedRoute }, { type: i4.NavController }] });
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtZGV0YWlsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9hdWRpdC9kZXRhaWwvYXVkaXQtZGV0YWlsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9hdWRpdC9kZXRhaWwvYXVkaXQtZGV0YWlsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTdDLE9BQU8sRUFBZSxXQUFXLEVBQWEsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxRixPQUFPLEVBQUUsV0FBVyxFQUFpQixNQUFNLGdCQUFnQixDQUFDO0FBTTVELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFlBQVksQ0FBQzs7Ozs7O0FBaUJwRSxNQUFNLE9BQU8sb0JBQW9CO0lBMkIvQixZQUNxQixFQUFlLEVBQ2YsT0FBcUIsRUFDckIsS0FBcUIsRUFDckIsT0FBc0I7UUFIdEIsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLFlBQU8sR0FBUCxPQUFPLENBQWM7UUFDckIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsWUFBTyxHQUFQLE9BQU8sQ0FBZTtRQTdCM0IsZUFBVSxHQUFlO1lBQ3ZDLGNBQWMsRUFB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LEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDdkIsU0FBUyxFQUFFLEdBQUc7WUFDZCxPQUFPLEVBQUUsT0FBTyxDQUFBLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJO1lBQ2hELE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUMxQyxDQUFDLENBQ0gsQ0FBQztRQUVGLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNyRCxDQUFDOytHQTVHVSxvQkFBb0I7bUdBQXBCLG9CQUFvQiwyRUMvQmpDLG00RUFrREEsb0dENUJJLFdBQVcsMFNBQ1gsaUJBQWlCLDJGQUNqQixtQkFBbUIsK0VBQ25CLHVCQUF1QixpTkFDdkIsa0JBQWtCLDZJQUNsQixxQkFBcUIsa0dBQ3JCLG1CQUFtQjs7NEZBR1Ysb0JBQW9CO2tCQWZoQyxTQUFTO2lDQUNJLElBQUksWUFDTixpQkFBaUIsV0FHbEI7d0JBQ1AsV0FBVzt3QkFDWCxpQkFBaUI7d0JBQ2pCLG1CQUFtQjt3QkFDbkIsdUJBQXVCO3dCQUN2QixrQkFBa0I7d0JBQ2xCLHFCQUFxQjt3QkFDckIsbUJBQW1CO3FCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmb3JtYXREYXRlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJb25pY01vZHVsZSwgTmF2Q29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IEdyaWRBcGksIEdyaWRSZWFkeUV2ZW50IH0gZnJvbSAnQGFnLWdyaWQtY29tbXVuaXR5L2NvcmUnO1xuaW1wb3J0IHsgQXVkaXRUcmFpbCB9IGZyb20gJy4vLi4vLi4vLi4vLi4vZ3JhcGhxbC9nZW5lcmF0ZWQnO1xuaW1wb3J0IHsgQXVkaXREZXRhaWxGb3JtIH0gZnJvbSAnLi4vdHlwZXMvYXVkaXQtZGV0YWlsLWZvcm0udHlwZSc7XG5pbXBvcnQgeyBHcmlkQ29uZmlnIH0gZnJvbSAnLi4vLi4vZ3JpZHMvaW50ZXJmYWNlcy9ncmlkLWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQXVkaXRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZS9hdWRpdC5zZXJ2aWNlJztcbmltcG9ydCB7IEZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Zvcm1zL2lucHV0L2Zvcm0taW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1UZXh0YXJlYUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Zvcm1zL3RleHRhcmVhL2Zvcm0tdGV4dGFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7IEdyaWRQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZ3JpZHMvZ3JpZC1wYWdpbmF0aW9uL2dyaWQtcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFiQ29udGVudENvbXBvbmVudCwgVGFiR3JvdXBDb21wb25lbnQgfSBmcm9tICcuLi8uLi90YWJzJztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAndXAtYXVkaXQtZGV0YWlsJyxcbiAgc3R5bGVVcmw6ICcuL2F1ZGl0LWRldGFpbC5jb21wb25lbnQuc2NzcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hdWRpdC1kZXRhaWwuY29tcG9uZW50Lmh0bWwnLFxuICBpbXBvcnRzOiBbXG4gICAgSW9uaWNNb2R1bGUsXG4gICAgVGFiR3JvdXBDb21wb25lbnQsXG4gICAgVGFiQ29udGVudENvbXBvbmVudCxcbiAgICBHcmlkUGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICBGb3JtSW5wdXRDb21wb25lbnQsXG4gICAgRm9ybVRleHRhcmVhQ29tcG9uZW50LFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBBdWRpdERldGFpbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgcHVibGljIHJlYWRvbmx5IGdyaWRDb25maWc6IEdyaWRDb25maWcgPSB7XG4gICAgdXNlVG90YWxSZWNvcmQ6IGZhbHNlLFxuICAgIGNvbERlZnM6IFtcbiAgICAgIHsgaGVhZGVyTmFtZTogJ0F0dHJpYnV0ZSBOYW1lJywgZmllbGQ6ICdhdHRyaWJ1dGUnLCBzb3J0OiAnYXNjJyB9LFxuICAgICAgeyBoZWFkZXJOYW1lOiAnT2xkIFZhbHVlJywgZmllbGQ6ICdvbGREYXRhJyB9LFxuICAgICAgeyBoZWFkZXJOYW1lOiAnTmV3IFZhbHVlJywgZmllbGQ6ICduZXdEYXRhJyB9XG4gICAgXVxuICB9O1xuICBwdWJsaWMgcmVhZG9ubHkgZm9ybTogRm9ybUdyb3VwPEF1ZGl0RGV0YWlsRm9ybT4gPSB0aGlzLmZiLmdyb3VwPEF1ZGl0RGV0YWlsRm9ybT4oe1xuICAgIGd1aWQ6IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiBudWxsLCBkaXNhYmxlZDogdHJ1ZX0pLFxuICAgIGFjdGlvbjogbmV3IEZvcm1Db250cm9sKHsgdmFsdWU6IG51bGwsIGRpc2FibGVkOiB0cnVlfSksXG4gICAgZGVzY3JpcHRpb246IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiBudWxsLCBkaXNhYmxlZDogdHJ1ZX0pLFxuICAgIHVzZXJOYW1lOiBuZXcgRm9ybUNvbnRyb2woeyB2YWx1ZTogbnVsbCwgZGlzYWJsZWQ6IHRydWV9KSxcbiAgICBzb3VyY2VJcDogbmV3IEZvcm1Db250cm9sKHsgdmFsdWU6IG51bGwsIGRpc2FibGVkOiB0cnVlfSksXG4gICAgY3JlYXRlZEF0OiBuZXcgRm9ybUNvbnRyb2woeyB2YWx1ZTogbnVsbCwgZGlzYWJsZWQ6IHRydWV9KSxcbiAgICBtc1NvdXJjZTogbmV3IEZvcm1Db250cm9sKHsgdmFsdWU6IG51bGwsIGRpc2FibGVkOiB0cnVlfSksXG4gICAgc291cmNlUGxhdGZvcm06IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiBudWxsLCBkaXNhYmxlZDogdHJ1ZX0pLFxuICAgIGZ1bmN0aW9uOiBuZXcgRm9ybUNvbnRyb2woeyB2YWx1ZTogbnVsbCwgZGlzYWJsZWQ6IHRydWV9KSxcbiAgfSk7XG4gIHB1YmxpYyBkYXRhITogQXVkaXRUcmFpbDtcbiAgcHVibGljIGlzTG9hZGluZzogYm9vbGVhbiA9IHRydWU7XG4gIHByb3RlY3RlZCBndWlkOiBzdHJpbmcgPSAnJztcbiAgcHJvdGVjdGVkIGdyaWRBcGkhOiBHcmlkQXBpO1xuICBwcm90ZWN0ZWQgc3ViPzogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCByZWFkb25seSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHNlcnZpY2U6IEF1ZGl0U2VydmljZSxcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByb3RlY3RlZCByZWFkb25seSBuYXZDdHJsOiBOYXZDb250cm9sbGVyXG4gICkgeyB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWR7XG4gICAgdGhpcy5zdWI/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0R3JpZEFwaSh7IGFwaSB9OiBHcmlkUmVhZHlFdmVudCk6IHZvaWR7XG4gICAgdGhpcy5ncmlkQXBpID0gYXBpO1xuICAgIHRoaXMuZ2V0RGF0YSgpO1xuICB9XG5cbiAgcHVibGljIGlzSXNvRGF0ZVN0cmluZyhzdHI6IHN0cmluZyk6IGJvb2xlYW57XG4gICAgY29uc3QgcmVnZXggPSAvXlxcZHs0fS1cXGR7Mn0tXFxkezJ9VFxcZHsyfTpcXGR7Mn06XFxkezJ9KFxcLlxcZHsxLDl9KT9aJC87XG4gICAgcmV0dXJuIHJlZ2V4LnRlc3Qoc3RyKTtcbiAgfVxuXG4gIHB1YmxpYyBmb3JtYXREYXRhKHZhbHVlOiBhbnkpOiBhbnl7XG4gICAgaWYgKHZhbHVlID09PSBudWxsKSByZXR1cm4gdmFsdWU7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcpIHJldHVybiBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XG4gICAgaWYgKHRoaXMuaXNJc29EYXRlU3RyaW5nKHZhbHVlKSkgcmV0dXJuIGZvcm1hdERhdGUodmFsdWUsICdkZCBNTU0geXl5eSBISDptbScsICdlbi1VUycpO1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXREYXRhKCk6IHZvaWR7XG4gICAgY29uc3QgbmV3R3VpZCA9IHRoaXMucm91dGUuY2hpbGRyZW5bMF0uc25hcHNob3QucGFyYW1zWydhdWRpdCddO1xuICAgIGlmICghbmV3R3VpZCB8fCB0aGlzLmd1aWQgPT09IG5ld0d1aWQpIHJldHVybjtcblxuICAgIHRoaXMuc3ViPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuZ3JpZEFwaT8uc2hvd0xvYWRpbmdPdmVybGF5KCk7XG5cbiAgICB0aGlzLmd1aWQgPSBuZXdHdWlkO1xuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLnN1YiA9IHRoaXMuc2VydmljZS5xdWVyeSh7IGd1aWQ6IHRoaXMuZ3VpZCB9LCAnZGF0YSB0YWdzIHsgdGFnS2V5IHRhZ1ZhbHVlIH0nKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHsgZGF0YTogeyBhdWRpdE1zQXVkaXRUcmFpbDogZGF0YSB9fSkgPT4ge1xuICAgICAgICB0aGlzLmdyaWRBcGk/LmhpZGVPdmVybGF5KCk7XG5cbiAgICAgICAgaWYgKGRhdGEubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgdGhpcy5uYXZDdHJsLmJhY2soKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB7IGd1aWQsIGFjdGlvbiwgZGVzY3JpcHRpb24sIGZ1bmN0aW9uOiBmdW5jLCBtc1NvdXJjZSwgc291cmNlSXAsIGNyZWF0ZWRBdCB9ID0gZGF0YVswXTtcbiAgICAgICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICAgIGd1aWQsXG4gICAgICAgICAgZnVuY3Rpb246IGZ1bmMsIFxuICAgICAgICAgIG1zU291cmNlLCBzb3VyY2VJcCxcbiAgICAgICAgICBhY3Rpb24sIGRlc2NyaXB0aW9uLFxuICAgICAgICAgIHVzZXJOYW1lOiBkYXRhWzBdLnVzZXI/Lm5hbWUsXG4gICAgICAgICAgc291cmNlUGxhdGZvcm06IGRhdGFbMF0udXNlcj8uc291cmNlUGxhdGZvcm0sXG4gICAgICAgICAgY3JlYXRlZEF0OiBmb3JtYXREYXRlKGNyZWF0ZWRBdCwgJ2RkIE1NTSB5eXl5IEhIOm1tJywgJ2VuLVVTJyksXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuZ2V0Q2hhbmdlZERhdGEoZGF0YVswXS5kYXRhKTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKCkgPT4gdGhpcy5uYXZDdHJsLmJhY2soKVxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldENoYW5nZWREYXRhKHsgb2xkRGF0YSwgbmV3RGF0YSB9OiBhbnkpOiB2b2lke1xuICAgIGlmICghbmV3RGF0YSB8fCBBcnJheS5pc0FycmF5KEpTT04ucGFyc2UobmV3RGF0YSkpKSB7XG4gICAgICB0aGlzLmdyaWRBcGkuc2V0R3JpZE9wdGlvbigncm93RGF0YScsIFtdKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBvYmpOZXdEYXRhID0gSlNPTi5wYXJzZShuZXdEYXRhKTtcbiAgICBjb25zdCBjaGFuZ2VkRGF0YSA9IE9iamVjdC5lbnRyaWVzKG9sZERhdGE/IEpTT04ucGFyc2Uob2xkRGF0YSkgOiBKU09OLnBhcnNlKG5ld0RhdGEpKVxuICAgICAgLmZpbHRlcigoW2tleSwgb2xkVmFsXSkgPT4gSlNPTi5zdHJpbmdpZnkob2xkRGF0YT8gb2xkVmFsIDogbnVsbCkgIT09IEpTT04uc3RyaW5naWZ5KG9iak5ld0RhdGFba2V5XSkgJiYgIWtleS5tYXRjaCgvdXBkYXRlfGNyZWF0ZWQvKSlcbiAgICAgIC5tYXAoKFtrZXksIG9sZFZhbF0pID0+ICh7XG4gICAgICAgIGF0dHJpYnV0ZToga2V5LFxuICAgICAgICBvbGREYXRhOiBvbGREYXRhPyB0aGlzLmZvcm1hdERhdGEob2xkVmFsKSA6IG51bGwsXG4gICAgICAgIG5ld0RhdGE6IHRoaXMuZm9ybWF0RGF0YShvYmpOZXdEYXRhW2tleV0pXG4gICAgICB9KVxuICAgICk7XG5cbiAgICB0aGlzLmdyaWRBcGkuc2V0R3JpZE9wdGlvbigncm93RGF0YScsIGNoYW5nZWREYXRhKTtcbiAgfVxufVxuIiwiPHVwLXRhYi1ncm91cCBjbGFzcz1cImgtMTAwXCI+XG4gICAgPHVwLXRhYi1jb250ZW50IGhlYWRlcj1cIkRldGFpbFwiIGZyYWdtZW50PVwiZGV0YWlsXCI+XG4gICAgICAgIEBpZiAoaXNMb2FkaW5nKSB7XG4gICAgICAgICAgICBAZm9yKGkgb2YgWzAsMSwyLDMsNCw1LDZdOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICA8aW9uLXNrZWxldG9uLXRleHQgY2xhc3M9XCJzay1pbnB1dCBteC00IG1iLTRcIiAvPlxuICAgICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGNsYXNzPVwicHgtNCBwYi00XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTIgcGItM1wiPlxuICAgICAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImluZm9ybWF0aW9uLWNpcmNsZVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cIm0tMFwiPkluZm9ybWF0aW9uPC9oNT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBmbGV4LWxnLXJvdyBnYXAtNFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1ncm93LTFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx1cC1pbnB1dCBjbGFzcz1cIm1iLWxnLTRcIiBsYWJlbD1cIkFjdGlvblwiIGZvcm1Db250cm9sTmFtZT1cImFjdGlvblwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICBcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtZ3Jvdy0xXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dXAtaW5wdXQgY2xhc3M9XCJtYi00XCIgbGFiZWw9XCJTb3VyY2UgSVBcIiBmb3JtQ29udHJvbE5hbWU9XCJzb3VyY2VJcFwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDx1cC1pbnB1dCBjbGFzcz1cIm1iLTRcIiBsYWJlbD1cIlVzZXIgTmFtZVwiIGZvcm1Db250cm9sTmFtZT1cInVzZXJOYW1lXCIgLz5cbiAgICAgICAgICAgICAgICA8dXAtdGV4dGFyZWEgY2xhc3M9XCJtYi00XCIgbGFiZWw9XCJEZXNjcmlwdGlvblwiIGZvcm1Db250cm9sTmFtZT1cImRlc2NyaXB0aW9uXCIgLz5cbiAgXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTIgcGItMyBwdC0yXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwibGFwdG9wXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwibS0wXCI+U3lzdGVtIEluZm9ybWF0aW9uPC9oNT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBmbGV4LWxnLXJvdyBnYXAtNFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1ncm93LTFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx1cC1pbnB1dCBjbGFzcz1cIm1iLTRcIiBsYWJlbD1cIkFjdGlvbiBEYXRlXCIgZm9ybUNvbnRyb2xOYW1lPVwiY3JlYXRlZEF0XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx1cC1pbnB1dCBjbGFzcz1cIm1iLWxnLTRcIiBsYWJlbD1cIlNvdXJjZSBQbGF0Zm9ybVwiIGZvcm1Db250cm9sTmFtZT1cInNvdXJjZVBsYXRmb3JtXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gIFxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1ncm93LTFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx1cC1pbnB1dCBjbGFzcz1cIm1iLTRcIiBsYWJlbD1cIk1TIFNvdXJjZVwiIGZvcm1Db250cm9sTmFtZT1cIm1zU291cmNlXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx1cC1pbnB1dCBjbGFzcz1cIm1iLTRcIiBsYWJlbD1cIkZ1bmN0aW9uXCIgZm9ybUNvbnRyb2xOYW1lPVwiZnVuY3Rpb25cIiAvPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZm9ybT5cbiAgICAgICAgfSAgIFxuICAgIDwvdXAtdGFiLWNvbnRlbnQ+XG5cbiAgICA8dXAtdGFiLWNvbnRlbnQgaGVhZGVyPVwiQXR0cmlidXRlc1wiIGZyYWdtZW50PVwiYXR0cmlidXRlc1wiPlxuICAgICAgICA8dXAtcGFnaW5hdGlvbi1ncmlkIGlkPVwiZ3JpZC1hdWRpdC1kZXRhaWxcIiByb3dNb2RlbFR5cGU9XCJjbGllbnRTaWRlXCIgW2NvbmZpZ109XCJncmlkQ29uZmlnXCIgKG9uR3JpZFJlYWR5KT1cInNldEdyaWRBcGkoJGV2ZW50KVwiIC8+XG4gICAgPC91cC10YWItY29udGVudD5cbjwvdXAtdGFiLWdyb3VwPlxuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export { AuditListComponent } from './list/audit-list.component';
|
|
2
|
-
export { AuditDetailComponent } from './detail/audit-detail.component';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvYXVkaXQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBBdWRpdExpc3RDb21wb25lbnQgfSBmcm9tICcuL2xpc3QvYXVkaXQtbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0IHsgQXVkaXREZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL2RldGFpbC9hdWRpdC1kZXRhaWwuY29tcG9uZW50JztcbiJdfQ==
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { Attribute, Component, Input, ViewChild } from '@angular/core';
|
|
2
|
-
import { formatDate } from '@angular/common';
|
|
3
|
-
import { map, of } from 'rxjs';
|
|
4
|
-
import { FilterComponent } from '../../filter';
|
|
5
|
-
import { GridPaginationComponent } from '../../grids/grid-pagination/grid-pagination.component';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/router";
|
|
8
|
-
import * as i2 from "../service/audit.service";
|
|
9
|
-
export class AuditListComponent {
|
|
10
|
-
constructor(id, url, router, service) {
|
|
11
|
-
this.id = id;
|
|
12
|
-
this.url = url;
|
|
13
|
-
this.router = router;
|
|
14
|
-
this.service = service;
|
|
15
|
-
this.filterConfig = { mode: 'simple', fields: [{ key: 'description', label: '', type: 'text' }] };
|
|
16
|
-
this.gridConfig = {
|
|
17
|
-
useTotalRecord: false,
|
|
18
|
-
noRowText: 'Audit not found',
|
|
19
|
-
colDefs: [
|
|
20
|
-
{ headerName: 'User', field: 'user.name', sortable: false },
|
|
21
|
-
{ headerName: 'Description', field: 'description', minWidth: 350, sortable: false },
|
|
22
|
-
{ headerName: 'Created Date', field: 'createdAt', sort: 'desc', valueFormatter: ({ value }) => value ? formatDate(value, 'dd MMM yyyy HH:mm', 'en-US') : '' }
|
|
23
|
-
],
|
|
24
|
-
getData: (page, pageSize, sortBy, dir) => {
|
|
25
|
-
if (!this.criteria.tagValues)
|
|
26
|
-
return of({ data: [] });
|
|
27
|
-
this.criteria.page = page;
|
|
28
|
-
this.criteria.sortBy = sortBy;
|
|
29
|
-
this.criteria.pageSize = pageSize;
|
|
30
|
-
this.criteria.sortDirection = dir;
|
|
31
|
-
return this.service.query(this.criteria).pipe(map(({ data: { auditMsAuditTrail: data } }) => ({ data })));
|
|
32
|
-
},
|
|
33
|
-
};
|
|
34
|
-
this.criteria = { sortBy: 'createdAt', sortDirection: 'desc', page: 0, pageSize: 50 };
|
|
35
|
-
}
|
|
36
|
-
ngOnChanges(e) {
|
|
37
|
-
if (e['tagKeys'])
|
|
38
|
-
this.criteria.tagKeys = this.tagKeys;
|
|
39
|
-
if (e['relatedEntities'])
|
|
40
|
-
this.criteria.relatedEntities = this.relatedEntities;
|
|
41
|
-
}
|
|
42
|
-
setGridApi({ api }) { this.gridApi = api; }
|
|
43
|
-
rowClicked({ guid }) {
|
|
44
|
-
this.router.navigate([`${this.url}/${this.criteria.tagValues[0]}/audit/${guid}`], { preserveFragment: true });
|
|
45
|
-
}
|
|
46
|
-
search({ data }) {
|
|
47
|
-
this.criteria.description = data?.description;
|
|
48
|
-
this.gridComponent.reset();
|
|
49
|
-
}
|
|
50
|
-
setGuid(guid) {
|
|
51
|
-
this.criteria.description = null;
|
|
52
|
-
this.criteria.tagValues = [guid];
|
|
53
|
-
this.gridComponent.reset();
|
|
54
|
-
}
|
|
55
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuditListComponent, deps: [{ token: 'id', attribute: true }, { token: 'mainUrl', attribute: true }, { token: i1.Router }, { token: i2.AuditService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
56
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AuditListComponent, isStandalone: true, selector: "up-audit-list", inputs: { relatedEntities: "relatedEntities", tagKeys: "tagKeys" }, host: { classAttribute: "d-flex flex-column h-100" }, viewQueries: [{ propertyName: "gridComponent", first: true, predicate: GridPaginationComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"d-flex justify-content-end px-4 pb-4 flex-shrink-0\">\n <up-filter class=\"w-100\" id=\"audit-filter\" placeholder=\"Type to search\" [config]=\"filterConfig\" (onSearch)=\"search($event);\" />\n</div>\n \n<up-pagination-grid id=\"grid-audit\" class=\"flex-grow-1\" [config]=\"gridConfig\" (onGridReady)=\"setGridApi($event)\" (onRowClick)=\"rowClicked($event)\" />\n", styles: [""], dependencies: [{ kind: "component", type: FilterComponent, selector: "up-filter", inputs: ["id", "config"], outputs: ["onSearch"] }, { kind: "component", type: GridPaginationComponent, selector: "up-pagination-grid", inputs: ["config", "rowData", "id", "rowModelType", "rowSelection", "getRowClass"], outputs: ["onRowClick", "onGridReady", "onSelectionChanged"] }] }); }
|
|
57
|
-
}
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuditListComponent, decorators: [{
|
|
59
|
-
type: Component,
|
|
60
|
-
args: [{ standalone: true, selector: 'up-audit-list', host: {
|
|
61
|
-
class: 'd-flex flex-column h-100'
|
|
62
|
-
}, imports: [
|
|
63
|
-
FilterComponent,
|
|
64
|
-
GridPaginationComponent
|
|
65
|
-
], template: "<div class=\"d-flex justify-content-end px-4 pb-4 flex-shrink-0\">\n <up-filter class=\"w-100\" id=\"audit-filter\" placeholder=\"Type to search\" [config]=\"filterConfig\" (onSearch)=\"search($event);\" />\n</div>\n \n<up-pagination-grid id=\"grid-audit\" class=\"flex-grow-1\" [config]=\"gridConfig\" (onGridReady)=\"setGridApi($event)\" (onRowClick)=\"rowClicked($event)\" />\n" }]
|
|
66
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
67
|
-
type: Attribute,
|
|
68
|
-
args: ['id']
|
|
69
|
-
}] }, { type: undefined, decorators: [{
|
|
70
|
-
type: Attribute,
|
|
71
|
-
args: ['mainUrl']
|
|
72
|
-
}] }, { type: i1.Router }, { type: i2.AuditService }], propDecorators: { relatedEntities: [{
|
|
73
|
-
type: Input,
|
|
74
|
-
args: [{ required: true }]
|
|
75
|
-
}], tagKeys: [{
|
|
76
|
-
type: Input
|
|
77
|
-
}], gridComponent: [{
|
|
78
|
-
type: ViewChild,
|
|
79
|
-
args: [GridPaginationComponent]
|
|
80
|
-
}] } });
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvYXVkaXQvbGlzdC9hdWRpdC1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9hdWRpdC9saXN0L2F1ZGl0LWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUE0QixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBTy9CLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdURBQXVELENBQUM7Ozs7QUFlaEcsTUFBTSxPQUFPLGtCQUFrQjtJQThCN0IsWUFDMEIsRUFBVSxFQUNGLEdBQVcsRUFDeEIsTUFBYyxFQUNkLE9BQXFCO1FBSGhCLE9BQUUsR0FBRixFQUFFLENBQVE7UUFDRixRQUFHLEdBQUgsR0FBRyxDQUFRO1FBQ3hCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxZQUFPLEdBQVAsT0FBTyxDQUFjO1FBN0IxQixpQkFBWSxHQUFpQixFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUMzRyxlQUFVLEdBQWU7WUFDdkMsY0FBYyxFQUFF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QztRQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsR0FBRyxDQUFFLElBQUksQ0FBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDN0IsQ0FBQzsrR0F6RFUsa0JBQWtCLGtCQStCaEIsSUFBSSw4QkFDSixTQUFTO21HQWhDWCxrQkFBa0Isa1BBSWxCLHVCQUF1QixxRUM5QnBDLDBZQUtBLDBERGlCSSxlQUFlLHVHQUNmLHVCQUF1Qjs7NEZBR2Qsa0JBQWtCO2tCQWI5QixTQUFTO2lDQUNJLElBQUksWUFDTixlQUFlLFFBR25CO3dCQUNKLEtBQUssRUFBRSwwQkFBMEI7cUJBQ2xDLFdBQ1E7d0JBQ1AsZUFBZTt3QkFDZix1QkFBdUI7cUJBQ3hCOzswQkFpQ0UsU0FBUzsyQkFBQyxJQUFJOzswQkFDZCxTQUFTOzJCQUFDLFNBQVM7eUZBOUJZLGVBQWU7c0JBQWhELEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNULE9BQU87c0JBQXRCLEtBQUs7Z0JBQ3dDLGFBQWE7c0JBQTFELFNBQVM7dUJBQUMsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXR0cmlidXRlLCBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZm9ybWF0RGF0ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgbWFwLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgR3JpZEFwaSwgR3JpZFJlYWR5RXZlbnQgfSBmcm9tICdAYWctZ3JpZC1jb21tdW5pdHkvY29yZSc7XG5pbXBvcnQgeyBBdWRpdFRhZ0VudW0sIEF1ZGl0VHJhaWwsIEF1ZGl0VHJhaWxDcml0ZXJpYSB9IGZyb20gJy4vLi4vLi4vLi4vLi4vZ3JhcGhxbC9nZW5lcmF0ZWQnO1xuaW1wb3J0IHsgR3JpZENvbmZpZyB9IGZyb20gJy4uLy4uL2dyaWRzL2ludGVyZmFjZXMvZ3JpZC1jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZpbHRlckNvbmZpZyB9IGZyb20gJy4uLy4uL2ZpbHRlci9pbnRlcmZhY2VzL2ZpbHRlci1jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZpbHRlclNlYXJjaEV2ZW50IH0gZnJvbSAnLi4vLi4vZmlsdGVyL2ludGVyZmFjZXMvZmlsdGVyLXNlYXJjaC1ldmVudC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQXVkaXRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZS9hdWRpdC5zZXJ2aWNlJztcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2ZpbHRlcic7XG5pbXBvcnQgeyBHcmlkUGFnaW5hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2dyaWRzL2dyaWQtcGFnaW5hdGlvbi9ncmlkLXBhZ2luYXRpb24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAndXAtYXVkaXQtbGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hdWRpdC1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXVkaXQtbGlzdC5jb21wb25lbnQuc2NzcyddLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdkLWZsZXggZmxleC1jb2x1bW4gaC0xMDAnXG4gIH0sXG4gIGltcG9ydHM6IFtcbiAgICBGaWx0ZXJDb21wb25lbnQsXG4gICAgR3JpZFBhZ2luYXRpb25Db21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBBdWRpdExpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHB1YmxpYyByZWxhdGVkRW50aXRpZXMhOiBzdHJpbmdbXTtcbiAgQElucHV0KCkgcHVibGljIHRhZ0tleXMhOiBBdWRpdFRhZ0VudW1bXTtcbiAgQFZpZXdDaGlsZChHcmlkUGFnaW5hdGlvbkNvbXBvbmVudCkgcHJvdGVjdGVkIGdyaWRDb21wb25lbnQhOiBHcmlkUGFnaW5hdGlvbkNvbXBvbmVudDtcbiAgcHVibGljIHJlYWRvbmx5IGZpbHRlckNvbmZpZzogRmlsdGVyQ29uZmlnID0geyBtb2RlOiAnc2ltcGxlJywgZmllbGRzOiBbeyBrZXk6ICdkZXNjcmlwdGlvbicsIGxhYmVsOiAnJywgdHlwZTogJ3RleHQnIH1dIH07XG4gIHB1YmxpYyByZWFkb25seSBncmlkQ29uZmlnOiBHcmlkQ29uZmlnID0ge1xuICAgIHVzZVRvdGFsUmVjb3JkOiBmYWxzZSxcbiAgICBub1Jvd1RleHQ6ICdBdWRpdCBub3QgZm91bmQnLFxuICAgIGNvbERlZnM6IFtcbiAgICAgIHsgaGVhZGVyTmFtZTogJ1VzZXInLCBmaWVsZDogJ3VzZXIubmFtZScsIHNvcnRhYmxlOiBmYWxzZSB9LFxuICAgICAgeyBoZWFkZXJOYW1lOiAnRGVzY3JpcHRpb24nLCBmaWVsZDogJ2Rlc2NyaXB0aW9uJywgbWluV2lkdGg6IDM1MCwgc29ydGFibGU6IGZhbHNlIH0sXG4gICAgICB7IGhlYWRlck5hbWU6ICdDcmVhdGVkIERhdGUnLCBmaWVsZDogJ2NyZWF0ZWRBdCcsIHNvcnQ6ICdkZXNjJywgdmFsdWVGb3JtYXR0ZXI6ICh7IHZhbHVlIH0pID0+IHZhbHVlPyBmb3JtYXREYXRlKHZhbHVlLCAnZGQgTU1NIHl5eXkgSEg6bW0nLCAnZW4tVVMnKSA6ICcnIH1cbiAgICBdLFxuICAgIGdldERhdGE6IChwYWdlOiBudW1iZXIsIHBhZ2VTaXplOiBudW1iZXIsIHNvcnRCeTogc3RyaW5nLCBkaXI6ICdhc2MnIHwgJ2Rlc2MnKSA9PiB7XG4gICAgICBpZiAoIXRoaXMuY3JpdGVyaWEudGFnVmFsdWVzKSByZXR1cm4gb2YoeyBkYXRhOiBbXSB9KTtcblxuICAgICAgdGhpcy5jcml0ZXJpYS5wYWdlID0gcGFnZTtcbiAgICAgIHRoaXMuY3JpdGVyaWEuc29ydEJ5ID0gc29ydEJ5O1xuICAgICAgdGhpcy5jcml0ZXJpYS5wYWdlU2l6ZSA9IHBhZ2VTaXplO1xuICAgICAgdGhpcy5jcml0ZXJpYS5zb3J0RGlyZWN0aW9uID0gZGlyO1xuICAgICAgXG4gICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLnF1ZXJ5KHRoaXMuY3JpdGVyaWEpLnBpcGUoXG4gICAgICAgIG1hcCgoeyBkYXRhOiB7IGF1ZGl0TXNBdWRpdFRyYWlsOiBkYXRhIH19KSA9PiAoeyBkYXRhIH0pKVxuICAgICAgKTtcbiAgICB9LFxuICB9O1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY3JpdGVyaWE6IEF1ZGl0VHJhaWxDcml0ZXJpYSA9IHsgc29ydEJ5OiAnY3JlYXRlZEF0Jywgc29ydERpcmVjdGlvbjogJ2Rlc2MnLCBwYWdlOiAwLCBwYWdlU2l6ZTogNTAgfTtcbiAgcHJvdGVjdGVkIGdyaWRBcGk/OiBHcmlkQXBpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBBdHRyaWJ1dGUoJ2lkJykgcHVibGljIGlkOiBzdHJpbmcsXG4gICAgQEF0dHJpYnV0ZSgnbWFpblVybCcpIHByb3RlY3RlZCB1cmw6IHN0cmluZyxcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHNlcnZpY2U6IEF1ZGl0U2VydmljZVxuICApIHsgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhlOiBTaW1wbGVDaGFuZ2VzKTogdm9pZHtcbiAgICBpZiAoZVsndGFnS2V5cyddKSB0aGlzLmNyaXRlcmlhLnRhZ0tleXMgPSB0aGlzLnRhZ0tleXM7XG4gICAgaWYgKGVbJ3JlbGF0ZWRFbnRpdGllcyddKSB0aGlzLmNyaXRlcmlhLnJlbGF0ZWRFbnRpdGllcyA9IHRoaXMucmVsYXRlZEVudGl0aWVzO1xuICB9XG5cbiAgcHVibGljIHNldEdyaWRBcGkoeyBhcGkgfTogR3JpZFJlYWR5RXZlbnQpOiB2b2lkeyB0aGlzLmdyaWRBcGkgPSBhcGk7IH1cblxuICBwdWJsaWMgcm93Q2xpY2tlZCh7IGd1aWQgfTogQXVkaXRUcmFpbCk6IHZvaWR7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWyBgJHsgdGhpcy51cmwgfS8keyB0aGlzLmNyaXRlcmlhLnRhZ1ZhbHVlcyFbMF0gfS9hdWRpdC8keyBndWlkIH1gIF0sIHsgcHJlc2VydmVGcmFnbWVudDogdHJ1ZSB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2goeyBkYXRhIH06IEZpbHRlclNlYXJjaEV2ZW50KTogdm9pZHtcbiAgICB0aGlzLmNyaXRlcmlhLmRlc2NyaXB0aW9uID0gZGF0YT8uZGVzY3JpcHRpb247XG4gICAgdGhpcy5ncmlkQ29tcG9uZW50LnJlc2V0KCk7XG4gIH1cblxuICBwdWJsaWMgc2V0R3VpZChndWlkOiBzdHJpbmcpOiB2b2lke1xuICAgIHRoaXMuY3JpdGVyaWEuZGVzY3JpcHRpb24gPSBudWxsO1xuICAgIHRoaXMuY3JpdGVyaWEudGFnVmFsdWVzID0gWyBndWlkIF07XG4gICAgdGhpcy5ncmlkQ29tcG9uZW50LnJlc2V0KCk7IFxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmQgcHgtNCBwYi00IGZsZXgtc2hyaW5rLTBcIj5cbiAgICA8dXAtZmlsdGVyIGNsYXNzPVwidy0xMDBcIiBpZD1cImF1ZGl0LWZpbHRlclwiIHBsYWNlaG9sZGVyPVwiVHlwZSB0byBzZWFyY2hcIiBbY29uZmlnXT1cImZpbHRlckNvbmZpZ1wiIChvblNlYXJjaCk9XCJzZWFyY2goJGV2ZW50KTtcIiAvPlxuPC9kaXY+XG4gICAgICAgICAgXG48dXAtcGFnaW5hdGlvbi1ncmlkIGlkPVwiZ3JpZC1hdWRpdFwiIGNsYXNzPVwiZmxleC1ncm93LTFcIiBbY29uZmlnXT1cImdyaWRDb25maWdcIiAob25HcmlkUmVhZHkpPVwic2V0R3JpZEFwaSgkZXZlbnQpXCIgKG9uUm93Q2xpY2spPVwicm93Q2xpY2tlZCgkZXZlbnQpXCIgLz5cbiJdfQ==
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { gql } from 'apollo-angular';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "apollo-angular";
|
|
5
|
-
export class AuditService {
|
|
6
|
-
constructor(apollo) {
|
|
7
|
-
this.apollo = apollo;
|
|
8
|
-
this.baseAttr = `
|
|
9
|
-
action
|
|
10
|
-
createdAt
|
|
11
|
-
description
|
|
12
|
-
function
|
|
13
|
-
guid
|
|
14
|
-
msSource
|
|
15
|
-
sourceIp
|
|
16
|
-
user {
|
|
17
|
-
name
|
|
18
|
-
sourcePlatform
|
|
19
|
-
status
|
|
20
|
-
appLoginPrincipal {
|
|
21
|
-
principalType
|
|
22
|
-
principalId
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
`;
|
|
26
|
-
}
|
|
27
|
-
query(input, extraAttr = '') {
|
|
28
|
-
return this.apollo.query({
|
|
29
|
-
variables: { input },
|
|
30
|
-
query: gql `
|
|
31
|
-
query QueryAudit($input: AuditTrailCriteria!) {
|
|
32
|
-
auditMsAuditTrail(input: $input) {
|
|
33
|
-
${this.baseAttr}
|
|
34
|
-
${extraAttr}
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
`
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuditService, deps: [{ token: i1.Apollo }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
41
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuditService, providedIn: 'root' }); }
|
|
42
|
-
}
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuditService, decorators: [{
|
|
44
|
-
type: Injectable,
|
|
45
|
-
args: [{
|
|
46
|
-
providedIn: 'root'
|
|
47
|
-
}]
|
|
48
|
-
}], ctorParameters: () => [{ type: i1.Apollo }] });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9hdWRpdC9zZXJ2aWNlL2F1ZGl0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQVUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU03QyxNQUFNLE9BQU8sWUFBWTtJQXFCdkIsWUFDcUIsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFwQmhCLGFBQVEsR0FBVzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQnJDLENBQUM7SUFJRSxDQUFDO0lBRUUsS0FBSyxDQUFDLEtBQXlCLEVBQUUsWUFBb0IsRUFBRTtRQUM1RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQ3ZCLFNBQVMsRUFBRSxFQUFFLEtBQUssRUFBRTtZQUNwQixLQUFLLEVBQUUsR0FBRyxDQUFBOzs7Y0FHRCxJQUFJLENBQUMsUUFBUztjQUNkLFNBQVU7OztPQUdsQjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBckNVLFlBQVk7bUhBQVosWUFBWSxjQUZYLE1BQU07OzRGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXBvbGxvUXVlcnlSZXN1bHQgfSBmcm9tICdAYXBvbGxvL2NsaWVudC9jb3JlJztcbmltcG9ydCB7IEFwb2xsbywgZ3FsIH0gZnJvbSAnYXBvbGxvLWFuZ3VsYXInO1xuaW1wb3J0IHsgQXVkaXRUcmFpbCwgQXVkaXRUcmFpbENyaXRlcmlhIH0gZnJvbSAnLi8uLi8uLi8uLi8uLi9ncmFwaHFsL2dlbmVyYXRlZCc7XG5cbkBJbmplY3RhYmxlKHsgXG4gIHByb3ZpZGVkSW46ICdyb290JyBcbn0pXG5leHBvcnQgY2xhc3MgQXVkaXRTZXJ2aWNlIHtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYmFzZUF0dHI6IHN0cmluZyA9IGBcbiAgICBhY3Rpb25cbiAgICBjcmVhdGVkQXRcbiAgICBkZXNjcmlwdGlvblxuICAgIGZ1bmN0aW9uXG4gICAgZ3VpZFxuICAgIG1zU291cmNlXG4gICAgc291cmNlSXBcbiAgICB1c2VyIHtcbiAgICAgIG5hbWVcbiAgICAgIHNvdXJjZVBsYXRmb3JtXG4gICAgICBzdGF0dXNcbiAgICAgIGFwcExvZ2luUHJpbmNpcGFsIHtcbiAgICAgICAgcHJpbmNpcGFsVHlwZVxuICAgICAgICBwcmluY2lwYWxJZFxuICAgICAgfVxuICAgIH1cbiAgYDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXBvbGxvOiBBcG9sbG9cbiAgKSB7IH1cblxuICBwdWJsaWMgcXVlcnkoaW5wdXQ6IEF1ZGl0VHJhaWxDcml0ZXJpYSwgZXh0cmFBdHRyOiBzdHJpbmcgPSAnJyk6IE9ic2VydmFibGU8QXBvbGxvUXVlcnlSZXN1bHQ8eyBhdWRpdE1zQXVkaXRUcmFpbDogQXVkaXRUcmFpbFtdIH0+PiB7XG4gICAgcmV0dXJuIHRoaXMuYXBvbGxvLnF1ZXJ5KHtcbiAgICAgIHZhcmlhYmxlczogeyBpbnB1dCB9LFxuICAgICAgcXVlcnk6IGdxbGBcbiAgICAgICAgcXVlcnkgUXVlcnlBdWRpdCgkaW5wdXQ6IEF1ZGl0VHJhaWxDcml0ZXJpYSEpIHtcbiAgICAgICAgICBhdWRpdE1zQXVkaXRUcmFpbChpbnB1dDogJGlucHV0KSB7XG4gICAgICAgICAgICAkeyB0aGlzLmJhc2VBdHRyIH1cbiAgICAgICAgICAgICR7IGV4dHJhQXR0ciB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICBgXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtZGV0YWlsLWZvcm0udHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9hdWRpdC90eXBlcy9hdWRpdC1kZXRhaWwtZm9ybS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuZXhwb3J0IHR5cGUgQXVkaXREZXRhaWxGb3JtID0ge1xuICBndWlkOiBGb3JtQ29udHJvbDxzdHJpbmcgfCBudWxsPjtcbiAgYWN0aW9uOiBGb3JtQ29udHJvbDxzdHJpbmcgfCBudWxsPjtcbiAgZGVzY3JpcHRpb246IEZvcm1Db250cm9sPHN0cmluZyB8IG51bGw+O1xuICB1c2VyTmFtZTogRm9ybUNvbnRyb2w8c3RyaW5nIHwgbnVsbD47XG4gIHNvdXJjZUlwOiBGb3JtQ29udHJvbDxzdHJpbmcgfCBudWxsPjtcbiAgY3JlYXRlZEF0OiBGb3JtQ29udHJvbDxzdHJpbmcgfCBudWxsPjtcbiAgbXNTb3VyY2U6IEZvcm1Db250cm9sPHN0cmluZyB8IG51bGw+O1xuICBzb3VyY2VQbGF0Zm9ybTogRm9ybUNvbnRyb2w8c3RyaW5nIHwgbnVsbD47XG4gIGZ1bmN0aW9uOiBGb3JtQ29udHJvbDxzdHJpbmcgfCBudWxsPjtcbn1cbiJdfQ==
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { Attribute, ChangeDetectionStrategy, Component, HostBinding, input } from '@angular/core';
|
|
2
|
-
import { IonicModule } from '@ionic/angular';
|
|
3
|
-
import { ButtonLoadingComponent } from '../loading/btn-loading.component';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@ionic/angular";
|
|
6
|
-
export class ButtonGroupComponent {
|
|
7
|
-
constructor(id, popoverCtrl) {
|
|
8
|
-
this.id = id;
|
|
9
|
-
this.popoverCtrl = popoverCtrl;
|
|
10
|
-
this.config = input.required();
|
|
11
|
-
this.isHidden = false;
|
|
12
|
-
this.activeIndex = 0;
|
|
13
|
-
}
|
|
14
|
-
ngOnChanges(changes) {
|
|
15
|
-
if (changes['config']) {
|
|
16
|
-
this.isHidden = this.config().length <= 0;
|
|
17
|
-
this.activeIndex = 0;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
clickBtn(b) {
|
|
21
|
-
this.config()[this.activeIndex].onClick(b);
|
|
22
|
-
}
|
|
23
|
-
change(i) {
|
|
24
|
-
this.activeIndex = i;
|
|
25
|
-
this.popoverCtrl.dismiss();
|
|
26
|
-
}
|
|
27
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonGroupComponent, deps: [{ token: 'id', attribute: true }, { token: i1.PopoverController }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ButtonGroupComponent, isStandalone: true, selector: "up-btn-group", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "class.d-none": "this.isHidden" } }, usesOnChanges: true, ngImport: i0, template: "@if (config().length > 0) {\n @let c = config();\n\n <up-btn-loading class=\"flex-grow-1\" [class.multi]=\"config.length > 1\" [type]=\"c[activeIndex].type\" [disabled]=\"c[activeIndex].disabled\" [form]=\"c[activeIndex].form\" [color]=\"c[activeIndex].color\" (onClick)=\"clickBtn($event);\">\n @if (c[activeIndex].icon) {\n <ion-icon class=\"me-2\" name=\"{{ c[activeIndex].icon }}\" />\n }\n {{ c[activeIndex].label }}\n </up-btn-loading>\n\n @defer (when config().length > 1) {\n @if (config().length > 1) {\n <ion-button class=\"flex-shrink-0\" id=\"btn-{{ id }}\" [color]=\"c[activeIndex].color\">\n <ion-icon name=\"caret-down-outline\" />\n </ion-button>\n\n <ion-popover trigger=\"btn-{{ id }}\" triggerAction=\"click\">\n <ng-template>\n @for (c of c; track $index; let i = $index) {\n <div class=\"item px-2 py-3 cursor-pointer border-bottom d-flex gap-2\" (click)=\"change(i);\">\n <div class=\"icon flex-shrink-0\">\n @if (i === activeIndex) {\n <ion-icon name=\"checkmark\" />\n }\n </div>\n\n <div class=\"flex-grow-1\">\n <div class=\"fw-medium\">{{ c.label }}</div>\n\n @if (c.description) {\n <div class=\"f12 pt-1\">\n {{ c.description }}\n </div>\n }\n </div>\n </div>\n }\n </ng-template>\n </ion-popover>\n }\n }\n}\n", styles: [":host{display:flex}up-btn-loading.multi ::ng-deep ion-button{--border-radius: 4px 0 0 4px}ion-button::part(native){border-radius:0 4px 4px 0;border-left:1px solid rgba(255,255,255,.3)}.item:hover{color:#ed6b26;background:#fef3ee}.item ion-icon{--ionicon-stroke-width: 64px}.item .icon{width:14px}.item .f12{color:#616161}\n"], dependencies: [{ kind: "ngmodule", type: IonicModule }, { kind: "component", type: i1.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: ButtonLoadingComponent, selector: "up-btn-loading", inputs: ["disabled", "form", "type", "fill", "color"], outputs: ["onClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, deferBlockDependencies: [() => [i1.IonButton, i1.IonIcon, i1.IonPopover]] }); }
|
|
29
|
-
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonGroupComponent, decorators: [{
|
|
31
|
-
type: Component,
|
|
32
|
-
args: [{ standalone: true, selector: 'up-btn-group', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
33
|
-
IonicModule,
|
|
34
|
-
ButtonLoadingComponent
|
|
35
|
-
], template: "@if (config().length > 0) {\n @let c = config();\n\n <up-btn-loading class=\"flex-grow-1\" [class.multi]=\"config.length > 1\" [type]=\"c[activeIndex].type\" [disabled]=\"c[activeIndex].disabled\" [form]=\"c[activeIndex].form\" [color]=\"c[activeIndex].color\" (onClick)=\"clickBtn($event);\">\n @if (c[activeIndex].icon) {\n <ion-icon class=\"me-2\" name=\"{{ c[activeIndex].icon }}\" />\n }\n {{ c[activeIndex].label }}\n </up-btn-loading>\n\n @defer (when config().length > 1) {\n @if (config().length > 1) {\n <ion-button class=\"flex-shrink-0\" id=\"btn-{{ id }}\" [color]=\"c[activeIndex].color\">\n <ion-icon name=\"caret-down-outline\" />\n </ion-button>\n\n <ion-popover trigger=\"btn-{{ id }}\" triggerAction=\"click\">\n <ng-template>\n @for (c of c; track $index; let i = $index) {\n <div class=\"item px-2 py-3 cursor-pointer border-bottom d-flex gap-2\" (click)=\"change(i);\">\n <div class=\"icon flex-shrink-0\">\n @if (i === activeIndex) {\n <ion-icon name=\"checkmark\" />\n }\n </div>\n\n <div class=\"flex-grow-1\">\n <div class=\"fw-medium\">{{ c.label }}</div>\n\n @if (c.description) {\n <div class=\"f12 pt-1\">\n {{ c.description }}\n </div>\n }\n </div>\n </div>\n }\n </ng-template>\n </ion-popover>\n }\n }\n}\n", styles: [":host{display:flex}up-btn-loading.multi ::ng-deep ion-button{--border-radius: 4px 0 0 4px}ion-button::part(native){border-radius:0 4px 4px 0;border-left:1px solid rgba(255,255,255,.3)}.item:hover{color:#ed6b26;background:#fef3ee}.item ion-icon{--ionicon-stroke-width: 64px}.item .icon{width:14px}.item .f12{color:#616161}\n"] }]
|
|
36
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
37
|
-
type: Attribute,
|
|
38
|
-
args: ['id']
|
|
39
|
-
}] }, { type: i1.PopoverController }], propDecorators: { isHidden: [{
|
|
40
|
-
type: HostBinding,
|
|
41
|
-
args: ['class.d-none']
|
|
42
|
-
}] } });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnRuLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9idXR0b25zL2dyb3VwL2J0bi1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9ucy9ncm91cC9idG4tZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBOEIsTUFBTSxlQUFlLENBQUM7QUFDOUgsT0FBTyxFQUFFLFdBQVcsRUFBcUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBYTFFLE1BQU0sT0FBTyxvQkFBb0I7SUFrQi9CLFlBTTBCLEVBQVUsRUFDZixXQUE4QjtRQUR6QixPQUFFLEdBQUYsRUFBRSxDQUFRO1FBQ2YsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBakJuQyxXQUFNLEdBQXFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNyQyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBTzFELGdCQUFXLEdBQVcsQ0FBQyxDQUFDO0lBVTNCLENBQUM7SUFFRSxXQUFXLENBQUMsT0FBc0I7UUFDdkMsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLENBQUM7SUFDSCxDQUFDO0lBUU0sUUFBUSxDQUFDLENBQXlCO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFRTSxNQUFNLENBQUMsQ0FBUztRQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzdCLENBQUM7K0dBdERVLG9CQUFvQixrQkF3QmxCLElBQUk7bUdBeEJOLG9CQUFvQiw4UkNoQmpDLDAxREEwQ0EsNFhEOUJJLFdBQVcsb01BQ1gsc0JBQXNCOzs0RkFHYixvQkFBb0I7a0JBWGhDLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLGNBQWMsbUJBR1AsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxXQUFXO3dCQUNYLHNCQUFzQjtxQkFDdkI7OzBCQTBCRSxTQUFTOzJCQUFDLElBQUk7eUVBZnNCLFFBQVE7c0JBQTlDLFdBQVc7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF0dHJpYnV0ZSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIGlucHV0LCBJbnB1dFNpZ25hbCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW9uaWNNb2R1bGUsIFBvcG92ZXJDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgQnV0dG9uR3JvdXBDb25maWcgfSBmcm9tICcuL2ludGVyZmFjZXMvYnRuLWdyb3VwLWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQnV0dG9uTG9hZGluZ0NvbXBvbmVudCB9IGZyb20gJy4uL2xvYWRpbmcvYnRuLWxvYWRpbmcuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAndXAtYnRuLWdyb3VwJyxcbiAgc3R5bGVVcmw6ICcuL2J0bi1ncm91cC5jb21wb25lbnQuc2NzcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9idG4tZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIElvbmljTW9kdWxlLFxuICAgIEJ1dHRvbkxvYWRpbmdDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBCdXR0b25Hcm91cENvbXBvbmVudCB7XG5cbiAgLyoqXG4gICAqIEFuIGlucHV0IHZhcmlhYmxlIHRoYXQgdXNlZCB0byBjb25maWd1cmF0aW9uIG9iamVjdCBmb3IgY3VzdG9taXppbmcgYnV0dG9uIGdyb3VwIHByb3BlcnRpZXMuIFRoaXNcbiAgICogb2JqZWN0IGRlZmluZWQgYnkgQnV0dG9uR3JvdXBDb25maWcgaW50ZXJmYWNlIGFsbG93cyBzcGVjaWZ5aW5nIGJ1dHRvbiBzdWNoIGFzIGljb24sXG4gICAqIGNvbG9yLCBkZXNjcmlwdGlvbiwgZGlzYWJsZWQsIGZvcm0sIGxhYmVsLCBhbmQgdHlwZVxuICAgKiBAdHlwZSB7QnV0dG9uR3JvdXBDb25maWdbXX1cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjb25maWc6IElucHV0U2lnbmFsPEJ1dHRvbkdyb3VwQ29uZmlnW10+ID0gaW5wdXQucmVxdWlyZWQoKTtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5kLW5vbmUnKSBwcm90ZWN0ZWQgaXNIaWRkZW46IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogQSBmbGFnIHZhcmlhYmxlIHRoYXQgdXNlZCB0byBjb250cm9sIHNob3dlZCBidXR0b24uIFdoZW4gc2V0IGEgbmV3IHZhbHVlLCBjdXJyZW50IGJ1dHRvblxuICAgKiBpcyBoaWRkZW4gYW5kIGFuZCBhIG5ldyBidXR0b24gaXMgc2hvd24uIERlZmF1bHQgdmFsdWUgaXMgMC5cbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIHB1YmxpYyBhY3RpdmVJbmRleDogbnVtYmVyID0gMDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBBbiBpZGVudGlmaWVyIHRoYXQgdXNlZCB0byB1bmlxdWVseSBpZGVudGlmeSBhbiBIVE1MIGVsZW1lbnQgc3VjaCBhcyBhIGlvbi1idXR0b24gYW5kXG4gICAgICogYSBpb24tcG9wb3Zlci5cbiAgICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgICAqL1xuICAgIEBBdHRyaWJ1dGUoJ2lkJykgcHVibGljIGlkOiBzdHJpbmcsXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHBvcG92ZXJDdHJsOiBQb3BvdmVyQ29udHJvbGxlclxuICApIHsgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZHtcbiAgICBpZiAoY2hhbmdlc1snY29uZmlnJ10pIHtcbiAgICAgIHRoaXMuaXNIaWRkZW4gPSB0aGlzLmNvbmZpZygpLmxlbmd0aCA8PSAwO1xuICAgICAgdGhpcy5hY3RpdmVJbmRleCA9IDA7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEEgbWV0aG9kIHRoYXQgZXhlY3V0ZXMgYW5vdGhlciBtZXRob2QgaW5zaWRlIGFjdGl2ZSBidXR0b24gZGVmaW5lZCB3aXRoaW4gQnV0dG9uR3JvdXBDb25maWdcbiAgICogaW50ZXJmYWNlIGFmdGVyIGEgYnV0dG9uIGlzIGNsaWNrZWQuIEl0IHJlY2VpdmVzIGEgQnV0dG9uTG9hZGluZ0NvbXBvbmVudCBhcyBhIHBhcmFtZXRlclxuICAgKiBhbGxvd2luZyBtb2RpZmljYXRpb24gb2YgdGhlIGFjdGl2ZSBidXR0b24uXG4gICAqIEBwYXJhbSB7QnV0dG9uTG9hZGluZ0NvbXBvbmVudH0gYiAtIENvbnRhaW4gdmFsdWVzIGZyb20gY3VycmVudCBidXR0b24uXG4gICAqL1xuICBwdWJsaWMgY2xpY2tCdG4oYjogQnV0dG9uTG9hZGluZ0NvbXBvbmVudCk6IHZvaWR7XG4gICAgdGhpcy5jb25maWcoKVt0aGlzLmFjdGl2ZUluZGV4XS5vbkNsaWNrKGIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgbWV0aG9kIHRoYXQgY2hhbmdlIHZhcmlhYmxlIGFjdGl2ZUluZGV4IHZhbHVlIHRvIGN1cnJlbnQgaW5kZXggb2YgdGhlIGFjdGl2ZSBidXR0b24gYW5kIGRpc21pc3NcbiAgICogcG9wb3Zlci4gSXQgcmVjZWl2ZXMgYSBudW1iZXIgdmFyaWFibGUgYXMgYSBwYXJhbWV0ZXIgYW5kIHRoZSB2YWx1ZSBvZiB0aGUgcGFyYW1ldGVyIHdpbGwgYmUgc2V0XG4gICAqIHRvIHZhcmlhYmxlIGFjdGl2ZUluZGV4LlxuICAgKiBAcGFyYW0ge251bWJlcn0gaSAtIE5ldyBpbmRleCBvZiB0aGUgYWN0aXZlIGJ1dHRvbi5cbiAgICovXG4gIHB1YmxpYyBjaGFuZ2UoaTogbnVtYmVyKTogdm9pZHtcbiAgICB0aGlzLmFjdGl2ZUluZGV4ID0gaTtcbiAgICB0aGlzLnBvcG92ZXJDdHJsLmRpc21pc3MoKTtcbiAgfVxufVxuIiwiQGlmIChjb25maWcoKS5sZW5ndGggPiAwKSB7XG4gICAgQGxldCBjID0gY29uZmlnKCk7XG5cbiAgICA8dXAtYnRuLWxvYWRpbmcgY2xhc3M9XCJmbGV4LWdyb3ctMVwiIFtjbGFzcy5tdWx0aV09XCJjb25maWcubGVuZ3RoID4gMVwiIFt0eXBlXT1cImNbYWN0aXZlSW5kZXhdLnR5cGVcIiBbZGlzYWJsZWRdPVwiY1thY3RpdmVJbmRleF0uZGlzYWJsZWRcIiBbZm9ybV09XCJjW2FjdGl2ZUluZGV4XS5mb3JtXCIgW2NvbG9yXT1cImNbYWN0aXZlSW5kZXhdLmNvbG9yXCIgKG9uQ2xpY2spPVwiY2xpY2tCdG4oJGV2ZW50KTtcIj5cbiAgICAgICAgQGlmIChjW2FjdGl2ZUluZGV4XS5pY29uKSB7XG4gICAgICAgICAgICA8aW9uLWljb24gY2xhc3M9XCJtZS0yXCIgbmFtZT1cInt7IGNbYWN0aXZlSW5kZXhdLmljb24gfX1cIiAvPlxuICAgICAgICB9XG4gICAgICAgIHt7IGNbYWN0aXZlSW5kZXhdLmxhYmVsIH19XG4gICAgPC91cC1idG4tbG9hZGluZz5cblxuICAgIEBkZWZlciAod2hlbiBjb25maWcoKS5sZW5ndGggPiAxKSB7XG4gICAgICAgIEBpZiAoY29uZmlnKCkubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgPGlvbi1idXR0b24gY2xhc3M9XCJmbGV4LXNocmluay0wXCIgaWQ9XCJidG4te3sgaWQgfX1cIiBbY29sb3JdPVwiY1thY3RpdmVJbmRleF0uY29sb3JcIj5cbiAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImNhcmV0LWRvd24tb3V0bGluZVwiIC8+XG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XG5cbiAgICAgICAgICAgIDxpb24tcG9wb3ZlciB0cmlnZ2VyPVwiYnRuLXt7IGlkIH19XCIgdHJpZ2dlckFjdGlvbj1cImNsaWNrXCI+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICBAZm9yIChjIG9mIGM7IHRyYWNrICRpbmRleDsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpdGVtIHB4LTIgcHktMyBjdXJzb3ItcG9pbnRlciBib3JkZXItYm90dG9tIGQtZmxleCBnYXAtMlwiIChjbGljayk9XCJjaGFuZ2UoaSk7XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImljb24gZmxleC1zaHJpbmstMFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGkgPT09IGFjdGl2ZUluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImNoZWNrbWFya1wiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LWdyb3ctMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnctbWVkaXVtXCI+e3sgYy5sYWJlbCB9fTwvZGl2PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoYy5kZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImYxMiBwdC0xXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgYy5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwvaW9uLXBvcG92ZXI+XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnRuLWdyb3VwLWNvbmZpZy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9ucy9ncm91cC9pbnRlcmZhY2VzL2J0bi1ncm91cC1jb25maWcuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdXR0b25Mb2FkaW5nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbG9hZGluZy9idG4tbG9hZGluZy5jb21wb25lbnQnO1xuXG4vKipcbiAqIEFuIEludGVyZmFjZSB0aGF0IHJlcHJlc2VudHMgYW4gZW50aXR5IHdpdGggY29uZmlnIGZvciBidXR0b24gZ3JvdXAuIFRoaXMgaW50ZXJmYWNlIGRlZmluZXNcbiAqIHByb3BlcnRpZXMgc3VjaCBhcyBpY29uLCBjb2xvciwgZGVzY3JpcHRpb24sIGRpc2FibGVkLCBmb3JtLCBsYWJlbCwgdHlwZSwgYW5kIGZ1bmN0aW9uIG9uQ2xpY2suXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnV0dG9uR3JvdXBDb25maWcge1xuICAvKipcbiAgICogQSB2YXJpYWJsZSB0aGF0IHVzZWQgdG8gYWRkIGljb24gaW4gdGhlIGJ1dHRvbi4gVGhpcyB2YXJpYWJsZSBpcyBudWxsYWJsZSBhbmQgaWYgdGhlIHZhbHVlIGlzXG4gICAqIG51bGwsIGl0IHdpbGwgc2hvdyB0aGUgdGV4dCBvbmx5LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKi9cbiAgaWNvbj86IHN0cmluZyxcblxuICAvKipcbiAgICogQSB2YXJpYWJsZSB0aGF0IHVzZWQgdG8gc2V0IHRoZSBidXR0b24gY29sb3IuIFRoaXMgdmFyaWFibGUgaXMgbnVsbGFibGUgYW5kIGlmIHRoZSB2YWx1ZSBpc1xuICAgKiBudWxsLCBpdCB3aWxsIHNldCB0aGUgY29sb3IgdG8gJ3ByaW1hcnknLlxuICAgKiBAdHlwZSB7J3ByaW1hcnknIHwgJ3NlY29uZGFyeScgfCAndGVydGlhcnknIHwgJ3N1Y2Nlc3MnIHwgJ3dhcm5pbmcnIHwgJ2RhbmdlcicgfCAnbGlnaHQnIHwgJ21lZGl1bScgfCAnZGFyayd9XG4gICAqL1xuICBjb2xvcj86ICdwcmltYXJ5JyB8ICdzZWNvbmRhcnknIHwgJ3RlcnRpYXJ5JyB8ICdzdWNjZXNzJyB8ICd3YXJuaW5nJyB8ICdkYW5nZXInIHwgJ2xpZ2h0JyB8ICdtZWRpdW0nIHwgJ2RhcmsnO1xuXG4gIC8qKlxuICAgKiBBIHZhcmlhYmxlIHRoYXQgdXNlZCB0byBzZXQgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBidXR0b24gd2lsbCBkbyBpbiBwb3BvdmVyLiBUaGlzIHZhcmlhYmxlXG4gICAqIGlzIG51bGxhYmxlIGFuZCBpZiB0aGUgdmFsdWUgaXMgbnVsbCwgaXQgd2lsbCBvbmx5IHNob3cgdGhlIGJ1dHRvbiBsYWJlbCB3aXRob3V0IGRlc2NyaXB0aW9uLlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFuIHZhcmlhYmxlIHRoYXQgdXNlZCB0byBjb250cm9sIHNob3dlZCBidXR0b24uIFdoZW4gc2V0IHRoZSB2YWx1ZSB0byB0cnVlLCB0aGUgYnV0dG9uIHdpbGwgYmVcbiAgICogZGlzYWJsZWQgYW5kIGNhbm5vdCBiZSBjbGlja2VkLiBXaGVuIHNldCB0aGUgdmFsdWUgdG8gZmFsc2UsIHRoZSBidXR0b24gd2lsbCBiZSBlbmFibGVkIGFuZCBjYW5cbiAgICogYmUgY2xpY2tlZC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqL1xuICBkaXNhYmxlZDogYm9vbGVhbjtcblxuICAvKipcbiAgICogQW4gdmFyaWFibGUgdGhhdCB1c2VkIHRvIHNldCBmb3JtIHRvIGJ1dHRvbi4gVGhpcyB2YXJpYWJsZSBpcyBudWxsYWJsZSBhbmQgaWYgdGhlIHZhbHVlIGlzIG51bGwsXG4gICAqIGl0IHdpbGwgbm90IGluIGFueSBmb3JtLlxuICAgKiBAdHlwZSB7SFRNTEZvcm1FbGVtZW50IHwgc3RyaW5nfVxuICAgKi9cbiAgZm9ybT86IEhUTUxGb3JtRWxlbWVudCB8IHN0cmluZztcblxuICAvKipcbiAgICogQW4gdmFyaWFibGUgdGhhdCB1c2VkIHRvIHNldCB0ZXh0IGluIGJ1dHRvbi5cbiAgICogQHR5cGUgeyBzdHJpbmd9XG4gICAqL1xuICBsYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIHZhcmlhYmxlIHRoYXQgdXNlZCB0byBzZXQgdGhlIHR5cGUgb2YgdGhlIGJ1dHRvbi4gVGhpcyB2YXJpYWJsZSBpcyBudWxsYWJsZSBhbmQgaWYgdGhlIHZhbHVlIGlzXG4gICAqIG51bGwsIGl0IHdpbGwgc2V0IHRoZSB0eXBlIHRvICdidXR0b24nLlxuICAgKiBAdHlwZSB7J2J1dHRvbicgfCAncmVzZXQnIHwgJ3N1Ym1pdCd9XG4gICAqL1xuICB0eXBlPzogJ2J1dHRvbicgfCAncmVzZXQnIHwgJ3N1Ym1pdCc7XG5cbiAgLyoqXG4gICAqIEEgbWV0aG9kIHRoYXQgcGVyZm9ybXMgbmVjZXNzYXJ5IGFjdGlvbnMgYWZ0ZXIgYSBidXR0b24gaXMgY2xpY2tlZC4gSXQgcmVjZWl2ZXMgYSBCdXR0b25Mb2FkaW5nQ29tcG9uZW50XG4gICAqIGFzIGEgcGFyYW1ldGVyIGFsbG93aW5nIG1vZGlmaWNhdGlvbiBvZiB0aGUgYWN0aXZlIGJ1dHRvbi5cbiAgICogQHBhcmFtIHtCdXR0b25Mb2FkaW5nQ29tcG9uZW50fSBiIC0gQ29udGFpbiB2YWx1ZXMgZnJvbSBjdXJyZW50IGJ1dHRvbi5cbiAgICovXG4gIG9uQ2xpY2s6IChiOiBCdXR0b25Mb2FkaW5nQ29tcG9uZW50KSA9PiB2b2lkO1xufVxuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export { ButtonGroupComponent } from './group/btn-group.component';
|
|
2
|
-
export { ButtonLoadingComponent } from './loading/btn-loading.component';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEJ1dHRvbkdyb3VwQ29uZmlnIH0gZnJvbSAnLi9ncm91cC9pbnRlcmZhY2VzL2J0bi1ncm91cC1jb25maWcuaW50ZXJmYWNlJztcbmV4cG9ydCB7IEJ1dHRvbkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9ncm91cC9idG4tZ3JvdXAuY29tcG9uZW50JztcbmV4cG9ydCB7IEJ1dHRvbkxvYWRpbmdDb21wb25lbnQgfSBmcm9tICcuL2xvYWRpbmcvYnRuLWxvYWRpbmcuY29tcG9uZW50JztcbiJdfQ==
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
-
import { IonButton, IonicModule } from '@ionic/angular';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@ionic/angular";
|
|
5
|
-
export class ButtonLoadingComponent {
|
|
6
|
-
constructor(ch) {
|
|
7
|
-
this.ch = ch;
|
|
8
|
-
this.disabled = false;
|
|
9
|
-
this.type = 'button';
|
|
10
|
-
this.fill = 'solid';
|
|
11
|
-
this.color = 'primary';
|
|
12
|
-
this.onClick = new EventEmitter();
|
|
13
|
-
this.isLoading = false;
|
|
14
|
-
}
|
|
15
|
-
clickBtn() {
|
|
16
|
-
this.onClick.emit(this);
|
|
17
|
-
this.toggleLoading();
|
|
18
|
-
}
|
|
19
|
-
toggleLoading() {
|
|
20
|
-
this.isLoading = !this.isLoading;
|
|
21
|
-
this.btn.disabled = !this.btn.disabled;
|
|
22
|
-
this.ch.markForCheck();
|
|
23
|
-
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonLoadingComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ButtonLoadingComponent, isStandalone: true, selector: "up-btn-loading", inputs: { disabled: "disabled", form: "form", type: "type", fill: "fill", color: "color" }, outputs: { onClick: "onClick" }, viewQueries: [{ propertyName: "btn", first: true, predicate: IonButton, descendants: true }], ngImport: i0, template: "<ion-button type=\"{{ type }}\" fill=\"{{ fill }}\" color=\"{{ color }}\" expand=\"block\" mode=\"md\" [disabled]=\"disabled\" [form]=\"form\" (click)=\"clickBtn()\">\n @if (isLoading) {\n <ion-spinner />\n } @else {\n <ng-content select=\"ion-icon\" />\n }\n \n <ng-content />\n</ion-button>\n", styles: ["ion-spinner{width:14px;height:14px;margin-right:8px}circle{stroke-width:8}\n"], dependencies: [{ kind: "ngmodule", type: IonicModule }, { kind: "component", type: i1.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i1.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
26
|
-
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonLoadingComponent, decorators: [{
|
|
28
|
-
type: Component,
|
|
29
|
-
args: [{ standalone: true, selector: 'up-btn-loading', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
30
|
-
IonicModule
|
|
31
|
-
], template: "<ion-button type=\"{{ type }}\" fill=\"{{ fill }}\" color=\"{{ color }}\" expand=\"block\" mode=\"md\" [disabled]=\"disabled\" [form]=\"form\" (click)=\"clickBtn()\">\n @if (isLoading) {\n <ion-spinner />\n } @else {\n <ng-content select=\"ion-icon\" />\n }\n \n <ng-content />\n</ion-button>\n", styles: ["ion-spinner{width:14px;height:14px;margin-right:8px}circle{stroke-width:8}\n"] }]
|
|
32
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { disabled: [{
|
|
33
|
-
type: Input
|
|
34
|
-
}], form: [{
|
|
35
|
-
type: Input
|
|
36
|
-
}], type: [{
|
|
37
|
-
type: Input
|
|
38
|
-
}], fill: [{
|
|
39
|
-
type: Input
|
|
40
|
-
}], color: [{
|
|
41
|
-
type: Input
|
|
42
|
-
}], onClick: [{
|
|
43
|
-
type: Output
|
|
44
|
-
}], btn: [{
|
|
45
|
-
type: ViewChild,
|
|
46
|
-
args: [IonButton]
|
|
47
|
-
}] } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnRuLWxvYWRpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5pcGluLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2J1dHRvbnMvbG9hZGluZy9idG4tbG9hZGluZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9ucy9sb2FkaW5nL2J0bi1sb2FkaW5nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5SCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFZeEQsTUFBTSxPQUFPLHNCQUFzQjtJQW1EakMsWUFDcUIsRUFBcUI7UUFBckIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUE1QzFCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFZMUIsU0FBSSxHQUFtQyxRQUFRLENBQUM7UUFNaEQsU0FBSSxHQUE4QyxPQUFPLENBQUM7UUFNMUQsVUFBSyxHQUFvSCxTQUFTLENBQUM7UUFRbEksWUFBTyxHQUF5QyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBUzdFLGNBQVMsR0FBWSxLQUFLLENBQUM7SUFJOUIsQ0FBQztJQUtFLFFBQVE7UUFDYixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQU1NLGFBQWE7UUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDakMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUV2QyxJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pCLENBQUM7K0dBeEVVLHNCQUFzQjttR0FBdEIsc0JBQXNCLDRPQXlDdEIsU0FBUyxnREN0RHRCLHFVQVNBLHFJRENJLFdBQVc7OzRGQUdGLHNCQUFzQjtrQkFWbEMsU0FBUztpQ0FDSSxJQUFJLFlBQ04sZ0JBQWdCLG1CQUdULHVCQUF1QixDQUFDLE1BQU0sV0FDdEM7d0JBQ1AsV0FBVztxQkFDWjtzRkFVZSxRQUFRO3NCQUF2QixLQUFLO2dCQU1VLElBQUk7c0JBQW5CLEtBQUs7Z0JBTVUsSUFBSTtzQkFBbkIsS0FBSztnQkFNVSxJQUFJO3NCQUFuQixLQUFLO2dCQU1VLEtBQUs7c0JBQXBCLEtBQUs7Z0JBUVcsT0FBTztzQkFBdkIsTUFBTTtnQkFDeUIsR0FBRztzQkFBbEMsU0FBUzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJb25CdXR0b24sIElvbmljTW9kdWxlIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICd1cC1idG4tbG9hZGluZycsXG4gIHN0eWxlVXJsOiAnLi9idG4tbG9hZGluZy5jb21wb25lbnQuc2NzcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9idG4tbG9hZGluZy5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgSW9uaWNNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBCdXR0b25Mb2FkaW5nQ29tcG9uZW50IHtcblxuICAvKipcbiAgICogQW4gaW5wdXQgdmFyaWFibGUgdGhhdCB1c2VkIHRvIGNvbnRyb2wgc2hvd2VkIGJ1dHRvbi4gV2hlbiBzZXQgdGhlIHZhbHVlIHRvIHRydWUsIHRoZSBidXR0b25cbiAgICogd2lsbCBiZSBkaXNhYmxlZCBhbmQgY2Fubm90IGJlIHByZXNzZWQuIFdoZW4gc2V0IHRoZSB2YWx1ZSB0byBmYWxzZSwgdGhlIGJ1dHRvbiB3aWxsIGJlIGVuYWJsZWRcbiAgICogYW5kIGNhbiBiZSBwcmVzc2VkLiBEZWZhdWx0IHZhbHVlIGlzIGZhbHNlLlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBBbiBpbnB1dCB2YXJpYWJsZSB0aGF0IHVzZWQgdG8gc2V0IGZvcm0gb2YgaW9uLWJ1dHRvbi5cbiAgICogQHR5cGUge0hUTUxGb3JtRWxlbWVudCB8IHN0cmluZyB8IHVuZGVmaW5lZH1cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JtOiBIVE1MRm9ybUVsZW1lbnQgfCBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEFuIGlucHV0IHZhcmlhYmxlIHRoYXQgdXNlZCB0byBzZXQgdHlwZSBvZiBpb24tYnV0dG9uLiBEZWZhdWx0IHZhbHVlIGlzICdidXR0b24nLlxuICAgKiBAdHlwZSB7J2J1dHRvbicgfCAncmVzZXQnIHwgJ3N1Ym1pdCd9XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgdHlwZT86ICdidXR0b24nIHwgJ3Jlc2V0JyB8ICdzdWJtaXQnID0gJ2J1dHRvbic7XG5cbiAgLyoqXG4gICAqIEFuIGlucHV0IHZhcmlhYmxlIHRoYXQgdXNlZCB0byBzZXQgZmlsbCBvZiBpb24tYnV0dG9uLiBEZWZhdWx0IHZhbHVlIGlzICdzb2xpZCcuXG4gICAqIEB0eXBlIHsnY2xlYXInIHwgJ2RlZmF1bHQnIHwgJ291dGxpbmUnIHwgJ3NvbGlkJ31cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBmaWxsOiAnY2xlYXInIHwgJ2RlZmF1bHQnIHwgJ291dGxpbmUnIHwgJ3NvbGlkJyA9ICdzb2xpZCc7XG5cbiAgLyoqXG4gICAqIEFuIGlucHV0IHZhcmlhYmxlIHRoYXQgdXNlZCB0byBzZXQgY29sb3Igb2YgaW9uLWJ1dHRvbi4gRGVmYXVsdCB2YWx1ZSBpcyAncHJpbWFyeScuXG4gICAqIEB0eXBlIHsnZGFuZ2VyJyB8ICdkYXJrJyB8ICdsaWdodCcgfCAnbWVkaXVtJyB8ICdwcmltYXJ5JyB8ICdzZWNvbmRhcnknIHwgJ3N1Y2Nlc3MnIHwgJ3RlcnRpYXJ5JyB8ICd3YXJuaW5nJyB8IHN0cmluZ31cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBjb2xvcj86ICdkYW5nZXInIHwgJ2RhcmsnIHwgJ2xpZ2h0JyB8ICdtZWRpdW0nIHwgJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgfCAnc3VjY2VzcycgfCAndGVydGlhcnknIHwgJ3dhcm5pbmcnIHwgc3RyaW5nID0gJ3ByaW1hcnknO1xuXG4gIC8qKlxuICAgKiBBbiBvdXRwdXQgdmFyaWFibGUgdGhhdCB1c2VkIHRvIGVtaXRzIGV2ZW50IG9mIHR5cGUgQnV0dG9uTG9hZGluZ0NvbXBvbmVudCB3aGVuIGNsaWNrZWQuIFRoaXNcbiAgICogb3V0cHV0IHZhcmlhYmxlLCB3aGVuIHN1YnNjcmliZWQgdG8sIGVtaXRzIGV2ZW50cyBjb250YWluaW5nIGluc3RhbmNlcyBvZiBCdXR0b25Mb2FkaW5nQ29tcG9uZW50XG4gICAqIG9yIGl0cyBzdWJjbGFzcy5cbiAgICogQHR5cGUge0V2ZW50RW1pdHRlcjxCdXR0b25Mb2FkaW5nQ29tcG9uZW50Pn1cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgb25DbGljazogRXZlbnRFbWl0dGVyPEJ1dHRvbkxvYWRpbmdDb21wb25lbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAVmlld0NoaWxkKElvbkJ1dHRvbikgcHJvdGVjdGVkIGJ0biE6IElvbkJ1dHRvbjtcblxuICAvKipcbiAgICogQSBmbGFnIHZhcmlhYmxlIHRoYXQgdXNlZCB0byBjb250cm9sIHNob3dlZCBidXR0b24uIFdoZW4gc2V0IHRoZSB2YWx1ZSB0byB0cnVlLCB0aGUgYnV0dG9uXG4gICAqIHdpbGwgcmVwbGFjZWQgdG8gaW9uLXNwaW5uZXIgZm9yIG1hcmtpbmcgdGhlIGFwcGxpY2F0aW9uIHN0aWxsIGxvYWRpbmcuIFdoZW4gc2V0IHRoZSB2YWx1ZVxuICAgKiB0byBmYWxzZSwgaXQgd2lsbCBzaG93biB0aGUgYnV0dG9uLiBEZWZhdWx0IHZhbHVlIGlzIGZhbHNlLlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICovXG4gIHB1YmxpYyBpc0xvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2g6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHsgfVxuXG4gIC8qKlxuICAgKiBBIG1ldGhvZCB0aGF0IGVtaXQgb25DbGljayB2YXJpYWJsZSBhbmQgY2FsbCB0b2dnbGVMb2FkaW5nIGZ1bmN0aW9uIGFmdGVyIGEgYnV0dG9uIGlzIGNsaWNrZWQuXG4gICAqL1xuICBwdWJsaWMgY2xpY2tCdG4oKTogdm9pZHtcbiAgICB0aGlzLm9uQ2xpY2suZW1pdCh0aGlzKTtcbiAgICB0aGlzLnRvZ2dsZUxvYWRpbmcoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIG1ldGhvZCB3aGVuIGl0J3MgY2FsbGVkLCBpdCdsbCBtYWtlIGVpdGhlciB0aGUgYnV0dG9uIGlzIGluIGxvYWRpbmcgc3RhdGUgb3IgaW4gbm9ybWFsIHN0YXRlLlxuICAgKiBJZiB0aGUgY3VycmVudCBjb25kaXRpb24gaXMgbm9ybWFsIHN0YXRlLCB0aGUgYnV0dG9uIHdpbGwgYmUgaW4gbG9hZGluZyBzdGF0ZSBhbmQgdmljZSB2ZXJzYS5cbiAgICovXG4gIHB1YmxpYyB0b2dnbGVMb2FkaW5nKCk6IHZvaWR7XG4gICAgdGhpcy5pc0xvYWRpbmcgPSAhdGhpcy5pc0xvYWRpbmc7XG4gICAgdGhpcy5idG4uZGlzYWJsZWQgPSAhdGhpcy5idG4uZGlzYWJsZWQ7XG5cbiAgICB0aGlzLmNoLm1hcmtGb3JDaGVjaygpO1xuICB9XG59XG4iLCI8aW9uLWJ1dHRvbiB0eXBlPVwie3sgdHlwZSB9fVwiIGZpbGw9XCJ7eyBmaWxsIH19XCIgY29sb3I9XCJ7eyBjb2xvciB9fVwiIGV4cGFuZD1cImJsb2NrXCIgbW9kZT1cIm1kXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgW2Zvcm1dPVwiZm9ybVwiIChjbGljayk9XCJjbGlja0J0bigpXCI+XG4gICAgQGlmIChpc0xvYWRpbmcpIHtcbiAgICAgICAgPGlvbi1zcGlubmVyIC8+XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImlvbi1pY29uXCIgLz5cbiAgICB9XG4gICAgXG4gICAgPG5nLWNvbnRlbnQgLz5cbjwvaW9uLWJ1dHRvbj5cbiJdfQ==
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
|
|
2
|
-
import { RouterLink, RouterLinkActive } from '@angular/router';
|
|
3
|
-
import { IonicModule } from '@ionic/angular';
|
|
4
|
-
import { fromEvent } from 'rxjs';
|
|
5
|
-
import { APPLET_CONFIG } from './provide-applet-config.util';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../../../modules";
|
|
8
|
-
import * as i2 from "@ionic/angular";
|
|
9
|
-
export class AppletContainerComponent {
|
|
10
|
-
constructor(config, ch, permissionService) {
|
|
11
|
-
this.config = config;
|
|
12
|
-
this.ch = ch;
|
|
13
|
-
this.permissionService = permissionService;
|
|
14
|
-
this.isCollapsed = false;
|
|
15
|
-
this.isHidden = Array(this.config.containers.length).fill(true);
|
|
16
|
-
this.isMenuActive = false;
|
|
17
|
-
}
|
|
18
|
-
ngOnInit() {
|
|
19
|
-
this.sub = this.permissionService.permModules.subscribe((listPermModule) => {
|
|
20
|
-
this.isHidden = this.config.containers.map(({ permModule }) => {
|
|
21
|
-
return !listPermModule.includes(permModule);
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
this.subEvent = fromEvent(window, 'menuEvent').subscribe((event) => {
|
|
25
|
-
this.isMenuActive = event.detail.isActive;
|
|
26
|
-
this.ch.markForCheck();
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
ngOnDestroy() {
|
|
30
|
-
this.sub.unsubscribe();
|
|
31
|
-
this.subEvent.unsubscribe();
|
|
32
|
-
}
|
|
33
|
-
toggleSidenav() {
|
|
34
|
-
this.isCollapsed = !this.isCollapsed;
|
|
35
|
-
}
|
|
36
|
-
selectMenu() {
|
|
37
|
-
dispatchEvent(new CustomEvent('menuEvent', { detail: { isActive: false } }));
|
|
38
|
-
}
|
|
39
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppletContainerComponent, deps: [{ token: APPLET_CONFIG }, { token: i0.ChangeDetectorRef }, { token: i1.PermissionService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
40
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AppletContainerComponent, isStandalone: true, selector: "up-applet-container", host: { classAttribute: "d-flex h-100 w-100" }, ngImport: i0, template: "<div class=\"sidenav flex-shrink-0 h-100 py-4 d-flex flex-column\" [class.collapsed]=\"isCollapsed\" [class.show]=\"isMenuActive\">\n <div class=\"logo-container px-3 pb-3 border-bottom flex-shrink-0 position-relative d-flex align-items-center gap-3 d-none d-md-flex\">\n <img alt=\"Applet Icon\" width=\"44px\" height=\"44px\" class=\"rounded\" [src]=\"config.icon\" />\n\n <div class=\"info w-75 pe-2\">\n <div class=\"name fw-medium text-truncate\">{{ config.name }}</div>\n \n <div class=\"tenant pt-1 fw-medium\">\n v{{ config.version }}\n </div>\n </div>\n\n <button class=\"btn-close cursor-pointer position-absolute border-0 rounded-circle d-none d-md-block\" (click)=\"toggleSidenav()\">\n <ion-icon name=\"chevron-forward\" class=\"mt-1\" />\n </button>\n </div>\n\n <div class=\"flex-grow-1 px-3 pt-3 overflow-y-auto d-none d-md-block\" (click)=\"selectMenu()\">\n @for (c of config.containers; track $index) {\n <a class=\"nav align-items-center text-decoration-none gap-2 rounded mb-1 {{ isHidden[$index]? 'd-none' : 'd-flex' }}\" routerLinkActive=\"fw-medium\" title=\"{{ c.label }}\" [routerLink]=\"c.path\">\n <ion-icon name=\"{{ c.icon }}\" />\n <div class=\"text-truncate\">{{ c.label }}</div>\n </a>\n }\n </div>\n\n @if (config.enabledSetting) {\n <div class=\"flex-shrink-0 px-3 pt-3 border-top d-none d-md-block\" (click)=\"selectMenu()\">\n <a class=\"nav d-flex align-items-center text-decoration-none gap-2 rounded\" title=\"Setting\" routerLink=\"setting\" routerLinkActive=\"fw-medium\">\n <ion-icon name=\"settings\" />\n <div class=\"text-truncate\">Setting</div>\n </a>\n </div>\n }\n</div>\n\n<div class=\"flex-grow-1 w-100 overflow-y-auto\">\n <ng-content />\n</div>\n", styles: [".info{display:none}.name{font-size:16px}.tenant{color:#757575}.overflow-y-auto{overflow-y:auto;overflow-x:hidden}.sidenav{width:73px;background:#f8f9fb;transition:all .2s ease;border-right:1px solid #D1D1D1}.sidenav.collapsed{width:250px}.sidenav.collapsed .btn-close{transform:rotate(180deg)}.sidenav.collapsed .nav div,.sidenav.collapsed .info{display:block}.sidenav.show{width:250px}.sidenav.show .logo-container{display:flex!important}.sidenav.show div:not(.logo-container),.sidenav.show img,.sidenav.show .info{display:block!important}.btn-close{width:35px;height:35px;bottom:23px;right:-17px;z-index:999;transition:all .3s ease;background-color:#f8f9fb;box-shadow:0 0 .15rem #616161}.btn-close ion-icon{color:#616161;font-size:16px}@media (max-width: 768px){.btn-close{right:-18px}.btn-close ion-icon{position:absolute;right:9px;bottom:10px}}.nav{padding:12px;color:#616161;transition:all .3s ease}.nav.fw-medium,.nav:hover{background-color:#fef3ee;color:#ed6b26!important}.nav ion-icon{font-size:20px}.nav div{display:none;font-size:16px}@media (max-width: 767px){.sidenav{width:0;z-index:2;position:absolute!important}}\n"], dependencies: [{ kind: "ngmodule", type: IonicModule }, { kind: "component", type: i2.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "directive", type: i2.RouterLinkWithHrefDelegate, selector: "a[routerLink],area[routerLink]" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
41
|
-
}
|
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppletContainerComponent, decorators: [{
|
|
43
|
-
type: Component,
|
|
44
|
-
args: [{ standalone: true, selector: 'up-applet-container', changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
45
|
-
class: 'd-flex h-100 w-100'
|
|
46
|
-
}, imports: [
|
|
47
|
-
IonicModule,
|
|
48
|
-
RouterLink,
|
|
49
|
-
RouterLinkActive
|
|
50
|
-
], template: "<div class=\"sidenav flex-shrink-0 h-100 py-4 d-flex flex-column\" [class.collapsed]=\"isCollapsed\" [class.show]=\"isMenuActive\">\n <div class=\"logo-container px-3 pb-3 border-bottom flex-shrink-0 position-relative d-flex align-items-center gap-3 d-none d-md-flex\">\n <img alt=\"Applet Icon\" width=\"44px\" height=\"44px\" class=\"rounded\" [src]=\"config.icon\" />\n\n <div class=\"info w-75 pe-2\">\n <div class=\"name fw-medium text-truncate\">{{ config.name }}</div>\n \n <div class=\"tenant pt-1 fw-medium\">\n v{{ config.version }}\n </div>\n </div>\n\n <button class=\"btn-close cursor-pointer position-absolute border-0 rounded-circle d-none d-md-block\" (click)=\"toggleSidenav()\">\n <ion-icon name=\"chevron-forward\" class=\"mt-1\" />\n </button>\n </div>\n\n <div class=\"flex-grow-1 px-3 pt-3 overflow-y-auto d-none d-md-block\" (click)=\"selectMenu()\">\n @for (c of config.containers; track $index) {\n <a class=\"nav align-items-center text-decoration-none gap-2 rounded mb-1 {{ isHidden[$index]? 'd-none' : 'd-flex' }}\" routerLinkActive=\"fw-medium\" title=\"{{ c.label }}\" [routerLink]=\"c.path\">\n <ion-icon name=\"{{ c.icon }}\" />\n <div class=\"text-truncate\">{{ c.label }}</div>\n </a>\n }\n </div>\n\n @if (config.enabledSetting) {\n <div class=\"flex-shrink-0 px-3 pt-3 border-top d-none d-md-block\" (click)=\"selectMenu()\">\n <a class=\"nav d-flex align-items-center text-decoration-none gap-2 rounded\" title=\"Setting\" routerLink=\"setting\" routerLinkActive=\"fw-medium\">\n <ion-icon name=\"settings\" />\n <div class=\"text-truncate\">Setting</div>\n </a>\n </div>\n }\n</div>\n\n<div class=\"flex-grow-1 w-100 overflow-y-auto\">\n <ng-content />\n</div>\n", styles: [".info{display:none}.name{font-size:16px}.tenant{color:#757575}.overflow-y-auto{overflow-y:auto;overflow-x:hidden}.sidenav{width:73px;background:#f8f9fb;transition:all .2s ease;border-right:1px solid #D1D1D1}.sidenav.collapsed{width:250px}.sidenav.collapsed .btn-close{transform:rotate(180deg)}.sidenav.collapsed .nav div,.sidenav.collapsed .info{display:block}.sidenav.show{width:250px}.sidenav.show .logo-container{display:flex!important}.sidenav.show div:not(.logo-container),.sidenav.show img,.sidenav.show .info{display:block!important}.btn-close{width:35px;height:35px;bottom:23px;right:-17px;z-index:999;transition:all .3s ease;background-color:#f8f9fb;box-shadow:0 0 .15rem #616161}.btn-close ion-icon{color:#616161;font-size:16px}@media (max-width: 768px){.btn-close{right:-18px}.btn-close ion-icon{position:absolute;right:9px;bottom:10px}}.nav{padding:12px;color:#616161;transition:all .3s ease}.nav.fw-medium,.nav:hover{background-color:#fef3ee;color:#ed6b26!important}.nav ion-icon{font-size:20px}.nav div{display:none;font-size:16px}@media (max-width: 767px){.sidenav{width:0;z-index:2;position:absolute!important}}\n"] }]
|
|
51
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
52
|
-
type: Inject,
|
|
53
|
-
args: [APPLET_CONFIG]
|
|
54
|
-
}] }, { type: i0.ChangeDetectorRef }, { type: i1.PermissionService }] });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGV0LWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvY29udGFpbmVycy9hcHBsZXQtY29udGFpbmVyL2FwcGxldC1jb250YWluZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5pcGluLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2NvbnRhaW5lcnMvYXBwbGV0LWNvbnRhaW5lci9hcHBsZXQtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFFLE1BQU0sRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDakgsT0FBTyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQWdCLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvQyxPQUFPLEVBQUUsYUFBYSxFQUFnQixNQUFNLDhCQUE4QixDQUFDOzs7O0FBaUIzRSxNQUFNLE9BQU8sd0JBQXdCO0lBeUJuQyxZQUN5QyxNQUFvQixFQUN4QyxFQUFxQixFQUNyQixpQkFBb0M7UUFGaEIsV0FBTSxHQUFOLE1BQU0sQ0FBYztRQUN4QyxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUNyQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBckJsRCxnQkFBVyxHQUFZLEtBQUssQ0FBQztRQU83QixhQUFRLEdBQWMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQU90RSxpQkFBWSxHQUFZLEtBQUssQ0FBQztJQVFqQyxDQUFDO0lBTUUsUUFBUTtRQUNiLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxjQUF3QixFQUFFLEVBQUU7WUFDbkYsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUU7Z0JBQzVELE9BQU8sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzlDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDdEUsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztZQUMxQyxJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQU1NLFdBQVc7UUFDaEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFPTSxhQUFhO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ3ZDLENBQUM7SUFRTSxVQUFVO1FBQ2YsYUFBYSxDQUFDLElBQUksV0FBVyxDQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMvRSxDQUFDOytHQTFFVSx3QkFBd0Isa0JBMEJ6QixhQUFhO21HQTFCWix3QkFBd0IsK0hDdEJyQyx3NkRBdUNBLGtxQ0R0QkksV0FBVyw0U0FDWCxVQUFVLG9PQUNWLGdCQUFnQjs7NEZBR1Asd0JBQXdCO2tCQWZwQyxTQUFTO2lDQUNJLElBQUksWUFDTixxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixLQUFLLEVBQUUsb0JBQW9CO3FCQUM1QixXQUNRO3dCQUNQLFdBQVc7d0JBQ1gsVUFBVTt3QkFDVixnQkFBZ0I7cUJBQ2pCOzswQkE0QkUsTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEluamVjdCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlckxpbmssIFJvdXRlckxpbmtBY3RpdmUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgSW9uaWNNb2R1bGUgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUGVybWlzc2lvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9tb2R1bGVzJztcbmltcG9ydCB7IEFQUExFVF9DT05GSUcsIEFwcGxldENvbmZpZyB9IGZyb20gJy4vcHJvdmlkZS1hcHBsZXQtY29uZmlnLnV0aWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICd1cC1hcHBsZXQtY29udGFpbmVyJyxcbiAgc3R5bGVVcmw6ICcuL2FwcGxldC1jb250YWluZXIuY29tcG9uZW50LnNjc3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXBwbGV0LWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdkLWZsZXggaC0xMDAgdy0xMDAnXG4gIH0sXG4gIGltcG9ydHM6IFtcbiAgICBJb25pY01vZHVsZSxcbiAgICBSb3V0ZXJMaW5rLFxuICAgIFJvdXRlckxpbmtBY3RpdmVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBBcHBsZXRDb250YWluZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgLyoqXG4gICAqIEEgZmxhZyB2YXJpYWJsZSB0aGF0IHVzZWQgdG8gY29udHJvbCBzaWRlYmFyLiBXaGVuIHNldCB0aGUgdGhlIHZhbHVlIHRvIHRydWUsIHRoZSBjb21wb25lbnQgd2lsbCBvcGVuIHRoZSBzaWRlYmFyLlxuICAgKiB3aGVuIHNldCB0aGUgdmFsdWUgdG8gZmFsc2UsIHRoZSBjb21wb25lbnQgd2lsbCBjbG9zZSB0aGUgc2lkZWJhci5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqL1xuICBwdWJsaWMgaXNDb2xsYXBzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogQSBmbGFnIHZhcmlhYmxlIHRoYXQgdXNlZCB0byBjb250cm9sIHNpZGViYXIgbWVudS4gV2hlbiBzZXQgdmFsdWUgdG8gdHJ1ZSwgdGhlIGNvbXBvbmVudCB3aWxsIGhpZGUgdGhlIHNpZGViYXIgbWVudS5cbiAgICogV2hlbiBzZXQgZmFsc2UsIHRoZSBjb21wb25lbnQgd2lsbCBzaG93IHRoZSBzaWRlYmFyIG1lbnUuXG4gICAqIEB0eXBlIHtib29sZWFuW119XG4gICAqL1xuICBwdWJsaWMgaXNIaWRkZW46IGJvb2xlYW5bXSA9IEFycmF5KHRoaXMuY29uZmlnLmNvbnRhaW5lcnMubGVuZ3RoKS5maWxsKHRydWUpO1xuICBcbiAgLyoqXG4gICAqIEEgZmxhZyB2YXJpYWJsZSBmb3IgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIHNpZGViYXIgbWVudSBpcyBhY3RpdmUgb3Igbm90IGluIG1vYmlsZSB2aWV3LlxuICAgKiBXaGVuIHNldCBmYWxzZSB0aGUgc2lkZWJhciBtZW51IHdpbGwgYmUgaGlkZGVuXG4gICAqIEB0eXBlIHtib29sZWFuW119XG4gICAqL1xuICBwdWJsaWMgaXNNZW51QWN0aXZlOiBib29sZWFuID0gZmFsc2U7XG4gIHByb3RlY3RlZCBzdWIhOiBTdWJzY3JpcHRpb247XG4gIHByb3RlY3RlZCBzdWJFdmVudCE6IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KEFQUExFVF9DT05GSUcpIHB1YmxpYyByZWFkb25seSBjb25maWc6IEFwcGxldENvbmZpZyxcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2g6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByb3RlY3RlZCByZWFkb25seSBwZXJtaXNzaW9uU2VydmljZTogUGVybWlzc2lvblNlcnZpY2VcbiAgKSB7IH1cblxuICAvKipcbiAgICogTGlmZWN5Y2xlIGhvb2sgdG8gaW5pdGlhbGl6ZSB0aGUgY29tcG9uZW50cy5cbiAgICogU3Vic2NyaWJlcyB0byBwZXJtaXNzaW9uIGNoYW5nZXMgYW5kIHdpbmRvdyBldmVudHMuXG4gICAqL1xuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZHtcbiAgICB0aGlzLnN1YiA9IHRoaXMucGVybWlzc2lvblNlcnZpY2UucGVybU1vZHVsZXMuc3Vic2NyaWJlKChsaXN0UGVybU1vZHVsZTogc3RyaW5nW10pID0+IHtcbiAgICAgIHRoaXMuaXNIaWRkZW4gPSB0aGlzLmNvbmZpZy5jb250YWluZXJzLm1hcCgoeyBwZXJtTW9kdWxlIH0pID0+IHtcbiAgICAgICAgcmV0dXJuICFsaXN0UGVybU1vZHVsZS5pbmNsdWRlcyhwZXJtTW9kdWxlKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgdGhpcy5zdWJFdmVudCA9IGZyb21FdmVudCh3aW5kb3csICdtZW51RXZlbnQnKS5zdWJzY3JpYmUoKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgIHRoaXMuaXNNZW51QWN0aXZlID0gZXZlbnQuZGV0YWlsLmlzQWN0aXZlO1xuICAgICAgdGhpcy5jaC5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaWZlY3ljbGUgaG9vayB0byBoYW5kbGUgY29tcG9uZW50IGRlc3RydWN0aW9uLlxuICAgKiBDbGVhbnMgdXAgc3Vic2NyaXB0aW9ucyB0byBwcmV2ZW50IG1lbW9yeSBsZWFrc1xuICAgKi9cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWR7IFxuICAgIHRoaXMuc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5zdWJFdmVudC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZW4gdGhlIG1ldGhvZCBpcyBjYWxsZWQsIGl0IHdpbGwgY2hhbmdlIHRoZSB2YWx1ZSBvZiBpc0NvbGxhcHNlZCB0byBpdHMgb3Bwb3NpdGUgdmFsdWUuIFxuICAgKiBJZiBpc0NvbGxhcHNlZCBpcyBjdXJyZW50bHkgdHJ1ZSwgaXQgd2lsbCBiZSBzZXQgdG8gZmFsc2UsIGFuZCBpZiBpdCBpcyBjdXJyZW50bHkgZmFsc2UsIGl0IHdpbGwgYmUgc2V0IHRvIHRydWUuIFxuICAgKiBUaGlzIG1ldGhvZCBpcyB0eXBpY2FsbHkgdXNlZCB0byB0b2dnbGUgdGhlIHZpc2liaWxpdHkgb2YgYSBzaWRlIG5hdmlnYXRpb24gbWVudS5cbiAgICovXG4gIHB1YmxpYyB0b2dnbGVTaWRlbmF2KCk6IHZvaWR7XG4gICAgdGhpcy5pc0NvbGxhcHNlZCA9ICF0aGlzLmlzQ29sbGFwc2VkO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgbWVudSBzZWxlY3Rpb24gYnkgZGlzcGF0Y2hpbmcgYSBjdXN0b20gZXZlbnQuXG4gICAqIFRoaXMgbWV0aG9kIGlzIGNhbGxlZCB3aGVuIGEgc2lkZWJhciBtZW51IGl0ZW0gaXMgc2VsZWN0ZWQuXG4gICAqIEl0IGRpc3BhdGNoZXMgYSBjdXN0b20gJ21lbnVFdmVudCcgd2l0aCBkZXRhaWwgaW5kaWNhdGluZyB0aGUgbWVudSBpcyBpbmFjdGl2ZS5cbiAgICogVGhpcyBldmVudCBpcyB0eXBpY2FsbHkgdXNlZCB0byBjbG9zZSB0aGUgc2lkZWJhciBtZW51LlxuICAgKi9cbiAgcHVibGljIHNlbGVjdE1lbnUoKTogdm9pZHtcbiAgICBkaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgnbWVudUV2ZW50JywgeyBkZXRhaWw6IHsgaXNBY3RpdmU6IGZhbHNlIH0gfSkpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2lkZW5hdiBmbGV4LXNocmluay0wIGgtMTAwIHB5LTQgZC1mbGV4IGZsZXgtY29sdW1uXCIgW2NsYXNzLmNvbGxhcHNlZF09XCJpc0NvbGxhcHNlZFwiIFtjbGFzcy5zaG93XT1cImlzTWVudUFjdGl2ZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJsb2dvLWNvbnRhaW5lciBweC0zIHBiLTMgYm9yZGVyLWJvdHRvbSBmbGV4LXNocmluay0wIHBvc2l0aW9uLXJlbGF0aXZlIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTMgZC1ub25lIGQtbWQtZmxleFwiPlxuICAgICAgICA8aW1nIGFsdD1cIkFwcGxldCBJY29uXCIgd2lkdGg9XCI0NHB4XCIgaGVpZ2h0PVwiNDRweFwiIGNsYXNzPVwicm91bmRlZFwiIFtzcmNdPVwiY29uZmlnLmljb25cIiAvPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJpbmZvIHctNzUgcGUtMlwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWUgZnctbWVkaXVtIHRleHQtdHJ1bmNhdGVcIj57eyBjb25maWcubmFtZSB9fTwvZGl2PlxuICAgICAgICAgICAgXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGVuYW50IHB0LTEgZnctbWVkaXVtXCI+XG4gICAgICAgICAgICAgICAgdnt7IGNvbmZpZy52ZXJzaW9uIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1jbG9zZSBjdXJzb3ItcG9pbnRlciBwb3NpdGlvbi1hYnNvbHV0ZSBib3JkZXItMCByb3VuZGVkLWNpcmNsZSBkLW5vbmUgZC1tZC1ibG9ja1wiIChjbGljayk9XCJ0b2dnbGVTaWRlbmF2KClcIj5cbiAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiY2hldnJvbi1mb3J3YXJkXCIgY2xhc3M9XCJtdC0xXCIgLz5cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleC1ncm93LTEgcHgtMyBwdC0zIG92ZXJmbG93LXktYXV0byBkLW5vbmUgZC1tZC1ibG9ja1wiIChjbGljayk9XCJzZWxlY3RNZW51KClcIj5cbiAgICAgICAgQGZvciAoYyBvZiBjb25maWcuY29udGFpbmVyczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8YSBjbGFzcz1cIm5hdiBhbGlnbi1pdGVtcy1jZW50ZXIgdGV4dC1kZWNvcmF0aW9uLW5vbmUgZ2FwLTIgcm91bmRlZCBtYi0xIHt7IGlzSGlkZGVuWyRpbmRleF0/ICdkLW5vbmUnIDogJ2QtZmxleCcgfX1cIiByb3V0ZXJMaW5rQWN0aXZlPVwiZnctbWVkaXVtXCIgdGl0bGU9XCJ7eyBjLmxhYmVsIH19XCIgW3JvdXRlckxpbmtdPVwiYy5wYXRoXCI+XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJ7eyBjLmljb24gfX1cIiAvPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXRydW5jYXRlXCI+e3sgYy5sYWJlbCB9fTwvZGl2PlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICB9XG4gICAgPC9kaXY+XG5cbiAgICBAaWYgKGNvbmZpZy5lbmFibGVkU2V0dGluZykge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBweC0zIHB0LTMgYm9yZGVyLXRvcCBkLW5vbmUgZC1tZC1ibG9ja1wiIChjbGljayk9XCJzZWxlY3RNZW51KClcIj5cbiAgICAgICAgICAgIDxhIGNsYXNzPVwibmF2IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgdGV4dC1kZWNvcmF0aW9uLW5vbmUgZ2FwLTIgcm91bmRlZFwiIHRpdGxlPVwiU2V0dGluZ1wiIHJvdXRlckxpbms9XCJzZXR0aW5nXCIgcm91dGVyTGlua0FjdGl2ZT1cImZ3LW1lZGl1bVwiPlxuICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwic2V0dGluZ3NcIiAvPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXRydW5jYXRlXCI+U2V0dGluZzwvZGl2PlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICA8L2Rpdj5cbiAgICB9XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImZsZXgtZ3Jvdy0xIHctMTAwIG92ZXJmbG93LXktYXV0b1wiPlxuICAgIDxuZy1jb250ZW50IC8+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
export const APPLET_CONFIG = new InjectionToken('APPLET_CONFIG');
|
|
3
|
-
export function provideAppletConfig(config) {
|
|
4
|
-
return {
|
|
5
|
-
provide: APPLET_CONFIG,
|
|
6
|
-
useValue: config
|
|
7
|
-
};
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1hcHBsZXQtY29uZmlnLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvY29udGFpbmVycy9hcHBsZXQtY29udGFpbmVyL3Byb3ZpZGUtYXBwbGV0LWNvbmZpZy51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQVksTUFBTSxlQUFlLENBQUM7QUFFekQsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLElBQUksY0FBYyxDQUFlLGVBQWUsQ0FBQyxDQUFDO0FBZS9FLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxNQUFvQjtJQUN0RCxPQUFPO1FBQ0wsT0FBTyxFQUFFLGFBQWE7UUFDdEIsUUFBUSxFQUFFLE1BQU07S0FDakIsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IEFQUExFVF9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48QXBwbGV0Q29uZmlnPignQVBQTEVUX0NPTkZJRycpO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwcGxldENvbmZpZyB7XG4gIGljb246IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICB2ZXJzaW9uOiBzdHJpbmc7XG4gIGVuYWJsZWRTZXR0aW5nPzogYm9vbGVhbjtcbiAgY29udGFpbmVyczoge1xuICAgIGljb246IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIHBlcm1Nb2R1bGU6IHN0cmluZztcbiAgICBwYXRoOiBgLyR7IHN0cmluZyB9YDtcbiAgfVtdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUFwcGxldENvbmZpZyhjb25maWc6IEFwcGxldENvbmZpZyk6IFByb3ZpZGVye1xuICByZXR1cm4geyBcbiAgICBwcm92aWRlOiBBUFBMRVRfQ09ORklHLCBcbiAgICB1c2VWYWx1ZTogY29uZmlnIFxuICB9O1xufVxuIl19
|