@sd-angular/core 0.0.1005 → 0.0.1009
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/token.service.d.ts +1 -2
- package/autocomplete/sd-angular-core-autocomplete.metadata.json +1 -1
- package/autocomplete/src/lib/autocomplete.component.d.ts +14 -9
- package/autocomplete/src/lib/autocomplete.module.d.ts +0 -1
- package/bundles/sd-angular-core-api.umd.js +29 -12
- 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-autocomplete.umd.js +150 -129
- package/bundles/sd-angular-core-autocomplete.umd.js.map +1 -1
- package/bundles/sd-angular-core-autocomplete.umd.min.js +2 -2
- package/bundles/sd-angular-core-autocomplete.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-button.umd.js +29 -12
- package/bundles/sd-angular-core-button.umd.js.map +1 -1
- package/bundles/sd-angular-core-button.umd.min.js +1 -1
- package/bundles/sd-angular-core-button.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-cache.umd.js +33 -16
- package/bundles/sd-angular-core-cache.umd.js.map +1 -1
- package/bundles/sd-angular-core-cache.umd.min.js +2 -2
- package/bundles/sd-angular-core-cache.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-chart.umd.js +33 -20
- package/bundles/sd-angular-core-chart.umd.js.map +1 -1
- package/bundles/sd-angular-core-chart.umd.min.js +1 -1
- package/bundles/sd-angular-core-chart.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-checkbox.umd.js +29 -12
- package/bundles/sd-angular-core-checkbox.umd.js.map +1 -1
- package/bundles/sd-angular-core-checkbox.umd.min.js +1 -1
- package/bundles/sd-angular-core-checkbox.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-chip.umd.js +29 -12
- package/bundles/sd-angular-core-chip.umd.js.map +1 -1
- package/bundles/sd-angular-core-chip.umd.min.js +1 -1
- package/bundles/sd-angular-core-chip.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-comment.umd.js +446 -0
- package/bundles/sd-angular-core-comment.umd.js.map +1 -0
- package/bundles/sd-angular-core-comment.umd.min.js +16 -0
- package/bundles/sd-angular-core-comment.umd.min.js.map +1 -0
- package/bundles/sd-angular-core-common.umd.js +407 -16
- package/bundles/sd-angular-core-common.umd.js.map +1 -1
- package/bundles/sd-angular-core-common.umd.min.js +2 -2
- package/bundles/sd-angular-core-common.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-date-range.umd.js +33 -16
- package/bundles/sd-angular-core-date-range.umd.js.map +1 -1
- package/bundles/sd-angular-core-date-range.umd.min.js +2 -2
- package/bundles/sd-angular-core-date-range.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-date-time.umd.js +86 -47
- package/bundles/sd-angular-core-date-time.umd.js.map +1 -1
- package/bundles/sd-angular-core-date-time.umd.min.js +2 -2
- package/bundles/sd-angular-core-date-time.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-editor.umd.js +29 -12
- package/bundles/sd-angular-core-editor.umd.js.map +1 -1
- package/bundles/sd-angular-core-editor.umd.min.js +1 -1
- package/bundles/sd-angular-core-editor.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-excel.umd.js +29 -12
- package/bundles/sd-angular-core-excel.umd.js.map +1 -1
- package/bundles/sd-angular-core-excel.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-export.umd.js +33 -16
- package/bundles/sd-angular-core-export.umd.js.map +1 -1
- package/bundles/sd-angular-core-export.umd.min.js +1 -1
- package/bundles/sd-angular-core-export.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-form.umd.js +4 -4
- package/bundles/sd-angular-core-form.umd.min.js +1 -1
- package/bundles/sd-angular-core-form.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-grid-material.umd.js +61 -82
- package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
- package/bundles/sd-angular-core-grid-material.umd.min.js +2 -2
- package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-grid.umd.js +34 -16
- package/bundles/sd-angular-core-grid.umd.js.map +1 -1
- package/bundles/sd-angular-core-grid.umd.min.js +1 -1
- package/bundles/sd-angular-core-grid.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-input-currency.umd.js +29 -12
- package/bundles/sd-angular-core-input-currency.umd.js.map +1 -1
- package/bundles/sd-angular-core-input-currency.umd.min.js +2 -2
- package/bundles/sd-angular-core-input-currency.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-input-dropdown.umd.js +29 -12
- package/bundles/sd-angular-core-input-dropdown.umd.js.map +1 -1
- package/bundles/sd-angular-core-input-dropdown.umd.min.js +1 -1
- package/bundles/sd-angular-core-input-dropdown.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-input-upload-file.umd.js +33 -16
- package/bundles/sd-angular-core-input-upload-file.umd.js.map +1 -1
- package/bundles/sd-angular-core-input-upload-file.umd.min.js +2 -2
- package/bundles/sd-angular-core-input-upload-file.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-input.umd.js +64 -29
- package/bundles/sd-angular-core-input.umd.js.map +1 -1
- package/bundles/sd-angular-core-input.umd.min.js +2 -2
- package/bundles/sd-angular-core-input.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-konva.umd.js +29 -12
- package/bundles/sd-angular-core-konva.umd.js.map +1 -1
- package/bundles/sd-angular-core-konva.umd.min.js +1 -1
- package/bundles/sd-angular-core-konva.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-modal.umd.js +4 -4
- package/bundles/sd-angular-core-modal.umd.js.map +1 -1
- package/bundles/sd-angular-core-modal.umd.min.js +1 -1
- package/bundles/sd-angular-core-modal.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-radio.umd.js +33 -20
- package/bundles/sd-angular-core-radio.umd.js.map +1 -1
- package/bundles/sd-angular-core-radio.umd.min.js +2 -2
- package/bundles/sd-angular-core-radio.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-select-editor.umd.js +33 -16
- package/bundles/sd-angular-core-select-editor.umd.js.map +1 -1
- package/bundles/sd-angular-core-select-editor.umd.min.js +2 -2
- package/bundles/sd-angular-core-select-editor.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-select.umd.js +165 -140
- package/bundles/sd-angular-core-select.umd.js.map +1 -1
- package/bundles/sd-angular-core-select.umd.min.js +2 -2
- package/bundles/sd-angular-core-select.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-service.umd.js +8 -202
- package/bundles/sd-angular-core-service.umd.js.map +1 -1
- package/bundles/sd-angular-core-service.umd.min.js +1 -1
- package/bundles/sd-angular-core-service.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-setting.umd.js +29 -12
- package/bundles/sd-angular-core-setting.umd.js.map +1 -1
- package/bundles/sd-angular-core-setting.umd.min.js +1 -1
- package/bundles/sd-angular-core-setting.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-side-drawer.umd.js +33 -16
- package/bundles/sd-angular-core-side-drawer.umd.js.map +1 -1
- package/bundles/sd-angular-core-side-drawer.umd.min.js +2 -2
- package/bundles/sd-angular-core-side-drawer.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-switch.umd.js +29 -12
- package/bundles/sd-angular-core-switch.umd.js.map +1 -1
- package/bundles/sd-angular-core-switch.umd.min.js +2 -2
- package/bundles/sd-angular-core-switch.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-tab-router.umd.js +29 -12
- package/bundles/sd-angular-core-tab-router.umd.js.map +1 -1
- package/bundles/sd-angular-core-tab-router.umd.min.js +2 -2
- package/bundles/sd-angular-core-tab-router.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-textarea.umd.js +29 -12
- package/bundles/sd-angular-core-textarea.umd.js.map +1 -1
- package/bundles/sd-angular-core-textarea.umd.min.js +2 -2
- package/bundles/sd-angular-core-textarea.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-time.umd.js +33 -16
- package/bundles/sd-angular-core-time.umd.js.map +1 -1
- package/bundles/sd-angular-core-time.umd.min.js +2 -2
- package/bundles/sd-angular-core-time.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-upload-excel.umd.js +33 -16
- package/bundles/sd-angular-core-upload-excel.umd.js.map +1 -1
- package/bundles/sd-angular-core-upload-excel.umd.min.js +1 -1
- package/bundles/sd-angular-core-upload-excel.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-upload-file.umd.js +33 -16
- package/bundles/sd-angular-core-upload-file.umd.js.map +1 -1
- package/bundles/sd-angular-core-upload-file.umd.min.js +2 -2
- package/bundles/sd-angular-core-upload-file.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-utility.umd.js +33 -16
- 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/bundles/sd-angular-core.umd.js +33 -20
- package/bundles/sd-angular-core.umd.js.map +1 -1
- package/bundles/sd-angular-core.umd.min.js +1 -1
- package/bundles/sd-angular-core.umd.min.js.map +1 -1
- package/cache/sd-angular-core-cache.metadata.json +1 -1
- package/cache/src/lib/cache.service.d.ts +0 -1
- package/cache/src/public-api.d.ts +1 -0
- package/chart/sd-angular-core-chart.metadata.json +1 -1
- package/chart/src/lib/chart.component.d.ts +0 -1
- package/chart/src/public-api.d.ts +1 -0
- package/{typing → comment}/index.d.ts +0 -0
- package/comment/package.json +12 -0
- package/{typing/sd-angular-core-typing.d.ts → comment/sd-angular-core-comment.d.ts} +0 -0
- package/comment/sd-angular-core-comment.metadata.json +1 -0
- package/comment/src/lib/comment.component.d.ts +17 -0
- package/comment/src/lib/comment.model.d.ts +21 -0
- package/comment/src/lib/comment.module.d.ts +2 -0
- package/comment/src/public-api.d.ts +3 -0
- package/common/sd-angular-core-common.metadata.json +1 -1
- package/common/src/lib/common.module.d.ts +2 -0
- package/{grid-material → common}/src/lib/directives/sd-let.directive.d.ts +0 -0
- package/common/src/lib/directives/view-def.directive.d.ts +5 -0
- package/common/src/lib/typings/array.extension.d.ts +20 -0
- package/{service → common}/src/lib/typings/date.extension.d.ts +0 -0
- package/{service → common}/src/lib/typings/number.extension.d.ts +0 -0
- package/{typing/src/lib/typing → common/src/lib/typings}/string.extension.d.ts +2 -0
- package/common/src/public-api.d.ts +7 -0
- package/date-range/index.d.ts +0 -1
- package/date-range/sd-angular-core-date-range.metadata.json +1 -1
- package/date-range/src/lib/date-range.component.d.ts +0 -1
- package/date-range/src/lib/date-range.module.d.ts +0 -1
- package/date-range/src/public-api.d.ts +1 -1
- package/date-time/sd-angular-core-date-time.metadata.json +1 -1
- package/date-time/src/lib/date-time.component.d.ts +14 -7
- package/date-time/src/lib/date-time.module.d.ts +0 -1
- package/date-time/src/public-api.d.ts +0 -1
- package/esm2015/api/src/lib/token.service.js +1 -1
- package/esm2015/autocomplete/src/lib/autocomplete.component.js +111 -89
- package/esm2015/autocomplete/src/lib/autocomplete.module.js +6 -4
- package/esm2015/cache/src/lib/cache.service.js +1 -2
- package/esm2015/cache/src/public-api.js +2 -1
- package/esm2015/chart/src/lib/chart.component.js +1 -2
- package/esm2015/chart/src/public-api.js +2 -4
- package/esm2015/{typing → comment}/index.js +1 -1
- package/esm2015/comment/sd-angular-core-comment.js +5 -0
- package/esm2015/comment/src/lib/comment.component.js +60 -0
- package/esm2015/comment/src/lib/comment.model.js +2 -0
- package/esm2015/comment/src/lib/comment.module.js +37 -0
- package/esm2015/comment/src/public-api.js +7 -0
- package/esm2015/common/src/lib/common.module.js +24 -0
- package/esm2015/common/src/lib/directives/sd-let.directive.js +29 -0
- package/esm2015/common/src/lib/directives/view-def.directive.js +16 -0
- package/esm2015/common/src/lib/typings/array.extension.js +65 -0
- package/esm2015/common/src/lib/typings/date.extension.js +143 -0
- package/esm2015/common/src/lib/typings/number.extension.js +33 -0
- package/esm2015/common/src/lib/typings/string.extension.js +42 -0
- package/esm2015/common/src/public-api.js +8 -1
- package/esm2015/date-range/index.js +1 -2
- package/esm2015/date-range/src/lib/date-range.component.js +1 -2
- package/esm2015/date-range/src/lib/date-range.module.js +1 -2
- package/esm2015/date-range/src/public-api.js +2 -2
- package/esm2015/date-time/src/lib/date-time.component.js +55 -35
- package/esm2015/date-time/src/lib/date-time.module.js +5 -3
- package/esm2015/date-time/src/public-api.js +1 -2
- package/esm2015/export/src/lib/export.service.js +1 -2
- package/esm2015/form/src/public-api.js +2 -1
- package/esm2015/grid/src/lib/components/grid-date-picker-control/grid-date-picker-control.component.js +1 -2
- package/esm2015/grid/src/lib/grid.module.js +1 -2
- package/esm2015/grid/src/lib/models/handler-dotnet.js +1 -2
- package/esm2015/grid-material/sd-angular-core-grid-material.js +27 -28
- package/esm2015/grid-material/src/lib/grid-material.module.js +4 -5
- package/esm2015/grid-material/src/public-api.js +2 -4
- package/esm2015/input/src/lib/input.component.js +26 -6
- package/esm2015/input/src/lib/input.module.js +6 -3
- package/esm2015/input-upload-file/src/lib/input-upload-file.component.js +2 -2
- package/esm2015/input-upload-file/src/lib/input-upload-file.module.js +1 -2
- package/esm2015/lib/controls/date-picker-control/date-picker-control.component.js +1 -2
- package/esm2015/lib/pipes/sd-date.pipe.js +1 -2
- package/esm2015/modal/src/lib/modal.module.js +1 -2
- package/esm2015/public-api.js +12 -14
- package/esm2015/radio/src/lib/radio.module.js +1 -2
- package/esm2015/radio/src/public-api.js +2 -4
- package/esm2015/select/src/lib/select.component.js +74 -76
- package/esm2015/select/src/lib/select.module.js +6 -4
- package/esm2015/select-editor/src/lib/select-editor.module.js +1 -2
- package/esm2015/service/src/lib/service.module.js +6 -4
- package/esm2015/service/src/public-api.js +2 -2
- package/esm2015/side-drawer/src/lib/side-drawer.module.js +1 -2
- package/esm2015/time/src/lib/time.component.js +1 -2
- package/esm2015/time/src/public-api.js +2 -1
- package/esm2015/upload-excel/src/lib/upload-excel.component.js +1 -2
- package/esm2015/upload-excel/src/lib/upload-excel.module.js +1 -2
- package/esm2015/upload-file/src/lib/upload-file.module.js +1 -2
- package/esm2015/utility/src/lib/pipes/currency.pipe.js +1 -2
- package/esm2015/utility/src/lib/pipes/time-different.pipe.js +1 -2
- package/esm2015/utility/src/lib/utility.service.js +1 -2
- package/esm2015/utility/src/public-api.js +2 -1
- package/export/sd-angular-core-export.metadata.json +1 -1
- package/export/src/lib/export.service.d.ts +0 -1
- package/fesm2015/sd-angular-core-api.js.map +1 -1
- package/fesm2015/sd-angular-core-autocomplete.js +114 -91
- package/fesm2015/sd-angular-core-autocomplete.js.map +1 -1
- package/fesm2015/sd-angular-core-cache.js +1 -1
- package/fesm2015/sd-angular-core-cache.js.map +1 -1
- package/fesm2015/sd-angular-core-chart.js +1 -5
- package/fesm2015/sd-angular-core-chart.js.map +1 -1
- package/fesm2015/sd-angular-core-comment.js +106 -0
- package/fesm2015/sd-angular-core-comment.js.map +1 -0
- package/fesm2015/sd-angular-core-common.js +346 -2
- package/fesm2015/sd-angular-core-common.js.map +1 -1
- package/fesm2015/sd-angular-core-date-range.js +1 -1
- package/fesm2015/sd-angular-core-date-range.js.map +1 -1
- package/fesm2015/sd-angular-core-date-time.js +57 -36
- package/fesm2015/sd-angular-core-date-time.js.map +1 -1
- package/fesm2015/sd-angular-core-export.js +0 -1
- package/fesm2015/sd-angular-core-export.js.map +1 -1
- package/fesm2015/sd-angular-core-form.js +1 -0
- package/fesm2015/sd-angular-core-form.js.map +1 -1
- package/fesm2015/sd-angular-core-grid-material.js +5 -37
- package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
- package/fesm2015/sd-angular-core-grid.js +1 -1
- package/fesm2015/sd-angular-core-grid.js.map +1 -1
- package/fesm2015/sd-angular-core-input-upload-file.js +0 -1
- package/fesm2015/sd-angular-core-input-upload-file.js.map +1 -1
- package/fesm2015/sd-angular-core-input.js +29 -8
- package/fesm2015/sd-angular-core-input.js.map +1 -1
- package/fesm2015/sd-angular-core-modal.js +0 -1
- package/fesm2015/sd-angular-core-modal.js.map +1 -1
- package/fesm2015/sd-angular-core-radio.js +1 -5
- package/fesm2015/sd-angular-core-radio.js.map +1 -1
- package/fesm2015/sd-angular-core-select-editor.js +0 -1
- package/fesm2015/sd-angular-core-select-editor.js.map +1 -1
- package/fesm2015/sd-angular-core-select.js +77 -78
- package/fesm2015/sd-angular-core-select.js.map +1 -1
- package/fesm2015/sd-angular-core-service.js +5 -198
- package/fesm2015/sd-angular-core-service.js.map +1 -1
- package/fesm2015/sd-angular-core-side-drawer.js +0 -1
- package/fesm2015/sd-angular-core-side-drawer.js.map +1 -1
- package/fesm2015/sd-angular-core-time.js +1 -1
- package/fesm2015/sd-angular-core-time.js.map +1 -1
- package/fesm2015/sd-angular-core-upload-excel.js +0 -1
- package/fesm2015/sd-angular-core-upload-excel.js.map +1 -1
- package/fesm2015/sd-angular-core-upload-file.js +0 -1
- package/fesm2015/sd-angular-core-upload-file.js.map +1 -1
- package/fesm2015/sd-angular-core-utility.js +1 -1
- package/fesm2015/sd-angular-core-utility.js.map +1 -1
- package/fesm2015/sd-angular-core.js +15 -19
- package/fesm2015/sd-angular-core.js.map +1 -1
- package/form/src/public-api.d.ts +1 -0
- package/grid/sd-angular-core-grid.metadata.json +1 -1
- package/grid/src/lib/components/grid-date-picker-control/grid-date-picker-control.component.d.ts +0 -1
- package/grid/src/lib/grid.module.d.ts +0 -1
- package/grid/src/lib/models/handler-dotnet.d.ts +0 -1
- package/grid-material/sd-angular-core-grid-material.d.ts +26 -27
- package/grid-material/sd-angular-core-grid-material.metadata.json +1 -1
- package/grid-material/src/lib/grid-material.module.d.ts +0 -1
- package/grid-material/src/public-api.d.ts +1 -0
- package/input/sd-angular-core-input.metadata.json +1 -1
- package/input/src/lib/input.component.d.ts +5 -0
- package/input-upload-file/sd-angular-core-input-upload-file.metadata.json +1 -1
- package/input-upload-file/src/lib/input-upload-file.module.d.ts +0 -1
- package/lib/controls/date-picker-control/date-picker-control.component.d.ts +0 -1
- package/lib/pipes/sd-date.pipe.d.ts +0 -1
- package/modal/sd-angular-core-modal.metadata.json +1 -1
- package/modal/src/lib/modal.module.d.ts +0 -1
- package/package.json +1 -1
- package/public-api.d.ts +11 -10
- package/radio/sd-angular-core-radio.metadata.json +1 -1
- package/radio/src/lib/radio.module.d.ts +0 -1
- package/radio/src/public-api.d.ts +1 -0
- package/{sd-angular-core-0.0.1005.tgz → sd-angular-core-0.0.1009.tgz} +0 -0
- package/sd-angular-core.metadata.json +1 -1
- package/select/sd-angular-core-select.metadata.json +1 -1
- package/select/src/lib/select.component.d.ts +12 -5
- package/select/src/lib/select.module.d.ts +0 -1
- package/select-editor/sd-angular-core-select-editor.metadata.json +1 -1
- package/select-editor/src/lib/select-editor.module.d.ts +0 -1
- package/service/sd-angular-core-service.metadata.json +1 -1
- package/service/src/lib/service.module.d.ts +0 -1
- package/service/src/public-api.d.ts +1 -1
- package/side-drawer/sd-angular-core-side-drawer.metadata.json +1 -1
- package/side-drawer/src/lib/side-drawer.module.d.ts +0 -1
- package/time/sd-angular-core-time.metadata.json +1 -1
- package/time/src/lib/time.component.d.ts +0 -1
- package/time/src/public-api.d.ts +1 -0
- package/upload-excel/sd-angular-core-upload-excel.metadata.json +1 -1
- package/upload-excel/src/lib/upload-excel.component.d.ts +0 -1
- package/upload-excel/src/lib/upload-excel.module.d.ts +0 -1
- package/upload-file/sd-angular-core-upload-file.metadata.json +1 -1
- package/upload-file/src/lib/upload-file.module.d.ts +0 -1
- package/utility/sd-angular-core-utility.metadata.json +1 -1
- package/utility/src/lib/pipes/currency.pipe.d.ts +0 -1
- package/utility/src/lib/pipes/time-different.pipe.d.ts +0 -1
- package/utility/src/lib/utility.service.d.ts +0 -1
- package/utility/src/public-api.d.ts +1 -0
- package/bundles/sd-angular-core-typing.umd.js +0 -226
- package/bundles/sd-angular-core-typing.umd.js.map +0 -1
- package/bundles/sd-angular-core-typing.umd.min.js +0 -2
- package/bundles/sd-angular-core-typing.umd.min.js.map +0 -1
- package/esm2015/grid-material/src/lib/directives/sd-let.directive.js +0 -29
- package/esm2015/service/src/lib/typings/date.extension.js +0 -143
- package/esm2015/service/src/lib/typings/index.js +0 -4
- package/esm2015/service/src/lib/typings/number.extension.js +0 -33
- package/esm2015/service/src/lib/typings/string.extension.js +0 -23
- package/esm2015/typing/sd-angular-core-typing.js +0 -5
- package/esm2015/typing/src/lib/typing/date.extension.js +0 -143
- package/esm2015/typing/src/lib/typing/index.js +0 -4
- package/esm2015/typing/src/lib/typing/number.extension.js +0 -33
- package/esm2015/typing/src/lib/typing/string.extension.js +0 -23
- package/esm2015/typing/src/lib/typing.service.js +0 -13
- package/esm2015/typing/src/public-api.js +0 -3
- package/fesm2015/sd-angular-core-typing.js +0 -215
- package/fesm2015/sd-angular-core-typing.js.map +0 -1
- package/service/src/lib/typings/index.d.ts +0 -3
- package/service/src/lib/typings/string.extension.d.ts +0 -8
- package/typing/package.json +0 -12
- package/typing/sd-angular-core-typing.metadata.json +0 -1
- package/typing/src/lib/typing/date.extension.d.ts +0 -24
- package/typing/src/lib/typing/index.d.ts +0 -3
- package/typing/src/lib/typing/number.extension.d.ts +0 -9
- package/typing/src/lib/typing.service.d.ts +0 -3
- package/typing/src/public-api.d.ts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-angular-core-upload-file.js","sources":["../../../../projects/sd-core/upload-file/src/lib/upload-file.component.ts","../../../../projects/sd-core/upload-file/src/lib/upload-file.module.ts","../../../../projects/sd-core/upload-file/src/public-api.ts","../../../../projects/sd-core/upload-file/sd-angular-core-upload-file.ts"],"sourcesContent":["import {\r\n Component,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n AfterViewInit,\r\n ElementRef,\r\n OnInit,\r\n ViewChildren,\r\n QueryList,\r\n OnDestroy,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport * as uuid from 'uuid';\r\nimport $ from 'jquery';\r\nimport { SdNotifyService } from '@sd-angular/core/notify';\r\nimport { SdTranslateService } from '@sd-angular/core/translate';\r\nimport { Subscription, Subject } from 'rxjs';\r\nimport { startWith } from 'rxjs/operators';\r\n\r\n// https://stackoverflow.com/questions/4459379/preview-an-image-before-it-is-uploaded\r\n@Component({\r\n selector: 'sd-upload-file',\r\n templateUrl: './upload-file.component.html',\r\n styleUrls: ['./upload-file.component.scss']\r\n})\r\nexport class SdUploadFile implements OnInit, AfterViewInit, OnDestroy {\r\n id = `I${uuid.v4()}`;\r\n #isMobileOrTablet = false;\r\n #canvas1 = `C${uuid.v4()}`;\r\n #canvas2 = `C${uuid.v4()}`;\r\n previewFiles: PreviewFile[] = [];\r\n selectedFile: PreviewFile;\r\n @Input() label: string;\r\n @Input() type: 'image' | 'file' = 'file';\r\n @Input() disabled = false;\r\n @Input() extensions: string[] = [];\r\n @Input() max = 1;\r\n @Input() maxSize: number;\r\n @Input() maxWidth: number;\r\n @Input() maxHeight: number;\r\n @Input() scaleToPixel: number;\r\n #srcs: string[];\r\n @Input() set srcs(srcs: string[]) {\r\n if (Array.isArray(srcs)) {\r\n this.#srcs = srcs;\r\n this.#srcChanges.next(this.#srcs);\r\n }\r\n }\r\n @Input() previewWidth: string = '100px';\r\n @Input() previewHeight: string = '100px';\r\n @Input() align: 'left' | 'center' = 'center';\r\n #model: PreviewFile[];\r\n @Input() set model(model: PreviewFile[]) {\r\n if (Array.isArray(model)) {\r\n this.#model = model;\r\n this.#modelChanges.next(this.#model);\r\n }\r\n }\r\n @Output() modelChange = new EventEmitter<PreviewFile[]>();\r\n @Output() sdChange = new EventEmitter<PreviewFile[]>();\r\n @ViewChildren('dropElement') dropElements: QueryList<ElementRef>;\r\n @ViewChild('canvas') canvas: ElementRef;\r\n #subscription = new Subscription();\r\n #currentDropContainer: any;\r\n #srcChanges = new Subject();\r\n #modelChanges = new Subject();\r\n constructor(\r\n deviceService: DeviceDetectorService,\r\n private ref: ChangeDetectorRef,\r\n private notifyService: SdNotifyService,\r\n private translateService: SdTranslateService) {\r\n this.#isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnInit() {\r\n\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.#srcChanges.pipe(startWith(this.#srcs)).subscribe(() => {\r\n if (!Array.isArray(this.#srcs)) {\r\n return;\r\n }\r\n const previewFiles = this.#srcs.map(src => {\r\n let extension = null;\r\n const lastDot = src.lastIndexOf('.');\r\n if (lastDot > 0) {\r\n extension = src.substring(lastDot + 1);\r\n }\r\n return {\r\n file: null,\r\n previewSrc: null,\r\n src,\r\n isPreviewImage: this.type === 'image',\r\n extension\r\n }\r\n });\r\n this.previewFiles = previewFiles;\r\n this.modelChange.emit(previewFiles);\r\n // this.sdChange.emit(previewFiles);\r\n }));\r\n this.#subscription.add(this.#modelChanges.pipe(startWith([])).subscribe(() => {\r\n if (Array.isArray(this.#model)) {\r\n this.previewFiles = this.#model;\r\n }\r\n }));\r\n if (!this.#isMobileOrTablet) {\r\n if (this.dropElements.length > 0) {\r\n const dropContainer = this.dropElements.first.nativeElement;\r\n this.#currentDropContainer = dropContainer;\r\n dropContainer.addEventListener('dragover', (evt: Event) => {\r\n evt.preventDefault();\r\n dropContainer.style.opacity = 0.9;\r\n dropContainer.style.border = '2px solid grey';\r\n });\r\n dropContainer.addEventListener('dragenter', (evt: Event) => {\r\n evt.preventDefault();\r\n });\r\n dropContainer.addEventListener('dragleave', (evt: Event) => {\r\n dropContainer.style.opacity = 0.6;\r\n dropContainer.style.border = '2px dashed grey';\r\n });\r\n dropContainer.addEventListener('drop', async (evt: DragEvent) => {\r\n evt.preventDefault();\r\n dropContainer.style.opacity = 0.6;\r\n dropContainer.style.border = '2px dashed grey';\r\n await this.#uploadFile(evt.dataTransfer);\r\n });\r\n }\r\n this.#subscription.add(this.dropElements.changes.subscribe(() => {\r\n if (this.dropElements.length > 0 && this.#currentDropContainer !== this.dropElements.first.nativeElement) {\r\n const dropContainer = this.dropElements.first.nativeElement;\r\n this.#currentDropContainer = dropContainer;\r\n dropContainer.addEventListener('dragover', (evt: Event) => {\r\n evt.preventDefault();\r\n dropContainer.style.opacity = 0.9;\r\n dropContainer.style.border = '2px solid grey';\r\n });\r\n dropContainer.addEventListener('dragenter', (evt: Event) => {\r\n evt.preventDefault();\r\n });\r\n dropContainer.addEventListener('dragleave', (evt: Event) => {\r\n dropContainer.style.opacity = 0.6;\r\n dropContainer.style.border = '2px dashed grey';\r\n });\r\n dropContainer.addEventListener('drop', async (evt: DragEvent) => {\r\n evt.preventDefault();\r\n dropContainer.style.opacity = 0.6;\r\n dropContainer.style.border = '2px dashed grey';\r\n await this.#uploadFile(evt.dataTransfer);\r\n });\r\n }\r\n }));\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n reload = (previewFiles: PreviewFile[]) => {\r\n if (Array.isArray(previewFiles)) {\r\n this.previewFiles = previewFiles;\r\n this.modelChange.emit(previewFiles);\r\n // this.sdChange.emit(previewFiles);\r\n }\r\n }\r\n\r\n #validate = async (file: File): Promise<string> => {\r\n if (this.type === 'image') {\r\n if (file.type.split('/')[0] !== 'image') {\r\n return `[${file.name}] ${this.translateService.translate('Uploaded file is not an image')}`;\r\n }\r\n }\r\n if (this.extensions?.length) {\r\n const lastDot = file.name.lastIndexOf('.');\r\n const extension = file.name.substring(lastDot + 1);\r\n if (!this.extensions.some(e => e.toUpperCase() === extension.toUpperCase())) {\r\n return `[${file.name}] ${this.translateService.translate('Uploaded file is not match extension')} ${this.extensions.join(', ')}`;\r\n }\r\n }\r\n if (this.maxSize) {\r\n if (this.maxSize * 1024 * 1024 < file.size) {\r\n return `[${file.name}] ${this.translateService.translate('Max file size')} ${this.maxSize} Mbs`;\r\n }\r\n }\r\n if (this.type === 'image' && (this.maxWidth || this.maxHeight)) {\r\n const message: string = await new Promise(resolve => {\r\n const URL = window.URL || window.webkitURL;\r\n const img = new Image();\r\n img.onload = () => {\r\n if (this.maxWidth && img.width > this.maxWidth) {\r\n resolve(`[${file.name}] ${this.translateService.translate('Max image width')} ${this.maxWidth}px`);\r\n }\r\n if (this.maxHeight && img.height > this.maxHeight) {\r\n resolve(`[${file.name}] ${this.translateService.translate('Max image height')} ${this.maxHeight}px`);\r\n }\r\n resolve(null);\r\n };\r\n img.src = URL.createObjectURL(file);\r\n });\r\n if (message) {\r\n return message;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n #preview = () => {\r\n for (const previewFile of this.previewFiles.filter(e => e.file)) {\r\n const reader = new FileReader();\r\n reader.onload = (evt) => {\r\n previewFile.previewSrc = evt.target.result;\r\n previewFile.isPreviewImage = previewFile.file?.type.split('/')[0] === 'image';\r\n this.ref.detectChanges();\r\n };\r\n reader.readAsDataURL(previewFile.file);\r\n }\r\n }\r\n\r\n onUpload = (previewFile?: PreviewFile) => {\r\n if ($(`#${this.id}`).length) {\r\n $('body').children(`#${this.id}`).remove();\r\n }\r\n if (previewFile || this.max === 1) {\r\n $('body').append(`<input id=\"${this.id}\" style=\"display: none\" type=\"file\" />`);\r\n } else {\r\n $('body').append(`<input id=\"${this.id}\" style=\"display: none\" type=\"file\" multiple />`);\r\n }\r\n $(`#${this.id}`).on('change', async (evt: any) => {\r\n await this.#uploadFile(evt.target, previewFile);\r\n $('body').children(`#${this.id}`).remove();\r\n });\r\n $(`#${this.id}`).trigger('click');\r\n }\r\n\r\n #uploadFile = async (target: DataTransfer, previewFile?: PreviewFile) => {\r\n if (!target.files.length) {\r\n return;\r\n }\r\n const originFiles = target.files;\r\n const files: File[] = [];\r\n if (!previewFile) {\r\n if (originFiles.length + this.previewFiles.length > this.max) {\r\n this.notifyService.notify.warning(`${this.translateService.translate('Max number of files')} ${this.max}`);\r\n return;\r\n }\r\n for (let i = 0; i < originFiles.length; i++) {\r\n let file = originFiles.item(i);\r\n if (this.type === 'image' && this.scaleToPixel > 0) {\r\n file = await this.#resize(file);\r\n }\r\n const message = await this.#validate(file);\r\n if (message) {\r\n this.notifyService.notify.warning(message);\r\n return;\r\n }\r\n files.push(file);\r\n }\r\n for (const file of files) {\r\n const lastDot = file.name.lastIndexOf('.');\r\n const extension = file.name.substring(lastDot + 1);\r\n this.previewFiles.push({\r\n file,\r\n isPreviewImage: false,\r\n previewSrc: null,\r\n src: null,\r\n fileName: file.name,\r\n extension\r\n });\r\n }\r\n } else {\r\n const idx = this.previewFiles.indexOf(previewFile);\r\n let file = originFiles.item(0);\r\n if (this.type === 'image' && this.scaleToPixel > 0) {\r\n file = await this.#resize(file);\r\n }\r\n const lastDot = file.name.lastIndexOf('.');\r\n const extension = file.name.substring(lastDot + 1);\r\n this.previewFiles[idx] = {\r\n file,\r\n isPreviewImage: false,\r\n previewSrc: null,\r\n src: null,\r\n fileName: file.name,\r\n extension\r\n };\r\n }\r\n this.#preview();\r\n this.modelChange.emit(this.previewFiles);\r\n this.sdChange.emit(this.previewFiles);\r\n this.ref.detectChanges();\r\n }\r\n\r\n onRemove = (previewFile: PreviewFile) => {\r\n this.notifyService.confirmDelete().then(() => {\r\n const idx = this.previewFiles.indexOf(previewFile);\r\n this.previewFiles.splice(idx, 1);\r\n this.modelChange.emit(this.previewFiles);\r\n this.sdChange.emit(this.previewFiles);\r\n });\r\n }\r\n\r\n onDrop = (event: CdkDragDrop<string[]>) => {\r\n moveItemInArray(this.previewFiles, event.previousIndex, event.currentIndex);\r\n this.modelChange.emit(this.previewFiles);\r\n this.sdChange.emit(this.previewFiles);\r\n }\r\n\r\n #resize = async (file: File): Promise<File> => {\r\n if (!this.scaleToPixel) {\r\n return file;\r\n }\r\n const lastDot = file.name.lastIndexOf('.');\r\n if (lastDot === -1) {\r\n return file;\r\n }\r\n return await new Promise((resolve, reject) => {\r\n const URL = window.URL || window.webkitURL;\r\n const img = new Image();\r\n img.onload = () => {\r\n try {\r\n if (img.width * img.height <= this.scaleToPixel) {\r\n return resolve(file);\r\n }\r\n const canvas1 = document.createElement('canvas');\r\n canvas1.setAttribute('id', this.#canvas1);\r\n const ctx1 = canvas1.getContext('2d');\r\n const { width, height } = this.#scale(img.width, img.height, this.scaleToPixel);\r\n canvas1.width = width;\r\n canvas1.height = height;\r\n\r\n const canvas2 = document.createElement('canvas');\r\n canvas2.setAttribute('id', this.#canvas2);\r\n const ctx2 = canvas2.getContext('2d');\r\n canvas2.width = width;\r\n canvas2.height = height;\r\n ctx2.drawImage(img, 0, 0, canvas2.width, canvas2.height);\r\n ctx2.drawImage(canvas2, 0, 0, canvas2.width * 0.5, canvas2.height * 0.5);\r\n ctx1.drawImage(canvas2, 0, 0, canvas2.width * 0.5, canvas2.height * 0.5, 0, 0, canvas1.width, canvas1.height);\r\n canvas1.toBlob(blob => {\r\n resolve(this.#blobToFile(blob, `${file.name.substring(0, lastDot)}.png`));\r\n });\r\n } catch (err) {\r\n reject(err);\r\n } finally {\r\n $(`#${this.#canvas1}`).remove();\r\n $(`#${this.#canvas2}`).remove();\r\n }\r\n };\r\n img.src = URL.createObjectURL(file);\r\n });\r\n }\r\n\r\n #scale = (width: number, height: number, scaleToPixcel: number) => {\r\n if (!width || !height || !scaleToPixcel) {\r\n return {\r\n width,\r\n height\r\n };\r\n }\r\n const ratio = width / height;\r\n for (let i = 0; i < width; i++) {\r\n width -= i;\r\n height = Math.trunc(width / ratio);\r\n if (width * height <= scaleToPixcel) {\r\n break;\r\n }\r\n }\r\n return {\r\n width,\r\n height\r\n };\r\n }\r\n\r\n onSelect = (file: PreviewFile) => {\r\n if (!this.#isMobileOrTablet) {\r\n return;\r\n }\r\n if (this.selectedFile !== file) {\r\n this.selectedFile = file;\r\n } else {\r\n this.selectedFile = null;\r\n }\r\n }\r\n\r\n #blobToFile = (blob: Blob, fileName: string): File => {\r\n const temp: any = blob;\r\n temp.lastModifiedDate = new Date();\r\n temp.name = fileName;\r\n return blob as File;\r\n }\r\n}\r\n\r\nexport interface PreviewFile {\r\n file: File;\r\n src: string;\r\n previewSrc: string | ArrayBuffer;\r\n isPreviewImage: boolean;\r\n fileName?: string;\r\n extension?: string;\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DeviceDetectorModule } from 'ngx-device-detector';\r\nimport '@sd-angular/core/typing';\r\nimport { SdUploadFile } from './upload-file.component';\r\nimport { SdNotifyModule } from '@sd-angular/core/notify';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { SdImagePreviewModule } from '@sd-angular/core/image-preview';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DeviceDetectorModule.forRoot(),\r\n MatButtonModule,\r\n MatIconModule,\r\n DragDropModule,\r\n SdNotifyModule,\r\n SdTranslateModule,\r\n SdImagePreviewModule\r\n ],\r\n declarations: [\r\n SdUploadFile\r\n ],\r\n exports: [\r\n SdUploadFile\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdUploadFileModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport { SdUploadFileModule } from './lib/upload-file.module';\r\nexport * from './lib/upload-file.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sd-angular-core-upload-file.js","sources":["../../../../projects/sd-core/upload-file/src/lib/upload-file.component.ts","../../../../projects/sd-core/upload-file/src/lib/upload-file.module.ts","../../../../projects/sd-core/upload-file/src/public-api.ts","../../../../projects/sd-core/upload-file/sd-angular-core-upload-file.ts"],"sourcesContent":["import {\r\n Component,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n AfterViewInit,\r\n ElementRef,\r\n OnInit,\r\n ViewChildren,\r\n QueryList,\r\n OnDestroy,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport * as uuid from 'uuid';\r\nimport $ from 'jquery';\r\nimport { SdNotifyService } from '@sd-angular/core/notify';\r\nimport { SdTranslateService } from '@sd-angular/core/translate';\r\nimport { Subscription, Subject } from 'rxjs';\r\nimport { startWith } from 'rxjs/operators';\r\n\r\n// https://stackoverflow.com/questions/4459379/preview-an-image-before-it-is-uploaded\r\n@Component({\r\n selector: 'sd-upload-file',\r\n templateUrl: './upload-file.component.html',\r\n styleUrls: ['./upload-file.component.scss']\r\n})\r\nexport class SdUploadFile implements OnInit, AfterViewInit, OnDestroy {\r\n id = `I${uuid.v4()}`;\r\n #isMobileOrTablet = false;\r\n #canvas1 = `C${uuid.v4()}`;\r\n #canvas2 = `C${uuid.v4()}`;\r\n previewFiles: PreviewFile[] = [];\r\n selectedFile: PreviewFile;\r\n @Input() label: string;\r\n @Input() type: 'image' | 'file' = 'file';\r\n @Input() disabled = false;\r\n @Input() extensions: string[] = [];\r\n @Input() max = 1;\r\n @Input() maxSize: number;\r\n @Input() maxWidth: number;\r\n @Input() maxHeight: number;\r\n @Input() scaleToPixel: number;\r\n #srcs: string[];\r\n @Input() set srcs(srcs: string[]) {\r\n if (Array.isArray(srcs)) {\r\n this.#srcs = srcs;\r\n this.#srcChanges.next(this.#srcs);\r\n }\r\n }\r\n @Input() previewWidth: string = '100px';\r\n @Input() previewHeight: string = '100px';\r\n @Input() align: 'left' | 'center' = 'center';\r\n #model: PreviewFile[];\r\n @Input() set model(model: PreviewFile[]) {\r\n if (Array.isArray(model)) {\r\n this.#model = model;\r\n this.#modelChanges.next(this.#model);\r\n }\r\n }\r\n @Output() modelChange = new EventEmitter<PreviewFile[]>();\r\n @Output() sdChange = new EventEmitter<PreviewFile[]>();\r\n @ViewChildren('dropElement') dropElements: QueryList<ElementRef>;\r\n @ViewChild('canvas') canvas: ElementRef;\r\n #subscription = new Subscription();\r\n #currentDropContainer: any;\r\n #srcChanges = new Subject();\r\n #modelChanges = new Subject();\r\n constructor(\r\n deviceService: DeviceDetectorService,\r\n private ref: ChangeDetectorRef,\r\n private notifyService: SdNotifyService,\r\n private translateService: SdTranslateService) {\r\n this.#isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnInit() {\r\n\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.#srcChanges.pipe(startWith(this.#srcs)).subscribe(() => {\r\n if (!Array.isArray(this.#srcs)) {\r\n return;\r\n }\r\n const previewFiles = this.#srcs.map(src => {\r\n let extension = null;\r\n const lastDot = src.lastIndexOf('.');\r\n if (lastDot > 0) {\r\n extension = src.substring(lastDot + 1);\r\n }\r\n return {\r\n file: null,\r\n previewSrc: null,\r\n src,\r\n isPreviewImage: this.type === 'image',\r\n extension\r\n }\r\n });\r\n this.previewFiles = previewFiles;\r\n this.modelChange.emit(previewFiles);\r\n // this.sdChange.emit(previewFiles);\r\n }));\r\n this.#subscription.add(this.#modelChanges.pipe(startWith([])).subscribe(() => {\r\n if (Array.isArray(this.#model)) {\r\n this.previewFiles = this.#model;\r\n }\r\n }));\r\n if (!this.#isMobileOrTablet) {\r\n if (this.dropElements.length > 0) {\r\n const dropContainer = this.dropElements.first.nativeElement;\r\n this.#currentDropContainer = dropContainer;\r\n dropContainer.addEventListener('dragover', (evt: Event) => {\r\n evt.preventDefault();\r\n dropContainer.style.opacity = 0.9;\r\n dropContainer.style.border = '2px solid grey';\r\n });\r\n dropContainer.addEventListener('dragenter', (evt: Event) => {\r\n evt.preventDefault();\r\n });\r\n dropContainer.addEventListener('dragleave', (evt: Event) => {\r\n dropContainer.style.opacity = 0.6;\r\n dropContainer.style.border = '2px dashed grey';\r\n });\r\n dropContainer.addEventListener('drop', async (evt: DragEvent) => {\r\n evt.preventDefault();\r\n dropContainer.style.opacity = 0.6;\r\n dropContainer.style.border = '2px dashed grey';\r\n await this.#uploadFile(evt.dataTransfer);\r\n });\r\n }\r\n this.#subscription.add(this.dropElements.changes.subscribe(() => {\r\n if (this.dropElements.length > 0 && this.#currentDropContainer !== this.dropElements.first.nativeElement) {\r\n const dropContainer = this.dropElements.first.nativeElement;\r\n this.#currentDropContainer = dropContainer;\r\n dropContainer.addEventListener('dragover', (evt: Event) => {\r\n evt.preventDefault();\r\n dropContainer.style.opacity = 0.9;\r\n dropContainer.style.border = '2px solid grey';\r\n });\r\n dropContainer.addEventListener('dragenter', (evt: Event) => {\r\n evt.preventDefault();\r\n });\r\n dropContainer.addEventListener('dragleave', (evt: Event) => {\r\n dropContainer.style.opacity = 0.6;\r\n dropContainer.style.border = '2px dashed grey';\r\n });\r\n dropContainer.addEventListener('drop', async (evt: DragEvent) => {\r\n evt.preventDefault();\r\n dropContainer.style.opacity = 0.6;\r\n dropContainer.style.border = '2px dashed grey';\r\n await this.#uploadFile(evt.dataTransfer);\r\n });\r\n }\r\n }));\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n reload = (previewFiles: PreviewFile[]) => {\r\n if (Array.isArray(previewFiles)) {\r\n this.previewFiles = previewFiles;\r\n this.modelChange.emit(previewFiles);\r\n // this.sdChange.emit(previewFiles);\r\n }\r\n }\r\n\r\n #validate = async (file: File): Promise<string> => {\r\n if (this.type === 'image') {\r\n if (file.type.split('/')[0] !== 'image') {\r\n return `[${file.name}] ${this.translateService.translate('Uploaded file is not an image')}`;\r\n }\r\n }\r\n if (this.extensions?.length) {\r\n const lastDot = file.name.lastIndexOf('.');\r\n const extension = file.name.substring(lastDot + 1);\r\n if (!this.extensions.some(e => e.toUpperCase() === extension.toUpperCase())) {\r\n return `[${file.name}] ${this.translateService.translate('Uploaded file is not match extension')} ${this.extensions.join(', ')}`;\r\n }\r\n }\r\n if (this.maxSize) {\r\n if (this.maxSize * 1024 * 1024 < file.size) {\r\n return `[${file.name}] ${this.translateService.translate('Max file size')} ${this.maxSize} Mbs`;\r\n }\r\n }\r\n if (this.type === 'image' && (this.maxWidth || this.maxHeight)) {\r\n const message: string = await new Promise(resolve => {\r\n const URL = window.URL || window.webkitURL;\r\n const img = new Image();\r\n img.onload = () => {\r\n if (this.maxWidth && img.width > this.maxWidth) {\r\n resolve(`[${file.name}] ${this.translateService.translate('Max image width')} ${this.maxWidth}px`);\r\n }\r\n if (this.maxHeight && img.height > this.maxHeight) {\r\n resolve(`[${file.name}] ${this.translateService.translate('Max image height')} ${this.maxHeight}px`);\r\n }\r\n resolve(null);\r\n };\r\n img.src = URL.createObjectURL(file);\r\n });\r\n if (message) {\r\n return message;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n #preview = () => {\r\n for (const previewFile of this.previewFiles.filter(e => e.file)) {\r\n const reader = new FileReader();\r\n reader.onload = (evt) => {\r\n previewFile.previewSrc = evt.target.result;\r\n previewFile.isPreviewImage = previewFile.file?.type.split('/')[0] === 'image';\r\n this.ref.detectChanges();\r\n };\r\n reader.readAsDataURL(previewFile.file);\r\n }\r\n }\r\n\r\n onUpload = (previewFile?: PreviewFile) => {\r\n if ($(`#${this.id}`).length) {\r\n $('body').children(`#${this.id}`).remove();\r\n }\r\n if (previewFile || this.max === 1) {\r\n $('body').append(`<input id=\"${this.id}\" style=\"display: none\" type=\"file\" />`);\r\n } else {\r\n $('body').append(`<input id=\"${this.id}\" style=\"display: none\" type=\"file\" multiple />`);\r\n }\r\n $(`#${this.id}`).on('change', async (evt: any) => {\r\n await this.#uploadFile(evt.target, previewFile);\r\n $('body').children(`#${this.id}`).remove();\r\n });\r\n $(`#${this.id}`).trigger('click');\r\n }\r\n\r\n #uploadFile = async (target: DataTransfer, previewFile?: PreviewFile) => {\r\n if (!target.files.length) {\r\n return;\r\n }\r\n const originFiles = target.files;\r\n const files: File[] = [];\r\n if (!previewFile) {\r\n if (originFiles.length + this.previewFiles.length > this.max) {\r\n this.notifyService.notify.warning(`${this.translateService.translate('Max number of files')} ${this.max}`);\r\n return;\r\n }\r\n for (let i = 0; i < originFiles.length; i++) {\r\n let file = originFiles.item(i);\r\n if (this.type === 'image' && this.scaleToPixel > 0) {\r\n file = await this.#resize(file);\r\n }\r\n const message = await this.#validate(file);\r\n if (message) {\r\n this.notifyService.notify.warning(message);\r\n return;\r\n }\r\n files.push(file);\r\n }\r\n for (const file of files) {\r\n const lastDot = file.name.lastIndexOf('.');\r\n const extension = file.name.substring(lastDot + 1);\r\n this.previewFiles.push({\r\n file,\r\n isPreviewImage: false,\r\n previewSrc: null,\r\n src: null,\r\n fileName: file.name,\r\n extension\r\n });\r\n }\r\n } else {\r\n const idx = this.previewFiles.indexOf(previewFile);\r\n let file = originFiles.item(0);\r\n if (this.type === 'image' && this.scaleToPixel > 0) {\r\n file = await this.#resize(file);\r\n }\r\n const lastDot = file.name.lastIndexOf('.');\r\n const extension = file.name.substring(lastDot + 1);\r\n this.previewFiles[idx] = {\r\n file,\r\n isPreviewImage: false,\r\n previewSrc: null,\r\n src: null,\r\n fileName: file.name,\r\n extension\r\n };\r\n }\r\n this.#preview();\r\n this.modelChange.emit(this.previewFiles);\r\n this.sdChange.emit(this.previewFiles);\r\n this.ref.detectChanges();\r\n }\r\n\r\n onRemove = (previewFile: PreviewFile) => {\r\n this.notifyService.confirmDelete().then(() => {\r\n const idx = this.previewFiles.indexOf(previewFile);\r\n this.previewFiles.splice(idx, 1);\r\n this.modelChange.emit(this.previewFiles);\r\n this.sdChange.emit(this.previewFiles);\r\n });\r\n }\r\n\r\n onDrop = (event: CdkDragDrop<string[]>) => {\r\n moveItemInArray(this.previewFiles, event.previousIndex, event.currentIndex);\r\n this.modelChange.emit(this.previewFiles);\r\n this.sdChange.emit(this.previewFiles);\r\n }\r\n\r\n #resize = async (file: File): Promise<File> => {\r\n if (!this.scaleToPixel) {\r\n return file;\r\n }\r\n const lastDot = file.name.lastIndexOf('.');\r\n if (lastDot === -1) {\r\n return file;\r\n }\r\n return await new Promise((resolve, reject) => {\r\n const URL = window.URL || window.webkitURL;\r\n const img = new Image();\r\n img.onload = () => {\r\n try {\r\n if (img.width * img.height <= this.scaleToPixel) {\r\n return resolve(file);\r\n }\r\n const canvas1 = document.createElement('canvas');\r\n canvas1.setAttribute('id', this.#canvas1);\r\n const ctx1 = canvas1.getContext('2d');\r\n const { width, height } = this.#scale(img.width, img.height, this.scaleToPixel);\r\n canvas1.width = width;\r\n canvas1.height = height;\r\n\r\n const canvas2 = document.createElement('canvas');\r\n canvas2.setAttribute('id', this.#canvas2);\r\n const ctx2 = canvas2.getContext('2d');\r\n canvas2.width = width;\r\n canvas2.height = height;\r\n ctx2.drawImage(img, 0, 0, canvas2.width, canvas2.height);\r\n ctx2.drawImage(canvas2, 0, 0, canvas2.width * 0.5, canvas2.height * 0.5);\r\n ctx1.drawImage(canvas2, 0, 0, canvas2.width * 0.5, canvas2.height * 0.5, 0, 0, canvas1.width, canvas1.height);\r\n canvas1.toBlob(blob => {\r\n resolve(this.#blobToFile(blob, `${file.name.substring(0, lastDot)}.png`));\r\n });\r\n } catch (err) {\r\n reject(err);\r\n } finally {\r\n $(`#${this.#canvas1}`).remove();\r\n $(`#${this.#canvas2}`).remove();\r\n }\r\n };\r\n img.src = URL.createObjectURL(file);\r\n });\r\n }\r\n\r\n #scale = (width: number, height: number, scaleToPixcel: number) => {\r\n if (!width || !height || !scaleToPixcel) {\r\n return {\r\n width,\r\n height\r\n };\r\n }\r\n const ratio = width / height;\r\n for (let i = 0; i < width; i++) {\r\n width -= i;\r\n height = Math.trunc(width / ratio);\r\n if (width * height <= scaleToPixcel) {\r\n break;\r\n }\r\n }\r\n return {\r\n width,\r\n height\r\n };\r\n }\r\n\r\n onSelect = (file: PreviewFile) => {\r\n if (!this.#isMobileOrTablet) {\r\n return;\r\n }\r\n if (this.selectedFile !== file) {\r\n this.selectedFile = file;\r\n } else {\r\n this.selectedFile = null;\r\n }\r\n }\r\n\r\n #blobToFile = (blob: Blob, fileName: string): File => {\r\n const temp: any = blob;\r\n temp.lastModifiedDate = new Date();\r\n temp.name = fileName;\r\n return blob as File;\r\n }\r\n}\r\n\r\nexport interface PreviewFile {\r\n file: File;\r\n src: string;\r\n previewSrc: string | ArrayBuffer;\r\n isPreviewImage: boolean;\r\n fileName?: string;\r\n extension?: string;\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DeviceDetectorModule } from 'ngx-device-detector';\r\nimport { SdUploadFile } from './upload-file.component';\r\nimport { SdNotifyModule } from '@sd-angular/core/notify';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { SdImagePreviewModule } from '@sd-angular/core/image-preview';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n DeviceDetectorModule.forRoot(),\r\n MatButtonModule,\r\n MatIconModule,\r\n DragDropModule,\r\n SdNotifyModule,\r\n SdTranslateModule,\r\n SdImagePreviewModule\r\n ],\r\n declarations: [\r\n SdUploadFile\r\n ],\r\n exports: [\r\n SdUploadFile\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdUploadFileModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport { SdUploadFileModule } from './lib/upload-file.module';\r\nexport * from './lib/upload-file.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import '@sd-angular/core/common';
|
|
1
2
|
import { Directive, TemplateRef, ViewContainerRef, Pipe, ɵɵdefineInjectable, Injectable, NgModule } from '@angular/core';
|
|
2
3
|
import { CommonModule } from '@angular/common';
|
|
3
4
|
import { DeviceDetectorService } from 'ngx-device-detector';
|
|
4
|
-
import '@sd-angular/core/typing';
|
|
5
5
|
import { DomSanitizer } from '@angular/platform-browser';
|
|
6
6
|
import { of, interval } from 'rxjs';
|
|
7
7
|
import { map } from 'rxjs/operators';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-angular-core-utility.js","sources":["../../../../projects/sd-core/utility/src/lib/directives/desktop.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/mobile.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/mobile-tablet.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/tablet.directive.ts","../../../../projects/sd-core/utility/src/lib/pipes/currency.pipe.ts","../../../../projects/sd-core/utility/src/lib/pipes/safe-html.pipe.ts","../../../../projects/sd-core/utility/src/lib/utility.service.ts","../../../../projects/sd-core/utility/src/lib/pipes/time-different.pipe.ts","../../../../projects/sd-core/utility/src/lib/utility.module.ts","../../../../projects/sd-core/utility/sd-angular-core-utility.ts"],"sourcesContent":["\r\nimport { Directive, ViewContainerRef, TemplateRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdDesktop]'\r\n})\r\nexport class SdDesktopDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isDesktop()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdMobile]'\r\n})\r\nexport class SdMobileDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isMobile()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdMobileTablet]'\r\n})\r\nexport class SdMobileTabletDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isMobile() || deviceService.isTablet()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdTablet]'\r\n})\r\nexport class SdTabletDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isTablet()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport '@sd-angular/core/typing';\r\n\r\n@Pipe({\r\n name: 'sdCurrency',\r\n})\r\nexport class SdCurrencyPipe implements PipeTransform {\r\n transform(value: any) {\r\n return Number.toVNCurrency(value);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'safeHtml',\r\n})\r\nexport class SdSafeHtmlPipe implements PipeTransform {\r\n\r\n constructor(private sanitizer: DomSanitizer) { }\r\n\r\n transform(html: string) {\r\n return this.sanitizer.bypassSecurityTrustHtml(html);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport md5 from 'md5';\r\nimport $ from 'jquery';\r\nimport * as uuid from 'uuid';\r\nimport '@sd-angular/core/typing';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdUtilityService {\r\n #uploadId = 'U1e09c1c0-b647-437e-995e-d7a1a1b60550';\r\n\r\n constructor() { }\r\n #translate = (value: string) => value;\r\n\r\n hashMD5 = (key: string) => md5(key);\r\n\r\n arrayToObject = <T>(items: T[], key: string): { [key: string]: T } => {\r\n return items.reduce((obj, item) => { obj[item[key]] = item; return obj; }, {});\r\n }\r\n\r\n 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\n timeDifference = (previous: any, current: any = new Date()) => {\r\n if (!Date.isDate(previous)) {\r\n return '';\r\n }\r\n if (!Date.isDate(current)) {\r\n return '';\r\n }\r\n const from = new Date(previous);\r\n const to = new Date(current);\r\n const msPerMinute = 60 * 1000;\r\n const msPerHour = msPerMinute * 60;\r\n const msPerDay = msPerHour * 24;\r\n const msPerMonth = msPerDay * 30;\r\n const msPerYear = msPerDay * 365;\r\n const elapsed = to.getTime() - from.getTime();\r\n\r\n if (elapsed < msPerMinute) {\r\n return `${Math.round(elapsed / 1000)} ${this.#translate('seconds ago')}`;\r\n }\r\n\r\n if (elapsed < msPerHour) {\r\n return `${Math.round(elapsed / msPerMinute)} ${this.#translate('minutes ago')}`;\r\n }\r\n\r\n if (elapsed < msPerDay) {\r\n return `${Math.round(elapsed / msPerHour)} ${this.#translate('hours ago')}`;\r\n }\r\n\r\n if (elapsed < msPerMonth) {\r\n return `${Math.round(elapsed / msPerDay)} ${this.#translate('days ago')}`;\r\n }\r\n\r\n if (elapsed < msPerYear) {\r\n return `${Math.round(elapsed / msPerMonth)} ${this.#translate('months ago')}`;\r\n }\r\n return `${Math.round(elapsed / msPerYear)} ${this.#translate('years ago')}`;\r\n }\r\n\r\n upload = (option?: {\r\n extensions?: string[],\r\n maxSizeInMb?: number,\r\n validator?: (fileName: string) => string\r\n }): Promise<File> => {\r\n const promise = new Promise<File>((resolve, reject) => {\r\n if ($(`#${this.#uploadId}`).length) {\r\n $('body').children(`#${this.#uploadId}`).remove();\r\n }\r\n $('body').append(`<input id=\"${this.#uploadId}\" style=\"display: none\" type=\"file\" />`);\r\n $(`#${this.#uploadId}`).on('change', (evt: any) => {\r\n try {\r\n const target: DataTransfer = evt.target;\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 const message = this.#translate(`Invalid file extension`);\r\n throw new Error(message);\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 const message = `[${file.name}] ${this.#translate('Uploaded file is not match extension')} ${option.extensions.join(', ')}`;\r\n throw new Error(message);\r\n }\r\n if (option.maxSizeInMb > 0 && option.maxSizeInMb * 1024 * 1024 < file.size) {\r\n const message = `[${file.name}] ${this.#translate('Max file size')} ${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 $(`#${this.#uploadId}`).trigger('click');\r\n });\r\n return promise;\r\n }\r\n\r\n download = (filePath: string, fileName?: string) => {\r\n const link: any = document.createElement('a');\r\n link.download = `${fileName || uuid.v4()}`;\r\n link.href = filePath;\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { interval, Observable, of } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { SdUtilityService } from '../utility.service';\r\nimport '@sd-angular/core/typing';\r\n\r\n@Pipe({\r\n name: 'sdTimeDifferent',\r\n})\r\nexport class SdTimeDifferentPipe implements PipeTransform {\r\n private maxSecond = 60;\r\n private maxMinute = this.maxSecond * 60;\r\n private maxHour = this.maxMinute * 24;\r\n private maxDay = this.maxHour * 30;\r\n private maxMonth = this.maxHour * 365;\r\n constructor(private utilityService: SdUtilityService) { }\r\n transform(value: any, format: string, different: 'second' | 'minute' | 'hour' | 'day' | 'month'): Observable<string> {\r\n if (!Date.isDate(value)) {\r\n return of(null);\r\n }\r\n if (!different) {\r\n return of(Date.toFormat(value, format));\r\n }\r\n if (Math.round((new Date().getTime() - new Date(value).getTime()) / 1000) < 0) {\r\n return of(Date.toFormat(value, format));\r\n }\r\n return interval(1000).pipe(map(() => {\r\n const timeDifferent = Math.round((new Date().getTime() - new Date(value).getTime()) / 1000);\r\n if (different === 'month' && timeDifferent < this.maxMonth) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'day' && timeDifferent < this.maxDay) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'hour' && timeDifferent < this.maxHour) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'minute' && timeDifferent < this.maxMinute) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'second' && timeDifferent < this.maxSecond) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n return Date.toFormat(value, format);\r\n }));\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdDesktopDirective } from './directives/desktop.directive';\r\nimport { SdMobileDirective } from './directives/mobile.directive';\r\nimport { SdMobileTabletDirective } from './directives/mobile-tablet.directive';\r\nimport { SdTabletDirective } from './directives/tablet.directive';\r\n\r\nimport { SdCurrencyPipe } from './pipes/currency.pipe';\r\nimport { SdSafeHtmlPipe } from './pipes/safe-html.pipe';\r\nimport { SdTimeDifferentPipe } from './pipes/time-different.pipe';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdDesktopDirective,\r\n SdMobileTabletDirective,\r\n SdMobileDirective,\r\n SdTabletDirective,\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ],\r\n exports: [\r\n SdDesktopDirective,\r\n SdMobileTabletDirective,\r\n SdMobileDirective,\r\n SdTabletDirective,\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ],\r\n providers: [\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ]\r\n})\r\nexport class SdUtilityModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sd-angular-core-utility.js","sources":["../../../../projects/sd-core/utility/src/lib/directives/desktop.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/mobile.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/mobile-tablet.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/tablet.directive.ts","../../../../projects/sd-core/utility/src/lib/pipes/currency.pipe.ts","../../../../projects/sd-core/utility/src/lib/pipes/safe-html.pipe.ts","../../../../projects/sd-core/utility/src/lib/utility.service.ts","../../../../projects/sd-core/utility/src/lib/pipes/time-different.pipe.ts","../../../../projects/sd-core/utility/src/lib/utility.module.ts","../../../../projects/sd-core/utility/sd-angular-core-utility.ts"],"sourcesContent":["\r\nimport { Directive, ViewContainerRef, TemplateRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdDesktop]'\r\n})\r\nexport class SdDesktopDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isDesktop()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdMobile]'\r\n})\r\nexport class SdMobileDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isMobile()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdMobileTablet]'\r\n})\r\nexport class SdMobileTabletDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isMobile() || deviceService.isTablet()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdTablet]'\r\n})\r\nexport class SdTabletDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isTablet()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n@Pipe({\r\n name: 'sdCurrency',\r\n})\r\nexport class SdCurrencyPipe implements PipeTransform {\r\n transform(value: any) {\r\n return Number.toVNCurrency(value);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'safeHtml',\r\n})\r\nexport class SdSafeHtmlPipe implements PipeTransform {\r\n\r\n constructor(private sanitizer: DomSanitizer) { }\r\n\r\n transform(html: string) {\r\n return this.sanitizer.bypassSecurityTrustHtml(html);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport md5 from 'md5';\r\nimport $ from 'jquery';\r\nimport * as uuid from 'uuid';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdUtilityService {\r\n #uploadId = 'U1e09c1c0-b647-437e-995e-d7a1a1b60550';\r\n\r\n constructor() { }\r\n #translate = (value: string) => value;\r\n\r\n hashMD5 = (key: string) => md5(key);\r\n\r\n arrayToObject = <T>(items: T[], key: string): { [key: string]: T } => {\r\n return items.reduce((obj, item) => { obj[item[key]] = item; return obj; }, {});\r\n }\r\n\r\n 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\n timeDifference = (previous: any, current: any = new Date()) => {\r\n if (!Date.isDate(previous)) {\r\n return '';\r\n }\r\n if (!Date.isDate(current)) {\r\n return '';\r\n }\r\n const from = new Date(previous);\r\n const to = new Date(current);\r\n const msPerMinute = 60 * 1000;\r\n const msPerHour = msPerMinute * 60;\r\n const msPerDay = msPerHour * 24;\r\n const msPerMonth = msPerDay * 30;\r\n const msPerYear = msPerDay * 365;\r\n const elapsed = to.getTime() - from.getTime();\r\n\r\n if (elapsed < msPerMinute) {\r\n return `${Math.round(elapsed / 1000)} ${this.#translate('seconds ago')}`;\r\n }\r\n\r\n if (elapsed < msPerHour) {\r\n return `${Math.round(elapsed / msPerMinute)} ${this.#translate('minutes ago')}`;\r\n }\r\n\r\n if (elapsed < msPerDay) {\r\n return `${Math.round(elapsed / msPerHour)} ${this.#translate('hours ago')}`;\r\n }\r\n\r\n if (elapsed < msPerMonth) {\r\n return `${Math.round(elapsed / msPerDay)} ${this.#translate('days ago')}`;\r\n }\r\n\r\n if (elapsed < msPerYear) {\r\n return `${Math.round(elapsed / msPerMonth)} ${this.#translate('months ago')}`;\r\n }\r\n return `${Math.round(elapsed / msPerYear)} ${this.#translate('years ago')}`;\r\n }\r\n\r\n upload = (option?: {\r\n extensions?: string[],\r\n maxSizeInMb?: number,\r\n validator?: (fileName: string) => string\r\n }): Promise<File> => {\r\n const promise = new Promise<File>((resolve, reject) => {\r\n if ($(`#${this.#uploadId}`).length) {\r\n $('body').children(`#${this.#uploadId}`).remove();\r\n }\r\n $('body').append(`<input id=\"${this.#uploadId}\" style=\"display: none\" type=\"file\" />`);\r\n $(`#${this.#uploadId}`).on('change', (evt: any) => {\r\n try {\r\n const target: DataTransfer = evt.target;\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 const message = this.#translate(`Invalid file extension`);\r\n throw new Error(message);\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 const message = `[${file.name}] ${this.#translate('Uploaded file is not match extension')} ${option.extensions.join(', ')}`;\r\n throw new Error(message);\r\n }\r\n if (option.maxSizeInMb > 0 && option.maxSizeInMb * 1024 * 1024 < file.size) {\r\n const message = `[${file.name}] ${this.#translate('Max file size')} ${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 $(`#${this.#uploadId}`).trigger('click');\r\n });\r\n return promise;\r\n }\r\n\r\n download = (filePath: string, fileName?: string) => {\r\n const link: any = document.createElement('a');\r\n link.download = `${fileName || uuid.v4()}`;\r\n link.href = filePath;\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { interval, Observable, of } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { SdUtilityService } from '../utility.service';\r\n@Pipe({\r\n name: 'sdTimeDifferent',\r\n})\r\nexport class SdTimeDifferentPipe implements PipeTransform {\r\n private maxSecond = 60;\r\n private maxMinute = this.maxSecond * 60;\r\n private maxHour = this.maxMinute * 24;\r\n private maxDay = this.maxHour * 30;\r\n private maxMonth = this.maxHour * 365;\r\n constructor(private utilityService: SdUtilityService) { }\r\n transform(value: any, format: string, different: 'second' | 'minute' | 'hour' | 'day' | 'month'): Observable<string> {\r\n if (!Date.isDate(value)) {\r\n return of(null);\r\n }\r\n if (!different) {\r\n return of(Date.toFormat(value, format));\r\n }\r\n if (Math.round((new Date().getTime() - new Date(value).getTime()) / 1000) < 0) {\r\n return of(Date.toFormat(value, format));\r\n }\r\n return interval(1000).pipe(map(() => {\r\n const timeDifferent = Math.round((new Date().getTime() - new Date(value).getTime()) / 1000);\r\n if (different === 'month' && timeDifferent < this.maxMonth) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'day' && timeDifferent < this.maxDay) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'hour' && timeDifferent < this.maxHour) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'minute' && timeDifferent < this.maxMinute) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'second' && timeDifferent < this.maxSecond) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n return Date.toFormat(value, format);\r\n }));\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdDesktopDirective } from './directives/desktop.directive';\r\nimport { SdMobileDirective } from './directives/mobile.directive';\r\nimport { SdMobileTabletDirective } from './directives/mobile-tablet.directive';\r\nimport { SdTabletDirective } from './directives/tablet.directive';\r\n\r\nimport { SdCurrencyPipe } from './pipes/currency.pipe';\r\nimport { SdSafeHtmlPipe } from './pipes/safe-html.pipe';\r\nimport { SdTimeDifferentPipe } from './pipes/time-different.pipe';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdDesktopDirective,\r\n SdMobileTabletDirective,\r\n SdMobileDirective,\r\n SdTabletDirective,\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ],\r\n exports: [\r\n SdDesktopDirective,\r\n SdMobileTabletDirective,\r\n SdMobileDirective,\r\n SdTabletDirective,\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ],\r\n providers: [\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ]\r\n})\r\nexport class SdUtilityModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4"],"mappings":"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"}
|
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
import '@sd-angular/core/common';
|
|
2
|
+
import '@sd-angular/core/label';
|
|
3
|
+
import '@sd-angular/core/input-upload-file';
|
|
4
|
+
import '@sd-angular/core/chip';
|
|
5
|
+
import '@sd-angular/core/textarea';
|
|
6
|
+
import '@sd-angular/core/checkbox';
|
|
7
|
+
import '@sd-angular/core/time';
|
|
8
|
+
import '@sd-angular/core/side-drawer';
|
|
9
|
+
import '@sd-angular/core/tab-router';
|
|
10
|
+
import '@sd-angular/core/excel';
|
|
11
|
+
import '@sd-angular/core/input';
|
|
12
|
+
import '@sd-angular/core/select';
|
|
13
|
+
import '@sd-angular/core/quick-action';
|
|
14
|
+
import '@sd-angular/core/image-preview';
|
|
15
|
+
import '@sd-angular/core/comment';
|
|
1
16
|
import { NgModule, Pipe, EventEmitter, Component, ViewEncapsulation, ChangeDetectorRef, Input, Output, ViewChild, Directive } from '@angular/core';
|
|
2
17
|
import { CommonModule, DatePipe, DecimalPipe } from '@angular/common';
|
|
3
18
|
import { HttpClientModule } from '@angular/common/http';
|
|
@@ -23,7 +38,6 @@ import { MatTabsModule } from '@angular/material/tabs';
|
|
|
23
38
|
import { DragDropModule } from '@angular/cdk/drag-drop';
|
|
24
39
|
import { MatPaginatorModule } from '@angular/material/paginator';
|
|
25
40
|
import { DeviceDetectorService, DeviceDetectorModule } from 'ngx-device-detector';
|
|
26
|
-
import '@sd-angular/core/typing';
|
|
27
41
|
import { SdServiceModule } from '@sd-angular/core/service';
|
|
28
42
|
export * from '@sd-angular/core/service';
|
|
29
43
|
import { SdChartModule } from '@sd-angular/core/chart';
|
|
@@ -45,20 +59,6 @@ import { SdGridModule } from '@sd-angular/core/grid';
|
|
|
45
59
|
export * from '@sd-angular/core/grid';
|
|
46
60
|
import { SdFormModule } from '@sd-angular/core/form';
|
|
47
61
|
export * from '@sd-angular/core/form';
|
|
48
|
-
import '@sd-angular/core/common';
|
|
49
|
-
import '@sd-angular/core/label';
|
|
50
|
-
import '@sd-angular/core/input-upload-file';
|
|
51
|
-
import '@sd-angular/core/chip';
|
|
52
|
-
import '@sd-angular/core/textarea';
|
|
53
|
-
import '@sd-angular/core/checkbox';
|
|
54
|
-
import '@sd-angular/core/time';
|
|
55
|
-
import '@sd-angular/core/side-drawer';
|
|
56
|
-
import '@sd-angular/core/tab-router';
|
|
57
|
-
import '@sd-angular/core/excel';
|
|
58
|
-
import '@sd-angular/core/input';
|
|
59
|
-
import '@sd-angular/core/select';
|
|
60
|
-
import '@sd-angular/core/quick-action';
|
|
61
|
-
import '@sd-angular/core/image-preview';
|
|
62
62
|
export { SdApiModule, SdApiService } from '@sd-angular/core/api';
|
|
63
63
|
export * from '@sd-angular/core/loading';
|
|
64
64
|
export * from '@sd-angular/core/notify';
|
|
@@ -509,10 +509,6 @@ SdCoreModule.decorators = [
|
|
|
509
509
|
},] }
|
|
510
510
|
];
|
|
511
511
|
|
|
512
|
-
/*
|
|
513
|
-
* Public API Surface of superdev-angular-core
|
|
514
|
-
*/
|
|
515
|
-
|
|
516
512
|
/**
|
|
517
513
|
* Generated bundle index. Do not edit.
|
|
518
514
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-angular-core.js","sources":["../../../../projects/sd-core/src/lib/material.module.ts","../../../../projects/sd-core/src/lib/pipes/sd-date.pipe.ts","../../../../projects/sd-core/src/lib/controls/date-picker-control/date-picker-control.component.ts","../../../../projects/sd-core/src/lib/controls/ckeditor-control/ckeditor-control.component.ts","../../../../projects/sd-core/src/lib/validators/min-date.validator.ts","../../../../projects/sd-core/src/lib/validators/max-date.validator.ts","../../../../projects/sd-core/src/lib/validators/custom.validator.ts","../../../../projects/sd-core/src/lib/validators/chip-min-item.validator.ts","../../../../projects/sd-core/src/lib/core.module.ts","../../../../projects/sd-core/src/public-api.ts","../../../../projects/sd-core/src/sd-angular-core.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\n\r\n@NgModule({\r\n imports: [\r\n MatTooltipModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatSelectModule,\r\n MatAutocompleteModule,\r\n MatCheckboxModule,\r\n MatSlideToggleModule,\r\n MatRadioModule,\r\n MatIconModule,\r\n MatMenuModule,\r\n MatChipsModule,\r\n MatButtonModule,\r\n MatDialogModule,\r\n MatBottomSheetModule,\r\n MatProgressSpinnerModule,\r\n DragDropModule,\r\n MatExpansionModule,\r\n MatTabsModule,\r\n MatPaginatorModule\r\n ],\r\n exports: [\r\n MatTooltipModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatSelectModule,\r\n MatAutocompleteModule,\r\n MatCheckboxModule,\r\n MatSlideToggleModule,\r\n MatRadioModule,\r\n MatIconModule,\r\n MatMenuModule,\r\n MatChipsModule,\r\n MatButtonModule,\r\n MatDialogModule,\r\n MatBottomSheetModule,\r\n MatProgressSpinnerModule,\r\n DragDropModule,\r\n MatExpansionModule,\r\n MatTabsModule,\r\n MatPaginatorModule\r\n ]\r\n})\r\nexport class MaterialModule { }\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport '@sd-angular/core/typing';\r\n@Pipe({\r\n name: 'sdDate'\r\n})\r\nexport class SdDatePipe implements PipeTransform {\r\n transform(value: any, format: string): string {\r\n if (!Date.isDate(value)) {\r\n return value;\r\n }\r\n return Date.toFormat(value, format);\r\n }\r\n}\r\n","import {\r\n Component,\r\n ViewChild,\r\n ElementRef,\r\n Input,\r\n EventEmitter,\r\n Output,\r\n OnDestroy,\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport * as uuid from 'uuid';\r\n\r\nimport $ from 'jquery';\r\nimport 'jquery-datetimepicker';\r\nimport { NgForm, NgModel } from '@angular/forms';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport '@sd-angular/core/typing';\r\n// Document: https://xdsoft.net/jqplugins/datetimepicker/\r\n\r\n@Component({\r\n selector: 'sd-date-picker-control',\r\n templateUrl: './date-picker-control.component.html',\r\n styleUrls: ['./date-picker-control.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class DatePickerControlComponent implements OnDestroy, AfterViewInit {\r\n private isMobileOrTablet = false;\r\n private initialized = false;\r\n private pDate: any;\r\n pMinDate: any = null;\r\n pMaxDate: any = null;\r\n name = uuid.v4();\r\n @Input() form: NgForm;\r\n @Input() type: 'datetime' | 'date' | 'time' = 'datetime';\r\n @Input() disabled = false;\r\n @Input() required = false;\r\n @Input() label: string;\r\n @Input() placeholder: string;\r\n\r\n @Input() set minDate(date: string | Date | number) {\r\n if (!Date.isDate(date)) {\r\n this.pMinDate = null;\r\n } else {\r\n this.pMinDate = Date.toFormat(date, 'yyyy/MM/dd HH:mm');\r\n }\r\n this.setOption();\r\n }\r\n @Input() set maxDate(date: string | Date | number) {\r\n if (!Date.isDate(date)) {\r\n this.pMaxDate = null;\r\n } else {\r\n this.pMaxDate = Date.toFormat(date, 'yyyy/MM/dd HH:mm'); // this.datePipe.transform(date, 'yyyy/MM/dd HH:mm');\r\n }\r\n this.setOption();\r\n }\r\n @Input() validator: (value: any) => string | Promise<string>;\r\n @Output() sdChange = new EventEmitter();\r\n date: string;\r\n\r\n @Input() set model(val: any) {\r\n if (!Date.isDate(val)) {\r\n this.pDate = null;\r\n } else {\r\n if (this.type === 'datetime') {\r\n this.pDate = Date.toFormat(val, 'dd/MM/yyyy HH:mm');\r\n } else if (this.type === 'date') {\r\n this.pDate = Date.toFormat(val, 'dd/MM/yyyy');\r\n } else {\r\n this.pDate = Date.toFormat(val, 'HH:mm');\r\n }\r\n }\r\n if (this.initialized) {\r\n this.onChanges();\r\n }\r\n this.ref.detectChanges();\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n\r\n @ViewChild('control') control: ElementRef;\r\n @ViewChild('formModel') formModel: NgModel;\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.form?.removeControl(this.formModel);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.form?.addControl(this.formModel);\r\n this.onChanges();\r\n this.initialized = true;\r\n this.setOption();\r\n this.ref.detectChanges();\r\n }\r\n\r\n onFocus = () => {\r\n if (this.isMobileOrTablet) {\r\n $(this.control.nativeElement).trigger('blur');\r\n }\r\n }\r\n\r\n private onChanges = () => {\r\n this.date = this.pDate;\r\n }\r\n\r\n private setOption() {\r\n if (this.initialized) {\r\n ($(this.control.nativeElement) as any).datetimepicker({\r\n datepicker: this.type === 'datetime' || this.type === 'date',\r\n timepicker: this.type === 'datetime' || this.type === 'time',\r\n format: this.type === 'datetime' ? 'd/m/Y H:i' : (this.type === 'date' ? 'd/m/Y' : 'H:i'),\r\n step: 15,\r\n minDate: this.pMinDate || undefined,\r\n maxDate: this.pMaxDate || undefined,\r\n scrollMonth: false,\r\n scrollTime: false,\r\n scrollInput: false,\r\n onChangeDateTime: (date: any) => {\r\n if (!date && !this.date) {\r\n return;\r\n }\r\n if (this.type === 'datetime') {\r\n date = Date.toFormat(date, 'dd/MM/yyyy HH:mm');\r\n } else if (this.type === 'time') {\r\n date = Date.toFormat(date, 'HH:mm');\r\n } else {\r\n date = Date.toFormat(date, 'dd/MM/yyyy');\r\n }\r\n if (!this.equal(date, this.date)) {\r\n this.model = this.parse(date);\r\n this.modelChange.emit(this.parse(date));\r\n this.sdChange.emit(this.parse(date));\r\n }\r\n this.ref.detectChanges();\r\n }\r\n });\r\n }\r\n }\r\n\r\n private parse(date: any) {\r\n if (this.type === 'date') {\r\n return Date.parseFrom(date, 'dd/MM/yyyy');\r\n } else if (this.type === 'time') {\r\n return Date.parseFrom(date, 'HH:mm');\r\n }\r\n return Date.parseFrom(date, 'dd/MM/yyyy HH:mm');\r\n }\r\n private equal(date1: any, date2: any) {\r\n return Date.equal(this.parse(date1), this.parse(date2));\r\n }\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n ChangeDetectorRef,\r\n EventEmitter,\r\n Output,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'sd-ckeditor-control',\r\n templateUrl: './ckeditor-control.component.html',\r\n styleUrls: [\r\n './ckeditor-control.component.css',\r\n ],\r\n})\r\nexport class CkeditorControlComponent implements OnInit {\r\n @Input() label: string;\r\n @Input() disabled = false;\r\n @Input() required = false;\r\n @Input() set model(value: string) {\r\n this.cModel = value;\r\n this.ref.detectChanges();\r\n }\r\n @Input() set config(value: any) {\r\n this.cConfig = value;\r\n this.ref.detectChanges();\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n // tslint:disable-next-line: no-output-native\r\n @Output() change = new EventEmitter();\r\n @Output() sdChange = new EventEmitter();\r\n cModel: string;\r\n cConfig: any;\r\n editorUrl = '../../assets/ckeditor/ckeditor.js';\r\n\r\n constructor(private ref: ChangeDetectorRef, private sanitizer: DomSanitizer) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onChange(value: any) {\r\n this.model = value;\r\n this.modelChange.emit(value);\r\n this.change.emit(value);\r\n this.sdChange.emit(value);\r\n }\r\n}\r\n","import { Directive, Input } from '@angular/core';\r\nimport { NG_VALIDATORS, Validator, ValidationErrors, AbstractControl } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[sdMinDate]',\r\n providers: [{ provide: NG_VALIDATORS, useExisting: SdMinDateValidator, multi: true }]\r\n})\r\nexport class SdMinDateValidator implements Validator {\r\n @Input('sdMinDate') minDate: string | Date;\r\n validate(c: AbstractControl): ValidationErrors {\r\n const date = c.value || null;\r\n const minDate = this.minDate || null;\r\n if (!date) {\r\n return null;\r\n }\r\n if (!minDate) {\r\n return null;\r\n }\r\n if (new Date(Date.parseFrom(date, 'dd/MM/yyyy HH:mm')).getTime() < new Date(minDate).getTime()) {\r\n return {\r\n minDate: true\r\n };\r\n }\r\n return null;\r\n }\r\n}\r\n","import { Directive, Input } from '@angular/core';\r\nimport { NG_VALIDATORS, Validator, ValidationErrors, AbstractControl } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[sdMaxDate]',\r\n providers: [{ provide: NG_VALIDATORS, useExisting: SdMaxDateValidator, multi: true }]\r\n})\r\nexport class SdMaxDateValidator implements Validator {\r\n @Input('sdMaxDate') maxDate: string | Date;\r\n validate(c: AbstractControl): ValidationErrors {\r\n const date = c.value || null;\r\n const maxDate = this.maxDate || null;\r\n if (!date) {\r\n return null;\r\n }\r\n if (!maxDate) {\r\n return null;\r\n }\r\n if (new Date(Date.parseFrom(date, 'dd/MM/yyyy HH:mm')).getTime() > new Date(maxDate).getTime()) {\r\n return {\r\n maxDate: true\r\n };\r\n }\r\n return null;\r\n }\r\n}\r\n","import { Directive, Input } from '@angular/core';\r\nimport { ValidationErrors, AbstractControl, AsyncValidator, NG_ASYNC_VALIDATORS } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[sdCustomValidator]',\r\n providers: [{ provide: NG_ASYNC_VALIDATORS, useExisting: SdCustomValidator, multi: true }]\r\n})\r\nexport class SdCustomValidator implements AsyncValidator {\r\n @Input('sdCustomValidator') func: (value: any) => string | Promise<string>;\r\n async validate(c: AbstractControl): Promise<ValidationErrors> {\r\n const value = c.value || null;\r\n if (this.func && typeof (this.func) === 'function') {\r\n const result = this.func(value);\r\n if (result instanceof Promise) {\r\n const message = await result;\r\n if (message) {\r\n return {\r\n customValidator: message\r\n };\r\n }\r\n return null;\r\n }\r\n if (result) {\r\n return {\r\n customValidator: result\r\n };\r\n }\r\n return null;\r\n }\r\n return null;\r\n }\r\n}\r\n","import { Directive, Input } from '@angular/core';\r\nimport { ValidationErrors, AbstractControl, Validator, NG_VALIDATORS } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[sdChipMinItem]',\r\n providers: [{ provide: NG_VALIDATORS, useExisting: SdChipMinItemValidator, multi: true }]\r\n})\r\nexport class SdChipMinItemValidator implements Validator {\r\n @Input('sdChipMinItem') func: () => string;\r\n validate(c: AbstractControl): ValidationErrors {\r\n if (this.func && typeof (this.func) === 'function') {\r\n const result = this.func();\r\n if (result) {\r\n return {\r\n minItem: result\r\n };\r\n }\r\n return null;\r\n }\r\n return null;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule, DatePipe, DecimalPipe } from '@angular/common';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { CKEditorModule } from 'ckeditor4-angular';\r\nimport { MaterialModule } from './material.module';\r\nimport { DeviceDetectorModule } from 'ngx-device-detector';\r\n\r\nimport { SdDatePipe } from './pipes/sd-date.pipe';\r\nimport { SdServiceModule } from '@sd-angular/core/service';\r\nimport { SdChartModule } from '@sd-angular/core/chart';\r\nimport { SdGridMaterialModule } from '@sd-angular/core/grid-material';\r\nimport { SdEditorModule } from '@sd-angular/core/editor';\r\nimport { SdKonvaModule } from '@sd-angular/core/konva';\r\nimport { DatePickerControlComponent } from './controls/date-picker-control/date-picker-control.component';\r\nimport { CkeditorControlComponent } from './controls/ckeditor-control/ckeditor-control.component';\r\nimport { SdMinDateValidator } from './validators/min-date.validator';\r\nimport { SdMaxDateValidator } from './validators/max-date.validator';\r\nimport { SdCustomValidator } from './validators/custom.validator';\r\nimport { SdChipMinItemValidator } from './validators/chip-min-item.validator';\r\nimport { SdUploadExcelModule } from '@sd-angular/core/upload-excel';\r\nimport { SdGridModule } from '@sd-angular/core/grid';\r\nimport { SdFormModule } from '@sd-angular/core/form';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n HttpClientModule,\r\n MaterialModule,\r\n CKEditorModule,\r\n DeviceDetectorModule.forRoot(),\r\n SdChartModule,\r\n SdKonvaModule,\r\n SdGridMaterialModule,\r\n SdUploadExcelModule,\r\n SdGridModule,\r\n SdFormModule,\r\n SdServiceModule\r\n ],\r\n declarations: [\r\n DatePickerControlComponent,\r\n CkeditorControlComponent,\r\n // // Pipes\r\n SdDatePipe,\r\n // Validators\r\n SdMinDateValidator,\r\n SdMaxDateValidator,\r\n SdCustomValidator,\r\n SdChipMinItemValidator\r\n ],\r\n exports: [\r\n SdChartModule,\r\n SdKonvaModule,\r\n SdGridMaterialModule,\r\n SdEditorModule,\r\n SdUploadExcelModule,\r\n SdGridModule,\r\n SdFormModule,\r\n SdServiceModule,\r\n MaterialModule,\r\n // Controls\r\n DatePickerControlComponent,\r\n CkeditorControlComponent\r\n ],\r\n providers: [\r\n DatePipe,\r\n DecimalPipe\r\n ]\r\n})\r\nexport class SdCoreModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport { SdCoreModule } from './lib/core.module';\r\nexport { MaterialModule } from './lib/material.module';\r\nexport * from './lib/material.module';\r\nexport * from './lib/controls/ckeditor-control/ckeditor-control.component';\r\nexport * from './lib/controls/date-picker-control/date-picker-control.component';\r\n\r\nexport * from './lib/pipes/sd-date.pipe';\r\nexport * from './lib/validators/chip-min-item.validator';\r\nexport * from './lib/validators/custom.validator';\r\nexport * from './lib/validators/max-date.validator';\r\nexport * from './lib/validators/min-date.validator';\r\n\r\nimport '@sd-angular/core/common';\r\nimport '@sd-angular/core/label';\r\nimport '@sd-angular/core/input-upload-file';\r\nimport '@sd-angular/core/chip';\r\nimport '@sd-angular/core/textarea';\r\nimport '@sd-angular/core/checkbox';\r\nimport '@sd-angular/core/time';\r\nimport '@sd-angular/core/side-drawer';\r\nimport '@sd-angular/core/tab-router';\r\nimport '@sd-angular/core/excel';\r\nimport '@sd-angular/core/input';\r\nimport '@sd-angular/core/select';\r\nimport '@sd-angular/core/quick-action';\r\nimport '@sd-angular/core/image-preview';\r\nexport { SdApiModule, SdApiService } from '@sd-angular/core/api';\r\n// export * from '@sd-angular/core/excel';\r\nexport * from '@sd-angular/core/loading';\r\nexport * from '@sd-angular/core/notify';\r\nexport * from '@sd-angular/core/setting';\r\nexport * from '@sd-angular/core/translate';\r\nexport * from '@sd-angular/core/utility';\r\nexport * from '@sd-angular/core/dynamic-report';\r\nexport * from '@sd-angular/core/chart';\r\nexport * from '@sd-angular/core/upload-file';\r\nexport * from '@sd-angular/core/date-range';\r\nexport * from '@sd-angular/core/date-time';\r\nexport * from '@sd-angular/core/button';\r\nexport * from '@sd-angular/core/konva';\r\nexport * from '@sd-angular/core/autocomplete';\r\nexport { SdGridMaterial, SdGridMaterialOption } from '@sd-angular/core/grid-material';\r\n// export * from '@sd-angular/core/input';\r\n// export * from '@sd-angular/core/select';\r\nexport * from '@sd-angular/core/select-editor';\r\nexport * from '@sd-angular/core/editor';\r\nexport * from '@sd-angular/core/modal';\r\nexport * from '@sd-angular/core/grid';\r\nexport * from '@sd-angular/core/upload-excel';\r\nexport * from '@sd-angular/core/switch';\r\nexport * from '@sd-angular/core/radio';\r\nexport * from '@sd-angular/core/form';\r\nexport * from '@sd-angular/core/service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["uuid.v4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sd-angular-core.js","sources":["../../../../projects/sd-core/src/lib/material.module.ts","../../../../projects/sd-core/src/lib/pipes/sd-date.pipe.ts","../../../../projects/sd-core/src/lib/controls/date-picker-control/date-picker-control.component.ts","../../../../projects/sd-core/src/lib/controls/ckeditor-control/ckeditor-control.component.ts","../../../../projects/sd-core/src/lib/validators/min-date.validator.ts","../../../../projects/sd-core/src/lib/validators/max-date.validator.ts","../../../../projects/sd-core/src/lib/validators/custom.validator.ts","../../../../projects/sd-core/src/lib/validators/chip-min-item.validator.ts","../../../../projects/sd-core/src/lib/core.module.ts","../../../../projects/sd-core/src/sd-angular-core.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\n\r\n@NgModule({\r\n imports: [\r\n MatTooltipModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatSelectModule,\r\n MatAutocompleteModule,\r\n MatCheckboxModule,\r\n MatSlideToggleModule,\r\n MatRadioModule,\r\n MatIconModule,\r\n MatMenuModule,\r\n MatChipsModule,\r\n MatButtonModule,\r\n MatDialogModule,\r\n MatBottomSheetModule,\r\n MatProgressSpinnerModule,\r\n DragDropModule,\r\n MatExpansionModule,\r\n MatTabsModule,\r\n MatPaginatorModule\r\n ],\r\n exports: [\r\n MatTooltipModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatSelectModule,\r\n MatAutocompleteModule,\r\n MatCheckboxModule,\r\n MatSlideToggleModule,\r\n MatRadioModule,\r\n MatIconModule,\r\n MatMenuModule,\r\n MatChipsModule,\r\n MatButtonModule,\r\n MatDialogModule,\r\n MatBottomSheetModule,\r\n MatProgressSpinnerModule,\r\n DragDropModule,\r\n MatExpansionModule,\r\n MatTabsModule,\r\n MatPaginatorModule\r\n ]\r\n})\r\nexport class MaterialModule { }\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n@Pipe({\r\n name: 'sdDate'\r\n})\r\nexport class SdDatePipe implements PipeTransform {\r\n transform(value: any, format: string): string {\r\n if (!Date.isDate(value)) {\r\n return value;\r\n }\r\n return Date.toFormat(value, format);\r\n }\r\n}\r\n","import {\r\n Component,\r\n ViewChild,\r\n ElementRef,\r\n Input,\r\n EventEmitter,\r\n Output,\r\n OnDestroy,\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport * as uuid from 'uuid';\r\n\r\nimport $ from 'jquery';\r\nimport 'jquery-datetimepicker';\r\nimport { NgForm, NgModel } from '@angular/forms';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n// Document: https://xdsoft.net/jqplugins/datetimepicker/\r\n\r\n@Component({\r\n selector: 'sd-date-picker-control',\r\n templateUrl: './date-picker-control.component.html',\r\n styleUrls: ['./date-picker-control.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class DatePickerControlComponent implements OnDestroy, AfterViewInit {\r\n private isMobileOrTablet = false;\r\n private initialized = false;\r\n private pDate: any;\r\n pMinDate: any = null;\r\n pMaxDate: any = null;\r\n name = uuid.v4();\r\n @Input() form: NgForm;\r\n @Input() type: 'datetime' | 'date' | 'time' = 'datetime';\r\n @Input() disabled = false;\r\n @Input() required = false;\r\n @Input() label: string;\r\n @Input() placeholder: string;\r\n\r\n @Input() set minDate(date: string | Date | number) {\r\n if (!Date.isDate(date)) {\r\n this.pMinDate = null;\r\n } else {\r\n this.pMinDate = Date.toFormat(date, 'yyyy/MM/dd HH:mm');\r\n }\r\n this.setOption();\r\n }\r\n @Input() set maxDate(date: string | Date | number) {\r\n if (!Date.isDate(date)) {\r\n this.pMaxDate = null;\r\n } else {\r\n this.pMaxDate = Date.toFormat(date, 'yyyy/MM/dd HH:mm'); // this.datePipe.transform(date, 'yyyy/MM/dd HH:mm');\r\n }\r\n this.setOption();\r\n }\r\n @Input() validator: (value: any) => string | Promise<string>;\r\n @Output() sdChange = new EventEmitter();\r\n date: string;\r\n\r\n @Input() set model(val: any) {\r\n if (!Date.isDate(val)) {\r\n this.pDate = null;\r\n } else {\r\n if (this.type === 'datetime') {\r\n this.pDate = Date.toFormat(val, 'dd/MM/yyyy HH:mm');\r\n } else if (this.type === 'date') {\r\n this.pDate = Date.toFormat(val, 'dd/MM/yyyy');\r\n } else {\r\n this.pDate = Date.toFormat(val, 'HH:mm');\r\n }\r\n }\r\n if (this.initialized) {\r\n this.onChanges();\r\n }\r\n this.ref.detectChanges();\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n\r\n @ViewChild('control') control: ElementRef;\r\n @ViewChild('formModel') formModel: NgModel;\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.form?.removeControl(this.formModel);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.form?.addControl(this.formModel);\r\n this.onChanges();\r\n this.initialized = true;\r\n this.setOption();\r\n this.ref.detectChanges();\r\n }\r\n\r\n onFocus = () => {\r\n if (this.isMobileOrTablet) {\r\n $(this.control.nativeElement).trigger('blur');\r\n }\r\n }\r\n\r\n private onChanges = () => {\r\n this.date = this.pDate;\r\n }\r\n\r\n private setOption() {\r\n if (this.initialized) {\r\n ($(this.control.nativeElement) as any).datetimepicker({\r\n datepicker: this.type === 'datetime' || this.type === 'date',\r\n timepicker: this.type === 'datetime' || this.type === 'time',\r\n format: this.type === 'datetime' ? 'd/m/Y H:i' : (this.type === 'date' ? 'd/m/Y' : 'H:i'),\r\n step: 15,\r\n minDate: this.pMinDate || undefined,\r\n maxDate: this.pMaxDate || undefined,\r\n scrollMonth: false,\r\n scrollTime: false,\r\n scrollInput: false,\r\n onChangeDateTime: (date: any) => {\r\n if (!date && !this.date) {\r\n return;\r\n }\r\n if (this.type === 'datetime') {\r\n date = Date.toFormat(date, 'dd/MM/yyyy HH:mm');\r\n } else if (this.type === 'time') {\r\n date = Date.toFormat(date, 'HH:mm');\r\n } else {\r\n date = Date.toFormat(date, 'dd/MM/yyyy');\r\n }\r\n if (!this.equal(date, this.date)) {\r\n this.model = this.parse(date);\r\n this.modelChange.emit(this.parse(date));\r\n this.sdChange.emit(this.parse(date));\r\n }\r\n this.ref.detectChanges();\r\n }\r\n });\r\n }\r\n }\r\n\r\n private parse(date: any) {\r\n if (this.type === 'date') {\r\n return Date.parseFrom(date, 'dd/MM/yyyy');\r\n } else if (this.type === 'time') {\r\n return Date.parseFrom(date, 'HH:mm');\r\n }\r\n return Date.parseFrom(date, 'dd/MM/yyyy HH:mm');\r\n }\r\n private equal(date1: any, date2: any) {\r\n return Date.equal(this.parse(date1), this.parse(date2));\r\n }\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n ChangeDetectorRef,\r\n EventEmitter,\r\n Output,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'sd-ckeditor-control',\r\n templateUrl: './ckeditor-control.component.html',\r\n styleUrls: [\r\n './ckeditor-control.component.css',\r\n ],\r\n})\r\nexport class CkeditorControlComponent implements OnInit {\r\n @Input() label: string;\r\n @Input() disabled = false;\r\n @Input() required = false;\r\n @Input() set model(value: string) {\r\n this.cModel = value;\r\n this.ref.detectChanges();\r\n }\r\n @Input() set config(value: any) {\r\n this.cConfig = value;\r\n this.ref.detectChanges();\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n // tslint:disable-next-line: no-output-native\r\n @Output() change = new EventEmitter();\r\n @Output() sdChange = new EventEmitter();\r\n cModel: string;\r\n cConfig: any;\r\n editorUrl = '../../assets/ckeditor/ckeditor.js';\r\n\r\n constructor(private ref: ChangeDetectorRef, private sanitizer: DomSanitizer) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onChange(value: any) {\r\n this.model = value;\r\n this.modelChange.emit(value);\r\n this.change.emit(value);\r\n this.sdChange.emit(value);\r\n }\r\n}\r\n","import { Directive, Input } from '@angular/core';\r\nimport { NG_VALIDATORS, Validator, ValidationErrors, AbstractControl } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[sdMinDate]',\r\n providers: [{ provide: NG_VALIDATORS, useExisting: SdMinDateValidator, multi: true }]\r\n})\r\nexport class SdMinDateValidator implements Validator {\r\n @Input('sdMinDate') minDate: string | Date;\r\n validate(c: AbstractControl): ValidationErrors {\r\n const date = c.value || null;\r\n const minDate = this.minDate || null;\r\n if (!date) {\r\n return null;\r\n }\r\n if (!minDate) {\r\n return null;\r\n }\r\n if (new Date(Date.parseFrom(date, 'dd/MM/yyyy HH:mm')).getTime() < new Date(minDate).getTime()) {\r\n return {\r\n minDate: true\r\n };\r\n }\r\n return null;\r\n }\r\n}\r\n","import { Directive, Input } from '@angular/core';\r\nimport { NG_VALIDATORS, Validator, ValidationErrors, AbstractControl } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[sdMaxDate]',\r\n providers: [{ provide: NG_VALIDATORS, useExisting: SdMaxDateValidator, multi: true }]\r\n})\r\nexport class SdMaxDateValidator implements Validator {\r\n @Input('sdMaxDate') maxDate: string | Date;\r\n validate(c: AbstractControl): ValidationErrors {\r\n const date = c.value || null;\r\n const maxDate = this.maxDate || null;\r\n if (!date) {\r\n return null;\r\n }\r\n if (!maxDate) {\r\n return null;\r\n }\r\n if (new Date(Date.parseFrom(date, 'dd/MM/yyyy HH:mm')).getTime() > new Date(maxDate).getTime()) {\r\n return {\r\n maxDate: true\r\n };\r\n }\r\n return null;\r\n }\r\n}\r\n","import { Directive, Input } from '@angular/core';\r\nimport { ValidationErrors, AbstractControl, AsyncValidator, NG_ASYNC_VALIDATORS } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[sdCustomValidator]',\r\n providers: [{ provide: NG_ASYNC_VALIDATORS, useExisting: SdCustomValidator, multi: true }]\r\n})\r\nexport class SdCustomValidator implements AsyncValidator {\r\n @Input('sdCustomValidator') func: (value: any) => string | Promise<string>;\r\n async validate(c: AbstractControl): Promise<ValidationErrors> {\r\n const value = c.value || null;\r\n if (this.func && typeof (this.func) === 'function') {\r\n const result = this.func(value);\r\n if (result instanceof Promise) {\r\n const message = await result;\r\n if (message) {\r\n return {\r\n customValidator: message\r\n };\r\n }\r\n return null;\r\n }\r\n if (result) {\r\n return {\r\n customValidator: result\r\n };\r\n }\r\n return null;\r\n }\r\n return null;\r\n }\r\n}\r\n","import { Directive, Input } from '@angular/core';\r\nimport { ValidationErrors, AbstractControl, Validator, NG_VALIDATORS } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[sdChipMinItem]',\r\n providers: [{ provide: NG_VALIDATORS, useExisting: SdChipMinItemValidator, multi: true }]\r\n})\r\nexport class SdChipMinItemValidator implements Validator {\r\n @Input('sdChipMinItem') func: () => string;\r\n validate(c: AbstractControl): ValidationErrors {\r\n if (this.func && typeof (this.func) === 'function') {\r\n const result = this.func();\r\n if (result) {\r\n return {\r\n minItem: result\r\n };\r\n }\r\n return null;\r\n }\r\n return null;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule, DatePipe, DecimalPipe } from '@angular/common';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { CKEditorModule } from 'ckeditor4-angular';\r\nimport { MaterialModule } from './material.module';\r\nimport { DeviceDetectorModule } from 'ngx-device-detector';\r\n\r\nimport { SdDatePipe } from './pipes/sd-date.pipe';\r\nimport { SdServiceModule } from '@sd-angular/core/service';\r\nimport { SdChartModule } from '@sd-angular/core/chart';\r\nimport { SdGridMaterialModule } from '@sd-angular/core/grid-material';\r\nimport { SdEditorModule } from '@sd-angular/core/editor';\r\nimport { SdKonvaModule } from '@sd-angular/core/konva';\r\nimport { DatePickerControlComponent } from './controls/date-picker-control/date-picker-control.component';\r\nimport { CkeditorControlComponent } from './controls/ckeditor-control/ckeditor-control.component';\r\nimport { SdMinDateValidator } from './validators/min-date.validator';\r\nimport { SdMaxDateValidator } from './validators/max-date.validator';\r\nimport { SdCustomValidator } from './validators/custom.validator';\r\nimport { SdChipMinItemValidator } from './validators/chip-min-item.validator';\r\nimport { SdUploadExcelModule } from '@sd-angular/core/upload-excel';\r\nimport { SdGridModule } from '@sd-angular/core/grid';\r\nimport { SdFormModule } from '@sd-angular/core/form';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n HttpClientModule,\r\n MaterialModule,\r\n CKEditorModule,\r\n DeviceDetectorModule.forRoot(),\r\n SdChartModule,\r\n SdKonvaModule,\r\n SdGridMaterialModule,\r\n SdUploadExcelModule,\r\n SdGridModule,\r\n SdFormModule,\r\n SdServiceModule\r\n ],\r\n declarations: [\r\n DatePickerControlComponent,\r\n CkeditorControlComponent,\r\n // // Pipes\r\n SdDatePipe,\r\n // Validators\r\n SdMinDateValidator,\r\n SdMaxDateValidator,\r\n SdCustomValidator,\r\n SdChipMinItemValidator\r\n ],\r\n exports: [\r\n SdChartModule,\r\n SdKonvaModule,\r\n SdGridMaterialModule,\r\n SdEditorModule,\r\n SdUploadExcelModule,\r\n SdGridModule,\r\n SdFormModule,\r\n SdServiceModule,\r\n MaterialModule,\r\n // Controls\r\n DatePickerControlComponent,\r\n CkeditorControlComponent\r\n ],\r\n providers: [\r\n DatePipe,\r\n DecimalPipe\r\n ]\r\n})\r\nexport class SdCoreModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["uuid.v4"],"mappings":"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"}
|
package/form/src/public-api.d.ts
CHANGED