zek 17.3.119 → 19.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 +49 -10
- package/fesm2022/zek.mjs +856 -750
- package/fesm2022/zek.mjs.map +1 -1
- package/lib/components/base.component.d.ts +1 -1
- package/lib/components/core-ui.component.d.ts +1 -1
- package/lib/components/core.component.d.ts +1 -1
- package/lib/components/edit-base.component.d.ts +3 -3
- package/lib/components/list-base.component.d.ts +1 -1
- package/lib/modules/bb/bb-modal-base.d.ts +1 -1
- package/lib/modules/validators/directive.d.ts +1 -1
- package/package.json +3 -5
- package/esm2022/lib/components/args.mjs +0 -2
- package/esm2022/lib/components/base.component.mjs +0 -101
- package/esm2022/lib/components/core-ui.component.mjs +0 -193
- package/esm2022/lib/components/core.component.mjs +0 -46
- package/esm2022/lib/components/edit-base.component.mjs +0 -226
- package/esm2022/lib/components/index.mjs +0 -8
- package/esm2022/lib/components/list-base.component.mjs +0 -311
- package/esm2022/lib/components/types.mjs +0 -2
- package/esm2022/lib/directives/delayed-input.directive.mjs +0 -57
- package/esm2022/lib/directives/index.mjs +0 -2
- package/esm2022/lib/models/alert-type.mjs +0 -2
- package/esm2022/lib/models/api.mjs +0 -2
- package/esm2022/lib/models/approve.moodel.mjs +0 -2
- package/esm2022/lib/models/batch.model.mjs +0 -2
- package/esm2022/lib/models/captcha.model.mjs +0 -2
- package/esm2022/lib/models/ctor.mjs +0 -2
- package/esm2022/lib/models/edit-base.model.mjs +0 -3
- package/esm2022/lib/models/file.model.mjs +0 -2
- package/esm2022/lib/models/filter.model.mjs +0 -12
- package/esm2022/lib/models/gender.model.mjs +0 -6
- package/esm2022/lib/models/index.mjs +0 -22
- package/esm2022/lib/models/key-pair.model.mjs +0 -14
- package/esm2022/lib/models/list-base.model.mjs +0 -3
- package/esm2022/lib/models/login.model.mjs +0 -2
- package/esm2022/lib/models/modal-size.mjs +0 -2
- package/esm2022/lib/models/month.model.mjs +0 -16
- package/esm2022/lib/models/nav.model.mjs +0 -2
- package/esm2022/lib/models/pager.model.mjs +0 -33
- package/esm2022/lib/models/print.model.mjs +0 -6
- package/esm2022/lib/models/tree.mjs +0 -2
- package/esm2022/lib/models/tree.model.mjs +0 -7
- package/esm2022/lib/models/valid-event-args.model.mjs +0 -6
- package/esm2022/lib/modules/age/age.pipe.mjs +0 -22
- package/esm2022/lib/modules/age/index.mjs +0 -2
- package/esm2022/lib/modules/alert/alert/alert.mjs +0 -48
- package/esm2022/lib/modules/alert/index.mjs +0 -5
- package/esm2022/lib/modules/alert/toast/toast.mjs +0 -119
- package/esm2022/lib/modules/alert/validation/validation.mjs +0 -56
- package/esm2022/lib/modules/autocomplete/autocomplete.directive.mjs +0 -25
- package/esm2022/lib/modules/autocomplete/index.mjs +0 -2
- package/esm2022/lib/modules/bb/bb-modal-base.mjs +0 -74
- package/esm2022/lib/modules/bb/bb-modal-toolbar.mjs +0 -44
- package/esm2022/lib/modules/bb/bb.component.mjs +0 -207
- package/esm2022/lib/modules/bb/bb.module.mjs +0 -37
- package/esm2022/lib/modules/bb/index.mjs +0 -5
- package/esm2022/lib/modules/callback/callback.pipe.mjs +0 -23
- package/esm2022/lib/modules/callback/index.mjs +0 -2
- package/esm2022/lib/modules/card/card/card.mjs +0 -48
- package/esm2022/lib/modules/card/index.mjs +0 -2
- package/esm2022/lib/modules/countdown/countdown.mjs +0 -103
- package/esm2022/lib/modules/countdown/index.mjs +0 -2
- package/esm2022/lib/modules/date-ago/date-ago.pipe.mjs +0 -45
- package/esm2022/lib/modules/date-ago/index.mjs +0 -2
- package/esm2022/lib/modules/datepicker/date-value-accessor.mjs +0 -188
- package/esm2022/lib/modules/datepicker/datepicker.module.mjs +0 -31
- package/esm2022/lib/modules/datepicker/index.mjs +0 -3
- package/esm2022/lib/modules/edit-toolbar/edit-toolbar.mjs +0 -94
- package/esm2022/lib/modules/edit-toolbar/index.mjs +0 -2
- package/esm2022/lib/modules/file/file-size.pipe.mjs +0 -50
- package/esm2022/lib/modules/file/index.mjs +0 -2
- package/esm2022/lib/modules/file-input/file-input.mjs +0 -79
- package/esm2022/lib/modules/file-input/index.mjs +0 -2
- package/esm2022/lib/modules/file-viewer/file-viewer.mjs +0 -53
- package/esm2022/lib/modules/file-viewer/index.mjs +0 -2
- package/esm2022/lib/modules/google-login-button/google-login-button.mjs +0 -135
- package/esm2022/lib/modules/google-login-button/index.mjs +0 -3
- package/esm2022/lib/modules/google-login-button/loader.mjs +0 -10
- package/esm2022/lib/modules/google-login-button/module.mjs +0 -40
- package/esm2022/lib/modules/grid-toolbar/grid-toolbar/grid-toolbar.mjs +0 -147
- package/esm2022/lib/modules/grid-toolbar/grid-toolbar-bar/grid-toolbar-bar.mjs +0 -16
- package/esm2022/lib/modules/grid-toolbar/index.mjs +0 -3
- package/esm2022/lib/modules/index.mjs +0 -39
- package/esm2022/lib/modules/list-toolbar/index.mjs +0 -2
- package/esm2022/lib/modules/list-toolbar/list-toolbar.mjs +0 -112
- package/esm2022/lib/modules/loading/index.mjs +0 -4
- package/esm2022/lib/modules/loading/loading-interceptor.mjs +0 -59
- package/esm2022/lib/modules/loading/loading.mjs +0 -33
- package/esm2022/lib/modules/loading/loading.module.mjs +0 -32
- package/esm2022/lib/modules/modal/filter-modal/filter-modal.component.mjs +0 -23
- package/esm2022/lib/modules/modal/index.mjs +0 -5
- package/esm2022/lib/modules/modal/modal/modal.component.mjs +0 -355
- package/esm2022/lib/modules/modal/modal.module.mjs +0 -62
- package/esm2022/lib/modules/modal/sum-modal/sum-modal.component.mjs +0 -27
- package/esm2022/lib/modules/numeric/index.mjs +0 -2
- package/esm2022/lib/modules/numeric/numeric.directive.mjs +0 -92
- package/esm2022/lib/modules/page-title/index.mjs +0 -2
- package/esm2022/lib/modules/page-title/page-title.component.mjs +0 -33
- package/esm2022/lib/modules/pager/index.mjs +0 -2
- package/esm2022/lib/modules/pager/pager/pager.mjs +0 -52
- package/esm2022/lib/modules/password/index.mjs +0 -2
- package/esm2022/lib/modules/password/password.mjs +0 -48
- package/esm2022/lib/modules/progress/index.mjs +0 -2
- package/esm2022/lib/modules/progress/progress.mjs +0 -97
- package/esm2022/lib/modules/radio/index.mjs +0 -2
- package/esm2022/lib/modules/radio/radio.mjs +0 -133
- package/esm2022/lib/modules/readonly/index.mjs +0 -2
- package/esm2022/lib/modules/readonly/readonly.directive.mjs +0 -29
- package/esm2022/lib/modules/recaptcha/index.mjs +0 -4
- package/esm2022/lib/modules/recaptcha/loader.mjs +0 -13
- package/esm2022/lib/modules/recaptcha/recaptcha.model.mjs +0 -2
- package/esm2022/lib/modules/recaptcha/recaptcha.module.mjs +0 -32
- package/esm2022/lib/modules/recaptcha/recaptcha.service.mjs +0 -119
- package/esm2022/lib/modules/safe/index.mjs +0 -2
- package/esm2022/lib/modules/safe/safe.pipe.mjs +0 -40
- package/esm2022/lib/modules/select/index.mjs +0 -2
- package/esm2022/lib/modules/select/model.mjs +0 -4
- package/esm2022/lib/modules/select/select.mjs +0 -201
- package/esm2022/lib/modules/select2/index.mjs +0 -2
- package/esm2022/lib/modules/select2/select2.mjs +0 -172
- package/esm2022/lib/modules/select2-multiple/index.mjs +0 -2
- package/esm2022/lib/modules/select2-multiple/select2-multiple.mjs +0 -137
- package/esm2022/lib/modules/sort/index.mjs +0 -3
- package/esm2022/lib/modules/sort/sort-button-group/sort-button-group.mjs +0 -81
- package/esm2022/lib/modules/sort/sort.mjs +0 -120
- package/esm2022/lib/modules/tag/index.mjs +0 -2
- package/esm2022/lib/modules/tag/tag.mjs +0 -111
- package/esm2022/lib/modules/time/index.mjs +0 -4
- package/esm2022/lib/modules/time/time.module.mjs +0 -27
- package/esm2022/lib/modules/time/time.pipe.mjs +0 -40
- package/esm2022/lib/modules/time/timer-service.mjs +0 -89
- package/esm2022/lib/modules/tooltip/index.mjs +0 -2
- package/esm2022/lib/modules/tooltip/tooltip.mjs +0 -27
- package/esm2022/lib/modules/utc-to-local/index.mjs +0 -3
- package/esm2022/lib/modules/utc-to-local/local-to-utc.pipe.mjs +0 -39
- package/esm2022/lib/modules/utc-to-local/utc-to-local.pipe.mjs +0 -38
- package/esm2022/lib/modules/validator/field-validator.mjs +0 -17
- package/esm2022/lib/modules/validator/index.mjs +0 -2
- package/esm2022/lib/modules/validators/directive.mjs +0 -107
- package/esm2022/lib/modules/validators/index.mjs +0 -4
- package/esm2022/lib/modules/validators/module.mjs +0 -28
- package/esm2022/lib/modules/validators/validator.mjs +0 -119
- package/esm2022/lib/modules/wizard/index.mjs +0 -3
- package/esm2022/lib/modules/wizard/wizard/wizard.mjs +0 -66
- package/esm2022/lib/modules/wizard/wizard2/wizard2.mjs +0 -14
- package/esm2022/lib/services/alert.service.mjs +0 -74
- package/esm2022/lib/services/auth-guard.service.mjs +0 -13
- package/esm2022/lib/services/auth.service.mjs +0 -194
- package/esm2022/lib/services/base.service.mjs +0 -8
- package/esm2022/lib/services/cache-helper.mjs +0 -35
- package/esm2022/lib/services/crud.service.mjs +0 -48
- package/esm2022/lib/services/file.service.mjs +0 -32
- package/esm2022/lib/services/http-error-handler.service.mjs +0 -141
- package/esm2022/lib/services/index.mjs +0 -9
- package/esm2022/lib/services/web.api.mjs +0 -139
- package/esm2022/lib/tokens.mjs +0 -7
- package/esm2022/lib/utils/array-helper.mjs +0 -216
- package/esm2022/lib/utils/base64-helper.mjs +0 -18
- package/esm2022/lib/utils/bitwise-helper.mjs +0 -14
- package/esm2022/lib/utils/bootstrap.helper.mjs +0 -124
- package/esm2022/lib/utils/convert.mjs +0 -35
- package/esm2022/lib/utils/css-helper.mjs +0 -41
- package/esm2022/lib/utils/date-helper.mjs +0 -264
- package/esm2022/lib/utils/error-helper.mjs +0 -32
- package/esm2022/lib/utils/excel-helper.mjs +0 -13
- package/esm2022/lib/utils/file.helper.mjs +0 -75
- package/esm2022/lib/utils/filter-helper.mjs +0 -13
- package/esm2022/lib/utils/handler.mjs +0 -24
- package/esm2022/lib/utils/html-helper.mjs +0 -73
- package/esm2022/lib/utils/index.mjs +0 -28
- package/esm2022/lib/utils/interval-helper.mjs +0 -32
- package/esm2022/lib/utils/jwt-helper.mjs +0 -11
- package/esm2022/lib/utils/math-helper.mjs +0 -19
- package/esm2022/lib/utils/object-helper.mjs +0 -80
- package/esm2022/lib/utils/overlap-helper.mjs +0 -73
- package/esm2022/lib/utils/pager-helper.mjs +0 -63
- package/esm2022/lib/utils/random-helper.mjs +0 -16
- package/esm2022/lib/utils/storage-helper.mjs +0 -28
- package/esm2022/lib/utils/string-helper.mjs +0 -84
- package/esm2022/lib/utils/thenBy.mjs +0 -41
- package/esm2022/lib/utils/time-helper.mjs +0 -46
- package/esm2022/lib/utils/tmp-helper.mjs +0 -25
- package/esm2022/lib/utils/url-helper.mjs +0 -44
- package/esm2022/lib/utils/validation-helper.mjs +0 -10
- package/esm2022/lib/zek.module.mjs +0 -28
- package/esm2022/public-api.mjs +0 -12
- package/esm2022/zek.mjs +0 -5
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
export class IntervalHelper {
|
|
2
|
-
static { this._timeouts = []; }
|
|
3
|
-
static create(callback, ms) {
|
|
4
|
-
const id = setInterval(() => {
|
|
5
|
-
callback();
|
|
6
|
-
}, ms);
|
|
7
|
-
const timeout = {
|
|
8
|
-
id: +id,
|
|
9
|
-
callback: callback.toString(),
|
|
10
|
-
interval: ms,
|
|
11
|
-
createdAt: new Date()
|
|
12
|
-
};
|
|
13
|
-
this._timeouts.push(timeout);
|
|
14
|
-
return timeout;
|
|
15
|
-
}
|
|
16
|
-
static clear(id) {
|
|
17
|
-
const index = this._timeouts.findIndex(x => x.id === id);
|
|
18
|
-
if (index !== -1) {
|
|
19
|
-
clearInterval(id);
|
|
20
|
-
this._timeouts.splice(index, 1);
|
|
21
|
-
return true;
|
|
22
|
-
}
|
|
23
|
-
return false;
|
|
24
|
-
}
|
|
25
|
-
static clearAll() {
|
|
26
|
-
for (const timeout of this._timeouts) {
|
|
27
|
-
this.clear(timeout.id);
|
|
28
|
-
}
|
|
29
|
-
this._timeouts = [];
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJ2YWwtaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvdXRpbHMvaW50ZXJ2YWwtaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE1BQU0sT0FBTyxjQUFjO2FBQ1YsY0FBUyxHQUFlLEVBQUUsQ0FBQztJQUUxQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQWtCLEVBQUUsRUFBVTtRQUMxQyxNQUFNLEVBQUUsR0FBRyxXQUFXLENBQUMsR0FBRyxFQUFFO1lBQzFCLFFBQVEsRUFBRSxDQUFDO1FBQ2IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRVAsTUFBTSxPQUFPLEdBQUc7WUFDZCxFQUFFLEVBQUUsQ0FBQyxFQUFFO1lBQ1AsUUFBUSxFQUFFLFFBQVEsQ0FBQyxRQUFRLEVBQUU7WUFDN0IsUUFBUSxFQUFFLEVBQUU7WUFDWixTQUFTLEVBQUUsSUFBSSxJQUFJLEVBQUU7U0FDVixDQUFDO1FBQ2QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0IsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBVTtRQUNyQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDekQsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNqQixhQUFhLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2hDLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRO1FBQ2IsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDekIsQ0FBQztRQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuZXhwb3J0IGludGVyZmFjZSBJVGltZW91dCB7XHJcbiAgaWQ6IG51bWJlcjtcclxuICBjYWxsYmFjazogc3RyaW5nO1xyXG4gIGludGVydmFsOiBudW1iZXI7XHJcbiAgY3JlYXRlZEF0OiBEYXRlO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgSW50ZXJ2YWxIZWxwZXIge1xyXG4gIHByaXZhdGUgc3RhdGljIF90aW1lb3V0czogSVRpbWVvdXRbXSA9IFtdO1xyXG5cclxuICBzdGF0aWMgY3JlYXRlKGNhbGxiYWNrOiBGdW5jdGlvbiwgbXM6IG51bWJlcikge1xyXG4gICAgY29uc3QgaWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XHJcbiAgICAgIGNhbGxiYWNrKCk7XHJcbiAgICB9LCBtcyk7XHJcblxyXG4gICAgY29uc3QgdGltZW91dCA9IHtcclxuICAgICAgaWQ6ICtpZCxcclxuICAgICAgY2FsbGJhY2s6IGNhbGxiYWNrLnRvU3RyaW5nKCksXHJcbiAgICAgIGludGVydmFsOiBtcyxcclxuICAgICAgY3JlYXRlZEF0OiBuZXcgRGF0ZSgpXHJcbiAgICB9IGFzIElUaW1lb3V0O1xyXG4gICAgdGhpcy5fdGltZW91dHMucHVzaCh0aW1lb3V0KTtcclxuICAgIHJldHVybiB0aW1lb3V0O1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGNsZWFyKGlkOiBudW1iZXIpIHtcclxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5fdGltZW91dHMuZmluZEluZGV4KHggPT4geC5pZCA9PT0gaWQpO1xyXG4gICAgaWYgKGluZGV4ICE9PSAtMSkge1xyXG4gICAgICBjbGVhckludGVydmFsKGlkKTtcclxuICAgICAgdGhpcy5fdGltZW91dHMuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgY2xlYXJBbGwoKSB7XHJcbiAgICBmb3IgKGNvbnN0IHRpbWVvdXQgb2YgdGhpcy5fdGltZW91dHMpIHtcclxuICAgICAgdGhpcy5jbGVhcih0aW1lb3V0LmlkKTtcclxuICAgIH1cclxuICAgIHRoaXMuX3RpbWVvdXRzID0gW107XHJcbiAgfVxyXG59Il19
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export class JwtHelper {
|
|
2
|
-
static decode(token) {
|
|
3
|
-
const base64Url = token.split('.')[1];
|
|
4
|
-
const base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');
|
|
5
|
-
const jsonPayload = decodeURIComponent(atob(base64).split('').map(function (c) {
|
|
6
|
-
return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
|
|
7
|
-
}).join(''));
|
|
8
|
-
return JSON.parse(jsonPayload);
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiand0LWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL3V0aWxzL2p3dC1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFNBQVM7SUFFbEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFVO1FBQ3BCLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDckMsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMvRCxNQUFNLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7WUFDekUsT0FBTyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgSnd0SGVscGVyIHtcclxuXHJcbiAgICBzdGF0aWMgZGVjb2RlKHRva2VuOiBhbnkpIHtcclxuICAgICAgICBjb25zdCBiYXNlNjRVcmwgPSB0b2tlbi5zcGxpdCgnLicpWzFdXHJcbiAgICAgICAgY29uc3QgYmFzZTY0ID0gYmFzZTY0VXJsLnJlcGxhY2UoLy0vZywgJysnKS5yZXBsYWNlKC9fL2csICcvJyk7XHJcbiAgICAgICAgY29uc3QganNvblBheWxvYWQgPSBkZWNvZGVVUklDb21wb25lbnQoYXRvYihiYXNlNjQpLnNwbGl0KCcnKS5tYXAoZnVuY3Rpb24gKGMpIHtcclxuICAgICAgICAgICAgcmV0dXJuICclJyArICgnMDAnICsgYy5jaGFyQ29kZUF0KDApLnRvU3RyaW5nKDE2KSkuc2xpY2UoLTIpO1xyXG4gICAgICAgIH0pLmpvaW4oJycpKTtcclxuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShqc29uUGF5bG9hZClcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export class MathHelper {
|
|
2
|
-
static round(value, decimals = 0) {
|
|
3
|
-
return Math.round(Number(value) * Math.pow(10, decimals)) / (Math.pow(10, decimals));
|
|
4
|
-
}
|
|
5
|
-
static clamp(v, min, max) {
|
|
6
|
-
return Math.max(min, Math.min(max, v));
|
|
7
|
-
}
|
|
8
|
-
// static sum(...values: number[]) {
|
|
9
|
-
// return values.reduce((acc, cur) => acc + cur, 0);
|
|
10
|
-
// }
|
|
11
|
-
static sum(...values) {
|
|
12
|
-
let sum = 0;
|
|
13
|
-
for (let i = 0; i < values.length; i++) {
|
|
14
|
-
sum += values[i];
|
|
15
|
-
}
|
|
16
|
-
return sum;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0aC1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi91dGlscy9tYXRoLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sVUFBVTtJQUNuQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQWEsRUFBRSxXQUFtQixDQUFDO1FBQzVDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUdELE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBUyxFQUFFLEdBQVcsRUFBRSxHQUFXO1FBQzVDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsb0NBQW9DO0lBQ3BDLHdEQUF3RDtJQUN4RCxJQUFJO0lBQ0osTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQWdCO1FBQzFCLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQztRQUNaLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDckMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyQixDQUFDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgTWF0aEhlbHBlciB7XHJcbiAgICBzdGF0aWMgcm91bmQodmFsdWU6IG51bWJlciwgZGVjaW1hbHM6IG51bWJlciA9IDApOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiBNYXRoLnJvdW5kKE51bWJlcih2YWx1ZSkgKiBNYXRoLnBvdygxMCwgZGVjaW1hbHMpKSAvIChNYXRoLnBvdygxMCwgZGVjaW1hbHMpKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgc3RhdGljIGNsYW1wKHY6IG51bWJlciwgbWluOiBudW1iZXIsIG1heDogbnVtYmVyKSB7XHJcbiAgICAgICAgcmV0dXJuIE1hdGgubWF4KG1pbiwgTWF0aC5taW4obWF4LCB2KSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gc3RhdGljIHN1bSguLi52YWx1ZXM6IG51bWJlcltdKSB7XHJcbiAgICAvLyAgICAgcmV0dXJuIHZhbHVlcy5yZWR1Y2UoKGFjYywgY3VyKSA9PiBhY2MgKyBjdXIsIDApO1xyXG4gICAgLy8gfVxyXG4gICAgc3RhdGljIHN1bSguLi52YWx1ZXM6IG51bWJlcltdKSB7XHJcbiAgICAgICAgbGV0IHN1bSA9IDA7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgc3VtICs9IHZhbHVlc1tpXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHN1bTtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -1,80 +0,0 @@
|
|
|
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 (const prop in obj) {
|
|
22
|
-
const 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
|
-
/**
|
|
32
|
-
* @deprecated The method should not be used. please use deleteNullFields
|
|
33
|
-
*/
|
|
34
|
-
static deleteNullKeys(val) {
|
|
35
|
-
this.deleteNullFields(val);
|
|
36
|
-
}
|
|
37
|
-
static deleteNullFields(val) {
|
|
38
|
-
if (!val)
|
|
39
|
-
return;
|
|
40
|
-
for (let key in val) {
|
|
41
|
-
let tmp = val[key];
|
|
42
|
-
if (tmp === undefined || tmp === null) {
|
|
43
|
-
delete val[key];
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
return val;
|
|
47
|
-
}
|
|
48
|
-
static assignFields(target, source) {
|
|
49
|
-
let t = target;
|
|
50
|
-
let s = source;
|
|
51
|
-
for (const key of Object.keys(target)) {
|
|
52
|
-
let v = s[key];
|
|
53
|
-
if (typeof v !== 'undefined') {
|
|
54
|
-
t[key] = v;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
return target;
|
|
58
|
-
}
|
|
59
|
-
static deepCopy(value) {
|
|
60
|
-
if (!this.isObject(value))
|
|
61
|
-
return value;
|
|
62
|
-
let output = {};
|
|
63
|
-
if (Array.isArray(value)) {
|
|
64
|
-
output = value.map(x => this.deepCopy(x));
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
Object.keys(value).forEach((key) => {
|
|
68
|
-
const v = value[key];
|
|
69
|
-
if (this.isObject(v)) {
|
|
70
|
-
output[key] = this.deepCopy(v);
|
|
71
|
-
}
|
|
72
|
-
else {
|
|
73
|
-
Object.assign(output, { [key]: v });
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
return output;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL3V0aWxzL29iamVjdC1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsTUFBTSxPQUFPLFlBQVk7SUFDckIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLE9BQU8sT0FBTyxLQUFLLEtBQUssV0FBVyxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUM7SUFDMUQsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBVTtRQUN0QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDO0lBQzlELENBQUM7SUFHRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFVO1FBQzFCLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDakgsQ0FBQztJQUdELE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBUTtRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUM7WUFDcEIsT0FBTyxJQUFJLENBQUM7UUFDaEIsa0RBQWtEO1FBQ2xELG1CQUFtQjtRQUNuQixLQUFLLE1BQU0sSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ3JCLE1BQU0sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7Z0JBQ3JCLE9BQU8sS0FBSyxDQUFDO1lBQ2pCLG9GQUFvRjtZQUNwRixvQkFBb0I7WUFDcEIsSUFBSTtRQUNSLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBR0Q7O09BRUc7SUFDSCxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQVE7UUFDMUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxNQUFNLENBQUMsZ0JBQWdCLENBQWUsR0FBTTtRQUN4QyxJQUFJLENBQUMsR0FBRztZQUFFLE9BQU87UUFDakIsS0FBSyxJQUFJLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNsQixJQUFJLEdBQUcsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDbkIsSUFBSSxHQUFHLEtBQUssU0FBUyxJQUFJLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDcEMsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDcEIsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLEdBQUcsQ0FBQTtJQUNkLENBQUM7SUFFRCxNQUFNLENBQUMsWUFBWSxDQUE2QixNQUFTLEVBQUUsTUFBUztRQUNoRSxJQUFJLENBQUMsR0FBUSxNQUFNLENBQUM7UUFDcEIsSUFBSSxDQUFDLEdBQVEsTUFBTSxDQUFDO1FBQ3BCLEtBQUssTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNmLElBQUksT0FBTyxDQUFDLEtBQUssV0FBVyxFQUFFLENBQUM7Z0JBQzNCLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDZixDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFJRCxNQUFNLENBQUMsUUFBUSxDQUFVLEtBQVU7UUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQ3JCLE9BQU8sS0FBSyxDQUFDO1FBRWpCLElBQUksTUFBTSxHQUFRLEVBQUUsQ0FBQztRQUNyQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN2QixNQUFNLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5QyxDQUFDO2FBQ0ksQ0FBQztZQUNGLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUU7Z0JBQ3BDLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFFckIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7b0JBQ25CLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUVuQyxDQUFDO3FCQUFNLENBQUM7b0JBQ0osTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ3hDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7UUFFRCxPQUFPLE1BQVcsQ0FBQztJQUN2QixDQUFDO0NBRUoiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuZXhwb3J0IGNsYXNzIE9iamVjdEhlbHBlciB7XHJcbiAgICBzdGF0aWMgaXNEZWZpbmVkKHZhbHVlOiBhbnkpIHtcclxuICAgICAgICByZXR1cm4gdHlwZW9mIHZhbHVlICE9PSAndW5kZWZpbmVkJyAmJiB2YWx1ZSAhPT0gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgaXNPYmplY3QodmFsdWU6IGFueSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmlzRGVmaW5lZCh2YWx1ZSkgJiYgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JztcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVjayBpZiB0aGUgb2JqZWN0IGlzIGEgc3RyaW5nIG9yIGFycmF5IGJlZm9yZSBldmFsdWF0aW5nIHRoZSBsZW5ndGggYXR0cmlidXRlLlxyXG4gICAgICogVGhpcyBhdm9pZHMgZmFsc2VseSByZWplY3Rpbmcgb2JqZWN0cyB0aGF0IGNvbnRhaW4gYSBjdXN0b20gbGVuZ3RoIGF0dHJpYnV0ZS5cclxuICAgICAqIEZvciBleGFtcGxlLCB0aGUgb2JqZWN0IHtpZDogMSwgbGVuZ3RoOiAwLCB3aWR0aDogMH0gc2hvdWxkIG5vdCBiZSByZXR1cm5lZCBhcyBlbXB0eS5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzRW1wdHlWYWx1ZSh2YWx1ZTogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICF0aGlzLmlzRGVmaW5lZCh2YWx1ZSkgfHwgKCh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnIHx8IEFycmF5LmlzQXJyYXkodmFsdWUpKSAmJiB2YWx1ZS5sZW5ndGggPT09IDApO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBzdGF0aWMgaXNFbXB0eShvYmo6IGFueSkge1xyXG4gICAgICAgIGlmICghdGhpcy5pc0RlZmluZWQob2JqKSlcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgLy8gaWYgKHR5cGVvZiBvYmogPT09ICd1bmRlZmluZWQnIHx8IG9iaiA9PT0gbnVsbClcclxuICAgICAgICAvLyAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgZm9yIChjb25zdCBwcm9wIGluIG9iaikge1xyXG4gICAgICAgICAgICBjb25zdCB2ID0gb2JqW3Byb3BdO1xyXG4gICAgICAgICAgICBpZiAoIXRoaXMuaXNFbXB0eVZhbHVlKHYpKVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgICAgICAvLyBpZiAodHlwZW9mIChvYmpbcHJvcF0pICE9PSB1bmRlZmluZWQgJiYgb2JqW3Byb3BdICE9PSBudWxsICYmIG9ialtwcm9wXSAhPT0gJycpIHtcclxuICAgICAgICAgICAgLy8gICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQGRlcHJlY2F0ZWQgVGhlIG1ldGhvZCBzaG91bGQgbm90IGJlIHVzZWQuIHBsZWFzZSB1c2UgZGVsZXRlTnVsbEZpZWxkc1xyXG4gICAgICovXHJcbiAgICBzdGF0aWMgZGVsZXRlTnVsbEtleXModmFsOiBhbnkpIHtcclxuICAgICAgICB0aGlzLmRlbGV0ZU51bGxGaWVsZHModmFsKTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgZGVsZXRlTnVsbEZpZWxkczxUIGV4dGVuZHMge30+KHZhbDogVCkge1xyXG4gICAgICAgIGlmICghdmFsKSByZXR1cm47XHJcbiAgICAgICAgZm9yIChsZXQga2V5IGluIHZhbCkge1xyXG4gICAgICAgICAgICBsZXQgdG1wID0gdmFsW2tleV07XHJcbiAgICAgICAgICAgIGlmICh0bXAgPT09IHVuZGVmaW5lZCB8fCB0bXAgPT09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIGRlbGV0ZSB2YWxba2V5XTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdmFsXHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGFzc2lnbkZpZWxkczxUIGV4dGVuZHMge30sIFUgZXh0ZW5kcyB7fT4odGFyZ2V0OiBULCBzb3VyY2U6IFUpOiBUIHtcclxuICAgICAgICBsZXQgdDogYW55ID0gdGFyZ2V0O1xyXG4gICAgICAgIGxldCBzOiBhbnkgPSBzb3VyY2U7XHJcbiAgICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXModGFyZ2V0KSkge1xyXG4gICAgICAgICAgICBsZXQgdiA9IHNba2V5XTtcclxuICAgICAgICAgICAgaWYgKHR5cGVvZiB2ICE9PSAndW5kZWZpbmVkJykge1xyXG4gICAgICAgICAgICAgICAgdFtrZXldID0gdjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGFyZ2V0O1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgc3RhdGljIGRlZXBDb3B5PFQgPSBhbnk+KHZhbHVlOiBhbnkpOiBUIHtcclxuICAgICAgICBpZiAoIXRoaXMuaXNPYmplY3QodmFsdWUpKVxyXG4gICAgICAgICAgICByZXR1cm4gdmFsdWU7XHJcblxyXG4gICAgICAgIGxldCBvdXRwdXQ6IGFueSA9IHt9O1xyXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xyXG4gICAgICAgICAgICBvdXRwdXQgPSB2YWx1ZS5tYXAoeCA9PiB0aGlzLmRlZXBDb3B5KHgpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHZhbHVlKS5mb3JFYWNoKChrZXk6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgdiA9IHZhbHVlW2tleV07XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNPYmplY3QodikpIHtcclxuICAgICAgICAgICAgICAgICAgICBvdXRwdXRba2V5XSA9IHRoaXMuZGVlcENvcHkodik7XHJcblxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKG91dHB1dCwgeyBba2V5XTogdiB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gb3V0cHV0IGFzIFQ7XHJcbiAgICB9XHJcblxyXG59Il19
|
|
@@ -1,73 +0,0 @@
|
|
|
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
|
-
const periodContainsMyStart = this.hasInside(start2, end2, start1);
|
|
41
|
-
const 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
|
-
const 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
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxhcC1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi91dGlscy9vdmVybGFwLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxjQWNYO0FBZEQsV0FBWSxjQUFjO0lBQ3RCLHFEQUFLLENBQUE7SUFDTCxxRUFBYSxDQUFBO0lBQ2IsaUVBQVcsQ0FBQTtJQUNYLGlGQUFtQixDQUFBO0lBQ25CLHVGQUFzQixDQUFBO0lBQ3RCLDZEQUFTLENBQUE7SUFDVCxtRkFBb0IsQ0FBQTtJQUNwQiwrREFBVSxDQUFBO0lBQ1YsdURBQU0sQ0FBQTtJQUNOLDZFQUFpQixDQUFBO0lBQ2pCLDhEQUFTLENBQUE7SUFDVCxrRUFBVyxDQUFBO0lBQ1gsd0RBQU0sQ0FBQTtBQUNWLENBQUMsRUFkVyxjQUFjLEtBQWQsY0FBYyxRQWN6QjtBQUVELE1BQU0sT0FBTyxhQUFhO0lBR3RCLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBWSxFQUFFLElBQVUsRUFBRSxNQUFZLEVBQUUsSUFBVTtRQUNqRSxJQUFJLElBQUksR0FBRyxNQUFNLEVBQUUsQ0FBQztZQUNoQixPQUFPLGNBQWMsQ0FBQyxLQUFLLENBQUM7UUFDaEMsQ0FBQztRQUNELElBQUksTUFBTSxHQUFHLElBQUksRUFBRSxDQUFDO1lBQ2hCLE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQztRQUNqQyxDQUFDO1FBQ0QsSUFBSSxNQUFNLElBQUksTUFBTSxJQUFJLElBQUksSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNuQyxPQUFPLGNBQWMsQ0FBQyxVQUFVLENBQUM7UUFDckMsQ0FBQztRQUNELElBQUksSUFBSSxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ2pCLE9BQU8sY0FBYyxDQUFDLGFBQWEsQ0FBQztRQUN4QyxDQUFDO1FBQ0QsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFDakIsT0FBTyxjQUFjLENBQUMsV0FBVyxDQUFDO1FBQ3RDLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUM5QyxJQUFJLE1BQU0sSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDbkIsT0FBTyxjQUFjLENBQUMsc0JBQXNCLENBQUM7WUFDakQsQ0FBQztZQUNELE9BQU8sSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDO1FBQ3pGLENBQUM7UUFDRCxNQUFNLHFCQUFxQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNuRSxNQUFNLG1CQUFtQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMvRCxJQUFJLHFCQUFxQixJQUFJLG1CQUFtQixFQUFFLENBQUM7WUFDL0MsSUFBSSxNQUFNLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ25CLE9BQU8sY0FBYyxDQUFDLG1CQUFtQixDQUFDO1lBQzlDLENBQUM7WUFDRCxPQUFPLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQztRQUNuRixDQUFDO1FBQ0QsSUFBSSxxQkFBcUIsRUFBRSxDQUFDO1lBQ3hCLE9BQU8sY0FBYyxDQUFDLFdBQVcsQ0FBQztRQUN0QyxDQUFDO1FBQ0QsSUFBSSxtQkFBbUIsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sY0FBYyxDQUFDLFNBQVMsQ0FBQztRQUNwQyxDQUFDO1FBRUQsTUFBTSxJQUFJLEtBQUssQ0FBQyw4QkFBOEIsR0FBRyxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksR0FBRyxTQUFTLEdBQUcsTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUM7SUFDbEgsQ0FBQztJQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVyxFQUFFLEdBQVMsRUFBRSxJQUFVO1FBQy9DLE9BQU8sSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksR0FBRyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQVksRUFBRSxJQUFVLEVBQUUsTUFBWSxFQUFFLElBQVU7UUFDaEUsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQVksRUFBRSxJQUFVLEVBQUUsTUFBWSxFQUFFLElBQVU7UUFDaEUsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBWSxFQUFFLElBQVUsRUFBRSxNQUFZLEVBQUUsSUFBVTtRQUM5RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzlELE9BQU8sUUFBUSxJQUFJLGNBQWMsQ0FBQyxLQUFLO1lBQ25DLFFBQVEsSUFBSSxjQUFjLENBQUMsYUFBYTtZQUN4QyxRQUFRLElBQUksY0FBYyxDQUFDLFdBQVc7WUFDdEMsUUFBUSxJQUFJLGNBQWMsQ0FBQyxNQUFNLENBQUM7SUFDMUMsQ0FBQztDQUdKIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gUGVyaW9kUmVsYXRpb24ge1xyXG4gICAgQWZ0ZXIsXHJcbiAgICBTdGFydFRvdWNoaW5nLFxyXG4gICAgU3RhcnRJbnNpZGUsXHJcbiAgICBJbnNpZGVTdGFydFRvdWNoaW5nLFxyXG4gICAgRW5jbG9zaW5nU3RhcnRUb3VjaGluZyxcclxuICAgIEVuY2xvc2luZyxcclxuICAgIEVuY2xvc2luZ0VuZFRvdWNoaW5nLFxyXG4gICAgRXhhY3RNYXRjaCxcclxuICAgIEluc2lkZSxcclxuICAgIEluc2lkZUVuZFRvdWNoaW5nLFxyXG4gICAgRW5kSW5zaWRlLFxyXG4gICAgRW5kVG91Y2hpbmcsXHJcbiAgICBCZWZvcmUsXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBPdmVybGFwSGVscGVyIHtcclxuXHJcblxyXG4gICAgc3RhdGljIGdldFJlbGF0aW9uKHN0YXJ0MTogRGF0ZSwgZW5kMTogRGF0ZSwgc3RhcnQyOiBEYXRlLCBlbmQyOiBEYXRlKTogUGVyaW9kUmVsYXRpb24ge1xyXG4gICAgICAgIGlmIChlbmQyIDwgc3RhcnQxKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBQZXJpb2RSZWxhdGlvbi5BZnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHN0YXJ0MiA+IGVuZDEpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFBlcmlvZFJlbGF0aW9uLkJlZm9yZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHN0YXJ0MiA9PSBzdGFydDEgJiYgZW5kMiA9PSBlbmQxKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBQZXJpb2RSZWxhdGlvbi5FeGFjdE1hdGNoO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZW5kMiA9PSBzdGFydDEpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFBlcmlvZFJlbGF0aW9uLlN0YXJ0VG91Y2hpbmc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChzdGFydDIgPT0gZW5kMSkge1xyXG4gICAgICAgICAgICByZXR1cm4gUGVyaW9kUmVsYXRpb24uRW5kVG91Y2hpbmc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmhhc0luc2lkZTIoc3RhcnQxLCBlbmQxLCBzdGFydDIsIGVuZDIpKSB7XHJcbiAgICAgICAgICAgIGlmIChzdGFydDIgPT0gc3RhcnQxKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gUGVyaW9kUmVsYXRpb24uRW5jbG9zaW5nU3RhcnRUb3VjaGluZztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gZW5kMiA9PSBlbmQxID8gUGVyaW9kUmVsYXRpb24uRW5jbG9zaW5nRW5kVG91Y2hpbmcgOiBQZXJpb2RSZWxhdGlvbi5FbmNsb3Npbmc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHBlcmlvZENvbnRhaW5zTXlTdGFydCA9IHRoaXMuaGFzSW5zaWRlKHN0YXJ0MiwgZW5kMiwgc3RhcnQxKTtcclxuICAgICAgICBjb25zdCBwZXJpb2RDb250YWluc015RW5kID0gdGhpcy5oYXNJbnNpZGUoc3RhcnQyLCBlbmQyLCBlbmQxKTtcclxuICAgICAgICBpZiAocGVyaW9kQ29udGFpbnNNeVN0YXJ0ICYmIHBlcmlvZENvbnRhaW5zTXlFbmQpIHtcclxuICAgICAgICAgICAgaWYgKHN0YXJ0MiA9PSBzdGFydDEpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBQZXJpb2RSZWxhdGlvbi5JbnNpZGVTdGFydFRvdWNoaW5nO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBlbmQyID09IGVuZDEgPyBQZXJpb2RSZWxhdGlvbi5JbnNpZGVFbmRUb3VjaGluZyA6IFBlcmlvZFJlbGF0aW9uLkluc2lkZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHBlcmlvZENvbnRhaW5zTXlTdGFydCkge1xyXG4gICAgICAgICAgICByZXR1cm4gUGVyaW9kUmVsYXRpb24uU3RhcnRJbnNpZGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChwZXJpb2RDb250YWluc015RW5kKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBQZXJpb2RSZWxhdGlvbi5FbmRJbnNpZGU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJpbnZhbGlkIHBlcmlvZCByZWxhdGlvbiBvZiAnXCIgKyBzdGFydDEgKyBcIi1cIiArIGVuZDEgKyBcIicgYW5kICdcIiArIHN0YXJ0MiArIFwiLVwiICsgZW5kMiArIFwiJ1wiKTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgaGFzSW5zaWRlKHN0YXJ0OiBEYXRlLCBlbmQ6IERhdGUsIGRhdGU6IERhdGUpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gZGF0ZSA+PSBzdGFydCAmJiBkYXRlIDw9IGVuZDtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgaGFzSW5zaWRlMihzdGFydDE6IERhdGUsIGVuZDE6IERhdGUsIHN0YXJ0MjogRGF0ZSwgZW5kMjogRGF0ZSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmhhc0luc2lkZShzdGFydDEsIGVuZDEsIHN0YXJ0MikgJiYgdGhpcy5oYXNJbnNpZGUoc3RhcnQxLCBlbmQxLCBlbmQyKTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgaW50ZXJzZWN0cyhzdGFydDE6IERhdGUsIGVuZDE6IERhdGUsIHN0YXJ0MjogRGF0ZSwgZW5kMjogRGF0ZSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmhhc0luc2lkZShzdGFydDEsIGVuZDEsIHN0YXJ0MikgfHwgdGhpcy5oYXNJbnNpZGUoc3RhcnQxLCBlbmQxLCBlbmQyKSB8fCAoc3RhcnQyIDwgc3RhcnQxICYmIGVuZDIgPiBlbmQxKTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgb3ZlcmxhcHMoc3RhcnQxOiBEYXRlLCBlbmQxOiBEYXRlLCBzdGFydDI6IERhdGUsIGVuZDI6IERhdGUpOiBib29sZWFuIHtcclxuICAgICAgICBjb25zdCByZWxhdGlvbiA9IHRoaXMuZ2V0UmVsYXRpb24oc3RhcnQxLCBlbmQxLCBzdGFydDIsIGVuZDIpO1xyXG4gICAgICAgIHJldHVybiByZWxhdGlvbiAhPSBQZXJpb2RSZWxhdGlvbi5BZnRlciAmJlxyXG4gICAgICAgICAgICByZWxhdGlvbiAhPSBQZXJpb2RSZWxhdGlvbi5TdGFydFRvdWNoaW5nICYmXHJcbiAgICAgICAgICAgIHJlbGF0aW9uICE9IFBlcmlvZFJlbGF0aW9uLkVuZFRvdWNoaW5nICYmXHJcbiAgICAgICAgICAgIHJlbGF0aW9uICE9IFBlcmlvZFJlbGF0aW9uLkJlZm9yZTtcclxuICAgIH1cclxuXHJcblxyXG59Il19
|
|
@@ -1,63 +0,0 @@
|
|
|
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
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZXItaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvdXRpbHMvcGFnZXItaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxXQUFXO0lBQ3BCLE1BQU0sQ0FBQyxHQUFHLENBQUMsY0FBeUMsRUFBRSxhQUF3QyxDQUFDLEVBQUUsV0FBc0MsRUFBRTtRQUNySSxJQUFJLENBQUMsY0FBYztZQUFFLGNBQWMsR0FBRyxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLFVBQVU7WUFBRSxVQUFVLEdBQUcsQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxRQUFRO1lBQUUsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUU3Qix3QkFBd0I7UUFDeEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsUUFBUSxDQUFDLENBQUM7UUFDdkQsSUFBSSxTQUFpQixFQUFFLE9BQWUsQ0FBQztRQUN2QyxJQUFJLFNBQVMsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNsQix1Q0FBdUM7WUFDdkMsU0FBUyxHQUFHLENBQUMsQ0FBQztZQUNkLE9BQU8sR0FBRyxTQUFTLENBQUM7UUFDeEIsQ0FBQzthQUFNLENBQUM7WUFDSiw0REFBNEQ7WUFDNUQsSUFBSSxVQUFVLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQ2xCLFNBQVMsR0FBRyxDQUFDLENBQUM7Z0JBQ2QsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNqQixDQUFDO2lCQUFNLElBQUksVUFBVSxHQUFHLENBQUMsSUFBSSxTQUFTLEVBQUUsQ0FBQztnQkFDckMsU0FBUyxHQUFHLFNBQVMsR0FBRyxDQUFDLENBQUM7Z0JBQzFCLE9BQU8sR0FBRyxTQUFTLENBQUM7WUFDeEIsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLFNBQVMsR0FBRyxVQUFVLEdBQUcsQ0FBQyxDQUFDO2dCQUMzQixPQUFPLEdBQUcsVUFBVSxHQUFHLENBQUMsQ0FBQztZQUM3QixDQUFDO1FBQ0wsQ0FBQztRQUVELHVDQUF1QztRQUN2QyxNQUFNLGVBQWUsR0FBRyxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUMsR0FBRyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3hELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZSxHQUFHLFFBQVEsR0FBRyxDQUFDLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFFaEYsTUFBTSxlQUFlLEdBQUcsVUFBVSxHQUFHLENBQUMsQ0FBQztRQUN2QyxNQUFNLFdBQVcsR0FBRyxVQUFVLEdBQUcsU0FBUyxDQUFDO1FBQzNDLE1BQU0sV0FBVyxHQUFHLFVBQVUsSUFBSSxDQUFDLENBQUM7UUFDcEMsTUFBTSxVQUFVLEdBQUcsVUFBVSxJQUFJLFNBQVMsQ0FBQztRQUUzQyw2REFBNkQ7UUFDN0QsOENBQThDO1FBQzlDLE1BQU0sS0FBSyxHQUFhLEVBQUUsQ0FBQztRQUMzQixLQUFLLElBQUksQ0FBQyxHQUFHLFNBQVMsRUFBRSxDQUFDLElBQUksT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDeEMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsQixDQUFDO1FBRUQsK0RBQStEO1FBQy9ELE9BQU87WUFDSCxTQUFTO1lBQ1QsY0FBYztZQUNkLFVBQVU7WUFDVixRQUFRO1lBQ1IsZUFBZTtZQUNmLFdBQVc7WUFDWCxXQUFXO1lBQ1gsVUFBVTtZQUNWLGVBQWU7WUFDZixjQUFjO1lBQ2QsU0FBUyxFQUFFLFNBQVM7WUFDcEIsT0FBTyxFQUFFLE9BQU87WUFDaEIsS0FBSztTQUNDLENBQUM7SUFDZixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYWdlciB9IGZyb20gXCIuLi9tb2RlbHNcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBQYWdlckhlbHBlciB7XHJcbiAgICBzdGF0aWMgZ2V0KHRvdGFsSXRlbUNvdW50OiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkLCBwYWdlTnVtYmVyOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkID0gMSwgcGFnZVNpemU6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQgPSAxMCkge1xyXG4gICAgICAgIGlmICghdG90YWxJdGVtQ291bnQpIHRvdGFsSXRlbUNvdW50ID0gMDtcclxuICAgICAgICBpZiAoIXBhZ2VOdW1iZXIpIHBhZ2VOdW1iZXIgPSAxO1xyXG4gICAgICAgIGlmICghcGFnZVNpemUpIHBhZ2VTaXplID0gMTA7XHJcblxyXG4gICAgICAgIC8vIGNhbGN1bGF0ZSB0b3RhbCBwYWdlc1xyXG4gICAgICAgIGNvbnN0IHBhZ2VDb3VudCA9IE1hdGguY2VpbCh0b3RhbEl0ZW1Db3VudCAvIHBhZ2VTaXplKTtcclxuICAgICAgICBsZXQgc3RhcnRQYWdlOiBudW1iZXIsIGVuZFBhZ2U6IG51bWJlcjtcclxuICAgICAgICBpZiAocGFnZUNvdW50IDw9IDEwKSB7XHJcbiAgICAgICAgICAgIC8vIGxlc3MgdGhhbiAxMCB0b3RhbCBwYWdlcyBzbyBzaG93IGFsbFxyXG4gICAgICAgICAgICBzdGFydFBhZ2UgPSAxO1xyXG4gICAgICAgICAgICBlbmRQYWdlID0gcGFnZUNvdW50O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIC8vIG1vcmUgdGhhbiAxMCB0b3RhbCBwYWdlcyBzbyBjYWxjdWxhdGUgc3RhcnQgYW5kIGVuZCBwYWdlc1xyXG4gICAgICAgICAgICBpZiAocGFnZU51bWJlciA8PSA2KSB7XHJcbiAgICAgICAgICAgICAgICBzdGFydFBhZ2UgPSAxO1xyXG4gICAgICAgICAgICAgICAgZW5kUGFnZSA9IDEwO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKHBhZ2VOdW1iZXIgKyA0ID49IHBhZ2VDb3VudCkge1xyXG4gICAgICAgICAgICAgICAgc3RhcnRQYWdlID0gcGFnZUNvdW50IC0gOTtcclxuICAgICAgICAgICAgICAgIGVuZFBhZ2UgPSBwYWdlQ291bnQ7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBzdGFydFBhZ2UgPSBwYWdlTnVtYmVyIC0gNTtcclxuICAgICAgICAgICAgICAgIGVuZFBhZ2UgPSBwYWdlTnVtYmVyICsgNDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gY2FsY3VsYXRlIHN0YXJ0IGFuZCBlbmQgaXRlbSBpbmRleGVzXHJcbiAgICAgICAgY29uc3QgZmlyc3RJdGVtT25QYWdlID0gKHBhZ2VOdW1iZXIgLSAxKSAqIHBhZ2VTaXplICsgMTtcclxuICAgICAgICBjb25zdCBsYXN0SXRlbU9uUGFnZSA9IE1hdGgubWluKGZpcnN0SXRlbU9uUGFnZSArIHBhZ2VTaXplIC0gMSwgdG90YWxJdGVtQ291bnQpO1xyXG5cclxuICAgICAgICBjb25zdCBoYXNQcmV2aW91c1BhZ2UgPSBwYWdlTnVtYmVyID4gMTtcclxuICAgICAgICBjb25zdCBoYXNOZXh0UGFnZSA9IHBhZ2VOdW1iZXIgPCBwYWdlQ291bnQ7XHJcbiAgICAgICAgY29uc3QgaXNGaXJzdFBhZ2UgPSBwYWdlTnVtYmVyIDw9IDE7XHJcbiAgICAgICAgY29uc3QgaXNMYXN0UGFnZSA9IHBhZ2VOdW1iZXIgPj0gcGFnZUNvdW50O1xyXG5cclxuICAgICAgICAvLyBjcmVhdGUgYW4gYXJyYXkgb2YgcGFnZXMgdG8gbmctcmVwZWF0IGluIHRoZSBwYWdlciBjb250cm9sXHJcbiAgICAgICAgLy9sZXQgcGFnZXMgPSBfLnJhbmdlKHN0YXJ0UGFnZSwgZW5kUGFnZSArIDEpO1xyXG4gICAgICAgIGNvbnN0IHBhZ2VzOiBudW1iZXJbXSA9IFtdO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSBzdGFydFBhZ2U7IGkgPD0gZW5kUGFnZTsgaSsrKSB7XHJcbiAgICAgICAgICAgIHBhZ2VzLnB1c2goaSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyByZXR1cm4gb2JqZWN0IHdpdGggYWxsIHBhZ2VyIHByb3BlcnRpZXMgcmVxdWlyZWQgYnkgdGhlIHZpZXdcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBwYWdlQ291bnQsXHJcbiAgICAgICAgICAgIHRvdGFsSXRlbUNvdW50LFxyXG4gICAgICAgICAgICBwYWdlTnVtYmVyLFxyXG4gICAgICAgICAgICBwYWdlU2l6ZSxcclxuICAgICAgICAgICAgaGFzUHJldmlvdXNQYWdlLFxyXG4gICAgICAgICAgICBoYXNOZXh0UGFnZSxcclxuICAgICAgICAgICAgaXNGaXJzdFBhZ2UsXHJcbiAgICAgICAgICAgIGlzTGFzdFBhZ2UsXHJcbiAgICAgICAgICAgIGZpcnN0SXRlbU9uUGFnZSxcclxuICAgICAgICAgICAgbGFzdEl0ZW1PblBhZ2UsXHJcbiAgICAgICAgICAgIHN0YXJ0UGFnZTogc3RhcnRQYWdlLFxyXG4gICAgICAgICAgICBlbmRQYWdlOiBlbmRQYWdlLFxyXG4gICAgICAgICAgICBwYWdlc1xyXG4gICAgICAgIH0gYXMgUGFnZXI7XHJcbiAgICB9XHJcbn0iXX0=
|
|
@@ -1,16 +0,0 @@
|
|
|
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
|
-
static randomInt(min, max) {
|
|
11
|
-
min = Math.ceil(min);
|
|
12
|
-
max = Math.floor(max);
|
|
13
|
-
return Math.floor(Math.random() * (max - min + 1)) + min;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZG9tLWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL3V0aWxzL3JhbmRvbS1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFlBQVk7SUFDckIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFnQixDQUFDO1FBQzlCLElBQUksR0FBRyxHQUFXLEVBQUUsQ0FBQztRQUNyQixLQUFLLElBQUksQ0FBQyxHQUFXLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDckMsc0NBQXNDO1lBQ3RDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzRSxDQUFDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0lBRUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFXLEVBQUUsR0FBVztRQUNyQyxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyQixHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV0QixPQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUM5RCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgUmFuZG9tSGVscGVyIHtcclxuICAgIHN0YXRpYyByYW5kb21IZXgoY291bnQ6IG51bWJlciA9IDIpIHtcclxuICAgICAgICBsZXQgb3V0OiBzdHJpbmcgPSAnJztcclxuICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgY291bnQ7IGkrKykge1xyXG4gICAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tYml0d2lzZVxyXG4gICAgICAgICAgICBvdXQgKz0gKCgoMSArIE1hdGgucmFuZG9tKCkpICogMHgxMDAwMCkgfCAwKS50b1N0cmluZygxNikuc3Vic3RyaW5nKDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gb3V0O1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyByYW5kb21JbnQobWluOiBudW1iZXIsIG1heDogbnVtYmVyKSB7XHJcbiAgICAgICAgbWluID0gTWF0aC5jZWlsKG1pbik7XHJcbiAgICAgICAgbWF4ID0gTWF0aC5mbG9vcihtYXgpO1xyXG5cclxuICAgICAgICByZXR1cm4gIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIChtYXggLSBtaW4gKyAxKSkgKyBtaW47XHJcbiAgICB9XHJcbn0iXX0=
|
|
@@ -1,28 +0,0 @@
|
|
|
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
|
-
const 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
|
-
const v = JSON.parse(str);
|
|
23
|
-
return v;
|
|
24
|
-
}
|
|
25
|
-
return str;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi91dGlscy9zdG9yYWdlLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sYUFBYTtJQUN0QixNQUFNLENBQUMsR0FBRyxDQUFDLEdBQVcsRUFBRSxLQUFVO1FBQzlCLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUFDLE9BQU87UUFBQyxDQUFDO1FBRXJCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNULFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDN0IsT0FBTztRQUNYLENBQUM7UUFFRCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzVCLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLENBQUM7UUFDRCxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBR0QsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFXO1FBQ2xCLE1BQU0sR0FBRyxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQUMsT0FBTyxJQUFJLENBQUM7UUFBQyxDQUFDO1FBRTFCLG1EQUFtRDtRQUNuRCxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNqQixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzFCLE9BQU8sQ0FBQyxDQUFDO1FBQ2IsQ0FBQztRQUVELE9BQU8sR0FBRyxDQUFDO0lBQ2YsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIFN0b3JhZ2VIZWxwZXIge1xyXG4gICAgc3RhdGljIHNldChrZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG4gICAgICAgIGlmICgha2V5KSB7IHJldHVybjsgfVxyXG5cclxuICAgICAgICBpZiAoIXZhbHVlKSB7XHJcbiAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFwib2JqZWN0XCIpIHtcclxuICAgICAgICAgICAgdmFsdWUgPSBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBzdGF0aWMgZ2V0KGtleTogc3RyaW5nKSB7XHJcbiAgICAgICAgY29uc3Qgc3RyID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcclxuICAgICAgICBpZiAoIXN0cikgeyByZXR1cm4gbnVsbDsgfVxyXG4gICAgXHJcbiAgICAgICAgLy8gYXNzdW1lIGl0IGlzIGFuIG9iamVjdCB0aGF0IGhhcyBiZWVuIHN0cmluZ2lmaWVkXHJcbiAgICAgICAgaWYgKHN0clswXSA9PT0gJ3snKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHYgPSBKU09OLnBhcnNlKHN0cik7XHJcbiAgICAgICAgICAgIHJldHVybiB2O1xyXG4gICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgIHJldHVybiBzdHI7XHJcbiAgICB9XHJcbn0iXX0=
|
|
@@ -1,84 +0,0 @@
|
|
|
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)
|
|
15
|
-
return val;
|
|
16
|
-
return val.trim();
|
|
17
|
-
}
|
|
18
|
-
static ifNullEmpty(value) {
|
|
19
|
-
return typeof value === 'undefined' || value == null ? '' : value;
|
|
20
|
-
}
|
|
21
|
-
static join(val, separator, part) {
|
|
22
|
-
if (this.isNullOrEmpty(val)) {
|
|
23
|
-
return part;
|
|
24
|
-
}
|
|
25
|
-
if (this.isNullOrEmpty(part)) {
|
|
26
|
-
return val;
|
|
27
|
-
}
|
|
28
|
-
return val + separator + part;
|
|
29
|
-
}
|
|
30
|
-
static trim(val, ch) {
|
|
31
|
-
if (!val || !ch)
|
|
32
|
-
return val;
|
|
33
|
-
let start = 0, end = val.length;
|
|
34
|
-
while (start < end && val[start] === ch)
|
|
35
|
-
++start;
|
|
36
|
-
while (end > start && val[end - 1] === ch)
|
|
37
|
-
--end;
|
|
38
|
-
return (start > 0 || end < val.length) ? val.substring(start, end) : val;
|
|
39
|
-
}
|
|
40
|
-
static trimStart(val, ch) {
|
|
41
|
-
if (!val || !ch)
|
|
42
|
-
return val;
|
|
43
|
-
let start = 0;
|
|
44
|
-
const end = val.length;
|
|
45
|
-
while (start < end && val[start] === ch)
|
|
46
|
-
++start;
|
|
47
|
-
return (start > 0) ? val.substring(start, end) : val;
|
|
48
|
-
}
|
|
49
|
-
static trimEnd(val, ch) {
|
|
50
|
-
if (!val || !ch)
|
|
51
|
-
return val;
|
|
52
|
-
let start = 0, end = val.length;
|
|
53
|
-
while (end > start && val[end - 1] === ch)
|
|
54
|
-
--end;
|
|
55
|
-
return (end < val.length) ? val.substring(start, end) : val;
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
*
|
|
59
|
-
* @param val source string
|
|
60
|
-
* @param chars trim any character
|
|
61
|
-
* @returns
|
|
62
|
-
*/
|
|
63
|
-
static trimAny(val, chars) {
|
|
64
|
-
if (!val || !chars)
|
|
65
|
-
return val;
|
|
66
|
-
let start = 0, end = val.length;
|
|
67
|
-
while (start < end && chars.indexOf(val[start]) >= 0)
|
|
68
|
-
++start;
|
|
69
|
-
while (end > start && chars.indexOf(val[end - 1]) >= 0)
|
|
70
|
-
--end;
|
|
71
|
-
return (start > 0 || end < val.length) ? val.substring(start, end) : val;
|
|
72
|
-
}
|
|
73
|
-
static split(val, ...separator) {
|
|
74
|
-
if (!val)
|
|
75
|
-
return [];
|
|
76
|
-
if (separator.length === 0)
|
|
77
|
-
separator = [','];
|
|
78
|
-
const regex = new RegExp(`(?:${separator.join('|')})`);
|
|
79
|
-
return val.split(regex)
|
|
80
|
-
.map(entry => entry.trim()) // Trim spaces
|
|
81
|
-
.filter(entry => entry.length > 0); // Remove empty entries
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL3V0aWxzL3N0cmluZy1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFlBQVk7SUFDckIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFpQjtRQUMvQixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQztZQUNsQixPQUFPLENBQUMsQ0FBQztRQUViLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLEtBQXFCO1FBQ3RDLE9BQU8sT0FBTyxLQUFLLEtBQUssV0FBVyxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDaEgsQ0FBQztJQUNELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxLQUFxQjtRQUMzQyxPQUFPLE9BQU8sS0FBSyxLQUFLLFdBQVcsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUMsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3ZILENBQUM7SUFDRCxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQThCO1FBQ3pDLElBQUksQ0FBQyxHQUFHO1lBQ0osT0FBTyxHQUFHLENBQUM7UUFDZixPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBQ0QsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFxQjtRQUNwQyxP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LEdBQUcsR0FBRyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQztZQUNoRCxFQUFFLEtBQUssQ0FBQztRQUVaLE9BQU8sR0FBRyxHQUFHLEtBQUssSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ2xELEVBQUUsR0FBRyxDQUFDO1FBRVYsT0FBTyxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUM3RSxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUE4QixFQUFFLEdBQUcsU0FBbUI7UUFDL0QsSUFBSSxDQUFDLEdBQUc7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUVwQixJQUFJLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUN0QixTQUFTLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV0QixNQUFNLEtBQUssR0FBRyxJQUFJLE1BQU0sQ0FBQyxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7YUFDbEIsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsY0FBYzthQUN6QyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsdUJBQXVCO0lBQ25FLENBQUM7Q0FFSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBTdHJpbmdIZWxwZXIge1xyXG4gICAgc3RhdGljIGZpcnN0VXBwZXIodj86IHN0cmluZyB8IG51bGwpIHtcclxuICAgICAgICBpZiAoIXYgfHwgdi5sZW5ndGggPCAxKVxyXG4gICAgICAgICAgICByZXR1cm4gdjtcclxuXHJcbiAgICAgICAgcmV0dXJuIHYuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB2LnNsaWNlKDEpO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBpc051bGxPckVtcHR5KHZhbHVlPzogc3RyaW5nIHwgbnVsbCkge1xyXG4gICAgICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICd1bmRlZmluZWQnIHx8IHZhbHVlID09IG51bGwgfHwgKCh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSAmJiB2YWx1ZS5sZW5ndGggPT09IDApO1xyXG4gICAgfVxyXG4gICAgc3RhdGljIGlzTnVsbE9yV2hpdGVTcGFjZSh2YWx1ZT86IHN0cmluZyB8IG51bGwpIHtcclxuICAgICAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJyB8fCB2YWx1ZSA9PSBudWxsIHx8ICgodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykgJiYgdmFsdWUudHJpbSgpLmxlbmd0aCA9PT0gMCk7XHJcbiAgICB9XHJcbiAgICBzdGF0aWMgdHJ5VHJpbSh2YWw6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwpIHtcclxuICAgICAgICBpZiAoIXZhbClcclxuICAgICAgICAgICAgcmV0dXJuIHZhbDtcclxuICAgICAgICByZXR1cm4gdmFsLnRyaW0oKTtcclxuICAgIH1cclxuICAgIHN0YXRpYyBpZk51bGxFbXB0eSh2YWx1ZT86IHN0cmluZyB8IG51bGwpIHtcclxuICAgICAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJyB8fCB2YWx1ZSA9PSBudWxsID8gJycgOiB2YWx1ZTtcclxuICAgIH1cclxuICAgIHN0YXRpYyBqb2luKHZhbDogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCwgc2VwYXJhdG9yOiBzdHJpbmcsIHBhcnQ6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwpIHtcclxuICAgICAgICBpZiAodGhpcy5pc051bGxPckVtcHR5KHZhbCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHBhcnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmlzTnVsbE9yRW1wdHkocGFydCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHZhbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB2YWwgKyBzZXBhcmF0b3IgKyBwYXJ0O1xyXG4gICAgfVxyXG4gICAgc3RhdGljIHRyaW0odmFsOiBzdHJpbmcgfCBudWxsLCBjaDogc3RyaW5nKSB7XHJcbiAgICAgICAgaWYgKCF2YWwgfHwgIWNoKVxyXG4gICAgICAgICAgICByZXR1cm4gdmFsO1xyXG5cclxuICAgICAgICBsZXQgc3RhcnQgPSAwLFxyXG4gICAgICAgICAgICBlbmQgPSB2YWwubGVuZ3RoO1xyXG5cclxuICAgICAgICB3aGlsZSAoc3RhcnQgPCBlbmQgJiYgdmFsW3N0YXJ0XSA9PT0gY2gpXHJcbiAgICAgICAgICAgICsrc3RhcnQ7XHJcblxyXG4gICAgICAgIHdoaWxlIChlbmQgPiBzdGFydCAmJiB2YWxbZW5kIC0gMV0gPT09IGNoKVxyXG4gICAgICAgICAgICAtLWVuZDtcclxuXHJcbiAgICAgICAgcmV0dXJuIChzdGFydCA+IDAgfHwgZW5kIDwgdmFsLmxlbmd0aCkgPyB2YWwuc3Vic3RyaW5nKHN0YXJ0LCBlbmQpIDogdmFsO1xyXG4gICAgfVxyXG4gICAgc3RhdGljIHRyaW1TdGFydCh2YWw6IHN0cmluZyB8IG51bGwsIGNoOiBzdHJpbmcpIHtcclxuICAgICAgICBpZiAoIXZhbCB8fCAhY2gpXHJcbiAgICAgICAgICAgIHJldHVybiB2YWw7XHJcblxyXG4gICAgICAgIGxldCBzdGFydCA9IDBcclxuICAgICAgICBjb25zdCBlbmQgPSB2YWwubGVuZ3RoO1xyXG5cclxuICAgICAgICB3aGlsZSAoc3RhcnQgPCBlbmQgJiYgdmFsW3N0YXJ0XSA9PT0gY2gpXHJcbiAgICAgICAgICAgICsrc3RhcnQ7XHJcblxyXG4gICAgICAgIHJldHVybiAoc3RhcnQgPiAwKSA/IHZhbC5zdWJzdHJpbmcoc3RhcnQsIGVuZCkgOiB2YWw7XHJcbiAgICB9XHJcbiAgICBzdGF0aWMgdHJpbUVuZCh2YWw6IHN0cmluZyB8IG51bGwsIGNoOiBzdHJpbmcpIHtcclxuICAgICAgICBpZiAoIXZhbCB8fCAhY2gpXHJcbiAgICAgICAgICAgIHJldHVybiB2YWw7XHJcblxyXG4gICAgICAgIGxldCBzdGFydCA9IDAsXHJcbiAgICAgICAgICAgIGVuZCA9IHZhbC5sZW5ndGg7XHJcblxyXG4gICAgICAgIHdoaWxlIChlbmQgPiBzdGFydCAmJiB2YWxbZW5kIC0gMV0gPT09IGNoKVxyXG4gICAgICAgICAgICAtLWVuZDtcclxuXHJcbiAgICAgICAgcmV0dXJuIChlbmQgPCB2YWwubGVuZ3RoKSA/IHZhbC5zdWJzdHJpbmcoc3RhcnQsIGVuZCkgOiB2YWw7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB2YWwgc291cmNlIHN0cmluZ1xyXG4gICAgICogQHBhcmFtIGNoYXJzIHRyaW0gYW55IGNoYXJhY3RlclxyXG4gICAgICogQHJldHVybnMgXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyB0cmltQW55KHZhbDogc3RyaW5nIHwgbnVsbCwgY2hhcnM6IHN0cmluZykge1xyXG4gICAgICAgIGlmICghdmFsIHx8ICFjaGFycylcclxuICAgICAgICAgICAgcmV0dXJuIHZhbDtcclxuXHJcbiAgICAgICAgbGV0IHN0YXJ0ID0gMCxcclxuICAgICAgICAgICAgZW5kID0gdmFsLmxlbmd0aDtcclxuXHJcbiAgICAgICAgd2hpbGUgKHN0YXJ0IDwgZW5kICYmIGNoYXJzLmluZGV4T2YodmFsW3N0YXJ0XSkgPj0gMClcclxuICAgICAgICAgICAgKytzdGFydDtcclxuXHJcbiAgICAgICAgd2hpbGUgKGVuZCA+IHN0YXJ0ICYmIGNoYXJzLmluZGV4T2YodmFsW2VuZCAtIDFdKSA+PSAwKVxyXG4gICAgICAgICAgICAtLWVuZDtcclxuXHJcbiAgICAgICAgcmV0dXJuIChzdGFydCA+IDAgfHwgZW5kIDwgdmFsLmxlbmd0aCkgPyB2YWwuc3Vic3RyaW5nKHN0YXJ0LCBlbmQpIDogdmFsO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBzcGxpdCh2YWw6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQsIC4uLnNlcGFyYXRvcjogc3RyaW5nW10pIHtcclxuICAgICAgICBpZiAoIXZhbCkgcmV0dXJuIFtdO1xyXG5cclxuICAgICAgICBpZiAoc2VwYXJhdG9yLmxlbmd0aCA9PT0gMClcclxuICAgICAgICAgICAgc2VwYXJhdG9yID0gWycsJ107XHJcblxyXG4gICAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cChgKD86JHtzZXBhcmF0b3Iuam9pbignfCcpfSlgKTtcclxuICAgICAgICByZXR1cm4gdmFsLnNwbGl0KHJlZ2V4KVxyXG4gICAgICAgICAgICAubWFwKGVudHJ5ID0+IGVudHJ5LnRyaW0oKSkgLy8gVHJpbSBzcGFjZXNcclxuICAgICAgICAgICAgLmZpbHRlcihlbnRyeSA9PiBlbnRyeS5sZW5ndGggPiAwKTsgLy8gUmVtb3ZlIGVtcHR5IGVudHJpZXNcclxuICAgIH1cclxuXHJcbn0iXX0=
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
export const firstBy = (function () {
|
|
2
|
-
function identity(v) { return v; }
|
|
3
|
-
function ignoreCase(v) { return typeof (v) === "string" ? v.toLowerCase() : v; }
|
|
4
|
-
function makeCompareFunction(f, opt) {
|
|
5
|
-
opt = typeof (opt) === "number" ? { direction: opt } : opt || {};
|
|
6
|
-
if (typeof (f) != "function") {
|
|
7
|
-
const prop = f;
|
|
8
|
-
// make unary function
|
|
9
|
-
f = function (v1) { return !!v1[prop] ? v1[prop] : ""; };
|
|
10
|
-
}
|
|
11
|
-
if (f.length === 1) {
|
|
12
|
-
// f is a unary function mapping a single item to its sort score
|
|
13
|
-
const uf = f;
|
|
14
|
-
const preprocess = opt.ignoreCase ? ignoreCase : identity;
|
|
15
|
-
const cmp = opt.cmp || function (v1, v2) { return v1 < v2 ? -1 : v1 > v2 ? 1 : 0; };
|
|
16
|
-
f = function (v1, v2) { return cmp(preprocess(uf(v1)), preprocess(uf(v2))); };
|
|
17
|
-
}
|
|
18
|
-
if (opt.direction === -1)
|
|
19
|
-
return function (v1, v2) { return -f(v1, v2); };
|
|
20
|
-
return f;
|
|
21
|
-
}
|
|
22
|
-
/* adds a secondary compare function to the target function (`this` context)
|
|
23
|
-
which is applied in case the first one returns 0 (equal)
|
|
24
|
-
returns a new compare function, which has a `thenBy` method as well */
|
|
25
|
-
function tb(func, opt) {
|
|
26
|
-
/* should get value false for the first call. This can be done by calling the
|
|
27
|
-
exported function, or the firstBy property on it (for es6 module compatibility)
|
|
28
|
-
*/
|
|
29
|
-
const x = (typeof (this) == "function" && !this.firstBy) ? this : false;
|
|
30
|
-
const y = makeCompareFunction(func, opt);
|
|
31
|
-
const f = x ? function (a, b) {
|
|
32
|
-
return x(a, b) || y(a, b);
|
|
33
|
-
}
|
|
34
|
-
: y;
|
|
35
|
-
f.thenBy = tb;
|
|
36
|
-
return f;
|
|
37
|
-
}
|
|
38
|
-
tb.firstBy = tb;
|
|
39
|
-
return tb;
|
|
40
|
-
})();
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbkJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvdXRpbHMvdGhlbkJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxDQUFDO0lBRXBCLFNBQVMsUUFBUSxDQUFDLENBQU0sSUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFBLENBQUM7SUFFcEMsU0FBUyxVQUFVLENBQUMsQ0FBTSxJQUFFLE9BQU8sT0FBTSxDQUFDLENBQUMsQ0FBQyxLQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQSxDQUFDO0lBRS9FLFNBQVMsbUJBQW1CLENBQUMsQ0FBTSxFQUFFLEdBQVE7UUFDekMsR0FBRyxHQUFHLE9BQU0sQ0FBQyxHQUFHLENBQUMsS0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUMsU0FBUyxFQUFDLEdBQUcsRUFBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUUsRUFBRSxDQUFDO1FBQ3pELElBQUcsT0FBTSxDQUFDLENBQUMsQ0FBQyxJQUFFLFVBQVUsRUFBQyxDQUFDO1lBQ3RCLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQztZQUNmLHNCQUFzQjtZQUN0QixDQUFDLEdBQUcsVUFBUyxFQUFPLElBQUUsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFBLENBQUMsQ0FBQTtRQUM3RCxDQUFDO1FBQ0QsSUFBRyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2hCLGdFQUFnRTtZQUNoRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDYixNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFBLENBQUMsQ0FBQSxVQUFVLENBQUEsQ0FBQyxDQUFBLFFBQVEsQ0FBQztZQUN0RCxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsR0FBRyxJQUFJLFVBQVMsRUFBTyxFQUFDLEVBQU8sSUFBRyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBLENBQUMsQ0FBQTtZQUN6RixDQUFDLEdBQUcsVUFBUyxFQUFPLEVBQUMsRUFBTyxJQUFHLE9BQU8sR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBLENBQUMsQ0FBQTtRQUN2RixDQUFDO1FBQ0QsSUFBRyxHQUFHLENBQUMsU0FBUyxLQUFLLENBQUMsQ0FBQztZQUFFLE9BQU8sVUFBUyxFQUFPLEVBQUMsRUFBTyxJQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFDLEVBQUUsQ0FBQyxDQUFBLENBQUEsQ0FBQyxDQUFDO1FBQzVFLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVEOzs2RUFFeUU7SUFDekUsU0FBUyxFQUFFLENBQVksSUFBUyxFQUFFLEdBQVE7UUFDdEM7O1VBRUU7UUFDRixNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxVQUFVLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ3ZFLE1BQU0sQ0FBQyxHQUFHLG1CQUFtQixDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN6QyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVMsQ0FBTSxFQUFFLENBQU07WUFDckIsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUIsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDZCxDQUFDLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNkLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUNELEVBQUUsQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLE9BQU8sRUFBRSxDQUFDO0FBQ2QsQ0FBQyxDQUFDLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBmaXJzdEJ5ID0gKGZ1bmN0aW9uKCkge1xyXG5cclxuICAgIGZ1bmN0aW9uIGlkZW50aXR5KHY6IGFueSl7cmV0dXJuIHY7fVxyXG5cclxuICAgIGZ1bmN0aW9uIGlnbm9yZUNhc2UodjogYW55KXtyZXR1cm4gdHlwZW9mKHYpPT09XCJzdHJpbmdcIiA/IHYudG9Mb3dlckNhc2UoKSA6IHY7fVxyXG5cclxuICAgIGZ1bmN0aW9uIG1ha2VDb21wYXJlRnVuY3Rpb24oZjogYW55LCBvcHQ6IGFueSl7XHJcbiAgICAgICAgb3B0ID0gdHlwZW9mKG9wdCk9PT1cIm51bWJlclwiID8ge2RpcmVjdGlvbjpvcHR9IDogb3B0fHx7fTtcclxuICAgICAgICBpZih0eXBlb2YoZikhPVwiZnVuY3Rpb25cIil7XHJcbiAgICAgICAgICAgIGNvbnN0IHByb3AgPSBmO1xyXG4gICAgICAgICAgICAvLyBtYWtlIHVuYXJ5IGZ1bmN0aW9uXHJcbiAgICAgICAgICAgIGYgPSBmdW5jdGlvbih2MTogYW55KXtyZXR1cm4gISF2MVtwcm9wXSA/IHYxW3Byb3BdIDogXCJcIjt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKGYubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgICAgICAgIC8vIGYgaXMgYSB1bmFyeSBmdW5jdGlvbiBtYXBwaW5nIGEgc2luZ2xlIGl0ZW0gdG8gaXRzIHNvcnQgc2NvcmVcclxuICAgICAgICAgICAgY29uc3QgdWYgPSBmO1xyXG4gICAgICAgICAgICBjb25zdCBwcmVwcm9jZXNzID0gb3B0Lmlnbm9yZUNhc2U/aWdub3JlQ2FzZTppZGVudGl0eTtcclxuICAgICAgICAgICAgY29uc3QgY21wID0gb3B0LmNtcCB8fCBmdW5jdGlvbih2MTogYW55LHYyOiBhbnkpIHtyZXR1cm4gdjEgPCB2MiA/IC0xIDogdjEgPiB2MiA/IDEgOiAwO31cclxuICAgICAgICAgICAgZiA9IGZ1bmN0aW9uKHYxOiBhbnksdjI6IGFueSkge3JldHVybiBjbXAocHJlcHJvY2Vzcyh1Zih2MSkpLCBwcmVwcm9jZXNzKHVmKHYyKSkpO31cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYob3B0LmRpcmVjdGlvbiA9PT0gLTEpIHJldHVybiBmdW5jdGlvbih2MTogYW55LHYyOiBhbnkpe3JldHVybiAtZih2MSx2Mil9O1xyXG4gICAgICAgIHJldHVybiBmO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIGFkZHMgYSBzZWNvbmRhcnkgY29tcGFyZSBmdW5jdGlvbiB0byB0aGUgdGFyZ2V0IGZ1bmN0aW9uIChgdGhpc2AgY29udGV4dClcclxuICAgICAgIHdoaWNoIGlzIGFwcGxpZWQgaW4gY2FzZSB0aGUgZmlyc3Qgb25lIHJldHVybnMgMCAoZXF1YWwpXHJcbiAgICAgICByZXR1cm5zIGEgbmV3IGNvbXBhcmUgZnVuY3Rpb24sIHdoaWNoIGhhcyBhIGB0aGVuQnlgIG1ldGhvZCBhcyB3ZWxsICovXHJcbiAgICBmdW5jdGlvbiB0Yih0aGlzOiBhbnksIGZ1bmM6IGFueSwgb3B0OiBhbnkpIHtcclxuICAgICAgICAvKiBzaG91bGQgZ2V0IHZhbHVlIGZhbHNlIGZvciB0aGUgZmlyc3QgY2FsbC4gVGhpcyBjYW4gYmUgZG9uZSBieSBjYWxsaW5nIHRoZSBcclxuICAgICAgICBleHBvcnRlZCBmdW5jdGlvbiwgb3IgdGhlIGZpcnN0QnkgcHJvcGVydHkgb24gaXQgKGZvciBlczYgbW9kdWxlIGNvbXBhdGliaWxpdHkpXHJcbiAgICAgICAgKi9cclxuICAgICAgICBjb25zdCB4ID0gKHR5cGVvZih0aGlzKSA9PSBcImZ1bmN0aW9uXCIgJiYgIXRoaXMuZmlyc3RCeSkgPyB0aGlzIDogZmFsc2U7XHJcbiAgICAgICAgY29uc3QgeSA9IG1ha2VDb21wYXJlRnVuY3Rpb24oZnVuYywgb3B0KTtcclxuICAgICAgICBjb25zdCBmID0geCA/IGZ1bmN0aW9uKGE6IGFueSwgYjogYW55KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB4KGEsYikgfHwgeShhLGIpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgOiB5O1xyXG4gICAgICAgIGYudGhlbkJ5ID0gdGI7XHJcbiAgICAgICAgcmV0dXJuIGY7XHJcbiAgICB9XHJcbiAgICB0Yi5maXJzdEJ5ID0gdGI7XHJcbiAgICByZXR1cm4gdGI7XHJcbn0pKCk7Il19
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { OverlapHelper } from "./overlap-helper";
|
|
2
|
-
export class TimeHelper {
|
|
3
|
-
static parseTime(value) {
|
|
4
|
-
if (typeof value === 'undefined' || value == null || value === '')
|
|
5
|
-
return null;
|
|
6
|
-
return this.toTime(value);
|
|
7
|
-
}
|
|
8
|
-
static toTime(value) {
|
|
9
|
-
if (typeof value === 'string') {
|
|
10
|
-
value = value.trim();
|
|
11
|
-
if (/^(\d{1,2}:\d{1,2})$/.test(value)) {
|
|
12
|
-
const [h, m] = value.split(':').map((val) => +val);
|
|
13
|
-
return `${h < 10 ? '0' : ''}${h}:${m < 10 ? '0' : ''}${m}:00`;
|
|
14
|
-
}
|
|
15
|
-
else if (/^(\d{1,2}:\d{1,2}:\d{1,2})$/.test(value)) {
|
|
16
|
-
const [h, m, s] = value.split(':').map((val) => +val);
|
|
17
|
-
return `${h < 10 ? '0' : ''}${h}:${m < 10 ? '0' : ''}${m}:${s < 10 ? '0' : ''}${s}`;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return '';
|
|
21
|
-
}
|
|
22
|
-
static toDate(time) {
|
|
23
|
-
const date = new Date(0);
|
|
24
|
-
const tmp = this.parseTime(time);
|
|
25
|
-
if (!tmp)
|
|
26
|
-
return date;
|
|
27
|
-
const timeDate = new Date('1970-01-01T' + time + 'Z');
|
|
28
|
-
date.setTime(date.getTime() + timeDate.getTime());
|
|
29
|
-
return date;
|
|
30
|
-
}
|
|
31
|
-
static intersects(start1, end1, start2, end2) {
|
|
32
|
-
const startDate1 = this.toDate(start1);
|
|
33
|
-
const endDate1 = this.toDate(end1);
|
|
34
|
-
const startDate2 = this.toDate(start2);
|
|
35
|
-
const endDate2 = this.toDate(end2);
|
|
36
|
-
return OverlapHelper.intersects(startDate1, endDate1, startDate2, endDate2);
|
|
37
|
-
}
|
|
38
|
-
static overlaps(start1, end1, start2, end2) {
|
|
39
|
-
const startDate1 = this.toDate(start1);
|
|
40
|
-
const endDate1 = this.toDate(end1);
|
|
41
|
-
const startDate2 = this.toDate(start2);
|
|
42
|
-
const endDate2 = this.toDate(end2);
|
|
43
|
-
return OverlapHelper.overlaps(startDate1, endDate1, startDate2, endDate2);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi91dGlscy90aW1lLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakQsTUFBTSxPQUFPLFVBQVU7SUFDbkIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksT0FBTyxLQUFLLEtBQUssV0FBVyxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxLQUFLLEVBQUU7WUFBRSxPQUFPLElBQUksQ0FBQztRQUMvRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBYTtRQUN2QixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzVCLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFFckIsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDcEMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDM0QsT0FBTyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQztZQUNsRSxDQUFDO2lCQUFNLElBQUksNkJBQTZCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ25ELE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUM5RCxPQUFPLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN4RixDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUtELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBK0I7UUFDekMsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFekIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsR0FBRztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRXRCLE1BQU0sUUFBUSxHQUFHLElBQUksSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDbEQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUdELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBYyxFQUFFLElBQVksRUFBRSxNQUFjLEVBQUUsSUFBWTtRQUN4RSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN2QyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRW5DLE9BQU8sYUFBYSxDQUFDLFVBQVUsQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFjLEVBQUUsSUFBWSxFQUFFLE1BQWMsRUFBRSxJQUFZO1FBQ3RFLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdkMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFbkMsT0FBTyxhQUFhLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzlFLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXBIZWxwZXIgfSBmcm9tIFwiLi9vdmVybGFwLWhlbHBlclwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFRpbWVIZWxwZXIge1xyXG4gICAgc3RhdGljIHBhcnNlVGltZSh2YWx1ZTogYW55KTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3VuZGVmaW5lZCcgfHwgdmFsdWUgPT0gbnVsbCB8fCB2YWx1ZSA9PT0gJycpIHJldHVybiBudWxsO1xyXG4gICAgICAgIHJldHVybiB0aGlzLnRvVGltZSh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgICBzdGF0aWMgdG9UaW1lKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgICAgIHZhbHVlID0gdmFsdWUudHJpbSgpO1xyXG5cclxuICAgICAgICAgICAgaWYgKC9eKFxcZHsxLDJ9OlxcZHsxLDJ9KSQvLnRlc3QodmFsdWUpKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBbaCwgbV0gPSB2YWx1ZS5zcGxpdCgnOicpLm1hcCgodmFsOiBzdHJpbmcpID0+ICt2YWwpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke2ggPCAxMCA/ICcwJyA6ICcnfSR7aH06JHttIDwgMTAgPyAnMCcgOiAnJ30ke219OjAwYDtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICgvXihcXGR7MSwyfTpcXGR7MSwyfTpcXGR7MSwyfSkkLy50ZXN0KHZhbHVlKSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgW2gsIG0sIHNdID0gdmFsdWUuc3BsaXQoJzonKS5tYXAoKHZhbDogc3RyaW5nKSA9PiArdmFsKTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBgJHtoIDwgMTAgPyAnMCcgOiAnJ30ke2h9OiR7bSA8IDEwID8gJzAnIDogJyd9JHttfToke3MgPCAxMCA/ICcwJyA6ICcnfSR7c31gO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuXHJcbiAgICBcclxuXHJcblxyXG4gICAgc3RhdGljIHRvRGF0ZSh0aW1lOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsKTogRGF0ZSB7XHJcbiAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKDApO1xyXG5cclxuICAgICAgICBjb25zdCB0bXAgPSB0aGlzLnBhcnNlVGltZSh0aW1lKTtcclxuICAgICAgICBpZiAoIXRtcCkgcmV0dXJuIGRhdGU7XHJcblxyXG4gICAgICAgIGNvbnN0IHRpbWVEYXRlID0gbmV3IERhdGUoJzE5NzAtMDEtMDFUJyArIHRpbWUgKyAnWicpO1xyXG4gICAgICAgIGRhdGUuc2V0VGltZShkYXRlLmdldFRpbWUoKSArIHRpbWVEYXRlLmdldFRpbWUoKSk7XHJcbiAgICAgICAgcmV0dXJuIGRhdGU7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHN0YXRpYyBpbnRlcnNlY3RzKHN0YXJ0MTogc3RyaW5nLCBlbmQxOiBzdHJpbmcsIHN0YXJ0Mjogc3RyaW5nLCBlbmQyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICBjb25zdCBzdGFydERhdGUxID0gdGhpcy50b0RhdGUoc3RhcnQxKTtcclxuICAgICAgICBjb25zdCBlbmREYXRlMSA9IHRoaXMudG9EYXRlKGVuZDEpO1xyXG4gICAgICAgIGNvbnN0IHN0YXJ0RGF0ZTIgPSB0aGlzLnRvRGF0ZShzdGFydDIpO1xyXG4gICAgICAgIGNvbnN0IGVuZERhdGUyID0gdGhpcy50b0RhdGUoZW5kMik7XHJcblxyXG4gICAgICAgIHJldHVybiBPdmVybGFwSGVscGVyLmludGVyc2VjdHMoc3RhcnREYXRlMSwgZW5kRGF0ZTEsIHN0YXJ0RGF0ZTIsIGVuZERhdGUyKTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgb3ZlcmxhcHMoc3RhcnQxOiBzdHJpbmcsIGVuZDE6IHN0cmluZywgc3RhcnQyOiBzdHJpbmcsIGVuZDI6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGNvbnN0IHN0YXJ0RGF0ZTEgPSB0aGlzLnRvRGF0ZShzdGFydDEpO1xyXG4gICAgICAgIGNvbnN0IGVuZERhdGUxID0gdGhpcy50b0RhdGUoZW5kMSk7XHJcbiAgICAgICAgY29uc3Qgc3RhcnREYXRlMiA9IHRoaXMudG9EYXRlKHN0YXJ0Mik7XHJcbiAgICAgICAgY29uc3QgZW5kRGF0ZTIgPSB0aGlzLnRvRGF0ZShlbmQyKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIE92ZXJsYXBIZWxwZXIub3ZlcmxhcHMoc3RhcnREYXRlMSwgZW5kRGF0ZTEsIHN0YXJ0RGF0ZTIsIGVuZERhdGUyKTtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
export class TmpHelper {
|
|
2
|
-
static { this._obj = {}; }
|
|
3
|
-
static get(key, remove = true) {
|
|
4
|
-
if (!key)
|
|
5
|
-
return;
|
|
6
|
-
const v = this._obj[key];
|
|
7
|
-
if (remove)
|
|
8
|
-
this.remove(key);
|
|
9
|
-
return v;
|
|
10
|
-
}
|
|
11
|
-
static set(key, value) {
|
|
12
|
-
if (!key)
|
|
13
|
-
return;
|
|
14
|
-
this._obj[key] = value;
|
|
15
|
-
}
|
|
16
|
-
static clear() {
|
|
17
|
-
this._obj = {};
|
|
18
|
-
}
|
|
19
|
-
static remove(key) {
|
|
20
|
-
if (!key)
|
|
21
|
-
return;
|
|
22
|
-
delete this._obj[key];
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG1wLWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL3V0aWxzL3RtcC1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFNBQVM7YUFDSCxTQUFJLEdBQVEsRUFBRSxDQUFDO0lBRTlCLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBVyxFQUFFLE1BQU0sR0FBRyxJQUFJO1FBQ2pDLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTztRQUNqQixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pCLElBQUksTUFBTTtZQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckIsT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFXLEVBQUUsS0FBVTtRQUM5QixJQUFJLENBQUMsR0FBRztZQUFFLE9BQU87UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLO1FBQ1IsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBVztRQUNyQixJQUFJLENBQUMsR0FBRztZQUFFLE9BQU87UUFDakIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgVG1wSGVscGVyIHtcclxuICAgIHByaXZhdGUgc3RhdGljIF9vYmo6IGFueSA9IHt9O1xyXG5cclxuICAgIHN0YXRpYyBnZXQoa2V5OiBzdHJpbmcsIHJlbW92ZSA9IHRydWUpOiBhbnkge1xyXG4gICAgICAgIGlmICgha2V5KSByZXR1cm47XHJcbiAgICAgICAgY29uc3QgdiA9IHRoaXMuX29ialtrZXldO1xyXG4gICAgICAgIGlmIChyZW1vdmUpXHJcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlKGtleSk7XHJcbiAgICAgICAgcmV0dXJuIHY7XHJcbiAgICB9XHJcbiAgXHJcbiAgICBzdGF0aWMgc2V0KGtleTogc3RyaW5nLCB2YWx1ZTogYW55KSB7XHJcbiAgICAgICAgaWYgKCFrZXkpIHJldHVybjtcclxuICAgICAgICB0aGlzLl9vYmpba2V5XSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgc3RhdGljIGNsZWFyKCkge1xyXG4gICAgICAgIHRoaXMuX29iaiA9IHt9O1xyXG4gICAgfVxyXG4gICAgc3RhdGljIHJlbW92ZShrZXk6IHN0cmluZykge1xyXG4gICAgICAgIGlmICgha2V5KSByZXR1cm47XHJcbiAgICAgICAgZGVsZXRlIHRoaXMuX29ialtrZXldXHJcbiAgICB9XHJcbn0iXX0=
|