@acorex/components 19.15.0-next.3 → 19.15.0-next.4

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.
@@ -70,6 +70,8 @@ class AXTimeDurationComponent extends classes((MXInputBaseValueComponent), MXLoo
70
70
  this.onInputFire = false;
71
71
  }
72
72
  async internalValueChanged(value) {
73
+ if (!value)
74
+ return;
73
75
  if (this.onInputFire)
74
76
  return;
75
77
  this.onInternalValueChangedFire = true;
@@ -94,93 +96,27 @@ class AXTimeDurationComponent extends classes((MXInputBaseValueComponent), MXLoo
94
96
  }
95
97
  maskToMilliseconds(maskValue) {
96
98
  const transformedMaskValue = this.replacePersianLabels(maskValue);
97
- const parts = transformedMaskValue.split(' : ').map((part) => part.trim());
98
- let totalMilliseconds = 0;
99
- // Define maximum values for each unit
100
- const maxValues = {
101
- MILLISECOND: 1000,
102
- SECOND: 60,
103
- MINUTE: 60,
104
- HOUR: 24,
105
- DAY: 7,
106
- WEEK: 4,
107
- MONTH: 12,
108
- YEAR: Infinity,
99
+ const timeUnits = {
100
+ YEAR: 365 * 24 * 60 * 60 * 1000,
101
+ MONTH: 30 * 24 * 60 * 60 * 1000,
102
+ WEEK: 7 * 24 * 60 * 60 * 1000,
103
+ DAY: 24 * 60 * 60 * 1000,
104
+ HOUR: 60 * 60 * 1000,
105
+ MINUTE: 60 * 1000,
106
+ SECOND: 1000,
107
+ MILLISECOND: 1,
109
108
  };
110
- // First pass: convert all values to milliseconds
111
- for (const part of parts) {
112
- const match = part.match(/(\d+)\s*\((\w+)\)/);
113
- if (match) {
114
- const [_, value, unit] = match;
115
- const numValue = parseInt(value, 10);
116
- const unitUpper = unit.toUpperCase();
117
- // Check if value exceeds maximum
118
- if (numValue >= maxValues[unitUpper]) {
119
- // Convert to next larger unit
120
- const nextUnit = this.getNextLargerUnit(unitUpper);
121
- if (nextUnit) {
122
- const convertedValue = this.convertToLargerUnit(numValue, unitUpper, nextUnit);
123
- totalMilliseconds += this.unitToMilliseconds(convertedValue.value, convertedValue.unit);
124
- }
125
- else {
126
- totalMilliseconds += this.unitToMilliseconds(numValue, unitUpper);
127
- }
128
- }
129
- else {
130
- totalMilliseconds += this.unitToMilliseconds(numValue, unitUpper);
131
- }
109
+ const regex = /(\d+)\s*\((YEAR|MONTH|WEEK|DAY|HOUR|MINUTE|SECOND|MILLISECOND)\)/g;
110
+ let match;
111
+ let totalMs = 0;
112
+ while ((match = regex.exec(transformedMaskValue)) !== null) {
113
+ const value = parseInt(match[1], 10);
114
+ const unit = match[2];
115
+ if (timeUnits[unit] !== undefined) {
116
+ totalMs += value * timeUnits[unit];
132
117
  }
133
118
  }
134
- if (totalMilliseconds === this.prevMillisecond)
135
- return null;
136
- this.prevMillisecond = totalMilliseconds;
137
- return totalMilliseconds;
138
- }
139
- getNextLargerUnit(unit) {
140
- const units = ['MILLISECOND', 'SECOND', 'MINUTE', 'HOUR', 'DAY', 'WEEK', 'MONTH', 'YEAR'];
141
- const currentIndex = units.indexOf(unit);
142
- return currentIndex < units.length - 1 ? units[currentIndex + 1] : null;
143
- }
144
- convertToLargerUnit(value, fromUnit, toUnit) {
145
- const conversionRates = {
146
- MILLISECOND: { SECOND: 1000 },
147
- SECOND: { MINUTE: 60 },
148
- MINUTE: { HOUR: 60 },
149
- HOUR: { DAY: 24 },
150
- DAY: { WEEK: 7 },
151
- WEEK: { MONTH: 4 },
152
- MONTH: { YEAR: 12 },
153
- };
154
- if (conversionRates[fromUnit] && conversionRates[fromUnit][toUnit]) {
155
- const rate = conversionRates[fromUnit][toUnit];
156
- return {
157
- value: Math.floor(value / rate),
158
- unit: toUnit,
159
- };
160
- }
161
- return { value, unit: fromUnit };
162
- }
163
- unitToMilliseconds(value, unit) {
164
- switch (unit) {
165
- case 'YEAR':
166
- return value * 31536000000; // 365 days
167
- case 'MONTH':
168
- return value * 2592000000; // 30 days
169
- case 'WEEK':
170
- return value * 604800000; // 7 days
171
- case 'DAY':
172
- return value * 86400000; // 24 hours
173
- case 'HOUR':
174
- return value * 3600000; // 60 minutes
175
- case 'MINUTE':
176
- return value * 60000; // 60 seconds
177
- case 'SECOND':
178
- return value * 1000;
179
- case 'MILLISECOND':
180
- return value;
181
- default:
182
- return 0;
183
- }
119
+ return totalMs;
184
120
  }
185
121
  updateMask() {
186
122
  const allUnits = ['YEAR', 'MONTH', 'WEEK', 'DAY', 'HOUR', 'MINUTE', 'SECOND', 'MILLISECOND'];
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-time-duration.mjs","sources":["../../../../packages/components/time-duration/src/lib/time-duration.component.ts","../../../../packages/components/time-duration/src/lib/time-duration.component.html","../../../../packages/components/time-duration/src/lib/time-duration.module.ts","../../../../packages/components/time-duration/src/acorex-components-time-duration.ts"],"sourcesContent":["import {\n AXClearableComponent,\n AXComponent,\n AXFocusableComponent,\n AXValuableComponent,\n MXInputBaseValueComponent,\n MXLookComponent,\n} from '@acorex/components/common';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXMaskOptions, AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTimeDurationFormatter } from '@acorex/core/date-time';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n effect,\n forwardRef,\n inject,\n input,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { IMask } from 'angular-imask';\nimport { classes } from 'polytype';\nimport { AXTimeDurationUnit } from './time-duration.type';\n\n@Component({\n selector: 'ax-time-duration',\n templateUrl: './time-duration.component.html',\n styleUrls: ['./time-duration.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [AXTextBoxModule, FormsModule, AXSelectBoxModule],\n inputs: ['disabled', 'tabIndex', 'readonly', 'look'],\n outputs: ['onValueChanged'],\n providers: [\n { provide: AXComponent, useExisting: AXTimeDurationComponent },\n { provide: AXFocusableComponent, useExisting: AXTimeDurationComponent },\n { provide: AXClearableComponent, useExisting: AXTimeDurationComponent },\n { provide: AXValuableComponent, useExisting: AXTimeDurationComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXTimeDurationComponent),\n multi: true,\n },\n ],\n})\nexport class AXTimeDurationComponent extends classes(MXInputBaseValueComponent<number>, MXLookComponent) {\n protected inputValue: string;\n readonly valueStart = input<AXTimeDurationUnit>('YEAR');\n readonly valueEnd = input<AXTimeDurationUnit>('MILLISECOND');\n protected maskOptions = signal<AXMaskOptions>({\n mask: 'HH:MM:SS',\n blocks: {\n HH: { mask: IMask.MaskedRange, from: 0, to: 23 },\n MM: { mask: IMask.MaskedRange, from: 0, to: 59 },\n SS: { mask: IMask.MaskedRange, from: 0, to: 59 },\n },\n });\n\n private translationService: AXTranslationService = inject(AXTranslationService);\n private timeDurationFormatter: AXTimeDurationFormatter = inject(AXTimeDurationFormatter);\n\n private onInputFire = false;\n private onInternalValueChangedFire = false;\n\n private YEAR = signal(null);\n private MONTH = signal(null);\n private WEEK = signal(null);\n private DAY = signal(null);\n private HOUR = signal(null);\n private MINUTE = signal(null);\n private SECOND = signal(null);\n private MILLISECOND = signal(null);\n private isTranslationInit = signal(false);\n\n #init = afterNextRender(async () => {\n await this.initTranslation();\n });\n\n #effect = effect(() => {\n if (this.valueStart() && this.valueEnd() && this.isTranslationInit()) {\n this.updateMask();\n }\n });\n\n async initTranslation() {\n this.YEAR.set((await this.translationService.translateAsync('dateTime.year')).toLocaleUpperCase());\n this.MONTH.set((await this.translationService.translateAsync('dateTime.month')).toLocaleUpperCase());\n this.WEEK.set((await this.translationService.translateAsync('dateTime.week')).toLocaleUpperCase());\n this.DAY.set((await this.translationService.translateAsync('dateTime.day')).toLocaleUpperCase());\n this.HOUR.set((await this.translationService.translateAsync('dateTime.hour')).toLocaleUpperCase());\n this.MINUTE.set((await this.translationService.translateAsync('dateTime.minute')).toLocaleUpperCase());\n this.SECOND.set((await this.translationService.translateAsync('dateTime.second')).toLocaleUpperCase());\n this.MILLISECOND.set((await this.translationService.translateAsync('dateTime.millisecond')).toLocaleUpperCase());\n this.isTranslationInit.set(true);\n }\n\n protected onInput(event: any) {\n if (this.onInternalValueChangedFire) return;\n this.onInputFire = true;\n const milliseconds = this.maskToMilliseconds(event);\n if (!milliseconds) return;\n this.commitValue(milliseconds, true);\n this.onInputFire = false;\n }\n\n protected override async internalValueChanged(value: number): Promise<void> {\n if (this.onInputFire) return;\n this.onInternalValueChangedFire = true;\n const normalizedMask = await this.timeDurationFormatter.millisecondsToMask(value);\n this.inputValue = normalizedMask;\n this.onInternalValueChangedFire = false;\n }\n\n private replacePersianLabels(input: string) {\n const replacements = {\n [this.YEAR()]: 'YEAR',\n [this.MONTH()]: 'MONTH',\n [this.WEEK()]: 'WEEK',\n [this.DAY()]: 'DAY',\n [this.HOUR()]: 'HOUR',\n [this.MINUTE()]: 'MINUTE',\n [this.SECOND()]: 'SECOND',\n [this.MILLISECOND()]: 'MILLISECOND',\n };\n\n return Object.entries(replacements).reduce((str, [fa, en]) => {\n return str.replace(`(${fa})`, `(${en})`);\n }, input);\n }\n\n private prevMillisecond: number;\n private maskToMilliseconds(maskValue: string): number {\n const transformedMaskValue = this.replacePersianLabels(maskValue);\n\n const parts = transformedMaskValue.split(' : ').map((part) => part.trim());\n let totalMilliseconds = 0;\n\n // Define maximum values for each unit\n const maxValues = {\n MILLISECOND: 1000,\n SECOND: 60,\n MINUTE: 60,\n HOUR: 24,\n DAY: 7,\n WEEK: 4,\n MONTH: 12,\n YEAR: Infinity,\n };\n\n // First pass: convert all values to milliseconds\n for (const part of parts) {\n const match = part.match(/(\\d+)\\s*\\((\\w+)\\)/);\n if (match) {\n const [_, value, unit] = match;\n const numValue = parseInt(value, 10);\n const unitUpper = unit.toUpperCase();\n\n // Check if value exceeds maximum\n if (numValue >= maxValues[unitUpper]) {\n // Convert to next larger unit\n const nextUnit = this.getNextLargerUnit(unitUpper);\n if (nextUnit) {\n const convertedValue = this.convertToLargerUnit(numValue, unitUpper, nextUnit);\n totalMilliseconds += this.unitToMilliseconds(convertedValue.value, convertedValue.unit);\n } else {\n totalMilliseconds += this.unitToMilliseconds(numValue, unitUpper);\n }\n } else {\n totalMilliseconds += this.unitToMilliseconds(numValue, unitUpper);\n }\n }\n }\n\n if (totalMilliseconds === this.prevMillisecond) return null;\n this.prevMillisecond = totalMilliseconds;\n\n return totalMilliseconds;\n }\n\n private getNextLargerUnit(unit: string): string {\n const units = ['MILLISECOND', 'SECOND', 'MINUTE', 'HOUR', 'DAY', 'WEEK', 'MONTH', 'YEAR'];\n const currentIndex = units.indexOf(unit);\n return currentIndex < units.length - 1 ? units[currentIndex + 1] : null;\n }\n\n private convertToLargerUnit(value: number, fromUnit: string, toUnit: string): { value: number; unit: string } {\n const conversionRates = {\n MILLISECOND: { SECOND: 1000 },\n SECOND: { MINUTE: 60 },\n MINUTE: { HOUR: 60 },\n HOUR: { DAY: 24 },\n DAY: { WEEK: 7 },\n WEEK: { MONTH: 4 },\n MONTH: { YEAR: 12 },\n };\n\n if (conversionRates[fromUnit] && conversionRates[fromUnit][toUnit]) {\n const rate = conversionRates[fromUnit][toUnit];\n return {\n value: Math.floor(value / rate),\n unit: toUnit,\n };\n }\n\n return { value, unit: fromUnit };\n }\n\n private unitToMilliseconds(value: number, unit: string): number {\n switch (unit) {\n case 'YEAR':\n return value * 31536000000; // 365 days\n case 'MONTH':\n return value * 2592000000; // 30 days\n case 'WEEK':\n return value * 604800000; // 7 days\n case 'DAY':\n return value * 86400000; // 24 hours\n case 'HOUR':\n return value * 3600000; // 60 minutes\n case 'MINUTE':\n return value * 60000; // 60 seconds\n case 'SECOND':\n return value * 1000;\n case 'MILLISECOND':\n return value;\n default:\n return 0;\n }\n }\n\n private updateMask() {\n const allUnits = ['YEAR', 'MONTH', 'WEEK', 'DAY', 'HOUR', 'MINUTE', 'SECOND', 'MILLISECOND'];\n const startIndex = allUnits.indexOf(this.valueStart());\n const endIndex = allUnits.indexOf(this.valueEnd());\n\n if (startIndex === -1 || endIndex === -1 || endIndex < startIndex) {\n this.maskOptions.set({ mask: '', eager: true });\n return null;\n }\n\n const selectedUnits = allUnits.slice(startIndex, endIndex + 1);\n\n const unitPatterns: Record<string, string> = {\n YEAR: `00 (${this.YEAR()})`,\n MONTH: `00 (${this.MONTH()})`,\n WEEK: `00 (${this.WEEK()})`,\n DAY: `00 (${this.DAY()})`,\n HOUR: `00 (${this.HOUR()})`,\n MINUTE: `00 (${this.MINUTE()})`,\n SECOND: `00 (${this.SECOND()})`,\n MILLISECOND: `000 (${this.MILLISECOND()})`,\n };\n\n const maskParts = selectedUnits.map((unit) => {\n return unitPatterns[unit];\n });\n\n const result = maskParts.join(' : ');\n\n this.maskOptions.set({ mask: result, eager: true });\n }\n}\n","<div class=\"ax-editor-container\">\n <ax-text-box\n [look]=\"look\"\n [placeholder]=\"maskOptions().mask\"\n [mask-options]=\"maskOptions()\"\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onInput($event)\"\n class=\"ax-time-duration-text\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [readonly]=\"readonly\"\n >\n </ax-text-box>\n <ng-content select=\"ax-validation-rule\"> </ng-content>\n</div>\n<div class=\"ax-error-container\"></div>\n","import { NgModule } from '@angular/core';\nimport { AXTimeDurationComponent } from './time-duration.component';\n\nconst COMPONENT = [AXTimeDurationComponent];\n\nconst MODULES = [];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXTimeDurationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-time-duration.mjs","sources":["../../../../packages/components/time-duration/src/lib/time-duration.component.ts","../../../../packages/components/time-duration/src/lib/time-duration.component.html","../../../../packages/components/time-duration/src/lib/time-duration.module.ts","../../../../packages/components/time-duration/src/acorex-components-time-duration.ts"],"sourcesContent":["import {\n AXClearableComponent,\n AXComponent,\n AXFocusableComponent,\n AXValuableComponent,\n MXInputBaseValueComponent,\n MXLookComponent,\n} from '@acorex/components/common';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXMaskOptions, AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTimeDurationFormatter } from '@acorex/core/date-time';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n effect,\n forwardRef,\n inject,\n input,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { IMask } from 'angular-imask';\nimport { classes } from 'polytype';\nimport { AXTimeDurationUnit } from './time-duration.type';\n\n@Component({\n selector: 'ax-time-duration',\n templateUrl: './time-duration.component.html',\n styleUrls: ['./time-duration.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [AXTextBoxModule, FormsModule, AXSelectBoxModule],\n inputs: ['disabled', 'tabIndex', 'readonly', 'look'],\n outputs: ['onValueChanged'],\n providers: [\n { provide: AXComponent, useExisting: AXTimeDurationComponent },\n { provide: AXFocusableComponent, useExisting: AXTimeDurationComponent },\n { provide: AXClearableComponent, useExisting: AXTimeDurationComponent },\n { provide: AXValuableComponent, useExisting: AXTimeDurationComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXTimeDurationComponent),\n multi: true,\n },\n ],\n})\nexport class AXTimeDurationComponent extends classes(MXInputBaseValueComponent<number>, MXLookComponent) {\n protected inputValue: string;\n readonly valueStart = input<AXTimeDurationUnit>('YEAR');\n readonly valueEnd = input<AXTimeDurationUnit>('MILLISECOND');\n protected maskOptions = signal<AXMaskOptions>({\n mask: 'HH:MM:SS',\n blocks: {\n HH: { mask: IMask.MaskedRange, from: 0, to: 23 },\n MM: { mask: IMask.MaskedRange, from: 0, to: 59 },\n SS: { mask: IMask.MaskedRange, from: 0, to: 59 },\n },\n });\n\n private translationService: AXTranslationService = inject(AXTranslationService);\n private timeDurationFormatter: AXTimeDurationFormatter = inject(AXTimeDurationFormatter);\n\n private onInputFire = false;\n private onInternalValueChangedFire = false;\n\n private YEAR = signal(null);\n private MONTH = signal(null);\n private WEEK = signal(null);\n private DAY = signal(null);\n private HOUR = signal(null);\n private MINUTE = signal(null);\n private SECOND = signal(null);\n private MILLISECOND = signal(null);\n private isTranslationInit = signal(false);\n\n #init = afterNextRender(async () => {\n await this.initTranslation();\n });\n\n #effect = effect(() => {\n if (this.valueStart() && this.valueEnd() && this.isTranslationInit()) {\n this.updateMask();\n }\n });\n\n async initTranslation() {\n this.YEAR.set((await this.translationService.translateAsync('dateTime.year')).toLocaleUpperCase());\n this.MONTH.set((await this.translationService.translateAsync('dateTime.month')).toLocaleUpperCase());\n this.WEEK.set((await this.translationService.translateAsync('dateTime.week')).toLocaleUpperCase());\n this.DAY.set((await this.translationService.translateAsync('dateTime.day')).toLocaleUpperCase());\n this.HOUR.set((await this.translationService.translateAsync('dateTime.hour')).toLocaleUpperCase());\n this.MINUTE.set((await this.translationService.translateAsync('dateTime.minute')).toLocaleUpperCase());\n this.SECOND.set((await this.translationService.translateAsync('dateTime.second')).toLocaleUpperCase());\n this.MILLISECOND.set((await this.translationService.translateAsync('dateTime.millisecond')).toLocaleUpperCase());\n this.isTranslationInit.set(true);\n }\n\n protected onInput(event: any) {\n if (this.onInternalValueChangedFire) return;\n this.onInputFire = true;\n const milliseconds = this.maskToMilliseconds(event);\n if (!milliseconds) return;\n this.commitValue(milliseconds, true);\n this.onInputFire = false;\n }\n\n protected override async internalValueChanged(value: number): Promise<void> {\n if (!value) return;\n if (this.onInputFire) return;\n this.onInternalValueChangedFire = true;\n const normalizedMask = await this.timeDurationFormatter.millisecondsToMask(value);\n this.inputValue = normalizedMask;\n this.onInternalValueChangedFire = false;\n }\n\n private replacePersianLabels(input: string) {\n const replacements = {\n [this.YEAR()]: 'YEAR',\n [this.MONTH()]: 'MONTH',\n [this.WEEK()]: 'WEEK',\n [this.DAY()]: 'DAY',\n [this.HOUR()]: 'HOUR',\n [this.MINUTE()]: 'MINUTE',\n [this.SECOND()]: 'SECOND',\n [this.MILLISECOND()]: 'MILLISECOND',\n };\n\n return Object.entries(replacements).reduce((str, [fa, en]) => {\n return str.replace(`(${fa})`, `(${en})`);\n }, input);\n }\n\n private maskToMilliseconds(maskValue: string): number {\n const transformedMaskValue = this.replacePersianLabels(maskValue);\n\n const timeUnits = {\n YEAR: 365 * 24 * 60 * 60 * 1000,\n MONTH: 30 * 24 * 60 * 60 * 1000,\n WEEK: 7 * 24 * 60 * 60 * 1000,\n DAY: 24 * 60 * 60 * 1000,\n HOUR: 60 * 60 * 1000,\n MINUTE: 60 * 1000,\n SECOND: 1000,\n MILLISECOND: 1,\n };\n\n const regex = /(\\d+)\\s*\\((YEAR|MONTH|WEEK|DAY|HOUR|MINUTE|SECOND|MILLISECOND)\\)/g;\n let match;\n let totalMs = 0;\n\n while ((match = regex.exec(transformedMaskValue)) !== null) {\n const value = parseInt(match[1], 10);\n const unit = match[2];\n if (timeUnits[unit] !== undefined) {\n totalMs += value * timeUnits[unit];\n }\n }\n\n return totalMs;\n }\n\n private updateMask() {\n const allUnits = ['YEAR', 'MONTH', 'WEEK', 'DAY', 'HOUR', 'MINUTE', 'SECOND', 'MILLISECOND'];\n const startIndex = allUnits.indexOf(this.valueStart());\n const endIndex = allUnits.indexOf(this.valueEnd());\n\n if (startIndex === -1 || endIndex === -1 || endIndex < startIndex) {\n this.maskOptions.set({ mask: '', eager: true });\n return null;\n }\n\n const selectedUnits = allUnits.slice(startIndex, endIndex + 1);\n\n const unitPatterns: Record<string, string> = {\n YEAR: `00 (${this.YEAR()})`,\n MONTH: `00 (${this.MONTH()})`,\n WEEK: `00 (${this.WEEK()})`,\n DAY: `00 (${this.DAY()})`,\n HOUR: `00 (${this.HOUR()})`,\n MINUTE: `00 (${this.MINUTE()})`,\n SECOND: `00 (${this.SECOND()})`,\n MILLISECOND: `000 (${this.MILLISECOND()})`,\n };\n\n const maskParts = selectedUnits.map((unit) => {\n return unitPatterns[unit];\n });\n\n const result = maskParts.join(' : ');\n\n this.maskOptions.set({ mask: result, eager: true });\n }\n}\n","<div class=\"ax-editor-container\">\n <ax-text-box\n [look]=\"look\"\n [placeholder]=\"maskOptions().mask\"\n [mask-options]=\"maskOptions()\"\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onInput($event)\"\n class=\"ax-time-duration-text\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [readonly]=\"readonly\"\n >\n </ax-text-box>\n <ng-content select=\"ax-validation-rule\"> </ng-content>\n</div>\n<div class=\"ax-error-container\"></div>\n","import { NgModule } from '@angular/core';\nimport { AXTimeDurationComponent } from './time-duration.component';\n\nconst COMPONENT = [AXTimeDurationComponent];\n\nconst MODULES = [];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXTimeDurationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acorex/components",
3
- "version": "19.15.0-next.3",
3
+ "version": "19.15.0-next.4",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=19.0.0",
6
6
  "@angular/core": ">=19.0.0",
@@ -29,11 +29,7 @@ export declare class AXTimeDurationComponent extends AXTimeDurationComponent_bas
29
29
  protected onInput(event: any): void;
30
30
  protected internalValueChanged(value: number): Promise<void>;
31
31
  private replacePersianLabels;
32
- private prevMillisecond;
33
32
  private maskToMilliseconds;
34
- private getNextLargerUnit;
35
- private convertToLargerUnit;
36
- private unitToMilliseconds;
37
33
  private updateMask;
38
34
  static ɵfac: i0.ɵɵFactoryDeclaration<AXTimeDurationComponent, never>;
39
35
  static ɵcmp: i0.ɵɵComponentDeclaration<AXTimeDurationComponent, "ax-time-duration", never, { "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "look": { "alias": "look"; "required": false; }; "valueStart": { "alias": "valueStart"; "required": false; "isSignal": true; }; "valueEnd": { "alias": "valueEnd"; "required": false; "isSignal": true; }; }, { "onValueChanged": "onValueChanged"; }, never, ["ax-validation-rule"], true, never>;