zek 15.2.1 → 16.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/{esm2020 → esm2022}/lib/components/args.mjs +1 -1
- package/esm2022/lib/components/base.component.mjs +97 -0
- package/esm2022/lib/components/core-ui.component.mjs +195 -0
- package/esm2022/lib/components/core.component.mjs +40 -0
- package/esm2022/lib/components/edit-base.component.mjs +237 -0
- package/{esm2020 → esm2022}/lib/components/index.mjs +7 -7
- package/esm2022/lib/components/list-base.component.mjs +259 -0
- package/{esm2020 → esm2022}/lib/components/types.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/alert-type.mjs +11 -11
- package/{esm2020 → esm2022}/lib/models/captcha.model.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/ctor.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/edit-base.model.mjs +2 -2
- package/{esm2020 → esm2022}/lib/models/file.model.mjs +19 -19
- package/{esm2020 → esm2022}/lib/models/filter.model.mjs +11 -11
- package/{esm2020 → esm2022}/lib/models/gender.model.mjs +5 -5
- package/{esm2020 → esm2022}/lib/models/index.mjs +17 -17
- package/{esm2020 → esm2022}/lib/models/key-pair.model.mjs +13 -13
- package/{esm2020 → esm2022}/lib/models/list-base.model.mjs +2 -2
- package/{esm2020 → esm2022}/lib/models/login.model.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/month.model.mjs +15 -15
- package/{esm2020 → esm2022}/lib/models/nav.model.mjs +1 -1
- package/esm2022/lib/models/pager.model.mjs +43 -0
- package/{esm2020 → esm2022}/lib/models/print.model.mjs +5 -5
- package/{esm2020 → esm2022}/lib/models/tree.model.mjs +3 -3
- package/{esm2020 → esm2022}/lib/models/valid-event-args.model.mjs +5 -5
- package/esm2022/lib/modules/age/age.module.mjs +23 -0
- package/esm2022/lib/modules/age/age.pipe.mjs +22 -0
- package/{esm2020 → esm2022}/lib/modules/age/index.mjs +2 -2
- package/esm2022/lib/modules/alert/alert/alert.mjs +55 -0
- package/esm2022/lib/modules/alert/alert.module.mjs +36 -0
- package/{esm2020 → esm2022}/lib/modules/alert/index.mjs +5 -5
- package/esm2022/lib/modules/alert/toast/toast.mjs +110 -0
- package/esm2022/lib/modules/alert/validation/validation.mjs +86 -0
- package/esm2022/lib/modules/autocomplete/autocomplete.directive.mjs +25 -0
- package/esm2022/lib/modules/autocomplete/autocomplete.module.mjs +23 -0
- package/{esm2020 → esm2022}/lib/modules/autocomplete/index.mjs +2 -2
- package/esm2022/lib/modules/bb/bb-modal-base.component.mjs +75 -0
- package/esm2022/lib/modules/bb/bb-modal-toolbar.mjs +45 -0
- package/esm2022/lib/modules/bb/bb.component.mjs +189 -0
- package/esm2022/lib/modules/bb/bb.module.mjs +38 -0
- package/{esm2020 → esm2022}/lib/modules/bb/index.mjs +4 -4
- package/esm2022/lib/modules/callback/callback.module.mjs +23 -0
- package/esm2022/lib/modules/callback/callback.pipe.mjs +23 -0
- package/{esm2020 → esm2022}/lib/modules/callback/index.mjs +2 -2
- package/esm2022/lib/modules/card/card/card.component.mjs +48 -0
- package/esm2022/lib/modules/card/card.module.mjs +19 -0
- package/{esm2020 → esm2022}/lib/modules/card/index.mjs +2 -2
- package/esm2022/lib/modules/date-ago/date-ago.pipe.mjs +47 -0
- package/esm2022/lib/modules/date-ago/date.module.mjs +23 -0
- package/{esm2020 → esm2022}/lib/modules/date-ago/index.mjs +2 -2
- package/esm2022/lib/modules/datepicker/date-value-accessor.mjs +189 -0
- package/esm2022/lib/modules/datepicker/datepicker.module.mjs +32 -0
- package/{esm2020 → esm2022}/lib/modules/datepicker/index.mjs +2 -2
- package/esm2022/lib/modules/edit-toolbar/edit-toolbar.component.mjs +75 -0
- package/esm2022/lib/modules/edit-toolbar/edit-toolbar.module.mjs +27 -0
- package/{esm2020 → esm2022}/lib/modules/edit-toolbar/index.mjs +2 -2
- package/esm2022/lib/modules/file/file-size.pipe.mjs +48 -0
- package/esm2022/lib/modules/file/file.module.mjs +23 -0
- package/{esm2020 → esm2022}/lib/modules/file/index.mjs +2 -2
- package/esm2022/lib/modules/file-viewer/file-viewer.mjs +52 -0
- package/{esm2020 → esm2022}/lib/modules/file-viewer/index.mjs +2 -2
- package/esm2022/lib/modules/file-viewer/module.mjs +31 -0
- package/esm2022/lib/modules/grid-toolbar/grid-toolbar/grid-toolbar.component.mjs +146 -0
- package/esm2022/lib/modules/grid-toolbar/grid-toolbar-bar/grid-toolbar-bar.component.mjs +15 -0
- package/esm2022/lib/modules/grid-toolbar/grid-toolbar.module.mjs +34 -0
- package/{esm2020 → esm2022}/lib/modules/grid-toolbar/index.mjs +3 -3
- package/{esm2020 → esm2022}/lib/modules/index.mjs +32 -32
- package/{esm2020 → esm2022}/lib/modules/list-toolbar/index.mjs +2 -2
- package/esm2022/lib/modules/list-toolbar/list-toolbar.component.mjs +110 -0
- package/esm2022/lib/modules/list-toolbar/list-toolbar.module.mjs +25 -0
- package/{esm2020 → esm2022}/lib/modules/loading/index.mjs +3 -3
- package/esm2022/lib/modules/loading/loading-interceptor.mjs +80 -0
- package/esm2022/lib/modules/loading/loading.component.mjs +36 -0
- package/esm2022/lib/modules/loading/loading.module.mjs +33 -0
- package/esm2022/lib/modules/modal/filter-modal/filter-modal.component.mjs +27 -0
- package/{esm2020 → esm2022}/lib/modules/modal/index.mjs +4 -4
- package/esm2022/lib/modules/modal/modal/modal.component.mjs +313 -0
- package/esm2022/lib/modules/modal/modal.module.mjs +63 -0
- package/esm2022/lib/modules/modal/sum-modal/sum-modal.component.mjs +28 -0
- package/{esm2020 → esm2022}/lib/modules/page-title/index.mjs +2 -2
- package/esm2022/lib/modules/page-title/page-title.component.mjs +32 -0
- package/esm2022/lib/modules/page-title/page-title.module.mjs +27 -0
- package/{esm2020 → esm2022}/lib/modules/pager/index.mjs +2 -2
- package/esm2022/lib/modules/pager/pager/pager.component.mjs +51 -0
- package/esm2022/lib/modules/pager/pager.module.mjs +27 -0
- package/{esm2020 → esm2022}/lib/modules/password/index.mjs +2 -2
- package/{esm2020 → esm2022}/lib/modules/password/password.component.mjs +48 -47
- package/esm2022/lib/modules/password/password.module.mjs +31 -0
- package/{esm2020 → esm2022}/lib/modules/progress/index.mjs +2 -2
- package/esm2022/lib/modules/progress/module.mjs +27 -0
- package/esm2022/lib/modules/progress/progress.mjs +98 -0
- package/{esm2020 → esm2022}/lib/modules/radio/index.mjs +2 -2
- package/esm2022/lib/modules/radio/radio-button.component.mjs +135 -0
- package/esm2022/lib/modules/radio/radio.module.mjs +23 -0
- package/{esm2020 → esm2022}/lib/modules/readonly/index.mjs +2 -2
- package/esm2022/lib/modules/readonly/readonly.directive.mjs +26 -0
- package/esm2022/lib/modules/readonly/readonly.module.mjs +23 -0
- package/{esm2020 → esm2022}/lib/modules/recaptcha/index.mjs +3 -3
- package/{esm2020 → esm2022}/lib/modules/recaptcha/loader.mjs +12 -12
- package/{esm2020 → esm2022}/lib/modules/recaptcha/recaptcha.model.mjs +1 -1
- package/esm2022/lib/modules/recaptcha/recaptcha.module.mjs +33 -0
- package/esm2022/lib/modules/recaptcha/recaptcha.service.mjs +120 -0
- package/{esm2020 → esm2022}/lib/modules/safe/index.mjs +2 -2
- package/esm2022/lib/modules/safe/safe.module.mjs +21 -0
- package/esm2022/lib/modules/safe/safe.pipe.mjs +38 -0
- package/{esm2020 → esm2022}/lib/modules/select/index.mjs +2 -2
- package/{esm2020 → esm2022}/lib/modules/select/model.mjs +3 -3
- package/esm2022/lib/modules/select/module.mjs +29 -0
- package/esm2022/lib/modules/select/select.mjs +199 -0
- package/{esm2020 → esm2022}/lib/modules/select2/index.mjs +2 -2
- package/esm2022/lib/modules/select2/select2.component.mjs +171 -0
- package/esm2022/lib/modules/select2/select2.module.mjs +29 -0
- package/{esm2020 → esm2022}/lib/modules/select2-multiple/index.mjs +2 -2
- package/esm2022/lib/modules/select2-multiple/select2-multiple.component.mjs +133 -0
- package/esm2022/lib/modules/select2-multiple/select2-multiple.module.mjs +29 -0
- package/{esm2020 → esm2022}/lib/modules/sort/index.mjs +3 -3
- package/esm2022/lib/modules/sort/sort-button-group/sort-button-group.component.mjs +80 -0
- package/esm2022/lib/modules/sort/sort.directive.mjs +118 -0
- package/esm2022/lib/modules/sort/sort.module.mjs +34 -0
- package/{esm2020 → esm2022}/lib/modules/time/index.mjs +3 -3
- package/esm2022/lib/modules/time/time.module.mjs +28 -0
- package/esm2022/lib/modules/time/time.pipe.mjs +41 -0
- package/esm2022/lib/modules/time/timer-service.mjs +90 -0
- package/{esm2020 → esm2022}/lib/modules/validator/field-validator.mjs +21 -20
- package/{esm2020 → esm2022}/lib/modules/validator/index.mjs +2 -2
- package/esm2022/lib/modules/validator/validator.module.mjs +27 -0
- package/esm2022/lib/modules/validators/directive.mjs +76 -0
- package/{esm2020 → esm2022}/lib/modules/validators/index.mjs +3 -3
- package/esm2022/lib/modules/validators/module.mjs +23 -0
- package/{esm2020 → esm2022}/lib/modules/validators/validator.mjs +71 -71
- package/{esm2020 → esm2022}/lib/modules/wizard/index.mjs +3 -3
- package/esm2022/lib/modules/wizard/wizard/wizard.component.mjs +66 -0
- package/esm2022/lib/modules/wizard/wizard.module.mjs +34 -0
- package/esm2022/lib/modules/wizard/wizard2/wizard2.component.mjs +14 -0
- package/esm2022/lib/services/alert.service.mjs +77 -0
- package/esm2022/lib/services/auth-guard.service.mjs +29 -0
- package/esm2022/lib/services/auth.service.mjs +204 -0
- package/{esm2020 → esm2022}/lib/services/base.service.mjs +7 -7
- package/{esm2020 → esm2022}/lib/services/crud.service.mjs +42 -42
- package/esm2022/lib/services/http-error-handler.service.mjs +142 -0
- package/{esm2020 → esm2022}/lib/services/index.mjs +6 -6
- package/esm2022/lib/services/web.api.mjs +127 -0
- package/{esm2020 → esm2022}/lib/tokens.mjs +5 -5
- package/{esm2020 → esm2022}/lib/utils/array-helper.mjs +113 -113
- package/{esm2020 → esm2022}/lib/utils/base64-helper.mjs +8 -8
- package/{esm2020 → esm2022}/lib/utils/bitwise-helper.mjs +13 -13
- package/{esm2020 → esm2022}/lib/utils/bootstrap.helper.mjs +126 -126
- package/{esm2020 → esm2022}/lib/utils/convert.mjs +34 -34
- package/{esm2020 → esm2022}/lib/utils/css-helper.mjs +40 -40
- package/esm2022/lib/utils/date-helper.mjs +236 -0
- package/{esm2020 → esm2022}/lib/utils/file.helper.mjs +25 -25
- package/{esm2020 → esm2022}/lib/utils/filter-helper.mjs +12 -12
- package/{esm2020 → esm2022}/lib/utils/handler.mjs +23 -23
- package/{esm2020 → esm2022}/lib/utils/html-helper.mjs +65 -65
- package/{esm2020 → esm2022}/lib/utils/index.mjs +22 -22
- package/{esm2020 → esm2022}/lib/utils/math-helper.mjs +6 -6
- package/{esm2020 → esm2022}/lib/utils/object-helper.mjs +63 -63
- package/{esm2020 → esm2022}/lib/utils/overlap-helper.mjs +72 -72
- package/{esm2020 → esm2022}/lib/utils/pager-helper.mjs +62 -62
- package/{esm2020 → esm2022}/lib/utils/random-helper.mjs +10 -10
- package/{esm2020 → esm2022}/lib/utils/storage-helper.mjs +27 -27
- package/{esm2020 → esm2022}/lib/utils/string-helper.mjs +31 -31
- package/{esm2020 → esm2022}/lib/utils/thenBy.mjs +40 -40
- package/{esm2020 → esm2022}/lib/utils/time-helper.mjs +46 -46
- package/{esm2020 → esm2022}/lib/utils/url-helper.mjs +25 -25
- package/esm2022/lib/utils/validation-helper.mjs +11 -0
- package/esm2022/lib/zek.module.mjs +34 -0
- package/{esm2020 → esm2022}/public-api.mjs +10 -10
- package/{esm2020 → esm2022}/zek.mjs +4 -4
- package/{fesm2020 → fesm2022}/zek.mjs +6431 -6415
- package/fesm2022/zek.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/components/args.d.ts +5 -5
- package/lib/components/base.component.d.ts +24 -24
- package/lib/components/core-ui.component.d.ts +86 -86
- package/lib/components/core.component.d.ts +15 -15
- package/lib/components/edit-base.component.d.ts +59 -59
- package/lib/components/index.d.ts +7 -7
- package/lib/components/list-base.component.d.ts +61 -61
- package/lib/components/types.d.ts +3 -3
- package/lib/models/alert-type.d.ts +10 -10
- package/lib/models/captcha.model.d.ts +3 -3
- package/lib/models/ctor.d.ts +3 -3
- package/lib/models/edit-base.model.d.ts +5 -5
- package/lib/models/file.model.d.ts +14 -14
- package/lib/models/filter.model.d.ts +9 -9
- package/lib/models/gender.model.d.ts +4 -4
- package/lib/models/index.d.ts +16 -16
- package/lib/models/key-pair.model.d.ts +14 -14
- package/lib/models/list-base.model.d.ts +4 -4
- package/lib/models/login.model.d.ts +28 -28
- package/lib/models/month.model.d.ts +14 -14
- package/lib/models/nav.model.d.ts +19 -19
- package/lib/models/pager.model.d.ts +32 -21
- package/lib/models/print.model.d.ts +4 -4
- package/lib/models/tree.model.d.ts +8 -8
- package/lib/models/valid-event-args.model.d.ts +3 -3
- package/lib/modules/age/age.module.d.ts +8 -8
- package/lib/modules/age/age.pipe.d.ts +7 -7
- package/lib/modules/age/index.d.ts +2 -2
- package/lib/modules/alert/alert/alert.d.ts +16 -16
- package/lib/modules/alert/alert.module.d.ts +10 -10
- package/lib/modules/alert/index.d.ts +5 -5
- package/lib/modules/alert/toast/toast.d.ts +20 -20
- package/lib/modules/alert/validation/validation.d.ts +17 -17
- package/lib/modules/autocomplete/autocomplete.directive.d.ts +11 -11
- package/lib/modules/autocomplete/autocomplete.module.d.ts +8 -8
- package/lib/modules/autocomplete/index.d.ts +2 -2
- package/lib/modules/bb/bb-modal-base.component.d.ts +26 -26
- package/lib/modules/bb/bb-modal-toolbar.d.ts +16 -16
- package/lib/modules/bb/bb.component.d.ts +52 -52
- package/lib/modules/bb/bb.module.d.ts +11 -11
- package/lib/modules/bb/index.d.ts +4 -4
- package/lib/modules/callback/callback.module.d.ts +8 -8
- package/lib/modules/callback/callback.pipe.d.ts +7 -7
- package/lib/modules/callback/index.d.ts +2 -2
- package/lib/modules/card/card/card.component.d.ts +21 -21
- package/lib/modules/card/card.module.d.ts +8 -8
- package/lib/modules/card/index.d.ts +2 -2
- package/lib/modules/date-ago/date-ago.pipe.d.ts +7 -7
- package/lib/modules/date-ago/date.module.d.ts +8 -8
- package/lib/modules/date-ago/index.d.ts +2 -2
- package/lib/modules/datepicker/date-value-accessor.d.ts +24 -24
- package/lib/modules/datepicker/datepicker.module.d.ts +14 -14
- package/lib/modules/datepicker/index.d.ts +2 -2
- package/lib/modules/edit-toolbar/edit-toolbar.component.d.ts +25 -25
- package/lib/modules/edit-toolbar/edit-toolbar.module.d.ts +9 -9
- package/lib/modules/edit-toolbar/index.d.ts +2 -2
- package/lib/modules/file/file-size.pipe.d.ts +8 -8
- package/lib/modules/file/file.module.d.ts +8 -8
- package/lib/modules/file/index.d.ts +2 -2
- package/lib/modules/file-viewer/file-viewer.d.ts +10 -10
- package/lib/modules/file-viewer/index.d.ts +2 -2
- package/lib/modules/file-viewer/module.d.ts +10 -10
- package/lib/modules/grid-toolbar/grid-toolbar/grid-toolbar.component.d.ts +50 -50
- package/lib/modules/grid-toolbar/grid-toolbar-bar/grid-toolbar-bar.component.d.ts +6 -6
- package/lib/modules/grid-toolbar/grid-toolbar.module.d.ts +10 -10
- package/lib/modules/grid-toolbar/index.d.ts +3 -3
- package/lib/modules/index.d.ts +31 -31
- package/lib/modules/list-toolbar/index.d.ts +2 -2
- package/lib/modules/list-toolbar/list-toolbar.component.d.ts +41 -41
- package/lib/modules/list-toolbar/list-toolbar.module.d.ts +9 -9
- package/lib/modules/loading/index.d.ts +2 -2
- package/lib/modules/loading/loading-interceptor.d.ts +21 -21
- package/lib/modules/loading/loading.component.d.ts +13 -13
- package/lib/modules/loading/loading.module.d.ts +8 -8
- package/lib/modules/modal/filter-modal/filter-modal.component.d.ts +10 -10
- package/lib/modules/modal/index.d.ts +4 -4
- package/lib/modules/modal/modal/modal.component.d.ts +90 -90
- package/lib/modules/modal/modal.module.d.ts +12 -12
- package/lib/modules/modal/sum-modal/sum-modal.component.d.ts +8 -8
- package/lib/modules/page-title/index.d.ts +2 -2
- package/lib/modules/page-title/page-title.component.d.ts +12 -12
- package/lib/modules/page-title/page-title.module.d.ts +9 -9
- package/lib/modules/pager/index.d.ts +2 -2
- package/lib/modules/pager/pager/pager.component.d.ts +17 -17
- package/lib/modules/pager/pager.module.d.ts +9 -9
- package/lib/modules/password/index.d.ts +2 -2
- package/lib/modules/password/password.component.d.ts +18 -18
- package/lib/modules/password/password.module.d.ts +10 -10
- package/lib/modules/progress/index.d.ts +2 -2
- package/lib/modules/progress/module.d.ts +9 -9
- package/lib/modules/progress/progress.d.ts +33 -33
- package/lib/modules/radio/index.d.ts +2 -2
- package/lib/modules/radio/radio-button.component.d.ts +44 -44
- package/lib/modules/radio/radio.module.d.ts +8 -8
- package/lib/modules/readonly/index.d.ts +2 -2
- package/lib/modules/readonly/readonly.directive.d.ts +8 -8
- package/lib/modules/readonly/readonly.module.d.ts +8 -8
- package/lib/modules/recaptcha/index.d.ts +3 -3
- package/lib/modules/recaptcha/loader.d.ts +12 -12
- package/lib/modules/recaptcha/recaptcha.model.d.ts +109 -109
- package/lib/modules/recaptcha/recaptcha.module.d.ts +10 -10
- package/lib/modules/recaptcha/recaptcha.service.d.ts +60 -60
- package/lib/modules/safe/index.d.ts +2 -2
- package/lib/modules/safe/safe.module.d.ts +8 -8
- package/lib/modules/safe/safe.pipe.d.ts +16 -16
- package/lib/modules/select/index.d.ts +2 -2
- package/lib/modules/select/model.d.ts +5 -5
- package/lib/modules/select/module.d.ts +9 -9
- package/lib/modules/select/select.d.ts +42 -42
- package/lib/modules/select2/index.d.ts +2 -2
- package/lib/modules/select2/select2.component.d.ts +31 -31
- package/lib/modules/select2/select2.module.d.ts +9 -9
- package/lib/modules/select2-multiple/index.d.ts +2 -2
- package/lib/modules/select2-multiple/select2-multiple.component.d.ts +30 -30
- package/lib/modules/select2-multiple/select2-multiple.module.d.ts +9 -9
- package/lib/modules/sort/index.d.ts +3 -3
- package/lib/modules/sort/sort-button-group/sort-button-group.component.d.ts +34 -34
- package/lib/modules/sort/sort.directive.d.ts +34 -34
- package/lib/modules/sort/sort.module.d.ts +10 -10
- package/lib/modules/time/index.d.ts +3 -3
- package/lib/modules/time/time.module.d.ts +8 -8
- package/lib/modules/time/time.pipe.d.ts +11 -11
- package/lib/modules/time/timer-service.d.ts +21 -21
- package/lib/modules/validator/field-validator.d.ts +7 -7
- package/lib/modules/validator/index.d.ts +2 -2
- package/lib/modules/validator/validator.module.d.ts +9 -9
- package/lib/modules/validators/directive.d.ts +67 -67
- package/lib/modules/validators/index.d.ts +3 -3
- package/lib/modules/validators/module.d.ts +8 -8
- package/lib/modules/validators/validator.d.ts +33 -33
- package/lib/modules/wizard/index.d.ts +3 -3
- package/lib/modules/wizard/wizard/wizard.component.d.ts +19 -19
- package/lib/modules/wizard/wizard.module.d.ts +10 -10
- package/lib/modules/wizard/wizard2/wizard2.component.d.ts +6 -6
- package/lib/services/alert.service.d.ts +33 -33
- package/lib/services/auth-guard.service.d.ts +12 -12
- package/lib/services/auth.service.d.ts +30 -30
- package/lib/services/base.service.d.ts +8 -8
- package/lib/services/crud.service.d.ts +32 -32
- package/lib/services/http-error-handler.service.d.ts +39 -39
- package/lib/services/index.d.ts +6 -6
- package/lib/services/web.api.d.ts +31 -31
- package/lib/tokens.d.ts +5 -5
- package/lib/utils/array-helper.d.ts +14 -14
- package/lib/utils/base64-helper.d.ts +4 -4
- package/lib/utils/bitwise-helper.d.ts +4 -4
- package/lib/utils/bootstrap.helper.d.ts +25 -25
- package/lib/utils/convert.d.ts +7 -7
- package/lib/utils/css-helper.d.ts +5 -5
- package/lib/utils/date-helper.d.ts +43 -43
- package/lib/utils/file.helper.d.ts +3 -3
- package/lib/utils/filter-helper.d.ts +3 -3
- package/lib/utils/handler.d.ts +4 -4
- package/lib/utils/html-helper.d.ts +7 -7
- package/lib/utils/index.d.ts +22 -22
- package/lib/utils/math-helper.d.ts +3 -3
- package/lib/utils/object-helper.d.ts +13 -13
- package/lib/utils/overlap-helper.d.ts +22 -22
- package/lib/utils/pager-helper.d.ts +4 -4
- package/lib/utils/random-helper.d.ts +3 -3
- package/lib/utils/storage-helper.d.ts +4 -4
- package/lib/utils/string-helper.d.ts +8 -8
- package/lib/utils/thenBy.d.ts +4 -4
- package/lib/utils/time-helper.d.ts +7 -7
- package/lib/utils/url-helper.d.ts +5 -5
- package/lib/utils/validation-helper.d.ts +4 -4
- package/lib/zek.module.d.ts +14 -14
- package/package.json +7 -13
- package/public-api.d.ts +7 -7
- package/esm2020/lib/components/base.component.mjs +0 -96
- package/esm2020/lib/components/core-ui.component.mjs +0 -194
- package/esm2020/lib/components/core.component.mjs +0 -39
- package/esm2020/lib/components/edit-base.component.mjs +0 -234
- package/esm2020/lib/components/list-base.component.mjs +0 -253
- package/esm2020/lib/models/pager.model.mjs +0 -32
- package/esm2020/lib/modules/age/age.module.mjs +0 -22
- package/esm2020/lib/modules/age/age.pipe.mjs +0 -21
- package/esm2020/lib/modules/alert/alert/alert.mjs +0 -54
- package/esm2020/lib/modules/alert/alert.module.mjs +0 -35
- package/esm2020/lib/modules/alert/toast/toast.mjs +0 -109
- package/esm2020/lib/modules/alert/validation/validation.mjs +0 -85
- package/esm2020/lib/modules/autocomplete/autocomplete.directive.mjs +0 -24
- package/esm2020/lib/modules/autocomplete/autocomplete.module.mjs +0 -22
- package/esm2020/lib/modules/bb/bb-modal-base.component.mjs +0 -74
- package/esm2020/lib/modules/bb/bb-modal-toolbar.mjs +0 -44
- package/esm2020/lib/modules/bb/bb.component.mjs +0 -188
- package/esm2020/lib/modules/bb/bb.module.mjs +0 -37
- package/esm2020/lib/modules/callback/callback.module.mjs +0 -22
- package/esm2020/lib/modules/callback/callback.pipe.mjs +0 -22
- package/esm2020/lib/modules/card/card/card.component.mjs +0 -47
- package/esm2020/lib/modules/card/card.module.mjs +0 -18
- package/esm2020/lib/modules/date-ago/date-ago.pipe.mjs +0 -46
- package/esm2020/lib/modules/date-ago/date.module.mjs +0 -22
- package/esm2020/lib/modules/datepicker/date-value-accessor.mjs +0 -188
- package/esm2020/lib/modules/datepicker/datepicker.module.mjs +0 -31
- package/esm2020/lib/modules/edit-toolbar/edit-toolbar.component.mjs +0 -74
- package/esm2020/lib/modules/edit-toolbar/edit-toolbar.module.mjs +0 -26
- package/esm2020/lib/modules/file/file-size.pipe.mjs +0 -47
- package/esm2020/lib/modules/file/file.module.mjs +0 -22
- package/esm2020/lib/modules/file-viewer/file-viewer.mjs +0 -51
- package/esm2020/lib/modules/file-viewer/module.mjs +0 -30
- package/esm2020/lib/modules/grid-toolbar/grid-toolbar/grid-toolbar.component.mjs +0 -145
- package/esm2020/lib/modules/grid-toolbar/grid-toolbar-bar/grid-toolbar-bar.component.mjs +0 -14
- package/esm2020/lib/modules/grid-toolbar/grid-toolbar.module.mjs +0 -33
- package/esm2020/lib/modules/list-toolbar/list-toolbar.component.mjs +0 -109
- package/esm2020/lib/modules/list-toolbar/list-toolbar.module.mjs +0 -24
- package/esm2020/lib/modules/loading/loading-interceptor.mjs +0 -79
- package/esm2020/lib/modules/loading/loading.component.mjs +0 -35
- package/esm2020/lib/modules/loading/loading.module.mjs +0 -32
- package/esm2020/lib/modules/modal/filter-modal/filter-modal.component.mjs +0 -26
- package/esm2020/lib/modules/modal/modal/modal.component.mjs +0 -307
- package/esm2020/lib/modules/modal/modal.module.mjs +0 -62
- package/esm2020/lib/modules/modal/sum-modal/sum-modal.component.mjs +0 -27
- package/esm2020/lib/modules/page-title/page-title.component.mjs +0 -31
- package/esm2020/lib/modules/page-title/page-title.module.mjs +0 -26
- package/esm2020/lib/modules/pager/pager/pager.component.mjs +0 -50
- package/esm2020/lib/modules/pager/pager.module.mjs +0 -26
- package/esm2020/lib/modules/password/password.module.mjs +0 -30
- package/esm2020/lib/modules/progress/module.mjs +0 -26
- package/esm2020/lib/modules/progress/progress.mjs +0 -97
- package/esm2020/lib/modules/radio/radio-button.component.mjs +0 -134
- package/esm2020/lib/modules/radio/radio.module.mjs +0 -22
- package/esm2020/lib/modules/readonly/readonly.directive.mjs +0 -25
- package/esm2020/lib/modules/readonly/readonly.module.mjs +0 -22
- package/esm2020/lib/modules/recaptcha/recaptcha.module.mjs +0 -32
- package/esm2020/lib/modules/recaptcha/recaptcha.service.mjs +0 -119
- package/esm2020/lib/modules/safe/safe.module.mjs +0 -20
- package/esm2020/lib/modules/safe/safe.pipe.mjs +0 -37
- package/esm2020/lib/modules/select/module.mjs +0 -28
- package/esm2020/lib/modules/select/select.mjs +0 -198
- package/esm2020/lib/modules/select2/select2.component.mjs +0 -170
- package/esm2020/lib/modules/select2/select2.module.mjs +0 -28
- package/esm2020/lib/modules/select2-multiple/select2-multiple.component.mjs +0 -132
- package/esm2020/lib/modules/select2-multiple/select2-multiple.module.mjs +0 -28
- package/esm2020/lib/modules/sort/sort-button-group/sort-button-group.component.mjs +0 -79
- package/esm2020/lib/modules/sort/sort.directive.mjs +0 -117
- package/esm2020/lib/modules/sort/sort.module.mjs +0 -33
- package/esm2020/lib/modules/time/time.module.mjs +0 -27
- package/esm2020/lib/modules/time/time.pipe.mjs +0 -40
- package/esm2020/lib/modules/time/timer-service.mjs +0 -89
- package/esm2020/lib/modules/validator/validator.module.mjs +0 -26
- package/esm2020/lib/modules/validators/directive.mjs +0 -75
- package/esm2020/lib/modules/validators/module.mjs +0 -22
- package/esm2020/lib/modules/wizard/wizard/wizard.component.mjs +0 -65
- package/esm2020/lib/modules/wizard/wizard.module.mjs +0 -33
- package/esm2020/lib/modules/wizard/wizard2/wizard2.component.mjs +0 -13
- package/esm2020/lib/services/alert.service.mjs +0 -76
- package/esm2020/lib/services/auth-guard.service.mjs +0 -28
- package/esm2020/lib/services/auth.service.mjs +0 -203
- package/esm2020/lib/services/http-error-handler.service.mjs +0 -141
- package/esm2020/lib/services/web.api.mjs +0 -126
- package/esm2020/lib/utils/date-helper.mjs +0 -235
- package/esm2020/lib/utils/validation-helper.mjs +0 -10
- package/esm2020/lib/zek.module.mjs +0 -33
- package/fesm2015/zek.mjs +0 -6693
- package/fesm2015/zek.mjs.map +0 -1
- package/fesm2020/zek.mjs.map +0 -1
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
export class ObjectHelper {
|
|
2
|
-
static isDefined(value) {
|
|
3
|
-
return typeof value !== 'undefined' && value !== null;
|
|
4
|
-
}
|
|
5
|
-
static isObject(value) {
|
|
6
|
-
return this.isDefined(value) && typeof value === 'object';
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Check if the object is a string or array before evaluating the length attribute.
|
|
10
|
-
* This avoids falsely rejecting objects that contain a custom length attribute.
|
|
11
|
-
* For example, the object {id: 1, length: 0, width: 0} should not be returned as empty.
|
|
12
|
-
*/
|
|
13
|
-
static isEmptyValue(value) {
|
|
14
|
-
return !this.isDefined(value) || ((typeof value === 'string' || Array.isArray(value)) && value.length === 0);
|
|
15
|
-
}
|
|
16
|
-
static isEmpty(obj) {
|
|
17
|
-
if (!this.isDefined(obj))
|
|
18
|
-
return true;
|
|
19
|
-
// if (typeof obj === 'undefined' || obj === null)
|
|
20
|
-
// return true;
|
|
21
|
-
for (let prop in obj) {
|
|
22
|
-
let v = obj[prop];
|
|
23
|
-
if (!this.isEmptyValue(v))
|
|
24
|
-
return false;
|
|
25
|
-
// if (typeof (obj[prop]) !== undefined && obj[prop] !== null && obj[prop] !== '') {
|
|
26
|
-
// return false;
|
|
27
|
-
// }
|
|
28
|
-
}
|
|
29
|
-
return true;
|
|
30
|
-
}
|
|
31
|
-
static deleteNullKeys(val) {
|
|
32
|
-
if (!val)
|
|
33
|
-
return;
|
|
34
|
-
for (let key in val) {
|
|
35
|
-
let tmp = val[key];
|
|
36
|
-
if (tmp === undefined || tmp === null) {
|
|
37
|
-
delete val[key];
|
|
38
|
-
Object.keys;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
;
|
|
43
|
-
static deepCopy(value) {
|
|
44
|
-
if (!this.isObject(value))
|
|
45
|
-
return value;
|
|
46
|
-
let output = {};
|
|
47
|
-
if (Array.isArray(value)) {
|
|
48
|
-
output = value.map(x => this.deepCopy(x));
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
Object.keys(value).forEach((key) => {
|
|
52
|
-
const v = value[key];
|
|
53
|
-
if (this.isObject(v)) {
|
|
54
|
-
output[key] = this.deepCopy(v);
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
Object.assign(output, { [key]: v });
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
return output;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
1
|
+
export class ObjectHelper {
|
|
2
|
+
static isDefined(value) {
|
|
3
|
+
return typeof value !== 'undefined' && value !== null;
|
|
4
|
+
}
|
|
5
|
+
static isObject(value) {
|
|
6
|
+
return this.isDefined(value) && typeof value === 'object';
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Check if the object is a string or array before evaluating the length attribute.
|
|
10
|
+
* This avoids falsely rejecting objects that contain a custom length attribute.
|
|
11
|
+
* For example, the object {id: 1, length: 0, width: 0} should not be returned as empty.
|
|
12
|
+
*/
|
|
13
|
+
static isEmptyValue(value) {
|
|
14
|
+
return !this.isDefined(value) || ((typeof value === 'string' || Array.isArray(value)) && value.length === 0);
|
|
15
|
+
}
|
|
16
|
+
static isEmpty(obj) {
|
|
17
|
+
if (!this.isDefined(obj))
|
|
18
|
+
return true;
|
|
19
|
+
// if (typeof obj === 'undefined' || obj === null)
|
|
20
|
+
// return true;
|
|
21
|
+
for (let prop in obj) {
|
|
22
|
+
let v = obj[prop];
|
|
23
|
+
if (!this.isEmptyValue(v))
|
|
24
|
+
return false;
|
|
25
|
+
// if (typeof (obj[prop]) !== undefined && obj[prop] !== null && obj[prop] !== '') {
|
|
26
|
+
// return false;
|
|
27
|
+
// }
|
|
28
|
+
}
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
static deleteNullKeys(val) {
|
|
32
|
+
if (!val)
|
|
33
|
+
return;
|
|
34
|
+
for (let key in val) {
|
|
35
|
+
let tmp = val[key];
|
|
36
|
+
if (tmp === undefined || tmp === null) {
|
|
37
|
+
delete val[key];
|
|
38
|
+
Object.keys;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
;
|
|
43
|
+
static deepCopy(value) {
|
|
44
|
+
if (!this.isObject(value))
|
|
45
|
+
return value;
|
|
46
|
+
let output = {};
|
|
47
|
+
if (Array.isArray(value)) {
|
|
48
|
+
output = value.map(x => this.deepCopy(x));
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
Object.keys(value).forEach((key) => {
|
|
52
|
+
const v = value[key];
|
|
53
|
+
if (this.isObject(v)) {
|
|
54
|
+
output[key] = this.deepCopy(v);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
Object.assign(output, { [key]: v });
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
return output;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
64
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL3V0aWxzL29iamVjdC1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsTUFBTSxPQUFPLFlBQVk7SUFDckIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLE9BQU8sT0FBTyxLQUFLLEtBQUssV0FBVyxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUM7SUFDMUQsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBVTtRQUN0QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDO0lBQzlELENBQUM7SUFHRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFVO1FBQzFCLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDakgsQ0FBQztJQUdELE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBUTtRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUM7WUFDcEIsT0FBTyxJQUFJLENBQUM7UUFDaEIsa0RBQWtEO1FBQ2xELG1CQUFtQjtRQUNuQixLQUFLLElBQUksSUFBSSxJQUFJLEdBQUcsRUFBRTtZQUNsQixJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO2dCQUNyQixPQUFPLEtBQUssQ0FBQztZQUNqQixvRkFBb0Y7WUFDcEYsb0JBQW9CO1lBQ3BCLElBQUk7U0FDUDtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQVE7UUFDMUIsSUFBSSxDQUFDLEdBQUc7WUFBRSxPQUFPO1FBQ2pCLEtBQUssSUFBSSxHQUFHLElBQUksR0FBRyxFQUFFO1lBQ2pCLElBQUksR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNuQixJQUFJLEdBQUcsS0FBSyxTQUFTLElBQUksR0FBRyxLQUFLLElBQUksRUFBRTtnQkFDbkMsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2hCLE1BQU0sQ0FBQyxJQUFJLENBQUE7YUFDZDtTQUNKO0lBQ0wsQ0FBQztJQUFBLENBQUM7SUFJRixNQUFNLENBQUMsUUFBUSxDQUFVLEtBQVU7UUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQ3JCLE9BQU8sS0FBSyxDQUFDO1FBRWpCLElBQUksTUFBTSxHQUFRLEVBQUUsQ0FBQztRQUNyQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDdEIsTUFBTSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDN0M7YUFDSTtZQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUU7Z0JBQ3BDLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFFckIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUNsQixNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFFbEM7cUJBQU07b0JBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7aUJBQ3ZDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVELE9BQU8sTUFBVyxDQUFDO0lBQ3ZCLENBQUM7Q0FFSiIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5leHBvcnQgY2xhc3MgT2JqZWN0SGVscGVyIHtcclxuICAgIHN0YXRpYyBpc0RlZmluZWQodmFsdWU6IGFueSkge1xyXG4gICAgICAgIHJldHVybiB0eXBlb2YgdmFsdWUgIT09ICd1bmRlZmluZWQnICYmIHZhbHVlICE9PSBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBpc09iamVjdCh2YWx1ZTogYW55KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNEZWZpbmVkKHZhbHVlKSAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIENoZWNrIGlmIHRoZSBvYmplY3QgaXMgYSBzdHJpbmcgb3IgYXJyYXkgYmVmb3JlIGV2YWx1YXRpbmcgdGhlIGxlbmd0aCBhdHRyaWJ1dGUuXHJcbiAgICAgKiBUaGlzIGF2b2lkcyBmYWxzZWx5IHJlamVjdGluZyBvYmplY3RzIHRoYXQgY29udGFpbiBhIGN1c3RvbSBsZW5ndGggYXR0cmlidXRlLlxyXG4gICAgICogRm9yIGV4YW1wbGUsIHRoZSBvYmplY3Qge2lkOiAxLCBsZW5ndGg6IDAsIHdpZHRoOiAwfSBzaG91bGQgbm90IGJlIHJldHVybmVkIGFzIGVtcHR5LlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNFbXB0eVZhbHVlKHZhbHVlOiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIXRoaXMuaXNEZWZpbmVkKHZhbHVlKSB8fCAoKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgfHwgQXJyYXkuaXNBcnJheSh2YWx1ZSkpICYmIHZhbHVlLmxlbmd0aCA9PT0gMCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHN0YXRpYyBpc0VtcHR5KG9iajogYW55KSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmlzRGVmaW5lZChvYmopKVxyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAvLyBpZiAodHlwZW9mIG9iaiA9PT0gJ3VuZGVmaW5lZCcgfHwgb2JqID09PSBudWxsKVxyXG4gICAgICAgIC8vICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICBmb3IgKGxldCBwcm9wIGluIG9iaikge1xyXG4gICAgICAgICAgICBsZXQgdiA9IG9ialtwcm9wXTtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLmlzRW1wdHlWYWx1ZSh2KSlcclxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgLy8gaWYgKHR5cGVvZiAob2JqW3Byb3BdKSAhPT0gdW5kZWZpbmVkICYmIG9ialtwcm9wXSAhPT0gbnVsbCAmJiBvYmpbcHJvcF0gIT09ICcnKSB7XHJcbiAgICAgICAgICAgIC8vICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgICAgIC8vIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBkZWxldGVOdWxsS2V5cyh2YWw6IGFueSkge1xyXG4gICAgICAgIGlmICghdmFsKSByZXR1cm47XHJcbiAgICAgICAgZm9yIChsZXQga2V5IGluIHZhbCkge1xyXG4gICAgICAgICAgICBsZXQgdG1wID0gdmFsW2tleV07XHJcbiAgICAgICAgICAgIGlmICh0bXAgPT09IHVuZGVmaW5lZCB8fCB0bXAgPT09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIGRlbGV0ZSB2YWxba2V5XTtcclxuICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9O1xyXG5cclxuXHJcblxyXG4gICAgc3RhdGljIGRlZXBDb3B5PFQgPSBhbnk+KHZhbHVlOiBhbnkpOiBUIHtcclxuICAgICAgICBpZiAoIXRoaXMuaXNPYmplY3QodmFsdWUpKVxyXG4gICAgICAgICAgICByZXR1cm4gdmFsdWU7XHJcblxyXG4gICAgICAgIGxldCBvdXRwdXQ6IGFueSA9IHt9O1xyXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xyXG4gICAgICAgICAgICBvdXRwdXQgPSB2YWx1ZS5tYXAoeCA9PiB0aGlzLmRlZXBDb3B5KHgpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHZhbHVlKS5mb3JFYWNoKChrZXk6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgdiA9IHZhbHVlW2tleV07XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNPYmplY3QodikpIHtcclxuICAgICAgICAgICAgICAgICAgICBvdXRwdXRba2V5XSA9IHRoaXMuZGVlcENvcHkodik7XHJcblxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKG91dHB1dCwgeyBba2V5XTogdiB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gb3V0cHV0IGFzIFQ7XHJcbiAgICB9XHJcblxyXG59Il19
|
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
export var PeriodRelation;
|
|
2
|
-
(function (PeriodRelation) {
|
|
3
|
-
PeriodRelation[PeriodRelation["After"] = 0] = "After";
|
|
4
|
-
PeriodRelation[PeriodRelation["StartTouching"] = 1] = "StartTouching";
|
|
5
|
-
PeriodRelation[PeriodRelation["StartInside"] = 2] = "StartInside";
|
|
6
|
-
PeriodRelation[PeriodRelation["InsideStartTouching"] = 3] = "InsideStartTouching";
|
|
7
|
-
PeriodRelation[PeriodRelation["EnclosingStartTouching"] = 4] = "EnclosingStartTouching";
|
|
8
|
-
PeriodRelation[PeriodRelation["Enclosing"] = 5] = "Enclosing";
|
|
9
|
-
PeriodRelation[PeriodRelation["EnclosingEndTouching"] = 6] = "EnclosingEndTouching";
|
|
10
|
-
PeriodRelation[PeriodRelation["ExactMatch"] = 7] = "ExactMatch";
|
|
11
|
-
PeriodRelation[PeriodRelation["Inside"] = 8] = "Inside";
|
|
12
|
-
PeriodRelation[PeriodRelation["InsideEndTouching"] = 9] = "InsideEndTouching";
|
|
13
|
-
PeriodRelation[PeriodRelation["EndInside"] = 10] = "EndInside";
|
|
14
|
-
PeriodRelation[PeriodRelation["EndTouching"] = 11] = "EndTouching";
|
|
15
|
-
PeriodRelation[PeriodRelation["Before"] = 12] = "Before";
|
|
16
|
-
})(PeriodRelation || (PeriodRelation = {}));
|
|
17
|
-
export class OverlapHelper {
|
|
18
|
-
static getRelation(start1, end1, start2, end2) {
|
|
19
|
-
if (end2 < start1) {
|
|
20
|
-
return PeriodRelation.After;
|
|
21
|
-
}
|
|
22
|
-
if (start2 > end1) {
|
|
23
|
-
return PeriodRelation.Before;
|
|
24
|
-
}
|
|
25
|
-
if (start2 == start1 && end2 == end1) {
|
|
26
|
-
return PeriodRelation.ExactMatch;
|
|
27
|
-
}
|
|
28
|
-
if (end2 == start1) {
|
|
29
|
-
return PeriodRelation.StartTouching;
|
|
30
|
-
}
|
|
31
|
-
if (start2 == end1) {
|
|
32
|
-
return PeriodRelation.EndTouching;
|
|
33
|
-
}
|
|
34
|
-
if (this.hasInside2(start1, end1, start2, end2)) {
|
|
35
|
-
if (start2 == start1) {
|
|
36
|
-
return PeriodRelation.EnclosingStartTouching;
|
|
37
|
-
}
|
|
38
|
-
return end2 == end1 ? PeriodRelation.EnclosingEndTouching : PeriodRelation.Enclosing;
|
|
39
|
-
}
|
|
40
|
-
let periodContainsMyStart = this.hasInside(start2, end2, start1);
|
|
41
|
-
let periodContainsMyEnd = this.hasInside(start2, end2, end1);
|
|
42
|
-
if (periodContainsMyStart && periodContainsMyEnd) {
|
|
43
|
-
if (start2 == start1) {
|
|
44
|
-
return PeriodRelation.InsideStartTouching;
|
|
45
|
-
}
|
|
46
|
-
return end2 == end1 ? PeriodRelation.InsideEndTouching : PeriodRelation.Inside;
|
|
47
|
-
}
|
|
48
|
-
if (periodContainsMyStart) {
|
|
49
|
-
return PeriodRelation.StartInside;
|
|
50
|
-
}
|
|
51
|
-
if (periodContainsMyEnd) {
|
|
52
|
-
return PeriodRelation.EndInside;
|
|
53
|
-
}
|
|
54
|
-
throw new Error("invalid period relation of '" + start1 + "-" + end1 + "' and '" + start2 + "-" + end2 + "'");
|
|
55
|
-
}
|
|
56
|
-
static hasInside(start, end, date) {
|
|
57
|
-
return date >= start && date <= end;
|
|
58
|
-
}
|
|
59
|
-
static hasInside2(start1, end1, start2, end2) {
|
|
60
|
-
return this.hasInside(start1, end1, start2) && this.hasInside(start1, end1, end2);
|
|
61
|
-
}
|
|
62
|
-
static intersects(start1, end1, start2, end2) {
|
|
63
|
-
return this.hasInside(start1, end1, start2) || this.hasInside(start1, end1, end2) || (start2 < start1 && end2 > end1);
|
|
64
|
-
}
|
|
65
|
-
static overlaps(start1, end1, start2, end2) {
|
|
66
|
-
var relation = this.getRelation(start1, end1, start2, end2);
|
|
67
|
-
return relation != PeriodRelation.After &&
|
|
68
|
-
relation != PeriodRelation.StartTouching &&
|
|
69
|
-
relation != PeriodRelation.EndTouching &&
|
|
70
|
-
relation != PeriodRelation.Before;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
1
|
+
export var PeriodRelation;
|
|
2
|
+
(function (PeriodRelation) {
|
|
3
|
+
PeriodRelation[PeriodRelation["After"] = 0] = "After";
|
|
4
|
+
PeriodRelation[PeriodRelation["StartTouching"] = 1] = "StartTouching";
|
|
5
|
+
PeriodRelation[PeriodRelation["StartInside"] = 2] = "StartInside";
|
|
6
|
+
PeriodRelation[PeriodRelation["InsideStartTouching"] = 3] = "InsideStartTouching";
|
|
7
|
+
PeriodRelation[PeriodRelation["EnclosingStartTouching"] = 4] = "EnclosingStartTouching";
|
|
8
|
+
PeriodRelation[PeriodRelation["Enclosing"] = 5] = "Enclosing";
|
|
9
|
+
PeriodRelation[PeriodRelation["EnclosingEndTouching"] = 6] = "EnclosingEndTouching";
|
|
10
|
+
PeriodRelation[PeriodRelation["ExactMatch"] = 7] = "ExactMatch";
|
|
11
|
+
PeriodRelation[PeriodRelation["Inside"] = 8] = "Inside";
|
|
12
|
+
PeriodRelation[PeriodRelation["InsideEndTouching"] = 9] = "InsideEndTouching";
|
|
13
|
+
PeriodRelation[PeriodRelation["EndInside"] = 10] = "EndInside";
|
|
14
|
+
PeriodRelation[PeriodRelation["EndTouching"] = 11] = "EndTouching";
|
|
15
|
+
PeriodRelation[PeriodRelation["Before"] = 12] = "Before";
|
|
16
|
+
})(PeriodRelation || (PeriodRelation = {}));
|
|
17
|
+
export class OverlapHelper {
|
|
18
|
+
static getRelation(start1, end1, start2, end2) {
|
|
19
|
+
if (end2 < start1) {
|
|
20
|
+
return PeriodRelation.After;
|
|
21
|
+
}
|
|
22
|
+
if (start2 > end1) {
|
|
23
|
+
return PeriodRelation.Before;
|
|
24
|
+
}
|
|
25
|
+
if (start2 == start1 && end2 == end1) {
|
|
26
|
+
return PeriodRelation.ExactMatch;
|
|
27
|
+
}
|
|
28
|
+
if (end2 == start1) {
|
|
29
|
+
return PeriodRelation.StartTouching;
|
|
30
|
+
}
|
|
31
|
+
if (start2 == end1) {
|
|
32
|
+
return PeriodRelation.EndTouching;
|
|
33
|
+
}
|
|
34
|
+
if (this.hasInside2(start1, end1, start2, end2)) {
|
|
35
|
+
if (start2 == start1) {
|
|
36
|
+
return PeriodRelation.EnclosingStartTouching;
|
|
37
|
+
}
|
|
38
|
+
return end2 == end1 ? PeriodRelation.EnclosingEndTouching : PeriodRelation.Enclosing;
|
|
39
|
+
}
|
|
40
|
+
let periodContainsMyStart = this.hasInside(start2, end2, start1);
|
|
41
|
+
let periodContainsMyEnd = this.hasInside(start2, end2, end1);
|
|
42
|
+
if (periodContainsMyStart && periodContainsMyEnd) {
|
|
43
|
+
if (start2 == start1) {
|
|
44
|
+
return PeriodRelation.InsideStartTouching;
|
|
45
|
+
}
|
|
46
|
+
return end2 == end1 ? PeriodRelation.InsideEndTouching : PeriodRelation.Inside;
|
|
47
|
+
}
|
|
48
|
+
if (periodContainsMyStart) {
|
|
49
|
+
return PeriodRelation.StartInside;
|
|
50
|
+
}
|
|
51
|
+
if (periodContainsMyEnd) {
|
|
52
|
+
return PeriodRelation.EndInside;
|
|
53
|
+
}
|
|
54
|
+
throw new Error("invalid period relation of '" + start1 + "-" + end1 + "' and '" + start2 + "-" + end2 + "'");
|
|
55
|
+
}
|
|
56
|
+
static hasInside(start, end, date) {
|
|
57
|
+
return date >= start && date <= end;
|
|
58
|
+
}
|
|
59
|
+
static hasInside2(start1, end1, start2, end2) {
|
|
60
|
+
return this.hasInside(start1, end1, start2) && this.hasInside(start1, end1, end2);
|
|
61
|
+
}
|
|
62
|
+
static intersects(start1, end1, start2, end2) {
|
|
63
|
+
return this.hasInside(start1, end1, start2) || this.hasInside(start1, end1, end2) || (start2 < start1 && end2 > end1);
|
|
64
|
+
}
|
|
65
|
+
static overlaps(start1, end1, start2, end2) {
|
|
66
|
+
var relation = this.getRelation(start1, end1, start2, end2);
|
|
67
|
+
return relation != PeriodRelation.After &&
|
|
68
|
+
relation != PeriodRelation.StartTouching &&
|
|
69
|
+
relation != PeriodRelation.EndTouching &&
|
|
70
|
+
relation != PeriodRelation.Before;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
73
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxhcC1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi91dGlscy9vdmVybGFwLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxjQWNYO0FBZEQsV0FBWSxjQUFjO0lBQ3RCLHFEQUFLLENBQUE7SUFDTCxxRUFBYSxDQUFBO0lBQ2IsaUVBQVcsQ0FBQTtJQUNYLGlGQUFtQixDQUFBO0lBQ25CLHVGQUFzQixDQUFBO0lBQ3RCLDZEQUFTLENBQUE7SUFDVCxtRkFBb0IsQ0FBQTtJQUNwQiwrREFBVSxDQUFBO0lBQ1YsdURBQU0sQ0FBQTtJQUNOLDZFQUFpQixDQUFBO0lBQ2pCLDhEQUFTLENBQUE7SUFDVCxrRUFBVyxDQUFBO0lBQ1gsd0RBQU0sQ0FBQTtBQUNWLENBQUMsRUFkVyxjQUFjLEtBQWQsY0FBYyxRQWN6QjtBQUVELE1BQU0sT0FBTyxhQUFhO0lBR3RCLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBWSxFQUFFLElBQVUsRUFBRSxNQUFZLEVBQUUsSUFBVTtRQUNqRSxJQUFJLElBQUksR0FBRyxNQUFNLEVBQUU7WUFDZixPQUFPLGNBQWMsQ0FBQyxLQUFLLENBQUM7U0FDL0I7UUFDRCxJQUFJLE1BQU0sR0FBRyxJQUFJLEVBQUU7WUFDZixPQUFPLGNBQWMsQ0FBQyxNQUFNLENBQUM7U0FDaEM7UUFDRCxJQUFJLE1BQU0sSUFBSSxNQUFNLElBQUksSUFBSSxJQUFJLElBQUksRUFBRTtZQUNsQyxPQUFPLGNBQWMsQ0FBQyxVQUFVLENBQUM7U0FDcEM7UUFDRCxJQUFJLElBQUksSUFBSSxNQUFNLEVBQUU7WUFDaEIsT0FBTyxjQUFjLENBQUMsYUFBYSxDQUFDO1NBQ3ZDO1FBQ0QsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFO1lBQ2hCLE9BQU8sY0FBYyxDQUFDLFdBQVcsQ0FBQztTQUNyQztRQUNELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRTtZQUM3QyxJQUFJLE1BQU0sSUFBSSxNQUFNLEVBQUU7Z0JBQ2xCLE9BQU8sY0FBYyxDQUFDLHNCQUFzQixDQUFDO2FBQ2hEO1lBQ0QsT0FBTyxJQUFJLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUM7U0FDeEY7UUFDRCxJQUFJLHFCQUFxQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNqRSxJQUFJLG1CQUFtQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM3RCxJQUFJLHFCQUFxQixJQUFJLG1CQUFtQixFQUFFO1lBQzlDLElBQUksTUFBTSxJQUFJLE1BQU0sRUFBRTtnQkFDbEIsT0FBTyxjQUFjLENBQUMsbUJBQW1CLENBQUM7YUFDN0M7WUFDRCxPQUFPLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQztTQUNsRjtRQUNELElBQUkscUJBQXFCLEVBQUU7WUFDdkIsT0FBTyxjQUFjLENBQUMsV0FBVyxDQUFDO1NBQ3JDO1FBQ0QsSUFBSSxtQkFBbUIsRUFBRTtZQUNyQixPQUFPLGNBQWMsQ0FBQyxTQUFTLENBQUM7U0FDbkM7UUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixHQUFHLE1BQU0sR0FBRyxHQUFHLEdBQUcsSUFBSSxHQUFHLFNBQVMsR0FBRyxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQztJQUNsSCxDQUFDO0lBRUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFXLEVBQUUsR0FBUyxFQUFFLElBQVU7UUFDL0MsT0FBTyxJQUFJLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxHQUFHLENBQUM7SUFDeEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBWSxFQUFFLElBQVUsRUFBRSxNQUFZLEVBQUUsSUFBVTtRQUNoRSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBWSxFQUFFLElBQVUsRUFBRSxNQUFZLEVBQUUsSUFBVTtRQUNoRSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQztJQUMxSCxDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFZLEVBQUUsSUFBVSxFQUFFLE1BQVksRUFBRSxJQUFVO1FBQzlELElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDNUQsT0FBTyxRQUFRLElBQUksY0FBYyxDQUFDLEtBQUs7WUFDbkMsUUFBUSxJQUFJLGNBQWMsQ0FBQyxhQUFhO1lBQ3hDLFFBQVEsSUFBSSxjQUFjLENBQUMsV0FBVztZQUN0QyxRQUFRLElBQUksY0FBYyxDQUFDLE1BQU0sQ0FBQztJQUMxQyxDQUFDO0NBR0oiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBQZXJpb2RSZWxhdGlvbiB7XHJcbiAgICBBZnRlcixcclxuICAgIFN0YXJ0VG91Y2hpbmcsXHJcbiAgICBTdGFydEluc2lkZSxcclxuICAgIEluc2lkZVN0YXJ0VG91Y2hpbmcsXHJcbiAgICBFbmNsb3NpbmdTdGFydFRvdWNoaW5nLFxyXG4gICAgRW5jbG9zaW5nLFxyXG4gICAgRW5jbG9zaW5nRW5kVG91Y2hpbmcsXHJcbiAgICBFeGFjdE1hdGNoLFxyXG4gICAgSW5zaWRlLFxyXG4gICAgSW5zaWRlRW5kVG91Y2hpbmcsXHJcbiAgICBFbmRJbnNpZGUsXHJcbiAgICBFbmRUb3VjaGluZyxcclxuICAgIEJlZm9yZSxcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIE92ZXJsYXBIZWxwZXIge1xyXG5cclxuXHJcbiAgICBzdGF0aWMgZ2V0UmVsYXRpb24oc3RhcnQxOiBEYXRlLCBlbmQxOiBEYXRlLCBzdGFydDI6IERhdGUsIGVuZDI6IERhdGUpOiBQZXJpb2RSZWxhdGlvbiB7XHJcbiAgICAgICAgaWYgKGVuZDIgPCBzdGFydDEpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFBlcmlvZFJlbGF0aW9uLkFmdGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoc3RhcnQyID4gZW5kMSkge1xyXG4gICAgICAgICAgICByZXR1cm4gUGVyaW9kUmVsYXRpb24uQmVmb3JlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoc3RhcnQyID09IHN0YXJ0MSAmJiBlbmQyID09IGVuZDEpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFBlcmlvZFJlbGF0aW9uLkV4YWN0TWF0Y2g7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChlbmQyID09IHN0YXJ0MSkge1xyXG4gICAgICAgICAgICByZXR1cm4gUGVyaW9kUmVsYXRpb24uU3RhcnRUb3VjaGluZztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHN0YXJ0MiA9PSBlbmQxKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBQZXJpb2RSZWxhdGlvbi5FbmRUb3VjaGluZztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuaGFzSW5zaWRlMihzdGFydDEsIGVuZDEsIHN0YXJ0MiwgZW5kMikpIHtcclxuICAgICAgICAgICAgaWYgKHN0YXJ0MiA9PSBzdGFydDEpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBQZXJpb2RSZWxhdGlvbi5FbmNsb3NpbmdTdGFydFRvdWNoaW5nO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBlbmQyID09IGVuZDEgPyBQZXJpb2RSZWxhdGlvbi5FbmNsb3NpbmdFbmRUb3VjaGluZyA6IFBlcmlvZFJlbGF0aW9uLkVuY2xvc2luZztcclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IHBlcmlvZENvbnRhaW5zTXlTdGFydCA9IHRoaXMuaGFzSW5zaWRlKHN0YXJ0MiwgZW5kMiwgc3RhcnQxKTtcclxuICAgICAgICBsZXQgcGVyaW9kQ29udGFpbnNNeUVuZCA9IHRoaXMuaGFzSW5zaWRlKHN0YXJ0MiwgZW5kMiwgZW5kMSk7XHJcbiAgICAgICAgaWYgKHBlcmlvZENvbnRhaW5zTXlTdGFydCAmJiBwZXJpb2RDb250YWluc015RW5kKSB7XHJcbiAgICAgICAgICAgIGlmIChzdGFydDIgPT0gc3RhcnQxKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gUGVyaW9kUmVsYXRpb24uSW5zaWRlU3RhcnRUb3VjaGluZztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gZW5kMiA9PSBlbmQxID8gUGVyaW9kUmVsYXRpb24uSW5zaWRlRW5kVG91Y2hpbmcgOiBQZXJpb2RSZWxhdGlvbi5JbnNpZGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChwZXJpb2RDb250YWluc015U3RhcnQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFBlcmlvZFJlbGF0aW9uLlN0YXJ0SW5zaWRlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAocGVyaW9kQ29udGFpbnNNeUVuZCkge1xyXG4gICAgICAgICAgICByZXR1cm4gUGVyaW9kUmVsYXRpb24uRW5kSW5zaWRlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiaW52YWxpZCBwZXJpb2QgcmVsYXRpb24gb2YgJ1wiICsgc3RhcnQxICsgXCItXCIgKyBlbmQxICsgXCInIGFuZCAnXCIgKyBzdGFydDIgKyBcIi1cIiArIGVuZDIgKyBcIidcIik7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGhhc0luc2lkZShzdGFydDogRGF0ZSwgZW5kOiBEYXRlLCBkYXRlOiBEYXRlKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIGRhdGUgPj0gc3RhcnQgJiYgZGF0ZSA8PSBlbmQ7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGhhc0luc2lkZTIoc3RhcnQxOiBEYXRlLCBlbmQxOiBEYXRlLCBzdGFydDI6IERhdGUsIGVuZDI6IERhdGUpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5oYXNJbnNpZGUoc3RhcnQxLCBlbmQxLCBzdGFydDIpICYmIHRoaXMuaGFzSW5zaWRlKHN0YXJ0MSwgZW5kMSwgZW5kMik7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGludGVyc2VjdHMoc3RhcnQxOiBEYXRlLCBlbmQxOiBEYXRlLCBzdGFydDI6IERhdGUsIGVuZDI6IERhdGUpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5oYXNJbnNpZGUoc3RhcnQxLCBlbmQxLCBzdGFydDIpIHx8IHRoaXMuaGFzSW5zaWRlKHN0YXJ0MSwgZW5kMSwgZW5kMikgfHwgKHN0YXJ0MiA8IHN0YXJ0MSAmJiBlbmQyID4gZW5kMSk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIG92ZXJsYXBzKHN0YXJ0MTogRGF0ZSwgZW5kMTogRGF0ZSwgc3RhcnQyOiBEYXRlLCBlbmQyOiBEYXRlKTogYm9vbGVhbiB7XHJcbiAgICAgICAgdmFyIHJlbGF0aW9uID0gdGhpcy5nZXRSZWxhdGlvbihzdGFydDEsIGVuZDEsIHN0YXJ0MiwgZW5kMik7XHJcbiAgICAgICAgcmV0dXJuIHJlbGF0aW9uICE9IFBlcmlvZFJlbGF0aW9uLkFmdGVyICYmXHJcbiAgICAgICAgICAgIHJlbGF0aW9uICE9IFBlcmlvZFJlbGF0aW9uLlN0YXJ0VG91Y2hpbmcgJiZcclxuICAgICAgICAgICAgcmVsYXRpb24gIT0gUGVyaW9kUmVsYXRpb24uRW5kVG91Y2hpbmcgJiZcclxuICAgICAgICAgICAgcmVsYXRpb24gIT0gUGVyaW9kUmVsYXRpb24uQmVmb3JlO1xyXG4gICAgfVxyXG5cclxuXHJcbn0iXX0=
|
|
@@ -1,63 +1,63 @@
|
|
|
1
|
-
export class PagerHelper {
|
|
2
|
-
static get(totalItemCount, pageNumber = 1, pageSize = 10) {
|
|
3
|
-
if (!totalItemCount)
|
|
4
|
-
totalItemCount = 0;
|
|
5
|
-
if (!pageNumber)
|
|
6
|
-
pageNumber = 1;
|
|
7
|
-
if (!pageSize)
|
|
8
|
-
pageSize = 10;
|
|
9
|
-
// calculate total pages
|
|
10
|
-
const pageCount = Math.ceil(totalItemCount / pageSize);
|
|
11
|
-
let startPage, endPage;
|
|
12
|
-
if (pageCount <= 10) {
|
|
13
|
-
// less than 10 total pages so show all
|
|
14
|
-
startPage = 1;
|
|
15
|
-
endPage = pageCount;
|
|
16
|
-
}
|
|
17
|
-
else {
|
|
18
|
-
// more than 10 total pages so calculate start and end pages
|
|
19
|
-
if (pageNumber <= 6) {
|
|
20
|
-
startPage = 1;
|
|
21
|
-
endPage = 10;
|
|
22
|
-
}
|
|
23
|
-
else if (pageNumber + 4 >= pageCount) {
|
|
24
|
-
startPage = pageCount - 9;
|
|
25
|
-
endPage = pageCount;
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
startPage = pageNumber - 5;
|
|
29
|
-
endPage = pageNumber + 4;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
// calculate start and end item indexes
|
|
33
|
-
const firstItemOnPage = (pageNumber - 1) * pageSize + 1;
|
|
34
|
-
const lastItemOnPage = Math.min(firstItemOnPage + pageSize - 1, totalItemCount);
|
|
35
|
-
const hasPreviousPage = pageNumber > 1;
|
|
36
|
-
const hasNextPage = pageNumber < pageCount;
|
|
37
|
-
const isFirstPage = pageNumber <= 1;
|
|
38
|
-
const isLastPage = pageNumber >= pageCount;
|
|
39
|
-
// create an array of pages to ng-repeat in the pager control
|
|
40
|
-
//let pages = _.range(startPage, endPage + 1);
|
|
41
|
-
const pages = [];
|
|
42
|
-
for (let i = startPage; i <= endPage; i++) {
|
|
43
|
-
pages.push(i);
|
|
44
|
-
}
|
|
45
|
-
// return object with all pager properties required by the view
|
|
46
|
-
return {
|
|
47
|
-
pageCount,
|
|
48
|
-
totalItemCount,
|
|
49
|
-
pageNumber,
|
|
50
|
-
pageSize,
|
|
51
|
-
hasPreviousPage,
|
|
52
|
-
hasNextPage,
|
|
53
|
-
isFirstPage,
|
|
54
|
-
isLastPage,
|
|
55
|
-
firstItemOnPage,
|
|
56
|
-
lastItemOnPage,
|
|
57
|
-
//startPage: startPage,
|
|
58
|
-
//endPage: endPage,
|
|
59
|
-
pages
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
}
|
|
1
|
+
export class PagerHelper {
|
|
2
|
+
static get(totalItemCount, pageNumber = 1, pageSize = 10) {
|
|
3
|
+
if (!totalItemCount)
|
|
4
|
+
totalItemCount = 0;
|
|
5
|
+
if (!pageNumber)
|
|
6
|
+
pageNumber = 1;
|
|
7
|
+
if (!pageSize)
|
|
8
|
+
pageSize = 10;
|
|
9
|
+
// calculate total pages
|
|
10
|
+
const pageCount = Math.ceil(totalItemCount / pageSize);
|
|
11
|
+
let startPage, endPage;
|
|
12
|
+
if (pageCount <= 10) {
|
|
13
|
+
// less than 10 total pages so show all
|
|
14
|
+
startPage = 1;
|
|
15
|
+
endPage = pageCount;
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
// more than 10 total pages so calculate start and end pages
|
|
19
|
+
if (pageNumber <= 6) {
|
|
20
|
+
startPage = 1;
|
|
21
|
+
endPage = 10;
|
|
22
|
+
}
|
|
23
|
+
else if (pageNumber + 4 >= pageCount) {
|
|
24
|
+
startPage = pageCount - 9;
|
|
25
|
+
endPage = pageCount;
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
startPage = pageNumber - 5;
|
|
29
|
+
endPage = pageNumber + 4;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
// calculate start and end item indexes
|
|
33
|
+
const firstItemOnPage = (pageNumber - 1) * pageSize + 1;
|
|
34
|
+
const lastItemOnPage = Math.min(firstItemOnPage + pageSize - 1, totalItemCount);
|
|
35
|
+
const hasPreviousPage = pageNumber > 1;
|
|
36
|
+
const hasNextPage = pageNumber < pageCount;
|
|
37
|
+
const isFirstPage = pageNumber <= 1;
|
|
38
|
+
const isLastPage = pageNumber >= pageCount;
|
|
39
|
+
// create an array of pages to ng-repeat in the pager control
|
|
40
|
+
//let pages = _.range(startPage, endPage + 1);
|
|
41
|
+
const pages = [];
|
|
42
|
+
for (let i = startPage; i <= endPage; i++) {
|
|
43
|
+
pages.push(i);
|
|
44
|
+
}
|
|
45
|
+
// return object with all pager properties required by the view
|
|
46
|
+
return {
|
|
47
|
+
pageCount,
|
|
48
|
+
totalItemCount,
|
|
49
|
+
pageNumber,
|
|
50
|
+
pageSize,
|
|
51
|
+
hasPreviousPage,
|
|
52
|
+
hasNextPage,
|
|
53
|
+
isFirstPage,
|
|
54
|
+
isLastPage,
|
|
55
|
+
firstItemOnPage,
|
|
56
|
+
lastItemOnPage,
|
|
57
|
+
//startPage: startPage,
|
|
58
|
+
//endPage: endPage,
|
|
59
|
+
pages
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
63
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZXItaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvdXRpbHMvcGFnZXItaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxXQUFXO0lBQ3BCLE1BQU0sQ0FBQyxHQUFHLENBQUMsY0FBeUMsRUFBRSxhQUF3QyxDQUFDLEVBQUUsV0FBc0MsRUFBRTtRQUNySSxJQUFJLENBQUMsY0FBYztZQUFFLGNBQWMsR0FBRyxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLFVBQVU7WUFBRSxVQUFVLEdBQUcsQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxRQUFRO1lBQUUsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUU3Qix3QkFBd0I7UUFDeEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsUUFBUSxDQUFDLENBQUM7UUFDdkQsSUFBSSxTQUFpQixFQUFFLE9BQWUsQ0FBQztRQUN2QyxJQUFJLFNBQVMsSUFBSSxFQUFFLEVBQUU7WUFDakIsdUNBQXVDO1lBQ3ZDLFNBQVMsR0FBRyxDQUFDLENBQUM7WUFDZCxPQUFPLEdBQUcsU0FBUyxDQUFDO1NBQ3ZCO2FBQU07WUFDSCw0REFBNEQ7WUFDNUQsSUFBSSxVQUFVLElBQUksQ0FBQyxFQUFFO2dCQUNqQixTQUFTLEdBQUcsQ0FBQyxDQUFDO2dCQUNkLE9BQU8sR0FBRyxFQUFFLENBQUM7YUFDaEI7aUJBQU0sSUFBSSxVQUFVLEdBQUcsQ0FBQyxJQUFJLFNBQVMsRUFBRTtnQkFDcEMsU0FBUyxHQUFHLFNBQVMsR0FBRyxDQUFDLENBQUM7Z0JBQzFCLE9BQU8sR0FBRyxTQUFTLENBQUM7YUFDdkI7aUJBQU07Z0JBQ0gsU0FBUyxHQUFHLFVBQVUsR0FBRyxDQUFDLENBQUM7Z0JBQzNCLE9BQU8sR0FBRyxVQUFVLEdBQUcsQ0FBQyxDQUFDO2FBQzVCO1NBQ0o7UUFFRCx1Q0FBdUM7UUFDdkMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDLEdBQUcsUUFBUSxHQUFHLENBQUMsQ0FBQztRQUN4RCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsR0FBRyxRQUFRLEdBQUcsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBRWhGLE1BQU0sZUFBZSxHQUFHLFVBQVUsR0FBRyxDQUFDLENBQUM7UUFDdkMsTUFBTSxXQUFXLEdBQUcsVUFBVSxHQUFHLFNBQVMsQ0FBQztRQUMzQyxNQUFNLFdBQVcsR0FBRyxVQUFVLElBQUksQ0FBQyxDQUFDO1FBQ3BDLE1BQU0sVUFBVSxHQUFHLFVBQVUsSUFBSSxTQUFTLENBQUM7UUFFM0MsNkRBQTZEO1FBQzdELDhDQUE4QztRQUM5QyxNQUFNLEtBQUssR0FBYSxFQUFFLENBQUM7UUFDM0IsS0FBSyxJQUFJLENBQUMsR0FBRyxTQUFTLEVBQUUsQ0FBQyxJQUFJLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN2QyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2pCO1FBRUQsK0RBQStEO1FBQy9ELE9BQU87WUFDSCxTQUFTO1lBQ1QsY0FBYztZQUNkLFVBQVU7WUFDVixRQUFRO1lBQ1IsZUFBZTtZQUNmLFdBQVc7WUFDWCxXQUFXO1lBQ1gsVUFBVTtZQUNWLGVBQWU7WUFDZixjQUFjO1lBQ2QsdUJBQXVCO1lBQ3ZCLG1CQUFtQjtZQUNuQixLQUFLO1NBQ0MsQ0FBQztJQUNmLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhZ2VyIH0gZnJvbSBcIi4uL21vZGVsc1wiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFBhZ2VySGVscGVyIHtcclxuICAgIHN0YXRpYyBnZXQodG90YWxJdGVtQ291bnQ6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQsIHBhZ2VOdW1iZXI6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQgPSAxLCBwYWdlU2l6ZTogbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZCA9IDEwKSB7XHJcbiAgICAgICAgaWYgKCF0b3RhbEl0ZW1Db3VudCkgdG90YWxJdGVtQ291bnQgPSAwO1xyXG4gICAgICAgIGlmICghcGFnZU51bWJlcikgcGFnZU51bWJlciA9IDE7XHJcbiAgICAgICAgaWYgKCFwYWdlU2l6ZSkgcGFnZVNpemUgPSAxMDtcclxuXHJcbiAgICAgICAgLy8gY2FsY3VsYXRlIHRvdGFsIHBhZ2VzXHJcbiAgICAgICAgY29uc3QgcGFnZUNvdW50ID0gTWF0aC5jZWlsKHRvdGFsSXRlbUNvdW50IC8gcGFnZVNpemUpO1xyXG4gICAgICAgIGxldCBzdGFydFBhZ2U6IG51bWJlciwgZW5kUGFnZTogbnVtYmVyO1xyXG4gICAgICAgIGlmIChwYWdlQ291bnQgPD0gMTApIHtcclxuICAgICAgICAgICAgLy8gbGVzcyB0aGFuIDEwIHRvdGFsIHBhZ2VzIHNvIHNob3cgYWxsXHJcbiAgICAgICAgICAgIHN0YXJ0UGFnZSA9IDE7XHJcbiAgICAgICAgICAgIGVuZFBhZ2UgPSBwYWdlQ291bnQ7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgLy8gbW9yZSB0aGFuIDEwIHRvdGFsIHBhZ2VzIHNvIGNhbGN1bGF0ZSBzdGFydCBhbmQgZW5kIHBhZ2VzXHJcbiAgICAgICAgICAgIGlmIChwYWdlTnVtYmVyIDw9IDYpIHtcclxuICAgICAgICAgICAgICAgIHN0YXJ0UGFnZSA9IDE7XHJcbiAgICAgICAgICAgICAgICBlbmRQYWdlID0gMTA7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAocGFnZU51bWJlciArIDQgPj0gcGFnZUNvdW50KSB7XHJcbiAgICAgICAgICAgICAgICBzdGFydFBhZ2UgPSBwYWdlQ291bnQgLSA5O1xyXG4gICAgICAgICAgICAgICAgZW5kUGFnZSA9IHBhZ2VDb3VudDtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHN0YXJ0UGFnZSA9IHBhZ2VOdW1iZXIgLSA1O1xyXG4gICAgICAgICAgICAgICAgZW5kUGFnZSA9IHBhZ2VOdW1iZXIgKyA0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBjYWxjdWxhdGUgc3RhcnQgYW5kIGVuZCBpdGVtIGluZGV4ZXNcclxuICAgICAgICBjb25zdCBmaXJzdEl0ZW1PblBhZ2UgPSAocGFnZU51bWJlciAtIDEpICogcGFnZVNpemUgKyAxO1xyXG4gICAgICAgIGNvbnN0IGxhc3RJdGVtT25QYWdlID0gTWF0aC5taW4oZmlyc3RJdGVtT25QYWdlICsgcGFnZVNpemUgLSAxLCB0b3RhbEl0ZW1Db3VudCk7XHJcblxyXG4gICAgICAgIGNvbnN0IGhhc1ByZXZpb3VzUGFnZSA9IHBhZ2VOdW1iZXIgPiAxO1xyXG4gICAgICAgIGNvbnN0IGhhc05leHRQYWdlID0gcGFnZU51bWJlciA8IHBhZ2VDb3VudDtcclxuICAgICAgICBjb25zdCBpc0ZpcnN0UGFnZSA9IHBhZ2VOdW1iZXIgPD0gMTtcclxuICAgICAgICBjb25zdCBpc0xhc3RQYWdlID0gcGFnZU51bWJlciA+PSBwYWdlQ291bnQ7XHJcblxyXG4gICAgICAgIC8vIGNyZWF0ZSBhbiBhcnJheSBvZiBwYWdlcyB0byBuZy1yZXBlYXQgaW4gdGhlIHBhZ2VyIGNvbnRyb2xcclxuICAgICAgICAvL2xldCBwYWdlcyA9IF8ucmFuZ2Uoc3RhcnRQYWdlLCBlbmRQYWdlICsgMSk7XHJcbiAgICAgICAgY29uc3QgcGFnZXM6IG51bWJlcltdID0gW107XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IHN0YXJ0UGFnZTsgaSA8PSBlbmRQYWdlOyBpKyspIHtcclxuICAgICAgICAgICAgcGFnZXMucHVzaChpKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIHJldHVybiBvYmplY3Qgd2l0aCBhbGwgcGFnZXIgcHJvcGVydGllcyByZXF1aXJlZCBieSB0aGUgdmlld1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIHBhZ2VDb3VudCxcclxuICAgICAgICAgICAgdG90YWxJdGVtQ291bnQsXHJcbiAgICAgICAgICAgIHBhZ2VOdW1iZXIsXHJcbiAgICAgICAgICAgIHBhZ2VTaXplLFxyXG4gICAgICAgICAgICBoYXNQcmV2aW91c1BhZ2UsXHJcbiAgICAgICAgICAgIGhhc05leHRQYWdlLFxyXG4gICAgICAgICAgICBpc0ZpcnN0UGFnZSxcclxuICAgICAgICAgICAgaXNMYXN0UGFnZSxcclxuICAgICAgICAgICAgZmlyc3RJdGVtT25QYWdlLFxyXG4gICAgICAgICAgICBsYXN0SXRlbU9uUGFnZSxcclxuICAgICAgICAgICAgLy9zdGFydFBhZ2U6IHN0YXJ0UGFnZSxcclxuICAgICAgICAgICAgLy9lbmRQYWdlOiBlbmRQYWdlLFxyXG4gICAgICAgICAgICBwYWdlc1xyXG4gICAgICAgIH0gYXMgUGFnZXI7XHJcbiAgICB9XHJcbn0iXX0=
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export class RandomHelper {
|
|
2
|
-
static randomHex(count = 2) {
|
|
3
|
-
let out = '';
|
|
4
|
-
for (let i = 0; i < count; i++) {
|
|
5
|
-
// tslint:disable-next-line:no-bitwise
|
|
6
|
-
out += (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
|
|
7
|
-
}
|
|
8
|
-
return out;
|
|
9
|
-
}
|
|
10
|
-
}
|
|
1
|
+
export class RandomHelper {
|
|
2
|
+
static randomHex(count = 2) {
|
|
3
|
+
let out = '';
|
|
4
|
+
for (let i = 0; i < count; i++) {
|
|
5
|
+
// tslint:disable-next-line:no-bitwise
|
|
6
|
+
out += (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
|
|
7
|
+
}
|
|
8
|
+
return out;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
11
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZG9tLWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL3V0aWxzL3JhbmRvbS1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFlBQVk7SUFDckIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFnQixDQUFDO1FBQzlCLElBQUksR0FBRyxHQUFXLEVBQUUsQ0FBQztRQUNyQixLQUFLLElBQUksQ0FBQyxHQUFXLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3BDLHNDQUFzQztZQUN0QyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDMUU7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBSYW5kb21IZWxwZXIge1xyXG4gICAgc3RhdGljIHJhbmRvbUhleChjb3VudDogbnVtYmVyID0gMikge1xyXG4gICAgICAgIGxldCBvdXQ6IHN0cmluZyA9ICcnO1xyXG4gICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCBjb3VudDsgaSsrKSB7XHJcbiAgICAgICAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1iaXR3aXNlXHJcbiAgICAgICAgICAgIG91dCArPSAoKCgxICsgTWF0aC5yYW5kb20oKSkgKiAweDEwMDAwKSB8IDApLnRvU3RyaW5nKDE2KS5zdWJzdHJpbmcoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBvdXQ7XHJcbiAgICB9XHJcbn0iXX0=
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
export class StorageHelper {
|
|
2
|
-
static set(key, value) {
|
|
3
|
-
if (!key) {
|
|
4
|
-
return;
|
|
5
|
-
}
|
|
6
|
-
if (!value) {
|
|
7
|
-
localStorage.removeItem(key);
|
|
8
|
-
return;
|
|
9
|
-
}
|
|
10
|
-
if (typeof value === "object") {
|
|
11
|
-
value = JSON.stringify(value);
|
|
12
|
-
}
|
|
13
|
-
localStorage.setItem(key, value);
|
|
14
|
-
}
|
|
15
|
-
static get(key) {
|
|
16
|
-
let str = localStorage.getItem(key);
|
|
17
|
-
if (!str) {
|
|
18
|
-
return null;
|
|
19
|
-
}
|
|
20
|
-
// assume it is an object that has been stringified
|
|
21
|
-
if (str[0] === '{') {
|
|
22
|
-
let v = JSON.parse(str);
|
|
23
|
-
return v;
|
|
24
|
-
}
|
|
25
|
-
return str;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
1
|
+
export class StorageHelper {
|
|
2
|
+
static set(key, value) {
|
|
3
|
+
if (!key) {
|
|
4
|
+
return;
|
|
5
|
+
}
|
|
6
|
+
if (!value) {
|
|
7
|
+
localStorage.removeItem(key);
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
if (typeof value === "object") {
|
|
11
|
+
value = JSON.stringify(value);
|
|
12
|
+
}
|
|
13
|
+
localStorage.setItem(key, value);
|
|
14
|
+
}
|
|
15
|
+
static get(key) {
|
|
16
|
+
let str = localStorage.getItem(key);
|
|
17
|
+
if (!str) {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
// assume it is an object that has been stringified
|
|
21
|
+
if (str[0] === '{') {
|
|
22
|
+
let v = JSON.parse(str);
|
|
23
|
+
return v;
|
|
24
|
+
}
|
|
25
|
+
return str;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
28
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi91dGlscy9zdG9yYWdlLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sYUFBYTtJQUN0QixNQUFNLENBQUMsR0FBRyxDQUFDLEdBQVcsRUFBRSxLQUFVO1FBQzlCLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFBRSxPQUFPO1NBQUU7UUFFckIsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNSLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDN0IsT0FBTztTQUNWO1FBRUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7WUFDM0IsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDakM7UUFDRCxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBR0QsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFXO1FBQ2xCLElBQUksR0FBRyxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFcEMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUFFLE9BQU8sSUFBSSxDQUFDO1NBQUU7UUFFMUIsbURBQW1EO1FBQ25ELElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsRUFBRTtZQUNoQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hCLE9BQU8sQ0FBQyxDQUFDO1NBQ1o7UUFFRCxPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBTdG9yYWdlSGVscGVyIHtcclxuICAgIHN0YXRpYyBzZXQoa2V5OiBzdHJpbmcsIHZhbHVlOiBhbnkpIHtcclxuICAgICAgICBpZiAoIWtleSkgeyByZXR1cm47IH1cclxuXHJcbiAgICAgICAgaWYgKCF2YWx1ZSkge1xyXG4gICAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcIm9iamVjdFwiKSB7XHJcbiAgICAgICAgICAgIHZhbHVlID0gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShrZXksIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgc3RhdGljIGdldChrZXk6IHN0cmluZykge1xyXG4gICAgICAgIGxldCBzdHIgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpO1xyXG4gICAgXHJcbiAgICAgICAgaWYgKCFzdHIpIHsgcmV0dXJuIG51bGw7IH1cclxuICAgIFxyXG4gICAgICAgIC8vIGFzc3VtZSBpdCBpcyBhbiBvYmplY3QgdGhhdCBoYXMgYmVlbiBzdHJpbmdpZmllZFxyXG4gICAgICAgIGlmIChzdHJbMF0gPT09ICd7Jykge1xyXG4gICAgICAgICAgICBsZXQgdiA9IEpTT04ucGFyc2Uoc3RyKTtcclxuICAgICAgICAgICAgcmV0dXJuIHY7XHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgcmV0dXJuIHN0cjtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
export class StringHelper {
|
|
2
|
-
static firstUpper(v) {
|
|
3
|
-
if (!v || v.length < 1)
|
|
4
|
-
return v;
|
|
5
|
-
return v.charAt(0).toUpperCase() + v.slice(1);
|
|
6
|
-
}
|
|
7
|
-
static isNullOrEmpty(value) {
|
|
8
|
-
return typeof value === 'undefined' || value == null || ((typeof value === 'string') && value.length === 0);
|
|
9
|
-
}
|
|
10
|
-
static isNullOrWhiteSpace(value) {
|
|
11
|
-
return typeof value === 'undefined' || value == null || ((typeof value === 'string') && value.trim().length === 0);
|
|
12
|
-
}
|
|
13
|
-
static tryTrim(val) {
|
|
14
|
-
if (val === undefined || val === null) {
|
|
15
|
-
return val;
|
|
16
|
-
}
|
|
17
|
-
return val.trim();
|
|
18
|
-
}
|
|
19
|
-
static ifNullEmpty(value) {
|
|
20
|
-
return typeof value === 'undefined' || value == null ? '' : value;
|
|
21
|
-
}
|
|
22
|
-
static join(val, separator, part) {
|
|
23
|
-
if (this.isNullOrEmpty(val)) {
|
|
24
|
-
return part;
|
|
25
|
-
}
|
|
26
|
-
if (this.isNullOrEmpty(part)) {
|
|
27
|
-
return val;
|
|
28
|
-
}
|
|
29
|
-
return val + separator + part;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
1
|
+
export class StringHelper {
|
|
2
|
+
static firstUpper(v) {
|
|
3
|
+
if (!v || v.length < 1)
|
|
4
|
+
return v;
|
|
5
|
+
return v.charAt(0).toUpperCase() + v.slice(1);
|
|
6
|
+
}
|
|
7
|
+
static isNullOrEmpty(value) {
|
|
8
|
+
return typeof value === 'undefined' || value == null || ((typeof value === 'string') && value.length === 0);
|
|
9
|
+
}
|
|
10
|
+
static isNullOrWhiteSpace(value) {
|
|
11
|
+
return typeof value === 'undefined' || value == null || ((typeof value === 'string') && value.trim().length === 0);
|
|
12
|
+
}
|
|
13
|
+
static tryTrim(val) {
|
|
14
|
+
if (val === undefined || val === null) {
|
|
15
|
+
return val;
|
|
16
|
+
}
|
|
17
|
+
return val.trim();
|
|
18
|
+
}
|
|
19
|
+
static ifNullEmpty(value) {
|
|
20
|
+
return typeof value === 'undefined' || value == null ? '' : value;
|
|
21
|
+
}
|
|
22
|
+
static join(val, separator, part) {
|
|
23
|
+
if (this.isNullOrEmpty(val)) {
|
|
24
|
+
return part;
|
|
25
|
+
}
|
|
26
|
+
if (this.isNullOrEmpty(part)) {
|
|
27
|
+
return val;
|
|
28
|
+
}
|
|
29
|
+
return val + separator + part;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
32
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL3V0aWxzL3N0cmluZy1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFlBQVk7SUFDckIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFpQjtRQUMvQixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQztZQUNsQixPQUFPLENBQUMsQ0FBQztRQUViLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLEtBQXFCO1FBQ3RDLE9BQU8sT0FBTyxLQUFLLEtBQUssV0FBVyxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDaEgsQ0FBQztJQUNELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxLQUFxQjtRQUMzQyxPQUFPLE9BQU8sS0FBSyxLQUFLLFdBQVcsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUMsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3ZILENBQUM7SUFDRCxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQThCO1FBQ3pDLElBQUksR0FBRyxLQUFLLFNBQVMsSUFBSSxHQUFHLEtBQUssSUFBSSxFQUFFO1lBQ25DLE9BQU8sR0FBRyxDQUFDO1NBQ2Q7UUFDRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBQ0QsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFxQjtRQUNwQyxPQUFPLE9BQU8sS0FBSyxLQUFLLFdBQVcsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUN0RSxDQUFDO0lBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUE4QixFQUFFLFNBQWlCLEVBQUUsSUFBK0I7UUFDMUYsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3pCLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDMUIsT0FBTyxHQUFHLENBQUM7U0FDZDtRQUVELE9BQU8sR0FBRyxHQUFHLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFDbEMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIFN0cmluZ0hlbHBlciB7XHJcbiAgICBzdGF0aWMgZmlyc3RVcHBlcih2Pzogc3RyaW5nIHwgbnVsbCkge1xyXG4gICAgICAgIGlmICghdiB8fCB2Lmxlbmd0aCA8IDEpXHJcbiAgICAgICAgICAgIHJldHVybiB2O1xyXG5cclxuICAgICAgICByZXR1cm4gdi5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHYuc2xpY2UoMSk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGlzTnVsbE9yRW1wdHkodmFsdWU/OiBzdHJpbmcgfCBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ3VuZGVmaW5lZCcgfHwgdmFsdWUgPT0gbnVsbCB8fCAoKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpICYmIHZhbHVlLmxlbmd0aCA9PT0gMCk7XHJcbiAgICB9XHJcbiAgICBzdGF0aWMgaXNOdWxsT3JXaGl0ZVNwYWNlKHZhbHVlPzogc3RyaW5nIHwgbnVsbCkge1xyXG4gICAgICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICd1bmRlZmluZWQnIHx8IHZhbHVlID09IG51bGwgfHwgKCh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSAmJiB2YWx1ZS50cmltKCkubGVuZ3RoID09PSAwKTtcclxuICAgIH1cclxuICAgIHN0YXRpYyB0cnlUcmltKHZhbDogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xyXG4gICAgICAgIGlmICh2YWwgPT09IHVuZGVmaW5lZCB8fCB2YWwgPT09IG51bGwpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHZhbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHZhbC50cmltKCk7XHJcbiAgICB9XHJcbiAgICBzdGF0aWMgaWZOdWxsRW1wdHkodmFsdWU/OiBzdHJpbmcgfCBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ3VuZGVmaW5lZCcgfHwgdmFsdWUgPT0gbnVsbCA/ICcnIDogdmFsdWU7XHJcbiAgICB9XHJcbiAgICBzdGF0aWMgam9pbih2YWw6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwsIHNlcGFyYXRvcjogc3RyaW5nLCBwYXJ0OiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXNOdWxsT3JFbXB0eSh2YWwpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBwYXJ0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuaXNOdWxsT3JFbXB0eShwYXJ0KSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdmFsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHZhbCArIHNlcGFyYXRvciArIHBhcnQ7XHJcbiAgICB9XHJcbn0iXX0=
|