@magmonium/one 0.4.30 → 0.4.32

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 (196) hide show
  1. package/assets/button_groups/nav_user_actions.json +1 -0
  2. package/assets/button_groups/notification_filter.json +2 -13
  3. package/assets/buttons/nav_user_edit_profile.json +5 -0
  4. package/assets/docs/en/app-release.md +0 -11
  5. package/assets/i18n/af.json +10 -2
  6. package/assets/i18n/am.json +10 -1
  7. package/assets/i18n/ar.json +10 -2
  8. package/assets/i18n/as.json +11 -2
  9. package/assets/i18n/az.json +11 -2
  10. package/assets/i18n/ba.json +8 -0
  11. package/assets/i18n/be.json +11 -2
  12. package/assets/i18n/bg.json +11 -2
  13. package/assets/i18n/bn.json +11 -2
  14. package/assets/i18n/br.json +7 -0
  15. package/assets/i18n/bs.json +10 -2
  16. package/assets/i18n/ca.json +10 -2
  17. package/assets/i18n/ceb.json +9 -2
  18. package/assets/i18n/cnr.json +8 -0
  19. package/assets/i18n/co.json +7 -1
  20. package/assets/i18n/cs.json +9 -2
  21. package/assets/i18n/cy.json +11 -2
  22. package/assets/i18n/da.json +7 -1
  23. package/assets/i18n/de.json +8 -2
  24. package/assets/i18n/doi.json +9 -0
  25. package/assets/i18n/el.json +10 -2
  26. package/assets/i18n/en.json +21 -4
  27. package/assets/i18n/eo.json +9 -2
  28. package/assets/i18n/es.json +9 -2
  29. package/assets/i18n/et.json +8 -2
  30. package/assets/i18n/eu.json +9 -2
  31. package/assets/i18n/fa.json +10 -2
  32. package/assets/i18n/fi.json +9 -2
  33. package/assets/i18n/fr.json +9 -2
  34. package/assets/i18n/fy.json +6 -2
  35. package/assets/i18n/ga.json +10 -2
  36. package/assets/i18n/gd.json +9 -2
  37. package/assets/i18n/gl.json +8 -1
  38. package/assets/i18n/gu.json +11 -2
  39. package/assets/i18n/ha.json +7 -1
  40. package/assets/i18n/haw.json +8 -2
  41. package/assets/i18n/he.json +8 -0
  42. package/assets/i18n/hi.json +10 -2
  43. package/assets/i18n/hmn.json +6 -2
  44. package/assets/i18n/hr.json +10 -2
  45. package/assets/i18n/hu.json +10 -2
  46. package/assets/i18n/hy.json +11 -2
  47. package/assets/i18n/id.json +10 -2
  48. package/assets/i18n/ig.json +8 -1
  49. package/assets/i18n/ilo.json +6 -0
  50. package/assets/i18n/is.json +10 -2
  51. package/assets/i18n/it.json +9 -2
  52. package/assets/i18n/iw.json +9 -1
  53. package/assets/i18n/ja.json +8 -1
  54. package/assets/i18n/jw.json +8 -2
  55. package/assets/i18n/ka.json +10 -2
  56. package/assets/i18n/kk.json +10 -2
  57. package/assets/i18n/km.json +10 -2
  58. package/assets/i18n/kn.json +11 -2
  59. package/assets/i18n/ko.json +8 -1
  60. package/assets/i18n/kok.json +9 -0
  61. package/assets/i18n/ku.json +10 -2
  62. package/assets/i18n/ky.json +9 -1
  63. package/assets/i18n/la.json +6 -1
  64. package/assets/i18n/lb.json +6 -2
  65. package/assets/i18n/lo.json +10 -2
  66. package/assets/i18n/lt.json +10 -2
  67. package/assets/i18n/lv.json +10 -2
  68. package/assets/i18n/mai.json +9 -0
  69. package/assets/i18n/mg.json +8 -2
  70. package/assets/i18n/mi.json +8 -2
  71. package/assets/i18n/mk.json +10 -2
  72. package/assets/i18n/ml.json +11 -2
  73. package/assets/i18n/mn.json +10 -2
  74. package/assets/i18n/mr.json +11 -2
  75. package/assets/i18n/ms.json +9 -2
  76. package/assets/i18n/mt.json +9 -2
  77. package/assets/i18n/my.json +10 -2
  78. package/assets/i18n/ne.json +10 -2
  79. package/assets/i18n/nl.json +6 -2
  80. package/assets/i18n/no.json +8 -2
  81. package/assets/i18n/ny.json +9 -2
  82. package/assets/i18n/or.json +10 -1
  83. package/assets/i18n/pa.json +11 -2
  84. package/assets/i18n/pl.json +8 -2
  85. package/assets/i18n/ps.json +8 -1
  86. package/assets/i18n/pt.json +9 -2
  87. package/assets/i18n/ro.json +9 -2
  88. package/assets/i18n/ru.json +9 -2
  89. package/assets/i18n/sa.json +9 -0
  90. package/assets/i18n/sat.json +9 -0
  91. package/assets/i18n/sd.json +11 -2
  92. package/assets/i18n/si.json +10 -2
  93. package/assets/i18n/sk.json +6 -1
  94. package/assets/i18n/sl.json +10 -2
  95. package/assets/i18n/sm.json +7 -1
  96. package/assets/i18n/sn.json +6 -2
  97. package/assets/i18n/so.json +8 -1
  98. package/assets/i18n/sq.json +10 -2
  99. package/assets/i18n/sr.json +10 -2
  100. package/assets/i18n/st.json +8 -2
  101. package/assets/i18n/su.json +8 -2
  102. package/assets/i18n/sv.json +8 -2
  103. package/assets/i18n/sw.json +10 -2
  104. package/assets/i18n/ta.json +11 -2
  105. package/assets/i18n/te.json +11 -2
  106. package/assets/i18n/tg.json +11 -2
  107. package/assets/i18n/th.json +10 -1
  108. package/assets/i18n/tl.json +8 -2
  109. package/assets/i18n/tr.json +10 -2
  110. package/assets/i18n/uk.json +11 -2
  111. package/assets/i18n/ur.json +11 -2
  112. package/assets/i18n/uz.json +10 -2
  113. package/assets/i18n/vi.json +10 -1
  114. package/assets/i18n/xh.json +11 -2
  115. package/assets/i18n/yi.json +10 -1
  116. package/assets/i18n/yo.json +9 -1
  117. package/assets/i18n/zh.json +9 -1
  118. package/assets/i18n/zu.json +11 -2
  119. package/assets/index.json +1 -1
  120. package/fesm2022/magmonium-one-attribute-value-DMI0yJpL.mjs +255 -0
  121. package/fesm2022/magmonium-one-attribute-value-DMI0yJpL.mjs.map +1 -0
  122. package/fesm2022/magmonium-one-base-checkbox-C9dvZ2IH.mjs +77 -0
  123. package/fesm2022/magmonium-one-base-checkbox-C9dvZ2IH.mjs.map +1 -0
  124. package/fesm2022/magmonium-one-base-dropdown-U-cWl3p9.mjs +604 -0
  125. package/fesm2022/magmonium-one-base-dropdown-U-cWl3p9.mjs.map +1 -0
  126. package/fesm2022/magmonium-one-base-input-CLBOTOUs.mjs +183 -0
  127. package/fesm2022/magmonium-one-base-input-CLBOTOUs.mjs.map +1 -0
  128. package/fesm2022/magmonium-one-base-text-Zb0oLNRX.mjs +94 -0
  129. package/fesm2022/magmonium-one-base-text-Zb0oLNRX.mjs.map +1 -0
  130. package/fesm2022/magmonium-one-button-Bwzaxxn3.mjs +1281 -0
  131. package/fesm2022/magmonium-one-button-Bwzaxxn3.mjs.map +1 -0
  132. package/fesm2022/magmonium-one-checkbox-CPQ9m291.mjs +365 -0
  133. package/fesm2022/magmonium-one-checkbox-CPQ9m291.mjs.map +1 -0
  134. package/fesm2022/magmonium-one-color-utl-CAbZLKB5.mjs +449 -0
  135. package/fesm2022/magmonium-one-color-utl-CAbZLKB5.mjs.map +1 -0
  136. package/fesm2022/magmonium-one-directives-BVKX77zM.mjs +1285 -0
  137. package/fesm2022/magmonium-one-directives-BVKX77zM.mjs.map +1 -0
  138. package/fesm2022/magmonium-one-file.service-Bo06pU3_.mjs +65 -0
  139. package/fesm2022/magmonium-one-file.service-Bo06pU3_.mjs.map +1 -0
  140. package/fesm2022/magmonium-one-group-D4yYrVP3.mjs +428 -0
  141. package/fesm2022/magmonium-one-group-D4yYrVP3.mjs.map +1 -0
  142. package/fesm2022/magmonium-one-header-DmN8M1a3.mjs +380 -0
  143. package/fesm2022/magmonium-one-header-DmN8M1a3.mjs.map +1 -0
  144. package/fesm2022/magmonium-one-icon-Ep14YeRY.mjs +833 -0
  145. package/fesm2022/magmonium-one-icon-Ep14YeRY.mjs.map +1 -0
  146. package/fesm2022/magmonium-one-image-editor-BX4eNd4u.mjs +438 -0
  147. package/fesm2022/magmonium-one-image-editor-BX4eNd4u.mjs.map +1 -0
  148. package/fesm2022/magmonium-one-image-frame-BTSaUSAi.mjs +116 -0
  149. package/fesm2022/magmonium-one-image-frame-BTSaUSAi.mjs.map +1 -0
  150. package/fesm2022/magmonium-one-input-DqHPorA1.mjs +39 -0
  151. package/fesm2022/magmonium-one-input-DqHPorA1.mjs.map +1 -0
  152. package/fesm2022/magmonium-one-label-D2gjTbKX.mjs +574 -0
  153. package/fesm2022/magmonium-one-label-D2gjTbKX.mjs.map +1 -0
  154. package/fesm2022/magmonium-one-m-ref-Bq0gQbKE.mjs +147 -0
  155. package/fesm2022/magmonium-one-m-ref-Bq0gQbKE.mjs.map +1 -0
  156. package/fesm2022/magmonium-one-menu-BM9f2knw.mjs +887 -0
  157. package/fesm2022/magmonium-one-menu-BM9f2knw.mjs.map +1 -0
  158. package/fesm2022/magmonium-one-multi-range-a3ZVTy7i.mjs +458 -0
  159. package/fesm2022/magmonium-one-multi-range-a3ZVTy7i.mjs.map +1 -0
  160. package/fesm2022/magmonium-one-options-asset-CDEXIif6.mjs +97 -0
  161. package/fesm2022/magmonium-one-options-asset-CDEXIif6.mjs.map +1 -0
  162. package/fesm2022/magmonium-one-otp-DO4oTeSK.mjs +261 -0
  163. package/fesm2022/magmonium-one-otp-DO4oTeSK.mjs.map +1 -0
  164. package/fesm2022/magmonium-one-password-D3oTo41c.mjs +217 -0
  165. package/fesm2022/magmonium-one-password-D3oTo41c.mjs.map +1 -0
  166. package/fesm2022/magmonium-one-radio-CkaWESS3.mjs +111 -0
  167. package/fesm2022/magmonium-one-radio-CkaWESS3.mjs.map +1 -0
  168. package/fesm2022/magmonium-one-range-D_WEKrli.mjs +216 -0
  169. package/fesm2022/magmonium-one-range-D_WEKrli.mjs.map +1 -0
  170. package/fesm2022/magmonium-one-rolldown-runtime-DpJrqANO.mjs +11 -0
  171. package/fesm2022/magmonium-one-selector-BowevmOd.mjs +1065 -0
  172. package/fesm2022/magmonium-one-selector-BowevmOd.mjs.map +1 -0
  173. package/fesm2022/magmonium-one-size-converter-BfT0Aw0g.mjs +1060 -0
  174. package/fesm2022/magmonium-one-size-converter-BfT0Aw0g.mjs.map +1 -0
  175. package/fesm2022/magmonium-one-text-B4xKn-EQ.mjs +406 -0
  176. package/fesm2022/magmonium-one-text-B4xKn-EQ.mjs.map +1 -0
  177. package/fesm2022/magmonium-one-text-output-CfVeqYM7.mjs +296 -0
  178. package/fesm2022/magmonium-one-text-output-CfVeqYM7.mjs.map +1 -0
  179. package/fesm2022/magmonium-one-theme-Xgsx8bJs.mjs +1 -0
  180. package/fesm2022/magmonium-one-toggle-D2XEbN-b.mjs +231 -0
  181. package/fesm2022/magmonium-one-toggle-D2XEbN-b.mjs.map +1 -0
  182. package/fesm2022/magmonium-one.mjs +49250 -2
  183. package/fesm2022/magmonium-one.mjs.map +1 -1
  184. package/package.json +8 -8
  185. package/types/magmonium-one.d.ts +13909 -9533
  186. package/assets/menu/user_header.json +0 -27
  187. package/fesm2022/magmonium-one-image-editor-QPOy7XQt.mjs +0 -290
  188. package/fesm2022/magmonium-one-image-editor-QPOy7XQt.mjs.map +0 -1
  189. package/fesm2022/magmonium-one-magmonium-one-BTi-rHpF.mjs +0 -41583
  190. package/fesm2022/magmonium-one-magmonium-one-BTi-rHpF.mjs.map +0 -1
  191. package/fesm2022/magmonium-one-otp-BcNCgGpz.mjs +0 -201
  192. package/fesm2022/magmonium-one-otp-BcNCgGpz.mjs.map +0 -1
  193. package/fesm2022/magmonium-one-password-BDcSzmV_.mjs +0 -105
  194. package/fesm2022/magmonium-one-password-BDcSzmV_.mjs.map +0 -1
  195. package/fesm2022/magmonium-one-toggle-bLWTwEHE.mjs +0 -62
  196. package/fesm2022/magmonium-one-toggle-bLWTwEHE.mjs.map +0 -1
@@ -0,0 +1,111 @@
1
+ import { t as __exportAll } from "./magmonium-one-rolldown-runtime-DpJrqANO.mjs";
2
+ import { t as LabelComponent } from "./magmonium-one-label-D2gjTbKX.mjs";
3
+ import { t as BaseCheckboxInputComponent } from "./magmonium-one-base-checkbox-C9dvZ2IH.mjs";
4
+ import * as i0 from "@angular/core";
5
+ import { ChangeDetectionStrategy, Component, computed } from "@angular/core";
6
+ var radio_exports = /* @__PURE__ */ __exportAll({ RadioInputComponent: () => RadioInputComponent });
7
+ var RadioInputComponent = class RadioInputComponent extends BaseCheckboxInputComponent {
8
+ radioConfig = computed(() => this.config(), ...ngDevMode ? [{ debugName: "radioConfig" }] : /* istanbul ignore next */ []);
9
+ onChange(event) {
10
+ const target = event.target;
11
+ this.setValue(target?.checked ?? false);
12
+ }
13
+ static ɵfac = i0.ɵɵngDeclareFactory({
14
+ minVersion: "12.0.0",
15
+ version: "22.2.1",
16
+ ngImport: i0,
17
+ type: RadioInputComponent,
18
+ deps: null,
19
+ target: i0.ɵɵFactoryTarget.Component
20
+ });
21
+ static ɵcmp = i0.ɵɵngDeclareComponent({
22
+ minVersion: "17.0.0",
23
+ version: "22.2.1",
24
+ type: RadioInputComponent,
25
+ isStandalone: true,
26
+ selector: "m-radio",
27
+ usesInheritance: true,
28
+ ngImport: i0,
29
+ template: `
30
+ @if (radioConfig(); as radio) {
31
+ <div class="radio">
32
+ <input
33
+ [checked]="checked()"
34
+ #inputElement
35
+ [class.error]="showErrors()"
36
+ [disabled]="disabled()"
37
+ (change)="onChange($event)"
38
+ type="radio"
39
+ [name]="radio.name"
40
+ [id]="radio.id"
41
+ />
42
+ <m-label
43
+ [for]="radio.id"
44
+ [placeholder]="radio.label"
45
+ [params]="radio.params"
46
+ [required]="required()"
47
+ [disabled]="disabled()"
48
+ />
49
+ </div>
50
+ }
51
+ `,
52
+ isInline: true,
53
+ styles: ["@keyframes toggle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes thumb-slide{0%{transform:translate(0) scale(1)}50%{transform:translate(.3em) scale(.9)}to{transform:translate(.6em) scale(1)}}:host{display:inline-block}.checkbox{--m-checkbox-input-color: var(--m-input-color, var(--m-focus));display:inline-flex;align-items:center;gap:calc(var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25)) * .375);cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.checkbox input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;position:relative;width:var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25));height:var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25));background:var(--m-checkbox-background, var(--m-text-input-background, color-mix(in srgb, var(--m-focus) 2%, var(--m-background))));border-radius:var(--m-checkbox-radius, var(--m-input-radius, .35rem));border:var(--m-input-border-width, 1px) solid var(--m-text-input-border, color-mix(in srgb, var(--m-text) 18%, var(--m-background)));cursor:pointer;outline:none;box-sizing:border-box;flex-shrink:0;margin:0;box-shadow:none;transition:var(--m-checkbox-transition, var(--m-text-input-transition, border-color .2s ease, box-shadow .2s ease, background-color .2s ease))}.checkbox input[type=checkbox]:after{content:\"\";position:absolute;top:50%;left:50%;transform:translate(-50%,-60%) scale(0) rotate(-45deg);width:calc(var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25)) * .45);height:calc(var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25)) * .25);border-left:calc(var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25)) * .12) solid #ffffff;border-bottom:calc(var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25)) * .12) solid #ffffff;transition:transform .2s ease;box-shadow:none}.checkbox{--m-label-margin: 0}.checkbox input[type=checkbox]:hover:not(:disabled):not(:checked){border-color:var(--m-text-input-hover-border, color-mix(in srgb, var(--m-focus) 55%, var(--m-background)));background:var(--m-text-input-hover-background, color-mix(in srgb, var(--m-focus) 4%, var(--m-background)));box-shadow:none}.checkbox input[type=checkbox]:focus,.checkbox input[type=checkbox]:focus-visible{border-color:var(--m-text-input-focus-border, var(--m-focus));box-shadow:none;outline:none}.checkbox input[type=checkbox]:active:not(:disabled):after{transform:translate(-50%,-60%) scale(.85) rotate(-45deg)}.checkbox input[type=checkbox]:checked{border-color:var(--m-checkbox-checked-border, var(--m-focus));background:var(--m-checkbox-checked-background, var(--m-focus));background-color:var(--m-checkbox-checked-background, var(--m-focus));box-shadow:none}.checkbox input[type=checkbox]:checked:after{transform:translate(-50%,-60%) scale(1) rotate(-45deg);border-left-color:#fff;border-bottom-color:#fff;opacity:1}.checkbox input[type=checkbox]:checked:hover:not(:disabled){background:color-mix(in srgb,var(--m-checkbox-checked-background, var(--m-focus)) 88%,black 12%);background-color:color-mix(in srgb,var(--m-checkbox-checked-background, var(--m-focus)) 88%,black 12%);border-color:color-mix(in srgb,var(--m-checkbox-checked-border, var(--m-focus)) 88%,black 12%);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-focus) 18%,transparent)}.checkbox input[type=checkbox]:checked:focus,.checkbox input[type=checkbox]:checked:focus-visible{box-shadow:none}.checkbox input[type=checkbox]:indeterminate{border-color:var(--m-checkbox-checked-border, var(--m-focus));background:var(--m-checkbox-checked-background, var(--m-focus));background-color:var(--m-checkbox-checked-background, var(--m-focus))}.checkbox input[type=checkbox]:indeterminate:after{transform:translate(-50%,-50%) scale(1) rotate(0);width:calc(var(--input-size, 1em) * .5);height:0;border-left:none;border-bottom:calc(var(--input-size, 1em) * .12) solid #ffffff}.checkbox input[type=checkbox]:indeterminate:hover:not(:disabled){background:color-mix(in srgb,var(--m-checkbox-checked-background, var(--m-focus)) 88%,black 12%);background-color:color-mix(in srgb,var(--m-checkbox-checked-background, var(--m-focus)) 88%,black 12%);border-color:color-mix(in srgb,var(--m-checkbox-checked-border, var(--m-focus)) 88%,black 12%);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-focus) 18%,transparent)}.checkbox input[type=checkbox]:indeterminate:focus,.checkbox input[type=checkbox]:indeterminate:focus-visible{box-shadow:none}.checkbox input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed;border-color:color-mix(in srgb,var(--m-text) 12%,var(--m-background))}.checkbox input[type=checkbox]:disabled:checked:after{opacity:.7}.checkbox input[type=checkbox].error{border-color:var(--m-error)}.checkbox{min-height:var(--input-size, 1em)}.radio{--m-radio-input-color: var(--m-input-color, var(--m-focus));display:inline-flex;align-items:center;gap:calc(var(--m-radio-size, calc(var(--input-size, 1em) * 1.25)) * .375);cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.radio input[type=radio]{appearance:none;-webkit-appearance:none;-moz-appearance:none;margin:0;padding:0;position:relative;width:var(--m-radio-size, calc(var(--input-size, 1em) * 1.25));height:var(--m-radio-size, calc(var(--input-size, 1em) * 1.25));flex-shrink:0;box-sizing:border-box;background:var(--m-radio-background, var(--m-text-input-background, color-mix(in srgb, var(--m-focus) 2%, var(--m-background))));border-radius:50%;border:var(--m-input-border-width, 1px) solid var(--m-text-input-border, color-mix(in srgb, var(--m-text) 18%, var(--m-background)));cursor:pointer;outline:none;box-shadow:none;transition:var(--m-radio-transition, var(--m-text-input-transition, border-color .2s ease, box-shadow .2s ease, background-color .2s ease))}.radio input[type=radio]:after{content:\"\";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);width:calc(var(--m-radio-size, calc(var(--input-size, 1em) * 1.25)) * .45);height:calc(var(--m-radio-size, calc(var(--input-size, 1em) * 1.25)) * .45);background-color:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:none}.radio{--m-label-margin: 0}.radio input[type=radio]:hover:not(:disabled):not(:checked){border-color:var(--m-text-input-hover-border, color-mix(in srgb, var(--m-focus) 55%, var(--m-background)));background:var(--m-text-input-hover-background, color-mix(in srgb, var(--m-focus) 4%, var(--m-background)));box-shadow:none}.radio input[type=radio]:focus,.radio input[type=radio]:focus-visible{border-color:var(--m-text-input-focus-border, var(--m-focus));box-shadow:none;outline:none}.radio input[type=radio]:active:not(:disabled):after{transform:translate(-50%,-50%) scale(.85)}.radio input[type=radio]:checked{border-color:var(--m-radio-checked-border, var(--m-focus));background:var(--m-radio-checked-background, var(--m-focus));background-color:var(--m-radio-checked-background, var(--m-focus));box-shadow:none}.radio input[type=radio]:checked:after{transform:translate(-50%,-50%) scale(1);background-color:#fff;opacity:1}.radio input[type=radio]:checked:hover:not(:disabled){background:color-mix(in srgb,var(--m-radio-checked-background, var(--m-focus)) 88%,black 12%);background-color:color-mix(in srgb,var(--m-radio-checked-background, var(--m-focus)) 88%,black 12%);border-color:color-mix(in srgb,var(--m-radio-checked-border, var(--m-focus)) 88%,black 12%);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-focus) 18%,transparent)}.radio input[type=radio]:checked:focus,.radio input[type=radio]:checked:focus-visible{box-shadow:none}.radio input[type=radio]:disabled{opacity:.5;cursor:not-allowed;border-color:color-mix(in srgb,var(--m-text) 12%,var(--m-background))}.radio input[type=radio]:disabled:checked:after{opacity:.7}.radio input[type=radio].error{border-color:var(--m-error)}.radio{min-height:var(--input-size, 1em)}:host-context(.section-form-item__input),:host-context(.m-dynamic-input){display:contents}:host-context(.section-form-item__input) .checkbox,:host-context(.section-form-item__input) .radio,:host-context(.m-dynamic-input) .checkbox,:host-context(.m-dynamic-input) .radio{display:flex;align-items:center;width:100%;height:calc(var(--input-size, 1em) * 2.25);min-height:calc(var(--input-size, 1em) * 2.25);padding-block:0;padding-inline:0;background:transparent;border:none;box-shadow:none;--m-label-margin: 0;--m-label-font-size: var(--m-label-font-size, calc(var(--input-size, 1em) * .875));gap:var(--m-checkbox-input-gap, .375em )}:host-context(.section-form-item__input) .checkbox input[type=checkbox],:host-context(.section-form-item__input) .checkbox input[type=radio],:host-context(.section-form-item__input) .radio input[type=checkbox],:host-context(.section-form-item__input) .radio input[type=radio],:host-context(.m-dynamic-input) .checkbox input[type=checkbox],:host-context(.m-dynamic-input) .checkbox input[type=radio],:host-context(.m-dynamic-input) .radio input[type=checkbox],:host-context(.m-dynamic-input) .radio input[type=radio]{flex:0 0 auto;margin:0;transform:none;width:var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25)));height:var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25)));border-width:var(--m-input-border-width, 1px);border-style:solid;border-color:var(--m-text-input-border, color-mix(in srgb, var(--m-text) 18%, var(--m-background)));background:var(--m-checkbox-square-background, var(--m-text-input-background, color-mix(in srgb, var(--m-focus) 2%, var(--m-background))));box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;cursor:pointer;outline:none;box-sizing:border-box;position:relative;transition:var(--m-text-input-transition, border-color .2s ease, box-shadow .2s ease, background-color .2s ease)}:host-context(.section-form-item__input) .checkbox input[type=checkbox],:host-context(.section-form-item__input) .radio input[type=checkbox],:host-context(.m-dynamic-input) .checkbox input[type=checkbox],:host-context(.m-dynamic-input) .radio input[type=checkbox]{border-radius:var(--m-checkbox-radius, var(--m-input-radius, .35rem))}:host-context(.section-form-item__input) .checkbox input[type=radio],:host-context(.section-form-item__input) .radio input[type=radio],:host-context(.m-dynamic-input) .checkbox input[type=radio],:host-context(.m-dynamic-input) .radio input[type=radio]{border-radius:50%}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:after,:host-context(.section-form-item__input) .radio input[type=checkbox]:after,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:after,:host-context(.m-dynamic-input) .radio input[type=checkbox]:after{content:\"\";position:absolute;top:50%;left:50%;transform:translate(-50%,-60%) scale(0) rotate(-45deg);width:calc(var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))) * .45);height:calc(var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))) * .25);border-left:calc(var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))) * .12) solid #ffffff;border-bottom:calc(var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))) * .12) solid #ffffff;box-shadow:none;transition:transform .2s ease}:host-context(.section-form-item__input) .checkbox input[type=radio]:after,:host-context(.section-form-item__input) .radio input[type=radio]:after,:host-context(.m-dynamic-input) .checkbox input[type=radio]:after,:host-context(.m-dynamic-input) .radio input[type=radio]:after{content:\"\";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);width:calc(var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))) * .45);height:calc(var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))) * .45);border-radius:50%;background-color:#fff;box-shadow:none;transition:transform .2s ease}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:hover:not(:disabled),:host-context(.section-form-item__input) .checkbox input[type=radio]:hover:not(:disabled),:host-context(.section-form-item__input) .radio input[type=checkbox]:hover:not(:disabled),:host-context(.section-form-item__input) .radio input[type=radio]:hover:not(:disabled),:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:hover:not(:disabled),:host-context(.m-dynamic-input) .checkbox input[type=radio]:hover:not(:disabled),:host-context(.m-dynamic-input) .radio input[type=checkbox]:hover:not(:disabled),:host-context(.m-dynamic-input) .radio input[type=radio]:hover:not(:disabled){border-color:var(--m-text-input-hover-border, color-mix(in srgb, var(--m-focus) 55%, var(--m-background)));background:var(--m-text-input-hover-background, color-mix(in srgb, var(--m-focus) 4%, var(--m-background)));box-shadow:none;transform:none}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:focus,:host-context(.section-form-item__input) .checkbox input[type=checkbox]:focus-visible,:host-context(.section-form-item__input) .checkbox input[type=radio]:focus,:host-context(.section-form-item__input) .checkbox input[type=radio]:focus-visible,:host-context(.section-form-item__input) .radio input[type=checkbox]:focus,:host-context(.section-form-item__input) .radio input[type=checkbox]:focus-visible,:host-context(.section-form-item__input) .radio input[type=radio]:focus,:host-context(.section-form-item__input) .radio input[type=radio]:focus-visible,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:focus,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:focus-visible,:host-context(.m-dynamic-input) .checkbox input[type=radio]:focus,:host-context(.m-dynamic-input) .checkbox input[type=radio]:focus-visible,:host-context(.m-dynamic-input) .radio input[type=checkbox]:focus,:host-context(.m-dynamic-input) .radio input[type=checkbox]:focus-visible,:host-context(.m-dynamic-input) .radio input[type=radio]:focus,:host-context(.m-dynamic-input) .radio input[type=radio]:focus-visible{border-color:var(--m-text-input-focus-border, var(--m-focus));box-shadow:none;outline:none}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:checked,:host-context(.section-form-item__input) .checkbox input[type=radio]:checked,:host-context(.section-form-item__input) .radio input[type=checkbox]:checked,:host-context(.section-form-item__input) .radio input[type=radio]:checked,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:checked,:host-context(.m-dynamic-input) .checkbox input[type=radio]:checked,:host-context(.m-dynamic-input) .radio input[type=checkbox]:checked,:host-context(.m-dynamic-input) .radio input[type=radio]:checked{border-color:var(--m-checkbox-checked-border, var(--m-focus));background-color:var(--m-checkbox-checked-background, var(--m-focus));box-shadow:none;transform:none}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:checked:hover:not(:disabled),:host-context(.section-form-item__input) .checkbox input[type=radio]:checked:hover:not(:disabled),:host-context(.section-form-item__input) .radio input[type=checkbox]:checked:hover:not(:disabled),:host-context(.section-form-item__input) .radio input[type=radio]:checked:hover:not(:disabled),:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:checked:hover:not(:disabled),:host-context(.m-dynamic-input) .checkbox input[type=radio]:checked:hover:not(:disabled),:host-context(.m-dynamic-input) .radio input[type=checkbox]:checked:hover:not(:disabled),:host-context(.m-dynamic-input) .radio input[type=radio]:checked:hover:not(:disabled){background-color:color-mix(in srgb,var(--m-checkbox-checked-background, var(--m-focus)) 88%,black 12%);border-color:color-mix(in srgb,var(--m-checkbox-checked-border, var(--m-focus)) 88%,black 12%);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-focus) 18%,transparent)}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:checked:focus,:host-context(.section-form-item__input) .checkbox input[type=checkbox]:checked:focus-visible,:host-context(.section-form-item__input) .checkbox input[type=radio]:checked:focus,:host-context(.section-form-item__input) .checkbox input[type=radio]:checked:focus-visible,:host-context(.section-form-item__input) .radio input[type=checkbox]:checked:focus,:host-context(.section-form-item__input) .radio input[type=checkbox]:checked:focus-visible,:host-context(.section-form-item__input) .radio input[type=radio]:checked:focus,:host-context(.section-form-item__input) .radio input[type=radio]:checked:focus-visible,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:checked:focus,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:checked:focus-visible,:host-context(.m-dynamic-input) .checkbox input[type=radio]:checked:focus,:host-context(.m-dynamic-input) .checkbox input[type=radio]:checked:focus-visible,:host-context(.m-dynamic-input) .radio input[type=checkbox]:checked:focus,:host-context(.m-dynamic-input) .radio input[type=checkbox]:checked:focus-visible,:host-context(.m-dynamic-input) .radio input[type=radio]:checked:focus,:host-context(.m-dynamic-input) .radio input[type=radio]:checked:focus-visible{box-shadow:none}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:checked:after,:host-context(.section-form-item__input) .radio input[type=checkbox]:checked:after,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:checked:after,:host-context(.m-dynamic-input) .radio input[type=checkbox]:checked:after{transform:translate(-50%,-60%) scale(1) rotate(-45deg)}:host-context(.section-form-item__input) .checkbox input[type=radio]:checked:after,:host-context(.section-form-item__input) .radio input[type=radio]:checked:after,:host-context(.m-dynamic-input) .checkbox input[type=radio]:checked:after,:host-context(.m-dynamic-input) .radio input[type=radio]:checked:after{transform:translate(-50%,-50%) scale(1)}:host-context(.checkbox-group) .checkbox{width:auto;height:auto;min-height:0}\n"],
54
+ dependencies: [{
55
+ kind: "component",
56
+ type: LabelComponent,
57
+ selector: "m-label",
58
+ inputs: [
59
+ "for",
60
+ "placeholder",
61
+ "params",
62
+ "required",
63
+ "disabled",
64
+ "color",
65
+ "noTranslate"
66
+ ]
67
+ }],
68
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
69
+ });
70
+ };
71
+ i0.ɵɵngDeclareClassMetadata({
72
+ minVersion: "12.0.0",
73
+ version: "22.2.1",
74
+ ngImport: i0,
75
+ type: RadioInputComponent,
76
+ decorators: [{
77
+ type: Component,
78
+ args: [{
79
+ selector: "m-radio",
80
+ template: `
81
+ @if (radioConfig(); as radio) {
82
+ <div class="radio">
83
+ <input
84
+ [checked]="checked()"
85
+ #inputElement
86
+ [class.error]="showErrors()"
87
+ [disabled]="disabled()"
88
+ (change)="onChange($event)"
89
+ type="radio"
90
+ [name]="radio.name"
91
+ [id]="radio.id"
92
+ />
93
+ <m-label
94
+ [for]="radio.id"
95
+ [placeholder]="radio.label"
96
+ [params]="radio.params"
97
+ [required]="required()"
98
+ [disabled]="disabled()"
99
+ />
100
+ </div>
101
+ }
102
+ `,
103
+ imports: [LabelComponent],
104
+ changeDetection: ChangeDetectionStrategy.OnPush,
105
+ styles: ["@keyframes toggle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes thumb-slide{0%{transform:translate(0) scale(1)}50%{transform:translate(.3em) scale(.9)}to{transform:translate(.6em) scale(1)}}:host{display:inline-block}.checkbox{--m-checkbox-input-color: var(--m-input-color, var(--m-focus));display:inline-flex;align-items:center;gap:calc(var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25)) * .375);cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.checkbox input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;position:relative;width:var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25));height:var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25));background:var(--m-checkbox-background, var(--m-text-input-background, color-mix(in srgb, var(--m-focus) 2%, var(--m-background))));border-radius:var(--m-checkbox-radius, var(--m-input-radius, .35rem));border:var(--m-input-border-width, 1px) solid var(--m-text-input-border, color-mix(in srgb, var(--m-text) 18%, var(--m-background)));cursor:pointer;outline:none;box-sizing:border-box;flex-shrink:0;margin:0;box-shadow:none;transition:var(--m-checkbox-transition, var(--m-text-input-transition, border-color .2s ease, box-shadow .2s ease, background-color .2s ease))}.checkbox input[type=checkbox]:after{content:\"\";position:absolute;top:50%;left:50%;transform:translate(-50%,-60%) scale(0) rotate(-45deg);width:calc(var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25)) * .45);height:calc(var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25)) * .25);border-left:calc(var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25)) * .12) solid #ffffff;border-bottom:calc(var(--m-checkbox-size, calc(var(--input-size, 1em) * 1.25)) * .12) solid #ffffff;transition:transform .2s ease;box-shadow:none}.checkbox{--m-label-margin: 0}.checkbox input[type=checkbox]:hover:not(:disabled):not(:checked){border-color:var(--m-text-input-hover-border, color-mix(in srgb, var(--m-focus) 55%, var(--m-background)));background:var(--m-text-input-hover-background, color-mix(in srgb, var(--m-focus) 4%, var(--m-background)));box-shadow:none}.checkbox input[type=checkbox]:focus,.checkbox input[type=checkbox]:focus-visible{border-color:var(--m-text-input-focus-border, var(--m-focus));box-shadow:none;outline:none}.checkbox input[type=checkbox]:active:not(:disabled):after{transform:translate(-50%,-60%) scale(.85) rotate(-45deg)}.checkbox input[type=checkbox]:checked{border-color:var(--m-checkbox-checked-border, var(--m-focus));background:var(--m-checkbox-checked-background, var(--m-focus));background-color:var(--m-checkbox-checked-background, var(--m-focus));box-shadow:none}.checkbox input[type=checkbox]:checked:after{transform:translate(-50%,-60%) scale(1) rotate(-45deg);border-left-color:#fff;border-bottom-color:#fff;opacity:1}.checkbox input[type=checkbox]:checked:hover:not(:disabled){background:color-mix(in srgb,var(--m-checkbox-checked-background, var(--m-focus)) 88%,black 12%);background-color:color-mix(in srgb,var(--m-checkbox-checked-background, var(--m-focus)) 88%,black 12%);border-color:color-mix(in srgb,var(--m-checkbox-checked-border, var(--m-focus)) 88%,black 12%);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-focus) 18%,transparent)}.checkbox input[type=checkbox]:checked:focus,.checkbox input[type=checkbox]:checked:focus-visible{box-shadow:none}.checkbox input[type=checkbox]:indeterminate{border-color:var(--m-checkbox-checked-border, var(--m-focus));background:var(--m-checkbox-checked-background, var(--m-focus));background-color:var(--m-checkbox-checked-background, var(--m-focus))}.checkbox input[type=checkbox]:indeterminate:after{transform:translate(-50%,-50%) scale(1) rotate(0);width:calc(var(--input-size, 1em) * .5);height:0;border-left:none;border-bottom:calc(var(--input-size, 1em) * .12) solid #ffffff}.checkbox input[type=checkbox]:indeterminate:hover:not(:disabled){background:color-mix(in srgb,var(--m-checkbox-checked-background, var(--m-focus)) 88%,black 12%);background-color:color-mix(in srgb,var(--m-checkbox-checked-background, var(--m-focus)) 88%,black 12%);border-color:color-mix(in srgb,var(--m-checkbox-checked-border, var(--m-focus)) 88%,black 12%);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-focus) 18%,transparent)}.checkbox input[type=checkbox]:indeterminate:focus,.checkbox input[type=checkbox]:indeterminate:focus-visible{box-shadow:none}.checkbox input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed;border-color:color-mix(in srgb,var(--m-text) 12%,var(--m-background))}.checkbox input[type=checkbox]:disabled:checked:after{opacity:.7}.checkbox input[type=checkbox].error{border-color:var(--m-error)}.checkbox{min-height:var(--input-size, 1em)}.radio{--m-radio-input-color: var(--m-input-color, var(--m-focus));display:inline-flex;align-items:center;gap:calc(var(--m-radio-size, calc(var(--input-size, 1em) * 1.25)) * .375);cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.radio input[type=radio]{appearance:none;-webkit-appearance:none;-moz-appearance:none;margin:0;padding:0;position:relative;width:var(--m-radio-size, calc(var(--input-size, 1em) * 1.25));height:var(--m-radio-size, calc(var(--input-size, 1em) * 1.25));flex-shrink:0;box-sizing:border-box;background:var(--m-radio-background, var(--m-text-input-background, color-mix(in srgb, var(--m-focus) 2%, var(--m-background))));border-radius:50%;border:var(--m-input-border-width, 1px) solid var(--m-text-input-border, color-mix(in srgb, var(--m-text) 18%, var(--m-background)));cursor:pointer;outline:none;box-shadow:none;transition:var(--m-radio-transition, var(--m-text-input-transition, border-color .2s ease, box-shadow .2s ease, background-color .2s ease))}.radio input[type=radio]:after{content:\"\";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);width:calc(var(--m-radio-size, calc(var(--input-size, 1em) * 1.25)) * .45);height:calc(var(--m-radio-size, calc(var(--input-size, 1em) * 1.25)) * .45);background-color:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:none}.radio{--m-label-margin: 0}.radio input[type=radio]:hover:not(:disabled):not(:checked){border-color:var(--m-text-input-hover-border, color-mix(in srgb, var(--m-focus) 55%, var(--m-background)));background:var(--m-text-input-hover-background, color-mix(in srgb, var(--m-focus) 4%, var(--m-background)));box-shadow:none}.radio input[type=radio]:focus,.radio input[type=radio]:focus-visible{border-color:var(--m-text-input-focus-border, var(--m-focus));box-shadow:none;outline:none}.radio input[type=radio]:active:not(:disabled):after{transform:translate(-50%,-50%) scale(.85)}.radio input[type=radio]:checked{border-color:var(--m-radio-checked-border, var(--m-focus));background:var(--m-radio-checked-background, var(--m-focus));background-color:var(--m-radio-checked-background, var(--m-focus));box-shadow:none}.radio input[type=radio]:checked:after{transform:translate(-50%,-50%) scale(1);background-color:#fff;opacity:1}.radio input[type=radio]:checked:hover:not(:disabled){background:color-mix(in srgb,var(--m-radio-checked-background, var(--m-focus)) 88%,black 12%);background-color:color-mix(in srgb,var(--m-radio-checked-background, var(--m-focus)) 88%,black 12%);border-color:color-mix(in srgb,var(--m-radio-checked-border, var(--m-focus)) 88%,black 12%);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-focus) 18%,transparent)}.radio input[type=radio]:checked:focus,.radio input[type=radio]:checked:focus-visible{box-shadow:none}.radio input[type=radio]:disabled{opacity:.5;cursor:not-allowed;border-color:color-mix(in srgb,var(--m-text) 12%,var(--m-background))}.radio input[type=radio]:disabled:checked:after{opacity:.7}.radio input[type=radio].error{border-color:var(--m-error)}.radio{min-height:var(--input-size, 1em)}:host-context(.section-form-item__input),:host-context(.m-dynamic-input){display:contents}:host-context(.section-form-item__input) .checkbox,:host-context(.section-form-item__input) .radio,:host-context(.m-dynamic-input) .checkbox,:host-context(.m-dynamic-input) .radio{display:flex;align-items:center;width:100%;height:calc(var(--input-size, 1em) * 2.25);min-height:calc(var(--input-size, 1em) * 2.25);padding-block:0;padding-inline:0;background:transparent;border:none;box-shadow:none;--m-label-margin: 0;--m-label-font-size: var(--m-label-font-size, calc(var(--input-size, 1em) * .875));gap:var(--m-checkbox-input-gap, .375em )}:host-context(.section-form-item__input) .checkbox input[type=checkbox],:host-context(.section-form-item__input) .checkbox input[type=radio],:host-context(.section-form-item__input) .radio input[type=checkbox],:host-context(.section-form-item__input) .radio input[type=radio],:host-context(.m-dynamic-input) .checkbox input[type=checkbox],:host-context(.m-dynamic-input) .checkbox input[type=radio],:host-context(.m-dynamic-input) .radio input[type=checkbox],:host-context(.m-dynamic-input) .radio input[type=radio]{flex:0 0 auto;margin:0;transform:none;width:var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25)));height:var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25)));border-width:var(--m-input-border-width, 1px);border-style:solid;border-color:var(--m-text-input-border, color-mix(in srgb, var(--m-text) 18%, var(--m-background)));background:var(--m-checkbox-square-background, var(--m-text-input-background, color-mix(in srgb, var(--m-focus) 2%, var(--m-background))));box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;cursor:pointer;outline:none;box-sizing:border-box;position:relative;transition:var(--m-text-input-transition, border-color .2s ease, box-shadow .2s ease, background-color .2s ease)}:host-context(.section-form-item__input) .checkbox input[type=checkbox],:host-context(.section-form-item__input) .radio input[type=checkbox],:host-context(.m-dynamic-input) .checkbox input[type=checkbox],:host-context(.m-dynamic-input) .radio input[type=checkbox]{border-radius:var(--m-checkbox-radius, var(--m-input-radius, .35rem))}:host-context(.section-form-item__input) .checkbox input[type=radio],:host-context(.section-form-item__input) .radio input[type=radio],:host-context(.m-dynamic-input) .checkbox input[type=radio],:host-context(.m-dynamic-input) .radio input[type=radio]{border-radius:50%}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:after,:host-context(.section-form-item__input) .radio input[type=checkbox]:after,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:after,:host-context(.m-dynamic-input) .radio input[type=checkbox]:after{content:\"\";position:absolute;top:50%;left:50%;transform:translate(-50%,-60%) scale(0) rotate(-45deg);width:calc(var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))) * .45);height:calc(var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))) * .25);border-left:calc(var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))) * .12) solid #ffffff;border-bottom:calc(var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))) * .12) solid #ffffff;box-shadow:none;transition:transform .2s ease}:host-context(.section-form-item__input) .checkbox input[type=radio]:after,:host-context(.section-form-item__input) .radio input[type=radio]:after,:host-context(.m-dynamic-input) .checkbox input[type=radio]:after,:host-context(.m-dynamic-input) .radio input[type=radio]:after{content:\"\";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);width:calc(var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))) * .45);height:calc(var(--m-checkbox-size, var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))) * .45);border-radius:50%;background-color:#fff;box-shadow:none;transition:transform .2s ease}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:hover:not(:disabled),:host-context(.section-form-item__input) .checkbox input[type=radio]:hover:not(:disabled),:host-context(.section-form-item__input) .radio input[type=checkbox]:hover:not(:disabled),:host-context(.section-form-item__input) .radio input[type=radio]:hover:not(:disabled),:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:hover:not(:disabled),:host-context(.m-dynamic-input) .checkbox input[type=radio]:hover:not(:disabled),:host-context(.m-dynamic-input) .radio input[type=checkbox]:hover:not(:disabled),:host-context(.m-dynamic-input) .radio input[type=radio]:hover:not(:disabled){border-color:var(--m-text-input-hover-border, color-mix(in srgb, var(--m-focus) 55%, var(--m-background)));background:var(--m-text-input-hover-background, color-mix(in srgb, var(--m-focus) 4%, var(--m-background)));box-shadow:none;transform:none}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:focus,:host-context(.section-form-item__input) .checkbox input[type=checkbox]:focus-visible,:host-context(.section-form-item__input) .checkbox input[type=radio]:focus,:host-context(.section-form-item__input) .checkbox input[type=radio]:focus-visible,:host-context(.section-form-item__input) .radio input[type=checkbox]:focus,:host-context(.section-form-item__input) .radio input[type=checkbox]:focus-visible,:host-context(.section-form-item__input) .radio input[type=radio]:focus,:host-context(.section-form-item__input) .radio input[type=radio]:focus-visible,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:focus,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:focus-visible,:host-context(.m-dynamic-input) .checkbox input[type=radio]:focus,:host-context(.m-dynamic-input) .checkbox input[type=radio]:focus-visible,:host-context(.m-dynamic-input) .radio input[type=checkbox]:focus,:host-context(.m-dynamic-input) .radio input[type=checkbox]:focus-visible,:host-context(.m-dynamic-input) .radio input[type=radio]:focus,:host-context(.m-dynamic-input) .radio input[type=radio]:focus-visible{border-color:var(--m-text-input-focus-border, var(--m-focus));box-shadow:none;outline:none}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:checked,:host-context(.section-form-item__input) .checkbox input[type=radio]:checked,:host-context(.section-form-item__input) .radio input[type=checkbox]:checked,:host-context(.section-form-item__input) .radio input[type=radio]:checked,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:checked,:host-context(.m-dynamic-input) .checkbox input[type=radio]:checked,:host-context(.m-dynamic-input) .radio input[type=checkbox]:checked,:host-context(.m-dynamic-input) .radio input[type=radio]:checked{border-color:var(--m-checkbox-checked-border, var(--m-focus));background-color:var(--m-checkbox-checked-background, var(--m-focus));box-shadow:none;transform:none}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:checked:hover:not(:disabled),:host-context(.section-form-item__input) .checkbox input[type=radio]:checked:hover:not(:disabled),:host-context(.section-form-item__input) .radio input[type=checkbox]:checked:hover:not(:disabled),:host-context(.section-form-item__input) .radio input[type=radio]:checked:hover:not(:disabled),:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:checked:hover:not(:disabled),:host-context(.m-dynamic-input) .checkbox input[type=radio]:checked:hover:not(:disabled),:host-context(.m-dynamic-input) .radio input[type=checkbox]:checked:hover:not(:disabled),:host-context(.m-dynamic-input) .radio input[type=radio]:checked:hover:not(:disabled){background-color:color-mix(in srgb,var(--m-checkbox-checked-background, var(--m-focus)) 88%,black 12%);border-color:color-mix(in srgb,var(--m-checkbox-checked-border, var(--m-focus)) 88%,black 12%);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-focus) 18%,transparent)}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:checked:focus,:host-context(.section-form-item__input) .checkbox input[type=checkbox]:checked:focus-visible,:host-context(.section-form-item__input) .checkbox input[type=radio]:checked:focus,:host-context(.section-form-item__input) .checkbox input[type=radio]:checked:focus-visible,:host-context(.section-form-item__input) .radio input[type=checkbox]:checked:focus,:host-context(.section-form-item__input) .radio input[type=checkbox]:checked:focus-visible,:host-context(.section-form-item__input) .radio input[type=radio]:checked:focus,:host-context(.section-form-item__input) .radio input[type=radio]:checked:focus-visible,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:checked:focus,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:checked:focus-visible,:host-context(.m-dynamic-input) .checkbox input[type=radio]:checked:focus,:host-context(.m-dynamic-input) .checkbox input[type=radio]:checked:focus-visible,:host-context(.m-dynamic-input) .radio input[type=checkbox]:checked:focus,:host-context(.m-dynamic-input) .radio input[type=checkbox]:checked:focus-visible,:host-context(.m-dynamic-input) .radio input[type=radio]:checked:focus,:host-context(.m-dynamic-input) .radio input[type=radio]:checked:focus-visible{box-shadow:none}:host-context(.section-form-item__input) .checkbox input[type=checkbox]:checked:after,:host-context(.section-form-item__input) .radio input[type=checkbox]:checked:after,:host-context(.m-dynamic-input) .checkbox input[type=checkbox]:checked:after,:host-context(.m-dynamic-input) .radio input[type=checkbox]:checked:after{transform:translate(-50%,-60%) scale(1) rotate(-45deg)}:host-context(.section-form-item__input) .checkbox input[type=radio]:checked:after,:host-context(.section-form-item__input) .radio input[type=radio]:checked:after,:host-context(.m-dynamic-input) .checkbox input[type=radio]:checked:after,:host-context(.m-dynamic-input) .radio input[type=radio]:checked:after{transform:translate(-50%,-50%) scale(1)}:host-context(.checkbox-group) .checkbox{width:auto;height:auto;min-height:0}\n"]
106
+ }]
107
+ }]
108
+ });
109
+ export { radio_exports as n, RadioInputComponent as t };
110
+
111
+ //# sourceMappingURL=magmonium-one-radio-CkaWESS3.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"magmonium-one-radio-CkaWESS3.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"}
@@ -0,0 +1,216 @@
1
+ import { t as __exportAll } from "./magmonium-one-rolldown-runtime-DpJrqANO.mjs";
2
+ import { t as LabelComponent } from "./magmonium-one-label-D2gjTbKX.mjs";
3
+ import { p as DraggableDirective } from "./magmonium-one-directives-BVKX77zM.mjs";
4
+ import { t as BaseTextInputComponent } from "./magmonium-one-base-text-Zb0oLNRX.mjs";
5
+ import * as i0 from "@angular/core";
6
+ import { ChangeDetectionStrategy, Component, HostListener, computed, effect, linkedSignal, signal, viewChild } from "@angular/core";
7
+ var range_exports = /* @__PURE__ */ __exportAll({ RangeInputComponent: () => RangeInputComponent });
8
+ var RangeInputComponent = class RangeInputComponent extends BaseTextInputComponent {
9
+ _track = viewChild("track", ...ngDevMode ? [{ debugName: "_track" }] : /* istanbul ignore next */ []);
10
+ _trackWidth = signal(0, ...ngDevMode ? [{ debugName: "_trackWidth" }] : /* istanbul ignore next */ []);
11
+ _TRACK_HALF_H = 3;
12
+ _measure = effect((onCleanup) => {
13
+ const track = this._track();
14
+ if (!track) return;
15
+ const el = track.nativeElement;
16
+ this._trackWidth.set(el.getBoundingClientRect().width);
17
+ if (typeof ResizeObserver === "undefined") return;
18
+ const observer = new ResizeObserver(([entry]) => this._trackWidth.set(entry.contentRect.width));
19
+ observer.observe(el);
20
+ onCleanup(() => observer.disconnect());
21
+ }, ...ngDevMode ? [{ debugName: "_measure" }] : /* istanbul ignore next */ []);
22
+ thumbDraggable = linkedSignal({
23
+ ...ngDevMode ? { debugName: "thumbDraggable" } : /* istanbul ignore next */ {},
24
+ source: () => ({
25
+ val: this.value(),
26
+ tw: this._trackWidth(),
27
+ cfg: this.config()
28
+ }),
29
+ computation: ({ val, tw, cfg }) => {
30
+ const rangeCfg = cfg;
31
+ const min = rangeCfg?.min ?? 0;
32
+ const max = rangeCfg?.max ?? 100;
33
+ const numVal = Number(val) || min;
34
+ return {
35
+ direction: "x",
36
+ position: {
37
+ x: tw > 0 ? tw * (numVal - min) / (max - min) : 0,
38
+ y: this._TRACK_HALF_H
39
+ }
40
+ };
41
+ }
42
+ });
43
+ _displayValue = computed(() => {
44
+ const cfg = this.config();
45
+ const min = cfg?.min ?? 0;
46
+ const max = cfg?.max ?? 100;
47
+ const tw = this._trackWidth();
48
+ if (tw === 0) return Number(this.value()) || min;
49
+ const x = this.thumbDraggable().position.x ?? 0;
50
+ return Math.round(min + (max - min) * x / tw);
51
+ }, ...ngDevMode ? [{ debugName: "_displayValue" }] : /* istanbul ignore next */ []);
52
+ constructor() {
53
+ super();
54
+ effect(() => {
55
+ const pos = this.thumbDraggable().position;
56
+ const cfg = this.config();
57
+ const min = cfg?.min ?? 0;
58
+ const max = cfg?.max ?? 100;
59
+ const tw = this._trackWidth();
60
+ if (tw === 0) return;
61
+ const numVal = Number(this.value()) || min;
62
+ const expectedX = tw > 0 ? tw * (numVal - min) / (max - min) : 0;
63
+ if (pos.x !== expectedX) {
64
+ const val = Math.round(min + (max - min) * (pos.x ?? 0) / tw);
65
+ this.setValue(String(val));
66
+ }
67
+ });
68
+ }
69
+ _onResize() {
70
+ const track = this._track();
71
+ if (track) this._trackWidth.set(track.nativeElement.getBoundingClientRect().width);
72
+ }
73
+ static ɵfac = i0.ɵɵngDeclareFactory({
74
+ minVersion: "12.0.0",
75
+ version: "22.2.1",
76
+ ngImport: i0,
77
+ type: RangeInputComponent,
78
+ deps: [],
79
+ target: i0.ɵɵFactoryTarget.Component
80
+ });
81
+ static ɵcmp = i0.ɵɵngDeclareComponent({
82
+ minVersion: "17.0.0",
83
+ version: "22.2.1",
84
+ type: RangeInputComponent,
85
+ isStandalone: true,
86
+ selector: "m-range",
87
+ host: { listeners: { "window:resize": "_onResize()" } },
88
+ viewQueries: [{
89
+ propertyName: "_track",
90
+ first: true,
91
+ predicate: ["track"],
92
+ descendants: true,
93
+ isSignal: true
94
+ }],
95
+ usesInheritance: true,
96
+ ngImport: i0,
97
+ template: `
98
+ @if (config(); as range) {
99
+ <div class="m-range">
100
+ <m-label
101
+ class="m-range__label"
102
+ [placeholder]="range.label"
103
+ [params]="range.params"
104
+ [required]="required()"
105
+ [disabled]="disabled()"
106
+ />
107
+ <div class="m-range__control">
108
+ <div class="m-range__track" #track>
109
+ <div
110
+ class="m-range__fill"
111
+ [style.width.px]="thumbDraggable().position.x"
112
+ ></div>
113
+ <div
114
+ class="m-range__thumb"
115
+ [(mDraggable)]="thumbDraggable"
116
+ [min]="{ x: 0, y: _TRACK_HALF_H }"
117
+ [max]="{ x: _trackWidth(), y: _TRACK_HALF_H }"
118
+ ></div>
119
+ </div>
120
+ <span class="m-range__value" [class.hidden]="_displayValue() === 0">{{ _displayValue() !== 0 ? _displayValue() : '' }}</span>
121
+ </div>
122
+ </div>
123
+ }
124
+ `,
125
+ isInline: true,
126
+ styles: ["@keyframes toggle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes thumb-slide{0%{transform:translate(0) scale(1)}50%{transform:translate(.3em) scale(.9)}to{transform:translate(.6em) scale(1)}}:host{display:block;width:100%}:host-context(.m-dynamic-input),:host-context(.section-form-item__input){display:contents}:host-context(.m-dynamic-input) .m-range,:host-context(.section-form-item__input) .m-range{width:100%}.m-range{display:flex;flex-direction:column;gap:0;-webkit-user-select:none;user-select:none}.m-range .m-range__label{--m-label-margin: 0;--m-label-font-size: calc(var(--input-size, 1em) * .8);--m-label-color: var(--m-text-secondary)}.m-range__control{display:flex;align-items:center;height:calc(var(--input-size, 1em) * 2.75);min-height:calc(var(--input-size, 1em) * 2.75);padding-inline:calc(calc(var(--input-size, 1em) * .95) / 2);cursor:pointer;gap:0}.m-range__control:has(.m-range__value:not(.hidden)){gap:calc(var(--input-size, 1em) * .5)}.m-range__control:hover .m-range__track{height:6px}.m-range__track{flex:1;position:relative;height:2px;background-color:var(--m-text-input-border, color-mix(in srgb, var(--m-text) 18%, var(--m-background)));border-radius:3px;overflow:visible;transition:height .15s ease}.m-range__fill{position:absolute;top:0;left:0;height:100%;background-color:var(--m-input-color, var(--m-mm));border-radius:inherit;pointer-events:none}.m-range__thumb{position:absolute;width:calc(var(--input-size, 1em) * .95);height:calc(var(--input-size, 1em) * .95);border-radius:50%;background-color:var(--m-input-color, var(--m-mm));border:2px solid var(--m-text-input-background, var(--m-background));box-shadow:0 0 0 1.5px var(--m-input-color, var(--m-mm)),0 1px 3px #00000026;top:50%;transform:translateY(-50%) translate(-50%);transition:box-shadow .15s ease;cursor:grab;z-index:1}.m-range__thumb:hover{box-shadow:0 0 0 1.5px var(--m-input-color, var(--m-mm)),0 0 0 calc(var(--input-size, 1em) * .45) color-mix(in srgb,var(--m-mm) 14%,transparent),0 1px 3px #00000026}.m-range__thumb.dragging{cursor:grabbing;box-shadow:0 0 0 1.5px var(--m-input-color, var(--m-mm)),var(--m-text-input-focus-shadow, 0 0 0 calc(var(--input-size, 1em) * .55) color-mix(in srgb, var(--m-mm) 25%, transparent));z-index:2}.m-range__value{font-size:calc(var(--input-size, 1em) * .8);font-weight:600;color:var(--m-input-color, var(--m-mm));font-variant-numeric:tabular-nums;flex-shrink:0;min-width:0}.m-range__value.hidden{display:none}.m-range--multi .m-range__control{height:calc(var(--input-size, 1em) * 2.75);min-height:calc(var(--input-size, 1em) * 2.75)}.m-range--multi .m-range__value{align-self:flex-end;font-size:calc(var(--input-size, 1em) * .75)}\n"],
127
+ dependencies: [{
128
+ kind: "directive",
129
+ type: DraggableDirective,
130
+ selector: "[mDraggable]",
131
+ inputs: [
132
+ "mDraggable",
133
+ "handleSelector",
134
+ "min",
135
+ "max",
136
+ "pos"
137
+ ],
138
+ outputs: [
139
+ "mDraggableChange",
140
+ "dragStart",
141
+ "dragEnd"
142
+ ]
143
+ }, {
144
+ kind: "component",
145
+ type: LabelComponent,
146
+ selector: "m-label",
147
+ inputs: [
148
+ "for",
149
+ "placeholder",
150
+ "params",
151
+ "required",
152
+ "disabled",
153
+ "color",
154
+ "noTranslate"
155
+ ]
156
+ }],
157
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
158
+ });
159
+ };
160
+ i0.ɵɵngDeclareClassMetadata({
161
+ minVersion: "12.0.0",
162
+ version: "22.2.1",
163
+ ngImport: i0,
164
+ type: RangeInputComponent,
165
+ decorators: [{
166
+ type: Component,
167
+ args: [{
168
+ selector: "m-range",
169
+ imports: [DraggableDirective, LabelComponent],
170
+ template: `
171
+ @if (config(); as range) {
172
+ <div class="m-range">
173
+ <m-label
174
+ class="m-range__label"
175
+ [placeholder]="range.label"
176
+ [params]="range.params"
177
+ [required]="required()"
178
+ [disabled]="disabled()"
179
+ />
180
+ <div class="m-range__control">
181
+ <div class="m-range__track" #track>
182
+ <div
183
+ class="m-range__fill"
184
+ [style.width.px]="thumbDraggable().position.x"
185
+ ></div>
186
+ <div
187
+ class="m-range__thumb"
188
+ [(mDraggable)]="thumbDraggable"
189
+ [min]="{ x: 0, y: _TRACK_HALF_H }"
190
+ [max]="{ x: _trackWidth(), y: _TRACK_HALF_H }"
191
+ ></div>
192
+ </div>
193
+ <span class="m-range__value" [class.hidden]="_displayValue() === 0">{{ _displayValue() !== 0 ? _displayValue() : '' }}</span>
194
+ </div>
195
+ </div>
196
+ }
197
+ `,
198
+ changeDetection: ChangeDetectionStrategy.OnPush,
199
+ styles: ["@keyframes toggle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes thumb-slide{0%{transform:translate(0) scale(1)}50%{transform:translate(.3em) scale(.9)}to{transform:translate(.6em) scale(1)}}:host{display:block;width:100%}:host-context(.m-dynamic-input),:host-context(.section-form-item__input){display:contents}:host-context(.m-dynamic-input) .m-range,:host-context(.section-form-item__input) .m-range{width:100%}.m-range{display:flex;flex-direction:column;gap:0;-webkit-user-select:none;user-select:none}.m-range .m-range__label{--m-label-margin: 0;--m-label-font-size: calc(var(--input-size, 1em) * .8);--m-label-color: var(--m-text-secondary)}.m-range__control{display:flex;align-items:center;height:calc(var(--input-size, 1em) * 2.75);min-height:calc(var(--input-size, 1em) * 2.75);padding-inline:calc(calc(var(--input-size, 1em) * .95) / 2);cursor:pointer;gap:0}.m-range__control:has(.m-range__value:not(.hidden)){gap:calc(var(--input-size, 1em) * .5)}.m-range__control:hover .m-range__track{height:6px}.m-range__track{flex:1;position:relative;height:2px;background-color:var(--m-text-input-border, color-mix(in srgb, var(--m-text) 18%, var(--m-background)));border-radius:3px;overflow:visible;transition:height .15s ease}.m-range__fill{position:absolute;top:0;left:0;height:100%;background-color:var(--m-input-color, var(--m-mm));border-radius:inherit;pointer-events:none}.m-range__thumb{position:absolute;width:calc(var(--input-size, 1em) * .95);height:calc(var(--input-size, 1em) * .95);border-radius:50%;background-color:var(--m-input-color, var(--m-mm));border:2px solid var(--m-text-input-background, var(--m-background));box-shadow:0 0 0 1.5px var(--m-input-color, var(--m-mm)),0 1px 3px #00000026;top:50%;transform:translateY(-50%) translate(-50%);transition:box-shadow .15s ease;cursor:grab;z-index:1}.m-range__thumb:hover{box-shadow:0 0 0 1.5px var(--m-input-color, var(--m-mm)),0 0 0 calc(var(--input-size, 1em) * .45) color-mix(in srgb,var(--m-mm) 14%,transparent),0 1px 3px #00000026}.m-range__thumb.dragging{cursor:grabbing;box-shadow:0 0 0 1.5px var(--m-input-color, var(--m-mm)),var(--m-text-input-focus-shadow, 0 0 0 calc(var(--input-size, 1em) * .55) color-mix(in srgb, var(--m-mm) 25%, transparent));z-index:2}.m-range__value{font-size:calc(var(--input-size, 1em) * .8);font-weight:600;color:var(--m-input-color, var(--m-mm));font-variant-numeric:tabular-nums;flex-shrink:0;min-width:0}.m-range__value.hidden{display:none}.m-range--multi .m-range__control{height:calc(var(--input-size, 1em) * 2.75);min-height:calc(var(--input-size, 1em) * 2.75)}.m-range--multi .m-range__value{align-self:flex-end;font-size:calc(var(--input-size, 1em) * .75)}\n"]
200
+ }]
201
+ }],
202
+ ctorParameters: () => [],
203
+ propDecorators: {
204
+ _track: [{
205
+ type: i0.ViewChild,
206
+ args: ["track", { isSignal: true }]
207
+ }],
208
+ _onResize: [{
209
+ type: HostListener,
210
+ args: ["window:resize"]
211
+ }]
212
+ }
213
+ });
214
+ export { range_exports as n, RangeInputComponent as t };
215
+
216
+ //# sourceMappingURL=magmonium-one-range-D_WEKrli.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"magmonium-one-range-D_WEKrli.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 [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":";;;;;;;AAmDA,IAAa,sBAAb,MAAa,4BAA4B,uBAAkC;CACxD,SAAS,UAAsC,SAAQ,GAAA,YAAA,CAAA,EAAA,WAAA,SAAA,CAAA,+BAAA,CAAA,CAAA;CACrD,cAAc,OAAO,GAAE,GAAA,YAAA,CAAA,EAAA,WAAA,cAAA,CAAA,+BAAA,CAAA,CAAA;CACvB,gBAAgB;CAUlB,WAAW,QAAQ,cAAa;EAC/C,MAAM,QAAQ,KAAK,OAAM;EACzB,IAAI,CAAC,OAAO;EAEZ,MAAM,KAAK,MAAM;EACjB,KAAK,YAAY,IAAI,GAAG,sBAAqB,CAAE,CAAC,KAAK;EAGrD,IAAI,OAAO,mBAAmB,aAAa;EAC3C,MAAM,WAAW,IAAI,gBAAgB,CAAC,WACpC,KAAK,YAAY,IAAI,MAAM,YAAY,KAAK,CAAC;EAE/C,SAAS,QAAQ,EAAE;EACnB,gBAAgB,SAAS,WAAU,CAAE;CACvC,GAAE,GAAA,YAAA,CAAA,EAAA,WAAA,WAAA,CAAA,+BAAA,CAAA,CAAA;CAEF,iBAAiB,aAAY;EAAA,GAAA,YAAA,EAAA,WAAA,iBAAA,+BAAA,CAAA;EAC3B,eAAe;GACb,KAAK,KAAK,MAAK;GACf,IAAI,KAAK,YAAW;GACpB,KAAK,KAAK,OAAM;EACjB;EACD,cAAc,EACZ,KACA,IACA,UAKc;GACd,MAAM,WAAW;GACjB,MAAM,MAAM,UAAU,OAAO;GAC7B,MAAM,MAAM,UAAU,OAAO;GAC7B,MAAM,SAAS,OAAO,GAAG,KAAK;GAE9B,OAAO;IACL,WAAW;IACX,UAAU;KAAE,GAHJ,KAAK,IAAK,MAAM,SAAS,QAAS,MAAM,OAAO;KAGxC,GAAG,KAAK;IAAa;GACrC;EACH;CAAC,CAAA;CAGM,gBAAgB,eAAc;EACrC,MAAM,MAAM,KAAK,OAAM;EACvB,MAAM,MAAM,KAAK,OAAO;EACxB,MAAM,MAAM,KAAK,OAAO;EACxB,MAAM,KAAK,KAAK,YAAW;EAC3B,IAAI,OAAO,GAAG,OAAO,OAAO,KAAK,MAAK,CAAE,KAAK;EAC7C,MAAM,IAAI,KAAK,eAAc,CAAE,CAAC,SAAS,KAAK;EAC9C,OAAO,KAAK,MAAM,OAAQ,MAAM,OAAO,IAAK,EAAE;CAChD,GAAE,GAAA,YAAA,CAAA,EAAA,WAAA,gBAAA,CAAA,+BAAA,CAAA,CAAA;CAEF,cAAA;EACE,MAAK;EACL,aAAY;GACV,MAAM,MAAM,KAAK,eAAc,CAAE,CAAC;GAClC,MAAM,MAAM,KAAK,OAAM;GACvB,MAAM,MAAM,KAAK,OAAO;GACxB,MAAM,MAAM,KAAK,OAAO;GACxB,MAAM,KAAK,KAAK,YAAW;GAC3B,IAAI,OAAO,GAAG;GACd,MAAM,SAAS,OAAO,KAAK,MAAK,CAAE,KAAK;GACvC,MAAM,YAAY,KAAK,IAAK,MAAM,SAAS,QAAS,MAAM,OAAO;GACjE,IAAI,IAAI,MAAM,WAAW;IACvB,MAAM,MAAM,KAAK,MAAM,OAAQ,MAAM,QAAQ,IAAI,KAAK,KAAM,EAAE;IAC9D,KAAK,SAAS,OAAO,GAAG,CAAC;GAC3B;EACF,CAAC;CACH;CAGU,YAAS;EACjB,MAAM,QAAQ,KAAK,OAAM;EACzB,IAAI,OACF,KAAK,YAAY,IAAI,MAAM,cAAc,sBAAqB,CAAE,CAAC,KAAK;CAE1E;CA1FW,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAmB,MAAA,CAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAnB,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAmB,cAAA;EAAA,UAAA;EAAA,MAAA,EAAA,WAAA,EAAA,iBAAA,cAAA,EAAA;EAAA,aAAA,CAAA;GAAA,cAAA;GAAA,OAAA;GAAA,WAAA,CAAA,OAAA;GAAA,aAAA;GAAA,UAAA;EAAA,CAAA;EAAA,iBAAA;EAAA,UAAA;EAAA,UA/BpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BT,UAAA;EAAA,QAAA,CAAA,soFAAA;EAAA,cAAA,CAAA;GAAA,MAAA;GAAA,MA5BS;GAAkB,UAAA;GAAA,QAAA;IAAA;IAAA;IAAA;IAAA;IAAA;GAAA;GAAA,SAAA;IAAA;IAAA;IAAA;GAAA;EAAA,GAAA;GAAA,MAAA;GAAA,MAAE;GAAc,UAAA;GAAA,QAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;GAAA;EAAA,CAAA;EAAA,iBAAA,GAAA,wBAAA;CAAA,CAAA;;AAgCjC,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAmB,YAAA,CAAA;EAlC/B,MAAA;EACW,MAAA,CAAA;GAAA,UAAA;GAAS,SACV,CAAC,oBAAoB,cAAc;GAAC,UACnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BT,iBAEgB,wBAAwB;GAAM,QAAA,CAAA,soFAAA;EAAA,CAAA;CAGiB,CAAA;CAAA,sBAAA,CAAA;CAAA,gBAAA;EAAA,QAAA,CAAA;GAAA,MAAA,GAAA;GAAA,MAAA,CAAA,SAAO,EAAA,UAAA,KAAA,CAAA;EAAA,CAAA;EAAA,WAAA,CAAA;GAmFtE,MAAA;GAAa,MAAA,CAAA,eAAe"}
@@ -0,0 +1,11 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __exportAll = (all, no_symbols) => {
3
+ let target = {};
4
+ for (var name in all) __defProp(target, name, {
5
+ get: all[name],
6
+ enumerable: true
7
+ });
8
+ if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
9
+ return target;
10
+ };
11
+ export { __exportAll as t };