@abp/ng.theme.shared 5.0.1 → 5.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{esm2015/abp-ng.theme.shared.js → esm2020/abp-ng.theme.shared.mjs} +0 -0
- package/{esm2015/extensions/abp-ng.theme.shared-extensions.js → esm2020/extensions/abp-ng.theme.shared-extensions.mjs} +0 -0
- package/esm2020/extensions/lib/adapters/date-time.adapter.mjs +44 -0
- package/{esm2015/extensions/lib/adapters/date.adapter.js → esm2020/extensions/lib/adapters/date.adapter.mjs} +4 -4
- package/{esm2015/extensions/lib/adapters/time.adapter.js → esm2020/extensions/lib/adapters/time.adapter.mjs} +4 -4
- package/{esm2015/extensions/lib/components/abstract-actions/abstract-actions.component.js → esm2020/extensions/lib/components/abstract-actions/abstract-actions.component.mjs} +4 -4
- package/{esm2015/extensions/lib/components/date-time-picker/date-time-picker.component.js → esm2020/extensions/lib/components/date-time-picker/date-time-picker.component.mjs} +5 -5
- package/esm2020/extensions/lib/components/extensible-form/extensible-form-prop.component.mjs +159 -0
- package/esm2020/extensions/lib/components/extensible-form/extensible-form.component.mjs +64 -0
- package/esm2020/extensions/lib/components/extensible-table/extensible-table.component.mjs +128 -0
- package/esm2020/extensions/lib/components/grid-actions/grid-actions.component.mjs +39 -0
- package/esm2020/extensions/lib/components/page-toolbar/page-toolbar.component.mjs +40 -0
- package/{esm2015/extensions/lib/constants/extra-properties.js → esm2020/extensions/lib/constants/extra-properties.mjs} +0 -0
- package/{esm2015/extensions/lib/directives/disabled.directive.js → esm2020/extensions/lib/directives/disabled.directive.mjs} +4 -4
- package/{esm2015/extensions/lib/directives/prop-data.directive.js → esm2020/extensions/lib/directives/prop-data.directive.mjs} +4 -4
- package/{esm2015/extensions/lib/enums/props.enum.js → esm2020/extensions/lib/enums/props.enum.mjs} +0 -0
- package/{esm2015/extensions/lib/models/actions.js → esm2020/extensions/lib/models/actions.mjs} +0 -0
- package/{esm2015/extensions/lib/models/entity-actions.js → esm2020/extensions/lib/models/entity-actions.mjs} +0 -0
- package/esm2020/extensions/lib/models/entity-props.mjs +36 -0
- package/{esm2015/extensions/lib/models/form-props.js → esm2020/extensions/lib/models/form-props.mjs} +0 -0
- package/{esm2015/extensions/lib/models/internal/object-extensions.js → esm2020/extensions/lib/models/internal/object-extensions.mjs} +0 -0
- package/{esm2015/extensions/lib/models/object-extensions.js → esm2020/extensions/lib/models/object-extensions.mjs} +0 -0
- package/{esm2015/extensions/lib/models/props.js → esm2020/extensions/lib/models/props.mjs} +0 -0
- package/{esm2015/extensions/lib/models/toolbar-actions.js → esm2020/extensions/lib/models/toolbar-actions.mjs} +0 -0
- package/{esm2015/extensions/lib/services/extensions.service.js → esm2020/extensions/lib/services/extensions.service.mjs} +4 -4
- package/{esm2015/extensions/lib/tokens/extensions.token.js → esm2020/extensions/lib/tokens/extensions.token.mjs} +0 -0
- package/{esm2015/extensions/lib/ui-extensions.module.js → esm2020/extensions/lib/ui-extensions.module.mjs} +9 -9
- package/{esm2015/extensions/lib/utils/actions.util.js → esm2020/extensions/lib/utils/actions.util.mjs} +0 -0
- package/{esm2015/extensions/lib/utils/enum.util.js → esm2020/extensions/lib/utils/enum.util.mjs} +0 -0
- package/{esm2015/extensions/lib/utils/factory.util.js → esm2020/extensions/lib/utils/factory.util.mjs} +0 -0
- package/{esm2015/extensions/lib/utils/form-props.util.js → esm2020/extensions/lib/utils/form-props.util.mjs} +0 -0
- package/{esm2015/extensions/lib/utils/localization.util.js → esm2020/extensions/lib/utils/localization.util.mjs} +0 -0
- package/{esm2015/extensions/lib/utils/props.util.js → esm2020/extensions/lib/utils/props.util.mjs} +0 -0
- package/{esm2015/extensions/lib/utils/state.util.js → esm2020/extensions/lib/utils/state.util.mjs} +2 -3
- package/{esm2015/extensions/lib/utils/typeahead.util.js → esm2020/extensions/lib/utils/typeahead.util.mjs} +0 -0
- package/{esm2015/extensions/lib/utils/validation.util.js → esm2020/extensions/lib/utils/validation.util.mjs} +0 -0
- package/{esm2015/extensions/public-api.js → esm2020/extensions/public-api.mjs} +0 -0
- package/{esm2015/lib/animations/bounce.animations.js → esm2020/lib/animations/bounce.animations.mjs} +0 -0
- package/{esm2015/lib/animations/collapse.animations.js → esm2020/lib/animations/collapse.animations.mjs} +0 -0
- package/{esm2015/lib/animations/fade.animations.js → esm2020/lib/animations/fade.animations.mjs} +0 -0
- package/{esm2015/lib/animations/index.js → esm2020/lib/animations/index.mjs} +0 -0
- package/{esm2015/lib/animations/modal.animations.js → esm2020/lib/animations/modal.animations.mjs} +0 -0
- package/{esm2015/lib/animations/slide.animations.js → esm2020/lib/animations/slide.animations.mjs} +0 -0
- package/{esm2015/lib/animations/toast.animations.js → esm2020/lib/animations/toast.animations.mjs} +0 -0
- package/esm2020/lib/components/breadcrumb/breadcrumb.component.mjs +43 -0
- package/esm2020/lib/components/breadcrumb-items/breadcrumb-items.component.mjs +19 -0
- package/esm2020/lib/components/button/button.component.mjs +97 -0
- package/esm2020/lib/components/confirmation/confirmation.component.mjs +36 -0
- package/esm2020/lib/components/http-error-wrapper/http-error-wrapper.component.mjs +59 -0
- package/{esm2015/lib/components/index.js → esm2020/lib/components/index.mjs} +0 -0
- package/{esm2015/lib/components/loader-bar/loader-bar.component.js → esm2020/lib/components/loader-bar/loader-bar.component.mjs} +6 -11
- package/{esm2015/lib/components/loading/loading.component.js → esm2020/lib/components/loading/loading.component.mjs} +5 -5
- package/{esm2015/lib/components/modal/modal-close.directive.js → esm2020/lib/components/modal/modal-close.directive.mjs} +5 -6
- package/{esm2015/lib/components/modal/modal-ref.service.js → esm2020/lib/components/modal/modal-ref.service.mjs} +4 -4
- package/esm2020/lib/components/modal/modal.component.mjs +189 -0
- package/esm2020/lib/components/toast/toast.component.mjs +55 -0
- package/esm2020/lib/components/toast-container/toast-container.component.mjs +43 -0
- package/{esm2015/lib/constants/styles.js → esm2020/lib/constants/styles.mjs} +0 -0
- package/{esm2015/lib/constants/validation.js → esm2020/lib/constants/validation.mjs} +0 -0
- package/{esm2015/lib/directives/ellipsis.directive.js → esm2020/lib/directives/ellipsis.directive.mjs} +8 -8
- package/{esm2015/lib/directives/index.js → esm2020/lib/directives/index.mjs} +0 -0
- package/esm2020/lib/directives/loading.directive.mjs +89 -0
- package/{esm2015/lib/directives/ngx-datatable-default.directive.js → esm2020/lib/directives/ngx-datatable-default.directive.mjs} +4 -4
- package/{esm2015/lib/directives/ngx-datatable-list.directive.js → esm2020/lib/directives/ngx-datatable-list.directive.mjs} +4 -4
- package/{esm2015/lib/enums/index.js → esm2020/lib/enums/index.mjs} +0 -0
- package/{esm2015/lib/enums/route-names.js → esm2020/lib/enums/route-names.mjs} +0 -0
- package/{esm2015/lib/handlers/document-dir.handler.js → esm2020/lib/handlers/document-dir.handler.mjs} +4 -4
- package/esm2020/lib/handlers/error.handler.mjs +286 -0
- package/{esm2015/lib/handlers/index.js → esm2020/lib/handlers/index.mjs} +0 -0
- package/{esm2015/lib/models/common.js → esm2020/lib/models/common.mjs} +0 -0
- package/{esm2015/lib/models/confirmation.js → esm2020/lib/models/confirmation.mjs} +0 -0
- package/esm2020/lib/models/index.mjs +7 -0
- package/esm2020/lib/models/nav-item.mjs +7 -0
- package/{esm2015/lib/models/statistics.js → esm2020/lib/models/statistics.mjs} +0 -0
- package/{esm2015/lib/models/toaster.js → esm2020/lib/models/toaster.mjs} +0 -0
- package/esm2020/lib/models/user-menu.mjs +4 -0
- package/{esm2015/lib/providers/index.js → esm2020/lib/providers/index.mjs} +0 -0
- package/{esm2015/lib/providers/ng-bootstrap-config.provider.js → esm2020/lib/providers/ng-bootstrap-config.provider.mjs} +0 -0
- package/{esm2015/lib/providers/route.provider.js → esm2020/lib/providers/route.provider.mjs} +0 -0
- package/esm2020/lib/services/abstract-menu.service.mjs +50 -0
- package/{esm2015/lib/services/confirmation.service.js → esm2020/lib/services/confirmation.service.mjs} +4 -4
- package/{esm2015/lib/services/index.js → esm2020/lib/services/index.mjs} +2 -1
- package/esm2020/lib/services/nav-items.service.mjs +17 -0
- package/esm2020/lib/services/page-alert.service.mjs +28 -0
- package/esm2020/lib/services/toaster.service.mjs +103 -0
- package/esm2020/lib/services/user-menu.service.mjs +17 -0
- package/esm2020/lib/theme-shared.module.mjs +162 -0
- package/{esm2015/lib/tokens/append-content.token.js → esm2020/lib/tokens/append-content.token.mjs} +0 -0
- package/esm2020/lib/tokens/http-error.token.mjs +14 -0
- package/{esm2015/lib/tokens/index.js → esm2020/lib/tokens/index.mjs} +0 -0
- package/{esm2015/lib/tokens/ngx-datatable-messages.token.js → esm2020/lib/tokens/ngx-datatable-messages.token.mjs} +0 -0
- package/{esm2015/lib/tokens/suppress-unsaved-changes-warning.token.js → esm2020/lib/tokens/suppress-unsaved-changes-warning.token.mjs} +0 -0
- package/{esm2015/lib/utils/date-parser-formatter.js → esm2020/lib/utils/date-parser-formatter.mjs} +5 -6
- package/{esm2015/lib/utils/index.js → esm2020/lib/utils/index.mjs} +0 -0
- package/{esm2015/lib/utils/validation-utils.js → esm2020/lib/utils/validation-utils.mjs} +0 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
- package/{esm2015/testing/abp-ng.theme.shared-testing.js → esm2020/testing/abp-ng.theme.shared-testing.mjs} +0 -0
- package/{esm2015/testing/lib/models/config.js → esm2020/testing/lib/models/config.mjs} +0 -0
- package/{esm2015/testing/lib/models/index.js → esm2020/testing/lib/models/index.mjs} +0 -0
- package/esm2020/testing/lib/theme-shared-testing.module.mjs +46 -0
- package/{esm2015/testing/public-api.js → esm2020/testing/public-api.mjs} +0 -0
- package/extensions/lib/models/entity-props.d.ts +1 -1
- package/extensions/lib/tokens/extensions.token.d.ts +1 -1
- package/extensions/package.json +5 -5
- package/fesm2015/abp-ng.theme.shared-extensions.mjs +1329 -0
- package/fesm2015/abp-ng.theme.shared-extensions.mjs.map +1 -0
- package/fesm2015/{abp-ng.theme.shared-testing.js → abp-ng.theme.shared-testing.mjs} +5 -5
- package/fesm2015/abp-ng.theme.shared-testing.mjs.map +1 -0
- package/fesm2015/{abp-ng.theme.shared.js → abp-ng.theme.shared.mjs} +174 -175
- package/fesm2015/abp-ng.theme.shared.mjs.map +1 -0
- package/{fesm2015/abp-ng.theme.shared-extensions.js → fesm2020/abp-ng.theme.shared-extensions.mjs} +80 -99
- package/fesm2020/abp-ng.theme.shared-extensions.mjs.map +1 -0
- package/fesm2020/abp-ng.theme.shared-testing.mjs +57 -0
- package/fesm2020/abp-ng.theme.shared-testing.mjs.map +1 -0
- package/fesm2020/abp-ng.theme.shared.mjs +2202 -0
- package/fesm2020/abp-ng.theme.shared.mjs.map +1 -0
- package/lib/models/index.d.ts +2 -1
- package/lib/models/user-menu.d.ts +8 -0
- package/lib/services/abstract-menu.service.d.ts +12 -0
- package/lib/services/index.d.ts +1 -0
- package/lib/services/nav-items.service.d.ts +3 -8
- package/lib/services/user-menu.service.d.ts +8 -0
- package/package.json +38 -8
- package/testing/package.json +5 -5
- package/bundles/abp-ng.theme.shared-extensions.umd.js +0 -1904
- package/bundles/abp-ng.theme.shared-extensions.umd.js.map +0 -1
- package/bundles/abp-ng.theme.shared-testing.umd.js +0 -82
- package/bundles/abp-ng.theme.shared-testing.umd.js.map +0 -1
- package/bundles/abp-ng.theme.shared.umd.js +0 -2506
- package/bundles/abp-ng.theme.shared.umd.js.map +0 -1
- package/esm2015/extensions/lib/adapters/date-time.adapter.js +0 -34
- package/esm2015/extensions/lib/components/extensible-form/extensible-form-prop.component.js +0 -164
- package/esm2015/extensions/lib/components/extensible-form/extensible-form.component.js +0 -70
- package/esm2015/extensions/lib/components/extensible-table/extensible-table.component.js +0 -134
- package/esm2015/extensions/lib/components/grid-actions/grid-actions.component.js +0 -45
- package/esm2015/extensions/lib/components/page-toolbar/page-toolbar.component.js +0 -46
- package/esm2015/extensions/lib/models/entity-props.js +0 -34
- package/esm2015/lib/components/breadcrumb/breadcrumb.component.js +0 -49
- package/esm2015/lib/components/breadcrumb-items/breadcrumb-items.component.js +0 -22
- package/esm2015/lib/components/button/button.component.js +0 -98
- package/esm2015/lib/components/confirmation/confirmation.component.js +0 -40
- package/esm2015/lib/components/http-error-wrapper/http-error-wrapper.component.js +0 -65
- package/esm2015/lib/components/modal/modal.component.js +0 -188
- package/esm2015/lib/components/toast/toast.component.js +0 -61
- package/esm2015/lib/components/toast-container/toast-container.component.js +0 -49
- package/esm2015/lib/directives/loading.directive.js +0 -90
- package/esm2015/lib/handlers/error.handler.js +0 -292
- package/esm2015/lib/models/index.js +0 -6
- package/esm2015/lib/models/nav-item.js +0 -7
- package/esm2015/lib/services/nav-items.service.js +0 -51
- package/esm2015/lib/services/page-alert.service.js +0 -26
- package/esm2015/lib/services/toaster.service.js +0 -103
- package/esm2015/lib/theme-shared.module.js +0 -165
- package/esm2015/lib/tokens/http-error.token.js +0 -10
- package/esm2015/testing/lib/theme-shared-testing.module.js +0 -43
- package/fesm2015/abp-ng.theme.shared-extensions.js.map +0 -1
- package/fesm2015/abp-ng.theme.shared-testing.js.map +0 -1
- package/fesm2015/abp-ng.theme.shared.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"abp-ng.theme.shared.umd.js","sources":["../../../../packages/theme-shared/src/lib/animations/bounce.animations.ts","../../../../packages/theme-shared/src/lib/animations/collapse.animations.ts","../../../../packages/theme-shared/src/lib/animations/fade.animations.ts","../../../../packages/theme-shared/src/lib/animations/modal.animations.ts","../../../../packages/theme-shared/src/lib/animations/slide.animations.ts","../../../../packages/theme-shared/src/lib/animations/toast.animations.ts","../../../../packages/theme-shared/src/lib/components/breadcrumb-items/breadcrumb-items.component.ts","../../../../packages/theme-shared/src/lib/components/breadcrumb-items/breadcrumb-items.component.html","../../../../node_modules/tslib/tslib.es6.js","../../../../packages/theme-shared/src/lib/components/breadcrumb/breadcrumb.component.ts","../../../../packages/theme-shared/src/lib/components/breadcrumb/breadcrumb.component.html","../../../../packages/theme-shared/src/lib/components/button/button.component.ts","../../../../packages/theme-shared/src/lib/models/confirmation.ts","../../../../packages/theme-shared/src/lib/components/confirmation/confirmation.component.ts","../../../../packages/theme-shared/src/lib/components/confirmation/confirmation.component.html","../../../../packages/theme-shared/src/lib/components/http-error-wrapper/http-error-wrapper.component.ts","../../../../packages/theme-shared/src/lib/components/http-error-wrapper/http-error-wrapper.component.html","../../../../packages/theme-shared/src/lib/components/loader-bar/loader-bar.component.ts","../../../../packages/theme-shared/src/lib/components/loading/loading.component.ts","../../../../packages/theme-shared/src/lib/tokens/suppress-unsaved-changes-warning.token.ts","../../../../packages/theme-shared/src/lib/services/confirmation.service.ts","../../../../packages/theme-shared/src/lib/components/modal/modal-ref.service.ts","../../../../packages/theme-shared/src/lib/components/modal/modal.component.ts","../../../../packages/theme-shared/src/lib/components/modal/modal.component.html","../../../../packages/theme-shared/src/lib/components/modal/modal-close.directive.ts","../../../../packages/theme-shared/src/lib/components/toast/toast.component.ts","../../../../packages/theme-shared/src/lib/components/toast/toast.component.html","../../../../packages/theme-shared/src/lib/components/toast-container/toast-container.component.ts","../../../../packages/theme-shared/src/lib/components/toast-container/toast-container.component.html","../../../../packages/theme-shared/src/lib/constants/validation.ts","../../../../packages/theme-shared/src/lib/directives/ellipsis.directive.ts","../../../../packages/theme-shared/src/lib/directives/loading.directive.ts","../../../../packages/theme-shared/src/lib/directives/ngx-datatable-default.directive.ts","../../../../packages/theme-shared/src/lib/tokens/ngx-datatable-messages.token.ts","../../../../packages/theme-shared/src/lib/directives/ngx-datatable-list.directive.ts","../../../../packages/theme-shared/src/lib/handlers/document-dir.handler.ts","../../../../packages/theme-shared/src/lib/tokens/http-error.token.ts","../../../../packages/theme-shared/src/lib/handlers/error.handler.ts","../../../../packages/theme-shared/src/lib/models/nav-item.ts","../../../../packages/theme-shared/src/lib/providers/ng-bootstrap-config.provider.ts","../../../../packages/theme-shared/src/lib/providers/route.provider.ts","../../../../packages/theme-shared/src/lib/services/nav-items.service.ts","../../../../packages/theme-shared/src/lib/services/page-alert.service.ts","../../../../packages/theme-shared/src/lib/services/toaster.service.ts","../../../../packages/theme-shared/src/lib/constants/styles.ts","../../../../packages/theme-shared/src/lib/tokens/append-content.token.ts","../../../../packages/theme-shared/src/lib/utils/date-parser-formatter.ts","../../../../packages/theme-shared/src/lib/theme-shared.module.ts","../../../../packages/theme-shared/src/lib/utils/validation-utils.ts","../../../../packages/theme-shared/src/public-api.ts","../../../../packages/theme-shared/src/abp-ng.theme.shared.ts"],"sourcesContent":["import { animate, animation, keyframes, style } from '@angular/animations';\r\n\r\nexport const bounceIn = animation(\r\n [\r\n style({ opacity: '0', display: '{{ display }}' }),\r\n animate(\r\n '{{ time}} {{ easing }}',\r\n keyframes([\r\n style({ opacity: '0', transform: '{{ transform }} scale(0.0)', offset: 0 }),\r\n style({ opacity: '0', transform: '{{ transform }} scale(0.8)', offset: 0.5 }),\r\n style({ opacity: '1', transform: '{{ transform }} scale(1.0)', offset: 1 }),\r\n ]),\r\n ),\r\n ],\r\n {\r\n params: {\r\n time: '350ms',\r\n easing: 'cubic-bezier(.7,.31,.72,1.47)',\r\n display: 'block',\r\n transform: 'translate(-50%, -50%)',\r\n },\r\n },\r\n);\r\n","import {\r\n animate,\r\n animation,\r\n trigger,\r\n state,\r\n style,\r\n transition,\r\n useAnimation,\r\n} from '@angular/animations';\r\n\r\nexport const collapseY = animation(\r\n [\r\n style({ height: '*', overflow: 'hidden', 'box-sizing': 'border-box' }),\r\n animate('{{ time }} {{ easing }}', style({ height: '0', padding: '0px' })),\r\n ],\r\n { params: { time: '350ms', easing: 'ease' } },\r\n);\r\n\r\nexport const collapseYWithMargin = animation(\r\n [\r\n style({ 'margin-top': '0' }),\r\n animate('{{ time }} {{ easing }}', style({ 'margin-left': '-100%' })),\r\n ],\r\n {\r\n params: { time: '500ms', easing: 'ease' },\r\n },\r\n);\r\n\r\nexport const collapseX = animation(\r\n [\r\n style({ width: '*', overflow: 'hidden', 'box-sizing': 'border-box' }),\r\n animate('{{ time }} {{ easing }}', style({ width: '0', padding: '0px' })),\r\n ],\r\n { params: { time: '350ms', easing: 'ease' } },\r\n);\r\n\r\nexport const expandY = animation(\r\n [\r\n style({ height: '0', overflow: 'hidden', 'box-sizing': 'border-box' }),\r\n animate('{{ time }} {{ easing }}', style({ height: '*', padding: '*' })),\r\n ],\r\n { params: { time: '350ms', easing: 'ease' } },\r\n);\r\n\r\nexport const expandYWithMargin = animation(\r\n [\r\n style({ 'margin-top': '-100%' }),\r\n animate('{{ time }} {{ easing }}', style({ 'margin-top': '0' })),\r\n ],\r\n {\r\n params: { time: '500ms', easing: 'ease' },\r\n },\r\n);\r\n\r\nexport const expandX = animation(\r\n [\r\n style({ width: '0', overflow: 'hidden', 'box-sizing': 'border-box' }),\r\n animate('{{ time }} {{ easing }}', style({ width: '*', padding: '*' })),\r\n ],\r\n { params: { time: '350ms', easing: 'ease' } },\r\n);\r\n\r\nexport const collapse = trigger('collapse', [\r\n state('collapsed', style({ height: '0', overflow: 'hidden' })),\r\n state('expanded', style({ height: '*', overflow: 'hidden' })),\r\n transition('expanded => collapsed', useAnimation(collapseY)),\r\n transition('collapsed => expanded', useAnimation(expandY)),\r\n]);\r\n\r\nexport const collapseWithMargin = trigger('collapseWithMargin', [\r\n state('collapsed', style({ 'margin-top': '-100%' })),\r\n state('expanded', style({ 'margin-top': '0' })),\r\n transition('expanded => collapsed', useAnimation(collapseYWithMargin), {\r\n params: { time: '400ms', easing: 'linear' },\r\n }),\r\n transition('collapsed => expanded', useAnimation(expandYWithMargin)),\r\n]);\r\n\r\nexport const collapseLinearWithMargin = trigger('collapseLinearWithMargin', [\r\n state('collapsed', style({ 'margin-top': '-100vh' })),\r\n state('expanded', style({ 'margin-top': '0' })),\r\n transition(\r\n 'expanded => collapsed',\r\n useAnimation(collapseYWithMargin, { params: { time: '200ms', easing: 'linear' } }),\r\n ),\r\n transition(\r\n 'collapsed => expanded',\r\n useAnimation(expandYWithMargin, { params: { time: '250ms', easing: 'linear' } }),\r\n ),\r\n]);\r\n","import { animate, animation, style } from '@angular/animations';\r\n\r\nexport const fadeIn = animation(\r\n [style({ opacity: '0' }), animate('{{ time}} {{ easing }}', style({ opacity: '1' }))],\r\n {\r\n params: { time: '350ms', easing: 'ease' },\r\n },\r\n);\r\n\r\nexport const fadeOut = animation(\r\n [style({ opacity: '1' }), animate('{{ time}} {{ easing }}', style({ opacity: '0' }))],\r\n { params: { time: '350ms', easing: 'ease' } },\r\n);\r\n\r\nexport const fadeInDown = animation(\r\n [\r\n style({ opacity: '0', transform: '{{ transform }} translateY(-20px)' }),\r\n animate(\r\n '{{ time }} {{ easing }}',\r\n style({ opacity: '1', transform: '{{ transform }} translateY(0)' }),\r\n ),\r\n ],\r\n { params: { time: '350ms', easing: 'ease', transform: '' } },\r\n);\r\n\r\nexport const fadeInUp = animation(\r\n [\r\n style({ opacity: '0', transform: '{{ transform }} translateY(20px)' }),\r\n animate(\r\n '{{ time }} {{ easing }}',\r\n style({ opacity: '1', transform: '{{ transform }} translateY(0)' }),\r\n ),\r\n ],\r\n { params: { time: '350ms', easing: 'ease', transform: '' } },\r\n);\r\n\r\nexport const fadeInLeft = animation(\r\n [\r\n style({ opacity: '0', transform: '{{ transform }} translateX(20px)' }),\r\n animate(\r\n '{{ time }} {{ easing }}',\r\n style({ opacity: '1', transform: '{{ transform }} translateX(0)' }),\r\n ),\r\n ],\r\n { params: { time: '350ms', easing: 'ease', transform: '' } },\r\n);\r\n\r\nexport const fadeInRight = animation(\r\n [\r\n style({ opacity: '0', transform: '{{ transform }} translateX(-20px)' }),\r\n animate(\r\n '{{ time }} {{ easing }}',\r\n style({ opacity: '1', transform: '{{ transform }} translateX(0)' }),\r\n ),\r\n ],\r\n { params: { time: '350ms', easing: 'ease', transform: '' } },\r\n);\r\n\r\nexport const fadeOutDown = animation(\r\n [\r\n style({ opacity: '1', transform: '{{ transform }} translateY(0)' }),\r\n animate(\r\n '{{ time }} {{ easing }}',\r\n style({ opacity: '0', transform: '{{ transform }} translateY(20px)' }),\r\n ),\r\n ],\r\n { params: { time: '350ms', easing: 'ease', transform: '' } },\r\n);\r\n\r\nexport const fadeOutUp = animation(\r\n [\r\n style({ opacity: '1', transform: '{{ transform }} translateY(0)' }),\r\n animate(\r\n '{{ time }} {{ easing }}',\r\n style({ opacity: '0', transform: '{{ transform }} translateY(-20px)' }),\r\n ),\r\n ],\r\n { params: { time: '350ms', easing: 'ease', transform: '' } },\r\n);\r\n\r\nexport const fadeOutLeft = animation(\r\n [\r\n style({ opacity: '1', transform: '{{ transform }} translateX(0)' }),\r\n animate(\r\n '{{ time }} {{ easing }}',\r\n style({ opacity: '0', transform: '{{ transform }} translateX(20px)' }),\r\n ),\r\n ],\r\n { params: { time: '350ms', easing: 'ease', transform: '' } },\r\n);\r\n\r\nexport const fadeOutRight = animation(\r\n [\r\n style({ opacity: '1', transform: '{{ transform }} translateX(0)' }),\r\n animate(\r\n '{{ time }} {{ easing }}',\r\n style({ opacity: '0', transform: '{{ transform }} translateX(-20px)' }),\r\n ),\r\n ],\r\n { params: { time: '350ms', easing: 'ease', transform: '' } },\r\n);\r\n","import { transition, trigger, useAnimation } from '@angular/animations';\r\nimport { fadeIn, fadeInDown, fadeOut } from './fade.animations';\r\n\r\nexport const fadeAnimation = trigger('fade', [\r\n transition(':enter', useAnimation(fadeIn)),\r\n transition(':leave', useAnimation(fadeOut)),\r\n]);\r\n\r\nexport const dialogAnimation = trigger('dialog', [\r\n transition(':enter', useAnimation(fadeInDown)),\r\n transition(':leave', useAnimation(fadeOut)),\r\n]);\r\n","import { animate, state, style, transition, trigger, query } from '@angular/animations';\r\nexport const slideFromBottom = trigger('slideFromBottom', [\r\n transition('* <=> *', [\r\n style({ 'margin-top': '20px', opacity: '0' }),\r\n animate('0.2s ease-out', style({ opacity: '1', 'margin-top': '0px' })),\r\n ]),\r\n]);\r\n","import { animate, query, style, transition, trigger } from '@angular/animations';\r\n\r\nexport const toastInOut = trigger('toastInOut', [\r\n transition('* <=> *', [\r\n query(\r\n ':enter',\r\n [\r\n style({ opacity: 0, transform: 'translateY(20px)' }),\r\n animate('350ms ease', style({ opacity: 1, transform: 'translateY(0)' })),\r\n ],\r\n { optional: true },\r\n ),\r\n query(':leave', animate('450ms ease', style({ opacity: 0 })), {\r\n optional: true,\r\n }),\r\n ]),\r\n]);\r\n","import { ABP } from '@abp/ng.core';\r\nimport { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'abp-breadcrumb-items',\r\n templateUrl: './breadcrumb-items.component.html',\r\n})\r\nexport class BreadcrumbItemsComponent {\r\n @Input() items: Partial<ABP.Route>[] = [];\r\n}\r\n","<ol class=\"breadcrumb\" *ngIf=\"items.length\">\r\n <li class=\"breadcrumb-item\">\r\n <a routerLink=\"/\"><i class=\"fa fa-home\"></i> </a>\r\n </li>\r\n <li\r\n *ngFor=\"let item of items; let last = last\"\r\n class=\"breadcrumb-item\"\r\n [class.active]=\"last\"\r\n aria-current=\"page\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"item.path ? linkTemplate : textTemplate; context: { $implicit: item }\"\r\n ></ng-container>\r\n </li>\r\n</ol>\r\n\r\n<ng-template #linkTemplate let-item>\r\n <a [routerLink]=\"item.path\"> {{ item.name | abpLocalization }}</a>\r\n</ng-template>\r\n\r\n<ng-template #textTemplate let-item>\r\n {{ item.name | abpLocalization }}\r\n</ng-template>\r\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { ABP, getRoutePath, RouterEvents, RoutesService, SubscriptionService, TreeNode } from '@abp/ng.core';\r\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { map, startWith } from 'rxjs/operators';\r\nimport { eThemeSharedRouteNames } from '../../enums/route-names';\r\n\r\n@Component({\r\n selector: 'abp-breadcrumb',\r\n templateUrl: './breadcrumb.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [SubscriptionService],\r\n})\r\nexport class BreadcrumbComponent implements OnInit {\r\n segments: Partial<ABP.Route>[] = [];\r\n\r\n constructor(\r\n public readonly cdRef: ChangeDetectorRef,\r\n private router: Router,\r\n private routes: RoutesService,\r\n private subscription: SubscriptionService,\r\n private routerEvents: RouterEvents,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.subscription.addOne(\r\n this.routerEvents.getNavigationEvents('End').pipe(\r\n startWith(null),\r\n map(() => this.routes.search({ path: getRoutePath(this.router) })),\r\n ),\r\n route => {\r\n this.segments = [];\r\n if (route) {\r\n let node = { parent: route } as TreeNode<ABP.Route>;\r\n\r\n while (node.parent) {\r\n node = node.parent;\r\n const { parent, children, isLeaf, path, ...segment } = node;\r\n if (!isAdministration(segment)) this.segments.unshift(segment);\r\n }\r\n\r\n this.cdRef.detectChanges();\r\n }\r\n },\r\n );\r\n }\r\n}\r\n\r\nfunction isAdministration(route: Pick<ABP.Route, 'name'>) {\r\n return route.name === eThemeSharedRouteNames.Administration;\r\n}\r\n","<abp-breadcrumb-items [items]=\"segments\"></abp-breadcrumb-items>\r\n","/* eslint-disable @angular-eslint/no-output-native */\r\nimport { ABP } from '@abp/ng.core';\r\nimport {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n Renderer2,\r\n ViewChild,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'abp-button',\r\n template: `\r\n <button\r\n #button\r\n [id]=\"buttonId\"\r\n [attr.type]=\"buttonType\"\r\n [ngClass]=\"buttonClass\"\r\n [disabled]=\"loading || disabled\"\r\n (click.stop)=\"click.next($event); abpClick.next($event)\"\r\n (focus)=\"focus.next($event); abpFocus.next($event)\"\r\n (blur)=\"blur.next($event); abpBlur.next($event)\"\r\n >\r\n <i [ngClass]=\"icon\" class=\"me-1\"></i><ng-content></ng-content>\r\n </button>\r\n `,\r\n})\r\nexport class ButtonComponent implements OnInit {\r\n @Input()\r\n buttonId = '';\r\n\r\n @Input()\r\n buttonClass = 'btn btn-primary';\r\n\r\n @Input()\r\n buttonType = 'button';\r\n\r\n @Input()\r\n iconClass?: string;\r\n\r\n @Input()\r\n loading = false;\r\n\r\n @Input()\r\n disabled: boolean | undefined = false;\r\n\r\n @Input()\r\n attributes?: ABP.Dictionary<string>;\r\n\r\n @Output() readonly click = new EventEmitter<MouseEvent>();\r\n\r\n @Output() readonly focus = new EventEmitter<FocusEvent>();\r\n\r\n @Output() readonly blur = new EventEmitter<FocusEvent>();\r\n\r\n @Output() readonly abpClick = new EventEmitter<MouseEvent>();\r\n\r\n @Output() readonly abpFocus = new EventEmitter<FocusEvent>();\r\n\r\n @Output() readonly abpBlur = new EventEmitter<FocusEvent>();\r\n\r\n @ViewChild('button', { static: true })\r\n buttonRef!: ElementRef<HTMLButtonElement>;\r\n\r\n get icon(): string {\r\n return `${this.loading ? 'fa fa-spinner fa-spin' : this.iconClass || 'd-none'}`;\r\n }\r\n\r\n constructor(private renderer: Renderer2) {}\r\n\r\n ngOnInit() {\r\n if (this.attributes) {\r\n Object.keys(this.attributes).forEach(key => {\r\n if (this.attributes?.[key]) {\r\n this.renderer.setAttribute(this.buttonRef.nativeElement, key, this.attributes[key]);\r\n }\r\n });\r\n }\r\n }\r\n}\r\n","import { LocalizationParam } from '@abp/ng.core';\r\n\r\nexport namespace Confirmation {\r\n export interface Options {\r\n id?: any;\r\n dismissible?: boolean;\r\n messageLocalizationParams?: string[];\r\n titleLocalizationParams?: string[];\r\n hideCancelBtn?: boolean;\r\n hideYesBtn?: boolean;\r\n cancelText?: LocalizationParam;\r\n yesText?: LocalizationParam;\r\n }\r\n\r\n export interface DialogData {\r\n message: LocalizationParam;\r\n title?: LocalizationParam;\r\n severity?: Severity;\r\n options?: Partial<Options>;\r\n }\r\n\r\n export type Severity = 'neutral' | 'success' | 'info' | 'warning' | 'error';\r\n\r\n export enum Status {\r\n confirm = 'confirm',\r\n reject = 'reject',\r\n dismiss = 'dismiss',\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { ReplaySubject } from 'rxjs';\r\nimport { Confirmation } from '../../models/confirmation';\r\n\r\n@Component({\r\n selector: 'abp-confirmation',\r\n templateUrl: './confirmation.component.html',\r\n styleUrls: ['./confirmation.component.scss'],\r\n})\r\nexport class ConfirmationComponent {\r\n confirm = Confirmation.Status.confirm;\r\n reject = Confirmation.Status.reject;\r\n dismiss = Confirmation.Status.dismiss;\r\n\r\n confirmation$!: ReplaySubject<Confirmation.DialogData>;\r\n\r\n clear!: (status: Confirmation.Status) => void;\r\n\r\n close(status: Confirmation.Status) {\r\n this.clear(status);\r\n }\r\n\r\n getIconClass({ severity }: Confirmation.DialogData): string {\r\n switch (severity) {\r\n case 'info':\r\n return 'fa-info-circle';\r\n case 'success':\r\n return 'fa-check-circle';\r\n case 'warning':\r\n return 'fa-exclamation-triangle';\r\n case 'error':\r\n return 'fa-times-circle';\r\n default:\r\n return 'fa-question-circle';\r\n }\r\n }\r\n}\r\n","<div class=\"confirmation\" *ngIf=\"confirmation$ | async as data\">\r\n <div\r\n class=\"confirmation-backdrop\"\r\n (click)=\"data.options?.dismissible ? close(dismiss) : null\"\r\n ></div>\r\n <div class=\"confirmation-dialog\">\r\n <div class=\"icon-container\" [ngClass]=\"data.severity\" *ngIf=\"data.severity\">\r\n <i class=\"fa icon\" [ngClass]=\"getIconClass(data)\"></i>\r\n </div>\r\n <div class=\"content\">\r\n <h1\r\n class=\"title\"\r\n *ngIf=\"data.title\"\r\n [innerHTML]=\"data.title | abpLocalization: data.options?.titleLocalizationParams\"\r\n ></h1>\r\n <p\r\n class=\"message\"\r\n *ngIf=\"data.message\"\r\n [innerHTML]=\"data.message | abpLocalization: data.options?.messageLocalizationParams\"\r\n ></p>\r\n </div>\r\n <div class=\"footer\">\r\n <button\r\n id=\"cancel\"\r\n class=\"confirmation-button confirmation-button--reject\"\r\n [innerHTML]=\"data.options?.cancelText || 'AbpUi::Cancel' | abpLocalization\"\r\n *ngIf=\"!data?.options?.hideCancelBtn\"\r\n (click)=\"close(reject)\"\r\n ></button>\r\n <button\r\n id=\"confirm\"\r\n class=\"confirmation-button confirmation-button--approve\"\r\n [innerHTML]=\"data.options?.yesText || 'AbpUi::Yes' | abpLocalization\"\r\n *ngIf=\"!data?.options?.hideYesBtn\"\r\n (click)=\"close(confirm)\"\r\n ></button>\r\n </div>\r\n </div>\r\n</div>\r\n","import { LocalizationParam, SubscriptionService } from '@abp/ng.core';\r\nimport {\r\n AfterViewInit,\r\n ApplicationRef,\r\n Component,\r\n ComponentFactoryResolver,\r\n ElementRef,\r\n EmbeddedViewRef,\r\n Injector,\r\n OnDestroy,\r\n OnInit,\r\n Type,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { fromEvent, Subject } from 'rxjs';\r\nimport { debounceTime, filter } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'abp-http-error-wrapper',\r\n templateUrl: './http-error-wrapper.component.html',\r\n styleUrls: ['http-error-wrapper.component.scss'],\r\n providers: [SubscriptionService],\r\n})\r\nexport class HttpErrorWrapperComponent implements AfterViewInit, OnDestroy, OnInit {\r\n appRef!: ApplicationRef;\r\n\r\n cfRes!: ComponentFactoryResolver;\r\n\r\n injector!: Injector;\r\n\r\n status = 0;\r\n\r\n title: LocalizationParam = 'Oops!';\r\n\r\n details: LocalizationParam = 'Sorry, an error has occured.';\r\n\r\n customComponent: Type<any> | undefined = undefined;\r\n\r\n destroy$!: Subject<void>;\r\n\r\n hideCloseIcon = false;\r\n\r\n backgroundColor!: string;\r\n\r\n isHomeShow = true;\r\n\r\n @ViewChild('container', { static: false })\r\n containerRef?: ElementRef<HTMLDivElement>;\r\n\r\n get statusText(): string {\r\n return this.status ? `[${this.status}]` : '';\r\n }\r\n\r\n constructor(private subscription: SubscriptionService) {}\r\n\r\n ngOnInit() {\r\n this.backgroundColor =\r\n window.getComputedStyle(document.body)?.getPropertyValue('background-color') || '#fff';\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.customComponent) {\r\n const customComponentRef = this.cfRes\r\n .resolveComponentFactory(this.customComponent)\r\n .create(this.injector);\r\n customComponentRef.instance.errorStatus = this.status;\r\n customComponentRef.instance.destroy$ = this.destroy$;\r\n this.appRef.attachView(customComponentRef.hostView);\r\n if (this.containerRef) {\r\n this.containerRef.nativeElement.appendChild(\r\n (customComponentRef.hostView as EmbeddedViewRef<any>).rootNodes[0],\r\n );\r\n }\r\n customComponentRef.changeDetectorRef.detectChanges();\r\n }\r\n\r\n const keyup$ = fromEvent<KeyboardEvent>(document, 'keyup').pipe(\r\n debounceTime(150),\r\n filter((key: KeyboardEvent) => key && key.key === 'Escape'),\r\n );\r\n this.subscription.addOne(keyup$, () => this.destroy());\r\n }\r\n\r\n ngOnDestroy() {\r\n this.destroy();\r\n }\r\n\r\n destroy() {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n","<div\r\n #container\r\n id=\"abp-http-error-container\"\r\n class=\"error\"\r\n [style.backgroundColor]=\"backgroundColor\"\r\n>\r\n <button\r\n *ngIf=\"!hideCloseIcon\"\r\n id=\"abp-close-button\"\r\n type=\"button\"\r\n class=\"btn-close me-2\"\r\n (click)=\"destroy()\"\r\n ></button>\r\n\r\n <div *ngIf=\"!customComponent\" class=\"row centered\">\r\n <div class=\"col-md-12\">\r\n <div class=\"error-template\">\r\n <h1>{{ statusText }} {{ title | abpLocalization }}</h1>\r\n <div class=\"error-details\">\r\n {{ details | abpLocalization }}\r\n </div>\r\n <div class=\"error-actions\">\r\n <a\r\n *ngIf=\"isHomeShow\"\r\n (click)=\"destroy()\"\r\n routerLink=\"/\"\r\n class=\"btn btn-primary btn-md mt-2\"\r\n ><span class=\"glyphicon glyphicon-home\"></span>\r\n {{ { key: '::Menu:Home', defaultValue: 'Home' } | abpLocalization }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { HttpWaitService, RouterWaitService, SubscriptionService } from '@abp/ng.core';\r\nimport { ChangeDetectorRef, Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { combineLatest, Subscription, timer } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'abp-loader-bar',\r\n template: `\r\n <div id=\"abp-loader-bar\" [ngClass]=\"containerClass\" [class.is-loading]=\"isLoading\">\r\n <div\r\n class=\"abp-progress\"\r\n [class.progressing]=\"progressLevel\"\r\n [style.width.vw]=\"progressLevel\"\r\n [ngStyle]=\"{\r\n 'background-color': color,\r\n 'box-shadow': boxShadow\r\n }\"\r\n ></div>\r\n </div>\r\n `,\r\n styleUrls: ['./loader-bar.component.scss'],\r\n providers: [SubscriptionService],\r\n})\r\nexport class LoaderBarComponent implements OnDestroy, OnInit {\r\n protected _isLoading!: boolean;\r\n\r\n @Input()\r\n set isLoading(value: boolean) {\r\n this._isLoading = value;\r\n this.cdRef.detectChanges();\r\n }\r\n get isLoading(): boolean {\r\n return this._isLoading;\r\n }\r\n\r\n @Input()\r\n containerClass = 'abp-loader-bar';\r\n\r\n @Input()\r\n color = '#77b6ff';\r\n\r\n progressLevel = 0;\r\n\r\n interval = new Subscription();\r\n\r\n timer = new Subscription();\r\n\r\n intervalPeriod = 350;\r\n\r\n stopDelay = 800;\r\n\r\n private readonly clearProgress = () => {\r\n this.progressLevel = 0;\r\n this.cdRef.detectChanges();\r\n };\r\n\r\n private readonly reportProgress = () => {\r\n if (this.progressLevel < 75) {\r\n this.progressLevel += 1 + Math.random() * 9;\r\n } else if (this.progressLevel < 90) {\r\n this.progressLevel += 0.4;\r\n } else if (this.progressLevel < 100) {\r\n this.progressLevel += 0.1;\r\n } else {\r\n this.interval.unsubscribe();\r\n }\r\n this.cdRef.detectChanges();\r\n };\r\n\r\n get boxShadow(): string {\r\n return `0 0 10px rgba(${this.color}, 0.5)`;\r\n }\r\n\r\n constructor(\r\n private router: Router,\r\n private cdRef: ChangeDetectorRef,\r\n private subscription: SubscriptionService,\r\n private httpWaitService: HttpWaitService,\r\n private routerWaitService: RouterWaitService,\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.subscribeLoading();\r\n }\r\n\r\n subscribeLoading() {\r\n this.subscription.addOne(\r\n combineLatest([this.httpWaitService.getLoading$(), this.routerWaitService.getLoading$()]),\r\n ([httpLoading, routerLoading]) => {\r\n if (httpLoading || routerLoading) this.startLoading();\r\n else this.stopLoading();\r\n },\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.interval.unsubscribe();\r\n }\r\n\r\n startLoading() {\r\n if (this.isLoading || !this.interval.closed) return;\r\n\r\n this.isLoading = true;\r\n this.progressLevel = 0;\r\n this.cdRef.detectChanges();\r\n this.interval = timer(0, this.intervalPeriod).subscribe(this.reportProgress);\r\n this.timer.unsubscribe();\r\n }\r\n\r\n stopLoading() {\r\n this.interval.unsubscribe();\r\n\r\n this.progressLevel = 100;\r\n this.isLoading = false;\r\n\r\n if (!this.timer.closed) return;\r\n\r\n this.timer = timer(this.stopDelay).subscribe(this.clearProgress);\r\n }\r\n}\r\n","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'abp-loading',\r\n template: `\r\n <div class=\"abp-loading\">\r\n <i class=\"fa fa-spinner fa-pulse abp-spinner\"></i>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n styles: [\r\n `\r\n .abp-loading {\r\n position: absolute;\r\n width: 100%;\r\n height: 100%;\r\n top: 0;\r\n left: 0;\r\n z-index: 1040;\r\n }\r\n\r\n .abp-loading .abp-spinner {\r\n position: absolute;\r\n top: 50%;\r\n left: 50%;\r\n font-size: 14px;\r\n -moz-transform: translateX(-50%) translateY(-50%);\r\n -o-transform: translateX(-50%) translateY(-50%);\r\n -ms-transform: translateX(-50%) translateY(-50%);\r\n -webkit-transform: translateX(-50%) translateY(-50%);\r\n transform: translateX(-50%) translateY(-50%);\r\n }\r\n `,\r\n ],\r\n})\r\nexport class LoadingComponent {}\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport const SUPPRESS_UNSAVED_CHANGES_WARNING = new InjectionToken<boolean>(\r\n 'SUPPRESS_UNSAVED_CHANGES_WARNING',\r\n);\r\n","import { ContentProjectionService, LocalizationParam, PROJECTION_STRATEGY } from '@abp/ng.core';\r\nimport { ComponentRef, Injectable } from '@angular/core';\r\nimport { fromEvent, Observable, ReplaySubject, Subject } from 'rxjs';\r\nimport { debounceTime, filter, takeUntil } from 'rxjs/operators';\r\nimport { ConfirmationComponent } from '../components/confirmation/confirmation.component';\r\nimport { Confirmation } from '../models/confirmation';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ConfirmationService {\r\n status$!: Subject<Confirmation.Status>;\r\n confirmation$ = new ReplaySubject<Confirmation.DialogData>(1);\r\n\r\n private containerComponentRef!: ComponentRef<ConfirmationComponent>;\r\n\r\n clear = (status: Confirmation.Status = Confirmation.Status.dismiss) => {\r\n this.confirmation$.next();\r\n this.status$.next(status);\r\n };\r\n\r\n constructor(private contentProjectionService: ContentProjectionService) {}\r\n\r\n private setContainer() {\r\n this.containerComponentRef = this.contentProjectionService.projectContent(\r\n PROJECTION_STRATEGY.AppendComponentToBody(ConfirmationComponent, {\r\n confirmation$: this.confirmation$,\r\n clear: this.clear,\r\n }),\r\n );\r\n\r\n setTimeout(() => {\r\n this.containerComponentRef.changeDetectorRef.detectChanges();\r\n }, 0);\r\n }\r\n\r\n info(\r\n message: LocalizationParam,\r\n title: LocalizationParam,\r\n options?: Partial<Confirmation.Options>,\r\n ): Observable<Confirmation.Status> {\r\n return this.show(message, title, 'info', options);\r\n }\r\n\r\n success(\r\n message: LocalizationParam,\r\n title: LocalizationParam,\r\n options?: Partial<Confirmation.Options>,\r\n ): Observable<Confirmation.Status> {\r\n return this.show(message, title, 'success', options);\r\n }\r\n\r\n warn(\r\n message: LocalizationParam,\r\n title: LocalizationParam,\r\n options?: Partial<Confirmation.Options>,\r\n ): Observable<Confirmation.Status> {\r\n return this.show(message, title, 'warning', options);\r\n }\r\n\r\n error(\r\n message: LocalizationParam,\r\n title: LocalizationParam,\r\n options?: Partial<Confirmation.Options>,\r\n ): Observable<Confirmation.Status> {\r\n return this.show(message, title, 'error', options);\r\n }\r\n\r\n show(\r\n message: LocalizationParam,\r\n title: LocalizationParam,\r\n severity?: Confirmation.Severity,\r\n options = {} as Partial<Confirmation.Options>,\r\n ): Observable<Confirmation.Status> {\r\n if (!this.containerComponentRef) this.setContainer();\r\n\r\n this.confirmation$.next({\r\n message,\r\n title,\r\n severity: severity || 'neutral',\r\n options,\r\n });\r\n\r\n this.status$ = new Subject();\r\n const { dismissible = true } = options;\r\n if (dismissible) this.listenToEscape();\r\n\r\n return this.status$;\r\n }\r\n\r\n private listenToEscape() {\r\n fromEvent<KeyboardEvent>(document, 'keyup')\r\n .pipe(\r\n takeUntil(this.status$),\r\n debounceTime(150),\r\n filter((key: KeyboardEvent) => key && key.key === 'Escape'),\r\n )\r\n .subscribe(_ => {\r\n this.clear();\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nexport type ModalDismissMode = 'hard' | 'soft';\r\n\r\nexport interface DismissableModal {\r\n dismiss(mode: ModalDismissMode): void;\r\n}\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ModalRefService {\r\n modalRefs: DismissableModal[] = [];\r\n\r\n register(modal: DismissableModal) {\r\n this.modalRefs.push(modal);\r\n }\r\n unregister(modal: DismissableModal) {\r\n const index = this.modalRefs.indexOf(modal);\r\n if (index > -1) {\r\n this.modalRefs.splice(index, 1);\r\n }\r\n }\r\n\r\n dismissAll(mode: ModalDismissMode) {\r\n this.modalRefs.forEach(modal => modal.dismiss(mode));\r\n }\r\n}\r\n","import { SubscriptionService, uuid } from '@abp/ng.core';\r\nimport {\r\n Component,\r\n ContentChild,\r\n EventEmitter,\r\n Inject,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n Output,\r\n TemplateRef,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { NgbModal, NgbModalOptions, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';\r\nimport { fromEvent, Subject } from 'rxjs';\r\nimport { debounceTime, distinctUntilChanged, filter, takeUntil } from 'rxjs/operators';\r\nimport { Confirmation } from '../../models/confirmation';\r\nimport { ConfirmationService } from '../../services/confirmation.service';\r\nimport { SUPPRESS_UNSAVED_CHANGES_WARNING } from '../../tokens/suppress-unsaved-changes-warning.token';\r\nimport { ButtonComponent } from '../button/button.component';\r\nimport { DismissableModal, ModalDismissMode, ModalRefService } from './modal-ref.service';\r\n\r\nexport type ModalSize = 'sm' | 'md' | 'lg' | 'xl';\r\n\r\n@Component({\r\n selector: 'abp-modal',\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.scss'],\r\n providers: [SubscriptionService],\r\n})\r\nexport class ModalComponent implements OnInit, OnDestroy, DismissableModal {\r\n @Input()\r\n get visible(): boolean {\r\n return this._visible;\r\n }\r\n set visible(value: boolean) {\r\n if (typeof value !== 'boolean') return;\r\n this.toggle$.next(value);\r\n }\r\n\r\n @Input()\r\n get busy(): boolean {\r\n return this._busy;\r\n }\r\n set busy(value: boolean) {\r\n if (this.abpSubmit && this.abpSubmit instanceof ButtonComponent) {\r\n this.abpSubmit.loading = value;\r\n }\r\n\r\n this._busy = value;\r\n }\r\n\r\n @Input() options: NgbModalOptions = {};\r\n\r\n @Input() suppressUnsavedChangesWarning = this.suppressUnsavedChangesWarningToken;\r\n\r\n @ViewChild('modalContent') modalContent?: TemplateRef<any>;\r\n\r\n @ContentChild('abpHeader', { static: false }) abpHeader?: TemplateRef<any>;\r\n\r\n @ContentChild('abpBody', { static: false }) abpBody?: TemplateRef<any>;\r\n\r\n @ContentChild('abpFooter', { static: false }) abpFooter?: TemplateRef<any>;\r\n\r\n @ContentChild(ButtonComponent, { static: false, read: ButtonComponent })\r\n abpSubmit?: ButtonComponent;\r\n\r\n @Output() readonly visibleChange = new EventEmitter<boolean>();\r\n\r\n @Output() readonly init = new EventEmitter<void>();\r\n\r\n @Output() readonly appear = new EventEmitter<void>();\r\n\r\n @Output() readonly disappear = new EventEmitter<void>();\r\n\r\n _visible = false;\r\n\r\n _busy = false;\r\n\r\n modalRef!: NgbModalRef;\r\n\r\n isConfirmationOpen = false;\r\n\r\n destroy$ = new Subject<void>();\r\n\r\n modalIdentifier = `modal-${uuid()}`;\r\n\r\n private toggle$ = new Subject<boolean>();\r\n\r\n get modalWindowRef() {\r\n return document.querySelector(`ngb-modal-window.${this.modalIdentifier}`);\r\n }\r\n\r\n get isFormDirty(): boolean {\r\n return Boolean(this.modalWindowRef?.querySelector('.ng-dirty'));\r\n }\r\n\r\n constructor(\r\n private confirmationService: ConfirmationService,\r\n private subscription: SubscriptionService,\r\n @Optional()\r\n @Inject(SUPPRESS_UNSAVED_CHANGES_WARNING)\r\n private suppressUnsavedChangesWarningToken: boolean,\r\n private modal: NgbModal,\r\n private modalRefService: ModalRefService,\r\n ) {\r\n this.initToggleStream();\r\n }\r\n ngOnInit(): void {\r\n this.modalRefService.register(this);\r\n }\r\n\r\n dismiss(mode: ModalDismissMode) {\r\n switch (mode) {\r\n case 'hard':\r\n this.visible = false;\r\n break;\r\n case 'soft':\r\n this.close();\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n private initToggleStream() {\r\n this.subscription.addOne(this.toggle$.pipe(debounceTime(0), distinctUntilChanged()), value =>\r\n this.toggle(value),\r\n );\r\n }\r\n\r\n private toggle(value: boolean) {\r\n this._visible = value;\r\n this.visibleChange.emit(value);\r\n\r\n if (!value) {\r\n this.modalRef?.dismiss();\r\n this.disappear.emit();\r\n this.destroy$.next();\r\n return;\r\n }\r\n\r\n setTimeout(() => this.listen(), 0);\r\n this.modalRef = this.modal.open(this.modalContent, {\r\n size: 'md',\r\n centered: false,\r\n keyboard: false,\r\n scrollable: true,\r\n beforeDismiss: () => {\r\n if (!this.visible) return true;\r\n\r\n this.close();\r\n return !this.visible;\r\n },\r\n ...this.options,\r\n windowClass: `${this.options.windowClass || ''} ${this.modalIdentifier}`,\r\n });\r\n\r\n this.appear.emit();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.modalRefService.unregister(this);\r\n this.toggle(false);\r\n this.destroy$.next();\r\n }\r\n\r\n close() {\r\n if (this.busy) return;\r\n\r\n if (this.isFormDirty && !this.suppressUnsavedChangesWarning) {\r\n if (this.isConfirmationOpen) return;\r\n\r\n this.isConfirmationOpen = true;\r\n this.confirmationService\r\n .warn(\r\n 'AbpUi::AreYouSureYouWantToCancelEditingWarningMessage',\r\n 'AbpUi::AreYouSure',\r\n { dismissible: false },\r\n )\r\n .subscribe((status: Confirmation.Status) => {\r\n this.isConfirmationOpen = false;\r\n if (status === Confirmation.Status.confirm) {\r\n this.visible = false;\r\n }\r\n });\r\n } else {\r\n this.visible = false;\r\n }\r\n }\r\n\r\n listen() {\r\n if (this.modalWindowRef) {\r\n fromEvent<KeyboardEvent>(this.modalWindowRef, 'keyup')\r\n .pipe(\r\n takeUntil(this.destroy$),\r\n debounceTime(150),\r\n filter((key: KeyboardEvent) => key && key.key === 'Escape'),\r\n )\r\n .subscribe(() => this.close());\r\n }\r\n\r\n fromEvent(window, 'beforeunload')\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(event => {\r\n // TODO: check this\r\n if (!this.isFormDirty || this.suppressUnsavedChangesWarning) {\r\n event.preventDefault();\r\n }\r\n });\r\n\r\n this.init.emit();\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n\r\n<ng-template #modalContent let-modal>\r\n <div *ngIf=\"abpHeader\" id=\"abp-modal-header\" class=\"modal-header\">\r\n <ng-container *ngTemplateOutlet=\"abpHeader\"></ng-container>\r\n \r\n <button\r\n id=\"abp-modal-close-button\"\r\n type=\"button\"\r\n class=\"btn-sm btn-close\"\r\n aria-label=\"Close\"\r\n (click)=\"modal.dismiss()\"\r\n ></button>\r\n </div>\r\n <div *ngIf=\"abpBody\" id=\"abp-modal-body\" class=\"modal-body\">\r\n <ng-container *ngTemplateOutlet=\"abpBody\"></ng-container>\r\n </div>\r\n <div *ngIf=\"abpFooter\" id=\"abp-modal-footer\" class=\"modal-footer\">\r\n <ng-container *ngTemplateOutlet=\"abpFooter\"></ng-container>\r\n </div>\r\n</ng-template>\r\n","import { Directive, HostListener, Optional } from '@angular/core';\r\nimport { ModalComponent } from './modal.component';\r\n\r\n@Directive({ selector: '[abpClose]' })\r\nexport class ModalCloseDirective {\r\n constructor(@Optional() private modal: ModalComponent) {\r\n if (!modal) {\r\n console.error('Please use abpClose within an abp-modal');\r\n }\r\n }\r\n\r\n @HostListener('click')\r\n onClick() {\r\n this.modal?.close();\r\n }\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { Toaster } from '../../models/toaster';\r\n@Component({\r\n selector: 'abp-toast',\r\n templateUrl: './toast.component.html',\r\n styleUrls: ['./toast.component.scss'],\r\n})\r\nexport class ToastComponent implements OnInit {\r\n @Input()\r\n toast!: Toaster.Toast;\r\n\r\n @Output() remove = new EventEmitter<number>();\r\n\r\n get severityClass(): string {\r\n if (!this.toast || !this.toast.severity) return '';\r\n return `abp-toast-${this.toast.severity}`;\r\n }\r\n\r\n get iconClass(): string {\r\n switch (this.toast.severity) {\r\n case 'success':\r\n return 'fa-check-circle';\r\n case 'info':\r\n return 'fa-info-circle';\r\n case 'warning':\r\n return 'fa-exclamation-triangle';\r\n case 'error':\r\n return 'fa-times-circle';\r\n default:\r\n return 'fa-exclamation-circle';\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n const { sticky, life } = this.toast.options || {};\r\n\r\n if (sticky) return;\r\n const timeout = life || 5000;\r\n setTimeout(() => {\r\n this.close();\r\n }, timeout);\r\n }\r\n\r\n close() {\r\n this.remove.emit(this.toast.options?.id);\r\n }\r\n\r\n tap() {\r\n if (this.toast.options?.tapToDismiss) this.close();\r\n }\r\n}\r\n","<div class=\"abp-toast\" [ngClass]=\"severityClass\" (click)=\"tap()\">\r\n <div class=\"abp-toast-icon\">\r\n <i class=\"fa icon\" [ngClass]=\"iconClass\"></i>\r\n </div>\r\n <div class=\"abp-toast-content\">\r\n <button class=\"abp-toast-close-button\" (click)=\"close()\" *ngIf=\"toast.options?.closable\">\r\n <i class=\"fa fa-times\"></i>\r\n </button>\r\n <div class=\"abp-toast-title\">\r\n {{ toast.title | abpLocalization: toast.options?.titleLocalizationParams }}\r\n </div>\r\n <p\r\n class=\"abp-toast-message\"\r\n [innerHTML]=\"toast.message | abpLocalization: toast.options?.messageLocalizationParams\"\r\n ></p>\r\n </div>\r\n</div>\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ReplaySubject } from 'rxjs';\r\nimport { toastInOut } from '../../animations/toast.animations';\r\nimport { Toaster } from '../../models/toaster';\r\n\r\n@Component({\r\n selector: 'abp-toast-container',\r\n templateUrl: './toast-container.component.html',\r\n styleUrls: ['./toast-container.component.scss'],\r\n animations: [toastInOut],\r\n})\r\nexport class ToastContainerComponent implements OnInit {\r\n toasts$!: ReplaySubject<Toaster.Toast[]>;\r\n\r\n remove!: (toastId: number) => void;\r\n\r\n toasts = [] as Toaster.Toast[];\r\n\r\n @Input()\r\n top?: string;\r\n\r\n @Input()\r\n right = '30px';\r\n\r\n @Input()\r\n bottom = '30px';\r\n\r\n @Input()\r\n left?: string;\r\n\r\n @Input()\r\n toastKey?: string;\r\n\r\n ngOnInit() {\r\n this.toasts$.subscribe(toasts => {\r\n this.toasts = this.toastKey\r\n ? toasts.filter(t => {\r\n return t.options && t.options.containerKey !== this.toastKey;\r\n })\r\n : toasts;\r\n });\r\n }\r\n\r\n trackByFunc(index: number, toast: Toaster.Toast) {\r\n if (!toast) return null;\r\n return toast.options?.id;\r\n }\r\n}\r\n","<div\r\n class=\"abp-toast-container\"\r\n [style.top]=\"top || 'auto'\"\r\n [style.right]=\"right || 'auto'\"\r\n [style.bottom]=\"bottom || 'auto'\"\r\n [style.left]=\"left || 'auto'\"\r\n [style.display]=\"toasts.length ? 'flex' : 'none'\"\r\n [@toastInOut]=\"toasts.length\"\r\n>\r\n <abp-toast\r\n [toast]=\"toast\"\r\n *ngFor=\"let toast of toasts; trackBy: trackByFunc\"\r\n (remove)=\"remove($event)\"\r\n ></abp-toast>\r\n</div>\r\n","export const DEFAULT_VALIDATION_BLUEPRINTS = {\r\n creditCard: 'AbpValidation::ThisFieldIsNotAValidCreditCardNumber.',\r\n email: 'AbpValidation::ThisFieldIsNotAValidEmailAddress.',\r\n invalid: 'AbpValidation::ThisFieldIsNotValid.',\r\n max: 'AbpValidation::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]',\r\n maxlength:\r\n 'AbpValidation::ThisFieldMustBeAStringOrArrayTypeWithAMaximumLengthOf{0}[{{ requiredLength }}]',\r\n min: 'AbpValidation::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]',\r\n minlength:\r\n 'AbpValidation::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf{0}[{{ requiredLength }}]',\r\n ngbDate: 'AbpValidation::ThisFieldIsNotValid.',\r\n passwordMismatch: 'AbpIdentity::Volo.Abp.Identity:PasswordConfirmationFailed',\r\n range: 'AbpValidation::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]',\r\n required: 'AbpValidation::ThisFieldIsRequired.',\r\n url: 'AbpValidation::ThisFieldIsNotAValidFullyQualifiedHttpHttpsOrFtpUrl',\r\n};\r\n","import {\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n Directive,\r\n ElementRef,\r\n HostBinding,\r\n Input,\r\n NgModule,\r\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[abpEllipsis]',\r\n})\r\nexport class EllipsisDirective implements AfterViewInit {\r\n @Input('abpEllipsis')\r\n width?: string;\r\n\r\n @HostBinding('title')\r\n @Input()\r\n title?: string;\r\n\r\n @Input('abpEllipsisEnabled')\r\n enabled = true;\r\n\r\n @HostBinding('class.abp-ellipsis-inline')\r\n get inlineClass() {\r\n return this.enabled && this.width;\r\n }\r\n\r\n @HostBinding('class.abp-ellipsis')\r\n get class() {\r\n return this.enabled && !this.width;\r\n }\r\n\r\n @HostBinding('style.max-width')\r\n get maxWidth() {\r\n return this.enabled && this.width ? this.width || '170px' : undefined;\r\n }\r\n\r\n constructor(private cdRef: ChangeDetectorRef, private elRef: ElementRef) {}\r\n\r\n ngAfterViewInit() {\r\n this.title = this.title || (this.elRef.nativeElement as HTMLElement).innerText;\r\n this.cdRef.detectChanges();\r\n }\r\n}\r\n\r\n@NgModule({\r\n exports: [EllipsisDirective],\r\n declarations: [EllipsisDirective],\r\n})\r\nexport class EllipsisModule {}\r\n","import {\r\n ComponentFactoryResolver,\r\n ComponentRef,\r\n Directive,\r\n ElementRef,\r\n EmbeddedViewRef,\r\n HostBinding,\r\n Injector,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Renderer2,\r\n ViewContainerRef,\r\n} from '@angular/core';\r\nimport { Subscription, timer } from 'rxjs';\r\nimport { take } from 'rxjs/operators';\r\nimport { LoadingComponent } from '../components/loading/loading.component';\r\n\r\n@Directive({ selector: '[abpLoading]' })\r\nexport class LoadingDirective implements OnInit, OnDestroy {\r\n private _loading!: boolean;\r\n\r\n @HostBinding('style.position')\r\n position = 'relative';\r\n\r\n @Input('abpLoading')\r\n get loading(): boolean {\r\n return this._loading;\r\n }\r\n\r\n set loading(newValue: boolean) {\r\n setTimeout(() => {\r\n if (!newValue && this.timerSubscription) {\r\n this.timerSubscription.unsubscribe();\r\n this.timerSubscription = null;\r\n this._loading = newValue;\r\n\r\n if (this.rootNode) {\r\n this.renderer.removeChild(this.rootNode.parentElement, this.rootNode);\r\n this.rootNode = null;\r\n }\r\n return;\r\n }\r\n\r\n this.timerSubscription = timer(this.delay)\r\n .pipe(take(1))\r\n .subscribe(() => {\r\n if (!this.componentRef) {\r\n this.componentRef = this.cdRes\r\n .resolveComponentFactory(LoadingComponent)\r\n .create(this.injector);\r\n }\r\n\r\n if (newValue && !this.rootNode) {\r\n this.rootNode = (this.componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0];\r\n this.targetElement?.appendChild(this.rootNode as HTMLDivElement);\r\n } else if (this.rootNode) {\r\n this.renderer.removeChild(this.rootNode.parentElement, this.rootNode);\r\n this.rootNode = null;\r\n }\r\n\r\n this._loading = newValue;\r\n this.timerSubscription = null;\r\n });\r\n }, 0);\r\n }\r\n\r\n @Input('abpLoadingTargetElement')\r\n targetElement: HTMLElement | undefined;\r\n\r\n @Input('abpLoadingDelay')\r\n delay = 0;\r\n\r\n componentRef!: ComponentRef<LoadingComponent>;\r\n rootNode: HTMLDivElement | null = null;\r\n timerSubscription: Subscription | null = null;\r\n\r\n constructor(\r\n private elRef: ElementRef<HTMLElement>,\r\n private vcRef: ViewContainerRef,\r\n private cdRes: ComponentFactoryResolver,\r\n private injector: Injector,\r\n private renderer: Renderer2,\r\n ) {}\r\n\r\n ngOnInit() {\r\n if (!this.targetElement) {\r\n const { offsetHeight, offsetWidth } = this.elRef.nativeElement;\r\n if (!offsetHeight && !offsetWidth && this.elRef.nativeElement.children.length) {\r\n this.targetElement = this.elRef.nativeElement.children[0] as HTMLElement;\r\n } else {\r\n this.targetElement = this.elRef.nativeElement;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.timerSubscription) {\r\n this.timerSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","import { DOCUMENT } from '@angular/common';\r\nimport { AfterViewInit, Directive, HostBinding, Inject, Input, OnDestroy } from '@angular/core';\r\nimport { ColumnMode, DatatableComponent, ScrollerComponent } from '@swimlane/ngx-datatable';\r\nimport { fromEvent, Subscription } from 'rxjs';\r\nimport { debounceTime } from 'rxjs/operators';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: 'ngx-datatable[default]',\r\n exportAs: 'ngxDatatableDefault',\r\n})\r\nexport class NgxDatatableDefaultDirective implements AfterViewInit, OnDestroy {\r\n private subscription = new Subscription();\r\n\r\n private resizeDiff = 0;\r\n\r\n @Input() class = 'material bordered';\r\n\r\n @HostBinding('class')\r\n get classes(): string {\r\n return `ngx-datatable ${this.class}`;\r\n }\r\n\r\n constructor(private table: DatatableComponent, @Inject(DOCUMENT) private document: MockDocument) {\r\n this.table.columnMode = ColumnMode.force;\r\n this.table.footerHeight = 50;\r\n this.table.headerHeight = 50;\r\n this.table.rowHeight = 'auto';\r\n this.table.scrollbarH = true;\r\n this.table.virtualization = false;\r\n }\r\n\r\n private fixHorizontalGap(scroller: ScrollerComponent) {\r\n const { body, documentElement } = this.document;\r\n\r\n if (documentElement.scrollHeight !== documentElement.clientHeight) {\r\n if (this.resizeDiff === 0) {\r\n this.resizeDiff = window.innerWidth - body.offsetWidth;\r\n scroller.scrollWidth -= this.resizeDiff;\r\n }\r\n } else {\r\n scroller.scrollWidth += this.resizeDiff;\r\n this.resizeDiff = 0;\r\n }\r\n }\r\n\r\n private fixStyleOnWindowResize() {\r\n // avoided @HostListener('window:resize') in favor of performance\r\n const subscription = fromEvent(window, 'resize')\r\n .pipe(debounceTime(500))\r\n .subscribe(() => {\r\n const { scroller } = this.table.bodyComponent;\r\n\r\n if (!scroller) return;\r\n\r\n this.fixHorizontalGap(scroller);\r\n });\r\n\r\n this.subscription.add(subscription);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.fixStyleOnWindowResize();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n}\r\n\r\n// fix: https://github.com/angular/angular/issues/20351\r\ninterface MockDocument {\r\n body: MockBody;\r\n documentElement: MockDocumentElement;\r\n}\r\n\r\ninterface MockBody {\r\n offsetWidth: number;\r\n}\r\n\r\ninterface MockDocumentElement {\r\n clientHeight: number;\r\n scrollHeight: number;\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport interface NgxDatatableMessages {\r\n emptyMessage: string;\r\n totalMessage: string;\r\n selectedMessage: string;\r\n}\r\n\r\nexport const defaultNgxDatatableMessages = {\r\n emptyMessage: 'AbpUi::NoDataAvailableInDatatable',\r\n totalMessage: 'AbpUi::Total',\r\n selectedMessage: 'AbpUi::Selected',\r\n};\r\n\r\nexport const NGX_DATATABLE_MESSAGES = new InjectionToken<Partial<NgxDatatableMessages>>(\r\n 'NGX_DATATABLE_MESSAGES',\r\n);\r\n","import { ListService, LocalizationService } from '@abp/ng.core';\r\nimport {\r\n ChangeDetectorRef,\r\n Directive,\r\n Inject,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport { DatatableComponent } from '@swimlane/ngx-datatable';\r\nimport { Subscription } from 'rxjs';\r\nimport {\r\n defaultNgxDatatableMessages,\r\n NgxDatatableMessages,\r\n NGX_DATATABLE_MESSAGES,\r\n} from '../tokens/ngx-datatable-messages.token';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: 'ngx-datatable[list]',\r\n exportAs: 'ngxDatatableList',\r\n})\r\nexport class NgxDatatableListDirective implements OnChanges, OnDestroy, OnInit {\r\n private subscription = new Subscription();\r\n private querySubscription = new Subscription();\r\n\r\n @Input() list!: ListService;\r\n\r\n constructor(\r\n private table: DatatableComponent,\r\n private cdRef: ChangeDetectorRef,\r\n private localizationService: LocalizationService,\r\n @Optional() @Inject(NGX_DATATABLE_MESSAGES) private ngxDatatableMessages: NgxDatatableMessages,\r\n ) {\r\n this.setInitialValues();\r\n }\r\n\r\n private setInitialValues() {\r\n this.table.externalPaging = true;\r\n this.table.externalSorting = true;\r\n\r\n const { emptyMessage, selectedMessage, totalMessage } =\r\n this.ngxDatatableMessages || defaultNgxDatatableMessages;\r\n\r\n this.table.messages = {\r\n emptyMessage: this.localizationService.instant(emptyMessage),\r\n totalMessage: this.localizationService.instant(totalMessage),\r\n selectedMessage: this.localizationService.instant(selectedMessage),\r\n };\r\n }\r\n\r\n private subscribeToPage() {\r\n const sub = this.table.page.subscribe(({ offset }) => {\r\n this.list.page = offset;\r\n this.table.offset = offset;\r\n });\r\n this.subscription.add(sub);\r\n }\r\n\r\n private subscribeToSort() {\r\n const sub = this.table.sort.subscribe(({ sorts: [{ prop, dir }] }) => {\r\n if (prop === this.list.sortKey && this.list.sortOrder === 'desc') {\r\n this.list.sortKey = '';\r\n this.list.sortOrder = '';\r\n this.table.sorts = [];\r\n this.cdRef.detectChanges();\r\n } else {\r\n this.list.sortKey = prop;\r\n this.list.sortOrder = dir;\r\n }\r\n });\r\n this.subscription.add(sub);\r\n }\r\n\r\n private subscribeToQuery() {\r\n if (!this.querySubscription.closed) this.querySubscription.unsubscribe();\r\n\r\n this.querySubscription = this.list.query$.subscribe(() => {\r\n const offset = this.list.page;\r\n if (this.table.offset !== offset) this.table.offset = offset;\r\n });\r\n }\r\n\r\n ngOnChanges({ list }: SimpleChanges) {\r\n this.subscribeToQuery();\r\n\r\n if (!list.firstChange) return;\r\n\r\n const { maxResultCount, page } = list.currentValue;\r\n this.table.limit = maxResultCount;\r\n this.table.offset = page;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n this.querySubscription.unsubscribe();\r\n }\r\n\r\n ngOnInit() {\r\n this.subscribeToPage();\r\n this.subscribeToSort();\r\n }\r\n}\r\n","import { getLocaleDirection, LocalizationService } from '@abp/ng.core';\r\nimport { Injectable, Injector } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { map, startWith } from 'rxjs/operators';\r\nimport { LocaleDirection } from '../models/common';\r\n\r\n@Injectable()\r\nexport class DocumentDirHandlerService {\r\n private dir = new BehaviorSubject<LocaleDirection>('ltr');\r\n dir$ = this.dir.asObservable();\r\n constructor(protected injector: Injector) {\r\n this.listenToLanguageChanges();\r\n }\r\n\r\n private listenToLanguageChanges() {\r\n const l10n = this.injector.get(LocalizationService);\r\n\r\n // will always listen, no need to unsubscribe\r\n l10n.languageChange$\r\n .pipe(\r\n startWith(l10n.currentLang),\r\n map(locale => getLocaleDirection(locale)),\r\n )\r\n .subscribe(dir => {\r\n this.dir.next(dir);\r\n this.setBodyDir(dir);\r\n });\r\n }\r\n\r\n private setBodyDir(dir: LocaleDirection) {\r\n document.body.dir = dir;\r\n document.dir = dir;\r\n }\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\nimport { HttpErrorConfig, HttpErrorHandler } from '../models/common';\r\n\r\nexport function httpErrorConfigFactory(config = {} as HttpErrorConfig) {\r\n if (config.errorScreen && config.errorScreen.component && !config.errorScreen.forWhichErrors) {\r\n config.errorScreen.forWhichErrors = [401, 403, 404, 500];\r\n }\r\n\r\n return {\r\n skipHandledErrorCodes: [],\r\n errorScreen: {},\r\n ...config,\r\n } as HttpErrorConfig;\r\n}\r\n\r\nexport const HTTP_ERROR_CONFIG = new InjectionToken<HttpErrorConfig>('HTTP_ERROR_CONFIG');\r\n\r\nexport const HTTP_ERROR_HANDLER = new InjectionToken<HttpErrorHandler>('HTTP_ERROR_HANDLER');\r\n","import {\r\n AuthService,\r\n HttpErrorReporterService,\r\n LocalizationParam,\r\n RouterEvents,\r\n} from '@abp/ng.core';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport {\r\n ApplicationRef,\r\n ComponentFactoryResolver,\r\n ComponentRef,\r\n EmbeddedViewRef,\r\n Injectable,\r\n Injector,\r\n RendererFactory2,\r\n} from '@angular/core';\r\nimport { NavigationError, ResolveEnd } from '@angular/router';\r\nimport { Observable, of, Subject, throwError } from 'rxjs';\r\nimport { catchError, filter, switchMap } from 'rxjs/operators';\r\nimport { HttpErrorWrapperComponent } from '../components/http-error-wrapper/http-error-wrapper.component';\r\nimport { ErrorScreenErrorCodes, HttpErrorConfig } from '../models/common';\r\nimport { Confirmation } from '../models/confirmation';\r\nimport { ConfirmationService } from '../services/confirmation.service';\r\nimport { HTTP_ERROR_HANDLER } from '../tokens/http-error.token';\r\n\r\nexport const DEFAULT_ERROR_MESSAGES = {\r\n defaultError: {\r\n title: 'An error has occurred!',\r\n details: 'Error detail not sent by server.',\r\n },\r\n defaultError401: {\r\n title: 'You are not authenticated!',\r\n details: 'You should be authenticated (sign in) in order to perform this operation.',\r\n },\r\n defaultError403: {\r\n title: 'You are not authorized!',\r\n details: 'You are not allowed to perform this operation.',\r\n },\r\n defaultError404: {\r\n title: 'Resource not found!',\r\n details: 'The resource requested could not found on the server.',\r\n },\r\n defaultError500: {\r\n title: 'Internal server error',\r\n details: 'Error detail not sent by server.',\r\n },\r\n};\r\n\r\nexport const DEFAULT_ERROR_LOCALIZATIONS = {\r\n defaultError: {\r\n title: 'AbpUi::DefaultErrorMessage',\r\n details: 'AbpUi::DefaultErrorMessageDetail',\r\n },\r\n defaultError401: {\r\n title: 'AbpUi::DefaultErrorMessage401',\r\n details: 'AbpUi::DefaultErrorMessage401Detail',\r\n },\r\n defaultError403: {\r\n title: 'AbpUi::DefaultErrorMessage403',\r\n details: 'AbpUi::DefaultErrorMessage403Detail',\r\n },\r\n defaultError404: {\r\n title: 'AbpUi::DefaultErrorMessage404',\r\n details: 'AbpUi::DefaultErrorMessage404Detail',\r\n },\r\n defaultError500: {\r\n title: 'AbpUi::500Message',\r\n details: 'AbpUi::DefaultErrorMessage',\r\n },\r\n};\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ErrorHandler {\r\n componentRef: ComponentRef<HttpErrorWrapperComponent> | null = null;\r\n\r\n protected httpErrorHandler = this.injector.get(HTTP_ERROR_HANDLER, (_, err: HttpErrorResponse) =>\r\n throwError(err),\r\n );\r\n\r\n protected httpErrorReporter: HttpErrorReporterService;\r\n protected routerEvents: RouterEvents;\r\n protected confirmationService: ConfirmationService;\r\n protected cfRes: ComponentFactoryResolver;\r\n protected rendererFactory: RendererFactory2;\r\n protected httpErrorConfig: HttpErrorConfig;\r\n\r\n constructor(protected injector: Injector) {\r\n this.httpErrorReporter = injector.get(HttpErrorReporterService);\r\n this.routerEvents = injector.get(RouterEvents);\r\n this.confirmationService = injector.get(ConfirmationService);\r\n this.cfRes = injector.get(ComponentFactoryResolver);\r\n this.rendererFactory = injector.get(RendererFactory2);\r\n this.httpErrorConfig = injector.get('HTTP_ERROR_CONFIG');\r\n\r\n this.listenToRestError();\r\n this.listenToRouterError();\r\n this.listenToRouterDataResolved();\r\n }\r\n\r\n protected listenToRouterError() {\r\n this.routerEvents\r\n .getNavigationEvents('Error')\r\n .pipe(filter(this.filterRouteErrors))\r\n .subscribe(() => this.show404Page());\r\n }\r\n\r\n protected listenToRouterDataResolved() {\r\n this.routerEvents\r\n .getEvents(ResolveEnd)\r\n .pipe(filter(() => !!this.componentRef))\r\n .subscribe(() => {\r\n this.componentRef?.destroy();\r\n this.componentRef = null;\r\n });\r\n }\r\n\r\n protected listenToRestError() {\r\n this.httpErrorReporter.reporter$\r\n .pipe(filter(this.filterRestErrors), switchMap(this.executeErrorHandler))\r\n .subscribe();\r\n }\r\n\r\n private executeErrorHandler = (error: any) => {\r\n const returnValue = this.httpErrorHandler(this.injector, error);\r\n\r\n return (returnValue instanceof Observable ? returnValue : of(null)).pipe(\r\n catchError(err => {\r\n this.handleError(err);\r\n return of(null);\r\n }),\r\n );\r\n };\r\n\r\n private handleError(err: any) {\r\n const body = err?.error?.error || {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError.title,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError.title,\r\n };\r\n\r\n if (err instanceof HttpErrorResponse && err.headers.get('_AbpErrorFormat')) {\r\n const confirmation$ = this.showErrorWithRequestBody(body);\r\n\r\n if (err.status === 401) {\r\n confirmation$.subscribe(() => {\r\n this.navigateToLogin();\r\n });\r\n }\r\n } else {\r\n switch (err.status) {\r\n case 401:\r\n this.canCreateCustomError(401)\r\n ? this.show401Page()\r\n : this.showError(\r\n {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError401.title,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError401.title,\r\n },\r\n {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError401.details,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError401.details,\r\n },\r\n ).subscribe(() => this.navigateToLogin());\r\n break;\r\n case 403:\r\n this.createErrorComponent({\r\n title: {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError403.title,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError403.title,\r\n },\r\n details: {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError403.details,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError403.details,\r\n },\r\n status: 403,\r\n });\r\n break;\r\n case 404:\r\n this.canCreateCustomError(404)\r\n ? this.show404Page()\r\n : this.showError(\r\n {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError404.details,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError404.details,\r\n },\r\n {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError404.title,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError404.title,\r\n },\r\n );\r\n break;\r\n case 500:\r\n this.createErrorComponent({\r\n title: {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError500.title,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError500.title,\r\n },\r\n details: {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError500.details,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError500.details,\r\n },\r\n status: 500,\r\n });\r\n break;\r\n case 0:\r\n if (err.statusText === 'Unknown Error') {\r\n this.createErrorComponent({\r\n title: {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError.title,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError.title,\r\n },\r\n details: err.message,\r\n isHomeShow: false,\r\n });\r\n }\r\n break;\r\n default:\r\n this.showError(\r\n {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError.details,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError.details,\r\n },\r\n {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError.title,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError.title,\r\n },\r\n );\r\n break;\r\n }\r\n }\r\n }\r\n\r\n protected show401Page() {\r\n this.createErrorComponent({\r\n title: {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError401.title,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError401.title,\r\n },\r\n status: 401,\r\n });\r\n }\r\n\r\n protected show404Page() {\r\n this.createErrorComponent({\r\n title: {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError404.title,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError404.title,\r\n },\r\n status: 404,\r\n });\r\n }\r\n\r\n protected showErrorWithRequestBody(body: any) {\r\n let message: LocalizationParam;\r\n let title: LocalizationParam;\r\n\r\n if (body.details) {\r\n message = body.details;\r\n title = body.message;\r\n } else if (body.message) {\r\n title = {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError.title,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError.title,\r\n };\r\n message = body.message;\r\n } else {\r\n message = body.message || {\r\n key: DEFAULT_ERROR_LOCALIZATIONS.defaultError.title,\r\n defaultValue: DEFAULT_ERROR_MESSAGES.defaultError.title,\r\n };\r\n title = '';\r\n }\r\n\r\n return this.showError(message, title);\r\n }\r\n\r\n protected showError(\r\n message: LocalizationParam,\r\n title: LocalizationParam,\r\n ): Observable<Confirmation.Status> {\r\n return this.confirmationService.error(message, title, {\r\n hideCancelBtn: true,\r\n yesText: 'AbpAccount::Close',\r\n });\r\n }\r\n\r\n private navigateToLogin() {\r\n this.injector.get(AuthService).navigateToLogin();\r\n }\r\n\r\n createErrorComponent(instance: Partial<HttpErrorWrapperComponent>) {\r\n const renderer = this.rendererFactory.createRenderer(null, null);\r\n const host = renderer.selectRootElement(document.body, true);\r\n\r\n this.componentRef = this.cfRes\r\n .resolveComponentFactory(HttpErrorWrapperComponent)\r\n .create(this.injector);\r\n\r\n for (const key in instance) {\r\n /* istanbul ignore else */\r\n if (Object.prototype.hasOwnProperty.call(this.componentRef.instance, key)) {\r\n (this.componentRef.instance as any)[key] = (instance as any)[key];\r\n }\r\n }\r\n\r\n this.componentRef.instance.hideCloseIcon = !!this.httpErrorConfig.errorScreen?.hideCloseIcon;\r\n const appRef = this.injector.get(ApplicationRef);\r\n\r\n if (this.canCreateCustomError(instance.status as ErrorScreenErrorCodes)) {\r\n this.componentRef.instance.cfRes = this.cfRes;\r\n this.componentRef.instance.appRef = appRef;\r\n this.componentRef.instance.injector = this.injector;\r\n this.componentRef.instance.customComponent = this.httpErrorConfig.errorScreen?.component;\r\n }\r\n\r\n appRef.attachView(this.componentRef.hostView);\r\n renderer.appendChild(host, (this.componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0]);\r\n\r\n const destroy$ = new Subject<void>();\r\n this.componentRef.instance.destroy$ = destroy$;\r\n destroy$.subscribe(() => {\r\n this.componentRef?.destroy();\r\n this.componentRef = null;\r\n });\r\n }\r\n\r\n canCreateCustomError(status: ErrorScreenErrorCodes): boolean {\r\n return !!(\r\n this.httpErrorConfig?.errorScreen?.component &&\r\n this.httpErrorConfig?.errorScreen?.forWhichErrors &&\r\n this.httpErrorConfig?.errorScreen?.forWhichErrors.indexOf(status) > -1\r\n );\r\n }\r\n\r\n protected filterRestErrors = ({ status }: HttpErrorResponse): boolean => {\r\n if (typeof status !== 'number') return false;\r\n\r\n return (\r\n !!this.httpErrorConfig.skipHandledErrorCodes &&\r\n this.httpErrorConfig.skipHandledErrorCodes.findIndex(code => code === status) < 0\r\n );\r\n };\r\n\r\n protected filterRouteErrors = (navigationError: NavigationError): boolean => {\r\n return (\r\n navigationError.error?.message?.indexOf('Cannot match') > -1 &&\r\n !!this.httpErrorConfig.skipHandledErrorCodes &&\r\n this.httpErrorConfig.skipHandledErrorCodes.findIndex(code => code === 404) < 0\r\n );\r\n };\r\n}\r\n","import { Type } from '@angular/core';\r\n\r\nexport class NavItem {\r\n id?: string | number;\r\n component?: Type<any>;\r\n html?: string;\r\n action?: () => void;\r\n order?: number;\r\n requiredPolicy?: string;\r\n visible?: () => boolean;\r\n constructor(props: Partial<NavItem>) {\r\n props = { ...props, visible: props.visible || (() => true) };\r\n Object.assign(this, props);\r\n }\r\n}\r\n","import { APP_INITIALIZER } from '@angular/core';\r\nimport { NgbInputDatepickerConfig, NgbTypeaheadConfig } from '@ng-bootstrap/ng-bootstrap';\r\n\r\nexport const NG_BOOTSTRAP_CONFIG_PROVIDERS = [\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: configureNgBootstrap,\r\n deps: [NgbInputDatepickerConfig, NgbTypeaheadConfig],\r\n multi: true,\r\n },\r\n];\r\n\r\nexport function configureNgBootstrap(\r\n datepicker: NgbInputDatepickerConfig,\r\n typeahead: NgbTypeaheadConfig,\r\n) {\r\n return () => {\r\n datepicker.container = 'body';\r\n typeahead.container = 'body';\r\n };\r\n}\r\n","import { RoutesService } from '@abp/ng.core';\r\nimport { APP_INITIALIZER } from '@angular/core';\r\nimport { eThemeSharedRouteNames } from '../enums/route-names';\r\n\r\nexport const THEME_SHARED_ROUTE_PROVIDERS = [\r\n { provide: APP_INITIALIZER, useFactory: configureRoutes, deps: [RoutesService], multi: true },\r\n];\r\n\r\nexport function configureRoutes(routesService: RoutesService) {\r\n return () => {\r\n routesService.add([\r\n {\r\n path: undefined,\r\n name: eThemeSharedRouteNames.Administration,\r\n iconClass: 'fa fa-wrench',\r\n order: 100,\r\n },\r\n ]);\r\n };\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { NavItem } from '../models/nav-item';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class NavItemsService {\r\n private _items$ = new BehaviorSubject<NavItem[]>([]);\r\n\r\n get items(): NavItem[] {\r\n return this._items$.value;\r\n }\r\n\r\n get items$(): Observable<NavItem[]> {\r\n return this._items$.asObservable();\r\n }\r\n\r\n addItems(newItems: NavItem[]) {\r\n const items = [...this.items];\r\n newItems.forEach(item => items.push(new NavItem(item)));\r\n items.sort(sortItems);\r\n this._items$.next(items);\r\n }\r\n\r\n removeItem(id: string | number) {\r\n const index = this.items.findIndex(item => item.id === id);\r\n\r\n if (index < 0) return;\r\n\r\n const items = [...this.items.slice(0, index), ...this.items.slice(index + 1)];\r\n this._items$.next(items);\r\n }\r\n\r\n patchItem(id: string | number, item: Partial<Omit<NavItem, 'id'>>) {\r\n const index = this.items.findIndex(i => i.id === id);\r\n\r\n if (index < 0) return;\r\n\r\n const items = [...this.items];\r\n items[index] = new NavItem({ ...items[index], ...item });\r\n items.sort(sortItems);\r\n this._items$.next(items);\r\n }\r\n}\r\n\r\nfunction sortItems(a: NavItem, b: NavItem) {\r\n if (!a.order) return 1;\r\n if (!b.order) return -1;\r\n\r\n return a.order - b.order;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { InternalStore } from '@abp/ng.core';\r\n\r\nexport interface PageAlert {\r\n type: 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'light' | 'dark';\r\n message: string;\r\n dismissible?: boolean;\r\n title?: string;\r\n messageLocalizationParams?: string[];\r\n titleLocalizationParams?: string[];\r\n}\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class PageAlertService {\r\n private alerts = new InternalStore<PageAlert[]>([]);\r\n\r\n alerts$ = this.alerts.sliceState(state => state);\r\n\r\n constructor() {}\r\n\r\n show(alert: PageAlert) {\r\n const newAlert: PageAlert = {\r\n ...alert,\r\n dismissible: alert.dismissible ?? true,\r\n };\r\n this.alerts.set([newAlert, ...this.alerts.state]);\r\n }\r\n\r\n remove(index: number) {\r\n const alerts = [...this.alerts.state];\r\n alerts.splice(index, 1);\r\n this.alerts.set(alerts);\r\n }\r\n}\r\n","import {\r\n ContentProjectionService,\r\n LocalizationParam,\r\n PROJECTION_STRATEGY,\r\n Strict,\r\n} from '@abp/ng.core';\r\nimport { ComponentRef, Injectable } from '@angular/core';\r\nimport { ReplaySubject } from 'rxjs';\r\nimport { ToastContainerComponent } from '../components/toast-container/toast-container.component';\r\nimport { Toaster } from '../models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ToasterService implements ToasterContract {\r\n private toasts$ = new ReplaySubject<Toaster.Toast[]>(1);\r\n\r\n private lastId = -1;\r\n\r\n private toasts = [] as Toaster.Toast[];\r\n\r\n private containerComponentRef!: ComponentRef<ToastContainerComponent>;\r\n\r\n constructor(private contentProjectionService: ContentProjectionService) {}\r\n\r\n private setContainer() {\r\n this.containerComponentRef = this.contentProjectionService.projectContent(\r\n PROJECTION_STRATEGY.AppendComponentToBody(ToastContainerComponent, {\r\n toasts$: this.toasts$,\r\n remove: this.remove,\r\n }),\r\n );\r\n\r\n this.containerComponentRef.changeDetectorRef.detectChanges();\r\n }\r\n\r\n /**\r\n * Creates an info toast with given parameters.\r\n * @param message Content of the toast\r\n * @param title Title of the toast\r\n * @param options Spesific style or structural options for individual toast\r\n */\r\n info(\r\n message: LocalizationParam,\r\n title?: LocalizationParam,\r\n options?: Partial<Toaster.ToastOptions>,\r\n ): Toaster.ToasterId {\r\n return this.show(message, title, 'info', options);\r\n }\r\n\r\n /**\r\n * Creates a success toast with given parameters.\r\n * @param message Content of the toast\r\n * @param title Title of the toast\r\n * @param options Spesific style or structural options for individual toast\r\n */\r\n success(\r\n message: LocalizationParam,\r\n title?: LocalizationParam,\r\n options?: Partial<Toaster.ToastOptions>,\r\n ): Toaster.ToasterId {\r\n return this.show(message, title, 'success', options);\r\n }\r\n\r\n /**\r\n * Creates a warning toast with given parameters.\r\n * @param message Content of the toast\r\n * @param title Title of the toast\r\n * @param options Spesific style or structural options for individual toast\r\n */\r\n warn(\r\n message: LocalizationParam,\r\n title?: LocalizationParam,\r\n options?: Partial<Toaster.ToastOptions>,\r\n ): Toaster.ToasterId {\r\n return this.show(message, title, 'warning', options);\r\n }\r\n\r\n /**\r\n * Creates an error toast with given parameters.\r\n * @param message Content of the toast\r\n * @param title Title of the toast\r\n * @param options Spesific style or structural options for individual toast\r\n */\r\n error(\r\n message: LocalizationParam,\r\n title?: LocalizationParam,\r\n options?: Partial<Toaster.ToastOptions>,\r\n ): Toaster.ToasterId {\r\n return this.show(message, title, 'error', options);\r\n }\r\n\r\n /**\r\n * Creates a toast with given parameters.\r\n * @param message Content of the toast\r\n * @param title Title of the toast\r\n * @param severity Sets color of the toast. \"success\", \"warning\" etc.\r\n * @param options Spesific style or structural options for individual toast\r\n */\r\n\r\n show(\r\n message: LocalizationParam,\r\n title: LocalizationParam | undefined = undefined,\r\n severity: Toaster.Severity = 'neutral',\r\n options = {} as Partial<Toaster.ToastOptions>,\r\n ): Toaster.ToasterId {\r\n if (!this.containerComponentRef) this.setContainer();\r\n\r\n const id = ++this.lastId;\r\n this.toasts.push({\r\n message,\r\n title,\r\n severity,\r\n options: { closable: true, id, ...options },\r\n });\r\n this.toasts$.next(this.toasts);\r\n return id;\r\n }\r\n\r\n /**\r\n * Removes the toast with given id.\r\n * @param id ID of the toast to be removed.\r\n */\r\n remove = (id: number) => {\r\n this.toasts = this.toasts.filter(toast => toast.options?.id !== id);\r\n this.toasts$.next(this.toasts);\r\n };\r\n\r\n /**\r\n * Removes all open toasts at once.\r\n */\r\n clear(containerKey?: string): void {\r\n this.toasts = !containerKey\r\n ? []\r\n : this.toasts.filter(toast => toast.options?.containerKey !== containerKey);\r\n this.toasts$.next(this.toasts);\r\n }\r\n}\r\n\r\nexport type ToasterContract = Strict<ToasterService, Toaster.Service>;\r\n","export default `\r\n.is-invalid .form-control {\r\n border-color: #dc3545;\r\n border-style: solid !important;\r\n padding-right: calc(1.5em + .75rem);\r\n background-image: url(data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e);\r\n background-repeat: no-repeat;\r\n background-position: right calc(.375em + .1875rem) center;\r\n background-size: calc(.75em + .375rem) calc(.75em + .375rem);\r\n}\r\n\r\n.is-invalid .invalid-feedback,\r\n.is-invalid + * .invalid-feedback {\r\n display: block;\r\n}\r\n\r\n.data-tables-filter {\r\n text-align: right;\r\n}\r\n\r\n[dir=rtl] .data-tables-filter {\r\n text-align: left;\r\n}\r\n\r\n.pointer {\r\n cursor: pointer;\r\n}\r\n\r\n.navbar .dropdown-submenu a::after {\r\n transform: rotate(-90deg);\r\n position: absolute;\r\n right: 16px;\r\n top: 18px;\r\n}\r\n\r\n.navbar .dropdown-menu {\r\n min-width: 215px;\r\n}\r\n\r\n.datatable-scroll {\r\n margin-bottom: 5px !important;\r\n width: unset !important;\r\n}\r\n\r\n.ui-table-scrollable-body::-webkit-scrollbar {\r\n height: 5px !important;\r\n width: 5px !important;\r\n}\r\n\r\n.ui-table-scrollable-body::-webkit-scrollbar-track {\r\n background: #ddd;\r\n}\r\n\r\n.ui-table-scrollable-body::-webkit-scrollbar-thumb {\r\n background: #8a8686;\r\n}\r\n\r\n.abp-ellipsis-inline {\r\n display: inline-block;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n}\r\n\r\n.abp-ellipsis {\r\n overflow: hidden !important;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n}\r\n\r\n.ui-widget-overlay {\r\n z-index: 1000;\r\n}\r\n\r\n.color-white {\r\n color: #FFF !important;\r\n}\r\n\r\n.custom-checkbox > label {\r\n cursor: pointer;\r\n}\r\n\r\n/* <animations */\r\n\r\n.fade-in-top {\r\n animation: fadeInTop 0.2s ease-in-out;\r\n}\r\n\r\n.fade-out-top {\r\n animation: fadeOutTop 0.2s ease-in-out;\r\n}\r\n\r\n.abp-collapsed-height {\r\n -moz-transition: max-height linear 0.35s;\r\n -ms-transition: max-height linear 0.35s;\r\n -o-transition: max-height linear 0.35s;\r\n -webkit-transition: max-height linear 0.35s;\r\n overflow:hidden;\r\n transition:max-height 0.35s linear;\r\n height:auto;\r\n max-height: 0;\r\n}\r\n\r\n.abp-mh-25 {\r\n max-height: 25vh;\r\n}\r\n\r\n.abp-mh-50 {\r\n transition:max-height 0.65s linear;\r\n max-height: 50vh;\r\n}\r\n\r\n.abp-mh-75 {\r\n transition:max-height 0.85s linear;\r\n max-height: 75vh;\r\n}\r\n\r\n.abp-mh-100 {\r\n transition:max-height 1s linear;\r\n max-height: 100vh;\r\n}\r\n\r\n[class^=\"sorting\"] {\r\n opacity: .3;\r\n cursor: pointer;\r\n}\r\n[class^=\"sorting\"]:before {\r\n right: 0.5rem;\r\n content: \"↑\";\r\n}\r\n[class^=\"sorting\"]:after {\r\n right: 0.5rem;\r\n content: \"↓\";\r\n}\r\n\r\n.sorting_desc {\r\n opacity: 1;\r\n}\r\n.sorting_desc:before {\r\n opacity: .3;\r\n}\r\n\r\n.sorting_asc {\r\n opacity: 1;\r\n}\r\n.sorting_asc:after {\r\n opacity: .3;\r\n}\r\n.ngx-datatable.material {\r\n box-shadow: none;\r\n}\r\nngb-typeahead-window, ngb-typeahead-window.dropdown-menu {\r\n max-height: 25em;\r\n overflow-y: scroll !important;\r\n z-index: 1050;\r\n}\r\n\r\n@keyframes fadeInTop {\r\n from {\r\n transform: translateY(-5px);\r\n opacity: 0;\r\n }\r\n\r\n to {\r\n transform: translateY(0px);\r\n opacity: 1;\r\n }\r\n}\r\n\r\n@keyframes fadeOutTop {\r\n to {\r\n transform: translateY(-5px);\r\n opacity: 0;\r\n }\r\n}\r\n\r\n/* </animations */\r\n.ngb-dp-body {\r\n z-index: 1055 !important;\r\n}\r\n`;\r\n","import { CONTENT_STRATEGY, DomInsertionService } from '@abp/ng.core';\r\nimport { inject, InjectionToken } from '@angular/core';\r\nimport styles from '../constants/styles';\r\n\r\nexport const THEME_SHARED_APPEND_CONTENT = new InjectionToken<void>('THEME_SHARED_APPEND_CONTENT', {\r\n providedIn: 'root',\r\n factory: () => {\r\n const domInsertion: DomInsertionService = inject(DomInsertionService);\r\n\r\n domInsertion.insertContent(CONTENT_STRATEGY.AppendStyleToHead(styles));\r\n },\r\n});\r\n","import { ApplicationLocalizationConfigurationDto, ConfigStateService } from '@abp/ng.core';\r\nimport { formatDate } from '@angular/common';\r\nimport { Inject, Injectable, LOCALE_ID } from '@angular/core';\r\nimport { NgbDateParserFormatter, NgbDateStruct } from '@ng-bootstrap/ng-bootstrap';\r\n\r\nfunction isNumber(value: any): boolean {\r\n return !isNaN(toInteger(value));\r\n}\r\n\r\nfunction toInteger(value: any): number {\r\n return parseInt(`${value}`, 10);\r\n}\r\n\r\n@Injectable()\r\nexport class DateParserFormatter extends NgbDateParserFormatter {\r\n constructor(private configState: ConfigStateService, @Inject(LOCALE_ID) private locale: string) {\r\n super();\r\n }\r\n\r\n parse(value: string): NgbDateStruct | null {\r\n if (value) {\r\n const dateParts = value.trim().split('-');\r\n // TODO: CHANGED\r\n if (dateParts.length === 1 && isNumber(dateParts[0])) {\r\n return { year: toInteger(dateParts[0]), month: -1, day: -1 };\r\n } else if (dateParts.length === 2 && isNumber(dateParts[0]) && isNumber(dateParts[1])) {\r\n return { year: toInteger(dateParts[0]), month: toInteger(dateParts[1]), day: -1 };\r\n } else if (\r\n dateParts.length === 3 &&\r\n isNumber(dateParts[0]) &&\r\n isNumber(dateParts[1]) &&\r\n isNumber(dateParts[2])\r\n ) {\r\n return {\r\n year: toInteger(dateParts[0]),\r\n month: toInteger(dateParts[1]),\r\n day: toInteger(dateParts[2]),\r\n };\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n format(date: NgbDateStruct): string {\r\n if (!date) return '';\r\n\r\n const localization: ApplicationLocalizationConfigurationDto =\r\n this.configState.getOne('localization');\r\n\r\n const dateFormat =\r\n localization.currentCulture?.dateTimeFormat?.shortDatePattern || 'yyyy-MM-dd';\r\n\r\n return formatDate(new Date(date.year, date.month - 1, date.day), dateFormat, this.locale);\r\n }\r\n}\r\n","import { CoreModule, noop } from '@abp/ng.core';\r\nimport { DatePipe } from '@angular/common';\r\nimport { APP_INITIALIZER, ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { NgbDateParserFormatter, NgbPaginationModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport {\r\n defaultMapErrorsFn,\r\n NgxValidateCoreModule,\r\n VALIDATION_BLUEPRINTS,\r\n VALIDATION_MAP_ERRORS_FN,\r\n VALIDATION_VALIDATE_ON_SUBMIT,\r\n} from '@ngx-validate/core';\r\nimport { NgxDatatableModule } from '@swimlane/ngx-datatable';\r\nimport { BreadcrumbItemsComponent } from './components/breadcrumb-items/breadcrumb-items.component';\r\nimport { BreadcrumbComponent } from './components/breadcrumb/breadcrumb.component';\r\nimport { ButtonComponent } from './components/button/button.component';\r\nimport { ConfirmationComponent } from './components/confirmation/confirmation.component';\r\nimport { HttpErrorWrapperComponent } from './components/http-error-wrapper/http-error-wrapper.component';\r\nimport { LoaderBarComponent } from './components/loader-bar/loader-bar.component';\r\nimport { LoadingComponent } from './components/loading/loading.component';\r\nimport { ModalCloseDirective } from './components/modal/modal-close.directive';\r\nimport { ModalComponent } from './components/modal/modal.component';\r\nimport { ToastContainerComponent } from './components/toast-container/toast-container.component';\r\nimport { ToastComponent } from './components/toast/toast.component';\r\nimport { DEFAULT_VALIDATION_BLUEPRINTS } from './constants/validation';\r\nimport { EllipsisModule } from './directives/ellipsis.directive';\r\nimport { LoadingDirective } from './directives/loading.directive';\r\nimport { NgxDatatableDefaultDirective } from './directives/ngx-datatable-default.directive';\r\nimport { NgxDatatableListDirective } from './directives/ngx-datatable-list.directive';\r\nimport { DocumentDirHandlerService } from './handlers/document-dir.handler';\r\nimport { ErrorHandler } from './handlers/error.handler';\r\nimport { RootParams } from './models/common';\r\nimport { NG_BOOTSTRAP_CONFIG_PROVIDERS } from './providers';\r\nimport { THEME_SHARED_ROUTE_PROVIDERS } from './providers/route.provider';\r\nimport { THEME_SHARED_APPEND_CONTENT } from './tokens/append-content.token';\r\nimport { httpErrorConfigFactory, HTTP_ERROR_CONFIG } from './tokens/http-error.token';\r\nimport { DateParserFormatter } from './utils/date-parser-formatter';\r\n\r\nconst declarationsWithExports = [\r\n BreadcrumbComponent,\r\n BreadcrumbItemsComponent,\r\n ButtonComponent,\r\n ConfirmationComponent,\r\n LoaderBarComponent,\r\n LoadingComponent,\r\n ModalComponent,\r\n ToastComponent,\r\n ToastContainerComponent,\r\n NgxDatatableDefaultDirective,\r\n NgxDatatableListDirective,\r\n LoadingDirective,\r\n ModalCloseDirective,\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n CoreModule,\r\n NgxDatatableModule,\r\n NgxValidateCoreModule,\r\n NgbPaginationModule,\r\n EllipsisModule,\r\n ],\r\n declarations: [...declarationsWithExports, HttpErrorWrapperComponent],\r\n exports: [NgxDatatableModule, EllipsisModule, ...declarationsWithExports],\r\n providers: [DatePipe],\r\n entryComponents: [\r\n HttpErrorWrapperComponent,\r\n LoadingComponent,\r\n ToastContainerComponent,\r\n ConfirmationComponent,\r\n ],\r\n})\r\nexport class BaseThemeSharedModule {}\r\n\r\n@NgModule({\r\n imports: [BaseThemeSharedModule],\r\n exports: [BaseThemeSharedModule],\r\n})\r\nexport class ThemeSharedModule {\r\n static forRoot(\r\n { httpErrorConfig, validation = {} } = {} as RootParams,\r\n ): ModuleWithProviders<ThemeSharedModule> {\r\n return {\r\n ngModule: ThemeSharedModule,\r\n providers: [\r\n {\r\n provide: APP_INITIALIZER,\r\n multi: true,\r\n deps: [ErrorHandler],\r\n useFactory: noop,\r\n },\r\n THEME_SHARED_ROUTE_PROVIDERS,\r\n {\r\n provide: APP_INITIALIZER,\r\n multi: true,\r\n deps: [THEME_SHARED_APPEND_CONTENT],\r\n useFactory: noop,\r\n },\r\n { provide: HTTP_ERROR_CONFIG, useValue: httpErrorConfig },\r\n {\r\n provide: 'HTTP_ERROR_CONFIG',\r\n useFactory: httpErrorConfigFactory,\r\n deps: [HTTP_ERROR_CONFIG],\r\n },\r\n { provide: NgbDateParserFormatter, useClass: DateParserFormatter },\r\n NG_BOOTSTRAP_CONFIG_PROVIDERS,\r\n {\r\n provide: VALIDATION_BLUEPRINTS,\r\n useValue: {\r\n ...DEFAULT_VALIDATION_BLUEPRINTS,\r\n ...(validation.blueprints || {}),\r\n },\r\n },\r\n {\r\n provide: VALIDATION_MAP_ERRORS_FN,\r\n useValue: validation.mapErrorsFn || defaultMapErrorsFn,\r\n },\r\n {\r\n provide: VALIDATION_VALIDATE_ON_SUBMIT,\r\n useValue: validation.validateOnSubmit,\r\n },\r\n DocumentDirHandlerService,\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: noop,\r\n multi: true,\r\n deps: [DocumentDirHandlerService],\r\n },\r\n ],\r\n };\r\n }\r\n}\r\n","import { ABP, ConfigStateService } from '@abp/ng.core';\r\nimport { Injector } from '@angular/core';\r\nimport { ValidatorFn, Validators } from '@angular/forms';\r\nimport { PasswordRules, validatePassword } from '@ngx-validate/core';\r\n\r\nconst { minLength, maxLength } = Validators;\r\n\r\nexport function getPasswordValidators(injector: Injector): ValidatorFn[] {\r\n const getRule = getRuleFn(injector);\r\n\r\n const passwordRulesArr = [] as PasswordRules;\r\n let requiredLength = 1;\r\n\r\n if (getRule('RequireDigit') === 'true') {\r\n passwordRulesArr.push('number');\r\n }\r\n\r\n if (getRule('RequireLowercase') === 'true') {\r\n passwordRulesArr.push('small');\r\n }\r\n\r\n if (getRule('RequireUppercase') === 'true') {\r\n passwordRulesArr.push('capital');\r\n }\r\n\r\n if (getRule('RequireNonAlphanumeric') === 'true') {\r\n passwordRulesArr.push('special');\r\n }\r\n\r\n if (Number.isInteger(+getRule('RequiredLength'))) {\r\n requiredLength = +getRule('RequiredLength');\r\n }\r\n\r\n return [validatePassword(passwordRulesArr), minLength(requiredLength), maxLength(128)];\r\n}\r\n\r\nfunction getRuleFn(injector: Injector) {\r\n const configState = injector.get(ConfigStateService);\r\n\r\n return (key: string) => {\r\n const passwordRules: ABP.Dictionary<string> = configState.getSettings('Identity.Password');\r\n\r\n return (passwordRules[`Abp.Identity.Password.${key}`] || '').toLowerCase();\r\n };\r\n}\r\n","/*\r\n * Public API Surface of theme-shared\r\n */\r\n\r\nexport * from './lib/animations';\r\nexport * from './lib/components';\r\nexport * from './lib/constants/validation';\r\nexport * from './lib/directives';\r\nexport * from './lib/enums';\r\nexport * from './lib/handlers';\r\nexport * from './lib/models';\r\nexport * from './lib/providers';\r\nexport * from './lib/services';\r\nexport * from './lib/theme-shared.module';\r\nexport * from './lib/tokens';\r\nexport * from './lib/utils';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["animation","style","animate","keyframes","trigger","state","transition","useAnimation","query","Component","Input","startWith","map","getRoutePath","SubscriptionService","ChangeDetectionStrategy","EventEmitter","Output","ViewChild","Confirmation","fromEvent","debounceTime","filter","Subscription","combineLatest","timer","ViewEncapsulation","InjectionToken","ReplaySubject","PROJECTION_STRATEGY","Subject","takeUntil","Injectable","uuid","distinctUntilChanged","Optional","Inject","ContentChild","Directive","HostListener","HostBinding","NgModule","take","ColumnMode","DOCUMENT","BehaviorSubject","LocalizationService","getLocaleDirection","throwError","Observable","of","catchError","HttpErrorReporterService","RouterEvents","ComponentFactoryResolver","RendererFactory2","ResolveEnd","switchMap","HttpErrorResponse","AuthService","ApplicationRef","APP_INITIALIZER","NgbInputDatepickerConfig","NgbTypeaheadConfig","RoutesService","InternalStore","inject","DomInsertionService","CONTENT_STRATEGY","formatDate","NgbDateParserFormatter","LOCALE_ID","CoreModule","NgxDatatableModule","NgxValidateCoreModule","NgbPaginationModule","DatePipe","noop","VALIDATION_BLUEPRINTS","VALIDATION_MAP_ERRORS_FN","defaultMapErrorsFn","VALIDATION_VALIDATE_ON_SUBMIT","Validators","validatePassword","ConfigStateService"],"mappings":"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"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class DateTimeAdapter {
|
|
4
|
-
fromModel(value) {
|
|
5
|
-
if (!value)
|
|
6
|
-
return null;
|
|
7
|
-
const date = new Date(value);
|
|
8
|
-
if (isNaN(date))
|
|
9
|
-
return null;
|
|
10
|
-
this.value = {
|
|
11
|
-
year: date.getFullYear(),
|
|
12
|
-
month: date.getMonth() + 1,
|
|
13
|
-
day: date.getDate(),
|
|
14
|
-
hour: date.getHours(),
|
|
15
|
-
minute: date.getMinutes(),
|
|
16
|
-
second: date.getSeconds(),
|
|
17
|
-
};
|
|
18
|
-
return this.value;
|
|
19
|
-
}
|
|
20
|
-
toModel(value) {
|
|
21
|
-
if (!value)
|
|
22
|
-
return '';
|
|
23
|
-
//const now = new Date();
|
|
24
|
-
value = Object.assign(Object.assign({}, this.value), value);
|
|
25
|
-
const date = new Date(value.year, value.month - 1, value.day, value.hour, value.minute, value.second);
|
|
26
|
-
return new Date(date).toISOString();
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
DateTimeAdapter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DateTimeAdapter, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
30
|
-
DateTimeAdapter.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DateTimeAdapter });
|
|
31
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DateTimeAdapter, decorators: [{
|
|
32
|
-
type: Injectable
|
|
33
|
-
}] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLmFkYXB0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvZXh0ZW5zaW9ucy9zcmMvbGliL2FkYXB0ZXJzL2RhdGUtdGltZS5hZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSTNDLE1BQU0sT0FBTyxlQUFlO0lBRzFCLFNBQVMsQ0FBQyxLQUFvQjtRQUM1QixJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRXhCLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTdCLElBQUksS0FBSyxDQUFDLElBQXlCLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQztRQUVsRCxJQUFJLENBQUMsS0FBSyxHQUFHO1lBQ1gsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDeEIsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDO1lBQzFCLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ25CLElBQUksRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3JCLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3pCLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFO1NBQzFCLENBQUM7UUFFRixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUErQjtRQUNyQyxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sRUFBRSxDQUFDO1FBRXRCLHlCQUF5QjtRQUV6QixLQUFLLG1DQVFBLElBQUksQ0FBQyxLQUFLLEdBQ1YsS0FBSyxDQUNULENBQUM7UUFFRixNQUFNLElBQUksR0FBRyxJQUFJLElBQUksQ0FDbkIsS0FBSyxDQUFDLElBQUksRUFDVixLQUFLLENBQUMsS0FBSyxHQUFHLENBQUMsRUFDZixLQUFLLENBQUMsR0FBRyxFQUNULEtBQUssQ0FBQyxJQUFJLEVBQ1YsS0FBSyxDQUFDLE1BQU0sRUFDWixLQUFLLENBQUMsTUFBTSxDQUNiLENBQUM7UUFFRixPQUFPLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3RDLENBQUM7OzZHQWpEVSxlQUFlO2lIQUFmLGVBQWU7NEZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmdiRGF0ZVN0cnVjdCwgTmdiVGltZVN0cnVjdCB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIERhdGVUaW1lQWRhcHRlciB7XHJcbiAgdmFsdWUhOiBOZ2JEYXRlVGltZVN0cnVjdDtcclxuXHJcbiAgZnJvbU1vZGVsKHZhbHVlOiBzdHJpbmcgfCBEYXRlKTogTmdiRGF0ZVRpbWVTdHJ1Y3QgfCBudWxsIHtcclxuICAgIGlmICghdmFsdWUpIHJldHVybiBudWxsO1xyXG5cclxuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh2YWx1ZSk7XHJcblxyXG4gICAgaWYgKGlzTmFOKGRhdGUgYXMgdW5rbm93biBhcyBudW1iZXIpKSByZXR1cm4gbnVsbDtcclxuXHJcbiAgICB0aGlzLnZhbHVlID0ge1xyXG4gICAgICB5ZWFyOiBkYXRlLmdldEZ1bGxZZWFyKCksXHJcbiAgICAgIG1vbnRoOiBkYXRlLmdldE1vbnRoKCkgKyAxLFxyXG4gICAgICBkYXk6IGRhdGUuZ2V0RGF0ZSgpLFxyXG4gICAgICBob3VyOiBkYXRlLmdldEhvdXJzKCksXHJcbiAgICAgIG1pbnV0ZTogZGF0ZS5nZXRNaW51dGVzKCksXHJcbiAgICAgIHNlY29uZDogZGF0ZS5nZXRTZWNvbmRzKCksXHJcbiAgICB9O1xyXG5cclxuICAgIHJldHVybiB0aGlzLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgdG9Nb2RlbCh2YWx1ZTogTmdiRGF0ZVRpbWVTdHJ1Y3QgfCBudWxsKTogc3RyaW5nIHtcclxuICAgIGlmICghdmFsdWUpIHJldHVybiAnJztcclxuXHJcbiAgICAvL2NvbnN0IG5vdyA9IG5ldyBEYXRlKCk7XHJcblxyXG4gICAgdmFsdWUgPSB7XHJcbiAgICAgIC8vIFRPRE9cclxuICAgICAgLyogICB5ZWFyOiBub3cuZ2V0VVRDRnVsbFllYXIoKSxcclxuICAgICAgbW9udGg6IG5vdy5nZXRNb250aCgpICsgMSxcclxuICAgICAgZGF5OiBub3cuZ2V0RGF0ZSgpLFxyXG4gICAgICBob3VyOiAwLFxyXG4gICAgICBtaW51dGU6IDAsXHJcbiAgICAgIHNlY29uZDogMCwgKi9cclxuICAgICAgLi4udGhpcy52YWx1ZSxcclxuICAgICAgLi4udmFsdWUsXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZShcclxuICAgICAgdmFsdWUueWVhcixcclxuICAgICAgdmFsdWUubW9udGggLSAxLFxyXG4gICAgICB2YWx1ZS5kYXksXHJcbiAgICAgIHZhbHVlLmhvdXIsXHJcbiAgICAgIHZhbHVlLm1pbnV0ZSxcclxuICAgICAgdmFsdWUuc2Vjb25kLFxyXG4gICAgKTtcclxuXHJcbiAgICByZXR1cm4gbmV3IERhdGUoZGF0ZSkudG9JU09TdHJpbmcoKTtcclxuICB9XHJcbn1cclxuXHJcbnR5cGUgTmdiRGF0ZVRpbWVTdHJ1Y3QgPSBOZ2JEYXRlU3RydWN0ICYgTmdiVGltZVN0cnVjdDtcclxuIl19
|