@koobiq/components 16.0.0-beta.6 → 16.0.0-beta.7
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/autocomplete/autocomplete-trigger.directive.d.ts +5 -15
- package/button-toggle/button-toggle.component.d.ts +2 -2
- package/checkbox/_checkbox-theme.scss +10 -2
- package/checkbox/checkbox.d.ts +1 -1
- package/code-block/README.md +14 -14
- package/code-block/_code-block-theme.scss +8 -0
- package/code-block/code-block.component.d.ts +1 -1
- package/core/animation/index.d.ts +1 -1
- package/core/animation/select-animations.d.ts +1 -1
- package/core/formatters/index.d.ts +1 -1
- package/core/formatters/number/formatter.d.ts +56 -1
- package/core/forms/forms.directive.d.ts +2 -2
- package/core/locales/en-US.d.ts +19 -1
- package/core/locales/es-LA.d.ts +27 -0
- package/core/locales/fa-IR.d.ts +28 -0
- package/core/locales/locale-service.d.ts +148 -3
- package/core/locales/pt-BR.d.ts +27 -0
- package/core/locales/ru-RU.d.ts +20 -1
- package/core/locales/zh-CN.d.ts +26 -0
- package/core/option/action.d.ts +1 -1
- package/core/option/optgroup.d.ts +1 -1
- package/core/option/option.d.ts +37 -8
- package/core/overlay/overlay-position-map.d.ts +7 -1
- package/core/pop-up/constants.d.ts +2 -1
- package/core/public-api.d.ts +1 -0
- package/core/select/constants.d.ts +2 -2
- package/core/services/theme.service.d.ts +23 -0
- package/core/styles/_variables.scss +1 -0
- package/core/styles/common/_select.scss +24 -24
- package/core/styles/theming/_components-theming.scss +31 -5
- package/datepicker/calendar-body.component.d.ts +1 -1
- package/datepicker/calendar-header.component.d.ts +9 -3
- package/datepicker/calendar.component.d.ts +4 -5
- package/datepicker/datepicker-animations.d.ts +1 -1
- package/datepicker/datepicker-input.directive.d.ts +4 -4
- package/datepicker/datepicker-toggle.component.d.ts +3 -3
- package/datepicker/datepicker.component.d.ts +2 -2
- package/datepicker/month-view.component.d.ts +5 -6
- package/dl/_dl-theme.scss +2 -56
- package/dl/dl.component.d.ts +1 -2
- package/dl/dl.scss +10 -47
- package/dropdown/dropdown-animations.d.ts +1 -1
- package/dropdown/dropdown-content.directive.d.ts +1 -1
- package/dropdown/dropdown-item.component.d.ts +1 -1
- package/dropdown/dropdown-trigger.directive.d.ts +2 -2
- package/dropdown/dropdown.component.d.ts +1 -1
- package/dropdown/dropdown.types.d.ts +1 -1
- package/esm2022/alert/alert.component.mjs +2 -2
- package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +24 -21
- package/esm2022/button-toggle/button-toggle.component.mjs +8 -8
- package/esm2022/checkbox/checkbox.mjs +3 -3
- package/esm2022/code-block/actionbar.component.mjs +1 -1
- package/esm2022/code-block/code-block.component.mjs +3 -3
- package/esm2022/core/animation/index.mjs +2 -2
- package/esm2022/core/animation/select-animations.mjs +4 -4
- package/esm2022/core/formatters/index.mjs +10 -2
- package/esm2022/core/formatters/number/formatter.mjs +224 -3
- package/esm2022/core/forms/forms.directive.mjs +5 -5
- package/esm2022/core/locales/en-US.mjs +22 -4
- package/esm2022/core/locales/es-LA.mjs +31 -2
- package/esm2022/core/locales/fa-IR.mjs +30 -2
- package/esm2022/core/locales/locale-service.mjs +4 -4
- package/esm2022/core/locales/pt-BR.mjs +29 -2
- package/esm2022/core/locales/ru-RU.mjs +23 -2
- package/esm2022/core/locales/zh-CN.mjs +28 -2
- package/esm2022/core/option/action.mjs +3 -3
- package/esm2022/core/option/optgroup.mjs +3 -3
- package/esm2022/core/option/option.mjs +47 -10
- package/esm2022/core/overlay/overlay-position-map.mjs +7 -1
- package/esm2022/core/pop-up/constants.mjs +2 -1
- package/esm2022/core/pop-up/pop-up-trigger.mjs +12 -3
- package/esm2022/core/public-api.mjs +2 -1
- package/esm2022/core/select/constants.mjs +3 -3
- package/esm2022/core/services/theme.service.mjs +60 -0
- package/esm2022/core/version.mjs +2 -2
- package/esm2022/datepicker/calendar-body.component.mjs +3 -3
- package/esm2022/datepicker/calendar-header.component.mjs +9 -8
- package/esm2022/datepicker/calendar.component.mjs +7 -16
- package/esm2022/datepicker/datepicker-animations.mjs +2 -2
- package/esm2022/datepicker/datepicker-input.directive.mjs +29 -20
- package/esm2022/datepicker/datepicker-toggle.component.mjs +6 -6
- package/esm2022/datepicker/datepicker.component.mjs +11 -11
- package/esm2022/datepicker/month-view.component.mjs +9 -18
- package/esm2022/dl/dl.component.mjs +3 -7
- package/esm2022/dropdown/dropdown-animations.mjs +4 -4
- package/esm2022/dropdown/dropdown-content.directive.mjs +3 -3
- package/esm2022/dropdown/dropdown-errors.mjs +6 -6
- package/esm2022/dropdown/dropdown-item.component.mjs +5 -5
- package/esm2022/dropdown/dropdown-trigger.directive.mjs +8 -8
- package/esm2022/dropdown/dropdown.component.mjs +8 -8
- package/esm2022/dropdown/dropdown.types.mjs +1 -1
- package/esm2022/file-upload/file-drop.mjs +4 -4
- package/esm2022/file-upload/multiple-file-upload.component.mjs +12 -8
- package/esm2022/file-upload/single-file-upload.component.mjs +12 -8
- package/esm2022/form-field/cleaner.mjs +3 -3
- package/esm2022/form-field/form-field.mjs +7 -7
- package/esm2022/form-field/hint.mjs +4 -4
- package/esm2022/form-field/password-hint.mjs +11 -11
- package/esm2022/form-field/password-toggle.mjs +21 -8
- package/esm2022/form-field/suffix.mjs +3 -3
- package/esm2022/form-field/validate.directive.mjs +4 -4
- package/esm2022/input/input-number.mjs +259 -43
- package/esm2022/link/link.component.mjs +3 -3
- package/esm2022/list/list-selection.component.mjs +6 -6
- package/esm2022/loader-overlay/loader-overlay.component.mjs +2 -2
- package/esm2022/modal/modal-control.service.mjs +5 -5
- package/esm2022/modal/modal-ref.class.mjs +1 -1
- package/esm2022/modal/modal.component.mjs +124 -111
- package/esm2022/modal/modal.service.mjs +23 -23
- package/esm2022/modal/modal.type.mjs +1 -3
- package/esm2022/navbar/navbar-item.component.mjs +6 -6
- package/esm2022/navbar/navbar.component.mjs +18 -9
- package/esm2022/navbar/vertical-navbar.component.mjs +9 -6
- package/esm2022/popover/popover-animations.mjs +2 -2
- package/esm2022/popover/popover-confirm.component.mjs +9 -9
- package/esm2022/popover/popover.component.mjs +23 -23
- package/esm2022/radio/radio.component.mjs +10 -8
- package/esm2022/select/select.component.mjs +32 -17
- package/esm2022/sidebar/sidebar-animations.mjs +2 -2
- package/esm2022/sidebar/sidebar.component.mjs +9 -9
- package/esm2022/sidepanel/sidepanel-directives.mjs +2 -2
- package/esm2022/splitter/splitter.component.mjs +3 -3
- package/esm2022/table/table.component.mjs +3 -3
- package/esm2022/tabs/tab-body.component.mjs +7 -7
- package/esm2022/tabs/tab-content.directive.mjs +3 -3
- package/esm2022/tabs/tab-group.component.mjs +3 -3
- package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +6 -6
- package/esm2022/tabs/tab.component.mjs +14 -5
- package/esm2022/tabs/tabs-animations.mjs +2 -2
- package/esm2022/tags/tag-input.mjs +3 -3
- package/esm2022/tags/tag-list.component.mjs +5 -5
- package/esm2022/tags/tag.component.mjs +10 -10
- package/esm2022/timepicker/timepicker.directive.mjs +10 -10
- package/esm2022/timezone/timezone-option.component.mjs +3 -3
- package/esm2022/timezone/timezone-select.component.mjs +5 -5
- package/esm2022/title/title.directive.mjs +5 -5
- package/esm2022/toast/toast.module.mjs +10 -4
- package/esm2022/toggle/toggle.component.mjs +3 -3
- package/esm2022/tooltip/tooltip.component.mjs +16 -16
- package/esm2022/tree/node.mjs +5 -5
- package/esm2022/tree/outlet.mjs +3 -3
- package/esm2022/tree/padding.directive.mjs +6 -6
- package/esm2022/tree/toggle.mjs +8 -8
- package/esm2022/tree/tree-base.mjs +3 -3
- package/esm2022/tree/tree-option.component.mjs +8 -5
- package/esm2022/tree/tree-selection.component.mjs +8 -6
- package/esm2022/tree/tree.mjs +3 -3
- package/esm2022/tree-select/tree-select.component.mjs +13 -13
- package/fesm2022/koobiq-components-alert.mjs +2 -2
- package/fesm2022/koobiq-components-alert.mjs.map +1 -1
- package/fesm2022/koobiq-components-autocomplete.mjs +24 -21
- package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
- package/fesm2022/koobiq-components-button-toggle.mjs +7 -7
- package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-checkbox.mjs +2 -2
- package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
- package/fesm2022/koobiq-components-code-block.mjs +3 -3
- package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
- package/fesm2022/koobiq-components-core.mjs +526 -39
- package/fesm2022/koobiq-components-core.mjs.map +1 -1
- package/fesm2022/koobiq-components-datepicker.mjs +66 -74
- package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-dl.mjs +2 -6
- package/fesm2022/koobiq-components-dl.mjs.map +1 -1
- package/fesm2022/koobiq-components-dropdown.mjs +28 -28
- package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-file-upload.mjs +23 -15
- package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
- package/fesm2022/koobiq-components-form-field.mjs +46 -34
- package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
- package/fesm2022/koobiq-components-input.mjs +257 -43
- package/fesm2022/koobiq-components-input.mjs.map +1 -1
- package/fesm2022/koobiq-components-link.mjs +2 -2
- package/fesm2022/koobiq-components-link.mjs.map +1 -1
- package/fesm2022/koobiq-components-list.mjs +5 -5
- package/fesm2022/koobiq-components-list.mjs.map +1 -1
- package/fesm2022/koobiq-components-loader-overlay.mjs +2 -2
- package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
- package/fesm2022/koobiq-components-modal.mjs +149 -140
- package/fesm2022/koobiq-components-modal.mjs.map +1 -1
- package/fesm2022/koobiq-components-navbar.mjs +28 -20
- package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-popover.mjs +30 -30
- package/fesm2022/koobiq-components-popover.mjs.map +1 -1
- package/fesm2022/koobiq-components-radio.mjs +9 -7
- package/fesm2022/koobiq-components-radio.mjs.map +1 -1
- package/fesm2022/koobiq-components-select.mjs +31 -16
- package/fesm2022/koobiq-components-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidebar.mjs +8 -8
- package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidepanel.mjs +1 -1
- package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
- package/fesm2022/koobiq-components-splitter.mjs +2 -2
- package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
- package/fesm2022/koobiq-components-table.mjs +2 -2
- package/fesm2022/koobiq-components-table.mjs.map +1 -1
- package/fesm2022/koobiq-components-tabs.mjs +29 -20
- package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
- package/fesm2022/koobiq-components-tags.mjs +15 -15
- package/fesm2022/koobiq-components-tags.mjs.map +1 -1
- package/fesm2022/koobiq-components-timepicker.mjs +9 -9
- package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-timezone.mjs +6 -6
- package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
- package/fesm2022/koobiq-components-title.mjs +4 -4
- package/fesm2022/koobiq-components-title.mjs.map +1 -1
- package/fesm2022/koobiq-components-toast.mjs +8 -2
- package/fesm2022/koobiq-components-toast.mjs.map +1 -1
- package/fesm2022/koobiq-components-toggle.mjs +2 -2
- package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-tooltip.mjs +15 -15
- package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree-select.mjs +12 -12
- package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs +36 -31
- package/fesm2022/koobiq-components-tree.mjs.map +1 -1
- package/file-upload/file-drop.d.ts +1 -1
- package/file-upload/multiple-file-upload.component.d.ts +4 -3
- package/file-upload/single-file-upload.component.d.ts +4 -3
- package/form-field/_hint-theme.scss +1 -1
- package/form-field/cleaner.d.ts +1 -1
- package/form-field/form-field.d.ts +2 -2
- package/form-field/form-field.scss +2 -2
- package/form-field/hint.d.ts +1 -1
- package/form-field/password-hint.d.ts +2 -1
- package/form-field/password-toggle.d.ts +11 -6
- package/form-field/suffix.d.ts +1 -1
- package/form-field/validate.directive.d.ts +1 -1
- package/icon/_icon-theme.scss +2 -1
- package/input/input-number.d.ts +61 -10
- package/link/_link-theme.scss +4 -0
- package/link/link.component.d.ts +1 -1
- package/list/list-selection.component.d.ts +1 -1
- package/loader-overlay/loader-overlay.scss +3 -0
- package/modal/README.md +5 -5
- package/modal/modal-ref.class.d.ts +2 -2
- package/modal/modal.component.d.ts +51 -47
- package/modal/modal.type.d.ts +35 -36
- package/navbar/navbar-item.component.d.ts +2 -2
- package/navbar/navbar.component.d.ts +5 -2
- package/navbar/vertical-navbar.component.d.ts +4 -2
- package/package.json +9 -11
- package/popover/README.md +14 -14
- package/popover/_popover-theme.scss +11 -11
- package/popover/popover-animations.d.ts +1 -1
- package/popover/popover-confirm.component.d.ts +1 -1
- package/popover/popover.component.d.ts +3 -3
- package/prebuilt-themes/dark-theme.css +1 -1
- package/prebuilt-themes/light-theme.css +1 -1
- package/radio/_radio-theme.scss +15 -2
- package/radio/radio.component.d.ts +2 -2
- package/radio/radio.scss +13 -0
- package/select/select.component.d.ts +14 -11
- package/sidebar/sidebar-animations.d.ts +1 -1
- package/sidebar/sidebar.component.d.ts +3 -3
- package/splitter/splitter.component.d.ts +1 -1
- package/table/table.component.d.ts +1 -1
- package/tabs/tab-body.component.d.ts +1 -1
- package/tabs/tab-content.directive.d.ts +1 -1
- package/tabs/tab-nav-bar/tab-nav-bar.d.ts +2 -2
- package/tabs/tab.component.d.ts +1 -1
- package/tabs/tabs-animations.d.ts +1 -1
- package/tags/_tag-theme.scss +1 -1
- package/tags/tag-input.d.ts +2 -2
- package/tags/tag-list.component.d.ts +2 -2
- package/tags/tag-list.scss +2 -0
- package/tags/tag.component.d.ts +3 -3
- package/timepicker/timepicker.directive.d.ts +2 -2
- package/timezone/timezone-option.component.d.ts +1 -1
- package/timezone/timezone-select.component.d.ts +1 -1
- package/title/title.directive.d.ts +1 -1
- package/toggle/toggle.component.d.ts +1 -1
- package/tooltip/tooltip.component.d.ts +3 -3
- package/tree/node.d.ts +1 -1
- package/tree/outlet.d.ts +1 -1
- package/tree/padding.directive.d.ts +1 -1
- package/tree/toggle.d.ts +3 -3
- package/tree/tree-base.d.ts +1 -1
- package/tree/tree-option.component.d.ts +1 -1
- package/tree/tree-option.scss +2 -0
- package/tree/tree-selection.component.d.ts +1 -1
- package/tree/tree.d.ts +1 -1
- package/tree-select/tree-select.component.d.ts +1 -1
|
@@ -27,8 +27,29 @@ const minIntGroupPosition = 1;
|
|
|
27
27
|
const minFractionGroupPosition = 3;
|
|
28
28
|
const maxFractionGroupPosition = 5;
|
|
29
29
|
const useGroupingPosition = 7;
|
|
30
|
+
// tslint:disable:no-magic-numbers
|
|
31
|
+
const ROUNDING_UNITS = {
|
|
32
|
+
thousand: 1e3,
|
|
33
|
+
tenThousand: 10 * 1e3,
|
|
34
|
+
million: 1e6,
|
|
35
|
+
oneHundredMillions: 100 * 1e6,
|
|
36
|
+
billion: 1e9,
|
|
37
|
+
trillion: 1e12
|
|
38
|
+
};
|
|
39
|
+
const intervalsConfig = {
|
|
40
|
+
supportedLanguages: ['ru-RU', 'en-US', 'es-LA', 'pt-BR', 'fa-IR'],
|
|
41
|
+
intervals: [
|
|
42
|
+
{ startRange: 1, endRange: ROUNDING_UNITS.thousand },
|
|
43
|
+
{ startRange: ROUNDING_UNITS.thousand, endRange: ROUNDING_UNITS.tenThousand, precision: 1 },
|
|
44
|
+
{ startRange: ROUNDING_UNITS.tenThousand, endRange: ROUNDING_UNITS.million },
|
|
45
|
+
{ startRange: ROUNDING_UNITS.million, endRange: ROUNDING_UNITS.million * 10, precision: 1 },
|
|
46
|
+
{ startRange: ROUNDING_UNITS.million * 10, endRange: ROUNDING_UNITS.billion }
|
|
47
|
+
]
|
|
48
|
+
};
|
|
49
|
+
// tslint:enable:no-magic-numbers
|
|
30
50
|
class ParsedDigitsInfo {
|
|
31
51
|
}
|
|
52
|
+
const defaultValueForGroupingInRULocale = 10000;
|
|
32
53
|
function parseDigitsInfo(digitsInfo) {
|
|
33
54
|
const parts = digitsInfo.match(NUMBER_FORMAT_REGEXP);
|
|
34
55
|
if (parts === null) {
|
|
@@ -92,16 +113,28 @@ export class KbqDecimalPipe {
|
|
|
92
113
|
...this.options,
|
|
93
114
|
...parsedDigitsInfo
|
|
94
115
|
};
|
|
116
|
+
if (this.isSpecialFormatForRULocale(currentLocale, value, parsedDigitsInfo?.useGrouping)) {
|
|
117
|
+
options.useGrouping = false;
|
|
118
|
+
}
|
|
95
119
|
try {
|
|
96
120
|
const num = strToNumber(value);
|
|
121
|
+
/* Guideline requires for group separator to be `space`, as in 'ru-RU' locale.
|
|
122
|
+
* But by default in es-LA locale is used `comma`.
|
|
123
|
+
* To reduce data manipulation, 'ru-RU' locale is used. */
|
|
124
|
+
if (currentLocale === 'es-LA') {
|
|
125
|
+
return Intl.NumberFormat.call(this, 'ru-RU', options).format(num);
|
|
126
|
+
}
|
|
97
127
|
return Intl.NumberFormat.call(this, currentLocale, options).format(num);
|
|
98
128
|
}
|
|
99
129
|
catch (error) {
|
|
100
130
|
throw Error(`InvalidPipeArgument: KbqDecimalPipe for pipe '${JSON.stringify(error.message)}'`);
|
|
101
131
|
}
|
|
102
132
|
}
|
|
133
|
+
isSpecialFormatForRULocale(locale, value, grouping) {
|
|
134
|
+
return ['ru', 'ru-RU'].includes(locale) && grouping === undefined && value < defaultValueForGroupingInRULocale;
|
|
135
|
+
}
|
|
103
136
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqDecimalPipe, deps: [{ token: KBQ_LOCALE_ID, optional: true }, { token: KBQ_LOCALE_SERVICE, optional: true }, { token: KBQ_NUMBER_FORMATTER_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
104
|
-
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.1.5", ngImport: i0, type: KbqDecimalPipe, name: "
|
|
137
|
+
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.1.5", ngImport: i0, type: KbqDecimalPipe, name: "kbqNumber", pure: false }); }
|
|
105
138
|
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqDecimalPipe, providedIn: 'root' }); }
|
|
106
139
|
}
|
|
107
140
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqDecimalPipe, decorators: [{
|
|
@@ -109,7 +142,83 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImpor
|
|
|
109
142
|
args: [{ providedIn: 'root' }]
|
|
110
143
|
}, {
|
|
111
144
|
type: Pipe,
|
|
112
|
-
args: [{ name: '
|
|
145
|
+
args: [{ name: 'kbqNumber', pure: false }]
|
|
146
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
147
|
+
type: Optional
|
|
148
|
+
}, {
|
|
149
|
+
type: Inject,
|
|
150
|
+
args: [KBQ_LOCALE_ID]
|
|
151
|
+
}] }, { type: i1.KbqLocaleService, decorators: [{
|
|
152
|
+
type: Optional
|
|
153
|
+
}, {
|
|
154
|
+
type: Inject,
|
|
155
|
+
args: [KBQ_LOCALE_SERVICE]
|
|
156
|
+
}] }, { type: ParsedDigitsInfo, decorators: [{
|
|
157
|
+
type: Optional
|
|
158
|
+
}, {
|
|
159
|
+
type: Inject,
|
|
160
|
+
args: [KBQ_NUMBER_FORMATTER_OPTIONS]
|
|
161
|
+
}] }]; } });
|
|
162
|
+
export class KbqTableNumberPipe {
|
|
163
|
+
constructor(id, localeService, options) {
|
|
164
|
+
this.id = id;
|
|
165
|
+
this.localeService = localeService;
|
|
166
|
+
this.options = options;
|
|
167
|
+
this.options = this.options || KBQ_NUMBER_FORMATTER_DEFAULT_OPTIONS;
|
|
168
|
+
this.localeService?.changes
|
|
169
|
+
.subscribe((newId) => this.id = newId);
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* @param value The number to be formatted.
|
|
173
|
+
* @param digitsInfo Decimal representation options, specified by a string
|
|
174
|
+
* in the following format:<br>
|
|
175
|
+
* <code>{minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}</code>.
|
|
176
|
+
* - `minIntegerDigits`: The minimum number of integer digits before the decimal point.
|
|
177
|
+
* Default is `1`.
|
|
178
|
+
* - `minFractionDigits`: The minimum number of digits after the decimal point.
|
|
179
|
+
* Default is `0`.
|
|
180
|
+
* - `maxFractionDigits`: The maximum number of digits after the decimal point.
|
|
181
|
+
* Default is `3`.
|
|
182
|
+
* @param locale A locale code for the locale format rules to use.
|
|
183
|
+
* When not supplied, uses the value of `KBQ_LOCALE_ID`, which is `ru` by default.
|
|
184
|
+
*/
|
|
185
|
+
transform(value, digitsInfo, locale) {
|
|
186
|
+
if (isEmpty(value)) {
|
|
187
|
+
return null;
|
|
188
|
+
}
|
|
189
|
+
const currentLocale = locale || this.id || KBQ_DEFAULT_LOCALE_ID;
|
|
190
|
+
let parsedDigitsInfo;
|
|
191
|
+
if (digitsInfo) {
|
|
192
|
+
parsedDigitsInfo = parseDigitsInfo(digitsInfo);
|
|
193
|
+
}
|
|
194
|
+
const options = {
|
|
195
|
+
...this.options,
|
|
196
|
+
...parsedDigitsInfo
|
|
197
|
+
};
|
|
198
|
+
try {
|
|
199
|
+
const num = strToNumber(value);
|
|
200
|
+
/* Guideline requires for group separator to be `space`, as in 'ru-RU' locale.
|
|
201
|
+
* But by default in es-LA locale is used `comma`.
|
|
202
|
+
* To reduce data manipulation, 'ru-RU' locale is used. */
|
|
203
|
+
if (currentLocale === 'es-LA') {
|
|
204
|
+
return Intl.NumberFormat.call(this, 'ru-RU', options).format(num);
|
|
205
|
+
}
|
|
206
|
+
return Intl.NumberFormat.call(this, currentLocale, options).format(num);
|
|
207
|
+
}
|
|
208
|
+
catch (error) {
|
|
209
|
+
throw Error(`InvalidPipeArgument: KbqTableNumberPipe for pipe '${JSON.stringify(error.message)}'`);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqTableNumberPipe, deps: [{ token: KBQ_LOCALE_ID, optional: true }, { token: KBQ_LOCALE_SERVICE, optional: true }, { token: KBQ_NUMBER_FORMATTER_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
213
|
+
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.1.5", ngImport: i0, type: KbqTableNumberPipe, name: "kbqTableNumber", pure: false }); }
|
|
214
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqTableNumberPipe, providedIn: 'root' }); }
|
|
215
|
+
}
|
|
216
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqTableNumberPipe, decorators: [{
|
|
217
|
+
type: Injectable,
|
|
218
|
+
args: [{ providedIn: 'root' }]
|
|
219
|
+
}, {
|
|
220
|
+
type: Pipe,
|
|
221
|
+
args: [{ name: 'kbqTableNumber', pure: false }]
|
|
113
222
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
114
223
|
type: Optional
|
|
115
224
|
}, {
|
|
@@ -126,4 +235,116 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImpor
|
|
|
126
235
|
type: Inject,
|
|
127
236
|
args: [KBQ_NUMBER_FORMATTER_OPTIONS]
|
|
128
237
|
}] }]; } });
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb3JlL2Zvcm1hdHRlcnMvbnVtYmVyL2Zvcm1hdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQ0FBc0M7QUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRWxHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUczRyxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxJQUFJLGNBQWMsQ0FBUywyQkFBMkIsQ0FBQyxDQUFDO0FBRXBHLE1BQU0sQ0FBQyxNQUFNLG9DQUFvQyxHQUFxQjtJQUNsRSxXQUFXLEVBQUUsSUFBSTtJQUNqQixvQkFBb0IsRUFBRSxDQUFDO0lBQ3ZCLHFCQUFxQixFQUFFLENBQUM7SUFDeEIscUJBQXFCLEVBQUUsQ0FBQztDQUMzQixDQUFDO0FBR0YsU0FBUyxPQUFPLENBQUMsS0FBVTtJQUN2QixPQUFPLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxLQUFLLEVBQUUsSUFBSSxLQUFLLEtBQUssS0FBSyxDQUFDO0FBQzVELENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxLQUFzQjtJQUN2QyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDeEUsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDeEI7SUFFRCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtRQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxrQkFBa0IsQ0FBQyxD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O1lBQ2YsR0FBRyxnQkFBZ0I7U0FDdEIsQ0FBQztRQUVGLElBQUk7WUFDQSxNQUFNLEdBQUcsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFL0IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUMzRTtRQUFDLE9BQU8sS0FBVSxFQUFFO1lBQ2pCLE1BQU0sS0FBSyxDQUFDLGlEQUFpRCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDbEc7SUFDTCxDQUFDO2lJQWpEUSxjQUFjLGtCQUVDLGFBQWEsNkJBQ2Isa0JBQWtCLDZCQUNsQiw0QkFBNEI7K0hBSjNDLGNBQWM7cUlBQWQsY0FBYyxjQUZELE1BQU07OzJGQUVuQixjQUFjO2tCQUYxQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7a0JBQ2pDLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7OzBCQUc5QixRQUFROzswQkFBSSxNQUFNOzJCQUFDLGFBQWE7OzBCQUNoQyxRQUFROzswQkFBSSxNQUFNOzJCQUFDLGtCQUFrQjs7MEJBQ3JDLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGU6bmFtaW5nLWNvbnZlbnRpb24gKi9cbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIE9wdGlvbmFsLCBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEtCUV9ERUZBVUxUX0xPQ0FMRV9JRCwgS0JRX0xPQ0FMRV9JRCwgS0JRX0xPQ0FMRV9TRVJWSUNFLCBLYnFMb2NhbGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbG9jYWxlcyc7XG5cblxuZXhwb3J0IGNvbnN0IEtCUV9OVU1CRVJfRk9STUFUVEVSX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nPignS2JxTnVtYmVyRm9ybWF0dGVyT3B0aW9ucycpO1xuXG5leHBvcnQgY29uc3QgS0JRX05VTUJFUl9GT1JNQVRURVJfREVGQVVMVF9PUFRJT05TOiBQYXJzZWREaWdpdHNJbmZvID0ge1xuICAgIHVzZUdyb3VwaW5nOiB0cnVlLFxuICAgIG1pbmltdW1JbnRlZ2VyRGlnaXRzOiAxLFxuICAgIG1pbmltdW1GcmFjdGlvbkRpZ2l0czogMCxcbiAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IDNcbn07XG5cblxuZnVuY3Rpb24gaXNFbXB0eSh2YWx1ZTogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlID09IG51bGwgfHwgdmFsdWUgPT09ICcnIHx8IHZhbHVlICE9PSB2YWx1ZTtcbn1cblxuZnVuY3Rpb24gc3RyVG9OdW1iZXIodmFsdWU6IG51bWJlciB8IHN0cmluZyk6IG51bWJlciB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgIWlzTmFOKE51bWJlcih2YWx1ZSkgLSBwYXJzZUZsb2F0KHZhbHVlKSkpIHtcbiAgICAgICAgcmV0dXJuIE51bWJlcih2YWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ251bWJlcicpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke3ZhbHVlfSBpcyBub3QgYSBudW1iZXJgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG59XG5cbmV4cG9ydCBjb25zdCBOVU1CRVJfRk9STUFUX1JFR0VYUCA9IC9eKFxcZCspP1xcLigoXFxkKykoLShcXGQrKSk/KC0odHJ1ZXxmYWxzZSkpPyk/JC87XG5cbmNvbnN0IG1pbkludEdyb3VwUG9zaXRpb24gPSAxO1xuY29uc3QgbWluRnJhY3Rpb25Hcm91cFBvc2l0aW9uID0gMztcbmNvbnN0IG1heEZyYWN0aW9uR3JvdXBQb3NpdGlvbiA9IDU7XG5jb25zdCB1c2VHcm91cGluZ1Bvc2l0aW9uID0gNztcblxuaW50ZXJmYWNlIE51bWJlckZvcm1hdE9wdGlvbnMge1xuICAgIHVzZUdyb3VwaW5nOiBib29sZWFuO1xuXG4gICAgbWluaW11bUludGVnZXJEaWdpdHM6IG51bWJlcjtcbiAgICBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IG51bWJlcjtcbiAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IG51bWJlcjtcbiAgICBtaW5pbXVtU2lnbmlmaWNhbnREaWdpdHM6IG51bWJlcjtcbiAgICBtYXhpbXVtU2lnbmlmaWNhbnREaWdpdHM6IG51bWJlcjtcblxuICAgIGxvY2FsZU1hdGNoZXI/OiBzdHJpbmc7XG4gICAgc3R5bGU/OiBzdHJpbmc7XG5cbiAgICBjdXJyZW5jeT86IHN0cmluZztcbiAgICBjdXJyZW5jeURpc3BsYXk/OiBzdHJpbmc7XG59XG5cbmNsYXNzIFBhcnNlZERpZ2l0c0luZm8ge1xuICAgIHVzZUdyb3VwaW5nOiBib29sZWFuO1xuICAgIG1pbmltdW1JbnRlZ2VyRGlnaXRzOiBudW1iZXI7XG4gICAgbWluaW11bUZyYWN0aW9uRGlnaXRzOiBudW1iZXI7XG4gICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBudW1iZXI7XG59XG5cbmZ1bmN0aW9uIHBhcnNlRGlnaXRzSW5mbyhkaWdpdHNJbmZvOiBzdHJpbmcpOiBQYXJzZWREaWdpdHNJbmZvIHtcbiAgICBjb25zdCBwYXJ0cyA9IGRpZ2l0c0luZm8ubWF0Y2goTlVNQkVSX0ZPUk1BVF9SRUdFWFApO1xuXG4gICAgaWYgKHBhcnRzID09PSBudWxsKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgJHtkaWdpdHNJbmZvfSBpcyBub3QgYSB2YWxpZCBkaWdpdCBpbmZvYCk7XG4gICAgfVxuXG4gICAgY29uc3QgbWluSW50UGFydCA9IHBhcnRzW21pbkludEdyb3VwUG9zaXRpb25dO1xuICAgIGNvbnN0IG1pbkZyYWN0aW9uUGFydCA9IHBhcnRzW21pbkZyYWN0aW9uR3JvdXBQb3NpdGlvbl07XG4gICAgY29uc3QgbWF4RnJhY3Rpb25QYXJ0ID0gcGFydHNbbWF4RnJhY3Rpb25Hcm91cFBvc2l0aW9uXTtcbiAgICBjb25zdCB1c2VHcm91cGluZ1BhcnQgPSBwYXJ0c1t1c2VHcm91cGluZ1Bvc2l0aW9uXTtcblxuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBQYXJzZWREaWdpdHNJbmZvKCk7XG5cbiAgICBpZiAobWluSW50UGFydCAhPSBudWxsKSB7XG4gICAgICAgIHJlc3VsdC5taW5pbXVtSW50ZWdlckRpZ2l0cyA9IHBhcnNlSW50KG1pbkludFBhcnQpO1xuICAgIH1cblxuICAgIGlmIChtaW5GcmFjdGlvblBhcnQgIT0gbnVsbCkge1xuICAgICAgICByZXN1bHQubWluaW11bUZyYWN0aW9uRGlnaXRzID0gcGFyc2VJbnQobWluRnJhY3Rpb25QYXJ0KTtcbiAgICB9XG5cbiAgICBpZiAobWF4RnJhY3Rpb25QYXJ0ICE9IG51bGwpIHtcbiAgICAgICAgcmVzdWx0Lm1heGltdW1GcmFjdGlvbkRpZ2l0cyA9IHBhcnNlSW50KG1heEZyYWN0aW9uUGFydCk7XG4gICAgfSBlbHNlIGlmIChtaW5GcmFjdGlvblBhcnQgIT0gbnVsbCAmJiByZXN1bHQubWluaW11bUZyYWN0aW9uRGlnaXRzID4gcmVzdWx0Lm1heGltdW1GcmFjdGlvbkRpZ2l0cykge1xuICAgICAgICByZXN1bHQubWF4aW11bUZyYWN0aW9uRGlnaXRzID0gcmVzdWx0Lm1pbmltdW1GcmFjdGlvbkRpZ2l0cztcbiAgICB9XG5cbiAgICBpZiAodXNlR3JvdXBpbmdQYXJ0ICE9IG51bGwpIHtcbiAgICAgICAgcmVzdWx0LnVzZUdyb3VwaW5nID0gdXNlR3JvdXBpbmdQYXJ0ID09PSAndHJ1ZSc7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cblxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuQFBpcGUoeyBuYW1lOiAnbWNOdW1iZXInLCBwdXJlOiBmYWxzZSB9KVxuZXhwb3J0IGNsYXNzIEticURlY2ltYWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoS0JRX0xPQ0FMRV9JRCkgcHJpdmF0ZSBpZDogc3RyaW5nLFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEtCUV9MT0NBTEVfU0VSVklDRSkgcHJpdmF0ZSBsb2NhbGVTZXJ2aWNlOiBLYnFMb2NhbGVTZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEtCUV9OVU1CRVJfRk9STUFUVEVSX09QVElPTlMpIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogUGFyc2VkRGlnaXRzSW5mb1xuICAgICkge1xuICAgICAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLm9wdGlvbnMgfHwgS0JRX05VTUJFUl9GT1JNQVRURVJfREVGQVVMVF9PUFRJT05TO1xuXG4gICAgICAgIHRoaXMubG9jYWxlU2VydmljZT8uY2hhbmdlc1xuICAgICAgICAgICAgLnN1YnNjcmliZSgobmV3SWQ6IHN0cmluZykgPT4gdGhpcy5pZCA9IG5ld0lkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAcGFyYW0gdmFsdWUgVGhlIG51bWJlciB0byBiZSBmb3JtYXR0ZWQuXG4gICAgICogQHBhcmFtIGRpZ2l0c0luZm8gRGVjaW1hbCByZXByZXNlbnRhdGlvbiBvcHRpb25zLCBzcGVjaWZpZWQgYnkgYSBzdHJpbmdcbiAgICAgKiBpbiB0aGUgZm9sbG93aW5nIGZvcm1hdDo8YnI+XG4gICAgICogPGNvZGU+e21pbkludGVnZXJEaWdpdHN9LnttaW5GcmFjdGlvbkRpZ2l0c30te21heEZyYWN0aW9uRGlnaXRzfTwvY29kZT4uXG4gICAgICogICAtIGBtaW5JbnRlZ2VyRGlnaXRzYDogVGhlIG1pbmltdW0gbnVtYmVyIG9mIGludGVnZXIgZGlnaXRzIGJlZm9yZSB0aGUgZGVjaW1hbCBwb2ludC5cbiAgICAgKiBEZWZhdWx0IGlzIGAxYC5cbiAgICAgKiAgIC0gYG1pbkZyYWN0aW9uRGlnaXRzYDogVGhlIG1pbmltdW0gbnVtYmVyIG9mIGRpZ2l0cyBhZnRlciB0aGUgZGVjaW1hbCBwb2ludC5cbiAgICAgKiBEZWZhdWx0IGlzIGAwYC5cbiAgICAgKiAgIC0gYG1heEZyYWN0aW9uRGlnaXRzYDogVGhlIG1heGltdW0gbnVtYmVyIG9mIGRpZ2l0cyBhZnRlciB0aGUgZGVjaW1hbCBwb2ludC5cbiAgICAgKiBEZWZhdWx0IGlzIGAzYC5cbiAgICAgKiBAcGFyYW0gbG9jYWxlIEEgbG9jYWxlIGNvZGUgZm9yIHRoZSBsb2NhbGUgZm9ybWF0IHJ1bGVzIHRvIHVzZS5cbiAgICAgKiBXaGVuIG5vdCBzdXBwbGllZCwgdXNlcyB0aGUgdmFsdWUgb2YgYEtCUV9MT0NBTEVfSURgLCB3aGljaCBpcyBgcnVgIGJ5IGRlZmF1bHQuXG4gICAgICovXG4gICAgdHJhbnNmb3JtKHZhbHVlOiBhbnksIGRpZ2l0c0luZm8/OiBzdHJpbmcsIGxvY2FsZT86IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAoaXNFbXB0eSh2YWx1ZSkpIHsgcmV0dXJuIG51bGw7IH1cblxuICAgICAgICBjb25zdCBjdXJyZW50TG9jYWxlID0gbG9jYWxlIHx8IHRoaXMuaWQgfHwgS0JRX0RFRkFVTFRfTE9DQUxFX0lEO1xuXG4gICAgICAgIGxldCBwYXJzZWREaWdpdHNJbmZvO1xuXG4gICAgICAgIGlmIChkaWdpdHNJbmZvKSB7XG4gICAgICAgICAgICBwYXJzZWREaWdpdHNJbmZvID0gcGFyc2VEaWdpdHNJbmZvKGRpZ2l0c0luZm8pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgb3B0aW9uczogTnVtYmVyRm9ybWF0T3B0aW9ucyA9IHtcbiAgICAgICAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICAgICAgICAgIC4uLnBhcnNlZERpZ2l0c0luZm9cbiAgICAgICAgfTtcblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgbnVtID0gc3RyVG9OdW1iZXIodmFsdWUpO1xuXG4gICAgICAgICAgICByZXR1cm4gSW50bC5OdW1iZXJGb3JtYXQuY2FsbCh0aGlzLCBjdXJyZW50TG9jYWxlLCBvcHRpb25zKS5mb3JtYXQobnVtKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgICAgICAgdGhyb3cgRXJyb3IoYEludmFsaWRQaXBlQXJndW1lbnQ6IEticURlY2ltYWxQaXBlIGZvciBwaXBlICcke0pTT04uc3RyaW5naWZ5KGVycm9yLm1lc3NhZ2UpfSdgKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
238
|
+
export function isWithin(startRange, endRange, valueToCheck) {
|
|
239
|
+
return startRange <= valueToCheck && valueToCheck < endRange;
|
|
240
|
+
}
|
|
241
|
+
export class KbqRoundDecimalPipe {
|
|
242
|
+
constructor(id, localeService) {
|
|
243
|
+
this.id = id;
|
|
244
|
+
this.localeService = localeService;
|
|
245
|
+
this.localeService?.changes
|
|
246
|
+
.subscribe((newId) => this.id = newId);
|
|
247
|
+
}
|
|
248
|
+
transform(value, locale) {
|
|
249
|
+
if (isEmpty(value)) {
|
|
250
|
+
return null;
|
|
251
|
+
}
|
|
252
|
+
const currentLocale = locale || this.id || KBQ_DEFAULT_LOCALE_ID;
|
|
253
|
+
this.roundingOptions = this.localeService.locales[currentLocale].formatters.number.rounding;
|
|
254
|
+
try {
|
|
255
|
+
const num = strToNumber(value);
|
|
256
|
+
const unit = this.calculateUnit(num);
|
|
257
|
+
if (!unit) {
|
|
258
|
+
return Intl.NumberFormat.call(this, currentLocale, { useGrouping: false }).format(num);
|
|
259
|
+
}
|
|
260
|
+
let parts = {};
|
|
261
|
+
if (intervalsConfig.supportedLanguages.includes(currentLocale)) {
|
|
262
|
+
intervalsConfig.intervals
|
|
263
|
+
.find(({ startRange, endRange, precision }) => {
|
|
264
|
+
const within = isWithin(startRange, endRange, num);
|
|
265
|
+
if (within) {
|
|
266
|
+
if (precision) {
|
|
267
|
+
parts = unit === 'thousand' ?
|
|
268
|
+
this.calculatePartsForThousands(num) :
|
|
269
|
+
{
|
|
270
|
+
num: Math.trunc(num / ROUNDING_UNITS[unit]),
|
|
271
|
+
fraction: this.calculateDecimal(num, ROUNDING_UNITS[unit])
|
|
272
|
+
};
|
|
273
|
+
}
|
|
274
|
+
else {
|
|
275
|
+
parts = { num: Math.round(num / ROUNDING_UNITS[unit]) };
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
return within;
|
|
279
|
+
});
|
|
280
|
+
}
|
|
281
|
+
parts = parts.num ? parts : {
|
|
282
|
+
num: Math.trunc(num / ROUNDING_UNITS[unit]),
|
|
283
|
+
fraction: this.calculateDecimal(num, ROUNDING_UNITS[unit])
|
|
284
|
+
};
|
|
285
|
+
Object.keys(parts).forEach((key) => {
|
|
286
|
+
parts[key] = Intl.NumberFormat.call(this, currentLocale, { useGrouping: false }).format(parts[key]);
|
|
287
|
+
});
|
|
288
|
+
const calculatedValue = parts.fraction
|
|
289
|
+
? `${parts.num}${this.roundingOptions.groupSeparator}${parts.fraction}`
|
|
290
|
+
: `${parts.num}`;
|
|
291
|
+
return `${calculatedValue}${this.roundingOptions.separator}${this.roundingOptions[unit]}`;
|
|
292
|
+
}
|
|
293
|
+
catch (error) {
|
|
294
|
+
throw Error(`InvalidPipeArgument: KbqRoundDecimalPipe for pipe '${JSON.stringify(error.message)}'`);
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
calculateDecimal(num, divider) {
|
|
298
|
+
/* tslint:disable-next-line:no-magic-numbers */
|
|
299
|
+
return Math.round(num / divider % 1 * 10);
|
|
300
|
+
}
|
|
301
|
+
/**
|
|
302
|
+
* 2 * 1000 is a number in the interval of [1500...2500)
|
|
303
|
+
*
|
|
304
|
+
* 2,0 * 1000 is a number in the interval of [1950...2050)
|
|
305
|
+
*/
|
|
306
|
+
calculatePartsForThousands(num) {
|
|
307
|
+
const dividedValue = num / ROUNDING_UNITS.thousand;
|
|
308
|
+
const div = Math.round(dividedValue) * ROUNDING_UNITS.thousand;
|
|
309
|
+
const fifty = 50;
|
|
310
|
+
return isWithin(div - fifty, div + fifty, num)
|
|
311
|
+
? { num: Math.round(dividedValue), fraction: 0 }
|
|
312
|
+
: { num: Math.round(dividedValue) };
|
|
313
|
+
}
|
|
314
|
+
calculateUnit(num) {
|
|
315
|
+
let currentUnit;
|
|
316
|
+
const localizedOptions = Object.keys(this.roundingOptions);
|
|
317
|
+
Object.keys(ROUNDING_UNITS).every((key) => {
|
|
318
|
+
if (!localizedOptions.includes(key)) {
|
|
319
|
+
return true;
|
|
320
|
+
}
|
|
321
|
+
if (num / ROUNDING_UNITS[key] >= 1) {
|
|
322
|
+
currentUnit = key;
|
|
323
|
+
return true;
|
|
324
|
+
}
|
|
325
|
+
return false;
|
|
326
|
+
});
|
|
327
|
+
return currentUnit;
|
|
328
|
+
}
|
|
329
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqRoundDecimalPipe, deps: [{ token: KBQ_LOCALE_ID, optional: true }, { token: KBQ_LOCALE_SERVICE, optional: true }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
330
|
+
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.1.5", ngImport: i0, type: KbqRoundDecimalPipe, name: "kbqRoundNumber", pure: false }); }
|
|
331
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqRoundDecimalPipe, providedIn: 'root' }); }
|
|
332
|
+
}
|
|
333
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqRoundDecimalPipe, decorators: [{
|
|
334
|
+
type: Injectable,
|
|
335
|
+
args: [{ providedIn: 'root' }]
|
|
336
|
+
}, {
|
|
337
|
+
type: Pipe,
|
|
338
|
+
args: [{ name: 'kbqRoundNumber', pure: false }]
|
|
339
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
340
|
+
type: Optional
|
|
341
|
+
}, {
|
|
342
|
+
type: Inject,
|
|
343
|
+
args: [KBQ_LOCALE_ID]
|
|
344
|
+
}] }, { type: i1.KbqLocaleService, decorators: [{
|
|
345
|
+
type: Optional
|
|
346
|
+
}, {
|
|
347
|
+
type: Inject,
|
|
348
|
+
args: [KBQ_LOCALE_SERVICE]
|
|
349
|
+
}] }]; } });
|
|
350
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb3JlL2Zvcm1hdHRlcnMvbnVtYmVyL2Zvcm1hdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQ0FBc0M7QUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRWxHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUczRyxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxJQUFJLGNBQWMsQ0FBUywyQkFBMkIsQ0FBQyxDQUFDO0FBRXBHLE1BQU0sQ0FBQyxNQUFNLG9DQUFvQyxHQUFxQjtJQUNsRSxXQUFXLEVBQUUsSUFBSTtJQUNqQixvQkFBb0IsRUFBRSxDQUFDO0lBQ3ZCLHFCQUFxQixFQUFFLENBQUM7SUFDeEIscUJBQXFCLEVBQUUsQ0FBQztDQUMzQixDQUFDO0FBR0YsU0FBUyxPQUFPLENBQUMsS0FBVTtJQUN2QixPQUFPLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxLQUFLLEVBQUUsSUFBSSxLQUFLLEtBQUssS0FBSyxDQUFDO0FBQzVELENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxLQUFzQjtJQUN2QyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDeEUsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDeEI7SUFFRCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtRQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxrQkFBa0IsQ0FBQyxD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cEMsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUUzRCxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3RDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQUUsT0FBTyxJQUFJLENBQUM7YUFBRTtZQUNyRCxJQUFJLEdBQUcsR0FBRyxjQUFjLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNoQyxXQUFXLEdBQUcsR0FBRyxDQUFDO2dCQUVsQixPQUFPLElBQUksQ0FBQzthQUNmO1lBRUQsT0FBTyxLQUFLLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLFdBQVcsQ0FBQztJQUN2QixDQUFDO2lJQXBHUSxtQkFBbUIsa0JBS0osYUFBYSw2QkFDYixrQkFBa0I7K0hBTmpDLG1CQUFtQjtxSUFBbkIsbUJBQW1CLGNBRk4sTUFBTTs7MkZBRW5CLG1CQUFtQjtrQkFGL0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7O2tCQUNqQyxJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7OzBCQU1wQyxRQUFROzswQkFBSSxNQUFNOzJCQUFDLGFBQWE7OzBCQUNoQyxRQUFROzswQkFBSSxNQUFNOzJCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIHRzbGludDpkaXNhYmxlOm5hbWluZy1jb252ZW50aW9uICovXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBPcHRpb25hbCwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBLQlFfREVGQVVMVF9MT0NBTEVfSUQsIEtCUV9MT0NBTEVfSUQsIEtCUV9MT0NBTEVfU0VSVklDRSwgS2JxTG9jYWxlU2VydmljZSB9IGZyb20gJy4uLy4uL2xvY2FsZXMnO1xuXG5cbmV4cG9ydCBjb25zdCBLQlFfTlVNQkVSX0ZPUk1BVFRFUl9PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ0ticU51bWJlckZvcm1hdHRlck9wdGlvbnMnKTtcblxuZXhwb3J0IGNvbnN0IEtCUV9OVU1CRVJfRk9STUFUVEVSX0RFRkFVTFRfT1BUSU9OUzogUGFyc2VkRGlnaXRzSW5mbyA9IHtcbiAgICB1c2VHcm91cGluZzogdHJ1ZSxcbiAgICBtaW5pbXVtSW50ZWdlckRpZ2l0czogMSxcbiAgICBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IDAsXG4gICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiAzXG59O1xuXG5cbmZ1bmN0aW9uIGlzRW1wdHkodmFsdWU6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB2YWx1ZSA9PSBudWxsIHx8IHZhbHVlID09PSAnJyB8fCB2YWx1ZSAhPT0gdmFsdWU7XG59XG5cbmZ1bmN0aW9uIHN0clRvTnVtYmVyKHZhbHVlOiBudW1iZXIgfCBzdHJpbmcpOiBudW1iZXIge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmICFpc05hTihOdW1iZXIodmFsdWUpIC0gcGFyc2VGbG9hdCh2YWx1ZSkpKSB7XG4gICAgICAgIHJldHVybiBOdW1iZXIodmFsdWUpO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdudW1iZXInKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgJHt2YWx1ZX0gaXMgbm90IGEgbnVtYmVyYCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xufVxuXG5leHBvcnQgY29uc3QgTlVNQkVSX0ZPUk1BVF9SRUdFWFAgPSAvXihcXGQrKT9cXC4oKFxcZCspKC0oXFxkKykpPygtKHRydWV8ZmFsc2UpKT8pPyQvO1xuXG5jb25zdCBtaW5JbnRHcm91cFBvc2l0aW9uID0gMTtcbmNvbnN0IG1pbkZyYWN0aW9uR3JvdXBQb3NpdGlvbiA9IDM7XG5jb25zdCBtYXhGcmFjdGlvbkdyb3VwUG9zaXRpb24gPSA1O1xuY29uc3QgdXNlR3JvdXBpbmdQb3NpdGlvbiA9IDc7XG5cbmludGVyZmFjZSBOdW1iZXJGb3JtYXRPcHRpb25zIHtcbiAgICB1c2VHcm91cGluZzogYm9vbGVhbjtcblxuICAgIG1pbmltdW1JbnRlZ2VyRGlnaXRzOiBudW1iZXI7XG4gICAgbWluaW11bUZyYWN0aW9uRGlnaXRzOiBudW1iZXI7XG4gICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBudW1iZXI7XG4gICAgbWluaW11bVNpZ25pZmljYW50RGlnaXRzOiBudW1iZXI7XG4gICAgbWF4aW11bVNpZ25pZmljYW50RGlnaXRzOiBudW1iZXI7XG5cbiAgICBsb2NhbGVNYXRjaGVyPzogc3RyaW5nO1xuICAgIHN0eWxlPzogc3RyaW5nO1xuXG4gICAgY3VycmVuY3k/OiBzdHJpbmc7XG4gICAgY3VycmVuY3lEaXNwbGF5Pzogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgUm91bmREZWNpbWFsT3B0aW9ucyB7XG4gICAgc2VwYXJhdG9yOiBzdHJpbmc7XG4gICAgZ3JvdXBTZXBhcmF0b3I6IHN0cmluZztcbiAgICB0aG91c2FuZHM/OiBzdHJpbmc7XG4gICAgdGVuVGhvdXNhbmQ/OiBzdHJpbmc7XG4gICAgbWlsbGlvbj86IHN0cmluZztcbiAgICBvbmVIdW5kcmVkTWlsbGlvbnM/OiBzdHJpbmc7XG4gICAgYmlsbGlvbj86IHN0cmluZztcbiAgICB0cmlsbGlvbjogc3RyaW5nO1xuICAgIHJ0bD86IGJvb2xlYW47XG59XG5cblxuLy8gdHNsaW50OmRpc2FibGU6bm8tbWFnaWMtbnVtYmVyc1xuY29uc3QgUk9VTkRJTkdfVU5JVFMgPSB7XG4gICAgdGhvdXNhbmQ6IDFlMyxcbiAgICB0ZW5UaG91c2FuZDogMTAgKiAxZTMsXG4gICAgbWlsbGlvbjogMWU2LFxuICAgIG9uZUh1bmRyZWRNaWxsaW9uczogMTAwICogMWU2LFxuICAgIGJpbGxpb246IDFlOSxcbiAgICB0cmlsbGlvbjogMWUxMlxufTtcblxuY29uc3QgaW50ZXJ2YWxzQ29uZmlnID0ge1xuICAgIHN1cHBvcnRlZExhbmd1YWdlczogWydydS1SVScsICdlbi1VUycsICdlcy1MQScsICdwdC1CUicsICdmYS1JUiddLFxuICAgIGludGVydmFsczogW1xuICAgICAgICB7IHN0YXJ0UmFuZ2U6IDEsIGVuZFJhbmdlOiBST1VORElOR19VTklUUy50aG91c2FuZCB9LFxuICAgICAgICB7IHN0YXJ0UmFuZ2U6IFJPVU5ESU5HX1VOSVRTLnRob3VzYW5kLCBlbmRSYW5nZTogUk9VTkRJTkdfVU5JVFMudGVuVGhvdXNhbmQsIHByZWNpc2lvbjogMSB9LFxuICAgICAgICB7IHN0YXJ0UmFuZ2U6IFJPVU5ESU5HX1VOSVRTLnRlblRob3VzYW5kLCBlbmRSYW5nZTogUk9VTkRJTkdfVU5JVFMubWlsbGlvbiB9LFxuICAgICAgICB7IHN0YXJ0UmFuZ2U6IFJPVU5ESU5HX1VOSVRTLm1pbGxpb24sIGVuZFJhbmdlOiBST1VORElOR19VTklUUy5taWxsaW9uICogMTAsIHByZWNpc2lvbjogMSB9LFxuICAgICAgICB7IHN0YXJ0UmFuZ2U6IFJPVU5ESU5HX1VOSVRTLm1pbGxpb24gKiAxMCwgZW5kUmFuZ2U6IFJPVU5ESU5HX1VOSVRTLmJpbGxpb24gfVxuICAgIF1cbn07XG4vLyB0c2xpbnQ6ZW5hYmxlOm5vLW1hZ2ljLW51bWJlcnNcblxuY2xhc3MgUGFyc2VkRGlnaXRzSW5mbyB7XG4gICAgdXNlR3JvdXBpbmc6IGJvb2xlYW47XG4gICAgbWluaW11bUludGVnZXJEaWdpdHM6IG51bWJlcjtcbiAgICBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IG51bWJlcjtcbiAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IG51bWJlcjtcbn1cblxuY29uc3QgZGVmYXVsdFZhbHVlRm9yR3JvdXBpbmdJblJVTG9jYWxlOiBudW1iZXIgPSAxMDAwMDtcblxuZnVuY3Rpb24gcGFyc2VEaWdpdHNJbmZvKGRpZ2l0c0luZm86IHN0cmluZyk6IFBhcnNlZERpZ2l0c0luZm8ge1xuICAgIGNvbnN0IHBhcnRzID0gZGlnaXRzSW5mby5tYXRjaChOVU1CRVJfRk9STUFUX1JFR0VYUCk7XG5cbiAgICBpZiAocGFydHMgPT09IG51bGwpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2RpZ2l0c0luZm99IGlzIG5vdCBhIHZhbGlkIGRpZ2l0IGluZm9gKTtcbiAgICB9XG5cbiAgICBjb25zdCBtaW5JbnRQYXJ0ID0gcGFydHNbbWluSW50R3JvdXBQb3NpdGlvbl07XG4gICAgY29uc3QgbWluRnJhY3Rpb25QYXJ0ID0gcGFydHNbbWluRnJhY3Rpb25Hcm91cFBvc2l0aW9uXTtcbiAgICBjb25zdCBtYXhGcmFjdGlvblBhcnQgPSBwYXJ0c1ttYXhGcmFjdGlvbkdyb3VwUG9zaXRpb25dO1xuICAgIGNvbnN0IHVzZUdyb3VwaW5nUGFydCA9IHBhcnRzW3VzZUdyb3VwaW5nUG9zaXRpb25dO1xuXG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IFBhcnNlZERpZ2l0c0luZm8oKTtcblxuICAgIGlmIChtaW5JbnRQYXJ0ICE9IG51bGwpIHtcbiAgICAgICAgcmVzdWx0Lm1pbmltdW1JbnRlZ2VyRGlnaXRzID0gcGFyc2VJbnQobWluSW50UGFydCk7XG4gICAgfVxuXG4gICAgaWYgKG1pbkZyYWN0aW9uUGFydCAhPSBudWxsKSB7XG4gICAgICAgIHJlc3VsdC5taW5pbXVtRnJhY3Rpb25EaWdpdHMgPSBwYXJzZUludChtaW5GcmFjdGlvblBhcnQpO1xuICAgIH1cblxuICAgIGlmIChtYXhGcmFjdGlvblBhcnQgIT0gbnVsbCkge1xuICAgICAgICByZXN1bHQubWF4aW11bUZyYWN0aW9uRGlnaXRzID0gcGFyc2VJbnQobWF4RnJhY3Rpb25QYXJ0KTtcbiAgICB9IGVsc2UgaWYgKG1pbkZyYWN0aW9uUGFydCAhPSBudWxsICYmIHJlc3VsdC5taW5pbXVtRnJhY3Rpb25EaWdpdHMgPiByZXN1bHQubWF4aW11bUZyYWN0aW9uRGlnaXRzKSB7XG4gICAgICAgIHJlc3VsdC5tYXhpbXVtRnJhY3Rpb25EaWdpdHMgPSByZXN1bHQubWluaW11bUZyYWN0aW9uRGlnaXRzO1xuICAgIH1cblxuICAgIGlmICh1c2VHcm91cGluZ1BhcnQgIT0gbnVsbCkge1xuICAgICAgICByZXN1bHQudXNlR3JvdXBpbmcgPSB1c2VHcm91cGluZ1BhcnQgPT09ICd0cnVlJztcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuXG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5AUGlwZSh7IG5hbWU6ICdrYnFOdW1iZXInLCBwdXJlOiBmYWxzZSB9KVxuZXhwb3J0IGNsYXNzIEticURlY2ltYWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoS0JRX0xPQ0FMRV9JRCkgcHJpdmF0ZSBpZDogc3RyaW5nLFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEtCUV9MT0NBTEVfU0VSVklDRSkgcHJpdmF0ZSBsb2NhbGVTZXJ2aWNlOiBLYnFMb2NhbGVTZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEtCUV9OVU1CRVJfRk9STUFUVEVSX09QVElPTlMpIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogUGFyc2VkRGlnaXRzSW5mb1xuICAgICkge1xuICAgICAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLm9wdGlvbnMgfHwgS0JRX05VTUJFUl9GT1JNQVRURVJfREVGQVVMVF9PUFRJT05TO1xuXG4gICAgICAgIHRoaXMubG9jYWxlU2VydmljZT8uY2hhbmdlc1xuICAgICAgICAgICAgLnN1YnNjcmliZSgobmV3SWQ6IHN0cmluZykgPT4gdGhpcy5pZCA9IG5ld0lkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAcGFyYW0gdmFsdWUgVGhlIG51bWJlciB0byBiZSBmb3JtYXR0ZWQuXG4gICAgICogQHBhcmFtIGRpZ2l0c0luZm8gRGVjaW1hbCByZXByZXNlbnRhdGlvbiBvcHRpb25zLCBzcGVjaWZpZWQgYnkgYSBzdHJpbmdcbiAgICAgKiBpbiB0aGUgZm9sbG93aW5nIGZvcm1hdDo8YnI+XG4gICAgICogPGNvZGU+e21pbkludGVnZXJEaWdpdHN9LnttaW5GcmFjdGlvbkRpZ2l0c30te21heEZyYWN0aW9uRGlnaXRzfTwvY29kZT4uXG4gICAgICogICAtIGBtaW5JbnRlZ2VyRGlnaXRzYDogVGhlIG1pbmltdW0gbnVtYmVyIG9mIGludGVnZXIgZGlnaXRzIGJlZm9yZSB0aGUgZGVjaW1hbCBwb2ludC5cbiAgICAgKiBEZWZhdWx0IGlzIGAxYC5cbiAgICAgKiAgIC0gYG1pbkZyYWN0aW9uRGlnaXRzYDogVGhlIG1pbmltdW0gbnVtYmVyIG9mIGRpZ2l0cyBhZnRlciB0aGUgZGVjaW1hbCBwb2ludC5cbiAgICAgKiBEZWZhdWx0IGlzIGAwYC5cbiAgICAgKiAgIC0gYG1heEZyYWN0aW9uRGlnaXRzYDogVGhlIG1heGltdW0gbnVtYmVyIG9mIGRpZ2l0cyBhZnRlciB0aGUgZGVjaW1hbCBwb2ludC5cbiAgICAgKiBEZWZhdWx0IGlzIGAzYC5cbiAgICAgKiBAcGFyYW0gbG9jYWxlIEEgbG9jYWxlIGNvZGUgZm9yIHRoZSBsb2NhbGUgZm9ybWF0IHJ1bGVzIHRvIHVzZS5cbiAgICAgKiBXaGVuIG5vdCBzdXBwbGllZCwgdXNlcyB0aGUgdmFsdWUgb2YgYEtCUV9MT0NBTEVfSURgLCB3aGljaCBpcyBgcnVgIGJ5IGRlZmF1bHQuXG4gICAgICovXG4gICAgdHJhbnNmb3JtKHZhbHVlOiBhbnksIGRpZ2l0c0luZm8/OiBzdHJpbmcsIGxvY2FsZT86IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAoaXNFbXB0eSh2YWx1ZSkpIHsgcmV0dXJuIG51bGw7IH1cblxuICAgICAgICBjb25zdCBjdXJyZW50TG9jYWxlID0gbG9jYWxlIHx8IHRoaXMuaWQgfHwgS0JRX0RFRkFVTFRfTE9DQUxFX0lEO1xuXG4gICAgICAgIGxldCBwYXJzZWREaWdpdHNJbmZvO1xuXG4gICAgICAgIGlmIChkaWdpdHNJbmZvKSB7XG4gICAgICAgICAgICBwYXJzZWREaWdpdHNJbmZvID0gcGFyc2VEaWdpdHNJbmZvKGRpZ2l0c0luZm8pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgb3B0aW9uczogTnVtYmVyRm9ybWF0T3B0aW9ucyA9IHtcbiAgICAgICAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICAgICAgICAgIC4uLnBhcnNlZERpZ2l0c0luZm9cbiAgICAgICAgfTtcblxuICAgICAgICBpZiAodGhpcy5pc1NwZWNpYWxGb3JtYXRGb3JSVUxvY2FsZShjdXJyZW50TG9jYWxlLCB2YWx1ZSwgcGFyc2VkRGlnaXRzSW5mbz8udXNlR3JvdXBpbmcpKSB7XG4gICAgICAgICAgICBvcHRpb25zLnVzZUdyb3VwaW5nID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgbnVtID0gc3RyVG9OdW1iZXIodmFsdWUpO1xuXG4gICAgICAgICAgICAvKiBHdWlkZWxpbmUgcmVxdWlyZXMgZm9yIGdyb3VwIHNlcGFyYXRvciB0byBiZSBgc3BhY2VgLCBhcyBpbiAncnUtUlUnIGxvY2FsZS5cbiAgICAgICAgICAgICAqIEJ1dCBieSBkZWZhdWx0IGluIGVzLUxBIGxvY2FsZSBpcyB1c2VkIGBjb21tYWAuXG4gICAgICAgICAgICAgKiBUbyByZWR1Y2UgZGF0YSBtYW5pcHVsYXRpb24sICdydS1SVScgbG9jYWxlIGlzIHVzZWQuICovXG4gICAgICAgICAgICBpZiAoY3VycmVudExvY2FsZSA9PT0gJ2VzLUxBJykge1xuICAgICAgICAgICAgICAgIHJldHVybiBJbnRsLk51bWJlckZvcm1hdC5jYWxsKHRoaXMsICdydS1SVScsIG9wdGlvbnMpLmZvcm1hdChudW0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gSW50bC5OdW1iZXJGb3JtYXQuY2FsbCh0aGlzLCBjdXJyZW50TG9jYWxlLCBvcHRpb25zKS5mb3JtYXQobnVtKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgICAgICAgdGhyb3cgRXJyb3IoYEludmFsaWRQaXBlQXJndW1lbnQ6IEticURlY2ltYWxQaXBlIGZvciBwaXBlICcke0pTT04uc3RyaW5naWZ5KGVycm9yLm1lc3NhZ2UpfSdgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlzU3BlY2lhbEZvcm1hdEZvclJVTG9jYWxlKGxvY2FsZTogc3RyaW5nLCB2YWx1ZTogbnVtYmVyLCBncm91cGluZz86IGJvb2xlYW4pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIFsncnUnLCAncnUtUlUnXS5pbmNsdWRlcyhsb2NhbGUpICYmIGdyb3VwaW5nID09PSB1bmRlZmluZWQgJiYgdmFsdWUgPCBkZWZhdWx0VmFsdWVGb3JHcm91cGluZ0luUlVMb2NhbGU7XG4gICAgfVxufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuQFBpcGUoeyBuYW1lOiAna2JxVGFibGVOdW1iZXInLCBwdXJlOiBmYWxzZSB9KVxuZXhwb3J0IGNsYXNzIEticVRhYmxlTnVtYmVyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEtCUV9MT0NBTEVfSUQpIHByaXZhdGUgaWQ6IHN0cmluZyxcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChLQlFfTE9DQUxFX1NFUlZJQ0UpIHByaXZhdGUgbG9jYWxlU2VydmljZTogS2JxTG9jYWxlU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChLQlFfTlVNQkVSX0ZPUk1BVFRFUl9PUFRJT05TKSBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFBhcnNlZERpZ2l0c0luZm9cbiAgICApIHtcbiAgICAgICAgdGhpcy5vcHRpb25zID0gdGhpcy5vcHRpb25zIHx8IEtCUV9OVU1CRVJfRk9STUFUVEVSX0RFRkFVTFRfT1BUSU9OUztcblxuICAgICAgICB0aGlzLmxvY2FsZVNlcnZpY2U/LmNoYW5nZXNcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG5ld0lkOiBzdHJpbmcpID0+IHRoaXMuaWQgPSBuZXdJZCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHBhcmFtIHZhbHVlIFRoZSBudW1iZXIgdG8gYmUgZm9ybWF0dGVkLlxuICAgICAqIEBwYXJhbSBkaWdpdHNJbmZvIERlY2ltYWwgcmVwcmVzZW50YXRpb24gb3B0aW9ucywgc3BlY2lmaWVkIGJ5IGEgc3RyaW5nXG4gICAgICogaW4gdGhlIGZvbGxvd2luZyBmb3JtYXQ6PGJyPlxuICAgICAqIDxjb2RlPnttaW5JbnRlZ2VyRGlnaXRzfS57bWluRnJhY3Rpb25EaWdpdHN9LXttYXhGcmFjdGlvbkRpZ2l0c308L2NvZGU+LlxuICAgICAqICAgLSBgbWluSW50ZWdlckRpZ2l0c2A6IFRoZSBtaW5pbXVtIG51bWJlciBvZiBpbnRlZ2VyIGRpZ2l0cyBiZWZvcmUgdGhlIGRlY2ltYWwgcG9pbnQuXG4gICAgICogRGVmYXVsdCBpcyBgMWAuXG4gICAgICogICAtIGBtaW5GcmFjdGlvbkRpZ2l0c2A6IFRoZSBtaW5pbXVtIG51bWJlciBvZiBkaWdpdHMgYWZ0ZXIgdGhlIGRlY2ltYWwgcG9pbnQuXG4gICAgICogRGVmYXVsdCBpcyBgMGAuXG4gICAgICogICAtIGBtYXhGcmFjdGlvbkRpZ2l0c2A6IFRoZSBtYXhpbXVtIG51bWJlciBvZiBkaWdpdHMgYWZ0ZXIgdGhlIGRlY2ltYWwgcG9pbnQuXG4gICAgICogRGVmYXVsdCBpcyBgM2AuXG4gICAgICogQHBhcmFtIGxvY2FsZSBBIGxvY2FsZSBjb2RlIGZvciB0aGUgbG9jYWxlIGZvcm1hdCBydWxlcyB0byB1c2UuXG4gICAgICogV2hlbiBub3Qgc3VwcGxpZWQsIHVzZXMgdGhlIHZhbHVlIG9mIGBLQlFfTE9DQUxFX0lEYCwgd2hpY2ggaXMgYHJ1YCBieSBkZWZhdWx0LlxuICAgICAqL1xuICAgIHRyYW5zZm9ybSh2YWx1ZTogYW55LCBkaWdpdHNJbmZvPzogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgaWYgKGlzRW1wdHkodmFsdWUpKSB7IHJldHVybiBudWxsOyB9XG5cbiAgICAgICAgY29uc3QgY3VycmVudExvY2FsZSA9IGxvY2FsZSB8fCB0aGlzLmlkIHx8IEtCUV9ERUZBVUxUX0xPQ0FMRV9JRDtcblxuICAgICAgICBsZXQgcGFyc2VkRGlnaXRzSW5mbztcblxuICAgICAgICBpZiAoZGlnaXRzSW5mbykge1xuICAgICAgICAgICAgcGFyc2VkRGlnaXRzSW5mbyA9IHBhcnNlRGlnaXRzSW5mbyhkaWdpdHNJbmZvKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG9wdGlvbnM6IE51bWJlckZvcm1hdE9wdGlvbnMgPSB7XG4gICAgICAgICAgICAuLi50aGlzLm9wdGlvbnMsXG4gICAgICAgICAgICAuLi5wYXJzZWREaWdpdHNJbmZvXG4gICAgICAgIH07XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IG51bSA9IHN0clRvTnVtYmVyKHZhbHVlKTtcblxuICAgICAgICAgICAgLyogR3VpZGVsaW5lIHJlcXVpcmVzIGZvciBncm91cCBzZXBhcmF0b3IgdG8gYmUgYHNwYWNlYCwgYXMgaW4gJ3J1LVJVJyBsb2NhbGUuXG4gICAgICAgICAgICAgKiBCdXQgYnkgZGVmYXVsdCBpbiBlcy1MQSBsb2NhbGUgaXMgdXNlZCBgY29tbWFgLlxuICAgICAgICAgICAgICogVG8gcmVkdWNlIGRhdGEgbWFuaXB1bGF0aW9uLCAncnUtUlUnIGxvY2FsZSBpcyB1c2VkLiAqL1xuICAgICAgICAgICAgaWYgKGN1cnJlbnRMb2NhbGUgPT09ICdlcy1MQScpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gSW50bC5OdW1iZXJGb3JtYXQuY2FsbCh0aGlzLCAncnUtUlUnLCBvcHRpb25zKS5mb3JtYXQobnVtKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIEludGwuTnVtYmVyRm9ybWF0LmNhbGwodGhpcywgY3VycmVudExvY2FsZSwgb3B0aW9ucykuZm9ybWF0KG51bSk7XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKGBJbnZhbGlkUGlwZUFyZ3VtZW50OiBLYnFUYWJsZU51bWJlclBpcGUgZm9yIHBpcGUgJyR7SlNPTi5zdHJpbmdpZnkoZXJyb3IubWVzc2FnZSl9J2ApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNXaXRoaW4oc3RhcnRSYW5nZTogbnVtYmVyLCBlbmRSYW5nZTogbnVtYmVyLCB2YWx1ZVRvQ2hlY2s6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBzdGFydFJhbmdlIDw9IHZhbHVlVG9DaGVjayAmJiB2YWx1ZVRvQ2hlY2sgPCBlbmRSYW5nZTtcbn1cblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbkBQaXBlKHsgbmFtZTogJ2ticVJvdW5kTnVtYmVyJywgcHVyZTogZmFsc2UgfSlcbmV4cG9ydCBjbGFzcyBLYnFSb3VuZERlY2ltYWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgICByb3VuZGluZ09wdGlvbnM6IFJvdW5kRGVjaW1hbE9wdGlvbnM7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChLQlFfTE9DQUxFX0lEKSBwcml2YXRlIGlkOiBzdHJpbmcsXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoS0JRX0xPQ0FMRV9TRVJWSUNFKSBwcml2YXRlIGxvY2FsZVNlcnZpY2U6IEticUxvY2FsZVNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgdGhpcy5sb2NhbGVTZXJ2aWNlPy5jaGFuZ2VzXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChuZXdJZDogc3RyaW5nKSA9PiB0aGlzLmlkID0gbmV3SWQpO1xuICAgIH1cblxuICAgIHRyYW5zZm9ybSh2YWx1ZTogYW55LCBsb2NhbGU/OiBzdHJpbmcpOiBhbnkge1xuICAgICAgICBpZiAoaXNFbXB0eSh2YWx1ZSkpIHsgcmV0dXJuIG51bGw7IH1cblxuICAgICAgICBjb25zdCBjdXJyZW50TG9jYWxlOiBzdHJpbmcgPSBsb2NhbGUgfHwgdGhpcy5pZCB8fCBLQlFfREVGQVVMVF9MT0NBTEVfSUQ7XG4gICAgICAgIHRoaXMucm91bmRpbmdPcHRpb25zID0gdGhpcy5sb2NhbGVTZXJ2aWNlLmxvY2FsZXNbY3VycmVudExvY2FsZV0uZm9ybWF0dGVycy5udW1iZXIucm91bmRpbmc7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IG51bSA9IHN0clRvTnVtYmVyKHZhbHVlKTtcbiAgICAgICAgICAgIGNvbnN0IHVuaXQgPSB0aGlzLmNhbGN1bGF0ZVVuaXQobnVtKTtcbiAgICAgICAgICAgIGlmICghdW5pdCkgeyByZXR1cm4gSW50bC5OdW1iZXJGb3JtYXQuY2FsbCh0aGlzLCBjdXJyZW50TG9jYWxlLCB7IHVzZUdyb3VwaW5nOiBmYWxzZSB9KS5mb3JtYXQobnVtKTsgfVxuXG4gICAgICAgICAgICBsZXQgcGFydHM6IHsgbnVtPzogbnVtYmVyOyBmcmFjdGlvbj86IG51bWJlciB9ID0ge307XG5cbiAgICAgICAgICAgIGlmIChpbnRlcnZhbHNDb25maWcuc3VwcG9ydGVkTGFuZ3VhZ2VzLmluY2x1ZGVzKGN1cnJlbnRMb2NhbGUpKSB7XG4gICAgICAgICAgICAgICAgaW50ZXJ2YWxzQ29uZmlnLmludGVydmFsc1xuICAgICAgICAgICAgICAgICAgICAuZmluZCgoeyBzdGFydFJhbmdlLCBlbmRSYW5nZSwgcHJlY2lzaW9uIH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHdpdGhpbiA9IGlzV2l0aGluKHN0YXJ0UmFuZ2UsIGVuZFJhbmdlLCBudW0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHdpdGhpbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwcmVjaXNpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFydHMgPSB1bml0ID09PSAndGhvdXNhbmQnID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2FsY3VsYXRlUGFydHNGb3JUaG91c2FuZHMobnVtKSA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtOiBNYXRoLnRydW5jKG51bSAvIFJPVU5ESU5HX1VOSVRTW3VuaXRdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcmFjdGlvbjogdGhpcy5jYWxjdWxhdGVEZWNpbWFsKG51bSwgUk9VTkRJTkdfVU5JVFNbdW5pdF0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcnRzID0geyBudW06IE1hdGgucm91bmQobnVtIC8gUk9VTkRJTkdfVU5JVFNbdW5pdF0pIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gd2l0aGluO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcGFydHMgPSBwYXJ0cy5udW0gPyBwYXJ0cyA6IHtcbiAgICAgICAgICAgICAgICBudW06IE1hdGgudHJ1bmMobnVtIC8gUk9VTkRJTkdfVU5JVFNbdW5pdF0pLFxuICAgICAgICAgICAgICAgIGZyYWN0aW9uOiB0aGlzLmNhbGN1bGF0ZURlY2ltYWwobnVtLCBST1VORElOR19VTklUU1t1bml0XSlcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhwYXJ0cykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgcGFydHNba2V5XSA9IEludGwuTnVtYmVyRm9ybWF0LmNhbGwodGhpcywgY3VycmVudExvY2FsZSwgeyB1c2VHcm91cGluZzogZmFsc2UgfSkuZm9ybWF0KHBhcnRzW2tleV0pO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbnN0IGNhbGN1bGF0ZWRWYWx1ZSA9IHBhcnRzLmZyYWN0aW9uXG4gICAgICAgICAgICAgICAgPyBgJHtwYXJ0cy5udW19JHt0aGlzLnJvdW5kaW5nT3B0aW9ucy5ncm91cFNlcGFyYXRvcn0ke3BhcnRzLmZyYWN0aW9ufWBcbiAgICAgICAgICAgICAgICA6IGAke3BhcnRzLm51bX1gO1xuXG4gICAgICAgICAgICByZXR1cm4gYCR7Y2FsY3VsYXRlZFZhbHVlfSR7dGhpcy5yb3VuZGluZ09wdGlvbnMuc2VwYXJhdG9yfSR7dGhpcy5yb3VuZGluZ09wdGlvbnNbdW5pdF19YDtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgICAgICAgdGhyb3cgRXJyb3IoYEludmFsaWRQaXBlQXJndW1lbnQ6IEticVJvdW5kRGVjaW1hbFBpcGUgZm9yIHBpcGUgJyR7SlNPTi5zdHJpbmdpZnkoZXJyb3IubWVzc2FnZSl9J2ApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVEZWNpbWFsKG51bTogbnVtYmVyLCBkaXZpZGVyOiBudW1iZXIpIHtcbiAgICAgICAgLyogdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLW1hZ2ljLW51bWJlcnMgKi9cbiAgICAgICAgcmV0dXJuIE1hdGgucm91bmQobnVtIC8gZGl2aWRlciAlIDEgKiAxMCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMiAqIDEwMDAgaXMgYSBudW1iZXIgaW4gdGhlIGludGVydmFsIG9mIFsxNTAwLi4uMjUwMClcbiAgICAgKlxuICAgICAqIDIsMCAqIDEwMDAgaXMgYSBudW1iZXIgaW4gdGhlIGludGVydmFsIG9mIFsxOTUwLi4uMjA1MClcbiAgICAgKi9cbiAgICBwcml2YXRlIGNhbGN1bGF0ZVBhcnRzRm9yVGhvdXNhbmRzKG51bTogbnVtYmVyKSB7XG4gICAgICAgIGNvbnN0IGRpdmlkZWRWYWx1ZSA9IG51bSAvIFJPVU5ESU5HX1VOSVRTLnRob3VzYW5kO1xuICAgICAgICBjb25zdCBkaXYgPSBNYXRoLnJvdW5kKGRpdmlkZWRWYWx1ZSkgKiBST1VORElOR19VTklUUy50aG91c2FuZDtcbiAgICAgICAgY29uc3QgZmlmdHkgPSA1MDtcblxuICAgICAgICByZXR1cm4gaXNXaXRoaW4oZGl2IC0gZmlmdHksIGRpdiArIGZpZnR5LCBudW0pXG4gICAgICAgICAgICA/IHsgbnVtOiBNYXRoLnJvdW5kKGRpdmlkZWRWYWx1ZSksIGZyYWN0aW9uOiAwIH1cbiAgICAgICAgICAgIDogeyBudW06IE1hdGgucm91bmQoZGl2aWRlZFZhbHVlKSB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlVW5pdChudW06IG51bWJlcik6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGxldCBjdXJyZW50VW5pdDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBsb2NhbGl6ZWRPcHRpb25zID0gT2JqZWN0LmtleXModGhpcy5yb3VuZGluZ09wdGlvbnMpO1xuXG4gICAgICAgIE9iamVjdC5rZXlzKFJPVU5ESU5HX1VOSVRTKS5ldmVyeSgoa2V5KSA9PiB7XG4gICAgICAgICAgICBpZiAoIWxvY2FsaXplZE9wdGlvbnMuaW5jbHVkZXMoa2V5KSkgeyByZXR1cm4gdHJ1ZTsgfVxuICAgICAgICAgICAgaWYgKG51bSAvIFJPVU5ESU5HX1VOSVRTW2tleV0gPj0gMSkge1xuICAgICAgICAgICAgICAgIGN1cnJlbnRVbml0ID0ga2V5O1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIGN1cnJlbnRVbml0O1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -19,13 +19,13 @@ export class KbqFormElement {
|
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
21
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqFormElement, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
22
|
-
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.5", type: KbqFormElement, selector: ".kbq-form__row, .kbq-form__fieldset, .kbq-form__legend", host: { properties: { "class.kbq-form-row_margin": "margin" } }, queries: [{ propertyName: "elements", predicate: KbqFormElement }], exportAs: ["
|
|
22
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.5", type: KbqFormElement, selector: ".kbq-form__row, .kbq-form__fieldset, .kbq-form__legend", host: { properties: { "class.kbq-form-row_margin": "margin" } }, queries: [{ propertyName: "elements", predicate: KbqFormElement }], exportAs: ["kbqFormElement"], ngImport: i0 }); }
|
|
23
23
|
}
|
|
24
24
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqFormElement, decorators: [{
|
|
25
25
|
type: Directive,
|
|
26
26
|
args: [{
|
|
27
27
|
selector: '.kbq-form__row, .kbq-form__fieldset, .kbq-form__legend',
|
|
28
|
-
exportAs: '
|
|
28
|
+
exportAs: 'kbqFormElement',
|
|
29
29
|
host: {
|
|
30
30
|
'[class.kbq-form-row_margin]': 'margin'
|
|
31
31
|
}
|
|
@@ -48,13 +48,13 @@ export class KbqForm {
|
|
|
48
48
|
});
|
|
49
49
|
}
|
|
50
50
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqForm, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
51
|
-
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.5", type: KbqForm, selector: ".kbq-form-vertical, .kbq-form-horizontal", host: { classAttribute: "kbq-form" }, queries: [{ propertyName: "elements", predicate: KbqFormElement }], exportAs: ["
|
|
51
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.5", type: KbqForm, selector: ".kbq-form-vertical, .kbq-form-horizontal", host: { classAttribute: "kbq-form" }, queries: [{ propertyName: "elements", predicate: KbqFormElement }], exportAs: ["kbqForm"], ngImport: i0 }); }
|
|
52
52
|
}
|
|
53
53
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: KbqForm, decorators: [{
|
|
54
54
|
type: Directive,
|
|
55
55
|
args: [{
|
|
56
56
|
selector: '.kbq-form-vertical, .kbq-form-horizontal',
|
|
57
|
-
exportAs: '
|
|
57
|
+
exportAs: 'kbqForm',
|
|
58
58
|
host: {
|
|
59
59
|
class: 'kbq-form'
|
|
60
60
|
}
|
|
@@ -63,4 +63,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImpor
|
|
|
63
63
|
type: ContentChildren,
|
|
64
64
|
args: [KbqFormElement]
|
|
65
65
|
}] } });
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybXMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb3JlL2Zvcm1zL2Zvcm1zLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsZUFBZSxFQUNmLFNBQVMsRUFDVCxVQUFVLEVBQ1YsU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDOztBQVV2QixNQUFNLE9BQU8sY0FBYztJQVV2QixZQUE2QixPQUFnQztRQUFoQyxZQUFPLEdBQVAsT0FBTyxDQUF5QjtRQVQ3RCxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRWYsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUNkLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixpQkFBWSxHQUFHLEtBQUssQ0FBQztJQUkyQyxDQUFDO0lBRWpFLGtCQUFrQjtRQUNkLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQztRQUV2RCxJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFekQsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFFM0QsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLGlCQUFpQixFQUFFO1lBQ2pFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1NBQ3hHO0lBQ0wsQ0FBQztpSUF2QlEsY0FBYztxSEFBZCxjQUFjLHdMQVFOLGNBQWM7OzJGQVJ0QixjQUFjO2tCQVAxQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx3REFBd0Q7b0JBQ2xFLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLElBQUksRUFBRTt3QkFDRiw2QkFBNkIsRUFBRSxRQUFRO3FCQUMxQztpQkFDSjtpR0FTb0MsUUFBUTtzQkFBeEMsZUFBZTt1QkFBQyxjQUFjOztBQTBCbkMsTUFBTSxPQUFPLE9BQU87SUFHaEIsa0JBQWtCO1FBQ2QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELGNBQWMsQ0FBQyxRQUFtQztRQUM5QyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ2hDLE1BQU0sV0FBVyxHQUErQixRQUFRLENBQUMsR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztZQUV4RSxJQUFJLE9BQU8sQ0FBQyxVQUFVLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFO2dCQUM3QyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN6QztZQUVELE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsV0FBVyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQy9ELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztpSUFqQlEsT0FBTztxSEFBUCxPQUFPLCtJQUNDLGNBQWM7OzJGQUR0QixPQUFPO2tCQVBuQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwwQ0FBMEM7b0JBQ3BELFFBQVEsRUFBRSxTQUFTO29CQUNuQixJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLFVBQVU7cUJBQ3BCO2lCQUNKOzhCQUVvQyxRQUFRO3NCQUF4QyxlQUFlO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIFF1ZXJ5TGlzdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJy5rYnEtZm9ybV9fcm93LCAua2JxLWZvcm1fX2ZpZWxkc2V0LCAua2JxLWZvcm1fX2xlZ2VuZCcsXG4gICAgZXhwb3J0QXM6ICdrYnFGb3JtRWxlbWVudCcsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2NsYXNzLmticS1mb3JtLXJvd19tYXJnaW5dJzogJ21hcmdpbidcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEticUZvcm1FbGVtZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gICAgbWFyZ2luID0gZmFsc2U7XG5cbiAgICBpc1JvdyA9IGZhbHNlO1xuICAgIGlzRmllbGRTZXQgPSBmYWxzZTtcbiAgICBoYXNMZWdlbmQgPSBmYWxzZTtcbiAgICBpc0hvcml6b250YWwgPSBmYWxzZTtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oS2JxRm9ybUVsZW1lbnQpIGVsZW1lbnRzOiBRdWVyeUxpc3Q8S2JxRm9ybUVsZW1lbnQ+O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBlbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pikge31cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY2xhc3NMaXN0ID0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0O1xuXG4gICAgICAgIHRoaXMuaXNSb3cgPSBjbGFzc0xpc3QuY29udGFpbnMoJ2ticS1mb3JtX19yb3cnKTtcbiAgICAgICAgdGhpcy5pc0hvcml6b250YWwgPSBjbGFzc0xpc3QuY29udGFpbnMoJ2ticS1ob3Jpem9udGFsJyk7XG5cbiAgICAgICAgdGhpcy5pc0ZpZWxkU2V0ID0gY2xhc3NMaXN0LmNvbnRhaW5zKCdrYnEtZm9ybV9fZmllbGRzZXQnKTtcblxuICAgICAgICBpZiAodGhpcy5pc0ZpZWxkU2V0ICYmIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkKSB7XG4gICAgICAgICAgICB0aGlzLmhhc0xlZ2VuZCA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLmNsYXNzTGlzdC5jb250YWlucygna2JxLWZvcm1fX2xlZ2VuZCcpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnLmticS1mb3JtLXZlcnRpY2FsLCAua2JxLWZvcm0taG9yaXpvbnRhbCcsXG4gICAgZXhwb3J0QXM6ICdrYnFGb3JtJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAna2JxLWZvcm0nXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFGb3JtIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gICAgQENvbnRlbnRDaGlsZHJlbihLYnFGb3JtRWxlbWVudCkgZWxlbWVudHM6IFF1ZXJ5TGlzdDxLYnFGb3JtRWxlbWVudD47XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaGFuZGxlRWxlbWVudHModGhpcy5lbGVtZW50cyk7XG4gICAgfVxuXG4gICAgaGFuZGxlRWxlbWVudHMoZWxlbWVudHM6IFF1ZXJ5TGlzdDxLYnFGb3JtRWxlbWVudD4pOiB2b2lkIHtcbiAgICAgICAgZWxlbWVudHMuZm9yRWFjaCgoZWxlbWVudCwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG5leHRFbGVtZW50OiBLYnFGb3JtRWxlbWVudCB8IHVuZGVmaW5lZCA9IGVsZW1lbnRzLmdldChpbmRleCArIDEpO1xuXG4gICAgICAgICAgICBpZiAoZWxlbWVudC5pc0ZpZWxkU2V0ICYmICFlbGVtZW50LmlzSG9yaXpvbnRhbCkge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlRWxlbWVudHMoZWxlbWVudC5lbGVtZW50cyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGVsZW1lbnQubWFyZ2luID0gISEobmV4dEVsZW1lbnQgJiYgIW5leHRFbGVtZW50Lmhhc0xlZ2VuZCk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,10 +1,28 @@
|
|
|
1
1
|
export const enUSLocaleData = {
|
|
2
|
-
en: {
|
|
2
|
+
'en-US': {
|
|
3
3
|
select: { hiddenItemsText: 'one more' },
|
|
4
4
|
datepicker: {
|
|
5
|
-
placeholder: 'dd
|
|
6
|
-
dateInput: 'dd
|
|
5
|
+
placeholder: 'yyyy-mm-dd',
|
|
6
|
+
dateInput: 'yyyy-MM-dd'
|
|
7
|
+
},
|
|
8
|
+
formatters: {
|
|
9
|
+
number: {
|
|
10
|
+
rounding: {
|
|
11
|
+
separator: '',
|
|
12
|
+
groupSeparator: '.',
|
|
13
|
+
thousand: 'K',
|
|
14
|
+
million: 'M',
|
|
15
|
+
billion: 'B',
|
|
16
|
+
trillion: 'T'
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
input: {
|
|
21
|
+
number: {
|
|
22
|
+
groupSeparator: [','],
|
|
23
|
+
fractionSeparator: '.'
|
|
24
|
+
}
|
|
7
25
|
}
|
|
8
26
|
}
|
|
9
27
|
};
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW4tVVMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvcmUvbG9jYWxlcy9lbi1VUy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDMUIsT0FBTyxFQUFFO1FBQ0wsTUFBTSxFQUFFLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRTtRQUN2QyxVQUFVLEVBQUU7WUFDUixXQUFXLEVBQUUsWUFBWTtZQUN6QixTQUFTLEVBQUUsWUFBWTtTQUMxQjtRQUNELFVBQVUsRUFBRTtZQUNSLE1BQU0sRUFBRTtnQkFDSixRQUFRLEVBQUU7b0JBQ04sU0FBUyxFQUFFLEVBQUU7b0JBQ2IsY0FBYyxFQUFFLEdBQUc7b0JBQ25CLFFBQVEsRUFBRSxHQUFHO29CQUNiLE9BQU8sRUFBRSxHQUFHO29CQUNaLE9BQU8sRUFBRSxHQUFHO29CQUNaLFFBQVEsRUFBRSxHQUFHO2lCQUNoQjthQUNKO1NBQ0o7UUFDRCxLQUFLLEVBQUU7WUFDSCxNQUFNLEVBQUU7Z0JBQ0osY0FBYyxFQUFFLENBQUMsR0FBRyxDQUFDO2dCQUNyQixpQkFBaUIsRUFBRSxHQUFHO2FBQ3pCO1NBQ0o7S0FDSjtDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuZXhwb3J0IGNvbnN0IGVuVVNMb2NhbGVEYXRhID0ge1xuICAgICdlbi1VUyc6IHtcbiAgICAgICAgc2VsZWN0OiB7IGhpZGRlbkl0ZW1zVGV4dDogJ29uZSBtb3JlJyB9LFxuICAgICAgICBkYXRlcGlja2VyOiB7XG4gICAgICAgICAgICBwbGFjZWhvbGRlcjogJ3l5eXktbW0tZGQnLFxuICAgICAgICAgICAgZGF0ZUlucHV0OiAneXl5eS1NTS1kZCdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0dGVyczoge1xuICAgICAgICAgICAgbnVtYmVyOiB7XG4gICAgICAgICAgICAgICAgcm91bmRpbmc6IHtcbiAgICAgICAgICAgICAgICAgICAgc2VwYXJhdG9yOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgZ3JvdXBTZXBhcmF0b3I6ICcuJyxcbiAgICAgICAgICAgICAgICAgICAgdGhvdXNhbmQ6ICdLJyxcbiAgICAgICAgICAgICAgICAgICAgbWlsbGlvbjogJ00nLFxuICAgICAgICAgICAgICAgICAgICBiaWxsaW9uOiAnQicsXG4gICAgICAgICAgICAgICAgICAgIHRyaWxsaW9uOiAnVCdcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGlucHV0OiB7XG4gICAgICAgICAgICBudW1iZXI6IHtcbiAgICAgICAgICAgICAgICBncm91cFNlcGFyYXRvcjogWycsJ10sXG4gICAgICAgICAgICAgICAgZnJhY3Rpb25TZXBhcmF0b3I6ICcuJ1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufTtcbiJdfQ==
|
|
@@ -1,6 +1,35 @@
|
|
|
1
1
|
export const esLALocaleData = {
|
|
2
2
|
'es-LA': {
|
|
3
|
-
select: { hiddenItemsText: 'más' }
|
|
3
|
+
select: { hiddenItemsText: 'más' },
|
|
4
|
+
datepicker: {
|
|
5
|
+
placeholder: 'dd/mm/aaaa'
|
|
6
|
+
},
|
|
7
|
+
timepicker: {
|
|
8
|
+
placeholder: {
|
|
9
|
+
full: 'hh:mm:ss',
|
|
10
|
+
short: 'hh:mm'
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
formatters: {
|
|
14
|
+
number: {
|
|
15
|
+
rounding: {
|
|
16
|
+
separator: '',
|
|
17
|
+
groupSeparator: ',',
|
|
18
|
+
thousand: 'K',
|
|
19
|
+
million: 'M',
|
|
20
|
+
billion: 'MRD',
|
|
21
|
+
trillion: 'B'
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
input: {
|
|
26
|
+
number: {
|
|
27
|
+
// nbsp is generated automatically and used by default in spec
|
|
28
|
+
// tslint:disable-next-line:no-irregular-whitespace
|
|
29
|
+
groupSeparator: [' ', ' '],
|
|
30
|
+
fractionSeparator: ','
|
|
31
|
+
}
|
|
32
|
+
}
|
|
4
33
|
}
|
|
5
34
|
};
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtTEEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvcmUvbG9jYWxlcy9lcy1MQS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDMUIsT0FBTyxFQUFFO1FBQ0wsTUFBTSxFQUFFLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBQztRQUNqQyxVQUFVLEVBQUU7WUFDUixXQUFXLEVBQUUsWUFBWTtTQUM1QjtRQUNELFVBQVUsRUFBRTtZQUNSLFdBQVcsRUFBRTtnQkFDVCxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsS0FBSyxFQUFFLE9BQU87YUFDakI7U0FDSjtRQUNELFVBQVUsRUFBRTtZQUNSLE1BQU0sRUFBRTtnQkFDSixRQUFRLEVBQUU7b0JBQ04sU0FBUyxFQUFFLEVBQUU7b0JBQ2IsY0FBYyxFQUFFLEdBQUc7b0JBQ25CLFFBQVEsRUFBRSxHQUFHO29CQUNiLE9BQU8sRUFBRSxHQUFHO29CQUNaLE9BQU8sRUFBRSxLQUFLO29CQUNkLFFBQVEsRUFBRSxHQUFHO2lCQUNoQjthQUNKO1NBQ0o7UUFDRCxLQUFLLEVBQUU7WUFDSCxNQUFNLEVBQUU7Z0JBQ0osOERBQThEO2dCQUM5RCxtREFBbUQ7Z0JBQ25ELGNBQWMsRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUM7Z0JBQzFCLGlCQUFpQixFQUFFLEdBQUc7YUFDekI7U0FDSjtLQUNKO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5leHBvcnQgY29uc3QgZXNMQUxvY2FsZURhdGEgPSB7XG4gICAgJ2VzLUxBJzoge1xuICAgICAgICBzZWxlY3Q6IHsgaGlkZGVuSXRlbXNUZXh0OiAnbcOhcyd9LFxuICAgICAgICBkYXRlcGlja2VyOiB7XG4gICAgICAgICAgICBwbGFjZWhvbGRlcjogJ2RkL21tL2FhYWEnXG4gICAgICAgIH0sXG4gICAgICAgIHRpbWVwaWNrZXI6IHtcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyOiB7XG4gICAgICAgICAgICAgICAgZnVsbDogJ2hoOm1tOnNzJyxcbiAgICAgICAgICAgICAgICBzaG9ydDogJ2hoOm1tJ1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBmb3JtYXR0ZXJzOiB7XG4gICAgICAgICAgICBudW1iZXI6IHtcbiAgICAgICAgICAgICAgICByb3VuZGluZzoge1xuICAgICAgICAgICAgICAgICAgICBzZXBhcmF0b3I6ICcnLFxuICAgICAgICAgICAgICAgICAgICBncm91cFNlcGFyYXRvcjogJywnLFxuICAgICAgICAgICAgICAgICAgICB0aG91c2FuZDogJ0snLFxuICAgICAgICAgICAgICAgICAgICBtaWxsaW9uOiAnTScsXG4gICAgICAgICAgICAgICAgICAgIGJpbGxpb246ICdNUkQnLFxuICAgICAgICAgICAgICAgICAgICB0cmlsbGlvbjogJ0InXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgbnVtYmVyOiB7XG4gICAgICAgICAgICAgICAgLy8gbmJzcCBpcyBnZW5lcmF0ZWQgYXV0b21hdGljYWxseSBhbmQgdXNlZCBieSBkZWZhdWx0IGluIHNwZWNcbiAgICAgICAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taXJyZWd1bGFyLXdoaXRlc3BhY2VcbiAgICAgICAgICAgICAgICBncm91cFNlcGFyYXRvcjogWyfCoCcsICcgJ10sXG4gICAgICAgICAgICAgICAgZnJhY3Rpb25TZXBhcmF0b3I6ICcsJ1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufTtcbiJdfQ==
|
|
@@ -1,6 +1,34 @@
|
|
|
1
1
|
export const faIRLocaleData = {
|
|
2
2
|
'fa-IR': {
|
|
3
|
-
select: { hiddenItemsText: 'أكثر' }
|
|
3
|
+
select: { hiddenItemsText: 'أكثر' },
|
|
4
|
+
datepicker: {
|
|
5
|
+
placeholder: 'روز/ ماه/سال'
|
|
6
|
+
},
|
|
7
|
+
timepicker: {
|
|
8
|
+
placeholder: {
|
|
9
|
+
full: 'ثانیه:دقیقه:ساعت',
|
|
10
|
+
short: 'دقیقه:ساعت'
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
formatters: {
|
|
14
|
+
number: {
|
|
15
|
+
rounding: {
|
|
16
|
+
separator: ' ',
|
|
17
|
+
groupSeparator: '٫',
|
|
18
|
+
thousand: 'هزار',
|
|
19
|
+
million: 'میلیون',
|
|
20
|
+
billion: 'م',
|
|
21
|
+
trillion: 'تریلیون',
|
|
22
|
+
rtl: true
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
input: {
|
|
27
|
+
number: {
|
|
28
|
+
groupSeparator: ['\u066C'],
|
|
29
|
+
fractionSeparator: '\u066B'
|
|
30
|
+
}
|
|
31
|
+
}
|
|
4
32
|
}
|
|
5
33
|
};
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmEtSVIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvcmUvbG9jYWxlcy9mYS1JUi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDMUIsT0FBTyxFQUFFO1FBQ0wsTUFBTSxFQUFFLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBQztRQUNsQyxVQUFVLEVBQUU7WUFDUixXQUFXLEVBQUUsY0FBYztTQUM5QjtRQUNELFVBQVUsRUFBRTtZQUNSLFdBQVcsRUFBRTtnQkFDVCxJQUFJLEVBQUUsa0JBQWtCO2dCQUN4QixLQUFLLEVBQUUsWUFBWTthQUN0QjtTQUNKO1FBQ0QsVUFBVSxFQUFFO1lBQ1IsTUFBTSxFQUFFO2dCQUNKLFFBQVEsRUFBRTtvQkFDTixTQUFTLEVBQUUsR0FBRztvQkFDZCxjQUFjLEVBQUUsR0FBRztvQkFDbkIsUUFBUSxFQUFFLE1BQU07b0JBQ2hCLE9BQU8sRUFBRSxRQUFRO29CQUNqQixPQUFPLEVBQUUsR0FBRztvQkFDWixRQUFRLEVBQUUsU0FBUztvQkFDbkIsR0FBRyxFQUFFLElBQUk7aUJBQ1o7YUFDSjtTQUNKO1FBQ0QsS0FBSyxFQUFFO1lBQ0gsTUFBTSxFQUFFO2dCQUNKLGNBQWMsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFDMUIsaUJBQWlCLEVBQUUsUUFBUTthQUM5QjtTQUNKO0tBQ0o7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmV4cG9ydCBjb25zdCBmYUlSTG9jYWxlRGF0YSA9IHtcbiAgICAnZmEtSVInOiB7XG4gICAgICAgIHNlbGVjdDogeyBoaWRkZW5JdGVtc1RleHQ6ICfYo9mD2KvYsSd9LFxuICAgICAgICBkYXRlcGlja2VyOiB7XG4gICAgICAgICAgICBwbGFjZWhvbGRlcjogJ9ix2YjYsi8g2YXYp9mHL9iz2KfZhCdcbiAgICAgICAgfSxcbiAgICAgICAgdGltZXBpY2tlcjoge1xuICAgICAgICAgICAgcGxhY2Vob2xkZXI6IHtcbiAgICAgICAgICAgICAgICBmdWxsOiAn2KvYp9mG24zZhzrYr9mC24zZgtmHOtiz2KfYudiqJyxcbiAgICAgICAgICAgICAgICBzaG9ydDogJ9iv2YLbjNmC2Yc62LPYp9i52KonXG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHRlcnM6IHtcbiAgICAgICAgICAgIG51bWJlcjoge1xuICAgICAgICAgICAgICAgIHJvdW5kaW5nOiB7XG4gICAgICAgICAgICAgICAgICAgIHNlcGFyYXRvcjogJyAnLFxuICAgICAgICAgICAgICAgICAgICBncm91cFNlcGFyYXRvcjogJ9mrJyxcbiAgICAgICAgICAgICAgICAgICAgdGhvdXNhbmQ6ICfZh9iy2KfYsScsXG4gICAgICAgICAgICAgICAgICAgIG1pbGxpb246ICfZhduM2YTbjNmI2YYnLFxuICAgICAgICAgICAgICAgICAgICBiaWxsaW9uOiAn2YUnLFxuICAgICAgICAgICAgICAgICAgICB0cmlsbGlvbjogJ9iq2LHbjNmE24zZiNmGJyxcbiAgICAgICAgICAgICAgICAgICAgcnRsOiB0cnVlXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgbnVtYmVyOiB7XG4gICAgICAgICAgICAgICAgZ3JvdXBTZXBhcmF0b3I6IFsnXFx1MDY2QyddLFxuICAgICAgICAgICAgICAgIGZyYWN0aW9uU2VwYXJhdG9yOiAnXFx1MDY2QidcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn07XG4iXX0=
|
|
@@ -8,15 +8,15 @@ import { ruRULocaleData } from './ru-RU';
|
|
|
8
8
|
import { znCNLocaleData } from './zh-CN';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
10
|
export const KBQ_LOCALE_ID = new InjectionToken('KbqLocaleId');
|
|
11
|
-
export const KBQ_DEFAULT_LOCALE_ID = 'ru';
|
|
11
|
+
export const KBQ_DEFAULT_LOCALE_ID = 'ru-RU';
|
|
12
12
|
export function KBQ_DEFAULT_LOCALE_DATA_FACTORY() {
|
|
13
13
|
return {
|
|
14
14
|
items: [
|
|
15
|
-
{ id: 'en', name: 'English' },
|
|
15
|
+
{ id: 'en-US', name: 'English' },
|
|
16
16
|
{ id: 'zh-CN', name: '简体中文' },
|
|
17
17
|
{ id: 'es-LA', name: 'Español' },
|
|
18
18
|
{ id: 'pt-BR', name: 'Português' },
|
|
19
|
-
{ id: 'ru', name: 'Русский' },
|
|
19
|
+
{ id: 'ru-RU', name: 'Русский' },
|
|
20
20
|
{ id: 'fa-IR', name: 'فارسی' }
|
|
21
21
|
],
|
|
22
22
|
...ruRULocaleData,
|
|
@@ -67,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImpor
|
|
|
67
67
|
type: Inject,
|
|
68
68
|
args: [KBQ_LOCALE_DATA]
|
|
69
69
|
}] }]; } });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxlLXNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvcmUvbG9jYWxlcy9sb2NhbGUtc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN6QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDekMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN6QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBR3pDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxJQUFJLGNBQWMsQ0FBUyxhQUFhLENBQUMsQ0FBQztBQUV2RSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxPQUFPLENBQUM7QUFFN0MsTUFBTSxVQUFVLCtCQUErQjtJQUMzQyxPQUFPO1FBQ0gsS0FBSyxFQUFFO1lBQ0gsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUU7WUFDaEMsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7WUFDN0IsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUU7WUFDaEMsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7WUFDbEMsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUU7WUFDaEMsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUU7U0FDakM7UUFDRCxHQUFHLGNBQWM7UUFDakIsR0FBRyxjQUFjO1FBQ2pCLEdBQUcsY0FBYztRQUNqQixHQUFHLGNBQWM7UUFDakIsR0FBRyxjQUFjO1FBQ2pCLEdBQUcsY0FBYztLQUNwQixDQUFDO0FBQ04sQ0FBQztBQUNELE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxJQUFJLGNBQWMsQ0FDN0MsaUJBQWlCLEVBQUUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxDQUFDLENBQUM7QUFHekYsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQW1CLG9CQUFvQixDQUFDLENBQUM7QUFJN0YsTUFBTSxPQUFPLGdCQUFnQjtJQU96QixZQUN1QyxFQUFVLEVBQ1IsVUFBVTtRQVAxQyxZQUFPLEdBQVEsRUFBRSxDQUFDO1FBU3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsVUFBVSxDQUFDO1FBRTFCLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLHFCQUFxQixDQUFDO1FBQ3RDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFckMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELFNBQVMsQ0FBQyxFQUFVO1FBQ2hCLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVyQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELFNBQVMsQ0FBQyxFQUFVLEVBQUUsVUFBVTtRQUM1QixJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUUzQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7SUFDdkMsQ0FBQztJQUVELFNBQVMsQ0FBQyxhQUFxQjtRQUMzQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdkMsQ0FBQztpSUFuQ1EsZ0JBQWdCLGtCQVFELGFBQWEsNkJBQ2IsZUFBZTtxSUFUOUIsZ0JBQWdCLGNBREgsTUFBTTs7MkZBQ25CLGdCQUFnQjtrQkFENUIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7OzBCQVN6QixRQUFROzswQkFBSSxNQUFNOzJCQUFDLGFBQWE7OzBCQUNoQyxRQUFROzswQkFBSSxNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IGVuVVNMb2NhbGVEYXRhIH0gZnJvbSAnLi9lbi1VUyc7XG5pbXBvcnQgeyBlc0xBTG9jYWxlRGF0YSB9IGZyb20gJy4vZXMtTEEnO1xuaW1wb3J0IHsgZmFJUkxvY2FsZURhdGEgfSBmcm9tICcuL2ZhLUlSJztcbmltcG9ydCB7IHB0QlJMb2NhbGVEYXRhIH0gZnJvbSAnLi9wdC1CUic7XG5pbXBvcnQgeyBydVJVTG9jYWxlRGF0YSB9IGZyb20gJy4vcnUtUlUnO1xuaW1wb3J0IHsgem5DTkxvY2FsZURhdGEgfSBmcm9tICcuL3poLUNOJztcblxuXG5leHBvcnQgY29uc3QgS0JRX0xPQ0FMRV9JRCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KCdLYnFMb2NhbGVJZCcpO1xuXG5leHBvcnQgY29uc3QgS0JRX0RFRkFVTFRfTE9DQUxFX0lEID0gJ3J1LVJVJztcblxuZXhwb3J0IGZ1bmN0aW9uIEtCUV9ERUZBVUxUX0xPQ0FMRV9EQVRBX0ZBQ1RPUlkoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgaXRlbXM6IFtcbiAgICAgICAgICAgIHsgaWQ6ICdlbi1VUycsIG5hbWU6ICdFbmdsaXNoJyB9LFxuICAgICAgICAgICAgeyBpZDogJ3poLUNOJywgbmFtZTogJ+eugOS9k+S4reaWhycgfSxcbiAgICAgICAgICAgIHsgaWQ6ICdlcy1MQScsIG5hbWU6ICdFc3Bhw7FvbCcgfSxcbiAgICAgICAgICAgIHsgaWQ6ICdwdC1CUicsIG5hbWU6ICdQb3J0dWd1w6pzJyB9LFxuICAgICAgICAgICAgeyBpZDogJ3J1LVJVJywgbmFtZTogJ9Cg0YPRgdGB0LrQuNC5JyB9LFxuICAgICAgICAgICAgeyBpZDogJ2ZhLUlSJywgbmFtZTogJ9mB2KfYsdiz24wnIH1cbiAgICAgICAgXSxcbiAgICAgICAgLi4ucnVSVUxvY2FsZURhdGEsXG4gICAgICAgIC4uLmVuVVNMb2NhbGVEYXRhLFxuICAgICAgICAuLi5lc0xBTG9jYWxlRGF0YSxcbiAgICAgICAgLi4uZmFJUkxvY2FsZURhdGEsXG4gICAgICAgIC4uLnB0QlJMb2NhbGVEYXRhLFxuICAgICAgICAuLi56bkNOTG9jYWxlRGF0YVxuICAgIH07XG59XG5leHBvcnQgY29uc3QgS0JRX0xPQ0FMRV9EQVRBID0gbmV3IEluamVjdGlvblRva2VuPGFueT4oXG4gICAgJ0tCUV9MT0NBTEVfREFUQScsIHsgcHJvdmlkZWRJbjogJ3Jvb3QnLCBmYWN0b3J5OiBLQlFfREVGQVVMVF9MT0NBTEVfREFUQV9GQUNUT1JZIH0pO1xuXG5cbmV4cG9ydCBjb25zdCBLQlFfTE9DQUxFX1NFUlZJQ0UgPSBuZXcgSW5qZWN0aW9uVG9rZW48S2JxTG9jYWxlU2VydmljZT4oJ0tCUV9MT0NBTEVfU0VSVklDRScpO1xuXG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgS2JxTG9jYWxlU2VydmljZSB7XG4gICAgcmVhZG9ubHkgY2hhbmdlczogQmVoYXZpb3JTdWJqZWN0PHN0cmluZz47XG4gICAgcmVhZG9ubHkgbG9jYWxlczogYW55ID0ge307XG5cbiAgICBpZDogc3RyaW5nO1xuICAgIGN1cnJlbnQ7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChLQlFfTE9DQUxFX0lEKSBpZDogc3RyaW5nLFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEtCUV9MT0NBTEVfREFUQSkgbG9jYWxlRGF0YVxuICAgICkge1xuICAgICAgICB0aGlzLmxvY2FsZXMgPSBsb2NhbGVEYXRhO1xuXG4gICAgICAgIHRoaXMuaWQgPSBpZCB8fCBLQlFfREVGQVVMVF9MT0NBTEVfSUQ7XG4gICAgICAgIHRoaXMuY3VycmVudCA9IHRoaXMubG9jYWxlc1t0aGlzLmlkXTtcblxuICAgICAgICB0aGlzLmNoYW5nZXMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRoaXMuaWQpO1xuICAgIH1cblxuICAgIHNldExvY2FsZShpZDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuaWQgPSBpZDtcbiAgICAgICAgdGhpcy5jdXJyZW50ID0gdGhpcy5sb2NhbGVzW3RoaXMuaWRdO1xuXG4gICAgICAgIHRoaXMuY2hhbmdlcy5uZXh0KHRoaXMuaWQpO1xuICAgIH1cblxuICAgIGFkZExvY2FsZShpZDogc3RyaW5nLCBsb2NhbGVEYXRhKSB7XG4gICAgICAgIHRoaXMuaWQgPSBpZDtcbiAgICAgICAgdGhpcy5jaGFuZ2VzLm5leHQodGhpcy5pZCk7XG5cbiAgICAgICAgdGhpcy5sb2NhbGVzW3RoaXMuaWRdID0gbG9jYWxlRGF0YTtcbiAgICB9XG5cbiAgICBnZXRQYXJhbXMoY29tcG9uZW50TmFtZTogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRbY29tcG9uZW50TmFtZV07XG4gICAgfVxufVxuIl19
|
|
@@ -1,6 +1,33 @@
|
|
|
1
1
|
export const ptBRLocaleData = {
|
|
2
2
|
'pt-BR': {
|
|
3
|
-
select: { hiddenItemsText: 'mais' }
|
|
3
|
+
select: { hiddenItemsText: 'mais' },
|
|
4
|
+
datepicker: {
|
|
5
|
+
placeholder: 'dd/mm/yyyy'
|
|
6
|
+
},
|
|
7
|
+
timepicker: {
|
|
8
|
+
placeholder: {
|
|
9
|
+
full: 'hh:mm:ss',
|
|
10
|
+
short: 'hh:mm'
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
formatters: {
|
|
14
|
+
number: {
|
|
15
|
+
rounding: {
|
|
16
|
+
separator: ' ',
|
|
17
|
+
groupSeparator: ',',
|
|
18
|
+
thousand: 'mil',
|
|
19
|
+
million: 'mi',
|
|
20
|
+
billion: 'bi',
|
|
21
|
+
trillion: 'tri'
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
input: {
|
|
26
|
+
number: {
|
|
27
|
+
groupSeparator: ['.'],
|
|
28
|
+
fractionSeparator: ','
|
|
29
|
+
}
|
|
30
|
+
}
|
|
4
31
|
}
|
|
5
32
|
};
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtQlIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvcmUvbG9jYWxlcy9wdC1CUi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDMUIsT0FBTyxFQUFFO1FBQ0wsTUFBTSxFQUFFLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBQztRQUNsQyxVQUFVLEVBQUU7WUFDUixXQUFXLEVBQUUsWUFBWTtTQUM1QjtRQUNELFVBQVUsRUFBRTtZQUNSLFdBQVcsRUFBRTtnQkFDVCxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsS0FBSyxFQUFFLE9BQU87YUFDakI7U0FDSjtRQUNELFVBQVUsRUFBRTtZQUNSLE1BQU0sRUFBRTtnQkFDSixRQUFRLEVBQUU7b0JBQ04sU0FBUyxFQUFFLEdBQUc7b0JBQ2QsY0FBYyxFQUFFLEdBQUc7b0JBQ25CLFFBQVEsRUFBRSxLQUFLO29CQUNmLE9BQU8sRUFBRSxJQUFJO29CQUNiLE9BQU8sRUFBRSxJQUFJO29CQUNiLFFBQVEsRUFBRSxLQUFLO2lCQUNsQjthQUNKO1NBQ0o7UUFDRCxLQUFLLEVBQUU7WUFDSCxNQUFNLEVBQUU7Z0JBQ0osY0FBYyxFQUFFLENBQUMsR0FBRyxDQUFDO2dCQUNyQixpQkFBaUIsRUFBRSxHQUFHO2FBQ3pCO1NBQ0o7S0FDSjtDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuZXhwb3J0IGNvbnN0IHB0QlJMb2NhbGVEYXRhID0ge1xuICAgICdwdC1CUic6IHtcbiAgICAgICAgc2VsZWN0OiB7IGhpZGRlbkl0ZW1zVGV4dDogJ21haXMnfSxcbiAgICAgICAgZGF0ZXBpY2tlcjoge1xuICAgICAgICAgICAgcGxhY2Vob2xkZXI6ICdkZC9tbS95eXl5J1xuICAgICAgICB9LFxuICAgICAgICB0aW1lcGlja2VyOiB7XG4gICAgICAgICAgICBwbGFjZWhvbGRlcjoge1xuICAgICAgICAgICAgICAgIGZ1bGw6ICdoaDptbTpzcycsXG4gICAgICAgICAgICAgICAgc2hvcnQ6ICdoaDptbSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0dGVyczoge1xuICAgICAgICAgICAgbnVtYmVyOiB7XG4gICAgICAgICAgICAgICAgcm91bmRpbmc6IHtcbiAgICAgICAgICAgICAgICAgICAgc2VwYXJhdG9yOiAnICcsXG4gICAgICAgICAgICAgICAgICAgIGdyb3VwU2VwYXJhdG9yOiAnLCcsXG4gICAgICAgICAgICAgICAgICAgIHRob3VzYW5kOiAnbWlsJyxcbiAgICAgICAgICAgICAgICAgICAgbWlsbGlvbjogJ21pJyxcbiAgICAgICAgICAgICAgICAgICAgYmlsbGlvbjogJ2JpJyxcbiAgICAgICAgICAgICAgICAgICAgdHJpbGxpb246ICd0cmknXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgbnVtYmVyOiB7XG4gICAgICAgICAgICAgICAgZ3JvdXBTZXBhcmF0b3I6IFsnLiddLFxuICAgICAgICAgICAgICAgIGZyYWN0aW9uU2VwYXJhdG9yOiAnLCdcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn07XG4iXX0=
|