@sd-angular/core 1.3.149 → 1.3.151
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api/sd-angular-core-api.metadata.json +1 -1
- package/api/src/lib/api.service.d.ts +1 -5
- package/assets/img/file-types/eps/001-file.eps +143 -143
- package/assets/img/file-types/eps/002-file-1.eps +136 -136
- package/assets/img/file-types/eps/003-file-2.eps +130 -130
- package/assets/img/file-types/eps/004-file-3.eps +127 -127
- package/assets/img/file-types/eps/005-file-4.eps +120 -120
- package/assets/img/file-types/eps/006-file-5.eps +133 -133
- package/assets/img/file-types/eps/007-file-6.eps +133 -133
- package/assets/img/file-types/eps/008-file-7.eps +144 -144
- package/assets/img/file-types/eps/009-file-8.eps +150 -150
- package/assets/img/file-types/eps/010-file-9.eps +155 -155
- package/assets/img/file-types/eps/011-file-10.eps +124 -124
- package/assets/img/file-types/eps/012-file-11.eps +147 -147
- package/assets/img/file-types/eps/013-file-12.eps +125 -125
- package/assets/img/file-types/eps/014-file-13.eps +129 -129
- package/assets/img/file-types/eps/015-file-14.eps +143 -143
- package/assets/img/file-types/eps/016-file-15.eps +130 -130
- package/assets/img/file-types/eps/017-file-16.eps +197 -197
- package/assets/img/file-types/eps/018-file-17.eps +146 -146
- package/assets/img/file-types/eps/019-file-18.eps +131 -131
- package/assets/img/file-types/eps/020-file-19.eps +137 -137
- package/assets/img/file-types/eps/021-file-20.eps +134 -134
- package/assets/img/file-types/eps/022-file-21.eps +130 -130
- package/assets/img/file-types/eps/023-file-22.eps +161 -161
- package/assets/img/file-types/eps/024-file-23.eps +144 -144
- package/assets/img/file-types/eps/025-file-24.eps +164 -164
- package/assets/img/file-types/eps/026-file-25.eps +135 -135
- package/assets/img/file-types/eps/027-file-26.eps +124 -124
- package/assets/img/file-types/eps/028-file-27.eps +120 -120
- package/assets/img/file-types/eps/029-file-28.eps +141 -141
- package/assets/img/file-types/eps/030-file-29.eps +130 -130
- package/assets/img/file-types/eps/031-file-30.eps +157 -157
- package/assets/img/file-types/eps/032-file-31.eps +139 -139
- package/assets/img/file-types/eps/033-file-32.eps +139 -139
- package/assets/img/file-types/eps/034-file-33.eps +189 -189
- package/assets/img/file-types/eps/035-file-34.eps +162 -162
- package/assets/img/file-types/eps/036-file-35.eps +142 -142
- package/assets/img/file-types/eps/037-file-36.eps +123 -123
- package/assets/img/file-types/eps/038-file-37.eps +127 -127
- package/assets/img/file-types/eps/039-file-38.eps +146 -146
- package/assets/img/file-types/eps/040-file-39.eps +126 -126
- package/assets/img/file-types/eps/041-file-40.eps +117 -117
- package/assets/img/file-types/eps/042-file-41.eps +156 -156
- package/assets/img/file-types/eps/043-file-42.eps +118 -118
- package/assets/img/file-types/eps/044-file-43.eps +172 -172
- package/assets/img/file-types/eps/045-file-44.eps +201 -201
- package/assets/img/file-types/eps/046-file-45.eps +94 -94
- package/assets/img/file-types/eps/047-file-46.eps +176 -176
- package/assets/img/file-types/eps/048-file-47.eps +238 -238
- package/assets/img/file-types/eps/049-file-48.eps +187 -187
- package/assets/img/file-types/eps/050-file-49.eps +137 -137
- package/bundles/sd-angular-core-api.umd.js +27 -59
- package/bundles/sd-angular-core-api.umd.js.map +1 -1
- package/bundles/sd-angular-core-api.umd.min.js +1 -1
- package/bundles/sd-angular-core-api.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-common.umd.js +92 -0
- package/bundles/sd-angular-core-common.umd.js.map +1 -1
- package/bundles/sd-angular-core-common.umd.min.js +1 -1
- package/bundles/sd-angular-core-common.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-input-dropdown.umd.js +9 -12
- package/bundles/sd-angular-core-input-dropdown.umd.js.map +1 -1
- package/bundles/sd-angular-core-input-dropdown.umd.min.js +2 -2
- package/bundles/sd-angular-core-input-dropdown.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-table.umd.js +585 -991
- package/bundles/sd-angular-core-table.umd.js.map +1 -1
- package/bundles/sd-angular-core-table.umd.min.js +1 -1
- package/bundles/sd-angular-core-table.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-utility.umd.js +10 -56
- package/bundles/sd-angular-core-utility.umd.js.map +1 -1
- package/bundles/sd-angular-core-utility.umd.min.js +1 -1
- package/bundles/sd-angular-core-utility.umd.min.js.map +1 -1
- package/common/sd-angular-core-common.d.ts +1 -0
- package/common/sd-angular-core-common.metadata.json +1 -1
- package/common/src/lib/directives/sd-for.directive.d.ts +16 -0
- package/esm2015/api/index.js +1 -1
- package/esm2015/api/sd-angular-core-api.js +1 -1
- package/esm2015/api/src/lib/api.model.js +1 -1
- package/esm2015/api/src/lib/api.module.js +1 -1
- package/esm2015/api/src/lib/api.service.js +3 -36
- package/esm2015/api/src/lib/http.interceptor.js +1 -1
- package/esm2015/api/src/lib/http.service.js +1 -1
- package/esm2015/api/src/lib/token.service.js +1 -1
- package/esm2015/api/src/public-api.js +1 -1
- package/esm2015/autocomplete/index.js +1 -1
- package/esm2015/autocomplete/sd-angular-core-autocomplete.js +1 -1
- package/esm2015/autocomplete/src/lib/autocomplete-display-def.directive.js +1 -1
- package/esm2015/autocomplete/src/lib/autocomplete.component.js +1 -1
- package/esm2015/autocomplete/src/lib/autocomplete.module.js +1 -1
- package/esm2015/autocomplete/src/public-api.js +1 -1
- package/esm2015/badge/index.js +1 -1
- package/esm2015/badge/sd-angular-core-badge.js +1 -1
- package/esm2015/badge/src/lib/badge.component.js +1 -1
- package/esm2015/badge/src/lib/badge.module.js +1 -1
- package/esm2015/badge/src/public-api.js +1 -1
- package/esm2015/button/index.js +1 -1
- package/esm2015/button/sd-angular-core-button.js +1 -1
- package/esm2015/button/src/lib/button.component.js +1 -1
- package/esm2015/button/src/lib/button.module.js +1 -1
- package/esm2015/button/src/public-api.js +1 -1
- package/esm2015/cache/index.js +1 -1
- package/esm2015/cache/sd-angular-core-cache.js +1 -1
- package/esm2015/cache/src/lib/cache.model.js +1 -1
- package/esm2015/cache/src/lib/cache.service.js +1 -1
- package/esm2015/cache/src/public-api.js +1 -1
- package/esm2015/chart/index.js +1 -1
- package/esm2015/chart/sd-angular-core-chart.js +1 -1
- package/esm2015/chart/src/lib/chart.component.js +1 -1
- package/esm2015/chart/src/lib/chart.model.js +1 -1
- package/esm2015/chart/src/lib/chart.module.js +1 -1
- package/esm2015/chart/src/public-api.js +1 -1
- package/esm2015/checkbox/index.js +1 -1
- package/esm2015/checkbox/sd-angular-core-checkbox.js +1 -1
- package/esm2015/checkbox/src/lib/checkbox.component.js +1 -1
- package/esm2015/checkbox/src/lib/checkbox.module.js +1 -1
- package/esm2015/checkbox/src/public-api.js +1 -1
- package/esm2015/chip/index.js +1 -1
- package/esm2015/chip/sd-angular-core-chip.js +1 -1
- package/esm2015/chip/src/lib/chip.component.js +1 -1
- package/esm2015/chip/src/lib/chip.model.js +1 -1
- package/esm2015/chip/src/lib/chip.module.js +1 -1
- package/esm2015/chip/src/lib/directives/sd-chip-display-def.directive.js +1 -1
- package/esm2015/chip/src/lib/pipes/removable-chip.pipe.js +1 -1
- package/esm2015/chip/src/public-api.js +1 -1
- package/esm2015/comment/index.js +1 -1
- package/esm2015/comment/sd-angular-core-comment.js +1 -1
- package/esm2015/comment/src/lib/comment.component.js +1 -1
- package/esm2015/comment/src/lib/comment.model.js +1 -1
- package/esm2015/comment/src/lib/comment.module.js +1 -1
- package/esm2015/comment/src/public-api.js +1 -1
- package/esm2015/common/index.js +1 -1
- package/esm2015/common/sd-angular-core-common.js +2 -1
- package/esm2015/common/src/lib/common.module.js +4 -1
- package/esm2015/common/src/lib/configurations/firebase.configuration.js +1 -1
- package/esm2015/common/src/lib/configurations/form.configuration.js +1 -1
- package/esm2015/common/src/lib/directives/sd-for.directive.js +82 -0
- package/esm2015/common/src/lib/directives/sd-lable.directive.js +1 -1
- package/esm2015/common/src/lib/directives/sd-let.directive.js +1 -1
- package/esm2015/common/src/lib/directives/sd-scroll.directive.js +1 -1
- package/esm2015/common/src/lib/directives/sd-suffix.directive.js +1 -1
- package/esm2015/common/src/lib/directives/view-def.directive.js +1 -1
- package/esm2015/common/src/lib/models/sd-form-control.js +1 -1
- package/esm2015/common/src/lib/others/detectIncognito.js +1 -1
- package/esm2015/common/src/lib/services/browser.service.js +1 -1
- package/esm2015/common/src/lib/typings/array.extension.js +1 -1
- package/esm2015/common/src/lib/typings/date.extension.js +1 -1
- package/esm2015/common/src/lib/typings/index.js +1 -1
- package/esm2015/common/src/lib/typings/number.extension.js +1 -1
- package/esm2015/common/src/lib/typings/string.extension.js +1 -1
- package/esm2015/common/src/lib/typings/utility.extension.js +1 -1
- package/esm2015/common/src/public-api.js +1 -1
- package/esm2015/confirm/index.js +1 -1
- package/esm2015/confirm/sd-angular-core-confirm.js +1 -1
- package/esm2015/confirm/src/lib/components/dialog-confirm/dialog-confirm.component.js +1 -1
- package/esm2015/confirm/src/lib/confirm.module.js +1 -1
- package/esm2015/confirm/src/lib/confirm.service.js +1 -1
- package/esm2015/confirm/src/public-api.js +1 -1
- package/esm2015/date-month/index.js +1 -1
- package/esm2015/date-month/sd-angular-core-date-month.js +1 -1
- package/esm2015/date-month/src/lib/date-month.component.js +1 -1
- package/esm2015/date-month/src/lib/date-month.module.js +1 -1
- package/esm2015/date-month/src/public-api.js +1 -1
- package/esm2015/date-range/index.js +1 -1
- package/esm2015/date-range/sd-angular-core-date-range.js +1 -1
- package/esm2015/date-range/src/lib/date-range.component.js +1 -1
- package/esm2015/date-range/src/lib/date-range.module.js +1 -1
- package/esm2015/date-range/src/public-api.js +1 -1
- package/esm2015/date-time/index.js +1 -1
- package/esm2015/date-time/sd-angular-core-date-time.js +1 -1
- package/esm2015/date-time/src/lib/date-time.component.js +1 -1
- package/esm2015/date-time/src/lib/date-time.module.js +1 -1
- package/esm2015/date-time/src/public-api.js +1 -1
- package/esm2015/db/index.js +1 -1
- package/esm2015/db/sd-angular-core-db.js +1 -1
- package/esm2015/db/src/lib/db.model.js +1 -1
- package/esm2015/db/src/lib/db.service.js +1 -1
- package/esm2015/db/src/public-api.js +1 -1
- package/esm2015/dynamic-report/index.js +1 -1
- package/esm2015/dynamic-report/sd-angular-core-dynamic-report.js +1 -1
- package/esm2015/dynamic-report/src/lib/dynamic-report.component.js +1 -1
- package/esm2015/dynamic-report/src/lib/dynamic-report.module.js +1 -1
- package/esm2015/dynamic-report/src/public-api.js +1 -1
- package/esm2015/editor/index.js +1 -1
- package/esm2015/editor/sd-angular-core-editor.js +1 -1
- package/esm2015/editor/src/lib/constant.js +1 -1
- package/esm2015/editor/src/lib/editor.component.js +1 -1
- package/esm2015/editor/src/lib/editor.model.js +1 -1
- package/esm2015/editor/src/lib/editor.module.js +1 -1
- package/esm2015/editor/src/public-api.js +1 -1
- package/esm2015/export/index.js +1 -1
- package/esm2015/export/sd-angular-core-export.js +1 -1
- package/esm2015/export/src/lib/excel.model.js +1 -1
- package/esm2015/export/src/lib/export.model.js +1 -1
- package/esm2015/export/src/lib/export.service.js +1 -1
- package/esm2015/export/src/public-api.js +1 -1
- package/esm2015/filter/index.js +1 -1
- package/esm2015/filter/sd-angular-core-filter.js +1 -1
- package/esm2015/filter/src/lib/directives/sd-filter-def.directive.js +1 -1
- package/esm2015/filter/src/lib/filter.component.js +1 -1
- package/esm2015/filter/src/lib/filter.model.js +1 -1
- package/esm2015/filter/src/lib/filter.module.js +1 -1
- package/esm2015/filter/src/lib/filter.service.js +1 -1
- package/esm2015/filter/src/lib/pipes/values-local.pipe.js +1 -1
- package/esm2015/filter/src/lib/pipes/values-server.pipe.js +1 -1
- package/esm2015/filter/src/public-api.js +1 -1
- package/esm2015/form/index.js +1 -1
- package/esm2015/form/sd-angular-core-form.js +1 -1
- package/esm2015/form/src/lib/form.module.js +1 -1
- package/esm2015/form/src/public-api.js +1 -1
- package/esm2015/grid/index.js +1 -1
- package/esm2015/grid/sd-angular-core-grid.js +1 -1
- package/esm2015/grid/src/lib/components/grid-config/grid-config.component.js +1 -1
- package/esm2015/grid/src/lib/components/grid-config/grid-config.model.js +1 -1
- package/esm2015/grid/src/lib/components/grid-desktop-column-children-view/grid-desktop-column-children-view.component.js +1 -1
- package/esm2015/grid/src/lib/components/grid-desktop-column-edit/grid-desktop-column-edit.component.js +1 -1
- package/esm2015/grid/src/lib/components/grid-desktop-column-view/grid-desktop-column-view.component.js +1 -1
- package/esm2015/grid/src/lib/components/grid-desktop-inline-filter/grid-desktop-inline-filter.component.js +1 -1
- package/esm2015/grid/src/lib/components/grid-import-excel/grid-import-excel.component.js +1 -1
- package/esm2015/grid/src/lib/components/grid-mobile-item-view/grid-mobile-item-view.component.js +1 -1
- package/esm2015/grid/src/lib/components/grid-popup-editor/grid-popup-editor.component.js +1 -1
- package/esm2015/grid/src/lib/components/grid-popup-export-excel/grid-popup-export-excel.component.js +1 -1
- package/esm2015/grid/src/lib/components/grid-popup-export-excel/grid-popup-export-excel.model.js +1 -1
- package/esm2015/grid/src/lib/components/grid-popup-filter/grid-popup-filter.component.js +1 -1
- package/esm2015/grid/src/lib/components/grid-popup-filter/grid-popup-filter.model.js +1 -1
- package/esm2015/grid/src/lib/components/grid-popup-quick-filter-detail/grid-popup-quick-filter-detail.component.js +1 -1
- package/esm2015/grid/src/lib/components/grid-sub-information/grid-sub-information.component.js +1 -1
- package/esm2015/grid/src/lib/directives/cell-def.directive.js +1 -1
- package/esm2015/grid/src/lib/directives/cell-editor-def.directive.js +1 -1
- package/esm2015/grid/src/lib/directives/cell-footer-def.directive.js +1 -1
- package/esm2015/grid/src/lib/directives/sub-information-header-def.directive.js +1 -1
- package/esm2015/grid/src/lib/grid.component.js +1 -1
- package/esm2015/grid/src/lib/grid.model.js +1 -1
- package/esm2015/grid/src/lib/grid.module.js +1 -1
- package/esm2015/grid/src/lib/models/filter-info.model.js +1 -1
- package/esm2015/grid/src/lib/models/grid-configuration.model.js +1 -1
- package/esm2015/grid/src/lib/models/handler-dotnet.js +1 -1
- package/esm2015/grid/src/lib/models/handler-local.js +1 -1
- package/esm2015/grid/src/lib/models/handler.js +1 -1
- package/esm2015/grid/src/lib/pipes/cell-desktop-class-name.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/cell-mobile-class-name.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/column-command-filter.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/column-html-template.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/column-title.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/column-values.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/command-disabled.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/command-filter.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/command-hidden.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/command-icon.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/command-title.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/dynamic-items.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/editor-dynamic-item.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/editor-handler.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/editor-popup-visible.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/editor-sub-information-handler.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/editor-validate.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/filter-mobile.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/mobile-command-filter.js +1 -1
- package/esm2015/grid/src/lib/pipes/mobile-view-html-template.pipe.js +1 -1
- package/esm2015/grid/src/lib/pipes/value-transform.pipe.js +1 -1
- package/esm2015/grid/src/public-api.js +1 -1
- package/esm2015/grid-material/index.js +1 -1
- package/esm2015/grid-material/sd-angular-core-grid-material.js +1 -1
- package/esm2015/grid-material/src/lib/components/column-inline-filter/column-inline-filter.component.js +1 -1
- package/esm2015/grid-material/src/lib/components/desktop-cell/desktop-cell.component.js +1 -1
- package/esm2015/grid-material/src/lib/components/desktop-cell-children-view/desktop-cell-children-view.component.js +1 -1
- package/esm2015/grid-material/src/lib/components/desktop-cell-editor/desktop-cell-editor.component.js +1 -1
- package/esm2015/grid-material/src/lib/components/desktop-cell-view/desktop-cell-view.component.js +1 -1
- package/esm2015/grid-material/src/lib/components/desktop-command/desktop-command.component.js +1 -1
- package/esm2015/grid-material/src/lib/components/desktop-editor-validation/desktop-editor-validation.component.js +1 -1
- package/esm2015/grid-material/src/lib/components/dynamic-column/dynamic-column.component.js +1 -1
- package/esm2015/grid-material/src/lib/components/grid-filter/grid-filter.component.js +1 -1
- package/esm2015/grid-material/src/lib/components/popup-export/popup-export.component.js +1 -1
- package/esm2015/grid-material/src/lib/components/popup-filter/popup-filter.component.js +1 -1
- package/esm2015/grid-material/src/lib/components/popup-grid-configuration/popup-grid-configuration.component.js +1 -1
- package/esm2015/grid-material/src/lib/components/quick-action/quick-action.component.js +1 -1
- package/esm2015/grid-material/src/lib/directives/sd-material-cell-def.directive.js +1 -1
- package/esm2015/grid-material/src/lib/directives/sd-material-empty-data-def.directive.js +1 -1
- package/esm2015/grid-material/src/lib/directives/sd-material-filter-def.directive.js +1 -1
- package/esm2015/grid-material/src/lib/directives/sd-material-footer-def.directive.js +1 -1
- package/esm2015/grid-material/src/lib/directives/sd-material-sub-information-def.directive.js +1 -1
- package/esm2015/grid-material/src/lib/functions/calculate-sd-id.js +1 -1
- package/esm2015/grid-material/src/lib/grid-material.component.js +1 -1
- package/esm2015/grid-material/src/lib/grid-material.module.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-action.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-cell.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-column.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-command.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-config.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-configuration.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-editor.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-export.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-group.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-option.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-reload.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-selection.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-style.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-sub-information.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid.model.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/cell-view.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/column-badge.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/column-children-filter.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/column-html-template.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/column-title.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/column-tooltip.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/column-transform.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/column-values.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/command-disable.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/command-filter.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/command-icon.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/command-title.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/editor-handler-column.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/editor-handler-row.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/editor-validate.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/filter-column.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/filter-external.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/grid-configuration-result.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/sd-group.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/selection-action-filter.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/selection-disable.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/selection-visible-select-all.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/selection-visible.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/style-row-css.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/services/generated-column/generated-column.model.js +1 -1
- package/esm2015/grid-material/src/lib/services/generated-column/generated-column.service.js +1 -1
- package/esm2015/grid-material/src/lib/services/grid-configuration.service.js +1 -1
- package/esm2015/grid-material/src/lib/services/grid-filter/grid-filter.model.js +1 -1
- package/esm2015/grid-material/src/lib/services/grid-filter/grid-filter.service.js +1 -1
- package/esm2015/grid-material/src/public-api.js +1 -1
- package/esm2015/group/index.js +1 -1
- package/esm2015/group/sd-angular-core-group.js +1 -1
- package/esm2015/group/src/lib/group.component.js +1 -1
- package/esm2015/group/src/lib/group.module.js +1 -1
- package/esm2015/group/src/public-api.js +1 -1
- package/esm2015/header-title/index.js +1 -1
- package/esm2015/header-title/sd-angular-core-header-title.js +1 -1
- package/esm2015/header-title/src/lib/header-title.component.js +1 -1
- package/esm2015/header-title/src/lib/header-title.module.js +1 -1
- package/esm2015/header-title/src/public-api.js +1 -1
- package/esm2015/image-preview/index.js +1 -1
- package/esm2015/image-preview/sd-angular-core-image-preview.js +1 -1
- package/esm2015/image-preview/src/lib/directives/image-preview.directive.js +1 -1
- package/esm2015/image-preview/src/lib/image-preview/image-preview-sdmodal.component.js +1 -1
- package/esm2015/image-preview/src/lib/image-preview/image-preview.component.js +1 -1
- package/esm2015/image-preview/src/lib/image-preview/image-preview.module.js +1 -1
- package/esm2015/image-preview/src/lib/models/image-preview.model.js +1 -1
- package/esm2015/image-preview/src/public-api.js +1 -1
- package/esm2015/input/index.js +1 -1
- package/esm2015/input/sd-angular-core-input.js +1 -1
- package/esm2015/input/src/lib/directives/input-suffix.directive.js +1 -1
- package/esm2015/input/src/lib/directives/touch.directive.js +1 -1
- package/esm2015/input/src/lib/input-tooltip.pipe.js +1 -1
- package/esm2015/input/src/lib/input.component.js +1 -1
- package/esm2015/input/src/lib/input.module.js +1 -1
- package/esm2015/input/src/public-api.js +1 -1
- package/esm2015/input-currency/index.js +1 -1
- package/esm2015/input-currency/sd-angular-core-input-currency.js +1 -1
- package/esm2015/input-currency/src/lib/input-currency-tooltip.pipe.js +1 -1
- package/esm2015/input-currency/src/lib/input-currency.component.js +1 -1
- package/esm2015/input-currency/src/lib/input-currency.module.js +1 -1
- package/esm2015/input-currency/src/public-api.js +1 -1
- package/esm2015/input-dropdown/index.js +1 -1
- package/esm2015/input-dropdown/sd-angular-core-input-dropdown.js +1 -1
- package/esm2015/input-dropdown/src/lib/input-tooltip.pipe.js +1 -1
- package/esm2015/input-dropdown/src/lib/input.component.js +3 -3
- package/esm2015/input-dropdown/src/lib/input.module.js +1 -1
- package/esm2015/input-dropdown/src/public-api.js +1 -1
- package/esm2015/input-number/index.js +1 -1
- package/esm2015/input-number/sd-angular-core-input-number.js +1 -1
- package/esm2015/input-number/src/lib/input-number.component.js +1 -1
- package/esm2015/input-number/src/lib/input-number.module.js +1 -1
- package/esm2015/input-number/src/public-api.js +1 -1
- package/esm2015/input-upload-file/index.js +1 -1
- package/esm2015/input-upload-file/sd-angular-core-input-upload-file.js +1 -1
- package/esm2015/input-upload-file/src/lib/input-upload-file.component.js +1 -1
- package/esm2015/input-upload-file/src/lib/input-upload-file.module.js +1 -1
- package/esm2015/input-upload-file/src/public-api.js +1 -1
- package/esm2015/json-editor/index.js +1 -1
- package/esm2015/json-editor/sd-angular-core-json-editor.js +1 -1
- package/esm2015/json-editor/src/lib/json-editor.component.js +1 -1
- package/esm2015/json-editor/src/lib/json-editor.module.js +1 -1
- package/esm2015/json-editor/src/public-api.js +1 -1
- package/esm2015/konva/index.js +1 -1
- package/esm2015/konva/sd-angular-core-konva.js +1 -1
- package/esm2015/konva/src/lib/konva.module.js +1 -1
- package/esm2015/konva/src/lib/merge-images/merge-images.component.js +1 -1
- package/esm2015/konva/src/public-api.js +1 -1
- package/esm2015/label/index.js +1 -1
- package/esm2015/label/sd-angular-core-label.js +1 -1
- package/esm2015/label/src/lib/label.component.js +1 -1
- package/esm2015/label/src/lib/label.module.js +1 -1
- package/esm2015/label/src/public-api.js +1 -1
- package/esm2015/lib/core.module.js +1 -1
- package/esm2015/lib/material.module.js +1 -1
- package/esm2015/loading/index.js +1 -1
- package/esm2015/loading/sd-angular-core-loading.js +1 -1
- package/esm2015/loading/src/lib/loading.service.js +1 -1
- package/esm2015/loading/src/public-api.js +1 -1
- package/esm2015/modal/index.js +1 -1
- package/esm2015/modal/sd-angular-core-modal.js +1 -1
- package/esm2015/modal/src/lib/bottom-sheet/bottom-sheet-body/bottom-sheet-body.component.js +1 -1
- package/esm2015/modal/src/lib/bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component.js +1 -1
- package/esm2015/modal/src/lib/bottom-sheet/bottom-sheet-header/bottom-sheet-header.component.js +1 -1
- package/esm2015/modal/src/lib/bottom-sheet/bottom-sheet.component.js +1 -1
- package/esm2015/modal/src/lib/modal/modal-body/modal-body.component.js +1 -1
- package/esm2015/modal/src/lib/modal/modal-footer/modal-footer.component.js +1 -1
- package/esm2015/modal/src/lib/modal/modal-header/modal-header.component.js +1 -1
- package/esm2015/modal/src/lib/modal/modal.component.js +1 -1
- package/esm2015/modal/src/lib/modal.module.js +1 -1
- package/esm2015/modal/src/public-api.js +1 -1
- package/esm2015/modal-resizable/index.js +1 -1
- package/esm2015/modal-resizable/sd-angular-core-modal-resizable.js +1 -1
- package/esm2015/modal-resizable/src/lib/modal-resizable/modal-resizable.component.js +1 -1
- package/esm2015/modal-resizable/src/lib/modal-resizable.module.js +1 -1
- package/esm2015/modal-resizable/src/public-api.js +1 -1
- package/esm2015/notify/index.js +1 -1
- package/esm2015/notify/sd-angular-core-notify.js +1 -1
- package/esm2015/notify/src/lib/components/dialog-confirm/dialog-confirm.component.js +1 -1
- package/esm2015/notify/src/lib/configurations/notify.configuration.js +1 -1
- package/esm2015/notify/src/lib/notify.module.js +1 -1
- package/esm2015/notify/src/lib/notify.service.js +1 -1
- package/esm2015/notify/src/public-api.js +1 -1
- package/esm2015/pdf/index.js +1 -1
- package/esm2015/pdf/sd-angular-core-pdf.js +1 -1
- package/esm2015/pdf/src/lib/pdf.module.js +1 -1
- package/esm2015/pdf/src/lib/pdf.service.js +1 -1
- package/esm2015/pdf/src/public-api.js +1 -1
- package/esm2015/popover/index.js +1 -1
- package/esm2015/popover/sd-angular-core-popover.js +1 -1
- package/esm2015/popover/src/lib/directives/popover-content.directive.js +1 -1
- package/esm2015/popover/src/lib/directives/popover-trigger.directive.js +1 -1
- package/esm2015/popover/src/lib/popover/popover.component.js +1 -1
- package/esm2015/popover/src/lib/popover.model.js +1 -1
- package/esm2015/popover/src/lib/popover.module.js +1 -1
- package/esm2015/popover/src/public-api.js +1 -1
- package/esm2015/print/index.js +1 -1
- package/esm2015/print/sd-angular-core-print.js +1 -1
- package/esm2015/print/src/lib/fonts/times/bold-italic.js +1 -1
- package/esm2015/print/src/lib/fonts/times/bold.js +1 -1
- package/esm2015/print/src/lib/fonts/times/italic.js +1 -1
- package/esm2015/print/src/lib/fonts/times/normal.js +1 -1
- package/esm2015/print/src/lib/print.component.js +1 -1
- package/esm2015/print/src/lib/print.module.js +1 -1
- package/esm2015/print/src/public-api.js +1 -1
- package/esm2015/public-api.js +1 -1
- package/esm2015/quick-action/index.js +1 -1
- package/esm2015/quick-action/sd-angular-core-quick-action.js +1 -1
- package/esm2015/quick-action/src/lib/quick-action.component.js +1 -1
- package/esm2015/quick-action/src/lib/quick-action.module.js +1 -1
- package/esm2015/quick-action/src/public-api.js +1 -1
- package/esm2015/radio/index.js +1 -1
- package/esm2015/radio/sd-angular-core-radio.js +1 -1
- package/esm2015/radio/src/lib/radio.component.js +1 -1
- package/esm2015/radio/src/lib/radio.module.js +1 -1
- package/esm2015/radio/src/public-api.js +1 -1
- package/esm2015/sd-angular-core.js +1 -1
- package/esm2015/select/index.js +1 -1
- package/esm2015/select/sd-angular-core-select.js +1 -1
- package/esm2015/select/src/lib/select-display-def.directive.js +1 -1
- package/esm2015/select/src/lib/select.component.js +1 -1
- package/esm2015/select/src/lib/select.module.js +1 -1
- package/esm2015/select/src/public-api.js +1 -1
- package/esm2015/select-badge/index.js +1 -1
- package/esm2015/select-badge/sd-angular-core-select-badge.js +1 -1
- package/esm2015/select-badge/src/lib/select-badge-display-def.directive.js +1 -1
- package/esm2015/select-badge/src/lib/select-badge.component.js +1 -1
- package/esm2015/select-badge/src/lib/select-badge.module.js +1 -1
- package/esm2015/select-badge/src/public-api.js +1 -1
- package/esm2015/select-editor/index.js +1 -1
- package/esm2015/select-editor/sd-angular-core-select-editor.js +1 -1
- package/esm2015/select-editor/src/lib/select-editor.component.js +1 -1
- package/esm2015/select-editor/src/lib/select-editor.module.js +1 -1
- package/esm2015/select-editor/src/public-api.js +1 -1
- package/esm2015/service/index.js +1 -1
- package/esm2015/service/sd-angular-core-service.js +1 -1
- package/esm2015/service/src/lib/service.module.js +1 -1
- package/esm2015/service/src/public-api.js +1 -1
- package/esm2015/setting/index.js +1 -1
- package/esm2015/setting/sd-angular-core-setting.js +1 -1
- package/esm2015/setting/src/lib/setting.model.js +1 -1
- package/esm2015/setting/src/lib/setting.service.js +1 -1
- package/esm2015/setting/src/public-api.js +1 -1
- package/esm2015/side-drawer/index.js +1 -1
- package/esm2015/side-drawer/sd-angular-core-side-drawer.js +1 -1
- package/esm2015/side-drawer/src/lib/side-drawer/side-drawer.component.js +1 -1
- package/esm2015/side-drawer/src/lib/side-drawer.module.js +1 -1
- package/esm2015/side-drawer/src/public-api.js +1 -1
- package/esm2015/switch/index.js +1 -1
- package/esm2015/switch/sd-angular-core-switch.js +1 -1
- package/esm2015/switch/src/lib/switch.component.js +1 -1
- package/esm2015/switch/src/lib/switch.module.js +1 -1
- package/esm2015/switch/src/public-api.js +1 -1
- package/esm2015/tab-router/index.js +1 -1
- package/esm2015/tab-router/sd-angular-core-tab-router.js +1 -1
- package/esm2015/tab-router/src/lib/actions/tab-router.action.js +1 -1
- package/esm2015/tab-router/src/lib/components/tab-router-item/tab-router-item.component.js +1 -1
- package/esm2015/tab-router/src/lib/components/tab-router-nav/tab-router-nav.component.js +1 -1
- package/esm2015/tab-router/src/lib/components/tab-router-outlet/tab-router-outlet.component.js +1 -1
- package/esm2015/tab-router/src/lib/decorators/tab.decorator.js +1 -1
- package/esm2015/tab-router/src/lib/directives/router-link-mouse-down.directive.js +1 -1
- package/esm2015/tab-router/src/lib/events/tab-router.event.js +1 -1
- package/esm2015/tab-router/src/lib/models/tab-router.model.js +1 -1
- package/esm2015/tab-router/src/lib/pipes/tab-info.pipe.js +1 -1
- package/esm2015/tab-router/src/lib/services/tab-decorator.service.js +1 -1
- package/esm2015/tab-router/src/lib/services/tab-router.service.js +1 -1
- package/esm2015/tab-router/src/lib/tab-router.module.js +1 -1
- package/esm2015/tab-router/src/public-api.js +1 -1
- package/esm2015/table/index.js +1 -1
- package/esm2015/table/sd-angular-core-table.js +24 -31
- package/esm2015/table/src/lib/components/column-inline-filter/column-inline-filter.component.js +17 -4
- package/esm2015/table/src/lib/components/desktop-cell/desktop-cell.component.js +1 -1
- package/esm2015/table/src/lib/components/desktop-cell-view/desktop-cell-view.component.js +2 -2
- package/esm2015/table/src/lib/components/desktop-command/desktop-command.component.js +1 -1
- package/esm2015/table/src/lib/components/popup-configuration/popup-configuration.component.js +69 -0
- package/esm2015/table/src/lib/components/popup-filter/popup-filter.component.js +2 -2
- package/esm2015/table/src/lib/components/quick-action/quick-action.component.js +6 -6
- package/esm2015/table/src/lib/components/table-filter/table-filter.component.js +99 -0
- package/esm2015/table/src/lib/directives/sd-material-cell-def.directive.js +1 -1
- package/esm2015/table/src/lib/directives/sd-material-empty-data-def.directive.js +1 -1
- package/esm2015/table/src/lib/directives/sd-material-filter-def.directive.js +1 -1
- package/esm2015/table/src/lib/directives/sd-material-footer-def.directive.js +1 -1
- package/esm2015/table/src/lib/directives/sd-material-sub-information-def.directive.js +1 -1
- package/esm2015/table/src/lib/models/index.js +1 -1
- package/esm2015/table/src/lib/models/table-column.model.js +7 -7
- package/esm2015/table/src/lib/models/table-command.model.js +1 -1
- package/esm2015/table/src/lib/models/table-configuration.model.js +1 -1
- package/esm2015/table/src/lib/models/table-item.model.js +3 -3
- package/esm2015/table/src/lib/models/table-option-config.model.js +1 -1
- package/esm2015/table/src/lib/models/table-option-expand.model.js +1 -1
- package/esm2015/table/src/lib/models/table-option-export.model.js +1 -1
- package/esm2015/table/src/lib/models/table-option-group.model.js +1 -1
- package/esm2015/table/src/lib/models/table-option-paginate.model.js +1 -1
- package/esm2015/table/src/lib/models/table-option-reload.model.js +1 -1
- package/esm2015/table/src/lib/models/table-option-selector.model.js +1 -1
- package/esm2015/table/src/lib/models/table-option-sort.model.js +1 -1
- package/esm2015/table/src/lib/models/table-option-style.model.js +1 -1
- package/esm2015/table/src/lib/models/table-option.model.js +1 -1
- package/esm2015/table/src/lib/pipes/column-tooltip.pipe.js +1 -1
- package/esm2015/table/src/lib/pipes/command-disable.pipe.js +1 -1
- package/esm2015/table/src/lib/pipes/command-filter.pipe.js +1 -1
- package/esm2015/table/src/lib/pipes/command-icon.pipe.js +1 -1
- package/esm2015/table/src/lib/pipes/command-title.pipe.js +1 -1
- package/esm2015/table/src/lib/pipes/filter-column.pipe.js +1 -1
- package/esm2015/table/src/lib/pipes/filter-external.pipe.js +1 -1
- package/esm2015/table/src/lib/pipes/sd-group.pipe.js +1 -1
- package/esm2015/table/src/lib/pipes/selection-action-filter.pipe.js +1 -1
- package/esm2015/table/src/lib/pipes/selection-disable.pipe.js +1 -1
- package/esm2015/table/src/lib/pipes/selection-visible-select-all.pipe.js +1 -1
- package/esm2015/table/src/lib/pipes/selection-visible.pipe.js +1 -1
- package/esm2015/table/src/lib/services/table-configuration.service.js +37 -207
- package/esm2015/table/src/lib/services/table-filter/table-filter.model.js +1 -1
- package/esm2015/table/src/lib/services/table-filter/table-filter.service.js +1 -1
- package/esm2015/table/src/lib/table.component.js +197 -87
- package/esm2015/table/src/lib/table.module.js +7 -22
- package/esm2015/table/src/public-api.js +1 -1
- package/esm2015/textarea/index.js +1 -1
- package/esm2015/textarea/sd-angular-core-textarea.js +1 -1
- package/esm2015/textarea/src/lib/textarea.component.js +1 -1
- package/esm2015/textarea/src/lib/textarea.module.js +1 -1
- package/esm2015/textarea/src/public-api.js +1 -1
- package/esm2015/time/index.js +1 -1
- package/esm2015/time/sd-angular-core-time.js +1 -1
- package/esm2015/time/src/lib/time.component.js +1 -1
- package/esm2015/time/src/lib/time.module.js +1 -1
- package/esm2015/time/src/public-api.js +1 -1
- package/esm2015/timeline/index.js +1 -1
- package/esm2015/timeline/sd-angular-core-timeline.js +1 -1
- package/esm2015/timeline/src/lib/components/timeline.component.js +1 -1
- package/esm2015/timeline/src/lib/directives/timeline-def.directive.js +1 -1
- package/esm2015/timeline/src/lib/timeline.module.js +1 -1
- package/esm2015/timeline/src/public-api.js +1 -1
- package/esm2015/translate/index.js +1 -1
- package/esm2015/translate/sd-angular-core-translate.js +1 -1
- package/esm2015/translate/src/lib/translate.model.js +1 -1
- package/esm2015/translate/src/lib/translate.module.js +1 -1
- package/esm2015/translate/src/lib/translate.pipe.js +1 -1
- package/esm2015/translate/src/lib/translate.service.js +1 -1
- package/esm2015/upload-excel/index.js +1 -1
- package/esm2015/upload-excel/sd-angular-core-upload-excel.js +1 -1
- package/esm2015/upload-excel/src/lib/pipes/columm-hidden.pipe.js +1 -1
- package/esm2015/upload-excel/src/lib/pipes/column-transform.pipe.js +1 -1
- package/esm2015/upload-excel/src/lib/upload-excel.component.js +1 -1
- package/esm2015/upload-excel/src/lib/upload-excel.model.js +1 -1
- package/esm2015/upload-excel/src/lib/upload-excel.module.js +1 -1
- package/esm2015/upload-excel/src/public-api.js +1 -1
- package/esm2015/upload-file/index.js +1 -1
- package/esm2015/upload-file/sd-angular-core-upload-file.js +1 -1
- package/esm2015/upload-file/src/lib/upload-file.component.js +1 -1
- package/esm2015/upload-file/src/lib/upload-file.module.js +1 -1
- package/esm2015/upload-file/src/public-api.js +1 -1
- package/esm2015/utility/index.js +1 -1
- package/esm2015/utility/sd-angular-core-utility.js +1 -1
- package/esm2015/utility/src/lib/directives/desktop.directive.js +1 -1
- package/esm2015/utility/src/lib/directives/mobile-tablet.directive.js +1 -1
- package/esm2015/utility/src/lib/directives/mobile.directive.js +1 -1
- package/esm2015/utility/src/lib/directives/tablet.directive.js +1 -1
- package/esm2015/utility/src/lib/pipes/currency.pipe.js +1 -1
- package/esm2015/utility/src/lib/pipes/safe-html.pipe.js +1 -1
- package/esm2015/utility/src/lib/pipes/time-different.pipe.js +1 -1
- package/esm2015/utility/src/lib/utility.module.js +1 -3
- package/esm2015/utility/src/lib/utility.service.js +7 -54
- package/esm2015/utility/src/public-api.js +1 -1
- package/esm2015/view/index.js +1 -1
- package/esm2015/view/sd-angular-core-view.js +1 -1
- package/esm2015/view/src/lib/view.module.js +1 -1
- package/esm2015/view/src/public-api.js +1 -1
- package/esm2015/zip/index.js +1 -1
- package/esm2015/zip/sd-angular-core-zip.js +1 -1
- package/esm2015/zip/src/lib/zip.module.js +1 -1
- package/esm2015/zip/src/lib/zip.service.js +1 -1
- package/esm2015/zip/src/public-api.js +1 -1
- package/fesm2015/sd-angular-core-api.js +2 -35
- package/fesm2015/sd-angular-core-api.js.map +1 -1
- package/fesm2015/sd-angular-core-common.js +85 -2
- package/fesm2015/sd-angular-core-common.js.map +1 -1
- package/fesm2015/sd-angular-core-input-dropdown.js +2 -2
- package/fesm2015/sd-angular-core-input-dropdown.js.map +1 -1
- package/fesm2015/sd-angular-core-table.js +348 -804
- package/fesm2015/sd-angular-core-table.js.map +1 -1
- package/fesm2015/sd-angular-core-utility.js +7 -54
- package/fesm2015/sd-angular-core-utility.js.map +1 -1
- package/input-dropdown/sd-angular-core-input-dropdown.metadata.json +1 -1
- package/package.json +1 -1
- package/{sd-angular-core-1.3.149.tgz → sd-angular-core-1.3.151.tgz} +0 -0
- package/table/sd-angular-core-table.d.ts +23 -30
- package/table/sd-angular-core-table.metadata.json +1 -1
- package/table/src/lib/components/column-inline-filter/column-inline-filter.component.d.ts +2 -0
- package/table/src/lib/components/{popup-grid-configuration/popup-grid-configuration.component.d.ts → popup-configuration/popup-configuration.component.d.ts} +5 -10
- package/table/src/lib/components/popup-filter/popup-filter.component.d.ts +2 -2
- package/table/src/lib/components/quick-action/quick-action.component.d.ts +1 -1
- package/table/src/lib/components/{grid-filter/grid-filter.component.d.ts → table-filter/table-filter.component.d.ts} +5 -5
- package/table/src/lib/models/table-column.model.d.ts +15 -48
- package/table/src/lib/models/table-item.model.d.ts +15 -2
- package/table/src/lib/models/table-option-config.model.d.ts +2 -11
- package/table/src/lib/models/table-option.model.d.ts +0 -4
- package/table/src/lib/services/table-configuration.service.d.ts +5 -5
- package/table/src/lib/services/table-filter/table-filter.model.d.ts +1 -2
- package/table/src/lib/services/table-filter/table-filter.service.d.ts +2 -2
- package/table/src/lib/table.component.d.ts +12 -13
- package/utility/sd-angular-core-utility.metadata.json +1 -1
- package/utility/src/lib/utility.service.d.ts +2 -4
- package/esm2015/table/src/lib/components/grid-filter/grid-filter.component.js +0 -99
- package/esm2015/table/src/lib/components/popup-grid-configuration/popup-grid-configuration.component.js +0 -96
- package/esm2015/table/src/lib/models/grid-cell.model.js +0 -2
- package/esm2015/table/src/lib/pipes/cell-view.pipe.js +0 -180
- package/esm2015/table/src/lib/pipes/column-badge.pipe.js +0 -43
- package/esm2015/table/src/lib/pipes/column-children-filter.pipe.js +0 -31
- package/esm2015/table/src/lib/pipes/column-html-template.pipe.js +0 -23
- package/esm2015/table/src/lib/pipes/column-transform.pipe.js +0 -35
- package/esm2015/table/src/lib/pipes/column-values.pipe.js +0 -63
- package/esm2015/table/src/lib/pipes/grid-configuration-result.pipe.js +0 -21
- package/table/src/lib/models/grid-cell.model.d.ts +0 -16
- package/table/src/lib/pipes/cell-view.pipe.d.ts +0 -15
- package/table/src/lib/pipes/column-badge.pipe.d.ts +0 -11
- package/table/src/lib/pipes/column-children-filter.pipe.d.ts +0 -8
- package/table/src/lib/pipes/column-html-template.pipe.d.ts +0 -8
- package/table/src/lib/pipes/column-transform.pipe.d.ts +0 -8
- package/table/src/lib/pipes/column-values.pipe.d.ts +0 -6
- package/table/src/lib/pipes/grid-configuration-result.pipe.d.ts +0 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/common/src/lib/typings/array.extension.ts","../../../../projects/sd-core/common/src/lib/typings/date.extension.ts","../../../../projects/sd-core/common/src/lib/typings/number.extension.ts","../../../../projects/sd-core/common/src/lib/typings/string.extension.ts","../../../../projects/sd-core/common/src/lib/others/detectIncognito.ts","../../../../projects/sd-core/common/src/lib/typings/utility.extension.ts","../../../../projects/sd-core/common/src/lib/configurations/firebase.configuration.ts","../../../../projects/sd-core/common/src/lib/configurations/form.configuration.ts","../../../../projects/sd-core/common/src/lib/models/sd-form-control.ts","../../../../projects/sd-core/common/src/lib/services/browser.service.ts","../../../../projects/sd-core/common/src/lib/directives/view-def.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-let.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-scroll.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-suffix.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-lable.directive.ts","../../../../projects/sd-core/common/src/lib/common.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","this","n","v","op","TypeError","pop","length","push","create","__values","o","s","m","i","__read","r","ar","error","__spread","arguments","concat","__classPrivateFieldGet","receiver","state","kind","has","get","__classPrivateFieldSet","set","search","searchText","fields","items","toString","isArray","fs_1","filter","item","some","field","String","aliasIncludes","paging","pageSize","page","index","toObject","key","reduce","obj","_a","union","args","_i","results","filterUnion","val","self","findIndex","args_1","args_1_1","arg","asObservable","of","Date","equal","date1","date2","isDate","getTime","parseFrom","format","dmy","indexOf","hms","strDate","dd","substr","MM","yyyy","today","getFullYear","getMonth","padStart","getDate","date","isNaN","toFormat","addMiliseconds","miliseconds","addHours","hours","addDays","days","addMonths","months","begin","end","diffDays","from","to","diffTime","Math","round","setMilliseconds","getMilliseconds","setHours","getHours","setDate","setMonth","replace","getMinutes","getSeconds","Number","toVNCurrency","digits","toLocaleString","maximumFractionDigits","isPositiveInteger","test","isPositiveNumber","isNumber","pow","isValidEmail","isValidPhone","isValidCode","isNullOrEmpty","isNullOrWhiteSpace","match","changeAliasLowerCase","alias","str","toLowerCase","trim","includes","template","arr","regexp","RegExp","templateToDisplay","entity","matches","matches_1","matches_1_1","slice","SALT","encrypt","l","JSON","stringify","split","encodeURI","join","decrypt","encripted","decodeURI","Error","strs","substring","parse","detectIncognito","ua","browserName","__callback","isPrivate","assertEvalToString","eval","safariPrivateTest","undefined","navigator","maxTouchPoints","tmp_name","random","window","indexedDB","open","onupgradeneeded","res","target","createObjectStore","autoIncrement","put","Blob","message","_b","close","deleteDatabase","newSafariTest","openDB","openDatabase","storage","localStorage","setItem","removeItem","oldSafariTest","storageQuotaChromePrivateTest","webkitTemporaryStorage","queryUsageAndQuota","quota","w","performance","memory","jsHeapSizeLimit","chromePrivateTest","allSettled","fs","webkitRequestFileSystem","vendor","isChrome","userAgent","brave","document","documentElement","style","MozAppearance","serviceWorker","msSaveBlob","upload","option","uploadId","getElementsByTagName","existedElement","getElementById","remove","element","createElement","setAttribute","display","appendChild","addEventListener","evt","file","files","lastDot","name","lastIndexOf","extension_1","extensions","toUpperCase","maxSizeInMb","size","validator","click","generateFileName","fileName","ext","splice","download","filePath","link","href","visibility","downloadBlob","blob","url","URL","createObjectURL","revokeObjectURL","console","copyToClipboard","text","clipboard","writeText","allWithPaging","func","defaultPageSize","pageNumber","count","total","isPrivateMode","SdUtility","globalThis","FIREBASE_CONFIG","InjectionToken","FORM_CONFIG","SdFormControl","formState","asyncValidator","_this","_super","sdChanges","Subject","untouchChanges","touchChanges","pristineChanges","__","constructor","__extends","markAsUntouched","onlySelf","markAsTouched","markAsPristine","opts","FormControl","SdBrowserService","_getBrowserNameAndVersion","tem","M","version","exec","appName","appVersion","browserNameAndVersion","browerName","browserVersion","defineProperty","Injectable","providedIn","templateRef","Directive","selector","TemplateRef","SdLetDirective","vcRef","context","_updateView","clear","createEmbeddedView","$implicit","sdLet","ViewContainerRef","Input","SdScrollDirective","elementRef","renderer","browserService","_overflow","scrollTop","setTimeout","nativeElement","onMouseOver","isFirefox","setStyle","onMouseOut","ngOnInit","ElementRef","Renderer2","HostListener","NgModule","imports","CommonModule","declarations","SdViewDefDirective","SdSuffixDirective","SdLabelDefDirective","exports","providers"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Observable, of } from 'rxjs';\r\n\r\nexport { };\r\n\r\ndeclare global {\r\n interface Array<T = any> {\r\n search(searchText: string | number, fields?: string | string[]): T[];\r\n paging(pageSize: number, page?: number): T[];\r\n toObject(key?: string): { [key: string]: T };\r\n union(key: string, ...args: T[][]): T[];\r\n asObservable(): Observable<T[]>\r\n }\r\n interface ArrayConstructor {\r\n search<T = any>(items: T[], searchText: string | number, fields?: string | string[]): T[];\r\n union<T = any>(key: string, ...args: T[][]): T[];\r\n toObject<T = any>(items: T[], key?: string): { [key: string]: T };\r\n }\r\n}\r\n\r\nArray.prototype.search = function <T = any>(searchText: any, fields?: string | string[]): T[] {\r\n const items: T[] = this;\r\n if (!searchText?.toString()) {\r\n return items;\r\n }\r\n if (Array.isArray(fields)) {\r\n const fs = fields.filter(e => e !== undefined && e !== null && e !== '');\r\n if (!fs.length) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && fs.some(field => String.aliasIncludes(item[field], searchText)));\r\n }\r\n if (!fields) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item[fields], searchText));\r\n};\r\n\r\nArray.prototype.paging = function <T = any>(pageSize: number, page: number = 0): T[] {\r\n const items: T[] = this;\r\n return items.filter((item, index) => {\r\n return index >= page * pageSize\r\n && index < (page + 1) * pageSize;\r\n });\r\n};\r\n\r\nArray.prototype.toObject = function <T = any>(key: string): { [key: string]: T } {\r\n const items: T[] = this;\r\n if (!key) {\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item?.toString()] = item; return obj; }, {});\r\n }\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item[key]?.toString()] = item; return obj; }, {});\r\n};\r\n\r\nArray.prototype.union = function <T = any>(key: string, ...args: T[][]) {\r\n let results: T[] = this;\r\n const filterUnion = <T = any>(val: T, index: number, self: T[]) => val !== undefined && val !== null && self.findIndex((e: { [x: string]: any; }) => !!key ? e[key] === val[key] : e === val) === index;\r\n if (!args?.length) {\r\n return results.filter(filterUnion);\r\n }\r\n for (const arg of args) {\r\n if (Array.isArray(arg)) {\r\n results = [...results, ...arg].filter(filterUnion);\r\n }\r\n }\r\n return results;\r\n}\r\n\r\nArray.prototype.asObservable = function <T = any>() {\r\n const items: T[] = this;\r\n return of(items);\r\n}\r\n\r\nArray.search = <T = any>(items: T[], searchText: string | number, fields?: string | string[]) => {\r\n if (!Array.isArray(items)) {\r\n return [];\r\n }\r\n return items.search(searchText, fields);\r\n};\r\n\r\nArray.union = <T = any>(key: string, ...args: T[][]) => {\r\n return [].union(key, ...args);\r\n}\r\n\r\nArray.toObject = <T>(items: T[], key?: string): { [key: string]: T } => {\r\n if (!Array.isArray(items)) {\r\n return {};\r\n }\r\n return items.toObject(key);\r\n}\r\n\r\n","export { };\r\n\r\ndeclare global {\r\n interface Date {\r\n begin(): Date;\r\n end(): Date;\r\n addMiliseconds(miliseconds: number): Date;\r\n addHours(hours: number): Date;\r\n addDays(days: number): Date;\r\n addMonths(months: number): Date;\r\n toFormat(format: string): string;\r\n }\r\n interface DateConstructor {\r\n equal(date1: any, date2: any): boolean;\r\n parseFrom(value: any, format: string): Date;\r\n isDate(value: any): boolean;\r\n toFormat(value: any, format: string): string;\r\n addMiliseconds(value: any, miliseconds: number): Date;\r\n addHours(value: any, hours: number): Date;\r\n addDays(value: any, days: number): Date;\r\n addMonths(value: any, months: number): Date;\r\n begin(value: any): Date;\r\n end(value: any): Date;\r\n diffDays(from: any, to: any): number;\r\n }\r\n}\r\n\r\nDate.equal = (date1: any, date2: any) => {\r\n if (!Date.isDate(date1) && !Date.isDate(date2)) {\r\n return true;\r\n }\r\n if (!Date.isDate(date1) || !Date.isDate(date2)) {\r\n return false;\r\n }\r\n return new Date(date1).getTime() === new Date(date2).getTime();\r\n};\r\n\r\nDate.parseFrom = (value: any, format: string) => {\r\n if (!value) {\r\n return null;\r\n }\r\n if (!format) {\r\n return null;\r\n }\r\n value = value.toString();\r\n const dmy = format.indexOf('dd') > -1 && format.indexOf('MM') > -1 && format.indexOf('yyyy') > -1;\r\n const hms = format.indexOf('HH') > -1 || format.indexOf('mm') > -1 || format.indexOf('ss') > -1;\r\n let strDate = '';\r\n if (dmy) {\r\n const dd = value.substr(format.indexOf('dd'), 'dd'.length);\r\n const MM = value.substr(format.indexOf('MM'), 'MM'.length);\r\n const yyyy = value.substr(format.indexOf('yyyy'), 'yyyy'.length);\r\n if (+yyyy > 0 && +MM > 0 && +dd > 0) {\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n } else {\r\n return null;\r\n }\r\n } else {\r\n const today = new Date();\r\n const yyyy = today.getFullYear().toString();\r\n const MM = (today.getMonth() + 1).toString().padStart(2, '0');\r\n const dd = today.getDate().toString().padStart(2, '0');\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n }\r\n if (hms) {\r\n const HH = format.indexOf('HH') > -1 ? value.substr(format.indexOf('HH'), 'HH'.length) : '00';\r\n const mm = format.indexOf('mm') > -1 ? value.substr(format.indexOf('mm'), 'mm'.length) : '00';\r\n const ss = format.indexOf('ss') > -1 ? value.substr(format.indexOf('ss'), 'ss'.length) : '00';\r\n strDate += ` ${HH || '00'}:${mm || '00'}:${ss || '00'}`;\r\n }\r\n if (!Date.isDate(strDate)) {\r\n return null;\r\n }\r\n return new Date(strDate);\r\n};\r\n\r\nDate.isDate = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const date = new Date(value);\r\n return !isNaN(date.getTime());\r\n};\r\n\r\nDate.toFormat = (value: any, format: string): string => {\r\n if (!Date.isDate(value)) {\r\n return '';\r\n }\r\n const date: Date = new Date(value);\r\n return date.toFormat(format);\r\n};\r\n\r\nDate.addMiliseconds = (value: any, miliseconds: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMiliseconds(miliseconds);\r\n};\r\n\r\nDate.addHours = (value: any, hours: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addHours(hours);\r\n};\r\n\r\nDate.addDays = (value: any, days: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addDays(days);\r\n};\r\n\r\nDate.addMonths = (value: any, months: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMonths(months);\r\n};\r\n\r\nDate.begin = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(Date.toFormat(value, 'MM/dd/yyyy'));\r\n};\r\n\r\nDate.end = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(value).addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.diffDays = (from: any, to: any) => {\r\n if (!Date.isDate(from) || !Date.isDate(to)) {\r\n return undefined;\r\n }\r\n const diffTime = new Date(to).getTime() - new Date(from).getTime();\r\n const diffDays = Math.round((diffTime / (1000 * 60 * 60 * 24)) * 100) / 100; \r\n return diffDays;\r\n};\r\n\r\nDate.prototype.begin = function () {\r\n return new Date(this.toFormat('MM/dd/yyyy'));\r\n};\r\n\r\nDate.prototype.end = function () {\r\n const date: Date = this;\r\n return date.addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.addMiliseconds = function (miliseconds: number) {\r\n const date: Date = this;\r\n date.setMilliseconds(date.getMilliseconds() + miliseconds);\r\n return date;\r\n};\r\n\r\nDate.prototype.addHours = function (hours: number) {\r\n const date: Date = this;\r\n date.setHours(date.getHours() + hours);\r\n return date;\r\n};\r\n\r\nDate.prototype.addDays = function (days: number) {\r\n const date: Date = this;\r\n date.setDate(date.getDate() + days);\r\n return date;\r\n};\r\n\r\nDate.prototype.addMonths = function (months: number) {\r\n const date: Date = this;\r\n date.setMonth(date.getMonth() + months);\r\n return date;\r\n};\r\n\r\nDate.prototype.toFormat = function (format: string) {\r\n const date: Date = this;\r\n let result = format;\r\n result = result.replace('yyyy', date.getFullYear().toString());\r\n result = result.replace('MM', (date.getMonth() + 1).toString().padStart(2, '0'));\r\n result = result.replace('dd', date.getDate().toString().padStart(2, '0'));\r\n result = result.replace('HH', date.getHours().toString().padStart(2, '0'));\r\n result = result.replace('mm', date.getMinutes().toString().padStart(2, '0'));\r\n result = result.replace('ss', date.getSeconds().toString().padStart(2, '0'));\r\n return result;\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface NumberConstructor {\r\n toVNCurrency(value: any, digits?: number): string;\r\n isNumber(value: any): boolean;\r\n isPositiveInteger(value: any): boolean;\r\n isPositiveNumber(value: any): boolean;\r\n round(value: any, digits?: number): number;\r\n }\r\n}\r\n\r\nNumber.toVNCurrency = (value: any, digits?: number) => {\r\n value = (value ?? '').toString().replace(/,/g, '');\r\n if (!value) {\r\n return null;\r\n }\r\n const val = +value;\r\n if (!Number.isNaN(val)) {\r\n if(!digits && digits !== 0) {\r\n return val.toLocaleString('vi-VN', { maximumFractionDigits: 10 });\r\n }\r\n return val.toLocaleString('vi-VN', { maximumFractionDigits: digits });\r\n }\r\n return null;\r\n};\r\n\r\nNumber.isPositiveInteger = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isPositiveNumber = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)(\\.[0-9]+$){0,1}$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isNumber = (value: any) => {\r\n if (value === undefined || value === null || value === '') {\r\n return false;\r\n }\r\n return !Number.isNaN(+value);\r\n};\r\n\r\nNumber.round = (value: any, digits?: number) => {\r\n digits = digits ?? 2;\r\n if (!Number.isNumber(value)) {\r\n return null;\r\n }\r\n const val = Math.pow(10, digits);\r\n return Math.round(value * val) / val;\r\n};","export { };\r\n\r\ndeclare global {\r\n interface StringConstructor {\r\n isValidEmail(value: any): boolean;\r\n isValidPhone(value: any): boolean;\r\n isValidCode(value: any): boolean;\r\n changeAliasLowerCase(alias: any): string;\r\n aliasIncludes(alias: any, searchText: any): boolean;\r\n format(template: string, ...arr: any[]): string;\r\n templateToDisplay(template: string, entity: any): string; // Convert theo format ${key}\r\n encrypt(obj: any): string;\r\n decrypt(encripted: string): any;\r\n isNullOrEmpty(value: any): boolean;\r\n isNullOrWhiteSpace(value: any): boolean;\r\n }\r\n}\r\n\r\nString.isValidEmail = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidPhone = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*$/;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidCode = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[a-zA-Z0-9\\@\\_\\-]{2,20}$/;\r\n return re.test(value);\r\n};\r\n\r\nString.isNullOrEmpty = (value: any) => {\r\n return value === undefined || value === null || value === '';\r\n};\r\n\r\nString.isNullOrWhiteSpace = (value: any) => {\r\n return value === undefined || value === null || typeof value !== 'string' || value.match(/^ *$/) !== null;\r\n};\r\n\r\nString.changeAliasLowerCase = (alias: any) => {\r\n let str: string = alias?.toString() ?? '';\r\n str = str.toString().toLowerCase();\r\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\r\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\r\n str = str.replace(/ì|í|ị|ỉ|ĩ/g, 'i');\r\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\r\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\r\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\r\n str = str.replace(/đ/g, 'd');\r\n str = str.replace(/!|@|%|\\^|\\*|\\(|\\)|\\+|\\=|\\<|\\>|\\?|\\/|,|\\.|\\:|\\;|\\'|\\\"|\\&|\\#|\\[|\\]|~|\\$|_|`|-|{|}|\\||\\\\/g, ' ');\r\n str = str.replace(/ + /g, ' ');\r\n str = str.trim();\r\n return str;\r\n}\r\n\r\nString.aliasIncludes = (alias: any, searchText: any) => {\r\n return String.changeAliasLowerCase(alias).includes(String.changeAliasLowerCase(searchText));\r\n}\r\n\r\nString.format = (template: string, ...arr: any[]) => {\r\n for (let i = 0; i < arr.length; i++) {\r\n const regexp = new RegExp(`\\\\{${i}\\\\}`, 'gi');\r\n template = template.replace(regexp, arr[i]);\r\n }\r\n return template;\r\n}\r\n\r\nString.templateToDisplay = (template: string, entity: any) => {\r\n if (!template) {\r\n return template;\r\n }\r\n const regex = /\\$\\{([A-Za-z._\\-]*)\\}/g;\r\n const matches = template.match(regex) || [];\r\n for (const match of matches) {\r\n const key = match.slice(2, match.length - 1);\r\n if (key) {\r\n template = template.replace(match, entity?.[key] || '');\r\n }\r\n }\r\n return template;\r\n}\r\n\r\nconst SALT = 'cb9f4b2a-d26c-4787-a66e-e7130ee00f95';\r\n\r\nString.encrypt = (obj: any) => {\r\n obj = JSON.stringify(obj).split('');\r\n for (var i = 0, l = obj.length; i < l; i++)\r\n if (obj[i] == '{')\r\n obj[i] = '}';\r\n else if (obj[i] == '}')\r\n obj[i] = '{';\r\n return encodeURI(SALT + obj.join(''));\r\n}\r\n\r\nString.decrypt = (encripted: string) => {\r\n encripted = decodeURI(encripted);\r\n if (SALT && encripted.indexOf(SALT) != 0)\r\n throw new Error('object cannot be decrypted');\r\n const strs = encripted.substring(SALT.length).split('');\r\n for (let i = 0, l = strs.length; i < l; i++)\r\n if (strs[i] == '{')\r\n strs[i] = '}';\r\n else if (encripted[i] == '}')\r\n strs[i] = '{';\r\n return JSON.parse(strs.join(''));\r\n}\r\n","/**\r\n *\r\n * detectIncognito v1.3.0 - (c) 2022 Joe Rutkowski <Joe@dreggle.com> (https://github.com/Joe12387/detectIncognito)\r\n *\r\n **/\r\nexport const detectIncognito = (): Promise<{\r\n isPrivate: boolean;\r\n browserName: string;\r\n}> => {\r\n return new Promise( (resolve, reject) => {\r\n let browserName = 'Unknown';\r\n\r\n function __callback(isPrivate: any): void {\r\n resolve({\r\n isPrivate,\r\n browserName,\r\n });\r\n }\r\n\r\n function identifyChromium(): string {\r\n const ua = navigator.userAgent;\r\n if (ua.match(/Chrome/)) {\r\n if ((navigator as any).brave !== undefined) {\r\n return 'Brave';\r\n } else if (ua.match(/Edg/)) {\r\n return 'Edge';\r\n } else if (ua.match(/OPR/)) {\r\n return 'Opera';\r\n }\r\n return 'Chrome';\r\n } else {\r\n return 'Chromium';\r\n }\r\n }\r\n\r\n function assertEvalToString(value: any): boolean {\r\n return value === eval.toString().length;\r\n }\r\n\r\n function isSafari(): boolean {\r\n const v = navigator.vendor;\r\n return (\r\n v !== undefined && v.indexOf('Apple') === 0 && assertEvalToString(37)\r\n );\r\n }\r\n\r\n function isChrome(): boolean {\r\n const v = navigator.vendor;\r\n return (\r\n v !== undefined && v.indexOf('Google') === 0 && assertEvalToString(33)\r\n );\r\n }\r\n\r\n function isFirefox(): boolean {\r\n return (\r\n document.documentElement !== undefined &&\r\n (document as any).documentElement.style.MozAppearance !== undefined &&\r\n assertEvalToString(37)\r\n );\r\n }\r\n\r\n function isMSIE(): boolean {\r\n return (\r\n (navigator as any).msSaveBlob !== undefined && assertEvalToString(39)\r\n );\r\n }\r\n\r\n /**\r\n * Safari (Safari for iOS & macOS)\r\n **/\r\n\r\n function newSafariTest(): void {\r\n // tslint:disable-next-line:variable-name\r\n const tmp_name = String(Math.random());\r\n\r\n try {\r\n const db = window.indexedDB.open(tmp_name, 1);\r\n\r\n db.onupgradeneeded = (i) => {\r\n // @ts-ignore\r\n const res = i.target?.result;\r\n\r\n try {\r\n res.createObjectStore('test', {\r\n autoIncrement: true,\r\n // tslint:disable-next-line:new-parens\r\n }).put(new Blob);\r\n\r\n __callback(false);\r\n } catch (e) {\r\n let message = e;\r\n\r\n if (e instanceof Error) {\r\n message = e.message ?? e;\r\n }\r\n\r\n if (typeof message !== 'string') {\r\n return __callback(false);\r\n }\r\n\r\n const matchesExpectedError = /BlobURLs are not yet supported/.test(message);\r\n\r\n return __callback(matchesExpectedError);\r\n } finally {\r\n res.close();\r\n window.indexedDB.deleteDatabase(tmp_name);\r\n }\r\n };\r\n } catch (e) {\r\n return __callback(false);\r\n }\r\n }\r\n\r\n function oldSafariTest(): void {\r\n const openDB = (window as any).openDatabase;\r\n const storage = window.localStorage;\r\n try {\r\n openDB(null, null, null, null);\r\n } catch (e) {\r\n return __callback(true);\r\n }\r\n try {\r\n storage.setItem('test', '1');\r\n storage.removeItem('test');\r\n } catch (e) {\r\n return __callback(true);\r\n }\r\n return __callback(false);\r\n }\r\n\r\n function safariPrivateTest(): void {\r\n if (navigator.maxTouchPoints !== undefined) {\r\n newSafariTest();\r\n } else {\r\n oldSafariTest();\r\n }\r\n }\r\n\r\n /**\r\n * Chrome\r\n **/\r\n\r\n function getQuotaLimit(): number {\r\n const w = window as any;\r\n if (\r\n w.performance !== undefined &&\r\n w.performance.memory !== undefined &&\r\n w.performance.memory.jsHeapSizeLimit !== undefined\r\n ) {\r\n return (performance as any).memory.jsHeapSizeLimit;\r\n }\r\n return 1073741824;\r\n }\r\n\r\n // >= 76\r\n function storageQuotaChromePrivateTest(): void {\r\n (navigator as any).webkitTemporaryStorage.queryUsageAndQuota(\r\n (_: number, quota: number) => {\r\n const quotaInMib = Math.round(quota / (1024 * 1024));\r\n const quotaLimitInMib = Math.round(getQuotaLimit() / (1024 * 1024)) * 2;\r\n\r\n __callback(quotaInMib < quotaLimitInMib);\r\n },\r\n (e: any) => {\r\n reject(\r\n new Error(\r\n 'detectIncognito somehow failed to query storage quota: ' +\r\n e.message\r\n )\r\n );\r\n }\r\n );\r\n }\r\n\r\n // 50 to 75\r\n function oldChromePrivateTest(): void {\r\n const fs = (window as any).webkitRequestFileSystem;\r\n const success = () => {\r\n __callback(false);\r\n };\r\n const error = () => {\r\n __callback(true);\r\n };\r\n fs(0, 1, success, error);\r\n }\r\n\r\n function chromePrivateTest(): void {\r\n if (self.Promise !== undefined && (self.Promise as any).allSettled !== undefined) {\r\n storageQuotaChromePrivateTest();\r\n } else {\r\n oldChromePrivateTest();\r\n }\r\n }\r\n\r\n /**\r\n * Firefox\r\n **/\r\n\r\n function firefoxPrivateTest(): void {\r\n __callback(navigator.serviceWorker === undefined);\r\n }\r\n\r\n /**\r\n * MSIE\r\n **/\r\n\r\n function msiePrivateTest(): void {\r\n __callback(window.indexedDB === undefined);\r\n }\r\n\r\n function main(): void {\r\n if (isSafari()) {\r\n browserName = 'Safari';\r\n safariPrivateTest();\r\n } else if (isChrome()) {\r\n browserName = identifyChromium();\r\n chromePrivateTest();\r\n } else if (isFirefox()) {\r\n browserName = 'Firefox';\r\n firefoxPrivateTest();\r\n } else if (isMSIE()) {\r\n browserName = 'Internet Explorer';\r\n msiePrivateTest();\r\n } else {\r\n reject(new Error('detectIncognito cannot determine the browser'));\r\n }\r\n }\r\n\r\n main();\r\n });\r\n};\r\n","import { detectIncognito } from '../others/detectIncognito';\r\n\r\nexport { };\r\n// declare var Date: DateConstructor;\r\ninterface SdUtilityContructor {\r\n upload: (option?: {\r\n extensions?: string[];\r\n maxSizeInMb?: number;\r\n validator?: (fileName: string) => string;\r\n }) => Promise<File | null>;\r\n download: (filePath: string, fileName?: string) => void;\r\n downloadBlob: (blob: Blob, fileName?: string) => void;\r\n changeAliasLowerCase: (alias: string) => string;\r\n copyToClipboard: (text: string) => void;\r\n allWithPaging: <T = any>(func: (pageSize: number, pageNumber: number) => Promise<{\r\n items: T[];\r\n total: number;\r\n }>, defaultPageSize?: number) => Promise<T[]>;\r\n isPrivateMode: () => Promise<boolean>;\r\n}\r\n\r\n\r\nconst upload = (option?: {\r\n extensions?: string[],\r\n maxSizeInMb?: number,\r\n validator?: (fileName: string) => string\r\n}) => {\r\n const uploadId = 'U1e09c1c0-b647-437e-995e-d7a1a1b60550';\r\n const promise = new Promise<File | null>((resolve, reject) => {\r\n const body = document.getElementsByTagName('body')?.[0];\r\n if (!body) {\r\n resolve(null);\r\n return;\r\n }\r\n const existedElement = document.getElementById(uploadId);\r\n if (existedElement) {\r\n existedElement.remove();\r\n }\r\n const element = document.createElement('input');\r\n element.setAttribute('id', uploadId);\r\n element.setAttribute('type', 'file');\r\n element.style.display = 'none';\r\n body.appendChild(element);\r\n element.addEventListener('change', (evt: any) => {\r\n try {\r\n const target = evt.target as DataTransfer;\r\n const file = target.files.item(0);\r\n if (file) {\r\n const lastDot = file.name.lastIndexOf('.');\r\n if (lastDot === -1) {\r\n throw new Error(`File không đúng định dạng`);\r\n }\r\n const extension = file.name.substring(lastDot + 1);\r\n if (option) {\r\n if (option.extensions?.length && !option.extensions.some(e => e.toUpperCase() === extension.toUpperCase())) {\r\n throw new Error(`File không đúng định dạng`);\r\n }\r\n if (option.maxSizeInMb && option.maxSizeInMb > 0 && option.maxSizeInMb * 1024 * 1024 < file.size) {\r\n const message = `[${file.name}] Dung lượng tối đa ${option.maxSizeInMb} Mbs`;\r\n throw new Error(message);\r\n }\r\n if (option.validator && option.validator(file.name)) {\r\n const message = option.validator(file.name);\r\n throw new Error(message);\r\n }\r\n }\r\n resolve(file);\r\n }\r\n } catch (error) {\r\n reject(error);\r\n }\r\n });\r\n element.click();\r\n });\r\n return promise;\r\n}\r\n\r\nconst generateFileName = (fileName?: string) => {\r\n if (!fileName) {\r\n return `File_${new Date().toFormat('yyyy_MM_dd_HH_mm')}`;\r\n }\r\n const strs = fileName.split('.');\r\n if (strs.length > 1) {\r\n const ext = strs.splice(strs.length - 1, 1)[0];\r\n return `${strs.join('.')}_${new Date().toFormat('yyyy_MM_dd_HH_mm')}.${ext}`;\r\n }\r\n return `${fileName}_${new Date().toFormat('yyyy_MM_dd_HH_mm')}`;\r\n}\r\n\r\nconst download = (filePath: string, fileName?: string) => {\r\n const link = document.createElement('a');\r\n link.download = generateFileName(fileName);\r\n link.href = filePath;\r\n link.style.visibility = 'hidden';\r\n document.body.appendChild(link);\r\n link.click();\r\n link.remove();\r\n}\r\n\r\nconst downloadBlob = (blob: Blob, fileName?: string) => {\r\n try {\r\n const url = window.URL.createObjectURL(blob);\r\n const link = document.createElement('a');\r\n if (link.download !== undefined) { // feature detection\r\n link.download = generateFileName(fileName);\r\n link.href = url;\r\n link.style.visibility = 'hidden';\r\n document.body.appendChild(link);\r\n link.click();\r\n window.URL.revokeObjectURL(url);\r\n link.remove();\r\n }\r\n } catch (e) {\r\n console.error('BlobToSaveAs error', e);\r\n }\r\n}\r\n\r\nconst changeAliasLowerCase = (alias: string) => {\r\n let str = alias?.toString() ?? '';\r\n str = str.toString().toLowerCase();\r\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\r\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\r\n str = str.replace(/ì|í|ị|ỉ|ĩ/g, 'i');\r\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\r\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\r\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\r\n str = str.replace(/đ/g, 'd');\r\n str = str.replace(/!|@|%|\\^|\\*|\\(|\\)|\\+|\\=|\\<|\\>|\\?|\\/|,|\\.|\\:|\\;|\\'|\\\"|\\&|\\#|\\[|\\]|~|\\$|_|`|-|{|}|\\||\\\\/g, ' ');\r\n str = str.replace(/ + /g, ' ');\r\n str = str.trim();\r\n return str;\r\n}\r\n\r\nconst copyToClipboard = (text: string) => {\r\n navigator.clipboard.writeText(text);\r\n}\r\n\r\nconst allWithPaging = async <T = any>(func: (pageSize: number, pageNumber: number) => Promise<{ items: T[], total: number }>, defaultPageSize?: number): Promise<T[]> => {\r\n let pageSize = defaultPageSize || 1000;\r\n let pageNumber = 0;\r\n let count = 0;\r\n let items: T[] = [];\r\n while (true) {\r\n const res = await func(pageSize, pageNumber);\r\n if (Array(res?.items) && res?.total > 0) {\r\n items = [...items, ...res.items];\r\n count += res.items.length;\r\n pageNumber++;\r\n if (count >= res.total || !res.items?.length) {\r\n return items;\r\n }\r\n } else {\r\n return [];\r\n }\r\n }\r\n}\r\n\r\nconst isPrivateMode = async (): Promise<boolean> => {\r\n const check = await detectIncognito();\r\n return check.isPrivate;\r\n}\r\n\r\nvar SdUtility: SdUtilityContructor = {\r\n upload,\r\n download,\r\n downloadBlob,\r\n changeAliasLowerCase,\r\n copyToClipboard,\r\n allWithPaging,\r\n isPrivateMode,\r\n};\r\n\r\ndeclare global {\r\n var SdUtility: SdUtilityContructor;\r\n}\r\nglobalThis.SdUtility = SdUtility;\r\n","import { InjectionToken } from \"@angular/core\";\r\n\r\nexport interface IFirebaseConfiguration {\r\n functionUrl: string;\r\n project: string;\r\n env: string;\r\n folder?: string | (() => string);\r\n}\r\n\r\nexport const FIREBASE_CONFIG = new InjectionToken<IFirebaseConfiguration>('sd.firebase.configuration');","import { InjectionToken } from \"@angular/core\";\r\nimport { MatFormFieldAppearance } from \"@angular/material/form-field\";\r\n\r\nexport interface IFormConfiguration {\r\n appearance?: MatFormFieldAppearance; \r\n}\r\n\r\nexport const FORM_CONFIG = new InjectionToken<IFormConfiguration>('sd.form.configuration');","import { FormControl, AsyncValidatorFn, ValidatorFn } from '@angular/forms';\r\nimport { Subject } from 'rxjs';\r\nexport class SdFormControl extends FormControl {\r\n sdChanges: Subject<boolean> = new Subject<boolean>();\r\n untouchChanges: Subject<boolean> = new Subject<boolean>();\r\n touchChanges: Subject<boolean> = new Subject<boolean>();\r\n pristineChanges: Subject<boolean> = new Subject<boolean>();\r\n constructor(\r\n formState?: Object,\r\n validator: ValidatorFn | ValidatorFn[] = null,\r\n asyncValidator: AsyncValidatorFn | AsyncValidatorFn[] = null\r\n ) {\r\n super(formState, validator, asyncValidator);\r\n }\r\n\r\n markAsUntouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsUntouched({ onlySelf });\r\n this.untouchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsTouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsTouched({ onlySelf });\r\n this.touchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsPristine(opts?: {\r\n onlySelf?: boolean;\r\n }): void {\r\n super.markAsPristine(opts);\r\n this.pristineChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdBrowserService {\r\n browerName: string;\r\n browserVersion: string;\r\n get isChrome() { return this.browerName === 'Chrome'; }\r\n get isFirefox() { return this.browerName === 'Firefox'; }\r\n get isSafari() { return this.browerName === 'Safari'; }\r\n constructor() {\r\n const browserNameAndVersion = this.#getBrowserNameAndVersion();\r\n this.browerName = browserNameAndVersion.name;\r\n this.browserVersion = browserNameAndVersion.version;\r\n }\r\n\r\n #getBrowserNameAndVersion = () => {\r\n const ua = navigator.userAgent;\r\n let M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n let tem: RegExpMatchArray;\r\n if (/trident/i.test(M[1])) {\r\n tem = /\\brv[ :]+(\\d+)/g.exec(ua) || [];\r\n return { name: 'IE', version: (tem[1] || '') };\r\n }\r\n if (M[1] === 'Chrome') {\r\n tem = ua.match(/\\bEdg\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Edge(Chromium)', version: tem[1] }; }\r\n tem = ua.match(/\\bOPR\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Opera', version: tem[1] }; }\r\n }\r\n M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];\r\n tem = ua.match(/version\\/(\\d+)/i);\r\n if (tem != null) { M.splice(1, 1, tem[1]); }\r\n return {\r\n name: M[0],\r\n version: M[1]\r\n };\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdViewDef]'\r\n})\r\nexport class SdViewDefDirective {\r\n // @Input() sdViewDef: string;\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { Directive, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\r\n@Directive({\r\n selector: '[sdLet]',\r\n})\r\nexport class SdLetDirective {\r\n @Input()\r\n set sdLet(context: any) {\r\n this.context.$implicit = this.context.sdLet = context;\r\n this.#updateView();\r\n }\r\n context: any = {};\r\n\r\n constructor(private vcRef: ViewContainerRef, private templateRef: TemplateRef<any>) { }\r\n\r\n #updateView = () => {\r\n this.vcRef.clear();\r\n this.vcRef.createEmbeddedView(this.templateRef, this.context);\r\n }\r\n}","import { Directive, ElementRef, HostListener, OnInit, Renderer2 } from \"@angular/core\";\r\nimport { SdBrowserService } from '../services/browser.service';\r\n\r\n@Directive({\r\n selector: \"[sdScroll]\",\r\n})\r\nexport class SdScrollDirective implements OnInit {\r\n #overflow: 'hidden' | 'auto' | 'overlay' = 'hidden';\r\n @HostListener('mouseover')\r\n onMouseOver() {\r\n this.#overflow = this.browserService.isFirefox ? 'auto' : 'overlay';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n\r\n @HostListener('mouseout')\r\n onMouseOut() {\r\n this.#overflow = 'hidden';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private browserService: SdBrowserService) { }\r\n\r\n ngOnInit(): void {\r\n this.renderer.setStyle(this.elementRef.nativeElement, '-webkit-transform', 'translate3d(0, 0, 0)');\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n\r\n scrollTop = () => {\r\n setTimeout(() => {\r\n if (this.elementRef?.nativeElement) {\r\n this.elementRef.nativeElement.scrollTop = 0; \r\n }\r\n }, 1);\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdSuffix]'\r\n})\r\nexport class SdSuffixDirective {\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdLabelDef]'\r\n})\r\nexport class SdLabelDefDirective {\r\n // @Input() sdLableDef: string;\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdViewDefDirective } from './directives/view-def.directive';\r\nimport { SdLetDirective } from './directives/sd-let.directive';\r\nimport { SdScrollDirective } from './directives/sd-scroll.directive';\r\nimport { SdSuffixDirective } from './directives/sd-suffix.directive';\r\nimport { SdLabelDefDirective } from './directives/sd-lable.directive';\r\n// import './typings';\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective,\r\n SdLabelDefDirective\r\n ],\r\n exports: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective,\r\n SdLabelDefDirective\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdCommonModule { }\r\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/common/src/lib/typings/array.extension.ts","../../../../projects/sd-core/common/src/lib/typings/date.extension.ts","../../../../projects/sd-core/common/src/lib/typings/number.extension.ts","../../../../projects/sd-core/common/src/lib/typings/string.extension.ts","../../../../projects/sd-core/common/src/lib/others/detectIncognito.ts","../../../../projects/sd-core/common/src/lib/typings/utility.extension.ts","../../../../projects/sd-core/common/src/lib/configurations/firebase.configuration.ts","../../../../projects/sd-core/common/src/lib/configurations/form.configuration.ts","../../../../projects/sd-core/common/src/lib/models/sd-form-control.ts","../../../../projects/sd-core/common/src/lib/services/browser.service.ts","../../../../projects/sd-core/common/src/lib/directives/view-def.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-let.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-scroll.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-suffix.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-lable.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-for.directive.ts","../../../../projects/sd-core/common/src/lib/common.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","this","n","v","op","TypeError","pop","length","push","create","__values","o","s","m","i","__read","r","ar","error","__spread","arguments","concat","__classPrivateFieldGet","receiver","state","kind","has","get","__classPrivateFieldSet","set","search","searchText","fields","items","toString","isArray","fs_1","filter","item","some","field","String","aliasIncludes","paging","pageSize","page","index","toObject","key","reduce","obj","_a","union","args","_i","results","filterUnion","val","self","findIndex","args_1","args_1_1","arg","asObservable","of","Date","equal","date1","date2","isDate","getTime","parseFrom","format","dmy","indexOf","hms","strDate","dd","substr","MM","yyyy","today","getFullYear","getMonth","padStart","getDate","date","isNaN","toFormat","addMiliseconds","miliseconds","addHours","hours","addDays","days","addMonths","months","begin","end","diffDays","from","to","diffTime","Math","round","setMilliseconds","getMilliseconds","setHours","getHours","setDate","setMonth","replace","getMinutes","getSeconds","Number","toVNCurrency","digits","toLocaleString","maximumFractionDigits","isPositiveInteger","test","isPositiveNumber","isNumber","pow","isValidEmail","isValidPhone","isValidCode","isNullOrEmpty","isNullOrWhiteSpace","match","changeAliasLowerCase","alias","str","toLowerCase","trim","includes","template","arr","regexp","RegExp","templateToDisplay","entity","matches","matches_1","matches_1_1","slice","SALT","encrypt","l","JSON","stringify","split","encodeURI","join","decrypt","encripted","decodeURI","Error","strs","substring","parse","detectIncognito","ua","browserName","__callback","isPrivate","assertEvalToString","eval","safariPrivateTest","undefined","navigator","maxTouchPoints","tmp_name","random","window","indexedDB","open","onupgradeneeded","res","target","createObjectStore","autoIncrement","put","Blob","message","_b","close","deleteDatabase","newSafariTest","openDB","openDatabase","storage","localStorage","setItem","removeItem","oldSafariTest","storageQuotaChromePrivateTest","webkitTemporaryStorage","queryUsageAndQuota","quota","w","performance","memory","jsHeapSizeLimit","chromePrivateTest","allSettled","fs","webkitRequestFileSystem","vendor","isChrome","userAgent","brave","document","documentElement","style","MozAppearance","serviceWorker","msSaveBlob","upload","option","uploadId","getElementsByTagName","existedElement","getElementById","remove","element","createElement","setAttribute","display","appendChild","addEventListener","evt","file","files","lastDot","name","lastIndexOf","extension_1","extensions","toUpperCase","maxSizeInMb","size","validator","click","generateFileName","fileName","ext","splice","download","filePath","link","href","visibility","downloadBlob","blob","url","URL","createObjectURL","revokeObjectURL","console","copyToClipboard","text","clipboard","writeText","allWithPaging","func","defaultPageSize","pageNumber","count","total","isPrivateMode","SdUtility","globalThis","FIREBASE_CONFIG","InjectionToken","FORM_CONFIG","SdFormControl","formState","asyncValidator","_this","_super","sdChanges","Subject","untouchChanges","touchChanges","pristineChanges","__","constructor","__extends","markAsUntouched","onlySelf","markAsTouched","markAsPristine","opts","FormControl","SdBrowserService","_getBrowserNameAndVersion","tem","M","version","exec","appName","appVersion","browserNameAndVersion","browerName","browserVersion","defineProperty","Injectable","providedIn","templateRef","Directive","selector","TemplateRef","SdLetDirective","vcRef","context","_updateView","clear","createEmbeddedView","$implicit","sdLet","ViewContainerRef","Input","SdScrollDirective","elementRef","renderer","browserService","_overflow","scrollTop","setTimeout","nativeElement","onMouseOver","isFirefox","setStyle","onMouseOut","ngOnInit","ElementRef","Renderer2","HostListener","SdForDirective","viewContainer","differs","viewRefsMap","Map","itemsAtOnce","intervalLength","_diffrence","find","ngDoCheck","changes","diff","itemsAdded_1","forEachAddedItem","progressiveRender","forEachRemovedItem","mapView","viewIndex","delete","interval","start","renderItems","setInterval","clearInterval","forEach","embeddedView","currentIndex","IterableDiffers","NgModule","imports","CommonModule","declarations","SdViewDefDirective","SdSuffixDirective","SdLabelDefDirective","exports","providers"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Observable, of } from 'rxjs';\r\n\r\nexport { };\r\n\r\ndeclare global {\r\n interface Array<T = any> {\r\n search(searchText: string | number, fields?: string | string[]): T[];\r\n paging(pageSize: number, page?: number): T[];\r\n toObject(key?: string): { [key: string]: T };\r\n union(key: string, ...args: T[][]): T[];\r\n asObservable(): Observable<T[]>\r\n }\r\n interface ArrayConstructor {\r\n search<T = any>(items: T[], searchText: string | number, fields?: string | string[]): T[];\r\n union<T = any>(key: string, ...args: T[][]): T[];\r\n toObject<T = any>(items: T[], key?: string): { [key: string]: T };\r\n }\r\n}\r\n\r\nArray.prototype.search = function <T = any>(searchText: any, fields?: string | string[]): T[] {\r\n const items: T[] = this;\r\n if (!searchText?.toString()) {\r\n return items;\r\n }\r\n if (Array.isArray(fields)) {\r\n const fs = fields.filter(e => e !== undefined && e !== null && e !== '');\r\n if (!fs.length) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && fs.some(field => String.aliasIncludes(item[field], searchText)));\r\n }\r\n if (!fields) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item[fields], searchText));\r\n};\r\n\r\nArray.prototype.paging = function <T = any>(pageSize: number, page: number = 0): T[] {\r\n const items: T[] = this;\r\n return items.filter((item, index) => {\r\n return index >= page * pageSize\r\n && index < (page + 1) * pageSize;\r\n });\r\n};\r\n\r\nArray.prototype.toObject = function <T = any>(key: string): { [key: string]: T } {\r\n const items: T[] = this;\r\n if (!key) {\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item?.toString()] = item; return obj; }, {});\r\n }\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item[key]?.toString()] = item; return obj; }, {});\r\n};\r\n\r\nArray.prototype.union = function <T = any>(key: string, ...args: T[][]) {\r\n let results: T[] = this;\r\n const filterUnion = <T = any>(val: T, index: number, self: T[]) => val !== undefined && val !== null && self.findIndex((e: { [x: string]: any; }) => !!key ? e[key] === val[key] : e === val) === index;\r\n if (!args?.length) {\r\n return results.filter(filterUnion);\r\n }\r\n for (const arg of args) {\r\n if (Array.isArray(arg)) {\r\n results = [...results, ...arg].filter(filterUnion);\r\n }\r\n }\r\n return results;\r\n}\r\n\r\nArray.prototype.asObservable = function <T = any>() {\r\n const items: T[] = this;\r\n return of(items);\r\n}\r\n\r\nArray.search = <T = any>(items: T[], searchText: string | number, fields?: string | string[]) => {\r\n if (!Array.isArray(items)) {\r\n return [];\r\n }\r\n return items.search(searchText, fields);\r\n};\r\n\r\nArray.union = <T = any>(key: string, ...args: T[][]) => {\r\n return [].union(key, ...args);\r\n}\r\n\r\nArray.toObject = <T>(items: T[], key?: string): { [key: string]: T } => {\r\n if (!Array.isArray(items)) {\r\n return {};\r\n }\r\n return items.toObject(key);\r\n}\r\n\r\n","export { };\r\n\r\ndeclare global {\r\n interface Date {\r\n begin(): Date;\r\n end(): Date;\r\n addMiliseconds(miliseconds: number): Date;\r\n addHours(hours: number): Date;\r\n addDays(days: number): Date;\r\n addMonths(months: number): Date;\r\n toFormat(format: string): string;\r\n }\r\n interface DateConstructor {\r\n equal(date1: any, date2: any): boolean;\r\n parseFrom(value: any, format: string): Date;\r\n isDate(value: any): boolean;\r\n toFormat(value: any, format: string): string;\r\n addMiliseconds(value: any, miliseconds: number): Date;\r\n addHours(value: any, hours: number): Date;\r\n addDays(value: any, days: number): Date;\r\n addMonths(value: any, months: number): Date;\r\n begin(value: any): Date;\r\n end(value: any): Date;\r\n diffDays(from: any, to: any): number;\r\n }\r\n}\r\n\r\nDate.equal = (date1: any, date2: any) => {\r\n if (!Date.isDate(date1) && !Date.isDate(date2)) {\r\n return true;\r\n }\r\n if (!Date.isDate(date1) || !Date.isDate(date2)) {\r\n return false;\r\n }\r\n return new Date(date1).getTime() === new Date(date2).getTime();\r\n};\r\n\r\nDate.parseFrom = (value: any, format: string) => {\r\n if (!value) {\r\n return null;\r\n }\r\n if (!format) {\r\n return null;\r\n }\r\n value = value.toString();\r\n const dmy = format.indexOf('dd') > -1 && format.indexOf('MM') > -1 && format.indexOf('yyyy') > -1;\r\n const hms = format.indexOf('HH') > -1 || format.indexOf('mm') > -1 || format.indexOf('ss') > -1;\r\n let strDate = '';\r\n if (dmy) {\r\n const dd = value.substr(format.indexOf('dd'), 'dd'.length);\r\n const MM = value.substr(format.indexOf('MM'), 'MM'.length);\r\n const yyyy = value.substr(format.indexOf('yyyy'), 'yyyy'.length);\r\n if (+yyyy > 0 && +MM > 0 && +dd > 0) {\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n } else {\r\n return null;\r\n }\r\n } else {\r\n const today = new Date();\r\n const yyyy = today.getFullYear().toString();\r\n const MM = (today.getMonth() + 1).toString().padStart(2, '0');\r\n const dd = today.getDate().toString().padStart(2, '0');\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n }\r\n if (hms) {\r\n const HH = format.indexOf('HH') > -1 ? value.substr(format.indexOf('HH'), 'HH'.length) : '00';\r\n const mm = format.indexOf('mm') > -1 ? value.substr(format.indexOf('mm'), 'mm'.length) : '00';\r\n const ss = format.indexOf('ss') > -1 ? value.substr(format.indexOf('ss'), 'ss'.length) : '00';\r\n strDate += ` ${HH || '00'}:${mm || '00'}:${ss || '00'}`;\r\n }\r\n if (!Date.isDate(strDate)) {\r\n return null;\r\n }\r\n return new Date(strDate);\r\n};\r\n\r\nDate.isDate = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const date = new Date(value);\r\n return !isNaN(date.getTime());\r\n};\r\n\r\nDate.toFormat = (value: any, format: string): string => {\r\n if (!Date.isDate(value)) {\r\n return '';\r\n }\r\n const date: Date = new Date(value);\r\n return date.toFormat(format);\r\n};\r\n\r\nDate.addMiliseconds = (value: any, miliseconds: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMiliseconds(miliseconds);\r\n};\r\n\r\nDate.addHours = (value: any, hours: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addHours(hours);\r\n};\r\n\r\nDate.addDays = (value: any, days: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addDays(days);\r\n};\r\n\r\nDate.addMonths = (value: any, months: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMonths(months);\r\n};\r\n\r\nDate.begin = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(Date.toFormat(value, 'MM/dd/yyyy'));\r\n};\r\n\r\nDate.end = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(value).addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.diffDays = (from: any, to: any) => {\r\n if (!Date.isDate(from) || !Date.isDate(to)) {\r\n return undefined;\r\n }\r\n const diffTime = new Date(to).getTime() - new Date(from).getTime();\r\n const diffDays = Math.round((diffTime / (1000 * 60 * 60 * 24)) * 100) / 100; \r\n return diffDays;\r\n};\r\n\r\nDate.prototype.begin = function () {\r\n return new Date(this.toFormat('MM/dd/yyyy'));\r\n};\r\n\r\nDate.prototype.end = function () {\r\n const date: Date = this;\r\n return date.addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.addMiliseconds = function (miliseconds: number) {\r\n const date: Date = this;\r\n date.setMilliseconds(date.getMilliseconds() + miliseconds);\r\n return date;\r\n};\r\n\r\nDate.prototype.addHours = function (hours: number) {\r\n const date: Date = this;\r\n date.setHours(date.getHours() + hours);\r\n return date;\r\n};\r\n\r\nDate.prototype.addDays = function (days: number) {\r\n const date: Date = this;\r\n date.setDate(date.getDate() + days);\r\n return date;\r\n};\r\n\r\nDate.prototype.addMonths = function (months: number) {\r\n const date: Date = this;\r\n date.setMonth(date.getMonth() + months);\r\n return date;\r\n};\r\n\r\nDate.prototype.toFormat = function (format: string) {\r\n const date: Date = this;\r\n let result = format;\r\n result = result.replace('yyyy', date.getFullYear().toString());\r\n result = result.replace('MM', (date.getMonth() + 1).toString().padStart(2, '0'));\r\n result = result.replace('dd', date.getDate().toString().padStart(2, '0'));\r\n result = result.replace('HH', date.getHours().toString().padStart(2, '0'));\r\n result = result.replace('mm', date.getMinutes().toString().padStart(2, '0'));\r\n result = result.replace('ss', date.getSeconds().toString().padStart(2, '0'));\r\n return result;\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface NumberConstructor {\r\n toVNCurrency(value: any, digits?: number): string;\r\n isNumber(value: any): boolean;\r\n isPositiveInteger(value: any): boolean;\r\n isPositiveNumber(value: any): boolean;\r\n round(value: any, digits?: number): number;\r\n }\r\n}\r\n\r\nNumber.toVNCurrency = (value: any, digits?: number) => {\r\n value = (value ?? '').toString().replace(/,/g, '');\r\n if (!value) {\r\n return null;\r\n }\r\n const val = +value;\r\n if (!Number.isNaN(val)) {\r\n if(!digits && digits !== 0) {\r\n return val.toLocaleString('vi-VN', { maximumFractionDigits: 10 });\r\n }\r\n return val.toLocaleString('vi-VN', { maximumFractionDigits: digits });\r\n }\r\n return null;\r\n};\r\n\r\nNumber.isPositiveInteger = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isPositiveNumber = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)(\\.[0-9]+$){0,1}$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isNumber = (value: any) => {\r\n if (value === undefined || value === null || value === '') {\r\n return false;\r\n }\r\n return !Number.isNaN(+value);\r\n};\r\n\r\nNumber.round = (value: any, digits?: number) => {\r\n digits = digits ?? 2;\r\n if (!Number.isNumber(value)) {\r\n return null;\r\n }\r\n const val = Math.pow(10, digits);\r\n return Math.round(value * val) / val;\r\n};","export { };\r\n\r\ndeclare global {\r\n interface StringConstructor {\r\n isValidEmail(value: any): boolean;\r\n isValidPhone(value: any): boolean;\r\n isValidCode(value: any): boolean;\r\n changeAliasLowerCase(alias: any): string;\r\n aliasIncludes(alias: any, searchText: any): boolean;\r\n format(template: string, ...arr: any[]): string;\r\n templateToDisplay(template: string, entity: any): string; // Convert theo format ${key}\r\n encrypt(obj: any): string;\r\n decrypt(encripted: string): any;\r\n isNullOrEmpty(value: any): boolean;\r\n isNullOrWhiteSpace(value: any): boolean;\r\n }\r\n}\r\n\r\nString.isValidEmail = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidPhone = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*$/;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidCode = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[a-zA-Z0-9\\@\\_\\-]{2,20}$/;\r\n return re.test(value);\r\n};\r\n\r\nString.isNullOrEmpty = (value: any) => {\r\n return value === undefined || value === null || value === '';\r\n};\r\n\r\nString.isNullOrWhiteSpace = (value: any) => {\r\n return value === undefined || value === null || typeof value !== 'string' || value.match(/^ *$/) !== null;\r\n};\r\n\r\nString.changeAliasLowerCase = (alias: any) => {\r\n let str: string = alias?.toString() ?? '';\r\n str = str.toString().toLowerCase();\r\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\r\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\r\n str = str.replace(/ì|í|ị|ỉ|ĩ/g, 'i');\r\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\r\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\r\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\r\n str = str.replace(/đ/g, 'd');\r\n str = str.replace(/!|@|%|\\^|\\*|\\(|\\)|\\+|\\=|\\<|\\>|\\?|\\/|,|\\.|\\:|\\;|\\'|\\\"|\\&|\\#|\\[|\\]|~|\\$|_|`|-|{|}|\\||\\\\/g, ' ');\r\n str = str.replace(/ + /g, ' ');\r\n str = str.trim();\r\n return str;\r\n}\r\n\r\nString.aliasIncludes = (alias: any, searchText: any) => {\r\n return String.changeAliasLowerCase(alias).includes(String.changeAliasLowerCase(searchText));\r\n}\r\n\r\nString.format = (template: string, ...arr: any[]) => {\r\n for (let i = 0; i < arr.length; i++) {\r\n const regexp = new RegExp(`\\\\{${i}\\\\}`, 'gi');\r\n template = template.replace(regexp, arr[i]);\r\n }\r\n return template;\r\n}\r\n\r\nString.templateToDisplay = (template: string, entity: any) => {\r\n if (!template) {\r\n return template;\r\n }\r\n const regex = /\\$\\{([A-Za-z._\\-]*)\\}/g;\r\n const matches = template.match(regex) || [];\r\n for (const match of matches) {\r\n const key = match.slice(2, match.length - 1);\r\n if (key) {\r\n template = template.replace(match, entity?.[key] || '');\r\n }\r\n }\r\n return template;\r\n}\r\n\r\nconst SALT = 'cb9f4b2a-d26c-4787-a66e-e7130ee00f95';\r\n\r\nString.encrypt = (obj: any) => {\r\n obj = JSON.stringify(obj).split('');\r\n for (var i = 0, l = obj.length; i < l; i++)\r\n if (obj[i] == '{')\r\n obj[i] = '}';\r\n else if (obj[i] == '}')\r\n obj[i] = '{';\r\n return encodeURI(SALT + obj.join(''));\r\n}\r\n\r\nString.decrypt = (encripted: string) => {\r\n encripted = decodeURI(encripted);\r\n if (SALT && encripted.indexOf(SALT) != 0)\r\n throw new Error('object cannot be decrypted');\r\n const strs = encripted.substring(SALT.length).split('');\r\n for (let i = 0, l = strs.length; i < l; i++)\r\n if (strs[i] == '{')\r\n strs[i] = '}';\r\n else if (encripted[i] == '}')\r\n strs[i] = '{';\r\n return JSON.parse(strs.join(''));\r\n}\r\n","/**\r\n *\r\n * detectIncognito v1.3.0 - (c) 2022 Joe Rutkowski <Joe@dreggle.com> (https://github.com/Joe12387/detectIncognito)\r\n *\r\n **/\r\nexport const detectIncognito = (): Promise<{\r\n isPrivate: boolean;\r\n browserName: string;\r\n}> => {\r\n return new Promise( (resolve, reject) => {\r\n let browserName = 'Unknown';\r\n\r\n function __callback(isPrivate: any): void {\r\n resolve({\r\n isPrivate,\r\n browserName,\r\n });\r\n }\r\n\r\n function identifyChromium(): string {\r\n const ua = navigator.userAgent;\r\n if (ua.match(/Chrome/)) {\r\n if ((navigator as any).brave !== undefined) {\r\n return 'Brave';\r\n } else if (ua.match(/Edg/)) {\r\n return 'Edge';\r\n } else if (ua.match(/OPR/)) {\r\n return 'Opera';\r\n }\r\n return 'Chrome';\r\n } else {\r\n return 'Chromium';\r\n }\r\n }\r\n\r\n function assertEvalToString(value: any): boolean {\r\n return value === eval.toString().length;\r\n }\r\n\r\n function isSafari(): boolean {\r\n const v = navigator.vendor;\r\n return (\r\n v !== undefined && v.indexOf('Apple') === 0 && assertEvalToString(37)\r\n );\r\n }\r\n\r\n function isChrome(): boolean {\r\n const v = navigator.vendor;\r\n return (\r\n v !== undefined && v.indexOf('Google') === 0 && assertEvalToString(33)\r\n );\r\n }\r\n\r\n function isFirefox(): boolean {\r\n return (\r\n document.documentElement !== undefined &&\r\n (document as any).documentElement.style.MozAppearance !== undefined &&\r\n assertEvalToString(37)\r\n );\r\n }\r\n\r\n function isMSIE(): boolean {\r\n return (\r\n (navigator as any).msSaveBlob !== undefined && assertEvalToString(39)\r\n );\r\n }\r\n\r\n /**\r\n * Safari (Safari for iOS & macOS)\r\n **/\r\n\r\n function newSafariTest(): void {\r\n // tslint:disable-next-line:variable-name\r\n const tmp_name = String(Math.random());\r\n\r\n try {\r\n const db = window.indexedDB.open(tmp_name, 1);\r\n\r\n db.onupgradeneeded = (i) => {\r\n // @ts-ignore\r\n const res = i.target?.result;\r\n\r\n try {\r\n res.createObjectStore('test', {\r\n autoIncrement: true,\r\n // tslint:disable-next-line:new-parens\r\n }).put(new Blob);\r\n\r\n __callback(false);\r\n } catch (e) {\r\n let message = e;\r\n\r\n if (e instanceof Error) {\r\n message = e.message ?? e;\r\n }\r\n\r\n if (typeof message !== 'string') {\r\n return __callback(false);\r\n }\r\n\r\n const matchesExpectedError = /BlobURLs are not yet supported/.test(message);\r\n\r\n return __callback(matchesExpectedError);\r\n } finally {\r\n res.close();\r\n window.indexedDB.deleteDatabase(tmp_name);\r\n }\r\n };\r\n } catch (e) {\r\n return __callback(false);\r\n }\r\n }\r\n\r\n function oldSafariTest(): void {\r\n const openDB = (window as any).openDatabase;\r\n const storage = window.localStorage;\r\n try {\r\n openDB(null, null, null, null);\r\n } catch (e) {\r\n return __callback(true);\r\n }\r\n try {\r\n storage.setItem('test', '1');\r\n storage.removeItem('test');\r\n } catch (e) {\r\n return __callback(true);\r\n }\r\n return __callback(false);\r\n }\r\n\r\n function safariPrivateTest(): void {\r\n if (navigator.maxTouchPoints !== undefined) {\r\n newSafariTest();\r\n } else {\r\n oldSafariTest();\r\n }\r\n }\r\n\r\n /**\r\n * Chrome\r\n **/\r\n\r\n function getQuotaLimit(): number {\r\n const w = window as any;\r\n if (\r\n w.performance !== undefined &&\r\n w.performance.memory !== undefined &&\r\n w.performance.memory.jsHeapSizeLimit !== undefined\r\n ) {\r\n return (performance as any).memory.jsHeapSizeLimit;\r\n }\r\n return 1073741824;\r\n }\r\n\r\n // >= 76\r\n function storageQuotaChromePrivateTest(): void {\r\n (navigator as any).webkitTemporaryStorage.queryUsageAndQuota(\r\n (_: number, quota: number) => {\r\n const quotaInMib = Math.round(quota / (1024 * 1024));\r\n const quotaLimitInMib = Math.round(getQuotaLimit() / (1024 * 1024)) * 2;\r\n\r\n __callback(quotaInMib < quotaLimitInMib);\r\n },\r\n (e: any) => {\r\n reject(\r\n new Error(\r\n 'detectIncognito somehow failed to query storage quota: ' +\r\n e.message\r\n )\r\n );\r\n }\r\n );\r\n }\r\n\r\n // 50 to 75\r\n function oldChromePrivateTest(): void {\r\n const fs = (window as any).webkitRequestFileSystem;\r\n const success = () => {\r\n __callback(false);\r\n };\r\n const error = () => {\r\n __callback(true);\r\n };\r\n fs(0, 1, success, error);\r\n }\r\n\r\n function chromePrivateTest(): void {\r\n if (self.Promise !== undefined && (self.Promise as any).allSettled !== undefined) {\r\n storageQuotaChromePrivateTest();\r\n } else {\r\n oldChromePrivateTest();\r\n }\r\n }\r\n\r\n /**\r\n * Firefox\r\n **/\r\n\r\n function firefoxPrivateTest(): void {\r\n __callback(navigator.serviceWorker === undefined);\r\n }\r\n\r\n /**\r\n * MSIE\r\n **/\r\n\r\n function msiePrivateTest(): void {\r\n __callback(window.indexedDB === undefined);\r\n }\r\n\r\n function main(): void {\r\n if (isSafari()) {\r\n browserName = 'Safari';\r\n safariPrivateTest();\r\n } else if (isChrome()) {\r\n browserName = identifyChromium();\r\n chromePrivateTest();\r\n } else if (isFirefox()) {\r\n browserName = 'Firefox';\r\n firefoxPrivateTest();\r\n } else if (isMSIE()) {\r\n browserName = 'Internet Explorer';\r\n msiePrivateTest();\r\n } else {\r\n reject(new Error('detectIncognito cannot determine the browser'));\r\n }\r\n }\r\n\r\n main();\r\n });\r\n};\r\n","import { detectIncognito } from '../others/detectIncognito';\r\n\r\nexport { };\r\n// declare var Date: DateConstructor;\r\ninterface SdUtilityContructor {\r\n upload: (option?: {\r\n extensions?: string[];\r\n maxSizeInMb?: number;\r\n validator?: (fileName: string) => string;\r\n }) => Promise<File | null>;\r\n download: (filePath: string, fileName?: string) => void;\r\n downloadBlob: (blob: Blob, fileName?: string) => void;\r\n changeAliasLowerCase: (alias: string) => string;\r\n copyToClipboard: (text: string) => void;\r\n allWithPaging: <T = any>(func: (pageSize: number, pageNumber: number) => Promise<{\r\n items: T[];\r\n total: number;\r\n }>, defaultPageSize?: number) => Promise<T[]>;\r\n isPrivateMode: () => Promise<boolean>;\r\n}\r\n\r\n\r\nconst upload = (option?: {\r\n extensions?: string[],\r\n maxSizeInMb?: number,\r\n validator?: (fileName: string) => string\r\n}) => {\r\n const uploadId = 'U1e09c1c0-b647-437e-995e-d7a1a1b60550';\r\n const promise = new Promise<File | null>((resolve, reject) => {\r\n const body = document.getElementsByTagName('body')?.[0];\r\n if (!body) {\r\n resolve(null);\r\n return;\r\n }\r\n const existedElement = document.getElementById(uploadId);\r\n if (existedElement) {\r\n existedElement.remove();\r\n }\r\n const element = document.createElement('input');\r\n element.setAttribute('id', uploadId);\r\n element.setAttribute('type', 'file');\r\n element.style.display = 'none';\r\n body.appendChild(element);\r\n element.addEventListener('change', (evt: any) => {\r\n try {\r\n const target = evt.target as DataTransfer;\r\n const file = target.files.item(0);\r\n if (file) {\r\n const lastDot = file.name.lastIndexOf('.');\r\n if (lastDot === -1) {\r\n throw new Error(`File không đúng định dạng`);\r\n }\r\n const extension = file.name.substring(lastDot + 1);\r\n if (option) {\r\n if (option.extensions?.length && !option.extensions.some(e => e.toUpperCase() === extension.toUpperCase())) {\r\n throw new Error(`File không đúng định dạng`);\r\n }\r\n if (option.maxSizeInMb && option.maxSizeInMb > 0 && option.maxSizeInMb * 1024 * 1024 < file.size) {\r\n const message = `[${file.name}] Dung lượng tối đa ${option.maxSizeInMb} Mbs`;\r\n throw new Error(message);\r\n }\r\n if (option.validator && option.validator(file.name)) {\r\n const message = option.validator(file.name);\r\n throw new Error(message);\r\n }\r\n }\r\n resolve(file);\r\n }\r\n } catch (error) {\r\n reject(error);\r\n }\r\n });\r\n element.click();\r\n });\r\n return promise;\r\n}\r\n\r\nconst generateFileName = (fileName?: string) => {\r\n if (!fileName) {\r\n return `File_${new Date().toFormat('yyyy_MM_dd_HH_mm')}`;\r\n }\r\n const strs = fileName.split('.');\r\n if (strs.length > 1) {\r\n const ext = strs.splice(strs.length - 1, 1)[0];\r\n return `${strs.join('.')}_${new Date().toFormat('yyyy_MM_dd_HH_mm')}.${ext}`;\r\n }\r\n return `${fileName}_${new Date().toFormat('yyyy_MM_dd_HH_mm')}`;\r\n}\r\n\r\nconst download = (filePath: string, fileName?: string) => {\r\n const link = document.createElement('a');\r\n link.download = generateFileName(fileName);\r\n link.href = filePath;\r\n link.style.visibility = 'hidden';\r\n document.body.appendChild(link);\r\n link.click();\r\n link.remove();\r\n}\r\n\r\nconst downloadBlob = (blob: Blob, fileName?: string) => {\r\n try {\r\n const url = window.URL.createObjectURL(blob);\r\n const link = document.createElement('a');\r\n if (link.download !== undefined) { // feature detection\r\n link.download = generateFileName(fileName);\r\n link.href = url;\r\n link.style.visibility = 'hidden';\r\n document.body.appendChild(link);\r\n link.click();\r\n window.URL.revokeObjectURL(url);\r\n link.remove();\r\n }\r\n } catch (e) {\r\n console.error('BlobToSaveAs error', e);\r\n }\r\n}\r\n\r\nconst changeAliasLowerCase = (alias: string) => {\r\n let str = alias?.toString() ?? '';\r\n str = str.toString().toLowerCase();\r\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\r\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\r\n str = str.replace(/ì|í|ị|ỉ|ĩ/g, 'i');\r\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\r\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\r\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\r\n str = str.replace(/đ/g, 'd');\r\n str = str.replace(/!|@|%|\\^|\\*|\\(|\\)|\\+|\\=|\\<|\\>|\\?|\\/|,|\\.|\\:|\\;|\\'|\\\"|\\&|\\#|\\[|\\]|~|\\$|_|`|-|{|}|\\||\\\\/g, ' ');\r\n str = str.replace(/ + /g, ' ');\r\n str = str.trim();\r\n return str;\r\n}\r\n\r\nconst copyToClipboard = (text: string) => {\r\n navigator.clipboard.writeText(text);\r\n}\r\n\r\nconst allWithPaging = async <T = any>(func: (pageSize: number, pageNumber: number) => Promise<{ items: T[], total: number }>, defaultPageSize?: number): Promise<T[]> => {\r\n let pageSize = defaultPageSize || 1000;\r\n let pageNumber = 0;\r\n let count = 0;\r\n let items: T[] = [];\r\n while (true) {\r\n const res = await func(pageSize, pageNumber);\r\n if (Array(res?.items) && res?.total > 0) {\r\n items = [...items, ...res.items];\r\n count += res.items.length;\r\n pageNumber++;\r\n if (count >= res.total || !res.items?.length) {\r\n return items;\r\n }\r\n } else {\r\n return [];\r\n }\r\n }\r\n}\r\n\r\nconst isPrivateMode = async (): Promise<boolean> => {\r\n const check = await detectIncognito();\r\n return check.isPrivate;\r\n}\r\n\r\nvar SdUtility: SdUtilityContructor = {\r\n upload,\r\n download,\r\n downloadBlob,\r\n changeAliasLowerCase,\r\n copyToClipboard,\r\n allWithPaging,\r\n isPrivateMode,\r\n};\r\n\r\ndeclare global {\r\n var SdUtility: SdUtilityContructor;\r\n}\r\nglobalThis.SdUtility = SdUtility;\r\n","import { InjectionToken } from \"@angular/core\";\r\n\r\nexport interface IFirebaseConfiguration {\r\n functionUrl: string;\r\n project: string;\r\n env: string;\r\n folder?: string | (() => string);\r\n}\r\n\r\nexport const FIREBASE_CONFIG = new InjectionToken<IFirebaseConfiguration>('sd.firebase.configuration');","import { InjectionToken } from \"@angular/core\";\r\nimport { MatFormFieldAppearance } from \"@angular/material/form-field\";\r\n\r\nexport interface IFormConfiguration {\r\n appearance?: MatFormFieldAppearance; \r\n}\r\n\r\nexport const FORM_CONFIG = new InjectionToken<IFormConfiguration>('sd.form.configuration');","import { FormControl, AsyncValidatorFn, ValidatorFn } from '@angular/forms';\r\nimport { Subject } from 'rxjs';\r\nexport class SdFormControl extends FormControl {\r\n sdChanges: Subject<boolean> = new Subject<boolean>();\r\n untouchChanges: Subject<boolean> = new Subject<boolean>();\r\n touchChanges: Subject<boolean> = new Subject<boolean>();\r\n pristineChanges: Subject<boolean> = new Subject<boolean>();\r\n constructor(\r\n formState?: Object,\r\n validator: ValidatorFn | ValidatorFn[] = null,\r\n asyncValidator: AsyncValidatorFn | AsyncValidatorFn[] = null\r\n ) {\r\n super(formState, validator, asyncValidator);\r\n }\r\n\r\n markAsUntouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsUntouched({ onlySelf });\r\n this.untouchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsTouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsTouched({ onlySelf });\r\n this.touchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsPristine(opts?: {\r\n onlySelf?: boolean;\r\n }): void {\r\n super.markAsPristine(opts);\r\n this.pristineChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdBrowserService {\r\n browerName: string;\r\n browserVersion: string;\r\n get isChrome() { return this.browerName === 'Chrome'; }\r\n get isFirefox() { return this.browerName === 'Firefox'; }\r\n get isSafari() { return this.browerName === 'Safari'; }\r\n constructor() {\r\n const browserNameAndVersion = this.#getBrowserNameAndVersion();\r\n this.browerName = browserNameAndVersion.name;\r\n this.browserVersion = browserNameAndVersion.version;\r\n }\r\n\r\n #getBrowserNameAndVersion = () => {\r\n const ua = navigator.userAgent;\r\n let M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n let tem: RegExpMatchArray;\r\n if (/trident/i.test(M[1])) {\r\n tem = /\\brv[ :]+(\\d+)/g.exec(ua) || [];\r\n return { name: 'IE', version: (tem[1] || '') };\r\n }\r\n if (M[1] === 'Chrome') {\r\n tem = ua.match(/\\bEdg\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Edge(Chromium)', version: tem[1] }; }\r\n tem = ua.match(/\\bOPR\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Opera', version: tem[1] }; }\r\n }\r\n M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];\r\n tem = ua.match(/version\\/(\\d+)/i);\r\n if (tem != null) { M.splice(1, 1, tem[1]); }\r\n return {\r\n name: M[0],\r\n version: M[1]\r\n };\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdViewDef]'\r\n})\r\nexport class SdViewDefDirective {\r\n // @Input() sdViewDef: string;\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { Directive, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\r\n@Directive({\r\n selector: '[sdLet]',\r\n})\r\nexport class SdLetDirective {\r\n @Input()\r\n set sdLet(context: any) {\r\n this.context.$implicit = this.context.sdLet = context;\r\n this.#updateView();\r\n }\r\n context: any = {};\r\n\r\n constructor(private vcRef: ViewContainerRef, private templateRef: TemplateRef<any>) { }\r\n\r\n #updateView = () => {\r\n this.vcRef.clear();\r\n this.vcRef.createEmbeddedView(this.templateRef, this.context);\r\n }\r\n}","import { Directive, ElementRef, HostListener, OnInit, Renderer2 } from \"@angular/core\";\r\nimport { SdBrowserService } from '../services/browser.service';\r\n\r\n@Directive({\r\n selector: \"[sdScroll]\",\r\n})\r\nexport class SdScrollDirective implements OnInit {\r\n #overflow: 'hidden' | 'auto' | 'overlay' = 'hidden';\r\n @HostListener('mouseover')\r\n onMouseOver() {\r\n this.#overflow = this.browserService.isFirefox ? 'auto' : 'overlay';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n\r\n @HostListener('mouseout')\r\n onMouseOut() {\r\n this.#overflow = 'hidden';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private browserService: SdBrowserService) { }\r\n\r\n ngOnInit(): void {\r\n this.renderer.setStyle(this.elementRef.nativeElement, '-webkit-transform', 'translate3d(0, 0, 0)');\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n\r\n scrollTop = () => {\r\n setTimeout(() => {\r\n if (this.elementRef?.nativeElement) {\r\n this.elementRef.nativeElement.scrollTop = 0; \r\n }\r\n }, 1);\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdSuffix]'\r\n})\r\nexport class SdSuffixDirective {\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdLabelDef]'\r\n})\r\nexport class SdLabelDefDirective {\r\n // @Input() sdLableDef: string;\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import {\r\n Directive,\r\n Input,\r\n IterableChangeRecord,\r\n IterableDiffer,\r\n IterableDiffers,\r\n TemplateRef,\r\n ViewContainerRef,\r\n ViewRef\r\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdFor]'\r\n})\r\nexport class SdForDirective {\r\n private items: any[] = [];\r\n private viewRefsMap: Map<any, ViewRef> = new Map<any, ViewRef>();\r\n private _diffrence: IterableDiffer<any> | undefined;\r\n\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainer: ViewContainerRef,\r\n private differs: IterableDiffers\r\n ) {}\r\n\r\n @Input('ngxtForOf')\r\n public set ngxtForOf(items: any) {\r\n this.items = items;\r\n if (items) {\r\n this._diffrence = this.differs.find(items).create();\r\n }\r\n //Clear any existing items\r\n this.viewContainer.clear();\r\n }\r\n\r\n @Input('ngxtForItemsAtOnce')\r\n public itemsAtOnce: number = 20;\r\n\r\n @Input('ngxtForIntervalLength')\r\n public intervalLength: number = 50;\r\n\r\n public ngDoCheck(): void {\r\n if (this._diffrence) {\r\n const changes = this._diffrence.diff(this.items);\r\n if (changes) {\r\n const itemsAdded: any[] = [];\r\n changes.forEachAddedItem(item => {\r\n itemsAdded.push(item);\r\n });\r\n\r\n this.progressiveRender(itemsAdded);\r\n\r\n changes.forEachRemovedItem(item => {\r\n const mapView = this.viewRefsMap.get(item.item) as ViewRef;\r\n const viewIndex = this.viewContainer.indexOf(mapView);\r\n this.viewContainer.remove(viewIndex);\r\n this.viewRefsMap.delete(item.item);\r\n });\r\n }\r\n }\r\n }\r\n\r\n private progressiveRender(items: IterableChangeRecord<any>[]) {\r\n let interval: any;\r\n let start = 0;\r\n let end = start + this.itemsAtOnce;\r\n if (end > items.length) {\r\n end = items.length;\r\n }\r\n this.renderItems(items, start, end);\r\n\r\n interval = setInterval(() => {\r\n start = end;\r\n end = start + this.itemsAtOnce;\r\n if (end > items.length) {\r\n end = items.length;\r\n }\r\n this.renderItems(items, start, end);\r\n if (start >= items.length) {\r\n clearInterval(interval);\r\n }\r\n }, this.intervalLength);\r\n }\r\n\r\n private renderItems(\r\n items: IterableChangeRecord<any>[],\r\n start: number,\r\n end: number\r\n ) {\r\n items.slice(start, end).forEach(item => {\r\n const embeddedView = this.viewContainer.createEmbeddedView(\r\n this.templateRef,\r\n {\r\n $implicit: item.item\r\n },\r\n item.currentIndex || 0\r\n );\r\n this.viewRefsMap.set(item.item, embeddedView);\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdViewDefDirective } from './directives/view-def.directive';\r\nimport { SdLetDirective } from './directives/sd-let.directive';\r\nimport { SdScrollDirective } from './directives/sd-scroll.directive';\r\nimport { SdSuffixDirective } from './directives/sd-suffix.directive';\r\nimport { SdLabelDefDirective } from './directives/sd-lable.directive';\r\nimport { SdForDirective } from './directives/sd-for.directive';\r\n// import './typings';\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdForDirective,\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective,\r\n SdLabelDefDirective\r\n ],\r\n exports: [\r\n SdForDirective,\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective,\r\n SdLabelDefDirective\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdCommonModule { }\r\n"]}
|
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/material/icon'), require('@angular/material/tooltip'), require('@angular/forms'), require('uuid'), require('
|
|
3
|
-
typeof define === 'function' && define.amd ? define('@sd-angular/core/input-dropdown', ['exports', '@angular/core', '@angular/common', '@angular/material/icon', '@angular/material/tooltip', '@angular/forms', 'uuid', '
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['sd-angular'] = global['sd-angular'] || {}, global['sd-angular'].core = global['sd-angular'].core || {}, global['sd-angular'].core['input-dropdown'] = {}), global.ng.core, global.ng.common, global.ng.material.icon, global.ng.material.tooltip, global.ng.forms, global.uuid, global
|
|
5
|
-
}(this, (function (exports, core, common, icon, tooltip, forms, uuid,
|
|
6
|
-
|
|
7
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
|
-
|
|
9
|
-
var $__default = /*#__PURE__*/_interopDefaultLegacy($);
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/material/icon'), require('@angular/material/tooltip'), require('@angular/forms'), require('uuid'), require('@sd-angular/core/utility'), require('rxjs/operators'), require('rxjs'), require('@angular/material/input'), require('@angular/material/form-field'), require('@sd-angular/core/translate')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define('@sd-angular/core/input-dropdown', ['exports', '@angular/core', '@angular/common', '@angular/material/icon', '@angular/material/tooltip', '@angular/forms', 'uuid', '@sd-angular/core/utility', 'rxjs/operators', 'rxjs', '@angular/material/input', '@angular/material/form-field', '@sd-angular/core/translate'], factory) :
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['sd-angular'] = global['sd-angular'] || {}, global['sd-angular'].core = global['sd-angular'].core || {}, global['sd-angular'].core['input-dropdown'] = {}), global.ng.core, global.ng.common, global.ng.material.icon, global.ng.material.tooltip, global.ng.forms, global.uuid, global['sd-angular'].core.utility, global.rxjs.operators, global.rxjs, global.ng.material.input, global.ng.material.formField, global['sd-angular'].core.translate));
|
|
5
|
+
}(this, (function (exports, core, common, icon, tooltip, forms, uuid, utility, operators, rxjs, input, formField, translate) { 'use strict';
|
|
10
6
|
|
|
11
7
|
/*! *****************************************************************************
|
|
12
8
|
Copyright (c) Microsoft Corporation.
|
|
@@ -403,13 +399,14 @@
|
|
|
403
399
|
}
|
|
404
400
|
};
|
|
405
401
|
this.blur = function () {
|
|
406
|
-
|
|
402
|
+
var _a, _b;
|
|
403
|
+
(_b = (_a = _this.control) === null || _a === void 0 ? void 0 : _a.nativeElement) === null || _b === void 0 ? void 0 : _b.blur();
|
|
407
404
|
};
|
|
408
405
|
_customValidator.set(this, function (func) {
|
|
409
406
|
return function (c) { return __awaiter(_this, void 0, void 0, function () {
|
|
410
407
|
var value, result, message;
|
|
411
|
-
return __generator(this, function (
|
|
412
|
-
switch (
|
|
408
|
+
return __generator(this, function (_c) {
|
|
409
|
+
switch (_c.label) {
|
|
413
410
|
case 0:
|
|
414
411
|
value = c.value || null;
|
|
415
412
|
if (!(func && typeof (func) === 'function')) return [3 /*break*/, 3];
|
|
@@ -417,7 +414,7 @@
|
|
|
417
414
|
if (!(result instanceof Promise)) return [3 /*break*/, 2];
|
|
418
415
|
return [4 /*yield*/, result];
|
|
419
416
|
case 1:
|
|
420
|
-
message =
|
|
417
|
+
message = _c.sent();
|
|
421
418
|
if (message) {
|
|
422
419
|
return [2 /*return*/, {
|
|
423
420
|
customValidator: message
|