@magmonium/one 0.4.56 → 0.4.57

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.
Files changed (25) hide show
  1. package/fesm2022/{magmonium-one-base-dropdown-B6jwgjjx.mjs → magmonium-one-base-dropdown-BgLka4oB.mjs} +3 -3
  2. package/fesm2022/{magmonium-one-base-dropdown-B6jwgjjx.mjs.map → magmonium-one-base-dropdown-BgLka4oB.mjs.map} +1 -1
  3. package/fesm2022/{magmonium-one-checkbox-CbEdjmtz.mjs → magmonium-one-checkbox-CyVd_a7p.mjs} +2 -2
  4. package/fesm2022/{magmonium-one-checkbox-CbEdjmtz.mjs.map → magmonium-one-checkbox-CyVd_a7p.mjs.map} +1 -1
  5. package/fesm2022/{magmonium-one-image-editor-C0vNiH0J.mjs → magmonium-one-image-editor-CKx7BRVF.mjs} +2 -2
  6. package/fesm2022/{magmonium-one-image-editor-C0vNiH0J.mjs.map → magmonium-one-image-editor-CKx7BRVF.mjs.map} +1 -1
  7. package/fesm2022/{magmonium-one-label-B95NhEzQ.mjs → magmonium-one-label-B8WJHiU4.mjs} +12 -2
  8. package/fesm2022/magmonium-one-label-B8WJHiU4.mjs.map +1 -0
  9. package/fesm2022/{magmonium-one-multi-range-BJ8LafrI.mjs → magmonium-one-multi-range-mv5rz3uW.mjs} +2 -2
  10. package/fesm2022/{magmonium-one-multi-range-BJ8LafrI.mjs.map → magmonium-one-multi-range-mv5rz3uW.mjs.map} +1 -1
  11. package/fesm2022/{magmonium-one-otp-BOiv-9eT.mjs → magmonium-one-otp-BlP0t9w1.mjs} +2 -2
  12. package/fesm2022/{magmonium-one-otp-BOiv-9eT.mjs.map → magmonium-one-otp-BlP0t9w1.mjs.map} +1 -1
  13. package/fesm2022/{magmonium-one-password-Bsv1wUIJ.mjs → magmonium-one-password-CTnJ9M7d.mjs} +2 -2
  14. package/fesm2022/{magmonium-one-password-Bsv1wUIJ.mjs.map → magmonium-one-password-CTnJ9M7d.mjs.map} +1 -1
  15. package/fesm2022/{magmonium-one-radio-BsQv0Wof.mjs → magmonium-one-radio-BanML2y5.mjs} +2 -2
  16. package/fesm2022/{magmonium-one-radio-BsQv0Wof.mjs.map → magmonium-one-radio-BanML2y5.mjs.map} +1 -1
  17. package/fesm2022/{magmonium-one-range-C5vn9zlY.mjs → magmonium-one-range-B_3WiQR7.mjs} +2 -2
  18. package/fesm2022/{magmonium-one-range-C5vn9zlY.mjs.map → magmonium-one-range-B_3WiQR7.mjs.map} +1 -1
  19. package/fesm2022/{magmonium-one-text-xar0qfsQ.mjs → magmonium-one-text-DDA0gCOd.mjs} +2 -2
  20. package/fesm2022/{magmonium-one-text-xar0qfsQ.mjs.map → magmonium-one-text-DDA0gCOd.mjs.map} +1 -1
  21. package/fesm2022/magmonium-one.mjs +23 -23
  22. package/fesm2022/magmonium-one.mjs.map +1 -1
  23. package/package.json +1 -1
  24. package/types/magmonium-one.d.ts +15 -2
  25. package/fesm2022/magmonium-one-label-B95NhEzQ.mjs.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./magmonium-one-rolldown-runtime-DpJrqANO.mjs";
2
- import { t as LabelComponent } from "./magmonium-one-label-B95NhEzQ.mjs";
2
+ import { t as LabelComponent } from "./magmonium-one-label-B8WJHiU4.mjs";
3
3
  import { t as BaseCheckboxInputComponent } from "./magmonium-one-base-checkbox-bwMjlhHR.mjs";
4
4
  import * as i0 from "@angular/core";
5
5
  import { ChangeDetectionStrategy, Component, computed } from "@angular/core";
@@ -108,4 +108,4 @@ i0.ɵɵngDeclareClassMetadata({
108
108
  });
109
109
  export { radio_exports as n, RadioInputComponent as t };
110
110
 
111
- //# sourceMappingURL=magmonium-one-radio-BsQv0Wof.mjs.map
111
+ //# sourceMappingURL=magmonium-one-radio-BanML2y5.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"magmonium-one-radio-BsQv0Wof.mjs","names":[],"sources":["../../../../libs/one/src/lib/shared/ui/input/ui/checkbox/radio.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed } from '@angular/core';\nimport { BaseCheckboxInputComponent } from './base-checkbox';\nimport { LabelComponent } from '../label';\nimport { RadioInput } from '../../model/input';\n\n@Component({\n selector: 'm-radio',\n template: `\n @if (radioConfig(); as radio) {\n <div class=\"radio\">\n <input\n [checked]=\"checked()\"\n #inputElement\n [class.error]=\"showErrors()\"\n [disabled]=\"disabled()\"\n (change)=\"onChange($event)\"\n type=\"radio\"\n [name]=\"radio.name\"\n [id]=\"radio.id\"\n />\n <m-label\n [for]=\"radio.id\"\n [placeholder]=\"radio.label\"\n [params]=\"radio.params\"\n [required]=\"required()\"\n [disabled]=\"disabled()\"\n />\n </div>\n }\n `,\n styleUrl: './checkbox.sass',\n imports: [LabelComponent],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class RadioInputComponent extends BaseCheckboxInputComponent {\n protected readonly radioConfig = computed(() => this.config() as RadioInput);\n\n protected onChange(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.setValue(target?.checked ?? false);\n }\n}\n"],"mappings":";;;;;;AAkCA,IAAa,sBAAb,MAAa,4BAA4B,2BAA0B;CAC9C,cAAc,eAAe,KAAK,OAAM,GAAiB,GAAA,YAAA,CAAA,EAAA,WAAA,cAAA,CAAA,+BAAA,CAAA,CAAA;CAElE,SAAS,OAAY;EAC7B,MAAM,SAAS,MAAM;EACrB,KAAK,SAAS,QAAQ,WAAW,KAAK;CACxC;CANW,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAmB,MAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAnB,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAmB,cAAA;EAAA,UAAA;EAAA,iBAAA;EAAA,UAAA;EAAA,UA3BpB;;;;;;;;;;;;;;;;;;;;;;;EAsBT,UAAA;EAAA,QAAA,CAAA,oljBAAA;EAAA,cAAA,CAAA;GAAA,MAAA;GAAA,MAES;GAAc,UAAA;GAAA,QAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;GAAA;EAAA,CAAA;EAAA,iBAAA,GAAA,wBAAA;CAAA,CAAA;;AAGb,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAmB,YAAA,CAAA;EA7B/B,MAAA;EACW,MAAA,CAAA;GAAA,UAAA;GAAS,UACT;;;;;;;;;;;;;;;;;;;;;;;GAsBT,SAEQ,CAAC,cAAc;GAAC,iBACR,wBAAwB;GAAM,QAAA,CAAA,oljBAAA;EAAA,CAAA"}
1
+ {"version":3,"file":"magmonium-one-radio-BanML2y5.mjs","names":[],"sources":["../../../../libs/one/src/lib/shared/ui/input/ui/checkbox/radio.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed } from '@angular/core';\nimport { BaseCheckboxInputComponent } from './base-checkbox';\nimport { LabelComponent } from '../label';\nimport { RadioInput } from '../../model/input';\n\n@Component({\n selector: 'm-radio',\n template: `\n @if (radioConfig(); as radio) {\n <div class=\"radio\">\n <input\n [checked]=\"checked()\"\n #inputElement\n [class.error]=\"showErrors()\"\n [disabled]=\"disabled()\"\n (change)=\"onChange($event)\"\n type=\"radio\"\n [name]=\"radio.name\"\n [id]=\"radio.id\"\n />\n <m-label\n [for]=\"radio.id\"\n [placeholder]=\"radio.label\"\n [params]=\"radio.params\"\n [required]=\"required()\"\n [disabled]=\"disabled()\"\n />\n </div>\n }\n `,\n styleUrl: './checkbox.sass',\n imports: [LabelComponent],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class RadioInputComponent extends BaseCheckboxInputComponent {\n protected readonly radioConfig = computed(() => this.config() as RadioInput);\n\n protected onChange(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.setValue(target?.checked ?? false);\n }\n}\n"],"mappings":";;;;;;AAkCA,IAAa,sBAAb,MAAa,4BAA4B,2BAA0B;CAC9C,cAAc,eAAe,KAAK,OAAM,GAAiB,GAAA,YAAA,CAAA,EAAA,WAAA,cAAA,CAAA,+BAAA,CAAA,CAAA;CAElE,SAAS,OAAY;EAC7B,MAAM,SAAS,MAAM;EACrB,KAAK,SAAS,QAAQ,WAAW,KAAK;CACxC;CANW,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAmB,MAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAnB,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAmB,cAAA;EAAA,UAAA;EAAA,iBAAA;EAAA,UAAA;EAAA,UA3BpB;;;;;;;;;;;;;;;;;;;;;;;EAsBT,UAAA;EAAA,QAAA,CAAA,oljBAAA;EAAA,cAAA,CAAA;GAAA,MAAA;GAAA,MAES;GAAc,UAAA;GAAA,QAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;GAAA;EAAA,CAAA;EAAA,iBAAA,GAAA,wBAAA;CAAA,CAAA;;AAGb,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAmB,YAAA,CAAA;EA7B/B,MAAA;EACW,MAAA,CAAA;GAAA,UAAA;GAAS,UACT;;;;;;;;;;;;;;;;;;;;;;;GAsBT,SAEQ,CAAC,cAAc;GAAC,iBACR,wBAAwB;GAAM,QAAA,CAAA,oljBAAA;EAAA,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./magmonium-one-rolldown-runtime-DpJrqANO.mjs";
2
- import { t as LabelComponent } from "./magmonium-one-label-B95NhEzQ.mjs";
2
+ import { t as LabelComponent } from "./magmonium-one-label-B8WJHiU4.mjs";
3
3
  import { u as DraggableDirective } from "./magmonium-one-directives-Dbe0pfCf.mjs";
4
4
  import { t as BaseTextInputComponent } from "./magmonium-one-base-text-HyEol70U.mjs";
5
5
  import * as i0 from "@angular/core";
@@ -215,4 +215,4 @@ i0.ɵɵngDeclareClassMetadata({
215
215
  });
216
216
  export { range_exports as n, RangeInputComponent as t };
217
217
 
218
- //# sourceMappingURL=magmonium-one-range-C5vn9zlY.mjs.map
218
+ //# sourceMappingURL=magmonium-one-range-B_3WiQR7.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"magmonium-one-range-C5vn9zlY.mjs","names":[],"sources":["../../../../libs/one/src/lib/shared/ui/input/ui/range/range.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n ElementRef,\n HostListener,\n linkedSignal,\n signal,\n viewChild,\n} from '@angular/core';\nimport { BaseTextInputComponent } from '../text/base-text';\nimport { DraggableDirective, Draggable } from '../../../../directives';\nimport { LabelComponent } from '../label';\nimport { RangeInput } from '../../model/input';\nimport { Direction } from '../../../../type';\n\n@Component({\n selector: 'm-range',\n imports: [DraggableDirective, LabelComponent],\n template: `\n @if (config(); as range) {\n <div class=\"m-range\">\n <m-label\n class=\"m-range__label\"\n [placeholder]=\"range.label\"\n [params]=\"range.params\"\n [noTranslate]=\"range.noTranslate\"\n [required]=\"required()\"\n [disabled]=\"disabled()\"\n />\n <div class=\"m-range__control\">\n <div class=\"m-range__track\" #track>\n <div\n class=\"m-range__fill\"\n [style.width.px]=\"thumbDraggable().position.x\"\n ></div>\n <div\n class=\"m-range__thumb\"\n [(mDraggable)]=\"thumbDraggable\"\n [min]=\"{ x: 0, y: _TRACK_HALF_H }\"\n [max]=\"{ x: _trackWidth(), y: _TRACK_HALF_H }\"\n ></div>\n </div>\n <span class=\"m-range__value\" [class.hidden]=\"_displayValue() === 0\">{{ _displayValue() !== 0 ? _displayValue() : '' }}</span>\n </div>\n </div>\n }\n `,\n styleUrl: './range.sass',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class RangeInputComponent extends BaseTextInputComponent<RangeInput> {\n private readonly _track = viewChild<ElementRef<HTMLDivElement>>('track');\n protected readonly _trackWidth = signal(0);\n protected readonly _TRACK_HALF_H = 3;\n\n /**\n * Measured live rather than once. The track shares its row with the value\n * readout and opens inside panels that animate in, and a width read mid\n * animation is the scaled one — `getBoundingClientRect` counts transforms\n * where a ResizeObserver's box does not. A stale width is a thumb that stops\n * short of the track's end or, before the bounds became inputs on the\n * Draggable, ran clean past it.\n */\n private readonly _measure = effect((onCleanup) => {\n const track = this._track();\n if (!track) return;\n\n const el = track.nativeElement;\n this._trackWidth.set(el.getBoundingClientRect().width);\n\n // Absent under jsdom, where the window resize below is the only signal.\n if (typeof ResizeObserver === 'undefined') return;\n const observer = new ResizeObserver(([entry]) =>\n this._trackWidth.set(entry.contentRect.width)\n );\n observer.observe(el);\n onCleanup(() => observer.disconnect());\n });\n\n thumbDraggable = linkedSignal({\n source: () => ({\n val: this.value(),\n tw: this._trackWidth(),\n cfg: this.config(),\n }),\n computation: ({\n val,\n tw,\n cfg,\n }: {\n val: string;\n tw: number;\n cfg: unknown;\n }): Draggable => {\n const rangeCfg = cfg as RangeInput | undefined;\n const min = rangeCfg?.min ?? 0;\n const max = rangeCfg?.max ?? 100;\n const numVal = Number(val) || min;\n const x = tw > 0 ? (tw * (numVal - min)) / (max - min) : 0;\n return {\n direction: 'x' as Direction,\n position: { x, y: this._TRACK_HALF_H },\n };\n },\n });\n\n readonly _displayValue = computed(() => {\n const cfg = this.config() as RangeInput | undefined;\n const min = cfg?.min ?? 0;\n const max = cfg?.max ?? 100;\n const tw = this._trackWidth();\n if (tw === 0) return Number(this.value()) || min;\n const x = this.thumbDraggable().position.x ?? 0;\n return Math.round(min + ((max - min) * x) / tw);\n });\n\n constructor() {\n super();\n effect(() => {\n const pos = this.thumbDraggable().position;\n const cfg = this.config() as RangeInput | undefined;\n const min = cfg?.min ?? 0;\n const max = cfg?.max ?? 100;\n const tw = this._trackWidth();\n if (tw === 0) return;\n const numVal = Number(this.value()) || min;\n const expectedX = tw > 0 ? (tw * (numVal - min)) / (max - min) : 0;\n if (pos.x !== expectedX) {\n const val = Math.round(min + ((max - min) * (pos.x ?? 0)) / tw);\n this.setValue(String(val));\n }\n });\n }\n\n @HostListener('window:resize')\n protected _onResize(): void {\n const track = this._track();\n if (track) {\n this._trackWidth.set(track.nativeElement.getBoundingClientRect().width);\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"magmonium-one-range-B_3WiQR7.mjs","names":[],"sources":["../../../../libs/one/src/lib/shared/ui/input/ui/range/range.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n ElementRef,\n HostListener,\n linkedSignal,\n signal,\n viewChild,\n} from '@angular/core';\nimport { BaseTextInputComponent } from '../text/base-text';\nimport { DraggableDirective, Draggable } from '../../../../directives';\nimport { LabelComponent } from '../label';\nimport { RangeInput } from '../../model/input';\nimport { Direction } from '../../../../type';\n\n@Component({\n selector: 'm-range',\n imports: [DraggableDirective, LabelComponent],\n template: `\n @if (config(); as range) {\n <div class=\"m-range\">\n <m-label\n class=\"m-range__label\"\n [placeholder]=\"range.label\"\n [params]=\"range.params\"\n [noTranslate]=\"range.noTranslate\"\n [required]=\"required()\"\n [disabled]=\"disabled()\"\n />\n <div class=\"m-range__control\">\n <div class=\"m-range__track\" #track>\n <div\n class=\"m-range__fill\"\n [style.width.px]=\"thumbDraggable().position.x\"\n ></div>\n <div\n class=\"m-range__thumb\"\n [(mDraggable)]=\"thumbDraggable\"\n [min]=\"{ x: 0, y: _TRACK_HALF_H }\"\n [max]=\"{ x: _trackWidth(), y: _TRACK_HALF_H }\"\n ></div>\n </div>\n <span class=\"m-range__value\" [class.hidden]=\"_displayValue() === 0\">{{ _displayValue() !== 0 ? _displayValue() : '' }}</span>\n </div>\n </div>\n }\n `,\n styleUrl: './range.sass',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class RangeInputComponent extends BaseTextInputComponent<RangeInput> {\n private readonly _track = viewChild<ElementRef<HTMLDivElement>>('track');\n protected readonly _trackWidth = signal(0);\n protected readonly _TRACK_HALF_H = 3;\n\n /**\n * Measured live rather than once. The track shares its row with the value\n * readout and opens inside panels that animate in, and a width read mid\n * animation is the scaled one — `getBoundingClientRect` counts transforms\n * where a ResizeObserver's box does not. A stale width is a thumb that stops\n * short of the track's end or, before the bounds became inputs on the\n * Draggable, ran clean past it.\n */\n private readonly _measure = effect((onCleanup) => {\n const track = this._track();\n if (!track) return;\n\n const el = track.nativeElement;\n this._trackWidth.set(el.getBoundingClientRect().width);\n\n // Absent under jsdom, where the window resize below is the only signal.\n if (typeof ResizeObserver === 'undefined') return;\n const observer = new ResizeObserver(([entry]) =>\n this._trackWidth.set(entry.contentRect.width)\n );\n observer.observe(el);\n onCleanup(() => observer.disconnect());\n });\n\n thumbDraggable = linkedSignal({\n source: () => ({\n val: this.value(),\n tw: this._trackWidth(),\n cfg: this.config(),\n }),\n computation: ({\n val,\n tw,\n cfg,\n }: {\n val: string;\n tw: number;\n cfg: unknown;\n }): Draggable => {\n const rangeCfg = cfg as RangeInput | undefined;\n const min = rangeCfg?.min ?? 0;\n const max = rangeCfg?.max ?? 100;\n const numVal = Number(val) || min;\n const x = tw > 0 ? (tw * (numVal - min)) / (max - min) : 0;\n return {\n direction: 'x' as Direction,\n position: { x, y: this._TRACK_HALF_H },\n };\n },\n });\n\n readonly _displayValue = computed(() => {\n const cfg = this.config() as RangeInput | undefined;\n const min = cfg?.min ?? 0;\n const max = cfg?.max ?? 100;\n const tw = this._trackWidth();\n if (tw === 0) return Number(this.value()) || min;\n const x = this.thumbDraggable().position.x ?? 0;\n return Math.round(min + ((max - min) * x) / tw);\n });\n\n constructor() {\n super();\n effect(() => {\n const pos = this.thumbDraggable().position;\n const cfg = this.config() as RangeInput | undefined;\n const min = cfg?.min ?? 0;\n const max = cfg?.max ?? 100;\n const tw = this._trackWidth();\n if (tw === 0) return;\n const numVal = Number(this.value()) || min;\n const expectedX = tw > 0 ? (tw * (numVal - min)) / (max - min) : 0;\n if (pos.x !== expectedX) {\n const val = Math.round(min + ((max - min) * (pos.x ?? 0)) / tw);\n this.setValue(String(val));\n }\n });\n }\n\n @HostListener('window:resize')\n protected _onResize(): void {\n const track = this._track();\n if (track) {\n this._trackWidth.set(track.nativeElement.getBoundingClientRect().width);\n }\n }\n}\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./magmonium-one-rolldown-runtime-DpJrqANO.mjs";
2
2
  import { c as TranslatePipe } from "./magmonium-one-size-converter-BOLtxL8d.mjs";
3
- import { t as LabelComponent } from "./magmonium-one-label-B95NhEzQ.mjs";
3
+ import { t as LabelComponent } from "./magmonium-one-label-B8WJHiU4.mjs";
4
4
  import { r as IconComponent } from "./magmonium-one-icon-dAR6gd-q.mjs";
5
5
  import { t as InputType } from "./magmonium-one-input-DqHPorA1.mjs";
6
6
  import { t as BaseTextInputComponent } from "./magmonium-one-base-text-HyEol70U.mjs";
@@ -406,4 +406,4 @@ i0.ɵɵngDeclareClassMetadata({
406
406
  });
407
407
  export { text_exports as n, TextInputComponent as t };
408
408
 
409
- //# sourceMappingURL=magmonium-one-text-xar0qfsQ.mjs.map
409
+ //# sourceMappingURL=magmonium-one-text-DDA0gCOd.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"magmonium-one-text-xar0qfsQ.mjs","names":[],"sources":["../../../../libs/one/src/lib/shared/ui/input/ui/text/text.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n input,\n model,\n} from '@angular/core';\nimport { LabelComponent } from '../label';\nimport { TextOutputComponent } from '../../../text-output';\nimport { BaseTextInputComponent } from './base-text';\nimport { IconComponent } from '../../../icon';\nimport { TranslatePipe } from '../../../../pipe';\nimport { Input, InputType, NumberInput } from '../../model/input';\nimport { ValidationError, WithOptionalFieldTree } from '@angular/forms/signals';\n\n/**\n * What this one component draws: a line of text, or the same line typed\n * `number`. WrapperInputComponent has no case for a `number` Field, so it\n * lands here — and the figures a NumberInput carries have to be readable off\n * the config the template already holds.\n */\nexport type TextOrNumberInput = Omit<Input, 'type'> &\n Pick<NumberInput, 'min' | 'max' | 'step'> & {\n type: InputType.TEXT | InputType.NUMBER;\n };\n\n@Component({\n selector: 'm-text-input',\n template: `\n @if (config(); as text) {\n @if (text.label) {\n <m-label\n [for]=\"text.name ?? ''\"\n [placeholder]=\"text.label\"\n [params]=\"text.params\"\n [noTranslate]=\"text.noTranslate\"\n [required]=\"required()\"\n [disabled]=\"disabled()\"\n />\n }\n <div class=\"input-wrapper\">\n @if (text.icon) {\n <m-icon\n [name]=\"text.icon\"\n [color]=\"iconColor()\"\n [one]=\"text.one\"\n />\n }\n @if (text.prefix) {\n <span class=\"input-prefix\">{{ text.prefix }}</span>\n }\n <input\n [id]=\"text.name ?? ''\"\n [attr.data-testid]=\"text.testid ?? (text.name ? text.name + '-input' : null)\"\n [value]=\"value()\"\n #inputElement\n [class.error]=\"showErrors()\"\n [class.has-icon]=\"!!text.icon\"\n [class.has-prefix]=\"!!text.prefix\"\n [disabled]=\"disabled()\"\n [readOnly]=\"readonly() || config()?.readonly\"\n [placeholder]=\"text.placeholder ?? '' | translate: text.params\"\n (input)=\"onInput($event)\"\n (focus)=\"isFocused.set(true)\"\n (blur)=\"isFocused.set(false); touched.set(true)\"\n [type]=\"isNumber() ? 'number' : 'text'\"\n [attr.min]=\"isNumber() ? text.min ?? null : null\"\n [attr.max]=\"isNumber() ? text.max ?? null : null\"\n [attr.step]=\"isNumber() ? text.step ?? null : null\"\n />\n @if (config()?.status; as status) {\n <div class=\"input-indicator\" [class]=\"'input-indicator--' + status\">\n @if (status === 'checking') {\n <span class=\"spinner\"></span>\n } @else if (status === 'available') {\n <m-icon name=\"check\" color=\"success\" />\n }\n </div>\n }\n @if (text.suffix) {\n <span class=\"input-suffix\">{{ text.suffix }}</span>\n }\n </div>\n @if (showErrors() && !hideErrors()) {\n @for (error of errors(); track $index) {\n <m-text-output\n variant=\"footer\"\n color=\"error\"\n [label]=\"error.message\"\n />\n }\n }\n }\n `,\n imports: [LabelComponent, TextOutputComponent, IconComponent, TranslatePipe],\n styleUrl: './text.sass',\n host: {\n '[class]': \"config()?.variant ? 'm-input--' + config()?.variant : ''\",\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TextInputComponent extends BaseTextInputComponent<TextOrNumberInput> {\n public override value = model<string>('');\n public override config = input<Partial<TextOrNumberInput> | undefined>();\n public override required = input<boolean>(false);\n public override disabled = input<boolean>(false);\n public override invalid = input<boolean>(false);\n public override touched = model<boolean>(false);\n public override focused = input<boolean>(false);\n public override errors = input<readonly WithOptionalFieldTree<ValidationError>[]>(\n []\n );\n public override showErrors = computed(() => this.touched() && this.invalid());\n readonly hideErrors = input<boolean>(false);\n\n // A `number` Field draws this same component (WrapperInputComponent has no\n // case of its own for it), so the type it declares decides the element it\n // draws. What *leaves* the field is coerced a level up, in the wrapper: an\n // `<input>` reads its value as text whatever its type, and every other\n // component on this base is a string field.\n protected readonly isNumber = computed(() => {\n const config = this.config();\n return !!config && config.type === InputType.NUMBER;\n });\n\n protected onInput(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.setValue(target?.value ?? '');\n }\n}\n"],"mappings":";;;;;;;;;;AAqGA,IAAa,qBAAb,MAAa,2BAA2B,uBAAyC;CAC/D,QAAQ,MAAc,IAAG,GAAA,YAAA,CAAA,EAAA,WAAA,QAAA,CAAA,+BAAA,CAAA,CAAA;CACzB,SAAS,MAA+C,GAAA,YAAA,CAAA,QAAA,EAAA,WAAA,SAAA,CAAA,+BAAA,CAAA,CAAA;CACxD,WAAW,MAAe,OAAM,GAAA,YAAA,CAAA,EAAA,WAAA,WAAA,CAAA,+BAAA,CAAA,CAAA;CAChC,WAAW,MAAe,OAAM,GAAA,YAAA,CAAA,EAAA,WAAA,WAAA,CAAA,+BAAA,CAAA,CAAA;CAChC,UAAU,MAAe,OAAM,GAAA,YAAA,CAAA,EAAA,WAAA,UAAA,CAAA,+BAAA,CAAA,CAAA;CAC/B,UAAU,MAAe,OAAM,GAAA,YAAA,CAAA,EAAA,WAAA,UAAA,CAAA,+BAAA,CAAA,CAAA;CAC/B,UAAU,MAAe,OAAM,GAAA,YAAA,CAAA,EAAA,WAAA,UAAA,CAAA,+BAAA,CAAA,CAAA;CAC/B,SAAS,MACvB,CAAA,GACD,GAAA,YAAA,CAAA,EAAA,WAAA,SAAA,CAAA,+BAAA,CAAA,CAAA;CACe,aAAa,eAAe,KAAK,QAAO,KAAM,KAAK,QAAO,GAAG,GAAA,YAAA,CAAA,EAAA,WAAA,aAAA,CAAA,+BAAA,CAAA,CAAA;CACpE,aAAa,MAAe,OAAM,GAAA,YAAA,CAAA,EAAA,WAAA,aAAA,CAAA,+BAAA,CAAA,CAAA;CAOxB,WAAW,eAAc;EAC1C,MAAM,SAAS,KAAK,OAAM;EAC1B,OAAO,CAAC,CAAC,UAAU,OAAO,SAAS,UAAU;CAC/C,GAAE,GAAA,YAAA,CAAA,EAAA,WAAA,WAAA,CAAA,+BAAA,CAAA,CAAA;CAEQ,QAAQ,OAAY;EAC5B,MAAM,SAAS,MAAM;EACrB,KAAK,SAAS,QAAQ,SAAS,EAAE;CACnC;CA3BW,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAkB,MAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAlB,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAkB,cAAA;EAAA,UAAA;EAAA,QAAA;GAAA,OAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,QAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,UAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,UAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,SAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,SAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,SAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,QAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,YAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;EAAA;EAAA,SAAA;GAAA,OAAA;GAAA,SAAA;EAAA;EAAA,MAAA,EAAA,YAAA,EAAA,SAAA,2DAAA,EAAA;EAAA,iBAAA;EAAA,UAAA;EAAA,UAzEnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiET,UAAA;EAAA,QAAA,CAAA,k2MAAA;EAAA,cAAA;GAAA;IAAA,MAAA;IAAA,MACS;IAAc,UAAA;IAAA,QAAA;KAAA;KAAA;KAAA;KAAA;KAAA;KAAA;KAAA;IAAA;GAAA;GAAA;IAAA,MAAA;IAAA,MAAE;IAAmB,UAAA;IAAA,QAAA;KAAA;KAAA;KAAA;KAAA;KAAA;KAAA;KAAA;KAAA;IAAA;IAAA,SAAA,CAAA,gBAAA,SAAA;GAAA;GAAA;IAAA,MAAA;IAAA,MAAE;IAAa,UAAA;IAAA,QAAA;KAAA;KAAA;KAAA;KAAA;KAAA;KAAA;KAAA;KAAA;IAAA;IAAA,SAAA,CAAA,cAAA;GAAA;GAAA;IAAA,MAAA;IAAA,MAAE;IAAa,MAAA;GAAA;EAAA;EAAA,iBAAA,GAAA,wBAAA;CAAA,CAAA;;AAOhE,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAkB,YAAA,CAAA;EA3E9B,MAAA;EACW,MAAA,CAAA;GAAA,UAAA;GAAc,UACd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiET,SACQ;IAAC;IAAgB;IAAqB;IAAe;GAAa;GAAC,MAEtE,EACJ,WAAW,2DACZ;GAAA,iBACgB,wBAAwB;GAAM,QAAA,CAAA,k2MAAA;EAAA,CAAA"}
1
+ {"version":3,"file":"magmonium-one-text-DDA0gCOd.mjs","names":[],"sources":["../../../../libs/one/src/lib/shared/ui/input/ui/text/text.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n input,\n model,\n} from '@angular/core';\nimport { LabelComponent } from '../label';\nimport { TextOutputComponent } from '../../../text-output';\nimport { BaseTextInputComponent } from './base-text';\nimport { IconComponent } from '../../../icon';\nimport { TranslatePipe } from '../../../../pipe';\nimport { Input, InputType, NumberInput } from '../../model/input';\nimport { ValidationError, WithOptionalFieldTree } from '@angular/forms/signals';\n\n/**\n * What this one component draws: a line of text, or the same line typed\n * `number`. WrapperInputComponent has no case for a `number` Field, so it\n * lands here — and the figures a NumberInput carries have to be readable off\n * the config the template already holds.\n */\nexport type TextOrNumberInput = Omit<Input, 'type'> &\n Pick<NumberInput, 'min' | 'max' | 'step'> & {\n type: InputType.TEXT | InputType.NUMBER;\n };\n\n@Component({\n selector: 'm-text-input',\n template: `\n @if (config(); as text) {\n @if (text.label) {\n <m-label\n [for]=\"text.name ?? ''\"\n [placeholder]=\"text.label\"\n [params]=\"text.params\"\n [noTranslate]=\"text.noTranslate\"\n [required]=\"required()\"\n [disabled]=\"disabled()\"\n />\n }\n <div class=\"input-wrapper\">\n @if (text.icon) {\n <m-icon\n [name]=\"text.icon\"\n [color]=\"iconColor()\"\n [one]=\"text.one\"\n />\n }\n @if (text.prefix) {\n <span class=\"input-prefix\">{{ text.prefix }}</span>\n }\n <input\n [id]=\"text.name ?? ''\"\n [attr.data-testid]=\"text.testid ?? (text.name ? text.name + '-input' : null)\"\n [value]=\"value()\"\n #inputElement\n [class.error]=\"showErrors()\"\n [class.has-icon]=\"!!text.icon\"\n [class.has-prefix]=\"!!text.prefix\"\n [disabled]=\"disabled()\"\n [readOnly]=\"readonly() || config()?.readonly\"\n [placeholder]=\"text.placeholder ?? '' | translate: text.params\"\n (input)=\"onInput($event)\"\n (focus)=\"isFocused.set(true)\"\n (blur)=\"isFocused.set(false); touched.set(true)\"\n [type]=\"isNumber() ? 'number' : 'text'\"\n [attr.min]=\"isNumber() ? text.min ?? null : null\"\n [attr.max]=\"isNumber() ? text.max ?? null : null\"\n [attr.step]=\"isNumber() ? text.step ?? null : null\"\n />\n @if (config()?.status; as status) {\n <div class=\"input-indicator\" [class]=\"'input-indicator--' + status\">\n @if (status === 'checking') {\n <span class=\"spinner\"></span>\n } @else if (status === 'available') {\n <m-icon name=\"check\" color=\"success\" />\n }\n </div>\n }\n @if (text.suffix) {\n <span class=\"input-suffix\">{{ text.suffix }}</span>\n }\n </div>\n @if (showErrors() && !hideErrors()) {\n @for (error of errors(); track $index) {\n <m-text-output\n variant=\"footer\"\n color=\"error\"\n [label]=\"error.message\"\n />\n }\n }\n }\n `,\n imports: [LabelComponent, TextOutputComponent, IconComponent, TranslatePipe],\n styleUrl: './text.sass',\n host: {\n '[class]': \"config()?.variant ? 'm-input--' + config()?.variant : ''\",\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TextInputComponent extends BaseTextInputComponent<TextOrNumberInput> {\n public override value = model<string>('');\n public override config = input<Partial<TextOrNumberInput> | undefined>();\n public override required = input<boolean>(false);\n public override disabled = input<boolean>(false);\n public override invalid = input<boolean>(false);\n public override touched = model<boolean>(false);\n public override focused = input<boolean>(false);\n public override errors = input<readonly WithOptionalFieldTree<ValidationError>[]>(\n []\n );\n public override showErrors = computed(() => this.touched() && this.invalid());\n readonly hideErrors = input<boolean>(false);\n\n // A `number` Field draws this same component (WrapperInputComponent has no\n // case of its own for it), so the type it declares decides the element it\n // draws. What *leaves* the field is coerced a level up, in the wrapper: an\n // `<input>` reads its value as text whatever its type, and every other\n // component on this base is a string field.\n protected readonly isNumber = computed(() => {\n const config = this.config();\n return !!config && config.type === InputType.NUMBER;\n });\n\n protected onInput(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.setValue(target?.value ?? '');\n }\n}\n"],"mappings":"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"}
@@ -4,14 +4,14 @@ import { a as OverlayService, c as DeviceService, i as OverlayRef, n as Directio
4
4
  import { t as FileService } from "./magmonium-one-file.service-D39FjShR.mjs";
5
5
  import { C as isLightAppColor, D as readableAppColor, E as normalizeAppColor, O as rebuildLogoGlyph, S as appLogoShadowColor, T as logoGlyphMaskUrl, _ as AppLogoState, a as calculateLuminance, b as LOGO_GLYPH_MAX_BYTES, c as hexToRgb, d as derivePropertyName, f as getProperty, g as APP_THEME_COLOR, h as APP_LOGO_SOURCE, i as deriveOppositeColor, k as ThemeDataService, l as hslToRgb, m as ThemeStore, n as resolvePallet, o as rgbToHex, p as setProperty, r as deriveContrastColor, s as rgbToHsl, t as applyColorsToElement, u as parseColor, v as appThemeColorFactory, w as isReadableOn, x as appColorBrand, y as paintAppColor } from "./magmonium-one-color-utl-Bd80JrEQ.mjs";
6
6
  import "./magmonium-one-theme-Ce9i3H3R.mjs";
7
- import { a as sectionTableColumnWidths, c as AssetUrlPipe, d as MoneyPipe, f as TimeAgoPipe, i as sectionTableColumnId, l as CompactNumberPipe, n as SectionTableSortPipe, o as sectionTableFrozenCount, r as nextSectionTableSort, s as sortSectionTableRows, t as LabelComponent, u as PercentagePipe } from "./magmonium-one-label-B95NhEzQ.mjs";
7
+ import { a as sectionTableColumnId, c as sortSectionTableRows, d as PercentagePipe, f as MoneyPipe, i as nextSectionTableSort, l as AssetUrlPipe, n as SectionTableSortPipe, o as sectionTableColumnWidths, p as TimeAgoPipe, r as defaultSectionTableSort, s as sectionTableFrozenCount, t as LabelComponent, u as CompactNumberPipe } from "./magmonium-one-label-B8WJHiU4.mjs";
8
8
  import { a as SIZE_CONTEXT, c as SHARED_ICONS, i as APP_LOGO_ICON, n as CustomIconClass, o as injectParentSize, r as IconComponent, s as provideSizeContext, t as CustomIconEditComponent } from "./magmonium-one-icon-dAR6gd-q.mjs";
9
9
  import { i as resolveConfigAsset, n as toAttrNumber, r as ConfigComponent, t as toAttrBool } from "./magmonium-one-attribute-value-BobQXKUK.mjs";
10
10
  import { a as isButtonName, c as formatBadgeCount, l as shouldShowBadge, n as SECTION_FORM_CONTEXT, o as ReactiveElementComponent, r as ImgComponent, s as BadgeComponent, t as ButtonComponent } from "./magmonium-one-button-B1KCA8KO.mjs";
11
11
  import { t as MRefDirective } from "./magmonium-one-m-ref-BdP7Kzhk.mjs";
12
12
  import { i as OptionsSourceDirective, n as normalizeAssetOptions, r as presetDefaultOption, t as assetOptions } from "./magmonium-one-options-asset-By4-vPVk.mjs";
13
13
  import { t as InputType } from "./magmonium-one-input-DqHPorA1.mjs";
14
- import { r as PLACED_CHECKBOX, t as CheckboxInputComponent } from "./magmonium-one-checkbox-CbEdjmtz.mjs";
14
+ import { r as PLACED_CHECKBOX, t as CheckboxInputComponent } from "./magmonium-one-checkbox-CyVd_a7p.mjs";
15
15
  import { a as ToolTipDirective, c as DragListItemDirective, d as MarginDirective, f as PaddingDirective, i as PositionDirective, l as DragListDirective, n as stringToColor, o as FileUploadDirective, p as SPACING_INWARD, r as HighlightDirective, s as AutosizeDirective, t as MHeroColorDirective, u as DraggableDirective } from "./magmonium-one-directives-Dbe0pfCf.mjs";
16
16
  import { t as HeaderComponent } from "./magmonium-one-header-CckG0DHr.mjs";
17
17
  import { i as mergeUniqueWith, n as mergeUnique, r as mergeUniqueBy, t as ButtonGroupComponent } from "./magmonium-one-group-BPhM2IIa.mjs";
@@ -20,11 +20,11 @@ import { t as BaseInputComponent } from "./magmonium-one-base-input-KRWQalNW.mjs
20
20
  import { i as getScrollParent, n as activeElementWithin, r as classListSignal, t as BaseTextInputComponent } from "./magmonium-one-base-text-HyEol70U.mjs";
21
21
  import { t as TextOutputComponent } from "./magmonium-one-text-output-Dkx0i1iu.mjs";
22
22
  import { t as BaseCheckboxInputComponent } from "./magmonium-one-base-checkbox-bwMjlhHR.mjs";
23
- import { t as RadioInputComponent } from "./magmonium-one-radio-BsQv0Wof.mjs";
24
- import { t as TextInputComponent } from "./magmonium-one-text-xar0qfsQ.mjs";
25
- import { r as BaseArrayInputComponent, t as MultiRangeInputComponent } from "./magmonium-one-multi-range-BJ8LafrI.mjs";
26
- import { t as RangeInputComponent } from "./magmonium-one-range-C5vn9zlY.mjs";
27
- import { n as DROPDOWN_IMPORTS, r as DROPDOWN_TEMPLATE, t as BaseDropdownComponent } from "./magmonium-one-base-dropdown-B6jwgjjx.mjs";
23
+ import { t as RadioInputComponent } from "./magmonium-one-radio-BanML2y5.mjs";
24
+ import { t as TextInputComponent } from "./magmonium-one-text-DDA0gCOd.mjs";
25
+ import { r as BaseArrayInputComponent, t as MultiRangeInputComponent } from "./magmonium-one-multi-range-mv5rz3uW.mjs";
26
+ import { t as RangeInputComponent } from "./magmonium-one-range-B_3WiQR7.mjs";
27
+ import { n as DROPDOWN_IMPORTS, r as DROPDOWN_TEMPLATE, t as BaseDropdownComponent } from "./magmonium-one-base-dropdown-BgLka4oB.mjs";
28
28
  import { o as isEditableImage, s as outputSize } from "./magmonium-one-image-frame-BTSaUSAi.mjs";
29
29
  import * as i0 from "@angular/core";
30
30
  import { ApplicationRef, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, DOCUMENT, DestroyRef, Directive, ElementRef, EventEmitter, HostAttributeToken, HostBinding, HostListener, Injectable, InjectionToken, Injector, Input, Output, TemplateRef, ViewChild, ViewContainerRef, ViewEncapsulation, afterEveryRender, afterNextRender, afterRenderEffect, computed, contentChild, contentChildren, createComponent, effect, forwardRef, inject, input, inputBinding, linkedSignal, makeEnvironmentProviders, model, numberAttribute, output, outputBinding, provideAppInitializer, provideBrowserGlobalErrorListeners, provideZonelessChangeDetection, reflectComponentType, runInInjectionContext, signal, twoWayBinding, untracked, viewChild, viewChildren } from "@angular/core";
@@ -744,7 +744,7 @@ var SectionFormItemComponent = class SectionFormItemComponent extends ConfigComp
744
744
  try {
745
745
  switch (type) {
746
746
  case InputType.RADIO: {
747
- const { RadioInputComponent } = await import("./magmonium-one-radio-BsQv0Wof.mjs").then((n) => n.n);
747
+ const { RadioInputComponent } = await import("./magmonium-one-radio-BanML2y5.mjs").then((n) => n.n);
748
748
  this.createDynamicComponent(seq, RadioInputComponent);
749
749
  break;
750
750
  }
@@ -759,12 +759,12 @@ var SectionFormItemComponent = class SectionFormItemComponent extends ConfigComp
759
759
  break;
760
760
  }
761
761
  case InputType.PASSWORD: {
762
- const { PasswordInputComponent } = await import("./magmonium-one-password-Bsv1wUIJ.mjs");
762
+ const { PasswordInputComponent } = await import("./magmonium-one-password-CTnJ9M7d.mjs");
763
763
  this.createDynamicComponent(seq, PasswordInputComponent);
764
764
  break;
765
765
  }
766
766
  case InputType.OTP: {
767
- const { OtpInputComponent } = await import("./magmonium-one-otp-BOiv-9eT.mjs");
767
+ const { OtpInputComponent } = await import("./magmonium-one-otp-BlP0t9w1.mjs");
768
768
  this.createDynamicComponent(seq, OtpInputComponent);
769
769
  break;
770
770
  }
@@ -774,7 +774,7 @@ var SectionFormItemComponent = class SectionFormItemComponent extends ConfigComp
774
774
  break;
775
775
  }
776
776
  case InputType.CHECKBOX: {
777
- const { CheckboxInputComponent } = await import("./magmonium-one-checkbox-CbEdjmtz.mjs").then((n) => n.n);
777
+ const { CheckboxInputComponent } = await import("./magmonium-one-checkbox-CyVd_a7p.mjs").then((n) => n.n);
778
778
  this.createDynamicComponent(seq, CheckboxInputComponent, [], true);
779
779
  break;
780
780
  }
@@ -789,12 +789,12 @@ var SectionFormItemComponent = class SectionFormItemComponent extends ConfigComp
789
789
  break;
790
790
  }
791
791
  case InputType.RANGE: {
792
- const { RangeInputComponent } = await import("./magmonium-one-range-C5vn9zlY.mjs").then((n) => n.n);
792
+ const { RangeInputComponent } = await import("./magmonium-one-range-B_3WiQR7.mjs").then((n) => n.n);
793
793
  this.createDynamicComponent(seq, RangeInputComponent);
794
794
  break;
795
795
  }
796
796
  case InputType.MULTI_RANGE: {
797
- const { MultiRangeInputComponent } = await import("./magmonium-one-multi-range-BJ8LafrI.mjs").then((n) => n.n);
797
+ const { MultiRangeInputComponent } = await import("./magmonium-one-multi-range-mv5rz3uW.mjs").then((n) => n.n);
798
798
  this.createDynamicComponent(seq, MultiRangeInputComponent);
799
799
  break;
800
800
  }
@@ -845,7 +845,7 @@ var SectionFormItemComponent = class SectionFormItemComponent extends ConfigComp
845
845
  break;
846
846
  }
847
847
  default: {
848
- const { TextInputComponent } = await import("./magmonium-one-text-xar0qfsQ.mjs").then((n) => n.n);
848
+ const { TextInputComponent } = await import("./magmonium-one-text-DDA0gCOd.mjs").then((n) => n.n);
849
849
  this.createDynamicComponent(seq, TextInputComponent);
850
850
  break;
851
851
  }
@@ -17303,8 +17303,8 @@ var SectionTableComponent = class SectionTableComponent extends ConfigComponent
17303
17303
  loading = input(false, ...ngDevMode ? [{ debugName: "loading" }] : /* istanbul ignore next */ []);
17304
17304
  sortChange = output();
17305
17305
  tableInitialized = output();
17306
- sort = signal(null, ...ngDevMode ? [{ debugName: "sort" }] : /* istanbul ignore next */ []);
17307
17306
  columns = computed(() => this.config()?.columns ?? [], ...ngDevMode ? [{ debugName: "columns" }] : /* istanbul ignore next */ []);
17307
+ sort = linkedSignal(() => defaultSectionTableSort(this.columns()), ...ngDevMode ? [{ debugName: "sort" }] : /* istanbul ignore next */ []);
17308
17308
  resolvedSticky = computed(() => this.sticky() ?? this.config()?.sticky ?? false, ...ngDevMode ? [{ debugName: "resolvedSticky" }] : /* istanbul ignore next */ []);
17309
17309
  resolvedMargin = computed(() => this.margin() ?? this.config()?.margin ?? false, ...ngDevMode ? [{ debugName: "resolvedMargin" }] : /* istanbul ignore next */ []);
17310
17310
  resolvedVariant = computed(() => this.variant() ?? this.config()?.variant ?? "default", ...ngDevMode ? [{ debugName: "resolvedVariant" }] : /* istanbul ignore next */ []);
@@ -21993,7 +21993,7 @@ var WrapperInputComponent = class WrapperInputComponent extends ConfigComponent
21993
21993
  const seq = ++this.dynamicSeq;
21994
21994
  switch (this.config()?.type) {
21995
21995
  case InputType.RADIO: {
21996
- const { RadioInputComponent } = await import("./magmonium-one-radio-BsQv0Wof.mjs").then((n) => n.n);
21996
+ const { RadioInputComponent } = await import("./magmonium-one-radio-BanML2y5.mjs").then((n) => n.n);
21997
21997
  this.createDynamicComponent(seq, RadioInputComponent);
21998
21998
  break;
21999
21999
  }
@@ -22008,12 +22008,12 @@ var WrapperInputComponent = class WrapperInputComponent extends ConfigComponent
22008
22008
  break;
22009
22009
  }
22010
22010
  case InputType.PASSWORD: {
22011
- const { PasswordInputComponent } = await import("./magmonium-one-password-Bsv1wUIJ.mjs");
22011
+ const { PasswordInputComponent } = await import("./magmonium-one-password-CTnJ9M7d.mjs");
22012
22012
  this.createDynamicComponent(seq, PasswordInputComponent);
22013
22013
  break;
22014
22014
  }
22015
22015
  case InputType.OTP: {
22016
- const { OtpInputComponent } = await import("./magmonium-one-otp-BOiv-9eT.mjs");
22016
+ const { OtpInputComponent } = await import("./magmonium-one-otp-BlP0t9w1.mjs");
22017
22017
  this.createDynamicComponent(seq, OtpInputComponent);
22018
22018
  break;
22019
22019
  }
@@ -22023,7 +22023,7 @@ var WrapperInputComponent = class WrapperInputComponent extends ConfigComponent
22023
22023
  break;
22024
22024
  }
22025
22025
  case InputType.CHECKBOX: {
22026
- const { CheckboxInputComponent } = await import("./magmonium-one-checkbox-CbEdjmtz.mjs").then((n) => n.n);
22026
+ const { CheckboxInputComponent } = await import("./magmonium-one-checkbox-CyVd_a7p.mjs").then((n) => n.n);
22027
22027
  this.createDynamicComponent(seq, CheckboxInputComponent, [], true);
22028
22028
  break;
22029
22029
  }
@@ -22038,12 +22038,12 @@ var WrapperInputComponent = class WrapperInputComponent extends ConfigComponent
22038
22038
  break;
22039
22039
  }
22040
22040
  case InputType.RANGE: {
22041
- const { RangeInputComponent } = await import("./magmonium-one-range-C5vn9zlY.mjs").then((n) => n.n);
22041
+ const { RangeInputComponent } = await import("./magmonium-one-range-B_3WiQR7.mjs").then((n) => n.n);
22042
22042
  this.createDynamicComponent(seq, RangeInputComponent);
22043
22043
  break;
22044
22044
  }
22045
22045
  case InputType.MULTI_RANGE: {
22046
- const { MultiRangeInputComponent } = await import("./magmonium-one-multi-range-BJ8LafrI.mjs").then((n) => n.n);
22046
+ const { MultiRangeInputComponent } = await import("./magmonium-one-multi-range-mv5rz3uW.mjs").then((n) => n.n);
22047
22047
  this.createDynamicComponent(seq, MultiRangeInputComponent);
22048
22048
  break;
22049
22049
  }
@@ -22094,7 +22094,7 @@ var WrapperInputComponent = class WrapperInputComponent extends ConfigComponent
22094
22094
  break;
22095
22095
  }
22096
22096
  default: {
22097
- const { TextInputComponent } = await import("./magmonium-one-text-xar0qfsQ.mjs").then((n) => n.n);
22097
+ const { TextInputComponent } = await import("./magmonium-one-text-DDA0gCOd.mjs").then((n) => n.n);
22098
22098
  this.createDynamicComponent(seq, TextInputComponent);
22099
22099
  break;
22100
22100
  }
@@ -24481,7 +24481,7 @@ var FileUploadInputComponent = class FileUploadInputComponent extends BaseInputC
24481
24481
  openEditor = async (file, size) => {
24482
24482
  const modalStore = this.modalStore;
24483
24483
  if (!modalStore) return void 0;
24484
- const { ImageEditorComponent } = await import("./magmonium-one-image-editor-C0vNiH0J.mjs");
24484
+ const { ImageEditorComponent } = await import("./magmonium-one-image-editor-CKx7BRVF.mjs");
24485
24485
  const ratio = String(this.config()?.ratio ?? "");
24486
24486
  return new Promise((resolve) => {
24487
24487
  const modalRef = new ModalRef();