@abp/ng.theme.shared 5.0.1 → 5.1.3

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.
Files changed (159) hide show
  1. package/{esm2015/abp-ng.theme.shared.js → esm2020/abp-ng.theme.shared.mjs} +0 -0
  2. package/{esm2015/extensions/abp-ng.theme.shared-extensions.js → esm2020/extensions/abp-ng.theme.shared-extensions.mjs} +0 -0
  3. package/esm2020/extensions/lib/adapters/date-time.adapter.mjs +44 -0
  4. package/{esm2015/extensions/lib/adapters/date.adapter.js → esm2020/extensions/lib/adapters/date.adapter.mjs} +4 -4
  5. package/{esm2015/extensions/lib/adapters/time.adapter.js → esm2020/extensions/lib/adapters/time.adapter.mjs} +4 -4
  6. package/{esm2015/extensions/lib/components/abstract-actions/abstract-actions.component.js → esm2020/extensions/lib/components/abstract-actions/abstract-actions.component.mjs} +4 -4
  7. 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
  8. package/esm2020/extensions/lib/components/extensible-form/extensible-form-prop.component.mjs +159 -0
  9. package/esm2020/extensions/lib/components/extensible-form/extensible-form.component.mjs +64 -0
  10. package/esm2020/extensions/lib/components/extensible-table/extensible-table.component.mjs +128 -0
  11. package/esm2020/extensions/lib/components/grid-actions/grid-actions.component.mjs +39 -0
  12. package/esm2020/extensions/lib/components/page-toolbar/page-toolbar.component.mjs +40 -0
  13. package/{esm2015/extensions/lib/constants/extra-properties.js → esm2020/extensions/lib/constants/extra-properties.mjs} +0 -0
  14. package/{esm2015/extensions/lib/directives/disabled.directive.js → esm2020/extensions/lib/directives/disabled.directive.mjs} +4 -4
  15. package/{esm2015/extensions/lib/directives/prop-data.directive.js → esm2020/extensions/lib/directives/prop-data.directive.mjs} +4 -4
  16. package/{esm2015/extensions/lib/enums/props.enum.js → esm2020/extensions/lib/enums/props.enum.mjs} +0 -0
  17. package/{esm2015/extensions/lib/models/actions.js → esm2020/extensions/lib/models/actions.mjs} +0 -0
  18. package/{esm2015/extensions/lib/models/entity-actions.js → esm2020/extensions/lib/models/entity-actions.mjs} +0 -0
  19. package/esm2020/extensions/lib/models/entity-props.mjs +36 -0
  20. package/{esm2015/extensions/lib/models/form-props.js → esm2020/extensions/lib/models/form-props.mjs} +0 -0
  21. package/{esm2015/extensions/lib/models/internal/object-extensions.js → esm2020/extensions/lib/models/internal/object-extensions.mjs} +0 -0
  22. package/{esm2015/extensions/lib/models/object-extensions.js → esm2020/extensions/lib/models/object-extensions.mjs} +0 -0
  23. package/{esm2015/extensions/lib/models/props.js → esm2020/extensions/lib/models/props.mjs} +0 -0
  24. package/{esm2015/extensions/lib/models/toolbar-actions.js → esm2020/extensions/lib/models/toolbar-actions.mjs} +0 -0
  25. package/{esm2015/extensions/lib/services/extensions.service.js → esm2020/extensions/lib/services/extensions.service.mjs} +4 -4
  26. package/{esm2015/extensions/lib/tokens/extensions.token.js → esm2020/extensions/lib/tokens/extensions.token.mjs} +0 -0
  27. package/{esm2015/extensions/lib/ui-extensions.module.js → esm2020/extensions/lib/ui-extensions.module.mjs} +9 -9
  28. package/{esm2015/extensions/lib/utils/actions.util.js → esm2020/extensions/lib/utils/actions.util.mjs} +0 -0
  29. package/{esm2015/extensions/lib/utils/enum.util.js → esm2020/extensions/lib/utils/enum.util.mjs} +0 -0
  30. package/{esm2015/extensions/lib/utils/factory.util.js → esm2020/extensions/lib/utils/factory.util.mjs} +0 -0
  31. package/{esm2015/extensions/lib/utils/form-props.util.js → esm2020/extensions/lib/utils/form-props.util.mjs} +0 -0
  32. package/{esm2015/extensions/lib/utils/localization.util.js → esm2020/extensions/lib/utils/localization.util.mjs} +0 -0
  33. package/{esm2015/extensions/lib/utils/props.util.js → esm2020/extensions/lib/utils/props.util.mjs} +0 -0
  34. package/{esm2015/extensions/lib/utils/state.util.js → esm2020/extensions/lib/utils/state.util.mjs} +2 -3
  35. package/{esm2015/extensions/lib/utils/typeahead.util.js → esm2020/extensions/lib/utils/typeahead.util.mjs} +0 -0
  36. package/{esm2015/extensions/lib/utils/validation.util.js → esm2020/extensions/lib/utils/validation.util.mjs} +0 -0
  37. package/{esm2015/extensions/public-api.js → esm2020/extensions/public-api.mjs} +0 -0
  38. package/{esm2015/lib/animations/bounce.animations.js → esm2020/lib/animations/bounce.animations.mjs} +0 -0
  39. package/{esm2015/lib/animations/collapse.animations.js → esm2020/lib/animations/collapse.animations.mjs} +0 -0
  40. package/{esm2015/lib/animations/fade.animations.js → esm2020/lib/animations/fade.animations.mjs} +0 -0
  41. package/{esm2015/lib/animations/index.js → esm2020/lib/animations/index.mjs} +0 -0
  42. package/{esm2015/lib/animations/modal.animations.js → esm2020/lib/animations/modal.animations.mjs} +0 -0
  43. package/{esm2015/lib/animations/slide.animations.js → esm2020/lib/animations/slide.animations.mjs} +0 -0
  44. package/{esm2015/lib/animations/toast.animations.js → esm2020/lib/animations/toast.animations.mjs} +0 -0
  45. package/esm2020/lib/components/breadcrumb/breadcrumb.component.mjs +43 -0
  46. package/esm2020/lib/components/breadcrumb-items/breadcrumb-items.component.mjs +19 -0
  47. package/esm2020/lib/components/button/button.component.mjs +97 -0
  48. package/esm2020/lib/components/confirmation/confirmation.component.mjs +36 -0
  49. package/esm2020/lib/components/http-error-wrapper/http-error-wrapper.component.mjs +59 -0
  50. package/{esm2015/lib/components/index.js → esm2020/lib/components/index.mjs} +0 -0
  51. package/{esm2015/lib/components/loader-bar/loader-bar.component.js → esm2020/lib/components/loader-bar/loader-bar.component.mjs} +6 -11
  52. package/{esm2015/lib/components/loading/loading.component.js → esm2020/lib/components/loading/loading.component.mjs} +5 -5
  53. package/{esm2015/lib/components/modal/modal-close.directive.js → esm2020/lib/components/modal/modal-close.directive.mjs} +5 -6
  54. package/{esm2015/lib/components/modal/modal-ref.service.js → esm2020/lib/components/modal/modal-ref.service.mjs} +4 -4
  55. package/esm2020/lib/components/modal/modal.component.mjs +189 -0
  56. package/esm2020/lib/components/toast/toast.component.mjs +55 -0
  57. package/esm2020/lib/components/toast-container/toast-container.component.mjs +43 -0
  58. package/{esm2015/lib/constants/styles.js → esm2020/lib/constants/styles.mjs} +0 -0
  59. package/{esm2015/lib/constants/validation.js → esm2020/lib/constants/validation.mjs} +0 -0
  60. package/{esm2015/lib/directives/ellipsis.directive.js → esm2020/lib/directives/ellipsis.directive.mjs} +8 -8
  61. package/{esm2015/lib/directives/index.js → esm2020/lib/directives/index.mjs} +0 -0
  62. package/esm2020/lib/directives/loading.directive.mjs +89 -0
  63. package/{esm2015/lib/directives/ngx-datatable-default.directive.js → esm2020/lib/directives/ngx-datatable-default.directive.mjs} +4 -4
  64. package/{esm2015/lib/directives/ngx-datatable-list.directive.js → esm2020/lib/directives/ngx-datatable-list.directive.mjs} +4 -4
  65. package/{esm2015/lib/enums/index.js → esm2020/lib/enums/index.mjs} +0 -0
  66. package/{esm2015/lib/enums/route-names.js → esm2020/lib/enums/route-names.mjs} +0 -0
  67. package/esm2020/lib/handlers/document-dir.handler.mjs +31 -0
  68. package/esm2020/lib/handlers/error.handler.mjs +286 -0
  69. package/{esm2015/lib/handlers/index.js → esm2020/lib/handlers/index.mjs} +0 -0
  70. package/{esm2015/lib/models/common.js → esm2020/lib/models/common.mjs} +0 -0
  71. package/{esm2015/lib/models/confirmation.js → esm2020/lib/models/confirmation.mjs} +0 -0
  72. package/esm2020/lib/models/index.mjs +7 -0
  73. package/esm2020/lib/models/nav-item.mjs +7 -0
  74. package/{esm2015/lib/models/statistics.js → esm2020/lib/models/statistics.mjs} +0 -0
  75. package/{esm2015/lib/models/toaster.js → esm2020/lib/models/toaster.mjs} +0 -0
  76. package/esm2020/lib/models/user-menu.mjs +4 -0
  77. package/{esm2015/lib/providers/index.js → esm2020/lib/providers/index.mjs} +0 -0
  78. package/{esm2015/lib/providers/ng-bootstrap-config.provider.js → esm2020/lib/providers/ng-bootstrap-config.provider.mjs} +0 -0
  79. package/{esm2015/lib/providers/route.provider.js → esm2020/lib/providers/route.provider.mjs} +0 -0
  80. package/esm2020/lib/services/abstract-menu.service.mjs +50 -0
  81. package/{esm2015/lib/services/confirmation.service.js → esm2020/lib/services/confirmation.service.mjs} +4 -4
  82. package/{esm2015/lib/services/index.js → esm2020/lib/services/index.mjs} +2 -1
  83. package/esm2020/lib/services/nav-items.service.mjs +17 -0
  84. package/esm2020/lib/services/page-alert.service.mjs +28 -0
  85. package/esm2020/lib/services/toaster.service.mjs +103 -0
  86. package/esm2020/lib/services/user-menu.service.mjs +17 -0
  87. package/esm2020/lib/theme-shared.module.mjs +162 -0
  88. package/{esm2015/lib/tokens/append-content.token.js → esm2020/lib/tokens/append-content.token.mjs} +0 -0
  89. package/esm2020/lib/tokens/http-error.token.mjs +14 -0
  90. package/{esm2015/lib/tokens/index.js → esm2020/lib/tokens/index.mjs} +0 -0
  91. package/{esm2015/lib/tokens/ngx-datatable-messages.token.js → esm2020/lib/tokens/ngx-datatable-messages.token.mjs} +0 -0
  92. package/{esm2015/lib/tokens/suppress-unsaved-changes-warning.token.js → esm2020/lib/tokens/suppress-unsaved-changes-warning.token.mjs} +0 -0
  93. package/{esm2015/lib/utils/date-parser-formatter.js → esm2020/lib/utils/date-parser-formatter.mjs} +5 -6
  94. package/{esm2015/lib/utils/index.js → esm2020/lib/utils/index.mjs} +0 -0
  95. package/{esm2015/lib/utils/validation-utils.js → esm2020/lib/utils/validation-utils.mjs} +0 -0
  96. package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
  97. package/{esm2015/testing/abp-ng.theme.shared-testing.js → esm2020/testing/abp-ng.theme.shared-testing.mjs} +0 -0
  98. package/{esm2015/testing/lib/models/config.js → esm2020/testing/lib/models/config.mjs} +0 -0
  99. package/{esm2015/testing/lib/models/index.js → esm2020/testing/lib/models/index.mjs} +0 -0
  100. package/esm2020/testing/lib/theme-shared-testing.module.mjs +46 -0
  101. package/{esm2015/testing/public-api.js → esm2020/testing/public-api.mjs} +0 -0
  102. package/extensions/lib/models/entity-props.d.ts +1 -1
  103. package/extensions/lib/tokens/extensions.token.d.ts +1 -1
  104. package/extensions/package.json +5 -5
  105. package/fesm2015/abp-ng.theme.shared-extensions.mjs +1329 -0
  106. package/fesm2015/abp-ng.theme.shared-extensions.mjs.map +1 -0
  107. package/fesm2015/{abp-ng.theme.shared-testing.js → abp-ng.theme.shared-testing.mjs} +5 -5
  108. package/fesm2015/abp-ng.theme.shared-testing.mjs.map +1 -0
  109. package/fesm2015/{abp-ng.theme.shared.js → abp-ng.theme.shared.mjs} +175 -178
  110. package/fesm2015/abp-ng.theme.shared.mjs.map +1 -0
  111. package/{fesm2015/abp-ng.theme.shared-extensions.js → fesm2020/abp-ng.theme.shared-extensions.mjs} +80 -99
  112. package/fesm2020/abp-ng.theme.shared-extensions.mjs.map +1 -0
  113. package/fesm2020/abp-ng.theme.shared-testing.mjs +57 -0
  114. package/fesm2020/abp-ng.theme.shared-testing.mjs.map +1 -0
  115. package/fesm2020/abp-ng.theme.shared.mjs +2200 -0
  116. package/fesm2020/abp-ng.theme.shared.mjs.map +1 -0
  117. package/lib/models/index.d.ts +2 -1
  118. package/lib/models/user-menu.d.ts +8 -0
  119. package/lib/services/abstract-menu.service.d.ts +12 -0
  120. package/lib/services/index.d.ts +1 -0
  121. package/lib/services/nav-items.service.d.ts +3 -8
  122. package/lib/services/user-menu.service.d.ts +8 -0
  123. package/package.json +38 -8
  124. package/testing/package.json +5 -5
  125. package/bundles/abp-ng.theme.shared-extensions.umd.js +0 -1904
  126. package/bundles/abp-ng.theme.shared-extensions.umd.js.map +0 -1
  127. package/bundles/abp-ng.theme.shared-testing.umd.js +0 -82
  128. package/bundles/abp-ng.theme.shared-testing.umd.js.map +0 -1
  129. package/bundles/abp-ng.theme.shared.umd.js +0 -2506
  130. package/bundles/abp-ng.theme.shared.umd.js.map +0 -1
  131. package/esm2015/extensions/lib/adapters/date-time.adapter.js +0 -34
  132. package/esm2015/extensions/lib/components/extensible-form/extensible-form-prop.component.js +0 -164
  133. package/esm2015/extensions/lib/components/extensible-form/extensible-form.component.js +0 -70
  134. package/esm2015/extensions/lib/components/extensible-table/extensible-table.component.js +0 -134
  135. package/esm2015/extensions/lib/components/grid-actions/grid-actions.component.js +0 -45
  136. package/esm2015/extensions/lib/components/page-toolbar/page-toolbar.component.js +0 -46
  137. package/esm2015/extensions/lib/models/entity-props.js +0 -34
  138. package/esm2015/lib/components/breadcrumb/breadcrumb.component.js +0 -49
  139. package/esm2015/lib/components/breadcrumb-items/breadcrumb-items.component.js +0 -22
  140. package/esm2015/lib/components/button/button.component.js +0 -98
  141. package/esm2015/lib/components/confirmation/confirmation.component.js +0 -40
  142. package/esm2015/lib/components/http-error-wrapper/http-error-wrapper.component.js +0 -65
  143. package/esm2015/lib/components/modal/modal.component.js +0 -188
  144. package/esm2015/lib/components/toast/toast.component.js +0 -61
  145. package/esm2015/lib/components/toast-container/toast-container.component.js +0 -49
  146. package/esm2015/lib/directives/loading.directive.js +0 -90
  147. package/esm2015/lib/handlers/document-dir.handler.js +0 -33
  148. package/esm2015/lib/handlers/error.handler.js +0 -292
  149. package/esm2015/lib/models/index.js +0 -6
  150. package/esm2015/lib/models/nav-item.js +0 -7
  151. package/esm2015/lib/services/nav-items.service.js +0 -51
  152. package/esm2015/lib/services/page-alert.service.js +0 -26
  153. package/esm2015/lib/services/toaster.service.js +0 -103
  154. package/esm2015/lib/theme-shared.module.js +0 -165
  155. package/esm2015/lib/tokens/http-error.token.js +0 -10
  156. package/esm2015/testing/lib/theme-shared-testing.module.js +0 -43
  157. package/fesm2015/abp-ng.theme.shared-extensions.js.map +0 -1
  158. package/fesm2015/abp-ng.theme.shared-testing.js.map +0 -1
  159. package/fesm2015/abp-ng.theme.shared.js.map +0 -1
@@ -115,10 +115,9 @@ function createPropertiesToContributorsMapper(generateDisplayName, resource, enu
115
115
  };
116
116
  }
117
117
  function getTypeFromProperty(property) {
118
- var _a;
119
- return (_a = property === null || property === void 0 ? void 0 : property.typeSimple) === null || _a === void 0 ? void 0 : _a.replace(/\?$/, '');
118
+ return property?.typeSimple?.replace(/\?$/, '');
120
119
  }
121
120
  function isUndefined(obj) {
122
121
  return typeof obj === 'undefined';
123
122
  }
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLXNoYXJlZC9leHRlbnNpb25zL3NyYy9saWIvdXRpbHMvc3RhdGUudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQWMsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFVBQVUsRUFBa0IsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsUUFBUSxFQUFnQixNQUFNLHNCQUFzQixDQUFDO0FBRzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDckYsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hFLE9BQU8sRUFDTCxtQ0FBbUMsRUFDbkMsc0JBQXNCLEVBQ3RCLGdCQUFnQixFQUNoQixzQkFBc0IsR0FDdkIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5RCxTQUFTLHNCQUFzQixDQUM3QixXQUErQjtJQUUvQixPQUFPLFdBQVcsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUNqRCxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FDekIsV0FBK0I7SUFFL0IsT0FBTyxXQUFXLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQzdDLENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FDbEIsV0FBK0I7SUFFL0IsT0FBTyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMs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LHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUVoRixNQUFNLFFBQVEsR0FBRyxJQUFJLFFBQVEsQ0FBQztvQkFDNUIsSUFBSTtvQkFDSixJQUFJLEVBQUUsUUFBUTtvQkFDZCxXQUFXO29CQUNYLE9BQU87b0JBQ1AsWUFBWTtvQkFDWixVQUFVO29CQUNWLE9BQU87aUJBQ1IsQ0FBQyxDQUFDO2dCQUVILE1BQU0sZUFBZSxHQUFHLENBQUMsUUFBeUIsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFFbEYsSUFBSSxjQUFjO29CQUFFLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUN2RSxJQUFJLFlBQVk7b0JBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7YUFDcEU7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLG1CQUFtQixDQUFDLFFBQStDOztJQUMxRSxPQUFPLE1BQUEsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLFVBQVUsMENBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQXdCLENBQUM7QUFDekUsQ0FBQztBQUVELFNBQVMsV0FBVyxDQUFDLEdBQVE7SUFDM0IsT0FBTyxPQUFPLEdBQUcsS0FBSyxXQUFXLENBQUM7QUFDcEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQUJQLFxyXG4gIEFwcGxpY2F0aW9uTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbkR0byxcclxuICBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbiAgRXh0ZW5zaW9uUHJvcGVydHlVaUxvb2t1cER0byxcclxufSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBwaXBlLCB6aXAgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHN3aXRjaE1hcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgZVByb3BUeXBlIH0gZnJvbSAnLi4vZW51bXMvcHJvcHMuZW51bSc7XHJcbmltcG9ydCB7IEVudGl0eVByb3AsIEVudGl0eVByb3BMaXN0IH0gZnJvbSAnLi4vbW9kZWxzL2VudGl0eS1wcm9wcyc7XHJcbmltcG9ydCB7IEZvcm1Qcm9wLCBGb3JtUHJvcExpc3QgfSBmcm9tICcuLi9tb2RlbHMvZm9ybS1wcm9wcyc7XHJcbmltcG9ydCB7IE9iamVjdEV4dGVuc2lvbnMgfSBmcm9tICcuLi9tb2RlbHMvb2JqZWN0LWV4dGVuc2lvbnMnO1xyXG5pbXBvcnQgeyBQcm9wQ2FsbGJhY2sgfSBmcm9tICcuLi9tb2RlbHMvcHJvcHMnO1xyXG5pbXBvcnQgeyBjcmVhdGVFbnVtLCBjcmVhdGVFbnVtT3B0aW9ucywgY3JlYXRlRW51bVZhbHVlUmVzb2x2ZXIgfSBmcm9tICcuL2VudW0udXRpbCc7XHJcbmltcG9ydCB7IGNyZWF0ZURpc3BsYXlOYW1lTG9jYWxpemF0aW9uUGlwZUtleUdlbmVyYXRvciB9IGZyb20gJy4vbG9jYWxpemF0aW9uLnV0aWwnO1xyXG5pbXBvcnQgeyBjcmVhdGVFeHRyYVByb3BlcnR5VmFsdWVSZXNvbHZlciB9IGZyb20gJy4vcHJvcHMudXRpbCc7XHJcbmltcG9ydCB7XHJcbiAgY3JlYXRlVHlwZWFoZWFkRGlzcGxheU5hbWVHZW5lcmF0b3IsXHJcbiAgY3JlYXRlVHlwZWFoZWFkT3B0aW9ucyxcclxuICBnZXRUeXBlYWhlYWRUeXBlLFxyXG4gIGhhc1R5cGVhaGVhZFRleHRTdWZmaXgsXHJcbn0gZnJvbSAnLi90eXBlYWhlYWQudXRpbCc7XHJcbmltcG9ydCB7IGdldFZhbGlkYXRvcnNGcm9tUHJvcGVydHkgfSBmcm9tICcuL3ZhbGlkYXRpb24udXRpbCc7XHJcblxyXG5mdW5jdGlvbiBzZWxlY3RPYmplY3RFeHRlbnNpb25zKFxyXG4gIGNvbmZpZ1N0YXRlOiBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbik6IE9ic2VydmFibGU8T2JqZWN0RXh0ZW5zaW9ucy5PYmplY3RFeHRlbnNpb25zRHRvPiB7XHJcbiAgcmV0dXJuIGNvbmZpZ1N0YXRlLmdldE9uZSQoJ29iamVjdEV4dGVuc2lvbnMnKTtcclxufVxyXG5cclxuZnVuY3Rpb24gc2VsZWN0TG9jYWxpemF0aW9uKFxyXG4gIGNvbmZpZ1N0YXRlOiBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbik6IE9ic2VydmFibGU8QXBwbGljYXRpb25Mb2NhbGl6YXRpb25Db25maWd1cmF0aW9uRHRvPiB7XHJcbiAgcmV0dXJuIGNvbmZpZ1N0YXRlLmdldE9uZSQoJ2xvY2FsaXphdGlvbicpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBzZWxlY3RFbnVtcyhcclxuICBjb25maWdTdGF0ZTogQ29uZmlnU3RhdGVTZXJ2aWNlLFxyXG4pOiBPYnNlcnZhYmxlPFJlY29yZDxzdHJpbmcsIE9iamVjdEV4dGVuc2lvbnMuRXh0ZW5zaW9uRW51bUR0bz4+IHtcclxuICByZXR1cm4gc2VsZWN0T2JqZWN0RXh0ZW5zaW9ucyhjb25maWdTdGF0ZSkucGlwZShcclxuICAgIG1hcCgoZXh0ZW5zaW9uczogT2JqZWN0RXh0ZW5zaW9ucy5PYmplY3RFeHRlbnNpb25zRHRvKSA9PlxyXG4gICAgICBPYmplY3Qua2V5cyhleHRlbnNpb25zLmVudW1zKS5yZWR1Y2UoKGFjYywga2V5KSA9PiB7XHJcbiAgICAgICAgY29uc3QgeyBmaWVsZHMsIGxvY2FsaXphdGlvblJlc291cmNlIH0gPSBleHRlbnNpb25zLmVudW1zW2tleV07XHJcbiAgICAgICAgYWNjW2tleV0gPSB7XHJcbiAgICAgICAgICBmaWVsZHMsXHJcbiAgICAgICAgICBsb2NhbGl6YXRpb25SZXNvdXJjZSxcclxuICAgICAgICAgIHRyYW5zZm9ybWVkOiBjcmVhdGVFbnVtKGZpZWxkcyksXHJcbiAgICAgICAgfTtcclxuICAgICAgICByZXR1cm4gYWNjO1xyXG4gICAgICB9LCB7fSBhcyBSZWNvcmQ8c3RyaW5nLCBPYmplY3RFeHRlbnNpb25zLkV4dGVuc2lvbkVudW1EdG8+KSxcclxuICAgICksXHJcbiAgKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldE9iamVjdEV4dGVuc2lvbkVudGl0aWVzRnJvbVN0b3JlKFxyXG4gIGNvbmZpZ1N0YXRlOiBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbiAgbW9kdWxlS2V5OiBzdHJpbmcsXHJcbikge1xyXG4gIHJldHVybiBzZWxlY3RPYmplY3RFeHRlbnNpb25zKGNvbmZpZ1N0YXRlKS5waXBlKFxyXG4gICAgbWFwKGV4dGVuc2lvbnMgPT4ge1xyXG4gICAgICBpZiAoIWV4dGVuc2lvbnMpIHJldHVybiBudWxsO1xyXG5cclxuICAgICAgcmV0dXJuIChleHRlbnNpb25zLm1vZHVsZXNbbW9kdWxlS2V5XSB8fCAoe30gYXMgT2JqZWN0RXh0ZW5zaW9ucy5Nb2R1bGVFeHRlbnNpb25EdG8pKVxyXG4gICAgICAgIC5lbnRpdGllcztcclxuICAgIH0pLFxyXG4gICAgbWFwKGVudGl0aWVzID0+IChpc1VuZGVmaW5lZChlbnRpdGllcykgPyB7fSA6IGVudGl0aWVzKSksXHJcbiAgICBmaWx0ZXI8T2JqZWN0RXh0ZW5zaW9ucy5FbnRpdHlFeHRlbnNpb25zPihCb29sZWFuKSxcclxuICAgIHRha2UoMSksXHJcbiAgKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG1hcEVudGl0aWVzVG9Db250cmlidXRvcnM8VCA9IGFueT4oXHJcbiAgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZSxcclxuICByZXNvdXJjZTogc3RyaW5nLFxyXG4pIHtcclxuICByZXR1cm4gcGlwZShcclxuICAgIHN3aXRjaE1hcCgoZW50aXRpZXM6IGFueSkgPT5cclxuICAgICAgemlwKHNlbGVjdExvY2FsaXphdGlvbihjb25maWdTdGF0ZSksIHNlbGVjdEVudW1zKGNvbmZpZ1N0YXRlKSkucGlwZShcclxuICAgICAgICBtYXAoKFtsb2NhbGl6YXRpb24sIGVudW1zXSkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgZ2VuZXJhdGVEaXNwbGF5TmFtZSA9IGNyZWF0ZURpc3BsYXlOYW1lTG9jYWxpemF0aW9uUGlwZUtleUdlbmVyYXRvcihsb2NhbGl6YXRpb24pO1xyXG5cclxuICAgICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhlbnRpdGllcykucmVkdWNlKFxyXG4gICAgICAgICAgICAoYWNjLCBrZXk6IGtleW9mIE9iamVjdEV4dGVuc2lvbnMuRW50aXR5RXh0ZW5zaW9ucykgPT4ge1xyXG4gICAgICAgICAgICAgIGFjYy5wcm9wW2tleV0gPSBbXTtcclxuICAgICAgICAgICAgICBhY2MuY3JlYXRlRm9ybVtrZXldID0gW107XHJcbiAgICAgICAgICAgICAgYWNjLmVkaXRGb3JtW2tleV0gPSBbXTtcclxuXHJcbiAgICAgICAgICAgICAgY29uc3QgZW50aXR5OiBPYmplY3RFeHRlbnNpb25zLkVudGl0eUV4dGVuc2lvbkR0byA9IGVudGl0aWVzW2tleV07XHJcbiAgICAgICAgICAgICAgaWYgKCFlbnRpdHkpIHJldHVybiBhY2M7XHJcblxyXG4gICAgICAgICAgICAgIGNvbnN0IHByb3BlcnRpZXMgPSBlbnRpdHkucHJvcGVydGllcztcclxuICAgICAgICAgICAgICBpZiAoIXByb3BlcnRpZXMpIHJldHVybiBhY2M7XHJcblxyXG4gICAgICAgICAgICAgIGNvbnN0IG1hcFByb3BlcnRpZXNUb0NvbnRyaWJ1dG9ycyA9IGNyZWF0ZVByb3BlcnRpZXNUb0NvbnRyaWJ1dG9yc01hcHBlcjxUPihcclxuICAgICAgICAgICAgICAgIGdlbmVyYXRlRGlzcGxheU5hbWUsXHJcbiAgICAgICAgICAgICAgICByZXNvdXJjZSxcclxuICAgICAgICAgICAgICAgIGVudW1zLFxyXG4gICAgICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgICAgIHJldHVybiBtYXBQcm9wZXJ0aWVzVG9Db250cmlidXRvcnMocHJvcGVydGllcywgYWNjLCBrZXkpO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgcHJvcDoge30sXHJcbiAgICAgICAgICAgICAgY3JlYXRlRm9ybToge30sXHJcbiAgICAgICAgICAgICAgZWRpdEZvcm06IHt9LFxyXG4gICAgICAgICAgICB9IGFzIE9iamVjdEV4dGVuc2lvbnMuUHJvcENvbnRyaWJ1dG9ycyxcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICksXHJcbiAgICApLFxyXG4gICAgdGFrZSgxKSxcclxuICApO1xyXG59XHJcblxyXG5mdW5jdGlvbiBjcmVhdGVQcm9wZXJ0aWVzVG9Db250cmlidXRvcnNNYXBwZXI8VCA9IGFueT4oXHJcbiAgZ2VuZXJhdGVEaXNwbGF5TmFtZTogT2JqZWN0RXh0ZW5zaW9ucy5EaXNwbGF5TmFtZUdlbmVyYXRvckZuLFxyXG4gIHJlc291cmNlOiBzdHJpbmcsXHJcbiAgZW51bXM6IFJlY29yZDxzdHJpbmcsIE9iamVjdEV4dGVuc2lvbnMuRXh0ZW5zaW9uRW51bUR0bz4sXHJcbikge1xyXG4gIHJldHVybiAoXHJcbiAgICBwcm9wZXJ0aWVzOiBPYmplY3RFeHRlbnNpb25zLkVudGl0eUV4dGVuc2lvblByb3BlcnRpZXMsXHJcbiAgICBjb250cmlidXRvcnM6IE9iamVjdEV4dGVuc2lvbnMuUHJvcENvbnRyaWJ1dG9yczxUPixcclxuICAgIGtleTogc3RyaW5nLFxyXG4gICkgPT4ge1xyXG4gICAgY29uc3QgaXNFeHRyYSA9IHRydWU7XHJcbiAgICBjb25zdCBnZW5lcmF0ZVR5cGVhaGVhZERpc3BsYXlOYW1lID0gY3JlYXRlVHlwZWFoZWFkRGlzcGxheU5hbWVHZW5lcmF0b3IoXHJcbiAgICAgIGdlbmVyYXRlRGlzcGxheU5hbWUsXHJcbiAgICAgIHByb3BlcnRpZXMsXHJcbiAgICApO1xyXG5cclxuICAgIE9iamVjdC5rZXlzKHByb3BlcnRpZXMpLmZvckVhY2goKG5hbWU6IHN0cmluZykgPT4ge1xyXG4gICAgICBjb25zdCBwcm9wZXJ0eSA9IHByb3BlcnRpZXNbbmFtZV07XHJcbiAgICAgIGNvbnN0IHByb3BOYW1lID0gbmFtZTtcclxuICAgICAgY29uc3QgbG9va3VwID0gcHJvcGVydHkudWkubG9va3VwIHx8ICh7fSBhcyBFeHRlbnNpb25Qcm9wZXJ0eVVpTG9va3VwRHRvKTtcclxuICAgICAgY29uc3QgdHlwZSA9IGdldFR5cGVhaGVhZFR5cGUobG9va3VwLCBuYW1lKSB8fCBnZXRUeXBlRnJvbVByb3BlcnR5KHByb3BlcnR5KTtcclxuICAgICAgY29uc3QgZ2VuZXJhdGVETiA9IGhhc1R5cGVhaGVhZFRleHRTdWZmaXgobmFtZSlcclxuICAgICAgICA/IGdlbmVyYXRlVHlwZWFoZWFkRGlzcGxheU5hbWVcclxuICAgICAgICA6IGdlbmVyYXRlRGlzcGxheU5hbWU7XHJcbiAgICAgIGNvbnN0IGRpc3BsYXlOYW1lID0gZ2VuZXJhdGVETihwcm9wZXJ0eS5kaXNwbGF5TmFtZSwgeyBuYW1lLCByZXNvdXJjZSB9KTtcclxuXHJcbiAgICAgIGlmIChwcm9wZXJ0eS51aS5vblRhYmxlLmlzVmlzaWJsZSkge1xyXG4gICAgICAgIGNvbnN0IHNvcnRhYmxlID0gQm9vbGVhbihwcm9wZXJ0eS51aS5vblRhYmxlLmlzU29ydGFibGUpO1xyXG4gICAgICAgIGNvbnN0IGNvbHVtbldpZHRoID0gdHlwZSA9PT0gZVByb3BUeXBlLkJvb2xlYW4gPyAxNTAgOiAyNTA7XHJcbiAgICAgICAgY29uc3QgdmFsdWVSZXNvbHZlciA9XHJcbiAgICAgICAgICB0eXBlID09PSBlUHJvcFR5cGUuRW51bVxyXG4gICAgICAgICAgICA/IGNyZWF0ZUVudW1WYWx1ZVJlc29sdmVyKHByb3BlcnR5LnR5cGUsIGVudW1zW3Byb3BlcnR5LnR5cGVdLCBwcm9wTmFtZSlcclxuICAgICAgICAgICAgOiBjcmVhdGVFeHRyYVByb3BlcnR5VmFsdWVSZXNvbHZlcjxUPihwcm9wTmFtZSk7XHJcblxyXG4gICAgICAgIGNvbnN0IGVudGl0eVByb3AgPSBuZXcgRW50aXR5UHJvcDxUPih7XHJcbiAgICAgICAgICB0eXBlLFxyXG4gICAgICAgICAgbmFtZTogcHJvcE5hbWUsXHJcbiAgICAgICAgICBkaXNwbGF5TmFtZSxcclxuICAgICAgICAgIHNvcnRhYmxlLFxyXG4gICAgICAgICAgY29sdW1uV2lkdGgsXHJcbiAgICAgICAgICB2YWx1ZVJlc29sdmVyLFxyXG4gICAgICAgICAgaXNFeHRyYSxcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgY29uc3QgY29udHJpYnV0b3IgPSAocHJvcExpc3Q6IEVudGl0eVByb3BMaXN0PFQ+KSA9PiBwcm9wTGlzdC5hZGRUYWlsKGVudGl0eVByb3ApO1xyXG4gICAgICAgIGNvbnRyaWJ1dG9ycy5wcm9wW2tleV0ucHVzaChjb250cmlidXRvcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGlzT25DcmVhdGVGb3JtID0gcHJvcGVydHkudWkub25DcmVhdGVGb3JtLmlzVmlzaWJsZTtcclxuICAgICAgY29uc3QgaXNPbkVkaXRGb3JtID0gcHJvcGVydHkudWkub25FZGl0Rm9ybS5pc1Zpc2libGU7XHJcblxyXG4gICAgICBpZiAoaXNPbkNyZWF0ZUZvcm0gfHwgaXNPbkVkaXRGb3JtKSB7XHJcbiAgICAgICAgY29uc3QgZGVmYXVsdFZhbHVlID0gcHJvcGVydHkuZGVmYXVsdFZhbHVlO1xyXG4gICAgICAgIGNvbnN0IHZhbGlkYXRvcnMgPSAoKSA9PiBnZXRWYWxpZGF0b3JzRnJvbVByb3BlcnR5KHByb3BlcnR5KTtcclxuICAgICAgICBsZXQgb3B0aW9uczogUHJvcENhbGxiYWNrPGFueSwgT2JzZXJ2YWJsZTxBQlAuT3B0aW9uPGFueT5bXT4+IHwgdW5kZWZpbmVkO1xyXG4gICAgICAgIGlmICh0eXBlID09PSBlUHJvcFR5cGUuRW51bSlcclxuICAgICAgICAgIG9wdGlvbnMgPSBjcmVhdGVFbnVtT3B0aW9ucyhwcm9wTmFtZSwgZW51bXNbcHJvcGVydHkudHlwZSB8fCAnJ10pO1xyXG4gICAgICAgIGVsc2UgaWYgKHR5cGUgPT09IGVQcm9wVHlwZS5UeXBlYWhlYWQpIG9wdGlvbnMgPSBjcmVhdGVUeXBlYWhlYWRPcHRpb25zKGxvb2t1cCk7XHJcblxyXG4gICAgICAgIGNvbnN0IGZvcm1Qcm9wID0gbmV3IEZvcm1Qcm9wKHtcclxuICAgICAgICAgIHR5cGUsXHJcbiAgICAgICAgICBuYW1lOiBwcm9wTmFtZSxcclxuICAgICAgICAgIGRpc3BsYXlOYW1lLFxyXG4gICAgICAgICAgb3B0aW9ucyxcclxuICAgICAgICAgIGRlZmF1bHRWYWx1ZSxcclxuICAgICAgICAgIHZhbGlkYXRvcnMsXHJcbiAgICAgICAgICBpc0V4dHJhLFxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBjb25zdCBmb3JtQ29udHJpYnV0b3IgPSAocHJvcExpc3Q6IEZvcm1Qcm9wTGlzdDxUPikgPT4gcHJvcExpc3QuYWRkVGFpbChmb3JtUHJvcCk7XHJcblxyXG4gICAgICAgIGlmIChpc09uQ3JlYXRlRm9ybSkgY29udHJpYnV0b3JzLmNyZWF0ZUZvcm1ba2V5XS5wdXNoKGZvcm1Db250cmlidXRvcik7XHJcbiAgICAgICAgaWYgKGlzT25FZGl0Rm9ybSkgY29udHJpYnV0b3JzLmVkaXRGb3JtW2tleV0ucHVzaChmb3JtQ29udHJpYnV0b3IpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gY29udHJpYnV0b3JzO1xyXG4gIH07XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGdldFR5cGVGcm9tUHJvcGVydHkocHJvcGVydHk6IE9iamVjdEV4dGVuc2lvbnMuRXh0ZW5zaW9uUHJvcGVydHlEdG8pOiBlUHJvcFR5cGUge1xyXG4gIHJldHVybiBwcm9wZXJ0eT8udHlwZVNpbXBsZT8ucmVwbGFjZSgvXFw/JC8sICcnKSBhcyBzdHJpbmcgYXMgZVByb3BUeXBlO1xyXG59XHJcblxyXG5mdW5jdGlvbiBpc1VuZGVmaW5lZChvYmo6IGFueSk6IG9iaiBpcyB1bmRlZmluZWQge1xyXG4gIHJldHVybiB0eXBlb2Ygb2JqID09PSAndW5kZWZpbmVkJztcclxufVxyXG4iXX0=
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLXNoYXJlZC9leHRlbnNpb25zL3NyYy9saWIvdXRpbHMvc3RhdGUudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQWMsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFVBQVUsRUFBa0IsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsUUFBUSxFQUFnQixNQUFNLHNCQUFzQixDQUFDO0FBRzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDckYsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hFLE9BQU8sRUFDTCxtQ0FBbUMsRUFDbkMsc0JBQXNCLEVBQ3RCLGdCQUFnQixFQUNoQixzQkFBc0IsR0FDdkIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5RCxTQUFTLHNCQUFzQixDQUM3QixXQUErQjtJQUUvQixPQUFPLFdBQVcsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUNqRCxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FDekIsV0FBK0I7SUFFL0IsT0FBTyxXQUFXLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQzdDLENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FDbEIsV0FBK0I7SUFFL0IsT0FBTyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMs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LHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUVoRixNQUFNLFFBQVEsR0FBRyxJQUFJLFFBQVEsQ0FBQztvQkFDNUIsSUFBSTtvQkFDSixJQUFJLEVBQUUsUUFBUTtvQkFDZCxXQUFXO29CQUNYLE9BQU87b0JBQ1AsWUFBWTtvQkFDWixVQUFVO29CQUNWLE9BQU87aUJBQ1IsQ0FBQyxDQUFDO2dCQUVILE1BQU0sZUFBZSxHQUFHLENBQUMsUUFBeUIsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFFbEYsSUFBSSxjQUFjO29CQUFFLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUN2RSxJQUFJLFlBQVk7b0JBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7YUFDcEU7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLG1CQUFtQixDQUFDLFFBQStDO0lBQzFFLE9BQU8sUUFBUSxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBd0IsQ0FBQztBQUN6RSxDQUFDO0FBRUQsU0FBUyxXQUFXLENBQUMsR0FBUTtJQUMzQixPQUFPLE9BQU8sR0FBRyxLQUFLLFdBQVcsQ0FBQztBQUNwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBQlAsXHJcbiAgQXBwbGljYXRpb25Mb2NhbGl6YXRpb25Db25maWd1cmF0aW9uRHRvLFxyXG4gIENvbmZpZ1N0YXRlU2VydmljZSxcclxuICBFeHRlbnNpb25Qcm9wZXJ0eVVpTG9va3VwRHRvLFxyXG59IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIHBpcGUsIHppcCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgc3dpdGNoTWFwLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBlUHJvcFR5cGUgfSBmcm9tICcuLi9lbnVtcy9wcm9wcy5lbnVtJztcclxuaW1wb3J0IHsgRW50aXR5UHJvcCwgRW50aXR5UHJvcExpc3QgfSBmcm9tICcuLi9tb2RlbHMvZW50aXR5LXByb3BzJztcclxuaW1wb3J0IHsgRm9ybVByb3AsIEZvcm1Qcm9wTGlzdCB9IGZyb20gJy4uL21vZGVscy9mb3JtLXByb3BzJztcclxuaW1wb3J0IHsgT2JqZWN0RXh0ZW5zaW9ucyB9IGZyb20gJy4uL21vZGVscy9vYmplY3QtZXh0ZW5zaW9ucyc7XHJcbmltcG9ydCB7IFByb3BDYWxsYmFjayB9IGZyb20gJy4uL21vZGVscy9wcm9wcyc7XHJcbmltcG9ydCB7IGNyZWF0ZUVudW0sIGNyZWF0ZUVudW1PcHRpb25zLCBjcmVhdGVFbnVtVmFsdWVSZXNvbHZlciB9IGZyb20gJy4vZW51bS51dGlsJztcclxuaW1wb3J0IHsgY3JlYXRlRGlzcGxheU5hbWVMb2NhbGl6YXRpb25QaXBlS2V5R2VuZXJhdG9yIH0gZnJvbSAnLi9sb2NhbGl6YXRpb24udXRpbCc7XHJcbmltcG9ydCB7IGNyZWF0ZUV4dHJhUHJvcGVydHlWYWx1ZVJlc29sdmVyIH0gZnJvbSAnLi9wcm9wcy51dGlsJztcclxuaW1wb3J0IHtcclxuICBjcmVhdGVUeXBlYWhlYWREaXNwbGF5TmFtZUdlbmVyYXRvcixcclxuICBjcmVhdGVUeXBlYWhlYWRPcHRpb25zLFxyXG4gIGdldFR5cGVhaGVhZFR5cGUsXHJcbiAgaGFzVHlwZWFoZWFkVGV4dFN1ZmZpeCxcclxufSBmcm9tICcuL3R5cGVhaGVhZC51dGlsJztcclxuaW1wb3J0IHsgZ2V0VmFsaWRhdG9yc0Zyb21Qcm9wZXJ0eSB9IGZyb20gJy4vdmFsaWRhdGlvbi51dGlsJztcclxuXHJcbmZ1bmN0aW9uIHNlbGVjdE9iamVjdEV4dGVuc2lvbnMoXHJcbiAgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZSxcclxuKTogT2JzZXJ2YWJsZTxPYmplY3RFeHRlbnNpb25zLk9iamVjdEV4dGVuc2lvbnNEdG8+IHtcclxuICByZXR1cm4gY29uZmlnU3RhdGUuZ2V0T25lJCgnb2JqZWN0RXh0ZW5zaW9ucycpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBzZWxlY3RMb2NhbGl6YXRpb24oXHJcbiAgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZSxcclxuKTogT2JzZXJ2YWJsZTxBcHBsaWNhdGlvbkxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb25EdG8+IHtcclxuICByZXR1cm4gY29uZmlnU3RhdGUuZ2V0T25lJCgnbG9jYWxpemF0aW9uJyk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHNlbGVjdEVudW1zKFxyXG4gIGNvbmZpZ1N0YXRlOiBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbik6IE9ic2VydmFibGU8UmVjb3JkPHN0cmluZywgT2JqZWN0RXh0ZW5zaW9ucy5FeHRlbnNpb25FbnVtRHRvPj4ge1xyXG4gIHJldHVybiBzZWxlY3RPYmplY3RFeHRlbnNpb25zKGNvbmZpZ1N0YXRlKS5waXBlKFxyXG4gICAgbWFwKChleHRlbnNpb25zOiBPYmplY3RFeHRlbnNpb25zLk9iamVjdEV4dGVuc2lvbnNEdG8pID0+XHJcbiAgICAgIE9iamVjdC5rZXlzKGV4dGVuc2lvbnMuZW51bXMpLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcclxuICAgICAgICBjb25zdCB7IGZpZWxkcywgbG9jYWxpemF0aW9uUmVzb3VyY2UgfSA9IGV4dGVuc2lvbnMuZW51bXNba2V5XTtcclxuICAgICAgICBhY2Nba2V5XSA9IHtcclxuICAgICAgICAgIGZpZWxkcyxcclxuICAgICAgICAgIGxvY2FsaXphdGlvblJlc291cmNlLFxyXG4gICAgICAgICAgdHJhbnNmb3JtZWQ6IGNyZWF0ZUVudW0oZmllbGRzKSxcclxuICAgICAgICB9O1xyXG4gICAgICAgIHJldHVybiBhY2M7XHJcbiAgICAgIH0sIHt9IGFzIFJlY29yZDxzdHJpbmcsIE9iamVjdEV4dGVuc2lvbnMuRXh0ZW5zaW9uRW51bUR0bz4pLFxyXG4gICAgKSxcclxuICApO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0T2JqZWN0RXh0ZW5zaW9uRW50aXRpZXNGcm9tU3RvcmUoXHJcbiAgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZSxcclxuICBtb2R1bGVLZXk6IHN0cmluZyxcclxuKSB7XHJcbiAgcmV0dXJuIHNlbGVjdE9iamVjdEV4dGVuc2lvbnMoY29uZmlnU3RhdGUpLnBpcGUoXHJcbiAgICBtYXAoZXh0ZW5zaW9ucyA9PiB7XHJcbiAgICAgIGlmICghZXh0ZW5zaW9ucykgcmV0dXJuIG51bGw7XHJcblxyXG4gICAgICByZXR1cm4gKGV4dGVuc2lvbnMubW9kdWxlc1ttb2R1bGVLZXldIHx8ICh7fSBhcyBPYmplY3RFeHRlbnNpb25zLk1vZHVsZUV4dGVuc2lvbkR0bykpXHJcbiAgICAgICAgLmVudGl0aWVzO1xyXG4gICAgfSksXHJcbiAgICBtYXAoZW50aXRpZXMgPT4gKGlzVW5kZWZpbmVkKGVudGl0aWVzKSA/IHt9IDogZW50aXRpZXMpKSxcclxuICAgIGZpbHRlcjxPYmplY3RFeHRlbnNpb25zLkVudGl0eUV4dGVuc2lvbnM+KEJvb2xlYW4pLFxyXG4gICAgdGFrZSgxKSxcclxuICApO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbWFwRW50aXRpZXNUb0NvbnRyaWJ1dG9yczxUID0gYW55PihcclxuICBjb25maWdTdGF0ZTogQ29uZmlnU3RhdGVTZXJ2aWNlLFxyXG4gIHJlc291cmNlOiBzdHJpbmcsXHJcbikge1xyXG4gIHJldHVybiBwaXBlKFxyXG4gICAgc3dpdGNoTWFwKChlbnRpdGllczogYW55KSA9PlxyXG4gICAgICB6aXAoc2VsZWN0TG9jYWxpemF0aW9uKGNvbmZpZ1N0YXRlKSwgc2VsZWN0RW51bXMoY29uZmlnU3RhdGUpKS5waXBlKFxyXG4gICAgICAgIG1hcCgoW2xvY2FsaXphdGlvbiwgZW51bXNdKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBnZW5lcmF0ZURpc3BsYXlOYW1lID0gY3JlYXRlRGlzcGxheU5hbWVMb2NhbGl6YXRpb25QaXBlS2V5R2VuZXJhdG9yKGxvY2FsaXphdGlvbik7XHJcblxyXG4gICAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKGVudGl0aWVzKS5yZWR1Y2UoXHJcbiAgICAgICAgICAgIChhY2MsIGtleToga2V5b2YgT2JqZWN0RXh0ZW5zaW9ucy5FbnRpdHlFeHRlbnNpb25zKSA9PiB7XHJcbiAgICAgICAgICAgICAgYWNjLnByb3Bba2V5XSA9IFtdO1xyXG4gICAgICAgICAgICAgIGFjYy5jcmVhdGVGb3JtW2tleV0gPSBbXTtcclxuICAgICAgICAgICAgICBhY2MuZWRpdEZvcm1ba2V5XSA9IFtdO1xyXG5cclxuICAgICAgICAgICAgICBjb25zdCBlbnRpdHk6IE9iamVjdEV4dGVuc2lvbnMuRW50aXR5RXh0ZW5zaW9uRHRvID0gZW50aXRpZXNba2V5XTtcclxuICAgICAgICAgICAgICBpZiAoIWVudGl0eSkgcmV0dXJuIGFjYztcclxuXHJcbiAgICAgICAgICAgICAgY29uc3QgcHJvcGVydGllcyA9IGVudGl0eS5wcm9wZXJ0aWVzO1xyXG4gICAgICAgICAgICAgIGlmICghcHJvcGVydGllcykgcmV0dXJuIGFjYztcclxuXHJcbiAgICAgICAgICAgICAgY29uc3QgbWFwUHJvcGVydGllc1RvQ29udHJpYnV0b3JzID0gY3JlYXRlUHJvcGVydGllc1RvQ29udHJpYnV0b3JzTWFwcGVyPFQ+KFxyXG4gICAgICAgICAgICAgICAgZ2VuZXJhdGVEaXNwbGF5TmFtZSxcclxuICAgICAgICAgICAgICAgIHJlc291cmNlLFxyXG4gICAgICAgICAgICAgICAgZW51bXMsXHJcbiAgICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgICAgcmV0dXJuIG1hcFByb3BlcnRpZXNUb0NvbnRyaWJ1dG9ycyhwcm9wZXJ0aWVzLCBhY2MsIGtleSk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBwcm9wOiB7fSxcclxuICAgICAgICAgICAgICBjcmVhdGVGb3JtOiB7fSxcclxuICAgICAgICAgICAgICBlZGl0Rm9ybToge30sXHJcbiAgICAgICAgICAgIH0gYXMgT2JqZWN0RXh0ZW5zaW9ucy5Qcm9wQ29udHJpYnV0b3JzLFxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9KSxcclxuICAgICAgKSxcclxuICAgICksXHJcbiAgICB0YWtlKDEpLFxyXG4gICk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGNyZWF0ZVByb3BlcnRpZXNUb0NvbnRyaWJ1dG9yc01hcHBlcjxUID0gYW55PihcclxuICBnZW5lcmF0ZURpc3BsYXlOYW1lOiBPYmplY3RFeHRlbnNpb25zLkRpc3BsYXlOYW1lR2VuZXJhdG9yRm4sXHJcbiAgcmVzb3VyY2U6IHN0cmluZyxcclxuICBlbnVtczogUmVjb3JkPHN0cmluZywgT2JqZWN0RXh0ZW5zaW9ucy5FeHRlbnNpb25FbnVtRHRvPixcclxuKSB7XHJcbiAgcmV0dXJuIChcclxuICAgIHByb3BlcnRpZXM6IE9iamVjdEV4dGVuc2lvbnMuRW50aXR5RXh0ZW5zaW9uUHJvcGVydGllcyxcclxuICAgIGNvbnRyaWJ1dG9yczogT2JqZWN0RXh0ZW5zaW9ucy5Qcm9wQ29udHJpYnV0b3JzPFQ+LFxyXG4gICAga2V5OiBzdHJpbmcsXHJcbiAgKSA9PiB7XHJcbiAgICBjb25zdCBpc0V4dHJhID0gdHJ1ZTtcclxuICAgIGNvbnN0IGdlbmVyYXRlVHlwZWFoZWFkRGlzcGxheU5hbWUgPSBjcmVhdGVUeXBlYWhlYWREaXNwbGF5TmFtZUdlbmVyYXRvcihcclxuICAgICAgZ2VuZXJhdGVEaXNwbGF5TmFtZSxcclxuICAgICAgcHJvcGVydGllcyxcclxuICAgICk7XHJcblxyXG4gICAgT2JqZWN0LmtleXMocHJvcGVydGllcykuZm9yRWFjaCgobmFtZTogc3RyaW5nKSA9PiB7XHJcbiAgICAgIGNvbnN0IHByb3BlcnR5ID0gcHJvcGVydGllc1tuYW1lXTtcclxuICAgICAgY29uc3QgcHJvcE5hbWUgPSBuYW1lO1xyXG4gICAgICBjb25zdCBsb29rdXAgPSBwcm9wZXJ0eS51aS5sb29rdXAgfHwgKHt9IGFzIEV4dGVuc2lvblByb3BlcnR5VWlMb29rdXBEdG8pO1xyXG4gICAgICBjb25zdCB0eXBlID0gZ2V0VHlwZWFoZWFkVHlwZShsb29rdXAsIG5hbWUpIHx8IGdldFR5cGVGcm9tUHJvcGVydHkocHJvcGVydHkpO1xyXG4gICAgICBjb25zdCBnZW5lcmF0ZUROID0gaGFzVHlwZWFoZWFkVGV4dFN1ZmZpeChuYW1lKVxyXG4gICAgICAgID8gZ2VuZXJhdGVUeXBlYWhlYWREaXNwbGF5TmFtZVxyXG4gICAgICAgIDogZ2VuZXJhdGVEaXNwbGF5TmFtZTtcclxuICAgICAgY29uc3QgZGlzcGxheU5hbWUgPSBnZW5lcmF0ZUROKHByb3BlcnR5LmRpc3BsYXlOYW1lLCB7IG5hbWUsIHJlc291cmNlIH0pO1xyXG5cclxuICAgICAgaWYgKHByb3BlcnR5LnVpLm9uVGFibGUuaXNWaXNpYmxlKSB7XHJcbiAgICAgICAgY29uc3Qgc29ydGFibGUgPSBCb29sZWFuKHByb3BlcnR5LnVpLm9uVGFibGUuaXNTb3J0YWJsZSk7XHJcbiAgICAgICAgY29uc3QgY29sdW1uV2lkdGggPSB0eXBlID09PSBlUHJvcFR5cGUuQm9vbGVhbiA/IDE1MCA6IDI1MDtcclxuICAgICAgICBjb25zdCB2YWx1ZVJlc29sdmVyID1cclxuICAgICAgICAgIHR5cGUgPT09IGVQcm9wVHlwZS5FbnVtXHJcbiAgICAgICAgICAgID8gY3JlYXRlRW51bVZhbHVlUmVzb2x2ZXIocHJvcGVydHkudHlwZSwgZW51bXNbcHJvcGVydHkudHlwZV0sIHByb3BOYW1lKVxyXG4gICAgICAgICAgICA6IGNyZWF0ZUV4dHJhUHJvcGVydHlWYWx1ZVJlc29sdmVyPFQ+KHByb3BOYW1lKTtcclxuXHJcbiAgICAgICAgY29uc3QgZW50aXR5UHJvcCA9IG5ldyBFbnRpdHlQcm9wPFQ+KHtcclxuICAgICAgICAgIHR5cGUsXHJcbiAgICAgICAgICBuYW1lOiBwcm9wTmFtZSxcclxuICAgICAgICAgIGRpc3BsYXlOYW1lLFxyXG4gICAgICAgICAgc29ydGFibGUsXHJcbiAgICAgICAgICBjb2x1bW5XaWR0aCxcclxuICAgICAgICAgIHZhbHVlUmVzb2x2ZXIsXHJcbiAgICAgICAgICBpc0V4dHJhLFxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBjb25zdCBjb250cmlidXRvciA9IChwcm9wTGlzdDogRW50aXR5UHJvcExpc3Q8VD4pID0+IHByb3BMaXN0LmFkZFRhaWwoZW50aXR5UHJvcCk7XHJcbiAgICAgICAgY29udHJpYnV0b3JzLnByb3Bba2V5XS5wdXNoKGNvbnRyaWJ1dG9yKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgY29uc3QgaXNPbkNyZWF0ZUZvcm0gPSBwcm9wZXJ0eS51aS5vbkNyZWF0ZUZvcm0uaXNWaXNpYmxlO1xyXG4gICAgICBjb25zdCBpc09uRWRpdEZvcm0gPSBwcm9wZXJ0eS51aS5vbkVkaXRGb3JtLmlzVmlzaWJsZTtcclxuXHJcbiAgICAgIGlmIChpc09uQ3JlYXRlRm9ybSB8fCBpc09uRWRpdEZvcm0pIHtcclxuICAgICAgICBjb25zdCBkZWZhdWx0VmFsdWUgPSBwcm9wZXJ0eS5kZWZhdWx0VmFsdWU7XHJcbiAgICAgICAgY29uc3QgdmFsaWRhdG9ycyA9ICgpID0+IGdldFZhbGlkYXRvcnNGcm9tUHJvcGVydHkocHJvcGVydHkpO1xyXG4gICAgICAgIGxldCBvcHRpb25zOiBQcm9wQ2FsbGJhY2s8YW55LCBPYnNlcnZhYmxlPEFCUC5PcHRpb248YW55PltdPj4gfCB1bmRlZmluZWQ7XHJcbiAgICAgICAgaWYgKHR5cGUgPT09IGVQcm9wVHlwZS5FbnVtKVxyXG4gICAgICAgICAgb3B0aW9ucyA9IGNyZWF0ZUVudW1PcHRpb25zKHByb3BOYW1lLCBlbnVtc1twcm9wZXJ0eS50eXBlIHx8ICcnXSk7XHJcbiAgICAgICAgZWxzZSBpZiAodHlwZSA9PT0gZVByb3BUeXBlLlR5cGVhaGVhZCkgb3B0aW9ucyA9IGNyZWF0ZVR5cGVhaGVhZE9wdGlvbnMobG9va3VwKTtcclxuXHJcbiAgICAgICAgY29uc3QgZm9ybVByb3AgPSBuZXcgRm9ybVByb3Aoe1xyXG4gICAgICAgICAgdHlwZSxcclxuICAgICAgICAgIG5hbWU6IHByb3BOYW1lLFxyXG4gICAgICAgICAgZGlzcGxheU5hbWUsXHJcbiAgICAgICAgICBvcHRpb25zLFxyXG4gICAgICAgICAgZGVmYXVsdFZhbHVlLFxyXG4gICAgICAgICAgdmFsaWRhdG9ycyxcclxuICAgICAgICAgIGlzRXh0cmEsXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIGNvbnN0IGZvcm1Db250cmlidXRvciA9IChwcm9wTGlzdDogRm9ybVByb3BMaXN0PFQ+KSA9PiBwcm9wTGlzdC5hZGRUYWlsKGZvcm1Qcm9wKTtcclxuXHJcbiAgICAgICAgaWYgKGlzT25DcmVhdGVGb3JtKSBjb250cmlidXRvcnMuY3JlYXRlRm9ybVtrZXldLnB1c2goZm9ybUNvbnRyaWJ1dG9yKTtcclxuICAgICAgICBpZiAoaXNPbkVkaXRGb3JtKSBjb250cmlidXRvcnMuZWRpdEZvcm1ba2V5XS5wdXNoKGZvcm1Db250cmlidXRvcik7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBjb250cmlidXRvcnM7XHJcbiAgfTtcclxufVxyXG5cclxuZnVuY3Rpb24gZ2V0VHlwZUZyb21Qcm9wZXJ0eShwcm9wZXJ0eTogT2JqZWN0RXh0ZW5zaW9ucy5FeHRlbnNpb25Qcm9wZXJ0eUR0byk6IGVQcm9wVHlwZSB7XHJcbiAgcmV0dXJuIHByb3BlcnR5Py50eXBlU2ltcGxlPy5yZXBsYWNlKC9cXD8kLywgJycpIGFzIHN0cmluZyBhcyBlUHJvcFR5cGU7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGlzVW5kZWZpbmVkKG9iajogYW55KTogb2JqIGlzIHVuZGVmaW5lZCB7XHJcbiAgcmV0dXJuIHR5cGVvZiBvYmogPT09ICd1bmRlZmluZWQnO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,43 @@
1
+ import { getRoutePath, RouterEvents, RoutesService, SubscriptionService } from '@abp/ng.core';
2
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component } from '@angular/core';
3
+ import { Router } from '@angular/router';
4
+ import { map, startWith } from 'rxjs/operators';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/router";
7
+ import * as i2 from "@abp/ng.core";
8
+ import * as i3 from "../breadcrumb-items/breadcrumb-items.component";
9
+ export class BreadcrumbComponent {
10
+ constructor(cdRef, router, routes, subscription, routerEvents) {
11
+ this.cdRef = cdRef;
12
+ this.router = router;
13
+ this.routes = routes;
14
+ this.subscription = subscription;
15
+ this.routerEvents = routerEvents;
16
+ this.segments = [];
17
+ }
18
+ ngOnInit() {
19
+ this.subscription.addOne(this.routerEvents.getNavigationEvents('End').pipe(startWith(null), map(() => this.routes.search({ path: getRoutePath(this.router) }))), route => {
20
+ this.segments = [];
21
+ if (route) {
22
+ let node = { parent: route };
23
+ while (node.parent) {
24
+ node = node.parent;
25
+ const { parent, children, isLeaf, path, ...segment } = node;
26
+ if (!isAdministration(segment))
27
+ this.segments.unshift(segment);
28
+ }
29
+ this.cdRef.detectChanges();
30
+ }
31
+ });
32
+ }
33
+ }
34
+ BreadcrumbComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BreadcrumbComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Router }, { token: i2.RoutesService }, { token: i2.SubscriptionService }, { token: i2.RouterEvents }], target: i0.ɵɵFactoryTarget.Component });
35
+ BreadcrumbComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BreadcrumbComponent, selector: "abp-breadcrumb", providers: [SubscriptionService], ngImport: i0, template: "<abp-breadcrumb-items [items]=\"segments\"></abp-breadcrumb-items>\r\n", components: [{ type: i3.BreadcrumbItemsComponent, selector: "abp-breadcrumb-items", inputs: ["items"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BreadcrumbComponent, decorators: [{
37
+ type: Component,
38
+ args: [{ selector: 'abp-breadcrumb', changeDetection: ChangeDetectionStrategy.OnPush, providers: [SubscriptionService], template: "<abp-breadcrumb-items [items]=\"segments\"></abp-breadcrumb-items>\r\n" }]
39
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.Router }, { type: i2.RoutesService }, { type: i2.SubscriptionService }, { type: i2.RouterEvents }]; } });
40
+ function isAdministration(route) {
41
+ return route.name === "AbpUiNavigation::Menu:Administration" /* Administration */;
42
+ }
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQU8sWUFBWSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQVksTUFBTSxjQUFjLENBQUM7QUFDN0csT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFTaEQsTUFBTSxPQUFPLG1CQUFtQjtJQUc5QixZQUNrQixLQUF3QixFQUNoQyxNQUFjLEVBQ2QsTUFBcUIsRUFDckIsWUFBaUMsRUFDakMsWUFBMEI7UUFKbEIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDaEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQ2pDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBUHBDLGFBQVEsR0FBeUIsRUFBRSxDQUFDO0lBUWpDLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUMvQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQ2YsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQ25FLEVBQ0QsS0FBSyxDQUFDLEVBQUU7WUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztZQUNuQixJQUFJLEtBQUssRUFBRTtnQkFDVCxJQUFJLElBQUksR0FBRyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXlCLENBQUM7Z0JBRXBELE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRTtvQkFDbEIsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7b0JBQ25CLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUM7b0JBQzVELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUM7d0JBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7aUJBQ2hFO2dCQUVELElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7YUFDNUI7UUFDSCxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7O2dIQWhDVSxtQkFBbUI7b0dBQW5CLG1CQUFtQix5Q0FGbkIsQ0FBQyxtQkFBbUIsQ0FBQywwQkNWbEMsd0VBQ0E7MkZEV2EsbUJBQW1CO2tCQU4vQixTQUFTOytCQUNFLGdCQUFnQixtQkFFVCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLENBQUMsbUJBQW1CLENBQUM7O0FBcUNsQyxTQUFTLGdCQUFnQixDQUFDLEtBQThCO0lBQ3RELE9BQU8sS0FBSyxDQUFDLElBQUksZ0VBQTBDLENBQUM7QUFDOUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFCUCwgZ2V0Um91dGVQYXRoLCBSb3V0ZXJFdmVudHMsIFJvdXRlc1NlcnZpY2UsIFN1YnNjcmlwdGlvblNlcnZpY2UsIFRyZWVOb2RlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBtYXAsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgZVRoZW1lU2hhcmVkUm91dGVOYW1lcyB9IGZyb20gJy4uLy4uL2VudW1zL3JvdXRlLW5hbWVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWJwLWJyZWFkY3J1bWInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtTdWJzY3JpcHRpb25TZXJ2aWNlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEJyZWFkY3J1bWJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHNlZ21lbnRzOiBQYXJ0aWFsPEFCUC5Sb3V0ZT5bXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZWFkb25seSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXM6IFJvdXRlc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyRXZlbnRzOiBSb3V0ZXJFdmVudHMsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZE9uZShcclxuICAgICAgdGhpcy5yb3V0ZXJFdmVudHMuZ2V0TmF2aWdhdGlvbkV2ZW50cygnRW5kJykucGlwZShcclxuICAgICAgICBzdGFydFdpdGgobnVsbCksXHJcbiAgICAgICAgbWFwKCgpID0+IHRoaXMucm91dGVzLnNlYXJjaCh7IHBhdGg6IGdldFJvdXRlUGF0aCh0aGlzLnJvdXRlcikgfSkpLFxyXG4gICAgICApLFxyXG4gICAgICByb3V0ZSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZWdtZW50cyA9IFtdO1xyXG4gICAgICAgIGlmIChyb3V0ZSkge1xyXG4gICAgICAgICAgbGV0IG5vZGUgPSB7IHBhcmVudDogcm91dGUgfSBhcyBUcmVlTm9kZTxBQlAuUm91dGU+O1xyXG5cclxuICAgICAgICAgIHdoaWxlIChub2RlLnBhcmVudCkge1xyXG4gICAgICAgICAgICBub2RlID0gbm9kZS5wYXJlbnQ7XHJcbiAgICAgICAgICAgIGNvbnN0IHsgcGFyZW50LCBjaGlsZHJlbiwgaXNMZWFmLCBwYXRoLCAuLi5zZWdtZW50IH0gPSBub2RlO1xyXG4gICAgICAgICAgICBpZiAoIWlzQWRtaW5pc3RyYXRpb24oc2VnbWVudCkpIHRoaXMuc2VnbWVudHMudW5zaGlmdChzZWdtZW50KTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5cclxuZnVuY3Rpb24gaXNBZG1pbmlzdHJhdGlvbihyb3V0ZTogUGljazxBQlAuUm91dGUsICduYW1lJz4pIHtcclxuICByZXR1cm4gcm91dGUubmFtZSA9PT0gZVRoZW1lU2hhcmVkUm91dGVOYW1lcy5BZG1pbmlzdHJhdGlvbjtcclxufVxyXG4iLCI8YWJwLWJyZWFkY3J1bWItaXRlbXMgW2l0ZW1zXT1cInNlZ21lbnRzXCI+PC9hYnAtYnJlYWRjcnVtYi1pdGVtcz5cclxuIl19
@@ -0,0 +1,19 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@angular/router";
5
+ import * as i3 from "@abp/ng.core";
6
+ export class BreadcrumbItemsComponent {
7
+ constructor() {
8
+ this.items = [];
9
+ }
10
+ }
11
+ BreadcrumbItemsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BreadcrumbItemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
+ BreadcrumbItemsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BreadcrumbItemsComponent, selector: "abp-breadcrumb-items", inputs: { items: "items" }, ngImport: i0, template: "<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", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "abpLocalization": i3.LocalizationPipe } });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BreadcrumbItemsComponent, decorators: [{
14
+ type: Component,
15
+ args: [{ selector: 'abp-breadcrumb-items', template: "<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" }]
16
+ }], propDecorators: { items: [{
17
+ type: Input
18
+ }] } });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi1pdGVtcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL2JyZWFkY3J1bWItaXRlbXMvYnJlYWRjcnVtYi1pdGVtcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL2JyZWFkY3J1bWItaXRlbXMvYnJlYWRjcnVtYi1pdGVtcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFNakQsTUFBTSxPQUFPLHdCQUF3QjtJQUpyQztRQUtXLFVBQUssR0FBeUIsRUFBRSxDQUFDO0tBQzNDOztxSEFGWSx3QkFBd0I7eUdBQXhCLHdCQUF3Qix3RkNQckMsdXRCQXVCQTsyRkRoQmEsd0JBQXdCO2tCQUpwQyxTQUFTOytCQUNFLHNCQUFzQjs4QkFJdkIsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUJQIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhYnAtYnJlYWRjcnVtYi1pdGVtcycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2JyZWFkY3J1bWItaXRlbXMuY29tcG9uZW50Lmh0bWwnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQnJlYWRjcnVtYkl0ZW1zQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBpdGVtczogUGFydGlhbDxBQlAuUm91dGU+W10gPSBbXTtcclxufVxyXG4iLCI8b2wgY2xhc3M9XCJicmVhZGNydW1iXCIgKm5nSWY9XCJpdGVtcy5sZW5ndGhcIj5cclxuICA8bGkgY2xhc3M9XCJicmVhZGNydW1iLWl0ZW1cIj5cclxuICAgIDxhIHJvdXRlckxpbms9XCIvXCI+PGkgY2xhc3M9XCJmYSBmYS1ob21lXCI+PC9pPiA8L2E+XHJcbiAgPC9saT5cclxuICA8bGlcclxuICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zOyBsZXQgbGFzdCA9IGxhc3RcIlxyXG4gICAgY2xhc3M9XCJicmVhZGNydW1iLWl0ZW1cIlxyXG4gICAgW2NsYXNzLmFjdGl2ZV09XCJsYXN0XCJcclxuICAgIGFyaWEtY3VycmVudD1cInBhZ2VcIlxyXG4gID5cclxuICAgIDxuZy1jb250YWluZXJcclxuICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtLnBhdGggPyBsaW5rVGVtcGxhdGUgOiB0ZXh0VGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtIH1cIlxyXG4gICAgPjwvbmctY29udGFpbmVyPlxyXG4gIDwvbGk+XHJcbjwvb2w+XHJcblxyXG48bmctdGVtcGxhdGUgI2xpbmtUZW1wbGF0ZSBsZXQtaXRlbT5cclxuICA8YSBbcm91dGVyTGlua109XCJpdGVtLnBhdGhcIj4ge3sgaXRlbS5uYW1lIHwgYWJwTG9jYWxpemF0aW9uIH19PC9hPlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICN0ZXh0VGVtcGxhdGUgbGV0LWl0ZW0+XHJcbiAge3sgaXRlbS5uYW1lIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -0,0 +1,97 @@
1
+ import { Component, ElementRef, EventEmitter, Input, Output, Renderer2, ViewChild, } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@abp/ng.core";
5
+ export class ButtonComponent {
6
+ constructor(renderer) {
7
+ this.renderer = renderer;
8
+ this.buttonId = '';
9
+ this.buttonClass = 'btn btn-primary';
10
+ this.buttonType = 'button';
11
+ this.loading = false;
12
+ this.disabled = false;
13
+ this.click = new EventEmitter();
14
+ this.focus = new EventEmitter();
15
+ this.blur = new EventEmitter();
16
+ this.abpClick = new EventEmitter();
17
+ this.abpFocus = new EventEmitter();
18
+ this.abpBlur = new EventEmitter();
19
+ }
20
+ get icon() {
21
+ return `${this.loading ? 'fa fa-spinner fa-spin' : this.iconClass || 'd-none'}`;
22
+ }
23
+ ngOnInit() {
24
+ if (this.attributes) {
25
+ Object.keys(this.attributes).forEach(key => {
26
+ if (this.attributes?.[key]) {
27
+ this.renderer.setAttribute(this.buttonRef.nativeElement, key, this.attributes[key]);
28
+ }
29
+ });
30
+ }
31
+ }
32
+ }
33
+ ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ButtonComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
34
+ ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ButtonComponent, selector: "abp-button", inputs: { buttonId: "buttonId", buttonClass: "buttonClass", buttonType: "buttonType", iconClass: "iconClass", loading: "loading", disabled: "disabled", attributes: "attributes" }, outputs: { click: "click", focus: "focus", blur: "blur", abpClick: "abpClick", abpFocus: "abpFocus", abpBlur: "abpBlur" }, viewQueries: [{ propertyName: "buttonRef", first: true, predicate: ["button"], descendants: true, static: true }], ngImport: i0, template: `
35
+ <button
36
+ #button
37
+ [id]="buttonId"
38
+ [attr.type]="buttonType"
39
+ [ngClass]="buttonClass"
40
+ [disabled]="loading || disabled"
41
+ (click.stop)="click.next($event); abpClick.next($event)"
42
+ (focus)="focus.next($event); abpFocus.next($event)"
43
+ (blur)="blur.next($event); abpBlur.next($event)"
44
+ >
45
+ <i [ngClass]="icon" class="me-1"></i><ng-content></ng-content>
46
+ </button>
47
+ `, isInline: true, directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.StopPropagationDirective, selector: "[click.stop]", outputs: ["click.stop"] }] });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ButtonComponent, decorators: [{
49
+ type: Component,
50
+ args: [{
51
+ selector: 'abp-button',
52
+ template: `
53
+ <button
54
+ #button
55
+ [id]="buttonId"
56
+ [attr.type]="buttonType"
57
+ [ngClass]="buttonClass"
58
+ [disabled]="loading || disabled"
59
+ (click.stop)="click.next($event); abpClick.next($event)"
60
+ (focus)="focus.next($event); abpFocus.next($event)"
61
+ (blur)="blur.next($event); abpBlur.next($event)"
62
+ >
63
+ <i [ngClass]="icon" class="me-1"></i><ng-content></ng-content>
64
+ </button>
65
+ `,
66
+ }]
67
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }]; }, propDecorators: { buttonId: [{
68
+ type: Input
69
+ }], buttonClass: [{
70
+ type: Input
71
+ }], buttonType: [{
72
+ type: Input
73
+ }], iconClass: [{
74
+ type: Input
75
+ }], loading: [{
76
+ type: Input
77
+ }], disabled: [{
78
+ type: Input
79
+ }], attributes: [{
80
+ type: Input
81
+ }], click: [{
82
+ type: Output
83
+ }], focus: [{
84
+ type: Output
85
+ }], blur: [{
86
+ type: Output
87
+ }], abpClick: [{
88
+ type: Output
89
+ }], abpFocus: [{
90
+ type: Output
91
+ }], abpBlur: [{
92
+ type: Output
93
+ }], buttonRef: [{
94
+ type: ViewChild,
95
+ args: ['button', { static: true }]
96
+ }] } });
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLXNoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQzs7OztBQW1CdkIsTUFBTSxPQUFPLGVBQWU7SUF5QzFCLFlBQW9CLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7UUF2Q3ZDLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFHZCxnQkFBVyxHQUFHLGlCQUFpQixDQUFDO1FBR2hDLGVBQVUsR0FBRyxRQUFRLENBQUM7UUFNdEIsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUdoQixhQUFRLEdBQXdCLEtBQUssQ0FBQztRQUtuQixVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUV2QyxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUV2QyxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUV0QyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUUxQyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUUxQyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztJQVNsQixDQUFDO0lBSjNDLElBQUksSUFBSTtRQUNOLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxRQUFRLEVBQUUsQ0FBQztJQUNsRixDQUFDO0lBSUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3pDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2lCQUNyRjtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOzs0R0FuRFUsZUFBZTtnR0FBZixlQUFlLG9kQWZoQjs7Ozs7Ozs7Ozs7OztHQWFUOzJGQUVVLGVBQWU7a0JBakIzQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxZQUFZO29CQUN0QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7R0FhVDtpQkFDRjtnR0FHQyxRQUFRO3NCQURQLEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLO2dCQUlOLFFBQVE7c0JBRFAsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBR2EsS0FBSztzQkFBdkIsTUFBTTtnQkFFWSxLQUFLO3NCQUF2QixNQUFNO2dCQUVZLElBQUk7c0JBQXRCLE1BQU07Z0JBRVksUUFBUTtzQkFBMUIsTUFBTTtnQkFFWSxRQUFRO3NCQUExQixNQUFNO2dCQUVZLE9BQU87c0JBQXpCLE1BQU07Z0JBR1AsU0FBUztzQkFEUixTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW5hdGl2ZSAqL1xyXG5pbXBvcnQgeyBBQlAgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFJlbmRlcmVyMixcclxuICBWaWV3Q2hpbGQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FicC1idXR0b24nLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8YnV0dG9uXHJcbiAgICAgICNidXR0b25cclxuICAgICAgW2lkXT1cImJ1dHRvbklkXCJcclxuICAgICAgW2F0dHIudHlwZV09XCJidXR0b25UeXBlXCJcclxuICAgICAgW25nQ2xhc3NdPVwiYnV0dG9uQ2xhc3NcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwibG9hZGluZyB8fCBkaXNhYmxlZFwiXHJcbiAgICAgIChjbGljay5zdG9wKT1cImNsaWNrLm5leHQoJGV2ZW50KTsgYWJwQ2xpY2submV4dCgkZXZlbnQpXCJcclxuICAgICAgKGZvY3VzKT1cImZvY3VzLm5leHQoJGV2ZW50KTsgYWJwRm9jdXMubmV4dCgkZXZlbnQpXCJcclxuICAgICAgKGJsdXIpPVwiYmx1ci5uZXh0KCRldmVudCk7IGFicEJsdXIubmV4dCgkZXZlbnQpXCJcclxuICAgID5cclxuICAgICAgPGkgW25nQ2xhc3NdPVwiaWNvblwiIGNsYXNzPVwibWUtMVwiPjwvaT48bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICA8L2J1dHRvbj5cclxuICBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKVxyXG4gIGJ1dHRvbklkID0gJyc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgYnV0dG9uQ2xhc3MgPSAnYnRuIGJ0bi1wcmltYXJ5JztcclxuXHJcbiAgQElucHV0KClcclxuICBidXR0b25UeXBlID0gJ2J1dHRvbic7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgaWNvbkNsYXNzPzogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGxvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBkaXNhYmxlZDogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGF0dHJpYnV0ZXM/OiBBQlAuRGljdGlvbmFyeTxzdHJpbmc+O1xyXG5cclxuICBAT3V0cHV0KCkgcmVhZG9ubHkgY2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKSByZWFkb25seSBmb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4oKTtcclxuXHJcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyPEZvY3VzRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKSByZWFkb25seSBhYnBDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGFicEZvY3VzID0gbmV3IEV2ZW50RW1pdHRlcjxGb2N1c0V2ZW50PigpO1xyXG5cclxuICBAT3V0cHV0KCkgcmVhZG9ubHkgYWJwQmx1ciA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4oKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnYnV0dG9uJywgeyBzdGF0aWM6IHRydWUgfSlcclxuICBidXR0b25SZWYhOiBFbGVtZW50UmVmPEhUTUxCdXR0b25FbGVtZW50PjtcclxuXHJcbiAgZ2V0IGljb24oKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHt0aGlzLmxvYWRpbmcgPyAnZmEgZmEtc3Bpbm5lciBmYS1zcGluJyA6IHRoaXMuaWNvbkNsYXNzIHx8ICdkLW5vbmUnfWA7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKHRoaXMuYXR0cmlidXRlcykge1xyXG4gICAgICBPYmplY3Qua2V5cyh0aGlzLmF0dHJpYnV0ZXMpLmZvckVhY2goa2V5ID0+IHtcclxuICAgICAgICBpZiAodGhpcy5hdHRyaWJ1dGVzPy5ba2V5XSkge1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5idXR0b25SZWYubmF0aXZlRWxlbWVudCwga2V5LCB0aGlzLmF0dHJpYnV0ZXNba2V5XSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,36 @@
1
+ import { Component } from '@angular/core';
2
+ import { Confirmation } from '../../models/confirmation';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@abp/ng.core";
6
+ export class ConfirmationComponent {
7
+ constructor() {
8
+ this.confirm = Confirmation.Status.confirm;
9
+ this.reject = Confirmation.Status.reject;
10
+ this.dismiss = Confirmation.Status.dismiss;
11
+ }
12
+ close(status) {
13
+ this.clear(status);
14
+ }
15
+ getIconClass({ severity }) {
16
+ switch (severity) {
17
+ case 'info':
18
+ return 'fa-info-circle';
19
+ case 'success':
20
+ return 'fa-check-circle';
21
+ case 'warning':
22
+ return 'fa-exclamation-triangle';
23
+ case 'error':
24
+ return 'fa-times-circle';
25
+ default:
26
+ return 'fa-question-circle';
27
+ }
28
+ }
29
+ }
30
+ ConfirmationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ConfirmationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
31
+ ConfirmationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ConfirmationComponent, selector: "abp-confirmation", ngImport: i0, template: "<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", styles: [".confirmation{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:1060}.confirmation .confirmation-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1061!important}.confirmation .confirmation-dialog{display:flex;flex-direction:column;margin:20px auto;padding:0;width:450px;min-height:300px;z-index:1062!important}@media screen and (max-width: 500px){.confirmation .confirmation-dialog{width:90vw}}.confirmation .confirmation-dialog .icon-container{display:flex;align-items:center;justify-content:center;margin:0 0 10px;padding:20px}.confirmation .confirmation-dialog .icon-container .icon{width:100px;height:100px;stroke-width:1;font-size:80px;text-align:center}.confirmation .confirmation-dialog .content{flex-grow:1;display:block}.confirmation .confirmation-dialog .content .title{display:block;margin:0;padding:0;font-size:27px;font-weight:600;text-align:center}.confirmation .confirmation-dialog .content .message{display:block;margin:10px auto;padding:20px;font-size:16px;font-weight:400;text-align:center}.confirmation .confirmation-dialog .footer{display:flex;align-items:center;justify-content:flex-end;margin:10px 0 0;padding:20px;width:100%}.confirmation .confirmation-dialog .footer .confirmation-button{display:inline-block;margin:0 5px;padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "async": i1.AsyncPipe, "abpLocalization": i2.LocalizationPipe } });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ConfirmationComponent, decorators: [{
33
+ type: Component,
34
+ args: [{ selector: 'abp-confirmation', template: "<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", styles: [".confirmation{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:1060}.confirmation .confirmation-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1061!important}.confirmation .confirmation-dialog{display:flex;flex-direction:column;margin:20px auto;padding:0;width:450px;min-height:300px;z-index:1062!important}@media screen and (max-width: 500px){.confirmation .confirmation-dialog{width:90vw}}.confirmation .confirmation-dialog .icon-container{display:flex;align-items:center;justify-content:center;margin:0 0 10px;padding:20px}.confirmation .confirmation-dialog .icon-container .icon{width:100px;height:100px;stroke-width:1;font-size:80px;text-align:center}.confirmation .confirmation-dialog .content{flex-grow:1;display:block}.confirmation .confirmation-dialog .content .title{display:block;margin:0;padding:0;font-size:27px;font-weight:600;text-align:center}.confirmation .confirmation-dialog .content .message{display:block;margin:10px auto;padding:20px;font-size:16px;font-weight:400;text-align:center}.confirmation .confirmation-dialog .footer{display:flex;align-items:center;justify-content:flex-end;margin:10px 0 0;padding:20px;width:100%}.confirmation .confirmation-dialog .footer .confirmation-button{display:inline-block;margin:0 5px;padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600}\n"] }]
35
+ }] });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLXNoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7QUFPekQsTUFBTSxPQUFPLHFCQUFxQjtJQUxsQztRQU1FLFlBQU8sR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUN0QyxXQUFNLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDcEMsWUFBTyxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO0tBd0J2QztJQWxCQyxLQUFLLENBQUMsTUFBMkI7UUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsWUFBWSxDQUFDLEVBQUUsUUFBUSxFQUEyQjtRQUNoRCxRQUFRLFFBQVEsRUFBRTtZQUNoQixLQUFLLE1BQU07Z0JBQ1QsT0FBTyxnQkFBZ0IsQ0FBQztZQUMxQixLQUFLLFNBQVM7Z0JBQ1osT0FBTyxpQkFBaUIsQ0FBQztZQUMzQixLQUFLLFNBQVM7Z0JBQ1osT0FBTyx5QkFBeUIsQ0FBQztZQUNuQyxLQUFLLE9BQU87Z0JBQ1YsT0FBTyxpQkFBaUIsQ0FBQztZQUMzQjtnQkFDRSxPQUFPLG9CQUFvQixDQUFDO1NBQy9CO0lBQ0gsQ0FBQzs7a0hBMUJVLHFCQUFxQjtzR0FBckIscUJBQXFCLHdEQ1RsQyx1K0NBdUNBOzJGRDlCYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0Usa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NvbmZpcm1hdGlvbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FicC1jb25maXJtYXRpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb25maXJtYXRpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvbmZpcm1hdGlvbi5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29uZmlybWF0aW9uQ29tcG9uZW50IHtcclxuICBjb25maXJtID0gQ29uZmlybWF0aW9uLlN0YXR1cy5jb25maXJtO1xyXG4gIHJlamVjdCA9IENvbmZpcm1hdGlvbi5TdGF0dXMucmVqZWN0O1xyXG4gIGRpc21pc3MgPSBDb25maXJtYXRpb24uU3RhdHVzLmRpc21pc3M7XHJcblxyXG4gIGNvbmZpcm1hdGlvbiQhOiBSZXBsYXlTdWJqZWN0PENvbmZpcm1hdGlvbi5EaWFsb2dEYXRhPjtcclxuXHJcbiAgY2xlYXIhOiAoc3RhdHVzOiBDb25maXJtYXRpb24uU3RhdHVzKSA9PiB2b2lkO1xyXG5cclxuICBjbG9zZShzdGF0dXM6IENvbmZpcm1hdGlvbi5TdGF0dXMpIHtcclxuICAgIHRoaXMuY2xlYXIoc3RhdHVzKTtcclxuICB9XHJcblxyXG4gIGdldEljb25DbGFzcyh7IHNldmVyaXR5IH06IENvbmZpcm1hdGlvbi5EaWFsb2dEYXRhKTogc3RyaW5nIHtcclxuICAgIHN3aXRjaCAoc2V2ZXJpdHkpIHtcclxuICAgICAgY2FzZSAnaW5mbyc6XHJcbiAgICAgICAgcmV0dXJuICdmYS1pbmZvLWNpcmNsZSc7XHJcbiAgICAgIGNhc2UgJ3N1Y2Nlc3MnOlxyXG4gICAgICAgIHJldHVybiAnZmEtY2hlY2stY2lyY2xlJztcclxuICAgICAgY2FzZSAnd2FybmluZyc6XHJcbiAgICAgICAgcmV0dXJuICdmYS1leGNsYW1hdGlvbi10cmlhbmdsZSc7XHJcbiAgICAgIGNhc2UgJ2Vycm9yJzpcclxuICAgICAgICByZXR1cm4gJ2ZhLXRpbWVzLWNpcmNsZSc7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuICdmYS1xdWVzdGlvbi1jaXJjbGUnO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY29uZmlybWF0aW9uXCIgKm5nSWY9XCJjb25maXJtYXRpb24kIHwgYXN5bmMgYXMgZGF0YVwiPlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwiY29uZmlybWF0aW9uLWJhY2tkcm9wXCJcclxuICAgIChjbGljayk9XCJkYXRhLm9wdGlvbnM/LmRpc21pc3NpYmxlID8gY2xvc2UoZGlzbWlzcykgOiBudWxsXCJcclxuICA+PC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImNvbmZpcm1hdGlvbi1kaWFsb2dcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJpY29uLWNvbnRhaW5lclwiIFtuZ0NsYXNzXT1cImRhdGEuc2V2ZXJpdHlcIiAqbmdJZj1cImRhdGEuc2V2ZXJpdHlcIj5cclxuICAgICAgPGkgY2xhc3M9XCJmYSBpY29uXCIgW25nQ2xhc3NdPVwiZ2V0SWNvbkNsYXNzKGRhdGEpXCI+PC9pPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxyXG4gICAgICA8aDFcclxuICAgICAgICBjbGFzcz1cInRpdGxlXCJcclxuICAgICAgICAqbmdJZj1cImRhdGEudGl0bGVcIlxyXG4gICAgICAgIFtpbm5lckhUTUxdPVwiZGF0YS50aXRsZSB8IGFicExvY2FsaXphdGlvbjogZGF0YS5vcHRpb25zPy50aXRsZUxvY2FsaXphdGlvblBhcmFtc1wiXHJcbiAgICAgID48L2gxPlxyXG4gICAgICA8cFxyXG4gICAgICAgIGNsYXNzPVwibWVzc2FnZVwiXHJcbiAgICAgICAgKm5nSWY9XCJkYXRhLm1lc3NhZ2VcIlxyXG4gICAgICAgIFtpbm5lckhUTUxdPVwiZGF0YS5tZXNzYWdlIHwgYWJwTG9jYWxpemF0aW9uOiBkYXRhLm9wdGlvbnM/Lm1lc3NhZ2VMb2NhbGl6YXRpb25QYXJhbXNcIlxyXG4gICAgICA+PC9wPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9vdGVyXCI+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBpZD1cImNhbmNlbFwiXHJcbiAgICAgICAgY2xhc3M9XCJjb25maXJtYXRpb24tYnV0dG9uIGNvbmZpcm1hdGlvbi1idXR0b24tLXJlamVjdFwiXHJcbiAgICAgICAgW2lubmVySFRNTF09XCJkYXRhLm9wdGlvbnM/LmNhbmNlbFRleHQgfHwgJ0FicFVpOjpDYW5jZWwnIHwgYWJwTG9jYWxpemF0aW9uXCJcclxuICAgICAgICAqbmdJZj1cIiFkYXRhPy5vcHRpb25zPy5oaWRlQ2FuY2VsQnRuXCJcclxuICAgICAgICAoY2xpY2spPVwiY2xvc2UocmVqZWN0KVwiXHJcbiAgICAgID48L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIGlkPVwiY29uZmlybVwiXHJcbiAgICAgICAgY2xhc3M9XCJjb25maXJtYXRpb24tYnV0dG9uIGNvbmZpcm1hdGlvbi1idXR0b24tLWFwcHJvdmVcIlxyXG4gICAgICAgIFtpbm5lckhUTUxdPVwiZGF0YS5vcHRpb25zPy55ZXNUZXh0IHx8ICdBYnBVaTo6WWVzJyB8IGFicExvY2FsaXphdGlvblwiXHJcbiAgICAgICAgKm5nSWY9XCIhZGF0YT8ub3B0aW9ucz8uaGlkZVllc0J0blwiXHJcbiAgICAgICAgKGNsaWNrKT1cImNsb3NlKGNvbmZpcm0pXCJcclxuICAgICAgPjwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,59 @@
1
+ import { SubscriptionService } from '@abp/ng.core';
2
+ import { Component, ElementRef, ViewChild, } from '@angular/core';
3
+ import { fromEvent } from 'rxjs';
4
+ import { debounceTime, filter } from 'rxjs/operators';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@abp/ng.core";
7
+ import * as i2 from "@angular/common";
8
+ import * as i3 from "@angular/router";
9
+ export class HttpErrorWrapperComponent {
10
+ constructor(subscription) {
11
+ this.subscription = subscription;
12
+ this.status = 0;
13
+ this.title = 'Oops!';
14
+ this.details = 'Sorry, an error has occured.';
15
+ this.customComponent = undefined;
16
+ this.hideCloseIcon = false;
17
+ this.isHomeShow = true;
18
+ }
19
+ get statusText() {
20
+ return this.status ? `[${this.status}]` : '';
21
+ }
22
+ ngOnInit() {
23
+ this.backgroundColor =
24
+ window.getComputedStyle(document.body)?.getPropertyValue('background-color') || '#fff';
25
+ }
26
+ ngAfterViewInit() {
27
+ if (this.customComponent) {
28
+ const customComponentRef = this.cfRes
29
+ .resolveComponentFactory(this.customComponent)
30
+ .create(this.injector);
31
+ customComponentRef.instance.errorStatus = this.status;
32
+ customComponentRef.instance.destroy$ = this.destroy$;
33
+ this.appRef.attachView(customComponentRef.hostView);
34
+ if (this.containerRef) {
35
+ this.containerRef.nativeElement.appendChild(customComponentRef.hostView.rootNodes[0]);
36
+ }
37
+ customComponentRef.changeDetectorRef.detectChanges();
38
+ }
39
+ const keyup$ = fromEvent(document, 'keyup').pipe(debounceTime(150), filter((key) => key && key.key === 'Escape'));
40
+ this.subscription.addOne(keyup$, () => this.destroy());
41
+ }
42
+ ngOnDestroy() {
43
+ this.destroy();
44
+ }
45
+ destroy() {
46
+ this.destroy$.next();
47
+ this.destroy$.complete();
48
+ }
49
+ }
50
+ HttpErrorWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: HttpErrorWrapperComponent, deps: [{ token: i1.SubscriptionService }], target: i0.ɵɵFactoryTarget.Component });
51
+ HttpErrorWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: HttpErrorWrapperComponent, selector: "abp-http-error-wrapper", providers: [SubscriptionService], viewQueries: [{ propertyName: "containerRef", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<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", styles: [".error{position:fixed;top:0;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }], pipes: { "abpLocalization": i1.LocalizationPipe } });
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: HttpErrorWrapperComponent, decorators: [{
53
+ type: Component,
54
+ args: [{ selector: 'abp-http-error-wrapper', providers: [SubscriptionService], template: "<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", styles: [".error{position:fixed;top:0;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}\n"] }]
55
+ }], ctorParameters: function () { return [{ type: i1.SubscriptionService }]; }, propDecorators: { containerRef: [{
56
+ type: ViewChild,
57
+ args: ['container', { static: false }]
58
+ }] } });
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1lcnJvci13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLXNoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvaHR0cC1lcnJvci13cmFwcGVyL2h0dHAtZXJyb3Itd3JhcHBlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL2h0dHAtZXJyb3Itd3JhcHBlci9odHRwLWVycm9yLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixtQkFBbUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN0RSxPQUFPLEVBR0wsU0FBUyxFQUVULFVBQVUsRUFNVixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBVyxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7OztBQVF0RCxNQUFNLE9BQU8seUJBQXlCO0lBOEJwQyxZQUFvQixZQUFpQztRQUFqQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUF2QnJELFdBQU0sR0FBRyxDQUFDLENBQUM7UUFFWCxVQUFLLEdBQXNCLE9BQU8sQ0FBQztRQUVuQyxZQUFPLEdBQXNCLDhCQUE4QixDQUFDO1FBRTVELG9CQUFlLEdBQTBCLFNBQVMsQ0FBQztRQUluRCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUl0QixlQUFVLEdBQUcsSUFBSSxDQUFDO0lBU3NDLENBQUM7SUFKekQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFJRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGVBQWU7WUFDbEIsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLE1BQU0sQ0FBQztJQUMzRixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN4QixNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxLQUFLO2lCQUNsQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDO2lCQUM3QyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3pCLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUN0RCxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDckQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDcEQsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQ3hDLGtCQUFrQixDQUFDLFFBQWlDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUNuRSxDQUFDO2FBQ0g7WUFDRCxrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN0RDtRQUVELE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBZ0IsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDN0QsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUNqQixNQUFNLENBQUMsQ0FBQyxHQUFrQixFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsS0FBSyxRQUFRLENBQUMsQ0FDNUQsQ0FBQztRQUNGLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDOztzSEFuRVUseUJBQXlCOzBHQUF6Qix5QkFBeUIsaURBRnpCLENBQUMsbUJBQW1CLENBQUMscUlDckJsQyxtakNBbUNBOzJGRFphLHlCQUF5QjtrQkFOckMsU0FBUzsrQkFDRSx3QkFBd0IsYUFHdkIsQ0FBQyxtQkFBbUIsQ0FBQzswR0EwQmhDLFlBQVk7c0JBRFgsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTG9jYWxpemF0aW9uUGFyYW0sIFN1YnNjcmlwdGlvblNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQXBwbGljYXRpb25SZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuICBFbGVtZW50UmVmLFxyXG4gIEVtYmVkZGVkVmlld1JlZixcclxuICBJbmplY3RvcixcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIFR5cGUsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBmcm9tRXZlbnQsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FicC1odHRwLWVycm9yLXdyYXBwZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9odHRwLWVycm9yLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWydodHRwLWVycm9yLXdyYXBwZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBwcm92aWRlcnM6IFtTdWJzY3JpcHRpb25TZXJ2aWNlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEh0dHBFcnJvcldyYXBwZXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIE9uSW5pdCB7XHJcbiAgYXBwUmVmITogQXBwbGljYXRpb25SZWY7XHJcblxyXG4gIGNmUmVzITogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyO1xyXG5cclxuICBpbmplY3RvciE6IEluamVjdG9yO1xyXG5cclxuICBzdGF0dXMgPSAwO1xyXG5cclxuICB0aXRsZTogTG9jYWxpemF0aW9uUGFyYW0gPSAnT29wcyEnO1xyXG5cclxuICBkZXRhaWxzOiBMb2NhbGl6YXRpb25QYXJhbSA9ICdTb3JyeSwgYW4gZXJyb3IgaGFzIG9jY3VyZWQuJztcclxuXHJcbiAgY3VzdG9tQ29tcG9uZW50OiBUeXBlPGFueT4gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcblxyXG4gIGRlc3Ryb3kkITogU3ViamVjdDx2b2lkPjtcclxuXHJcbiAgaGlkZUNsb3NlSWNvbiA9IGZhbHNlO1xyXG5cclxuICBiYWNrZ3JvdW5kQ29sb3IhOiBzdHJpbmc7XHJcblxyXG4gIGlzSG9tZVNob3cgPSB0cnVlO1xyXG5cclxuICBAVmlld0NoaWxkKCdjb250YWluZXInLCB7IHN0YXRpYzogZmFsc2UgfSlcclxuICBjb250YWluZXJSZWY/OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcclxuXHJcbiAgZ2V0IHN0YXR1c1RleHQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXR1cyA/IGBbJHt0aGlzLnN0YXR1c31dYCA6ICcnO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvblNlcnZpY2UpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5iYWNrZ3JvdW5kQ29sb3IgPVxyXG4gICAgICB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5ib2R5KT8uZ2V0UHJvcGVydHlWYWx1ZSgnYmFja2dyb3VuZC1jb2xvcicpIHx8ICcjZmZmJztcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGlmICh0aGlzLmN1c3RvbUNvbXBvbmVudCkge1xyXG4gICAgICBjb25zdCBjdXN0b21Db21wb25lbnRSZWYgPSB0aGlzLmNmUmVzXHJcbiAgICAgICAgLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KHRoaXMuY3VzdG9tQ29tcG9uZW50KVxyXG4gICAgICAgIC5jcmVhdGUodGhpcy5pbmplY3Rvcik7XHJcbiAgICAgIGN1c3RvbUNvbXBvbmVudFJlZi5pbnN0YW5jZS5lcnJvclN0YXR1cyA9IHRoaXMuc3RhdHVzO1xyXG4gICAgICBjdXN0b21Db21wb25lbnRSZWYuaW5zdGFuY2UuZGVzdHJveSQgPSB0aGlzLmRlc3Ryb3kkO1xyXG4gICAgICB0aGlzLmFwcFJlZi5hdHRhY2hWaWV3KGN1c3RvbUNvbXBvbmVudFJlZi5ob3N0Vmlldyk7XHJcbiAgICAgIGlmICh0aGlzLmNvbnRhaW5lclJlZikge1xyXG4gICAgICAgIHRoaXMuY29udGFpbmVyUmVmLm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQoXHJcbiAgICAgICAgICAoY3VzdG9tQ29tcG9uZW50UmVmLmhvc3RWaWV3IGFzIEVtYmVkZGVkVmlld1JlZjxhbnk+KS5yb290Tm9kZXNbMF0sXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgICBjdXN0b21Db21wb25lbnRSZWYuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGtleXVwJCA9IGZyb21FdmVudDxLZXlib2FyZEV2ZW50Pihkb2N1bWVudCwgJ2tleXVwJykucGlwZShcclxuICAgICAgZGVib3VuY2VUaW1lKDE1MCksXHJcbiAgICAgIGZpbHRlcigoa2V5OiBLZXlib2FyZEV2ZW50KSA9PiBrZXkgJiYga2V5LmtleSA9PT0gJ0VzY2FwZScpLFxyXG4gICAgKTtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZE9uZShrZXl1cCQsICgpID0+IHRoaXMuZGVzdHJveSgpKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5kZXN0cm95KCk7XHJcbiAgfVxyXG5cclxuICBkZXN0cm95KCkge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICAjY29udGFpbmVyXHJcbiAgaWQ9XCJhYnAtaHR0cC1lcnJvci1jb250YWluZXJcIlxyXG4gIGNsYXNzPVwiZXJyb3JcIlxyXG4gIFtzdHlsZS5iYWNrZ3JvdW5kQ29sb3JdPVwiYmFja2dyb3VuZENvbG9yXCJcclxuPlxyXG4gIDxidXR0b25cclxuICAgICpuZ0lmPVwiIWhpZGVDbG9zZUljb25cIlxyXG4gICAgaWQ9XCJhYnAtY2xvc2UtYnV0dG9uXCJcclxuICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgY2xhc3M9XCJidG4tY2xvc2UgbWUtMlwiXHJcbiAgICAoY2xpY2spPVwiZGVzdHJveSgpXCJcclxuICA+PC9idXR0b24+XHJcblxyXG4gIDxkaXYgKm5nSWY9XCIhY3VzdG9tQ29tcG9uZW50XCIgY2xhc3M9XCJyb3cgY2VudGVyZWRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImVycm9yLXRlbXBsYXRlXCI+XHJcbiAgICAgICAgPGgxPnt7IHN0YXR1c1RleHQgfX0ge3sgdGl0bGUgfCBhYnBMb2NhbGl6YXRpb24gfX08L2gxPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJlcnJvci1kZXRhaWxzXCI+XHJcbiAgICAgICAgICB7eyBkZXRhaWxzIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImVycm9yLWFjdGlvbnNcIj5cclxuICAgICAgICAgIDxhXHJcbiAgICAgICAgICAgICpuZ0lmPVwiaXNIb21lU2hvd1wiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJkZXN0cm95KClcIlxyXG4gICAgICAgICAgICByb3V0ZXJMaW5rPVwiL1wiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1tZCBtdC0yXCJcclxuICAgICAgICAgICAgPjxzcGFuIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1ob21lXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICB7eyB7IGtleTogJzo6TWVudTpIb21lJywgZGVmYXVsdFZhbHVlOiAnSG9tZScgfSB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgPC9hPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -82,8 +82,8 @@ export class LoaderBarComponent {
82
82
  this.timer = timer(this.stopDelay).subscribe(this.clearProgress);
83
83
  }
84
84
  }
85
- LoaderBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LoaderBarComponent, deps: [{ token: i1.Router }, { token: i0.ChangeDetectorRef }, { token: i2.SubscriptionService }, { token: i2.HttpWaitService }, { token: i2.RouterWaitService }], target: i0.ɵɵFactoryTarget.Component });
86
- LoaderBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: LoaderBarComponent, selector: "abp-loader-bar", inputs: { isLoading: "isLoading", containerClass: "containerClass", color: "color" }, providers: [SubscriptionService], ngImport: i0, template: `
85
+ LoaderBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LoaderBarComponent, deps: [{ token: i1.Router }, { token: i0.ChangeDetectorRef }, { token: i2.SubscriptionService }, { token: i2.HttpWaitService }, { token: i2.RouterWaitService }], target: i0.ɵɵFactoryTarget.Component });
86
+ LoaderBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: LoaderBarComponent, selector: "abp-loader-bar", inputs: { isLoading: "isLoading", containerClass: "containerClass", color: "color" }, providers: [SubscriptionService], ngImport: i0, template: `
87
87
  <div id="abp-loader-bar" [ngClass]="containerClass" [class.is-loading]="isLoading">
88
88
  <div
89
89
  class="abp-progress"
@@ -96,11 +96,9 @@ LoaderBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
96
96
  ></div>
97
97
  </div>
98
98
  `, isInline: true, styles: [".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{height:3px;left:0;position:fixed;top:0}.abp-loader-bar .abp-progress.progressing{transition:width .4s ease}\n"], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
99
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LoaderBarComponent, decorators: [{
99
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LoaderBarComponent, decorators: [{
100
100
  type: Component,
101
- args: [{
102
- selector: 'abp-loader-bar',
103
- template: `
101
+ args: [{ selector: 'abp-loader-bar', template: `
104
102
  <div id="abp-loader-bar" [ngClass]="containerClass" [class.is-loading]="isLoading">
105
103
  <div
106
104
  class="abp-progress"
@@ -112,10 +110,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
112
110
  }"
113
111
  ></div>
114
112
  </div>
115
- `,
116
- styleUrls: ['./loader-bar.component.scss'],
117
- providers: [SubscriptionService],
118
- }]
113
+ `, providers: [SubscriptionService], styles: [".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{height:3px;left:0;position:fixed;top:0}.abp-loader-bar .abp-progress.progressing{transition:width .4s ease}\n"] }]
119
114
  }], ctorParameters: function () { return [{ type: i1.Router }, { type: i0.ChangeDetectorRef }, { type: i2.SubscriptionService }, { type: i2.HttpWaitService }, { type: i2.RouterWaitService }]; }, propDecorators: { isLoading: [{
120
115
  type: Input
121
116
  }], containerClass: [{
@@ -123,4 +118,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
123
118
  }], color: [{
124
119
  type: Input
125
120
  }] } });
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFvQjFELE1BQU0sT0FBTyxrQkFBa0I7SUFrRDdCLFlBQ1UsTUFBYyxFQUNkLEtBQXdCLEVBQ3hCLFlBQWlDLEVBQ2pDLGVBQWdDLEVBQ2hDLGlCQUFvQztRQUpwQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQ2pDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBMUM5QyxtQkFBYyxHQUFHLGdCQUFnQixDQUFDO1FBR2xDLFVBQUssR0FBRyxTQUFTLENBQUM7UUFFbEIsa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFFbEIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFOUIsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFM0IsbUJBQWMsR0FBRyxHQUFHLENBQUM7UUFFckIsY0FBUyxHQUFHLEdBQUcsQ0FBQztRQUVDLGtCQUFhLEdBQUcsR0FBRyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDO1FBRWUsbUJBQWMsR0FBRyxHQUFHLEVBQUU7WUFDckMsSUFBSSxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsRUFBRTtnQkFDM0IsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQzthQUM3QztpQkFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxFQUFFO2dCQUNsQyxJQUFJLENBQUMsYUFBYSxJQUFJLEdBQUcsQ0FBQzthQUMzQjtpQkFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxFQUFFO2dCQUNuQyxJQUFJLENBQUMsYUFBYSxJQUFJLEdBQUcsQ0FBQzthQUMzQjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO2FBQzdCO1lBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUM3QixDQUFDLENBQUM7SUFZQyxDQUFDO0lBckRKLElBQ0ksU0FBUyxDQUFDLEtBQWM7UUFDMUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBQ0QsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFvQ0QsSUFBSSxTQUFTO1FBQ1gsT0FBTyxpQkFBaUIsSUFBSSxDQUFDLEtBQUssUUFBUSxDQUFDO0lBQzdDLENBQUM7SUFVRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUN0QixhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLEVBQ3pGLENBQUMsQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLEVBQUUsRUFBRTtZQUMvQixJQUFJLFdBQVcsSUFBSSxhQUFhO2dCQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzs7Z0JBQ2pELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTTtZQUFFLE9BQU87UUFFcEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDN0UsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFNUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFFdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTTtZQUFFLE9BQU87UUFFL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDbkUsQ0FBQzs7Z0hBL0ZVLGtCQUFrQjtvR0FBbEIsa0JBQWtCLCtIQUZsQixDQUFDLG1CQUFtQixDQUFDLDBCQWR0Qjs7Ozs7Ozs7Ozs7O0dBWVQ7NEZBSVUsa0JBQWtCO2tCQWxCOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7OztHQVlUO29CQUNELFNBQVMsRUFBRSxDQUFDLDZCQUE2QixDQUFDO29CQUMxQyxTQUFTLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztpQkFDakM7Nk5BS0ssU0FBUztzQkFEWixLQUFLO2dCQVVOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixLQUFLO3NCQURKLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwV2FpdFNlcnZpY2UsIFJvdXRlcldhaXRTZXJ2aWNlLCBTdWJzY3JpcHRpb25TZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIFN1YnNjcmlwdGlvbiwgdGltZXIgfSBmcm9tICdyeGpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWJwLWxvYWRlci1iYXInLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGlkPVwiYWJwLWxvYWRlci1iYXJcIiBbbmdDbGFzc109XCJjb250YWluZXJDbGFzc1wiIFtjbGFzcy5pcy1sb2FkaW5nXT1cImlzTG9hZGluZ1wiPlxyXG4gICAgICA8ZGl2XHJcbiAgICAgICAgY2xhc3M9XCJhYnAtcHJvZ3Jlc3NcIlxyXG4gICAgICAgIFtjbGFzcy5wcm9ncmVzc2luZ109XCJwcm9ncmVzc0xldmVsXCJcclxuICAgICAgICBbc3R5bGUud2lkdGgudnddPVwicHJvZ3Jlc3NMZXZlbFwiXHJcbiAgICAgICAgW25nU3R5bGVdPVwie1xyXG4gICAgICAgICAgJ2JhY2tncm91bmQtY29sb3InOiBjb2xvcixcclxuICAgICAgICAgICdib3gtc2hhZG93JzogYm94U2hhZG93XHJcbiAgICAgICAgfVwiXHJcbiAgICAgID48L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbG9hZGVyLWJhci5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW1N1YnNjcmlwdGlvblNlcnZpY2VdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9hZGVyQmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xyXG4gIHByb3RlY3RlZCBfaXNMb2FkaW5nITogYm9vbGVhbjtcclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgaXNMb2FkaW5nKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9pc0xvYWRpbmcgPSB2YWx1ZTtcclxuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuICBnZXQgaXNMb2FkaW5nKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzTG9hZGluZztcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgY29udGFpbmVyQ2xhc3MgPSAnYWJwLWxvYWRlci1iYXInO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGNvbG9yID0gJyM3N2I2ZmYnO1xyXG5cclxuICBwcm9ncmVzc0xldmVsID0gMDtcclxuXHJcbiAgaW50ZXJ2YWwgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gIHRpbWVyID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG5cclxuICBpbnRlcnZhbFBlcmlvZCA9IDM1MDtcclxuXHJcbiAgc3RvcERlbGF5ID0gODAwO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IGNsZWFyUHJvZ3Jlc3MgPSAoKSA9PiB7XHJcbiAgICB0aGlzLnByb2dyZXNzTGV2ZWwgPSAwO1xyXG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSByZXBvcnRQcm9ncmVzcyA9ICgpID0+IHtcclxuICAgIGlmICh0aGlzLnByb2dyZXNzTGV2ZWwgPCA3NSkge1xyXG4gICAgICB0aGlzLnByb2dyZXNzTGV2ZWwgKz0gMSArIE1hdGgucmFuZG9tKCkgKiA5O1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnByb2dyZXNzTGV2ZWwgPCA5MCkge1xyXG4gICAgICB0aGlzLnByb2dyZXNzTGV2ZWwgKz0gMC40O1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnByb2dyZXNzTGV2ZWwgPCAxMDApIHtcclxuICAgICAgdGhpcy5wcm9ncmVzc0xldmVsICs9IDAuMTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaW50ZXJ2YWwudW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH07XHJcblxyXG4gIGdldCBib3hTaGFkb3coKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgMCAwIDEwcHggcmdiYSgke3RoaXMuY29sb3J9LCAwLjUpYDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGh0dHBXYWl0U2VydmljZTogSHR0cFdhaXRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXJXYWl0U2VydmljZTogUm91dGVyV2FpdFNlcnZpY2UsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc3Vic2NyaWJlTG9hZGluZygpO1xyXG4gIH1cclxuXHJcbiAgc3Vic2NyaWJlTG9hZGluZygpIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZE9uZShcclxuICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5odHRwV2FpdFNlcnZpY2UuZ2V0TG9hZGluZyQoKSwgdGhpcy5yb3V0ZXJXYWl0U2VydmljZS5nZXRMb2FkaW5nJCgpXSksXHJcbiAgICAgIChbaHR0cExvYWRpbmcsIHJvdXRlckxvYWRpbmddKSA9PiB7XHJcbiAgICAgICAgaWYgKGh0dHBMb2FkaW5nIHx8IHJvdXRlckxvYWRpbmcpIHRoaXMuc3RhcnRMb2FkaW5nKCk7XHJcbiAgICAgICAgZWxzZSB0aGlzLnN0b3BMb2FkaW5nKCk7XHJcbiAgICAgIH0sXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmludGVydmFsLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBzdGFydExvYWRpbmcoKSB7XHJcbiAgICBpZiAodGhpcy5pc0xvYWRpbmcgfHwgIXRoaXMuaW50ZXJ2YWwuY2xvc2VkKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5wcm9ncmVzc0xldmVsID0gMDtcclxuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgdGhpcy5pbnRlcnZhbCA9IHRpbWVyKDAsIHRoaXMuaW50ZXJ2YWxQZXJpb2QpLnN1YnNjcmliZSh0aGlzLnJlcG9ydFByb2dyZXNzKTtcclxuICAgIHRoaXMudGltZXIudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHN0b3BMb2FkaW5nKCkge1xyXG4gICAgdGhpcy5pbnRlcnZhbC51bnN1YnNjcmliZSgpO1xyXG5cclxuICAgIHRoaXMucHJvZ3Jlc3NMZXZlbCA9IDEwMDtcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcblxyXG4gICAgaWYgKCF0aGlzLnRpbWVyLmNsb3NlZCkgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMudGltZXIgPSB0aW1lcih0aGlzLnN0b3BEZWxheSkuc3Vic2NyaWJlKHRoaXMuY2xlYXJQcm9ncmVzcyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFvQjFELE1BQU0sT0FBTyxrQkFBa0I7SUFrRDdCLFlBQ1UsTUFBYyxFQUNkLEtBQXdCLEVBQ3hCLFlBQWlDLEVBQ2pDLGVBQWdDLEVBQ2hDLGlCQUFvQztRQUpwQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQ2pDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBMUM5QyxtQkFBYyxHQUFHLGdCQUFnQixDQUFDO1FBR2xDLFVBQUssR0FBRyxTQUFTLENBQUM7UUFFbEIsa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFFbEIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFOUIsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFM0IsbUJBQWMsR0FBRyxHQUFHLENBQUM7UUFFckIsY0FBUyxHQUFHLEdBQUcsQ0FBQztRQUVDLGtCQUFhLEdBQUcsR0FBRyxFQUFFO1lBQ3BD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SUFDbkUsQ0FBQzs7K0dBL0ZVLGtCQUFrQjttR0FBbEIsa0JBQWtCLCtIQUZsQixDQUFDLG1CQUFtQixDQUFDLDBCQWR0Qjs7Ozs7Ozs7Ozs7O0dBWVQ7MkZBSVUsa0JBQWtCO2tCQWxCOUIsU0FBUzsrQkFDRSxnQkFBZ0IsWUFDaEI7Ozs7Ozs7Ozs7OztHQVlULGFBRVUsQ0FBQyxtQkFBbUIsQ0FBQzs2TkFNNUIsU0FBUztzQkFEWixLQUFLO2dCQVVOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixLQUFLO3NCQURKLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwV2FpdFNlcnZpY2UsIFJvdXRlcldhaXRTZXJ2aWNlLCBTdWJzY3JpcHRpb25TZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIFN1YnNjcmlwdGlvbiwgdGltZXIgfSBmcm9tICdyeGpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWJwLWxvYWRlci1iYXInLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGlkPVwiYWJwLWxvYWRlci1iYXJcIiBbbmdDbGFzc109XCJjb250YWluZXJDbGFzc1wiIFtjbGFzcy5pcy1sb2FkaW5nXT1cImlzTG9hZGluZ1wiPlxyXG4gICAgICA8ZGl2XHJcbiAgICAgICAgY2xhc3M9XCJhYnAtcHJvZ3Jlc3NcIlxyXG4gICAgICAgIFtjbGFzcy5wcm9ncmVzc2luZ109XCJwcm9ncmVzc0xldmVsXCJcclxuICAgICAgICBbc3R5bGUud2lkdGgudnddPVwicHJvZ3Jlc3NMZXZlbFwiXHJcbiAgICAgICAgW25nU3R5bGVdPVwie1xyXG4gICAgICAgICAgJ2JhY2tncm91bmQtY29sb3InOiBjb2xvcixcclxuICAgICAgICAgICdib3gtc2hhZG93JzogYm94U2hhZG93XHJcbiAgICAgICAgfVwiXHJcbiAgICAgID48L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbG9hZGVyLWJhci5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW1N1YnNjcmlwdGlvblNlcnZpY2VdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9hZGVyQmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xyXG4gIHByb3RlY3RlZCBfaXNMb2FkaW5nITogYm9vbGVhbjtcclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgaXNMb2FkaW5nKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9pc0xvYWRpbmcgPSB2YWx1ZTtcclxuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuICBnZXQgaXNMb2FkaW5nKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzTG9hZGluZztcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgY29udGFpbmVyQ2xhc3MgPSAnYWJwLWxvYWRlci1iYXInO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGNvbG9yID0gJyM3N2I2ZmYnO1xyXG5cclxuICBwcm9ncmVzc0xldmVsID0gMDtcclxuXHJcbiAgaW50ZXJ2YWwgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gIHRpbWVyID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG5cclxuICBpbnRlcnZhbFBlcmlvZCA9IDM1MDtcclxuXHJcbiAgc3RvcERlbGF5ID0gODAwO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IGNsZWFyUHJvZ3Jlc3MgPSAoKSA9PiB7XHJcbiAgICB0aGlzLnByb2dyZXNzTGV2ZWwgPSAwO1xyXG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSByZXBvcnRQcm9ncmVzcyA9ICgpID0+IHtcclxuICAgIGlmICh0aGlzLnByb2dyZXNzTGV2ZWwgPCA3NSkge1xyXG4gICAgICB0aGlzLnByb2dyZXNzTGV2ZWwgKz0gMSArIE1hdGgucmFuZG9tKCkgKiA5O1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnByb2dyZXNzTGV2ZWwgPCA5MCkge1xyXG4gICAgICB0aGlzLnByb2dyZXNzTGV2ZWwgKz0gMC40O1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnByb2dyZXNzTGV2ZWwgPCAxMDApIHtcclxuICAgICAgdGhpcy5wcm9ncmVzc0xldmVsICs9IDAuMTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaW50ZXJ2YWwudW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH07XHJcblxyXG4gIGdldCBib3hTaGFkb3coKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgMCAwIDEwcHggcmdiYSgke3RoaXMuY29sb3J9LCAwLjUpYDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGh0dHBXYWl0U2VydmljZTogSHR0cFdhaXRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXJXYWl0U2VydmljZTogUm91dGVyV2FpdFNlcnZpY2UsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc3Vic2NyaWJlTG9hZGluZygpO1xyXG4gIH1cclxuXHJcbiAgc3Vic2NyaWJlTG9hZGluZygpIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZE9uZShcclxuICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5odHRwV2FpdFNlcnZpY2UuZ2V0TG9hZGluZyQoKSwgdGhpcy5yb3V0ZXJXYWl0U2VydmljZS5nZXRMb2FkaW5nJCgpXSksXHJcbiAgICAgIChbaHR0cExvYWRpbmcsIHJvdXRlckxvYWRpbmddKSA9PiB7XHJcbiAgICAgICAgaWYgKGh0dHBMb2FkaW5nIHx8IHJvdXRlckxvYWRpbmcpIHRoaXMuc3RhcnRMb2FkaW5nKCk7XHJcbiAgICAgICAgZWxzZSB0aGlzLnN0b3BMb2FkaW5nKCk7XHJcbiAgICAgIH0sXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmludGVydmFsLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBzdGFydExvYWRpbmcoKSB7XHJcbiAgICBpZiAodGhpcy5pc0xvYWRpbmcgfHwgIXRoaXMuaW50ZXJ2YWwuY2xvc2VkKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5wcm9ncmVzc0xldmVsID0gMDtcclxuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgdGhpcy5pbnRlcnZhbCA9IHRpbWVyKDAsIHRoaXMuaW50ZXJ2YWxQZXJpb2QpLnN1YnNjcmliZSh0aGlzLnJlcG9ydFByb2dyZXNzKTtcclxuICAgIHRoaXMudGltZXIudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHN0b3BMb2FkaW5nKCkge1xyXG4gICAgdGhpcy5pbnRlcnZhbC51bnN1YnNjcmliZSgpO1xyXG5cclxuICAgIHRoaXMucHJvZ3Jlc3NMZXZlbCA9IDEwMDtcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcblxyXG4gICAgaWYgKCF0aGlzLnRpbWVyLmNsb3NlZCkgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMudGltZXIgPSB0aW1lcih0aGlzLnN0b3BEZWxheSkuc3Vic2NyaWJlKHRoaXMuY2xlYXJQcm9ncmVzcyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -2,13 +2,13 @@ import { Component, ViewEncapsulation } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class LoadingComponent {
4
4
  }
5
- LoadingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LoadingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
- LoadingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: LoadingComponent, selector: "abp-loading", ngImport: i0, template: `
5
+ LoadingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LoadingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ LoadingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: LoadingComponent, selector: "abp-loading", ngImport: i0, template: `
7
7
  <div class="abp-loading">
8
8
  <i class="fa fa-spinner fa-pulse abp-spinner"></i>
9
9
  </div>
10
- `, isInline: true, styles: ["\n .abp-loading {\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n z-index: 1040;\n }\n\n .abp-loading .abp-spinner {\n position: absolute;\n top: 50%;\n left: 50%;\n font-size: 14px;\n -moz-transform: translateX(-50%) translateY(-50%);\n -o-transform: translateX(-50%) translateY(-50%);\n -ms-transform: translateX(-50%) translateY(-50%);\n -webkit-transform: translateX(-50%) translateY(-50%);\n transform: translateX(-50%) translateY(-50%);\n }\n "], encapsulation: i0.ViewEncapsulation.None });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LoadingComponent, decorators: [{
10
+ `, isInline: true, styles: [".abp-loading{position:absolute;width:100%;height:100%;top:0;left:0;z-index:1040}.abp-loading .abp-spinner{position:absolute;top:50%;left:50%;font-size:14px;transform:translate(-50%) translateY(-50%)}\n"], encapsulation: i0.ViewEncapsulation.None });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LoadingComponent, decorators: [{
12
12
  type: Component,
13
13
  args: [{
14
14
  selector: 'abp-loading',
@@ -44,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
44
44
  ],
45
45
  }]
46
46
  }] });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL2xvYWRpbmcvbG9hZGluZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFtQzdELE1BQU0sT0FBTyxnQkFBZ0I7OzhHQUFoQixnQkFBZ0I7a0dBQWhCLGdCQUFnQixtREEvQmpCOzs7O0dBSVQ7NEZBMkJVLGdCQUFnQjtrQkFqQzVCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFFBQVEsRUFBRTs7OztHQUlUO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxNQUFNLEVBQUU7d0JBQ047Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQXFCQztxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWJwLWxvYWRpbmcnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGNsYXNzPVwiYWJwLWxvYWRpbmdcIj5cclxuICAgICAgPGkgY2xhc3M9XCJmYSBmYS1zcGlubmVyIGZhLXB1bHNlIGFicC1zcGlubmVyXCI+PC9pPlxyXG4gICAgPC9kaXY+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIHN0eWxlczogW1xyXG4gICAgYFxyXG4gICAgICAuYWJwLWxvYWRpbmcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgei1pbmRleDogMTA0MDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmFicC1sb2FkaW5nIC5hYnAtc3Bpbm5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgfVxyXG4gICAgYCxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9hZGluZ0NvbXBvbmVudCB7fVxyXG4iXX0=
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL2xvYWRpbmcvbG9hZGluZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFtQzdELE1BQU0sT0FBTyxnQkFBZ0I7OzZHQUFoQixnQkFBZ0I7aUdBQWhCLGdCQUFnQixtREEvQmpCOzs7O0dBSVQ7MkZBMkJVLGdCQUFnQjtrQkFqQzVCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFFBQVEsRUFBRTs7OztHQUlUO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxNQUFNLEVBQUU7d0JBQ047Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQXFCQztxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWJwLWxvYWRpbmcnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGNsYXNzPVwiYWJwLWxvYWRpbmdcIj5cclxuICAgICAgPGkgY2xhc3M9XCJmYSBmYS1zcGlubmVyIGZhLXB1bHNlIGFicC1zcGlubmVyXCI+PC9pPlxyXG4gICAgPC9kaXY+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIHN0eWxlczogW1xyXG4gICAgYFxyXG4gICAgICAuYWJwLWxvYWRpbmcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgei1pbmRleDogMTA0MDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmFicC1sb2FkaW5nIC5hYnAtc3Bpbm5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgfVxyXG4gICAgYCxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9hZGluZ0NvbXBvbmVudCB7fVxyXG4iXX0=
@@ -10,13 +10,12 @@ export class ModalCloseDirective {
10
10
  }
11
11
  }
12
12
  onClick() {
13
- var _a;
14
- (_a = this.modal) === null || _a === void 0 ? void 0 : _a.close();
13
+ this.modal?.close();
15
14
  }
16
15
  }
17
- ModalCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ModalCloseDirective, deps: [{ token: i1.ModalComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
18
- ModalCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: ModalCloseDirective, selector: "[abpClose]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ModalCloseDirective, decorators: [{
16
+ ModalCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ModalCloseDirective, deps: [{ token: i1.ModalComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
17
+ ModalCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: ModalCloseDirective, selector: "[abpClose]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ModalCloseDirective, decorators: [{
20
19
  type: Directive,
21
20
  args: [{ selector: '[abpClose]' }]
22
21
  }], ctorParameters: function () { return [{ type: i1.ModalComponent, decorators: [{
@@ -25,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
25
24
  type: HostListener,
26
25
  args: ['click']
27
26
  }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtY2xvc2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGhlbWUtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC1jbG9zZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBR25ELE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsWUFBZ0MsS0FBcUI7UUFBckIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDbkQsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMseUNBQXlDLENBQUMsQ0FBQztTQUMxRDtJQUNILENBQUM7SUFHRCxPQUFPOztRQUNMLE1BQUEsSUFBSSxDQUFDLEtBQUssMENBQUUsS0FBSyxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7aUhBVlUsbUJBQW1CO3FHQUFuQixtQkFBbUI7NEZBQW5CLG1CQUFtQjtrQkFEL0IsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUU7OzBCQUV0QixRQUFROzRDQU9yQixPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNb2RhbENvbXBvbmVudCB9IGZyb20gJy4vbW9kYWwuY29tcG9uZW50JztcclxuXHJcbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1thYnBDbG9zZV0nIH0pXHJcbmV4cG9ydCBjbGFzcyBNb2RhbENsb3NlRGlyZWN0aXZlIHtcclxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwcml2YXRlIG1vZGFsOiBNb2RhbENvbXBvbmVudCkge1xyXG4gICAgaWYgKCFtb2RhbCkge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCdQbGVhc2UgdXNlIGFicENsb3NlIHdpdGhpbiBhbiBhYnAtbW9kYWwnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcclxuICBvbkNsaWNrKCkge1xyXG4gICAgdGhpcy5tb2RhbD8uY2xvc2UoKTtcclxuICB9XHJcbn1cclxuIl19
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtY2xvc2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGhlbWUtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC1jbG9zZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBR25ELE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsWUFBZ0MsS0FBcUI7UUFBckIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDbkQsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMseUNBQXlDLENBQUMsQ0FBQztTQUMxRDtJQUNILENBQUM7SUFHRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUN0QixDQUFDOztnSEFWVSxtQkFBbUI7b0dBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUQvQixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRTs7MEJBRXRCLFFBQVE7NENBT3JCLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbC5jb21wb25lbnQnO1xyXG5cclxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2FicENsb3NlXScgfSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsQ2xvc2VEaXJlY3RpdmUge1xyXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIHByaXZhdGUgbW9kYWw6IE1vZGFsQ29tcG9uZW50KSB7XHJcbiAgICBpZiAoIW1vZGFsKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ1BsZWFzZSB1c2UgYWJwQ2xvc2Ugd2l0aGluIGFuIGFicC1tb2RhbCcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxyXG4gIG9uQ2xpY2soKSB7XHJcbiAgICB0aGlzLm1vZGFsPy5jbG9zZSgpO1xyXG4gIH1cclxufVxyXG4iXX0=