@magmonium/one 0.2.51 → 0.2.53

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 (136) hide show
  1. package/assets/i18n/af.json +1 -0
  2. package/assets/i18n/am.json +1 -0
  3. package/assets/i18n/ar.json +1 -0
  4. package/assets/i18n/as.json +1 -0
  5. package/assets/i18n/az.json +1 -0
  6. package/assets/i18n/ba.json +1 -0
  7. package/assets/i18n/be.json +1 -0
  8. package/assets/i18n/bg.json +1 -0
  9. package/assets/i18n/bn.json +1 -0
  10. package/assets/i18n/br.json +1 -0
  11. package/assets/i18n/brx.json +1 -0
  12. package/assets/i18n/bs.json +1 -0
  13. package/assets/i18n/ca.json +1 -0
  14. package/assets/i18n/ceb.json +1 -0
  15. package/assets/i18n/cnr.json +1 -0
  16. package/assets/i18n/co.json +1 -0
  17. package/assets/i18n/cs.json +1 -0
  18. package/assets/i18n/cy.json +1 -0
  19. package/assets/i18n/da.json +1 -0
  20. package/assets/i18n/de.json +1 -0
  21. package/assets/i18n/doi.json +1 -0
  22. package/assets/i18n/el.json +1 -0
  23. package/assets/i18n/en.json +1 -0
  24. package/assets/i18n/eo.json +1 -0
  25. package/assets/i18n/es.json +1 -0
  26. package/assets/i18n/et.json +1 -0
  27. package/assets/i18n/eu.json +1 -0
  28. package/assets/i18n/fa.json +1 -0
  29. package/assets/i18n/fi.json +1 -0
  30. package/assets/i18n/fr.json +1 -0
  31. package/assets/i18n/fy.json +1 -0
  32. package/assets/i18n/ga.json +1 -0
  33. package/assets/i18n/gd.json +1 -0
  34. package/assets/i18n/gl.json +1 -0
  35. package/assets/i18n/gu.json +1 -0
  36. package/assets/i18n/ha.json +1 -0
  37. package/assets/i18n/haw.json +1 -0
  38. package/assets/i18n/he.json +1 -0
  39. package/assets/i18n/hi.json +1 -0
  40. package/assets/i18n/hmn.json +1 -0
  41. package/assets/i18n/hr.json +1 -0
  42. package/assets/i18n/hu.json +1 -0
  43. package/assets/i18n/hy.json +1 -0
  44. package/assets/i18n/id.json +1 -0
  45. package/assets/i18n/ie.json +1 -0
  46. package/assets/i18n/ig.json +1 -0
  47. package/assets/i18n/ilo.json +1 -0
  48. package/assets/i18n/is.json +1 -0
  49. package/assets/i18n/it.json +1 -0
  50. package/assets/i18n/iw.json +1 -0
  51. package/assets/i18n/ja.json +1 -0
  52. package/assets/i18n/jw.json +1 -0
  53. package/assets/i18n/ka.json +1 -0
  54. package/assets/i18n/kk.json +1 -0
  55. package/assets/i18n/km.json +1 -0
  56. package/assets/i18n/kn.json +1 -0
  57. package/assets/i18n/ko.json +1 -0
  58. package/assets/i18n/kok.json +1 -0
  59. package/assets/i18n/ks.json +1 -0
  60. package/assets/i18n/ku.json +1 -0
  61. package/assets/i18n/ky.json +1 -0
  62. package/assets/i18n/la.json +1 -0
  63. package/assets/i18n/lb.json +1 -0
  64. package/assets/i18n/lo.json +1 -0
  65. package/assets/i18n/lt.json +1 -0
  66. package/assets/i18n/lv.json +1 -0
  67. package/assets/i18n/ma.json +1 -0
  68. package/assets/i18n/mai.json +1 -0
  69. package/assets/i18n/me.json +1 -0
  70. package/assets/i18n/mg.json +1 -0
  71. package/assets/i18n/mi.json +1 -0
  72. package/assets/i18n/mk.json +1 -0
  73. package/assets/i18n/ml.json +1 -0
  74. package/assets/i18n/mn.json +1 -0
  75. package/assets/i18n/mni.json +1 -0
  76. package/assets/i18n/mr.json +1 -0
  77. package/assets/i18n/ms.json +1 -0
  78. package/assets/i18n/mt.json +1 -0
  79. package/assets/i18n/my.json +1 -0
  80. package/assets/i18n/ne.json +1 -0
  81. package/assets/i18n/nl.json +1 -0
  82. package/assets/i18n/no.json +1 -0
  83. package/assets/i18n/ny.json +1 -0
  84. package/assets/i18n/or.json +1 -0
  85. package/assets/i18n/pa.json +1 -0
  86. package/assets/i18n/pl.json +1 -0
  87. package/assets/i18n/ps.json +1 -0
  88. package/assets/i18n/pt.json +1 -0
  89. package/assets/i18n/rm.json +1 -0
  90. package/assets/i18n/ro.json +1 -0
  91. package/assets/i18n/ru.json +1 -0
  92. package/assets/i18n/sa.json +1 -0
  93. package/assets/i18n/sat.json +1 -0
  94. package/assets/i18n/sc.json +1 -0
  95. package/assets/i18n/sd.json +1 -0
  96. package/assets/i18n/si.json +1 -0
  97. package/assets/i18n/sk.json +1 -0
  98. package/assets/i18n/sl.json +1 -0
  99. package/assets/i18n/sm.json +1 -0
  100. package/assets/i18n/sn.json +1 -0
  101. package/assets/i18n/so.json +1 -0
  102. package/assets/i18n/sq.json +1 -0
  103. package/assets/i18n/sr.json +1 -0
  104. package/assets/i18n/st.json +1 -0
  105. package/assets/i18n/su.json +1 -0
  106. package/assets/i18n/sv.json +1 -0
  107. package/assets/i18n/sw.json +1 -0
  108. package/assets/i18n/ta.json +1 -0
  109. package/assets/i18n/te.json +1 -0
  110. package/assets/i18n/tg.json +1 -0
  111. package/assets/i18n/th.json +1 -0
  112. package/assets/i18n/tl.json +1 -0
  113. package/assets/i18n/tr.json +1 -0
  114. package/assets/i18n/uk.json +1 -0
  115. package/assets/i18n/ur.json +1 -0
  116. package/assets/i18n/uz.json +1 -0
  117. package/assets/i18n/vi.json +1 -0
  118. package/assets/i18n/xh.json +1 -0
  119. package/assets/i18n/yi.json +1 -0
  120. package/assets/i18n/yo.json +1 -0
  121. package/assets/i18n/zh.json +1 -0
  122. package/assets/i18n/zu.json +1 -0
  123. package/assets/index.json +1 -1
  124. package/assets/menu/comments_feed_actions.json +16 -0
  125. package/fesm2022/{magmonium-one-magmonium-one-VhRbSI7n.mjs → magmonium-one-magmonium-one-CslMO-4v.mjs} +505 -330
  126. package/fesm2022/magmonium-one-magmonium-one-CslMO-4v.mjs.map +1 -0
  127. package/fesm2022/{magmonium-one-otp-C57Nh-0n.mjs → magmonium-one-otp-DZ77hPG2.mjs} +2 -2
  128. package/fesm2022/{magmonium-one-otp-C57Nh-0n.mjs.map → magmonium-one-otp-DZ77hPG2.mjs.map} +1 -1
  129. package/fesm2022/{magmonium-one-password-DVYfUUv4.mjs → magmonium-one-password-HlJ6mkOW.mjs} +2 -2
  130. package/fesm2022/{magmonium-one-password-DVYfUUv4.mjs.map → magmonium-one-password-HlJ6mkOW.mjs.map} +1 -1
  131. package/fesm2022/{magmonium-one-toggle-BMEdMyWj.mjs → magmonium-one-toggle-mArDCN6A.mjs} +2 -2
  132. package/fesm2022/{magmonium-one-toggle-BMEdMyWj.mjs.map → magmonium-one-toggle-mArDCN6A.mjs.map} +1 -1
  133. package/fesm2022/magmonium-one.mjs +1 -1
  134. package/package.json +1 -1
  135. package/types/magmonium-one.d.ts +70 -6
  136. package/fesm2022/magmonium-one-magmonium-one-VhRbSI7n.mjs.map +0 -1
@@ -6990,7 +6990,7 @@ class SectionFormItemComponent extends ConfigComponent {
6990
6990
  break;
6991
6991
  }
6992
6992
  case InputType.TOGGLE: {
6993
- const { ToggleInputComponent } = await import('./magmonium-one-toggle-BMEdMyWj.mjs');
6993
+ const { ToggleInputComponent } = await import('./magmonium-one-toggle-mArDCN6A.mjs');
6994
6994
  this.createDynamicComponent(seq, ToggleInputComponent, [], true);
6995
6995
  break;
6996
6996
  }
@@ -7002,12 +7002,12 @@ class SectionFormItemComponent extends ConfigComponent {
7002
7002
  break;
7003
7003
  }
7004
7004
  case InputType.PASSWORD: {
7005
- const { PasswordInputComponent } = await import('./magmonium-one-password-DVYfUUv4.mjs');
7005
+ const { PasswordInputComponent } = await import('./magmonium-one-password-HlJ6mkOW.mjs');
7006
7006
  this.createDynamicComponent(seq, PasswordInputComponent);
7007
7007
  break;
7008
7008
  }
7009
7009
  case InputType.OTP: {
7010
- const { OtpInputComponent } = await import('./magmonium-one-otp-C57Nh-0n.mjs');
7010
+ const { OtpInputComponent } = await import('./magmonium-one-otp-DZ77hPG2.mjs');
7011
7011
  this.createDynamicComponent(seq, OtpInputComponent);
7012
7012
  break;
7013
7013
  }
@@ -8598,6 +8598,10 @@ class ContextMenuComponent extends ConfigComponent {
8598
8598
  disableRule = input(...(ngDevMode ? [undefined, { debugName: "disableRule" }] : /* istanbul ignore next */ []));
8599
8599
  extraData = input(...(ngDevMode ? [undefined, { debugName: "extraData" }] : /* istanbul ignore next */ []));
8600
8600
  inverted = input(...(ngDevMode ? [undefined, { debugName: "inverted" }] : /* istanbul ignore next */ []));
8601
+ // A bound list rides the tag, not the config bag: a YAML file cannot hold
8602
+ // rows a store computes. `MenuItem[]` is accepted because root groups are an
8603
+ // authoring shape — data is one flat group — and normalized on read.
8604
+ options = input(...(ngDevMode ? [undefined, { debugName: "options" }] : /* istanbul ignore next */ []));
8601
8605
  action = output();
8602
8606
  subFolder = 'menu';
8603
8607
  selectorDir = viewChild(SelectorDirective, ...(ngDevMode ? [{ debugName: "selectorDir" }] : /* istanbul ignore next */ []));
@@ -8621,28 +8625,45 @@ class ContextMenuComponent extends ConfigComponent {
8621
8625
  // root groups cannot reach an item a layer down, nor one a `file` parent has
8622
8626
  // not fetched yet. It is handed to the menu as `hide` instead, which the menu
8623
8627
  // re-applies at whatever depth is on screen.
8624
- contextMenuOptions = computed(() => this.contextMenuConfig().options ?? [], ...(ngDevMode ? [{ debugName: "contextMenuOptions" }] : /* istanbul ignore next */ []));
8625
- selectorConfig = computed(() => ({
8626
- component: ContextMenuBoxComponent,
8627
- base: 'm-context-menu',
8628
- width: this.contextMenuConfig().width ?? '250px',
8629
- height: this.contextMenuConfig().height ?? 'auto',
8630
- align: this.contextMenuConfig().align,
8631
- toggle: true,
8632
- bindings: [
8633
- inputBinding('options', this.contextMenuOptions),
8634
- inputBinding('hide', this.exclude),
8635
- inputBinding('visibilityRule', this.visibilityRule),
8636
- inputBinding('disableRule', this.disableRule),
8637
- inputBinding('extraData', this.extraData),
8638
- outputBinding('action', (event) => {
8639
- this.action.emit(event);
8640
- this.selectorDir()?.close();
8641
- }),
8642
- ],
8643
- }), ...(ngDevMode ? [{ debugName: "selectorConfig" }] : /* istanbul ignore next */ []));
8628
+ contextMenuOptions = computed(() => {
8629
+ const supplied = this.options();
8630
+ if (supplied) {
8631
+ // The input overrides the config bag the way `inverted` already does.
8632
+ return Array.isArray(supplied[0])
8633
+ ? supplied
8634
+ : [supplied];
8635
+ }
8636
+ return this.contextMenuConfig().options ?? [];
8637
+ }, ...(ngDevMode ? [{ debugName: "contextMenuOptions" }] : /* istanbul ignore next */ []));
8638
+ selectorConfig = computed(() => {
8639
+ // The overlay-bearing primitives' DesignMode rule (ADR 0003): a Canvas
8640
+ // owns the click — the ControlLayer selects, never the menu — so the
8641
+ // directive is handed nothing to open. An undefined config is the whole
8642
+ // suppression, the directive having no `base` to open on.
8643
+ if (this.isDesignMode)
8644
+ return undefined;
8645
+ return {
8646
+ component: ContextMenuBoxComponent,
8647
+ base: 'm-context-menu',
8648
+ width: this.contextMenuConfig().width ?? '250px',
8649
+ height: this.contextMenuConfig().height ?? 'auto',
8650
+ align: this.contextMenuConfig().align,
8651
+ toggle: true,
8652
+ bindings: [
8653
+ inputBinding('options', this.contextMenuOptions),
8654
+ inputBinding('hide', this.exclude),
8655
+ inputBinding('visibilityRule', this.visibilityRule),
8656
+ inputBinding('disableRule', this.disableRule),
8657
+ inputBinding('extraData', this.extraData),
8658
+ outputBinding('action', (event) => {
8659
+ this.action.emit(event);
8660
+ this.selectorDir()?.close();
8661
+ }),
8662
+ ],
8663
+ };
8664
+ }, ...(ngDevMode ? [{ debugName: "selectorConfig" }] : /* istanbul ignore next */ []));
8644
8665
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ContextMenuComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
8645
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.9", type: ContextMenuComponent, isStandalone: true, selector: "m-context-menu, m-one-context-menu", inputs: { toggle: { classPropertyName: "toggle", publicName: "toggle", isSignal: true, isRequired: false, transformFunction: null }, remote: { classPropertyName: "remote", publicName: "remote", isSignal: true, isRequired: false, transformFunction: null }, exclude: { classPropertyName: "exclude", publicName: "exclude", isSignal: true, isRequired: false, transformFunction: null }, visibilityRule: { classPropertyName: "visibilityRule", publicName: "visibilityRule", isSignal: true, isRequired: false, transformFunction: null }, disableRule: { classPropertyName: "disableRule", publicName: "disableRule", isSignal: true, isRequired: false, transformFunction: null }, extraData: { classPropertyName: "extraData", publicName: "extraData", isSignal: true, isRequired: false, transformFunction: null }, inverted: { classPropertyName: "inverted", publicName: "inverted", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { toggle: "toggleChange", action: "action" }, viewQueries: [{ propertyName: "selectorDir", first: true, predicate: SelectorDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
8666
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.9", type: ContextMenuComponent, isStandalone: true, selector: "m-context-menu, m-one-context-menu", inputs: { toggle: { classPropertyName: "toggle", publicName: "toggle", isSignal: true, isRequired: false, transformFunction: null }, remote: { classPropertyName: "remote", publicName: "remote", isSignal: true, isRequired: false, transformFunction: null }, exclude: { classPropertyName: "exclude", publicName: "exclude", isSignal: true, isRequired: false, transformFunction: null }, visibilityRule: { classPropertyName: "visibilityRule", publicName: "visibilityRule", isSignal: true, isRequired: false, transformFunction: null }, disableRule: { classPropertyName: "disableRule", publicName: "disableRule", isSignal: true, isRequired: false, transformFunction: null }, extraData: { classPropertyName: "extraData", publicName: "extraData", isSignal: true, isRequired: false, transformFunction: null }, inverted: { classPropertyName: "inverted", publicName: "inverted", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { toggle: "toggleChange", action: "action" }, viewQueries: [{ propertyName: "selectorDir", first: true, predicate: SelectorDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
8646
8667
  <m-one-button
8647
8668
  [config]="triggerButtonConfig()"
8648
8669
  [mSelector]="selectorConfig()"
@@ -8666,7 +8687,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
8666
8687
  `,
8667
8688
  changeDetection: ChangeDetectionStrategy.OnPush,
8668
8689
  }]
8669
- }], propDecorators: { toggle: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggle", required: false }] }, { type: i0.Output, args: ["toggleChange"] }], remote: [{ type: i0.Input, args: [{ isSignal: true, alias: "remote", required: false }] }], exclude: [{ type: i0.Input, args: [{ isSignal: true, alias: "exclude", required: false }] }], visibilityRule: [{ type: i0.Input, args: [{ isSignal: true, alias: "visibilityRule", required: false }] }], disableRule: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableRule", required: false }] }], extraData: [{ type: i0.Input, args: [{ isSignal: true, alias: "extraData", required: false }] }], inverted: [{ type: i0.Input, args: [{ isSignal: true, alias: "inverted", required: false }] }], action: [{ type: i0.Output, args: ["action"] }], selectorDir: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SelectorDirective), { isSignal: true }] }] } });
8690
+ }], propDecorators: { toggle: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggle", required: false }] }, { type: i0.Output, args: ["toggleChange"] }], remote: [{ type: i0.Input, args: [{ isSignal: true, alias: "remote", required: false }] }], exclude: [{ type: i0.Input, args: [{ isSignal: true, alias: "exclude", required: false }] }], visibilityRule: [{ type: i0.Input, args: [{ isSignal: true, alias: "visibilityRule", required: false }] }], disableRule: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableRule", required: false }] }], extraData: [{ type: i0.Input, args: [{ isSignal: true, alias: "extraData", required: false }] }], inverted: [{ type: i0.Input, args: [{ isSignal: true, alias: "inverted", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], action: [{ type: i0.Output, args: ["action"] }], selectorDir: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SelectorDirective), { isSignal: true }] }] } });
8670
8691
 
8671
8692
  let HeaderComponent$1 = class HeaderComponent {
8672
8693
  level = input(3, ...(ngDevMode ? [{ debugName: "level" }] : /* istanbul ignore next */ []));
@@ -8934,7 +8955,7 @@ class SectionHeaderComponent {
8934
8955
  this.accordion()?.toggle();
8935
8956
  }
8936
8957
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: SectionHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8937
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: SectionHeaderComponent, isStandalone: true, selector: "m-section-header", inputs: { sticky: { classPropertyName: "sticky", publicName: "sticky", isSignal: true, isRequired: false, transformFunction: null }, level: { classPropertyName: "level", publicName: "level", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, subLabel: { classPropertyName: "subLabel", publicName: "subLabel", isSignal: true, isRequired: false, transformFunction: null }, noTranslate: { classPropertyName: "noTranslate", publicName: "noTranslate", isSignal: true, isRequired: false, transformFunction: null }, params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: false, transformFunction: null }, reverse: { classPropertyName: "reverse", publicName: "reverse", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, menu: { classPropertyName: "menu", publicName: "menu", isSignal: true, isRequired: false, transformFunction: null }, menuName: { classPropertyName: "menuName", publicName: "menuName", isSignal: true, isRequired: false, transformFunction: null }, visibilityRule: { classPropertyName: "visibilityRule", publicName: "visibilityRule", isSignal: true, isRequired: false, transformFunction: null }, disableRule: { classPropertyName: "disableRule", publicName: "disableRule", isSignal: true, isRequired: false, transformFunction: null }, extraData: { classPropertyName: "extraData", publicName: "extraData", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, showBack: { classPropertyName: "showBack", publicName: "showBack", isSignal: true, isRequired: false, transformFunction: null }, actionButton: { classPropertyName: "actionButton", publicName: "actionButton", isSignal: true, isRequired: false, transformFunction: null }, actionLabel: { classPropertyName: "actionLabel", publicName: "actionLabel", isSignal: true, isRequired: false, transformFunction: null }, spacing: { classPropertyName: "spacing", publicName: "spacing", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { actionClick: "actionClick", action: "action", back: "back" }, host: { properties: { "class.is-sticky-enabled": "sticky()", "class.is-sticky": "isSticky()", "class.has-menu": "hasMenu()", "class.align-left": "alignment() === \"left\"", "class.align-center": "alignment() === \"center\"", "class.align-right": "alignment() === \"right\"", "class.has-sidepanel": "sidepanel()", "class.no-border": "noBorder()", "class.spacing": "spacing()", "class.box-center": "boxAlign() === \"center\"", "class.box-right": "boxAlign() === \"right\"", "style.--m-section-header-max-width": "resolvedMaxWidth()" }, classAttribute: "m-section-header" }, ngImport: i0, template: "<!-- One declaration of the row, rendered by whichever branch `spacing` picks.\n Hoisted into a template rather than written twice: an `<ng-content>` may\n appear once per selector in a component, so the duplicated copy caught\n nothing and a header projecting a title rendered it in the `spacing`\n branch alone. -->\n<ng-template #body>\n @if (accordion(); as accordionRef) {\n <div\n class=\"section-header__toggle\"\n [class.section-header__toggle--rotate]=\"toggleRotates()\"\n [class.section-header__toggle--open]=\"accordionRef.isOpen()\"\n [id]=\"accordionRef.headerId\"\n [attr.aria-expanded]=\"accordionRef.isOpen()\"\n [attr.aria-controls]=\"accordionRef.bodyId\"\n >\n <m-button\n [config]=\"{ icon: toggleIconName(), iconOnly: true, variant: 'ghost' }\"\n (clicked)=\"onToggleClick()\" />\n </div>\n }\n @if (showBack()) {\n <div class=\"section-header__back\">\n <m-button\n [config]=\"{ icon: 'arrow_back', iconOnly: true }\"\n (clicked)=\"back.emit()\" />\n </div>\n } @else if (icon(); as iconName) {\n <m-icon [name]=\"iconName\" />\n }\n <div\n class=\"section-header__title\"\n [class.section-header__title--reverse]=\"reverse()\"\n >\n <!-- The title slot is the catch-all rather than a `[label]` one: every\n header already projecting a heading writes it unselected, and a\n selector here would drop that content on the floor. What the design\n page emits \u2014 `<span label>` \u2014 is caught by it too, nothing else\n claiming the node. -->\n <ng-content />\n <!-- The written label, drawn beside the slot rather than as its\n `ng-content` fallback. A fallback renders only while *nothing* is\n projected, and the design Canvas always projects the slot span \u2014\n empty until a Control is dropped in it \u2014 so a fallback there would\n blank the label a header is still configured with. `label` answers\n instead, which no header projecting a title sets. -->\n @if (label()) {\n <m-header\n [level]=\"level()\"\n [label]=\"label()\"\n [params]=\"params()\"\n [noTranslate]=\"noTranslate()\" />\n }\n @if (subText(); as sub) {\n <span class=\"section-header__sub\">{{ sub }}</span>\n }\n </div>\n <!-- A FilterGroup projected into the header row, selected by tag rather than\n by an attribute \u2014 the same shape a Section catches its `m-action` with.\n A header has room for one icon and not for a row, so a group landing\n here is squeezed by placement (ADR 0025); nothing here enforces that,\n the caller binding `[squeeze]` on the tag it projects. -->\n <div class=\"section-header__filters\">\n <ng-content select=\"m-section-filter-group\" />\n </div>\n @if (actionConfig(); as action) {\n <div class=\"section-header__action\">\n <m-button [config]=\"action\" (clicked)=\"actionClick.emit()\" />\n </div>\n }\n @if (hasMenu()) {\n <div class=\"section-header__menu\">\n <m-context-menu\n [config]=\"menu()\"\n [name]=\"menuName()\"\n [visibilityRule]=\"visibilityRule()\"\n [disableRule]=\"disableRule()\"\n [extraData]=\"extraData()\"\n (action)=\"action.emit($event)\"\n />\n </div>\n }\n</ng-template>\n\n<!-- Always the same two boxes, whether or not a `maxWidth` is in force. The\n border and the sticky backdrop live on the host and keep spanning the\n Section's full width; only this container narrows and is placed by the\n Section's `align`, so the heading lines up with the body under it. -->\n<div class=\"section-header__container\">\n <div class=\"section-header__inner\">\n <ng-container [ngTemplateOutlet]=\"body\" />\n </div>\n</div>\n", 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:flex;align-items:center;gap:.5rem;min-height:var(--section-header-min-height, calc(var(--section-header-py, .5rem) * 2 + 1.25rem));border-bottom:1px solid var(--m-backdrop-border);padding:var(--section-header-py, .85rem) var(--section-px, 1rem);width:100%;grid-column:1/-1}:host(.no-border){border-bottom:none}:host(.spacing){padding:0;width:100%}.section-header__container{width:100%;min-width:0;max-width:var(--m-section-header-max-width, none);margin-inline:0 auto}:host(.box-center) .section-header__container{margin-inline:auto}:host(.box-right) .section-header__container{margin-inline:auto 0}.section-header__inner{display:flex;align-items:center;gap:.5rem;width:100%;min-width:0}.section-header__inner .section-header__title{flex:1;min-width:0;gap:.5rem}:host(.spacing) .section-header__inner{padding:1rem 1.5rem}:host(.has-sidepanel){padding-right:50px}:host(.has-sidepanel.has-menu){padding-right:50px}:host(.spacing.has-sidepanel) .section-header__inner{padding-right:calc(1.5rem + 50px)}:host(.is-sticky-enabled){position:sticky;top:0;z-index:10}:host(.is-sticky-enabled){background:color-mix(in srgb,var(--m-background) 80%,transparent);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%)}.section-header__toggle{display:flex;flex-shrink:0}.section-header__toggle.section-header__toggle--rotate m-button{display:flex;transition:transform .3s cubic-bezier(.4,0,.2,1)}.section-header__toggle.section-header__toggle--rotate.section-header__toggle--open m-button{transform:rotate(180deg)}.section-header__title{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}m-header{min-width:0}.section-header__title--reverse{flex-direction:column-reverse}.section-header__sub{font-size:.8rem;color:var(--m-text-secondary);line-height:1.2}:host(.align-center){--m-header-justify: center}:host(.align-right){--m-header-justify: flex-end}:host(.has-menu){padding-right:0}:host(.spacing.has-menu) .section-header__inner{padding-right:0}.section-header__filters{display:contents}.section-header__filters m-section-filter-group{width:auto;flex-shrink:0;border-bottom:none}.section-header__back{display:flex;align-items:center;flex-shrink:0}.section-header__menu,.section-header__action{margin-left:auto;flex-shrink:0;display:flex;align-items:center}.section-header__action+.section-header__menu{margin-left:0}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted"], outputs: ["toggleChange", "action"] }, { kind: "component", type: HeaderComponent$1, selector: "m-header", inputs: ["level", "label", "actionButton", "actionLabel", "noTranslate", "params"], outputs: ["actionClick"] }, { kind: "component", type: IconComponent, selector: "m-icon, m-one-icon", inputs: ["config", "name", "color", "size", "one", "baseUrl", "remote"], outputs: ["configChange"] }, { kind: "component", type: ButtonComponent, selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
8958
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: SectionHeaderComponent, isStandalone: true, selector: "m-section-header", inputs: { sticky: { classPropertyName: "sticky", publicName: "sticky", isSignal: true, isRequired: false, transformFunction: null }, level: { classPropertyName: "level", publicName: "level", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, subLabel: { classPropertyName: "subLabel", publicName: "subLabel", isSignal: true, isRequired: false, transformFunction: null }, noTranslate: { classPropertyName: "noTranslate", publicName: "noTranslate", isSignal: true, isRequired: false, transformFunction: null }, params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: false, transformFunction: null }, reverse: { classPropertyName: "reverse", publicName: "reverse", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, menu: { classPropertyName: "menu", publicName: "menu", isSignal: true, isRequired: false, transformFunction: null }, menuName: { classPropertyName: "menuName", publicName: "menuName", isSignal: true, isRequired: false, transformFunction: null }, visibilityRule: { classPropertyName: "visibilityRule", publicName: "visibilityRule", isSignal: true, isRequired: false, transformFunction: null }, disableRule: { classPropertyName: "disableRule", publicName: "disableRule", isSignal: true, isRequired: false, transformFunction: null }, extraData: { classPropertyName: "extraData", publicName: "extraData", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, showBack: { classPropertyName: "showBack", publicName: "showBack", isSignal: true, isRequired: false, transformFunction: null }, actionButton: { classPropertyName: "actionButton", publicName: "actionButton", isSignal: true, isRequired: false, transformFunction: null }, actionLabel: { classPropertyName: "actionLabel", publicName: "actionLabel", isSignal: true, isRequired: false, transformFunction: null }, spacing: { classPropertyName: "spacing", publicName: "spacing", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { actionClick: "actionClick", action: "action", back: "back" }, host: { properties: { "class.is-sticky-enabled": "sticky()", "class.is-sticky": "isSticky()", "class.has-menu": "hasMenu()", "class.align-left": "alignment() === \"left\"", "class.align-center": "alignment() === \"center\"", "class.align-right": "alignment() === \"right\"", "class.has-sidepanel": "sidepanel()", "class.no-border": "noBorder()", "class.spacing": "spacing()", "class.box-center": "boxAlign() === \"center\"", "class.box-right": "boxAlign() === \"right\"", "style.--m-section-header-max-width": "resolvedMaxWidth()" }, classAttribute: "m-section-header" }, ngImport: i0, template: "<!-- One declaration of the row, rendered by whichever branch `spacing` picks.\n Hoisted into a template rather than written twice: an `<ng-content>` may\n appear once per selector in a component, so the duplicated copy caught\n nothing and a header projecting a title rendered it in the `spacing`\n branch alone. -->\n<ng-template #body>\n @if (accordion(); as accordionRef) {\n <div\n class=\"section-header__toggle\"\n [class.section-header__toggle--rotate]=\"toggleRotates()\"\n [class.section-header__toggle--open]=\"accordionRef.isOpen()\"\n [id]=\"accordionRef.headerId\"\n [attr.aria-expanded]=\"accordionRef.isOpen()\"\n [attr.aria-controls]=\"accordionRef.bodyId\"\n >\n <m-button\n [config]=\"{ icon: toggleIconName(), iconOnly: true, variant: 'ghost' }\"\n (clicked)=\"onToggleClick()\" />\n </div>\n }\n @if (showBack()) {\n <div class=\"section-header__back\">\n <m-button\n [config]=\"{ icon: 'arrow_back', iconOnly: true }\"\n (clicked)=\"back.emit()\" />\n </div>\n } @else if (icon(); as iconName) {\n <m-icon [name]=\"iconName\" />\n }\n <div\n class=\"section-header__title\"\n [class.section-header__title--reverse]=\"reverse()\"\n >\n <!-- The title slot is the catch-all rather than a `[label]` one: every\n header already projecting a heading writes it unselected, and a\n selector here would drop that content on the floor. What the design\n page emits \u2014 `<span label>` \u2014 is caught by it too, nothing else\n claiming the node. -->\n <ng-content />\n <!-- The written label, drawn beside the slot rather than as its\n `ng-content` fallback. A fallback renders only while *nothing* is\n projected, and the design Canvas always projects the slot span \u2014\n empty until a Control is dropped in it \u2014 so a fallback there would\n blank the label a header is still configured with. `label` answers\n instead, which no header projecting a title sets. -->\n @if (label()) {\n <m-header\n [level]=\"level()\"\n [label]=\"label()\"\n [params]=\"params()\"\n [noTranslate]=\"noTranslate()\" />\n }\n @if (subText(); as sub) {\n <span class=\"section-header__sub\">{{ sub }}</span>\n }\n </div>\n <!-- A FilterGroup projected into the header row, selected by tag rather than\n by an attribute \u2014 the same shape a Section catches its `m-action` with.\n A header has room for one icon and not for a row, so a group landing\n here is squeezed by placement (ADR 0025); nothing here enforces that,\n the caller binding `[squeeze]` on the tag it projects. -->\n <div class=\"section-header__filters\">\n <ng-content select=\"m-section-filter-group\" />\n </div>\n @if (actionConfig(); as action) {\n <div class=\"section-header__action\">\n <m-button [config]=\"action\" (clicked)=\"actionClick.emit()\" />\n </div>\n }\n @if (hasMenu()) {\n <div class=\"section-header__menu\">\n <m-context-menu\n [config]=\"menu()\"\n [name]=\"menuName()\"\n [visibilityRule]=\"visibilityRule()\"\n [disableRule]=\"disableRule()\"\n [extraData]=\"extraData()\"\n (action)=\"action.emit($event)\"\n />\n </div>\n }\n</ng-template>\n\n<!-- Always the same two boxes, whether or not a `maxWidth` is in force. The\n border and the sticky backdrop live on the host and keep spanning the\n Section's full width; only this container narrows and is placed by the\n Section's `align`, so the heading lines up with the body under it. -->\n<div class=\"section-header__container\">\n <div class=\"section-header__inner\">\n <ng-container [ngTemplateOutlet]=\"body\" />\n </div>\n</div>\n", 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:flex;align-items:center;gap:.5rem;min-height:var(--section-header-min-height, calc(var(--section-header-py, .5rem) * 2 + 1.25rem));border-bottom:1px solid var(--m-backdrop-border);padding:var(--section-header-py, .85rem) var(--section-px, 1rem);width:100%;grid-column:1/-1}:host(.no-border){border-bottom:none}:host(.spacing){padding:0;width:100%}.section-header__container{width:100%;min-width:0;max-width:var(--m-section-header-max-width, none);margin-inline:0 auto}:host(.box-center) .section-header__container{margin-inline:auto}:host(.box-right) .section-header__container{margin-inline:auto 0}.section-header__inner{display:flex;align-items:center;gap:.5rem;width:100%;min-width:0}.section-header__inner .section-header__title{flex:1;min-width:0;gap:.5rem}:host(.spacing) .section-header__inner{padding:1rem 1.5rem}:host(.has-sidepanel){padding-right:50px}:host(.has-sidepanel.has-menu){padding-right:50px}:host(.spacing.has-sidepanel) .section-header__inner{padding-right:calc(1.5rem + 50px)}:host(.is-sticky-enabled){position:sticky;top:0;z-index:10}:host(.is-sticky-enabled){background:color-mix(in srgb,var(--m-background) 80%,transparent);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%)}.section-header__toggle{display:flex;flex-shrink:0}.section-header__toggle.section-header__toggle--rotate m-button{display:flex;transition:transform .3s cubic-bezier(.4,0,.2,1)}.section-header__toggle.section-header__toggle--rotate.section-header__toggle--open m-button{transform:rotate(180deg)}.section-header__title{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}m-header{min-width:0}.section-header__title--reverse{flex-direction:column-reverse}.section-header__sub{font-size:.8rem;color:var(--m-text-secondary);line-height:1.2}:host(.align-center){--m-header-justify: center}:host(.align-right){--m-header-justify: flex-end}:host(.has-menu){padding-right:0}:host(.spacing.has-menu) .section-header__inner{padding-right:0}.section-header__filters{display:contents}.section-header__filters m-section-filter-group{width:auto;flex-shrink:0;border-bottom:none}.section-header__back{display:flex;align-items:center;flex-shrink:0}.section-header__menu,.section-header__action{margin-left:auto;flex-shrink:0;display:flex;align-items:center}.section-header__action+.section-header__menu{margin-left:0}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted", "options"], outputs: ["toggleChange", "action"] }, { kind: "component", type: HeaderComponent$1, selector: "m-header", inputs: ["level", "label", "actionButton", "actionLabel", "noTranslate", "params"], outputs: ["actionClick"] }, { kind: "component", type: IconComponent, selector: "m-icon, m-one-icon", inputs: ["config", "name", "color", "size", "one", "baseUrl", "remote"], outputs: ["configChange"] }, { kind: "component", type: ButtonComponent, selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
8938
8959
  }
8939
8960
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: SectionHeaderComponent, decorators: [{
8940
8961
  type: Component,
@@ -9273,7 +9294,7 @@ class ButtonGroupComponent extends ConfigComponent {
9273
9294
  }
9274
9295
  </div>
9275
9296
  }
9276
- `, isInline: true, 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)}}m-button-group .button-group:not(.is-context),m-one-button-group .button-group:not(.is-context){display:flex;flex-wrap:wrap;align-items:stretch;gap:.375em}m-button-group .button-group:not(.is-context).vertical,m-one-button-group .button-group:not(.is-context).vertical{flex-direction:column;align-items:center}m-button-group .button-group:not(.is-context).horizontal,m-one-button-group .button-group:not(.is-context).horizontal{flex-direction:row;align-items:center}m-button-group .button-group:not(.is-context).align-right,m-one-button-group .button-group:not(.is-context).align-right{justify-content:flex-end}m-button-group .button-group:not(.is-context).align-center,m-button-group .button-group:not(.is-context).center,m-one-button-group .button-group:not(.is-context).align-center,m-one-button-group .button-group:not(.is-context).center{justify-content:center}m-button-group .button-group:not(.is-context).align-left,m-one-button-group .button-group:not(.is-context).align-left{justify-content:flex-start}m-button-group .button-group.is-context,m-one-button-group .button-group.is-context{--m-grp-height: var(--m-button-group-height, 2.75em);--m-grp-radius: var(--m-button-group-radius, .875em);display:inline-flex;align-items:stretch;height:var(--m-grp-height);border-radius:var(--m-grp-radius);background:transparent;overflow:visible;position:relative;gap:.375em;will-change:transform;transition:transform .4s cubic-bezier(.16,1,.3,1)}m-button-group .button-group.is-context.is-primary,m-one-button-group .button-group.is-context.is-primary{background:var(--m-button-group-color-opposite, var(--m-one-button-group-color-opposite, var(--m-mm-dark)));--m-button-color-contrast: var(--m-inverse-text);--m-button-hover-background: rgba(0, 0, 0, .12)}m-button-group .button-group.is-context.is-primary m-button,m-button-group .button-group.is-context.is-primary m-one-button,m-button-group .button-group.is-context.is-primary .m-button,m-button-group .button-group.is-context.is-primary .m-one-button,m-one-button-group .button-group.is-context.is-primary m-button,m-one-button-group .button-group.is-context.is-primary m-one-button,m-one-button-group .button-group.is-context.is-primary .m-button,m-one-button-group .button-group.is-context.is-primary .m-one-button{--m-button-hover-background: rgba(0, 0, 0, .1)}m-button-group .button-group.is-context.is-primary m-context-menu,m-button-group .button-group.is-context.is-primary m-one-context-menu,m-button-group .button-group.is-context.is-primary .m-context-menu,m-one-button-group .button-group.is-context.is-primary m-context-menu,m-one-button-group .button-group.is-context.is-primary m-one-context-menu,m-one-button-group .button-group.is-context.is-primary .m-context-menu{--m-action-dots-hover-icon-color: var(--m-inverse-text)}m-button-group .button-group.is-context.is-primary m-context-menu:hover,m-button-group .button-group.is-context.is-primary m-one-context-menu:hover,m-button-group .button-group.is-context.is-primary .m-context-menu:hover,m-one-button-group .button-group.is-context.is-primary m-context-menu:hover,m-one-button-group .button-group.is-context.is-primary m-one-context-menu:hover,m-one-button-group .button-group.is-context.is-primary .m-context-menu:hover{background:#00000026}m-button-group .button-group.is-context:hover,m-one-button-group .button-group.is-context:hover{transform:scale(1.02);box-shadow:0 8px 24px #0000001a}m-button-group .button-group.is-context:active,m-one-button-group .button-group.is-context:active{transform:scale(.98)}m-button-group .button-group.is-context m-button,m-button-group .button-group.is-context m-one-button,m-button-group .button-group.is-context .m-button,m-button-group .button-group.is-context .m-one-button,m-one-button-group .button-group.is-context m-button,m-one-button-group .button-group.is-context m-one-button,m-one-button-group .button-group.is-context .m-button,m-one-button-group .button-group.is-context .m-one-button{flex:1;z-index:2;height:100%;--m-button-border: none;--m-button-radius: 0;--m-button-padding: 0 1.25rem;--m-button-background: transparent;--m-button-hover-background: rgba(0, 0, 0, .05);transition:all .3s cubic-bezier(.16,1,.3,1)}m-button-group .button-group.is-context m-button button,m-button-group .button-group.is-context m-one-button button,m-button-group .button-group.is-context .m-button button,m-button-group .button-group.is-context .m-one-button button,m-one-button-group .button-group.is-context m-button button,m-one-button-group .button-group.is-context m-one-button button,m-one-button-group .button-group.is-context .m-button button,m-one-button-group .button-group.is-context .m-one-button button{border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-top-left-radius:var(--m-grp-radius)!important;border-bottom-left-radius:var(--m-grp-radius)!important}m-button-group .button-group.is-context m-button button:hover,m-button-group .button-group.is-context m-one-button button:hover,m-button-group .button-group.is-context .m-button button:hover,m-button-group .button-group.is-context .m-one-button button:hover,m-one-button-group .button-group.is-context m-button button:hover,m-one-button-group .button-group.is-context m-one-button button:hover,m-one-button-group .button-group.is-context .m-button button:hover,m-one-button-group .button-group.is-context .m-one-button button:hover{transform:none!important;box-shadow:none!important}m-button-group .button-group.is-context m-button button:active,m-button-group .button-group.is-context m-one-button button:active,m-button-group .button-group.is-context .m-button button:active,m-button-group .button-group.is-context .m-one-button button:active,m-one-button-group .button-group.is-context m-button button:active,m-one-button-group .button-group.is-context m-one-button button:active,m-one-button-group .button-group.is-context .m-button button:active,m-one-button-group .button-group.is-context .m-one-button button:active{transform:none!important}m-button-group .button-group.is-context m-button,m-button-group .button-group.is-context m-one-button,m-button-group .button-group.is-context .m-button,m-button-group .button-group.is-context .m-one-button,m-one-button-group .button-group.is-context m-button,m-one-button-group .button-group.is-context m-one-button,m-one-button-group .button-group.is-context .m-button,m-one-button-group .button-group.is-context .m-one-button{--m-button-radius: var(--m-grp-radius)}m-button-group .button-group.is-context m-button button,m-button-group .button-group.is-context m-one-button button,m-button-group .button-group.is-context .m-button button,m-button-group .button-group.is-context .m-one-button button,m-one-button-group .button-group.is-context m-button button,m-one-button-group .button-group.is-context m-one-button button,m-one-button-group .button-group.is-context .m-button button,m-one-button-group .button-group.is-context .m-one-button button{border-radius:var(--m-grp-radius)!important}m-button-group .button-group.is-context m-context-menu,m-button-group .button-group.is-context m-one-context-menu,m-button-group .button-group.is-context .m-context-menu,m-one-button-group .button-group.is-context m-context-menu,m-one-button-group .button-group.is-context m-one-context-menu,m-one-button-group .button-group.is-context .m-context-menu{display:flex;align-items:center;justify-content:center;width:var(--m-grp-height);height:100%;z-index:2;transition:all .4s cubic-bezier(.16,1,.3,1);border-top-left-radius:0!important;border-bottom-left-radius:0!important;border-top-right-radius:var(--m-grp-radius)!important;border-bottom-right-radius:var(--m-grp-radius)!important;overflow:hidden;--m-action-dots-padding: 0;--m-action-dots-width: 100%;--m-action-dots-height: 100%;--m-action-dots-icon-color: var(--m-text-secondary);--m-action-dots-icon-opacity: .7;--m-action-dots-hover-icon-color: var(--m-mm);--m-action-dots-hover-icon-opacity: 1;--m-action-dots-hover-icon-transform: scale(1.1)}m-button-group .button-group.is-context m-context-menu .action-dots,m-button-group .button-group.is-context m-one-context-menu .action-dots,m-button-group .button-group.is-context .m-context-menu .action-dots,m-one-button-group .button-group.is-context m-context-menu .action-dots,m-one-button-group .button-group.is-context m-one-context-menu .action-dots,m-one-button-group .button-group.is-context .m-context-menu .action-dots{border-top-left-radius:0!important;border-bottom-left-radius:0!important;border-top-right-radius:var(--m-grp-radius)!important;border-bottom-right-radius:var(--m-grp-radius)!important}m-button-group .button-group.is-context m-context-menu:hover,m-button-group .button-group.is-context m-one-context-menu:hover,m-button-group .button-group.is-context .m-context-menu:hover,m-one-button-group .button-group.is-context m-context-menu:hover,m-one-button-group .button-group.is-context m-one-context-menu:hover,m-one-button-group .button-group.is-context .m-context-menu:hover{background:#0000000f}\n"], dependencies: [{ kind: "component", type: i0.forwardRef(() => ButtonComponent), selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }, { kind: "component", type: i0.forwardRef(() => ContextMenuComponent), selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted"], outputs: ["toggleChange", "action"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
9297
+ `, isInline: true, 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)}}m-button-group .button-group:not(.is-context),m-one-button-group .button-group:not(.is-context){display:flex;flex-wrap:wrap;align-items:stretch;gap:.375em}m-button-group .button-group:not(.is-context).vertical,m-one-button-group .button-group:not(.is-context).vertical{flex-direction:column;align-items:center}m-button-group .button-group:not(.is-context).horizontal,m-one-button-group .button-group:not(.is-context).horizontal{flex-direction:row;align-items:center}m-button-group .button-group:not(.is-context).align-right,m-one-button-group .button-group:not(.is-context).align-right{justify-content:flex-end}m-button-group .button-group:not(.is-context).align-center,m-button-group .button-group:not(.is-context).center,m-one-button-group .button-group:not(.is-context).align-center,m-one-button-group .button-group:not(.is-context).center{justify-content:center}m-button-group .button-group:not(.is-context).align-left,m-one-button-group .button-group:not(.is-context).align-left{justify-content:flex-start}m-button-group .button-group.is-context,m-one-button-group .button-group.is-context{--m-grp-height: var(--m-button-group-height, 2.75em);--m-grp-radius: var(--m-button-group-radius, .875em);display:inline-flex;align-items:stretch;height:var(--m-grp-height);border-radius:var(--m-grp-radius);background:transparent;overflow:visible;position:relative;gap:.375em;will-change:transform;transition:transform .4s cubic-bezier(.16,1,.3,1)}m-button-group .button-group.is-context.is-primary,m-one-button-group .button-group.is-context.is-primary{background:var(--m-button-group-color-opposite, var(--m-one-button-group-color-opposite, var(--m-mm-dark)));--m-button-color-contrast: var(--m-inverse-text);--m-button-hover-background: rgba(0, 0, 0, .12)}m-button-group .button-group.is-context.is-primary m-button,m-button-group .button-group.is-context.is-primary m-one-button,m-button-group .button-group.is-context.is-primary .m-button,m-button-group .button-group.is-context.is-primary .m-one-button,m-one-button-group .button-group.is-context.is-primary m-button,m-one-button-group .button-group.is-context.is-primary m-one-button,m-one-button-group .button-group.is-context.is-primary .m-button,m-one-button-group .button-group.is-context.is-primary .m-one-button{--m-button-hover-background: rgba(0, 0, 0, .1)}m-button-group .button-group.is-context.is-primary m-context-menu,m-button-group .button-group.is-context.is-primary m-one-context-menu,m-button-group .button-group.is-context.is-primary .m-context-menu,m-one-button-group .button-group.is-context.is-primary m-context-menu,m-one-button-group .button-group.is-context.is-primary m-one-context-menu,m-one-button-group .button-group.is-context.is-primary .m-context-menu{--m-action-dots-hover-icon-color: var(--m-inverse-text)}m-button-group .button-group.is-context.is-primary m-context-menu:hover,m-button-group .button-group.is-context.is-primary m-one-context-menu:hover,m-button-group .button-group.is-context.is-primary .m-context-menu:hover,m-one-button-group .button-group.is-context.is-primary m-context-menu:hover,m-one-button-group .button-group.is-context.is-primary m-one-context-menu:hover,m-one-button-group .button-group.is-context.is-primary .m-context-menu:hover{background:#00000026}m-button-group .button-group.is-context:hover,m-one-button-group .button-group.is-context:hover{transform:scale(1.02);box-shadow:0 8px 24px #0000001a}m-button-group .button-group.is-context:active,m-one-button-group .button-group.is-context:active{transform:scale(.98)}m-button-group .button-group.is-context m-button,m-button-group .button-group.is-context m-one-button,m-button-group .button-group.is-context .m-button,m-button-group .button-group.is-context .m-one-button,m-one-button-group .button-group.is-context m-button,m-one-button-group .button-group.is-context m-one-button,m-one-button-group .button-group.is-context .m-button,m-one-button-group .button-group.is-context .m-one-button{flex:1;z-index:2;height:100%;--m-button-border: none;--m-button-radius: 0;--m-button-padding: 0 1.25rem;--m-button-background: transparent;--m-button-hover-background: rgba(0, 0, 0, .05);transition:all .3s cubic-bezier(.16,1,.3,1)}m-button-group .button-group.is-context m-button button,m-button-group .button-group.is-context m-one-button button,m-button-group .button-group.is-context .m-button button,m-button-group .button-group.is-context .m-one-button button,m-one-button-group .button-group.is-context m-button button,m-one-button-group .button-group.is-context m-one-button button,m-one-button-group .button-group.is-context .m-button button,m-one-button-group .button-group.is-context .m-one-button button{border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-top-left-radius:var(--m-grp-radius)!important;border-bottom-left-radius:var(--m-grp-radius)!important}m-button-group .button-group.is-context m-button button:hover,m-button-group .button-group.is-context m-one-button button:hover,m-button-group .button-group.is-context .m-button button:hover,m-button-group .button-group.is-context .m-one-button button:hover,m-one-button-group .button-group.is-context m-button button:hover,m-one-button-group .button-group.is-context m-one-button button:hover,m-one-button-group .button-group.is-context .m-button button:hover,m-one-button-group .button-group.is-context .m-one-button button:hover{transform:none!important;box-shadow:none!important}m-button-group .button-group.is-context m-button button:active,m-button-group .button-group.is-context m-one-button button:active,m-button-group .button-group.is-context .m-button button:active,m-button-group .button-group.is-context .m-one-button button:active,m-one-button-group .button-group.is-context m-button button:active,m-one-button-group .button-group.is-context m-one-button button:active,m-one-button-group .button-group.is-context .m-button button:active,m-one-button-group .button-group.is-context .m-one-button button:active{transform:none!important}m-button-group .button-group.is-context m-button,m-button-group .button-group.is-context m-one-button,m-button-group .button-group.is-context .m-button,m-button-group .button-group.is-context .m-one-button,m-one-button-group .button-group.is-context m-button,m-one-button-group .button-group.is-context m-one-button,m-one-button-group .button-group.is-context .m-button,m-one-button-group .button-group.is-context .m-one-button{--m-button-radius: var(--m-grp-radius)}m-button-group .button-group.is-context m-button button,m-button-group .button-group.is-context m-one-button button,m-button-group .button-group.is-context .m-button button,m-button-group .button-group.is-context .m-one-button button,m-one-button-group .button-group.is-context m-button button,m-one-button-group .button-group.is-context m-one-button button,m-one-button-group .button-group.is-context .m-button button,m-one-button-group .button-group.is-context .m-one-button button{border-radius:var(--m-grp-radius)!important}m-button-group .button-group.is-context m-context-menu,m-button-group .button-group.is-context m-one-context-menu,m-button-group .button-group.is-context .m-context-menu,m-one-button-group .button-group.is-context m-context-menu,m-one-button-group .button-group.is-context m-one-context-menu,m-one-button-group .button-group.is-context .m-context-menu{display:flex;align-items:center;justify-content:center;width:var(--m-grp-height);height:100%;z-index:2;transition:all .4s cubic-bezier(.16,1,.3,1);border-top-left-radius:0!important;border-bottom-left-radius:0!important;border-top-right-radius:var(--m-grp-radius)!important;border-bottom-right-radius:var(--m-grp-radius)!important;overflow:hidden;--m-action-dots-padding: 0;--m-action-dots-width: 100%;--m-action-dots-height: 100%;--m-action-dots-icon-color: var(--m-text-secondary);--m-action-dots-icon-opacity: .7;--m-action-dots-hover-icon-color: var(--m-mm);--m-action-dots-hover-icon-opacity: 1;--m-action-dots-hover-icon-transform: scale(1.1)}m-button-group .button-group.is-context m-context-menu .action-dots,m-button-group .button-group.is-context m-one-context-menu .action-dots,m-button-group .button-group.is-context .m-context-menu .action-dots,m-one-button-group .button-group.is-context m-context-menu .action-dots,m-one-button-group .button-group.is-context m-one-context-menu .action-dots,m-one-button-group .button-group.is-context .m-context-menu .action-dots{border-top-left-radius:0!important;border-bottom-left-radius:0!important;border-top-right-radius:var(--m-grp-radius)!important;border-bottom-right-radius:var(--m-grp-radius)!important}m-button-group .button-group.is-context m-context-menu:hover,m-button-group .button-group.is-context m-one-context-menu:hover,m-button-group .button-group.is-context .m-context-menu:hover,m-one-button-group .button-group.is-context m-context-menu:hover,m-one-button-group .button-group.is-context m-one-context-menu:hover,m-one-button-group .button-group.is-context .m-context-menu:hover{background:#0000000f}\n"], dependencies: [{ kind: "component", type: i0.forwardRef(() => ButtonComponent), selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }, { kind: "component", type: i0.forwardRef(() => ContextMenuComponent), selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted", "options"], outputs: ["toggleChange", "action"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
9277
9298
  }
9278
9299
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ButtonGroupComponent, decorators: [{
9279
9300
  type: Component,
@@ -9581,7 +9602,7 @@ class ActionComponent extends ButtonGroupComponent {
9581
9602
  this.clicked.emit(button);
9582
9603
  };
9583
9604
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9584
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: ActionComponent, isStandalone: true, selector: "m-action, m-one-action", inputs: { sticky: { classPropertyName: "sticky", publicName: "sticky", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, renderIds: { classPropertyName: "renderIds", publicName: "renderIds", isSignal: true, isRequired: false, transformFunction: null }, squeezeAt: { classPropertyName: "squeezeAt", publicName: "squeezeAt", isSignal: true, isRequired: false, transformFunction: null }, squeezeMode: { classPropertyName: "squeezeMode", publicName: "squeezeMode", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.m-action--host-sticky": "sticky()" } }, usesInheritance: true, ngImport: i0, template: "@let buttons = actionButtons();\n<!-- No `config()` guard: a bar the Design editor folded its Buttons into has no\n `button_groups/<name>.yml` behind it \u2014 they ride on `[buttons]` instead\n (ADR 0009, ADR 0010) \u2014 so what decides whether the row exists is whether\n there are Buttons in it. Empty, it draws only on the Canvas, where it is\n the drop space a Button lands on. -->\n@if (buttons.length || isDesignMode) {\n <div\n class=\"m-action\"\n [class.m-action--stuck]=\"isStuck()\"\n [class.m-action--toggle]=\"resolvedVariant() === 'toggle'\"\n [class.m-action--icon-only]=\"activeSqueeze() === 'icon'\"\n >\n @for (button of visibleButtons(); track $index) {\n <button\n type=\"button\"\n class=\"m-action__btn\"\n [attr.data-testid]=\"(button.name || '') + '-btn'\"\n [attr.render-id]=\"renderIds()?.[button.name ?? '']\"\n [class.active]=\"isActive(button)\"\n [style.--m-action-color]=\"fillColor(button)\"\n [style.--m-action-color-contrast]=\"contrastColor(button)\"\n [style.--m-action-label]=\"labelColor(button)\"\n [disabled]=\"isDisabled(button.name)\"\n (click)=\"select(button)\"\n >\n @if (button.icon) {\n <m-icon\n [name]=\"button.icon\"\n [color]=\"iconColor(button)\"\n [remote]=\"remote() ?? config()?.remote\"\n />\n }\n @if (button.label && !isLabelHidden(button)) {\n <span class=\"m-action__label\">{{ button.label | translate }}</span>\n }\n </button>\n }\n @if (menuButtons().length) {\n <!-- The Buttons the bar could not fit. Squeezed rather than dropped:\n an action the User can still reach behind one press beats an action\n that silently stopped existing at 400px. -->\n <m-context-menu\n class=\"m-action__overflow\"\n [config]=\"squeezeMenu()\"\n [remote]=\"remote() ?? config()?.remote\"\n (action)=\"onMenuAction($event)\"\n />\n }\n @if (!buttons.length) {\n <!-- A bar with nothing in it has no box, and a slot with no box is a slot\n nothing can be dropped on \u2014 the same rect an empty projected Card is\n given (m-one-ui `.card-drop-space`). -->\n <span class=\"m-action__drop\"></span>\n }\n </div>\n}\n", 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)}}m-action,m-one-action{display:block;width:100%;grid-column:1/-1}m-action.m-action--host-sticky,m-one-action.m-action--host-sticky{position:sticky;top:0;z-index:50;background:#ffffffeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.m-action{display:flex;flex-wrap:nowrap;background:transparent;width:100%;border-bottom:1px solid #f1f5f9;--m-action-color: var(--m-button-color, var(--m-one-button-color, var(--m-mm)));--m-action-color-contrast: var(--m-button-color-contrast, var(--m-one-button-color-contrast, #ffffff))}.m-action--stuck{border-bottom-color:#00000014;box-shadow:0 2px 10px #0000000f}.m-action__btn{flex:1;min-width:0;padding:1rem 2rem;border:none;background:transparent;color:var(--m-action-label, #1e293b);font-weight:300;font-size:.9rem;display:flex;align-items:center;justify-content:center;gap:.6rem;white-space:nowrap;overflow:hidden;cursor:pointer;border-right:1px solid #f1f5f9;transition:all .25s cubic-bezier(.4,0,.2,1)}.m-action__btn:last-child{border-right:none}.m-action__btn:hover{background:#f8fafc;color:var(--m-action-color)}.m-action__btn .m-icon{transition:transform .2s ease}.m-action__btn:hover .m-icon{transform:scale(1.1)}.m-action__btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.m-action__btn.active{color:var(--m-action-color);font-weight:500}.m-action--toggle .m-action__btn{position:relative;filter:grayscale(100%);transition:all .25s cubic-bezier(.4,0,.2,1),filter .25s cubic-bezier(.4,0,.2,1)}.m-action--toggle .m-action__btn.active{filter:none}.m-action--toggle .m-action__btn.active:hover:not(:disabled){filter:none}.m-action--icon-only .m-action__btn{padding:1rem .5rem;gap:0}.m-action__overflow{display:flex;align-items:center;padding:0 .5rem;flex:0 0 auto}.m-action__drop{display:block;flex:1;min-height:3.5rem;margin:.5rem;border:1px dashed currentColor;border-radius:.25rem;opacity:.4;pointer-events:none}.m-action__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}@container mag-grid (max-width: 767.98px){.m-action__btn{padding:1rem .75rem;gap:.4rem}}@container mag-grid (max-width: 575.98px){.m-action__btn{padding:.85rem .4rem;font-size:.8rem}}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "component", type: i0.forwardRef(() => IconComponent), selector: "m-icon, m-one-icon", inputs: ["config", "name", "color", "size", "one", "baseUrl", "remote"], outputs: ["configChange"] }, { kind: "component", type: i0.forwardRef(() => ContextMenuComponent), selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted"], outputs: ["toggleChange", "action"] }, { kind: "pipe", type: i0.forwardRef(() => TranslatePipe), name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
9605
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: ActionComponent, isStandalone: true, selector: "m-action, m-one-action", inputs: { sticky: { classPropertyName: "sticky", publicName: "sticky", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, renderIds: { classPropertyName: "renderIds", publicName: "renderIds", isSignal: true, isRequired: false, transformFunction: null }, squeezeAt: { classPropertyName: "squeezeAt", publicName: "squeezeAt", isSignal: true, isRequired: false, transformFunction: null }, squeezeMode: { classPropertyName: "squeezeMode", publicName: "squeezeMode", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.m-action--host-sticky": "sticky()" } }, usesInheritance: true, ngImport: i0, template: "@let buttons = actionButtons();\n<!-- No `config()` guard: a bar the Design editor folded its Buttons into has no\n `button_groups/<name>.yml` behind it \u2014 they ride on `[buttons]` instead\n (ADR 0009, ADR 0010) \u2014 so what decides whether the row exists is whether\n there are Buttons in it. Empty, it draws only on the Canvas, where it is\n the drop space a Button lands on. -->\n@if (buttons.length || isDesignMode) {\n <div\n class=\"m-action\"\n [class.m-action--stuck]=\"isStuck()\"\n [class.m-action--toggle]=\"resolvedVariant() === 'toggle'\"\n [class.m-action--icon-only]=\"activeSqueeze() === 'icon'\"\n >\n @for (button of visibleButtons(); track $index) {\n <button\n type=\"button\"\n class=\"m-action__btn\"\n [attr.data-testid]=\"(button.name || '') + '-btn'\"\n [attr.render-id]=\"renderIds()?.[button.name ?? '']\"\n [class.active]=\"isActive(button)\"\n [style.--m-action-color]=\"fillColor(button)\"\n [style.--m-action-color-contrast]=\"contrastColor(button)\"\n [style.--m-action-label]=\"labelColor(button)\"\n [disabled]=\"isDisabled(button.name)\"\n (click)=\"select(button)\"\n >\n @if (button.icon) {\n <m-icon\n [name]=\"button.icon\"\n [color]=\"iconColor(button)\"\n [remote]=\"remote() ?? config()?.remote\"\n />\n }\n @if (button.label && !isLabelHidden(button)) {\n <span class=\"m-action__label\">{{ button.label | translate }}</span>\n }\n </button>\n }\n @if (menuButtons().length) {\n <!-- The Buttons the bar could not fit. Squeezed rather than dropped:\n an action the User can still reach behind one press beats an action\n that silently stopped existing at 400px. -->\n <m-context-menu\n class=\"m-action__overflow\"\n [config]=\"squeezeMenu()\"\n [remote]=\"remote() ?? config()?.remote\"\n (action)=\"onMenuAction($event)\"\n />\n }\n @if (!buttons.length) {\n <!-- A bar with nothing in it has no box, and a slot with no box is a slot\n nothing can be dropped on \u2014 the same rect an empty projected Card is\n given (m-one-ui `.card-drop-space`). -->\n <span class=\"m-action__drop\"></span>\n }\n </div>\n}\n", 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)}}m-action,m-one-action{display:block;width:100%;grid-column:1/-1}m-action.m-action--host-sticky,m-one-action.m-action--host-sticky{position:sticky;top:0;z-index:50;background:#ffffffeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.m-action{display:flex;flex-wrap:nowrap;background:transparent;width:100%;border-bottom:1px solid #f1f5f9;--m-action-color: var(--m-button-color, var(--m-one-button-color, var(--m-mm)));--m-action-color-contrast: var(--m-button-color-contrast, var(--m-one-button-color-contrast, #ffffff))}.m-action--stuck{border-bottom-color:#00000014;box-shadow:0 2px 10px #0000000f}.m-action__btn{flex:1;min-width:0;padding:1rem 2rem;border:none;background:transparent;color:var(--m-action-label, #1e293b);font-weight:300;font-size:.9rem;display:flex;align-items:center;justify-content:center;gap:.6rem;white-space:nowrap;overflow:hidden;cursor:pointer;border-right:1px solid #f1f5f9;transition:all .25s cubic-bezier(.4,0,.2,1)}.m-action__btn:last-child{border-right:none}.m-action__btn:hover{background:#f8fafc;color:var(--m-action-color)}.m-action__btn .m-icon{transition:transform .2s ease}.m-action__btn:hover .m-icon{transform:scale(1.1)}.m-action__btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.m-action__btn.active{color:var(--m-action-color);font-weight:500}.m-action--toggle .m-action__btn{position:relative;filter:grayscale(100%);transition:all .25s cubic-bezier(.4,0,.2,1),filter .25s cubic-bezier(.4,0,.2,1)}.m-action--toggle .m-action__btn.active{filter:none}.m-action--toggle .m-action__btn.active:hover:not(:disabled){filter:none}.m-action--icon-only .m-action__btn{padding:1rem .5rem;gap:0}.m-action__overflow{display:flex;align-items:center;padding:0 .5rem;flex:0 0 auto}.m-action__drop{display:block;flex:1;min-height:3.5rem;margin:.5rem;border:1px dashed currentColor;border-radius:.25rem;opacity:.4;pointer-events:none}.m-action__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}@container mag-grid (max-width: 767.98px){.m-action__btn{padding:1rem .75rem;gap:.4rem}}@container mag-grid (max-width: 575.98px){.m-action__btn{padding:.85rem .4rem;font-size:.8rem}}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "component", type: i0.forwardRef(() => IconComponent), selector: "m-icon, m-one-icon", inputs: ["config", "name", "color", "size", "one", "baseUrl", "remote"], outputs: ["configChange"] }, { kind: "component", type: i0.forwardRef(() => ContextMenuComponent), selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted", "options"], outputs: ["toggleChange", "action"] }, { kind: "pipe", type: i0.forwardRef(() => TranslatePipe), name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
9585
9606
  }
9586
9607
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ActionComponent, decorators: [{
9587
9608
  type: Component,
@@ -9787,7 +9808,7 @@ class TextOutputComponent extends ConfigComponent {
9787
9808
  [style.color]="resolvedColorPallet().color"
9788
9809
  [innerHTML]="html()"
9789
9810
  ></div>
9790
- `, isInline: true, 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(.is-design-mode){display:block;min-width:1em;min-height:1em}:host(.align-left) .m-text-output{text-align:left}:host(.align-center) .m-text-output{text-align:center}:host(.align-right) .m-text-output{text-align:right}:host{font-size:inherit}:host(.variant-lead){display:block;font-size:1.15em;font-weight:300}:host(.variant-lead) .m-text-output{line-height:1.6}:host(.variant-big){display:block;font-size:1.5em;font-weight:600}:host(.variant-big) .m-text-output{line-height:1.25}:host(.variant-bold){display:block;font-weight:700}:host(.variant-footer){display:block;font-size:.8em;margin-top:.25rem}:host(.variant-footer) .m-text-output{line-height:1.35}:host(.variant-footnote){display:block;font-size:.75em;margin-top:.25rem}:host(.variant-footnote) .m-text-output{color:var(--m-text-output-color, var(--m-text-secondary));line-height:1.4}:host(.variant-link){text-decoration:none;cursor:pointer;transition:color .2s ease-in-out,text-decoration .2s ease-in-out;outline:none}:host(.variant-link):focus{outline:2px solid var(--m-focus);outline-offset:2px}:host(.variant-link){display:inline;border-radius:.25rem}:host(.variant-link) .m-text-output{display:inline;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:max(1px,.06em);text-underline-offset:.18em;transition:text-decoration-color .15s ease-in-out,text-decoration-thickness .15s ease-in-out}:host(.variant-link) .m-text-output:hover{text-decoration-color:currentColor;text-decoration-thickness:max(2px,.1em)}:host(.variant-link) .m-text-output>p{display:inline;margin:0}:host(.variant-link-small){text-decoration:none;cursor:pointer;transition:color .2s ease-in-out,text-decoration .2s ease-in-out;outline:none}:host(.variant-link-small):focus{outline:2px solid var(--m-focus);outline-offset:2px}:host(.variant-link-small){display:inline;border-radius:.25rem}:host(.variant-link-small) .m-text-output{display:inline;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:max(1px,.06em);text-underline-offset:.18em;transition:text-decoration-color .15s ease-in-out,text-decoration-thickness .15s ease-in-out}:host(.variant-link-small) .m-text-output:hover{text-decoration-color:currentColor;text-decoration-thickness:max(2px,.1em)}:host(.variant-link-small) .m-text-output>p{display:inline;margin:0}:host(.variant-link-small){font-size:.8em;font-weight:500}.m-text-output{color:var(--m-text-output-color, var(--m-text));font-size:inherit;line-height:1.5}.m-text-output>:first-child{margin-top:0}.m-text-output>:last-child{margin-bottom:0}.m-text-output p,.m-text-output ul,.m-text-output blockquote,.m-text-output h1,.m-text-output h2,.m-text-output h3,.m-text-output h4,.m-text-output h5,.m-text-output h6{margin:0 0 1rem}.m-text-output ul{padding-left:1.5rem;list-style-type:disc;list-style-position:outside}.m-text-output li{margin-bottom:.25rem}.m-text-output li:last-child{margin-bottom:0}.m-text-output a{color:var(--m-text-output-link-color, var(--m-mm));text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:max(1px,.06em);text-underline-offset:.18em;transition:text-decoration-color .15s ease-in-out,text-decoration-thickness .15s ease-in-out}.m-text-output a:hover{text-decoration-color:currentColor;text-decoration-thickness:max(2px,.1em)}.m-text-output blockquote{padding-left:1rem;border-left:1px solid var(--m-border);color:var(--m-text-output-color, var(--m-text-secondary))}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
9811
+ `, isInline: true, 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(.is-design-mode){display:block;min-width:1em;min-height:1em}:host(.align-left) .m-text-output{text-align:left}:host(.align-center) .m-text-output{text-align:center}:host(.align-right) .m-text-output{text-align:right}:host{font-size:inherit}:host(.variant-lead){display:block;font-size:1.15em;font-weight:300}:host(.variant-lead) .m-text-output{line-height:1.6}:host(.variant-big){display:block;font-size:1.5em;font-weight:600}:host(.variant-big) .m-text-output{line-height:1.25}:host(.variant-bold){display:block;font-weight:700}:host(.variant-footer){display:block;font-size:.8em;margin-top:.25rem}:host(.variant-footer) .m-text-output{line-height:1.35}m-flex.align-items-center.direction-row>:host(.variant-footer),m-flex.align-items-center.direction-row-reverse>:host(.variant-footer){margin-top:0}:host(.variant-footnote){display:block;font-size:.75em;margin-top:.25rem}:host(.variant-footnote) .m-text-output{color:var(--m-text-output-color, var(--m-text-secondary));line-height:1.4}:host(.variant-link){text-decoration:none;cursor:pointer;transition:color .2s ease-in-out,text-decoration .2s ease-in-out;outline:none}:host(.variant-link):focus{outline:2px solid var(--m-focus);outline-offset:2px}:host(.variant-link){display:inline;border-radius:.25rem}:host(.variant-link) .m-text-output{display:inline;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:max(1px,.06em);text-underline-offset:.18em;transition:text-decoration-color .15s ease-in-out,text-decoration-thickness .15s ease-in-out}:host(.variant-link) .m-text-output:hover{text-decoration-color:currentColor;text-decoration-thickness:max(2px,.1em)}:host(.variant-link) .m-text-output>p{display:inline;margin:0}:host(.variant-link-small){text-decoration:none;cursor:pointer;transition:color .2s ease-in-out,text-decoration .2s ease-in-out;outline:none}:host(.variant-link-small):focus{outline:2px solid var(--m-focus);outline-offset:2px}:host(.variant-link-small){display:inline;border-radius:.25rem}:host(.variant-link-small) .m-text-output{display:inline;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:max(1px,.06em);text-underline-offset:.18em;transition:text-decoration-color .15s ease-in-out,text-decoration-thickness .15s ease-in-out}:host(.variant-link-small) .m-text-output:hover{text-decoration-color:currentColor;text-decoration-thickness:max(2px,.1em)}:host(.variant-link-small) .m-text-output>p{display:inline;margin:0}:host(.variant-link-small){font-size:.8em;font-weight:500}.m-text-output{color:var(--m-text-output-color, var(--m-text));font-size:inherit;line-height:1.5}.m-text-output>:first-child{margin-top:0}.m-text-output>:last-child{margin-bottom:0}.m-text-output p,.m-text-output ul,.m-text-output blockquote,.m-text-output h1,.m-text-output h2,.m-text-output h3,.m-text-output h4,.m-text-output h5,.m-text-output h6{margin:0 0 1rem}.m-text-output ul{padding-left:1.5rem;list-style-type:disc;list-style-position:outside}.m-text-output li{margin-bottom:.25rem}.m-text-output li:last-child{margin-bottom:0}.m-text-output a{color:var(--m-text-output-link-color, var(--m-mm));text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:max(1px,.06em);text-underline-offset:.18em;transition:text-decoration-color .15s ease-in-out,text-decoration-thickness .15s ease-in-out}.m-text-output a:hover{text-decoration-color:currentColor;text-decoration-thickness:max(2px,.1em)}.m-text-output blockquote{padding-left:1rem;border-left:1px solid var(--m-border);color:var(--m-text-output-color, var(--m-text-secondary))}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
9791
9812
  }
9792
9813
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: TextOutputComponent, decorators: [{
9793
9814
  type: Component,
@@ -9819,7 +9840,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
9819
9840
  '[style.--m-text-output-color]': 'resolvedColorPallet().color',
9820
9841
  '[style.--m-text-output-color-contrast]': 'resolvedColorPallet().contrastColor',
9821
9842
  '[style.--m-text-output-color-opposite]': 'resolvedColorPallet().oppositeColor',
9822
- }, 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(.is-design-mode){display:block;min-width:1em;min-height:1em}:host(.align-left) .m-text-output{text-align:left}:host(.align-center) .m-text-output{text-align:center}:host(.align-right) .m-text-output{text-align:right}:host{font-size:inherit}:host(.variant-lead){display:block;font-size:1.15em;font-weight:300}:host(.variant-lead) .m-text-output{line-height:1.6}:host(.variant-big){display:block;font-size:1.5em;font-weight:600}:host(.variant-big) .m-text-output{line-height:1.25}:host(.variant-bold){display:block;font-weight:700}:host(.variant-footer){display:block;font-size:.8em;margin-top:.25rem}:host(.variant-footer) .m-text-output{line-height:1.35}:host(.variant-footnote){display:block;font-size:.75em;margin-top:.25rem}:host(.variant-footnote) .m-text-output{color:var(--m-text-output-color, var(--m-text-secondary));line-height:1.4}:host(.variant-link){text-decoration:none;cursor:pointer;transition:color .2s ease-in-out,text-decoration .2s ease-in-out;outline:none}:host(.variant-link):focus{outline:2px solid var(--m-focus);outline-offset:2px}:host(.variant-link){display:inline;border-radius:.25rem}:host(.variant-link) .m-text-output{display:inline;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:max(1px,.06em);text-underline-offset:.18em;transition:text-decoration-color .15s ease-in-out,text-decoration-thickness .15s ease-in-out}:host(.variant-link) .m-text-output:hover{text-decoration-color:currentColor;text-decoration-thickness:max(2px,.1em)}:host(.variant-link) .m-text-output>p{display:inline;margin:0}:host(.variant-link-small){text-decoration:none;cursor:pointer;transition:color .2s ease-in-out,text-decoration .2s ease-in-out;outline:none}:host(.variant-link-small):focus{outline:2px solid var(--m-focus);outline-offset:2px}:host(.variant-link-small){display:inline;border-radius:.25rem}:host(.variant-link-small) .m-text-output{display:inline;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:max(1px,.06em);text-underline-offset:.18em;transition:text-decoration-color .15s ease-in-out,text-decoration-thickness .15s ease-in-out}:host(.variant-link-small) .m-text-output:hover{text-decoration-color:currentColor;text-decoration-thickness:max(2px,.1em)}:host(.variant-link-small) .m-text-output>p{display:inline;margin:0}:host(.variant-link-small){font-size:.8em;font-weight:500}.m-text-output{color:var(--m-text-output-color, var(--m-text));font-size:inherit;line-height:1.5}.m-text-output>:first-child{margin-top:0}.m-text-output>:last-child{margin-bottom:0}.m-text-output p,.m-text-output ul,.m-text-output blockquote,.m-text-output h1,.m-text-output h2,.m-text-output h3,.m-text-output h4,.m-text-output h5,.m-text-output h6{margin:0 0 1rem}.m-text-output ul{padding-left:1.5rem;list-style-type:disc;list-style-position:outside}.m-text-output li{margin-bottom:.25rem}.m-text-output li:last-child{margin-bottom:0}.m-text-output a{color:var(--m-text-output-link-color, var(--m-mm));text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:max(1px,.06em);text-underline-offset:.18em;transition:text-decoration-color .15s ease-in-out,text-decoration-thickness .15s ease-in-out}.m-text-output a:hover{text-decoration-color:currentColor;text-decoration-thickness:max(2px,.1em)}.m-text-output blockquote{padding-left:1rem;border-left:1px solid var(--m-border);color:var(--m-text-output-color, var(--m-text-secondary))}\n"] }]
9843
+ }, 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(.is-design-mode){display:block;min-width:1em;min-height:1em}:host(.align-left) .m-text-output{text-align:left}:host(.align-center) .m-text-output{text-align:center}:host(.align-right) .m-text-output{text-align:right}:host{font-size:inherit}:host(.variant-lead){display:block;font-size:1.15em;font-weight:300}:host(.variant-lead) .m-text-output{line-height:1.6}:host(.variant-big){display:block;font-size:1.5em;font-weight:600}:host(.variant-big) .m-text-output{line-height:1.25}:host(.variant-bold){display:block;font-weight:700}:host(.variant-footer){display:block;font-size:.8em;margin-top:.25rem}:host(.variant-footer) .m-text-output{line-height:1.35}m-flex.align-items-center.direction-row>:host(.variant-footer),m-flex.align-items-center.direction-row-reverse>:host(.variant-footer){margin-top:0}:host(.variant-footnote){display:block;font-size:.75em;margin-top:.25rem}:host(.variant-footnote) .m-text-output{color:var(--m-text-output-color, var(--m-text-secondary));line-height:1.4}:host(.variant-link){text-decoration:none;cursor:pointer;transition:color .2s ease-in-out,text-decoration .2s ease-in-out;outline:none}:host(.variant-link):focus{outline:2px solid var(--m-focus);outline-offset:2px}:host(.variant-link){display:inline;border-radius:.25rem}:host(.variant-link) .m-text-output{display:inline;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:max(1px,.06em);text-underline-offset:.18em;transition:text-decoration-color .15s ease-in-out,text-decoration-thickness .15s ease-in-out}:host(.variant-link) .m-text-output:hover{text-decoration-color:currentColor;text-decoration-thickness:max(2px,.1em)}:host(.variant-link) .m-text-output>p{display:inline;margin:0}:host(.variant-link-small){text-decoration:none;cursor:pointer;transition:color .2s ease-in-out,text-decoration .2s ease-in-out;outline:none}:host(.variant-link-small):focus{outline:2px solid var(--m-focus);outline-offset:2px}:host(.variant-link-small){display:inline;border-radius:.25rem}:host(.variant-link-small) .m-text-output{display:inline;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:max(1px,.06em);text-underline-offset:.18em;transition:text-decoration-color .15s ease-in-out,text-decoration-thickness .15s ease-in-out}:host(.variant-link-small) .m-text-output:hover{text-decoration-color:currentColor;text-decoration-thickness:max(2px,.1em)}:host(.variant-link-small) .m-text-output>p{display:inline;margin:0}:host(.variant-link-small){font-size:.8em;font-weight:500}.m-text-output{color:var(--m-text-output-color, var(--m-text));font-size:inherit;line-height:1.5}.m-text-output>:first-child{margin-top:0}.m-text-output>:last-child{margin-bottom:0}.m-text-output p,.m-text-output ul,.m-text-output blockquote,.m-text-output h1,.m-text-output h2,.m-text-output h3,.m-text-output h4,.m-text-output h5,.m-text-output h6{margin:0 0 1rem}.m-text-output ul{padding-left:1.5rem;list-style-type:disc;list-style-position:outside}.m-text-output li{margin-bottom:.25rem}.m-text-output li:last-child{margin-bottom:0}.m-text-output a{color:var(--m-text-output-link-color, var(--m-mm));text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:max(1px,.06em);text-underline-offset:.18em;transition:text-decoration-color .15s ease-in-out,text-decoration-thickness .15s ease-in-out}.m-text-output a:hover{text-decoration-color:currentColor;text-decoration-thickness:max(2px,.1em)}.m-text-output blockquote{padding-left:1rem;border-left:1px solid var(--m-border);color:var(--m-text-output-color, var(--m-text-secondary))}\n"] }]
9823
9844
  }], propDecorators: { config: [{ type: i0.Input, args: [{ isSignal: true, alias: "config", required: false }] }, { type: i0.Output, args: ["configChange"] }], align: [{ type: i0.Input, args: [{ isSignal: true, alias: "align", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], noTranslate: [{ type: i0.Input, args: [{ isSignal: true, alias: "noTranslate", required: false }] }], params: [{ type: i0.Input, args: [{ isSignal: true, alias: "params", required: false }] }], clicked: [{ type: i0.Output, args: ["clicked"] }] } });
9824
9845
 
9825
9846
  class ClearableInputComponent extends BaseTextInputComponent {
@@ -13381,7 +13402,7 @@ class SectionToggleComponent {
13381
13402
  </div>
13382
13403
  }
13383
13404
  </div>
13384
- `, isInline: true, 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;grid-column:span 12;width:100%;box-sizing:border-box;padding:0 var(--section-px, var(--_section-px, 1rem))}:host(.has-border){border-bottom:1px solid var(--m-backdrop-border)}:host(.is-sticky-enabled){position:sticky;top:0;z-index:10}:host(.is-sticky){backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);background-color:var(--m-backdrop-glass);border:1px solid var(--m-backdrop-border)}.section-toggle__items{display:flex;align-items:stretch;width:100%;overflow:hidden}.section-toggle__item{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:.1rem;min-width:min-content;padding:.6rem .8rem;border:none;border-right:1px solid var(--m-backdrop-border);background:transparent;color:var(--m-text-secondary);cursor:pointer;filter:grayscale(100%);transition:background .18s ease,color .18s ease,filter .18s ease}.section-toggle__item:last-of-type{border-right:none}.section-toggle__item:hover:not(:disabled){background:var(--m-backdrop-surface);color:var(--m-text)}.section-toggle__item:disabled{opacity:.45;cursor:not-allowed}.section-toggle__item.is-selected{background:transparent;color:var(--m-text);filter:none}.section-toggle__overflow{display:flex;align-items:center;padding-left:.25rem;border-left:1px solid var(--m-backdrop-border)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted"], outputs: ["toggleChange", "action"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
13405
+ `, isInline: true, 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;grid-column:span 12;width:100%;box-sizing:border-box;padding:0 var(--section-px, var(--_section-px, 1rem))}:host(.has-border){border-bottom:1px solid var(--m-backdrop-border)}:host(.is-sticky-enabled){position:sticky;top:0;z-index:10}:host(.is-sticky){backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);background-color:var(--m-backdrop-glass);border:1px solid var(--m-backdrop-border)}.section-toggle__items{display:flex;align-items:stretch;width:100%;overflow:hidden}.section-toggle__item{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:.1rem;min-width:min-content;padding:.6rem .8rem;border:none;border-right:1px solid var(--m-backdrop-border);background:transparent;color:var(--m-text-secondary);cursor:pointer;filter:grayscale(100%);transition:background .18s ease,color .18s ease,filter .18s ease}.section-toggle__item:last-of-type{border-right:none}.section-toggle__item:hover:not(:disabled){background:var(--m-backdrop-surface);color:var(--m-text)}.section-toggle__item:disabled{opacity:.45;cursor:not-allowed}.section-toggle__item.is-selected{background:transparent;color:var(--m-text);filter:none}.section-toggle__overflow{display:flex;align-items:center;padding-left:.25rem;border-left:1px solid var(--m-backdrop-border)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted", "options"], outputs: ["toggleChange", "action"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
13385
13406
  }
13386
13407
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: SectionToggleComponent, decorators: [{
13387
13408
  type: Component,
@@ -15708,11 +15729,14 @@ class UserComponent {
15708
15729
  <m-user-avatar [user]="resolvedUser()" />
15709
15730
  </div>
15710
15731
  <div class="user-info">
15711
- @if (resolvedUser()) {
15712
- <m-header [level]="3" [label]="displayName()" />
15713
- } @else {
15714
- <div class="user-name-loading"></div>
15715
- }
15732
+ <div class="user-header">
15733
+ @if (resolvedUser()) {
15734
+ <m-header [level]="3" [label]="displayName()" />
15735
+ } @else {
15736
+ <div class="user-name-loading"></div>
15737
+ }
15738
+ <ng-content select="[inline]"></ng-content>
15739
+ </div>
15716
15740
 
15717
15741
  <div class="user-content">
15718
15742
  <ng-content></ng-content>
@@ -15745,11 +15769,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
15745
15769
  <m-user-avatar [user]="resolvedUser()" />
15746
15770
  </div>
15747
15771
  <div class="user-info">
15748
- @if (resolvedUser()) {
15749
- <m-header [level]="3" [label]="displayName()" />
15750
- } @else {
15751
- <div class="user-name-loading"></div>
15752
- }
15772
+ <div class="user-header">
15773
+ @if (resolvedUser()) {
15774
+ <m-header [level]="3" [label]="displayName()" />
15775
+ } @else {
15776
+ <div class="user-name-loading"></div>
15777
+ }
15778
+ <ng-content select="[inline]"></ng-content>
15779
+ </div>
15753
15780
 
15754
15781
  <div class="user-content">
15755
15782
  <ng-content></ng-content>
@@ -15852,6 +15879,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
15852
15879
  const MODAL_COMPONENT = new InjectionToken('MODAL_COMPONENT');
15853
15880
  const PANEL_COMPONENT = new InjectionToken('PANEL_COMPONENT');
15854
15881
  const CONFIRM_COMPONENT = new InjectionToken('CONFIRM_COMPONENT');
15882
+ /**
15883
+ * The body an overlay opened by name is filled with — what `mModal` and
15884
+ * `mSidePanel` already build by hand, reached through a token here so
15885
+ * `ModalStore.openScreen` can build the same thing without importing the
15886
+ * component into the store (the reason the three above are tokens).
15887
+ */
15888
+ const OVERLAY_BODY_COMPONENT = new InjectionToken('OVERLAY_BODY_COMPONENT');
15855
15889
 
15856
15890
  const MODAL_REF = new InjectionToken('MODAL_REF');
15857
15891
  class ModalRef {
@@ -15923,6 +15957,7 @@ const ModalStore = signalStore({ providedIn: 'root' }, withState(initialModalSta
15923
15957
  const modalComp = inject(MODAL_COMPONENT);
15924
15958
  const panelComp = inject(PANEL_COMPONENT);
15925
15959
  const confirmComp = inject(CONFIRM_COMPONENT);
15960
+ const overlayBodyComp = inject(OVERLAY_BODY_COMPONENT);
15926
15961
  const open = (modalTrigger) => {
15927
15962
  const id = modalTrigger.id ?? getUniqueId();
15928
15963
  const modalComponentRef = domService.create({
@@ -16158,6 +16193,44 @@ const ModalStore = signalStore({ providedIn: 'root' }, withState(initialModalSta
16158
16193
  close(id);
16159
16194
  };
16160
16195
  });
16196
+ /**
16197
+ * Opens one Screen as an overlay and hands it its inputs — what a
16198
+ * generated FeatureStore calls where a Control's `mModal` would be the
16199
+ * drawn answer (m-one-ui OpenScreen).
16200
+ *
16201
+ * The same body the two directives build, reached the same way: the widget
16202
+ * is loaded on first open, so nothing it names is in the initial bundle.
16203
+ * Returns the overlay's own id and waits for nothing — the caller is a
16204
+ * `tap` inside a request pipe, and a store that held its emission open
16205
+ * until a panel closed would be answering for a gesture nobody made.
16206
+ */
16207
+ const openScreen = (trigger) => {
16208
+ const bindings = [
16209
+ inputBinding('widget', () => trigger.widget),
16210
+ inputBinding('inputs', () => trigger.inputs ?? {}),
16211
+ ];
16212
+ // Its own ModalRef, the way each directive mints one: the body closes
16213
+ // itself through this, and nothing here is listening for the result.
16214
+ const providers = [{ provide: MODAL_REF, useValue: new ModalRef() }];
16215
+ if (trigger.as === 'side_panel') {
16216
+ return openPanel({
16217
+ component: overlayBodyComp,
16218
+ bindings,
16219
+ providers,
16220
+ side: trigger.side,
16221
+ width: trigger.width,
16222
+ height: trigger.height,
16223
+ dock: trigger.dock,
16224
+ closeProhibited: trigger.closeProhibited,
16225
+ });
16226
+ }
16227
+ return open({
16228
+ component: overlayBodyComp,
16229
+ bindings,
16230
+ providers,
16231
+ config: trigger.config,
16232
+ });
16233
+ };
16161
16234
  // The callback form, kept for every caller drawn against it. One
16162
16235
  // implementation underneath: a refusal runs nothing, which is what an
16163
16236
  // `onConfirm` that never fires already meant.
@@ -16172,6 +16245,7 @@ const ModalStore = signalStore({ providedIn: 'root' }, withState(initialModalSta
16172
16245
  close,
16173
16246
  ask,
16174
16247
  confirm,
16248
+ openScreen,
16175
16249
  openPanel,
16176
16250
  closePanel,
16177
16251
  cleanupOnClose,
@@ -17488,7 +17562,7 @@ class ColComponent extends ConfigComponent {
17488
17562
  sectionContext = inject(SECTION_CONTEXT, { optional: true });
17489
17563
  noBorder = computed(() => this.sectionContext?.variant() === 'noBorder', ...(ngDevMode ? [{ debugName: "noBorder" }] : /* istanbul ignore next */ []));
17490
17564
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ColComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
17491
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.9", type: ColComponent, isStandalone: true, selector: "m-col", inputs: { xs: { classPropertyName: "xs", publicName: "xs", isSignal: true, isRequired: false, transformFunction: null }, sm: { classPropertyName: "sm", publicName: "sm", isSignal: true, isRequired: false, transformFunction: null }, md: { classPropertyName: "md", publicName: "md", isSignal: true, isRequired: false, transformFunction: null }, lg: { classPropertyName: "lg", publicName: "lg", isSignal: true, isRequired: false, transformFunction: null }, xl: { classPropertyName: "xl", publicName: "xl", isSignal: true, isRequired: false, transformFunction: null }, xxl: { classPropertyName: "xxl", publicName: "xxl", isSignal: true, isRequired: false, transformFunction: null }, fullWidth: { classPropertyName: "fullWidth", publicName: "fullWidth", isSignal: true, isRequired: false, transformFunction: null }, fullHeight: { classPropertyName: "fullHeight", publicName: "fullHeight", isSignal: true, isRequired: false, transformFunction: null }, padding: { classPropertyName: "padding", publicName: "padding", isSignal: true, isRequired: false, transformFunction: null }, paddingX: { classPropertyName: "paddingX", publicName: "paddingX", isSignal: true, isRequired: false, transformFunction: null }, paddingY: { classPropertyName: "paddingY", publicName: "paddingY", isSignal: true, isRequired: false, transformFunction: null }, alignX: { classPropertyName: "alignX", publicName: "alignX", isSignal: true, isRequired: false, transformFunction: null }, alignY: { classPropertyName: "alignY", publicName: "alignY", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "classes()", "class.is-full-height": "resolvedFullHeight()" }, classAttribute: "m-col" }, usesInheritance: true, ngImport: i0, template: '<ng-content />', isInline: true, 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;grid-column:span 12;box-sizing:border-box;width:100%;min-height:5em}:host(.is-full-height){height:100%}:host.has-padding-x{padding-inline:var(--col-px, var(--section-px, var(--_section-px, 1rem)))}:host.has-padding-y{padding-block:var(--col-py, var(--section-pt, var(--_section-pt, 1.5rem)))}:host(:not(:last-child)){border-right:1px solid var(--m-backdrop-border)}@container mag-grid (max-width: 575.98px){:host(:not(:last-child)){border-right:none;border-bottom:1px solid var(--m-backdrop-border)}}:host(.no-border){border-right:none}@container mag-grid (max-width: 575.98px){:host(.no-border){border-bottom:none}}:host.full-width{grid-column:span 12!important;width:calc(100% + 2 * var(--section-px, var(--_section-px, 1rem)));margin-inline:calc(-1 * var(--section-px, var(--_section-px, 1rem)))}:host.col-xs-1{grid-column:span 1;width:calc(100% * 1 / 12)}:host.col-xs-2{grid-column:span 2;width:calc(100% * 2 / 12)}:host.col-xs-3{grid-column:span 3;width:25%}:host.col-xs-4{grid-column:span 4;width:calc(100% * 4 / 12)}:host.col-xs-5{grid-column:span 5;width:calc(100% * 5 / 12)}:host.col-xs-6{grid-column:span 6;width:50%}:host.col-xs-7{grid-column:span 7;width:calc(100% * 7 / 12)}:host.col-xs-8{grid-column:span 8;width:calc(100% * 8 / 12)}:host.col-xs-9{grid-column:span 9;width:75%}:host.col-xs-10{grid-column:span 10;width:calc(100% * 10 / 12)}:host.col-xs-11{grid-column:span 11;width:calc(100% * 11 / 12)}:host.col-xs-12{grid-column:span 12;width:100%}@container mag-grid (min-width: 576px){:host.col-sm-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 576px){:host.col-sm-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 576px){:host.col-sm-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 576px){:host.col-sm-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 768px){:host.col-md-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 768px){:host.col-md-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 768px){:host.col-md-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 768px){:host.col-md-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 992px){:host.col-lg-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 992px){:host.col-lg-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 992px){:host.col-lg-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 992px){:host.col-lg-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 1200px){:host.col-xl-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 1200px){:host.col-xl-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 1200px){:host.col-xl-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 1200px){:host.col-xl-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 1400px){:host.col-xxl-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 1400px){:host.col-xxl-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 1400px){:host.col-xxl-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 1400px){:host.col-xxl-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-12{grid-column:span 12;width:100%}}:host.align-x-left,:host.align-x-center,:host.align-x-right,:host.align-y-top,:host.align-y-center,:host.align-y-bottom{display:flex;flex-direction:column}:host.align-x-left{align-items:flex-start}:host.align-x-center{align-items:center}:host.align-x-right{align-items:flex-end}:host.align-y-top{justify-content:flex-start}:host.align-y-center{justify-content:center}:host.align-y-bottom{justify-content:flex-end}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
17565
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.9", type: ColComponent, isStandalone: true, selector: "m-col", inputs: { xs: { classPropertyName: "xs", publicName: "xs", isSignal: true, isRequired: false, transformFunction: null }, sm: { classPropertyName: "sm", publicName: "sm", isSignal: true, isRequired: false, transformFunction: null }, md: { classPropertyName: "md", publicName: "md", isSignal: true, isRequired: false, transformFunction: null }, lg: { classPropertyName: "lg", publicName: "lg", isSignal: true, isRequired: false, transformFunction: null }, xl: { classPropertyName: "xl", publicName: "xl", isSignal: true, isRequired: false, transformFunction: null }, xxl: { classPropertyName: "xxl", publicName: "xxl", isSignal: true, isRequired: false, transformFunction: null }, fullWidth: { classPropertyName: "fullWidth", publicName: "fullWidth", isSignal: true, isRequired: false, transformFunction: null }, fullHeight: { classPropertyName: "fullHeight", publicName: "fullHeight", isSignal: true, isRequired: false, transformFunction: null }, padding: { classPropertyName: "padding", publicName: "padding", isSignal: true, isRequired: false, transformFunction: null }, paddingX: { classPropertyName: "paddingX", publicName: "paddingX", isSignal: true, isRequired: false, transformFunction: null }, paddingY: { classPropertyName: "paddingY", publicName: "paddingY", isSignal: true, isRequired: false, transformFunction: null }, alignX: { classPropertyName: "alignX", publicName: "alignX", isSignal: true, isRequired: false, transformFunction: null }, alignY: { classPropertyName: "alignY", publicName: "alignY", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "classes()", "class.is-full-height": "resolvedFullHeight()" }, classAttribute: "m-col" }, usesInheritance: true, ngImport: i0, template: '<ng-content />', isInline: true, 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;grid-column:span 12;box-sizing:border-box;width:100%}:host(.is-full-height){height:100%}:host.has-padding-x{padding-inline:var(--col-px, var(--section-px, var(--_section-px, 1rem)))}:host.has-padding-y{padding-block:var(--col-py, var(--section-pt, var(--_section-pt, 1.5rem)))}:host(:not(:last-child)){border-right:1px solid var(--m-backdrop-border)}@container mag-grid (max-width: 575.98px){:host(:not(:last-child)){border-right:none;border-bottom:1px solid var(--m-backdrop-border)}}:host(.no-border){border-right:none}@container mag-grid (max-width: 575.98px){:host(.no-border){border-bottom:none}}:host.full-width{grid-column:span 12!important;width:calc(100% + 2 * var(--section-px, var(--_section-px, 1rem)));margin-inline:calc(-1 * var(--section-px, var(--_section-px, 1rem)))}:host.col-xs-1{grid-column:span 1;width:calc(100% * 1 / 12)}:host.col-xs-2{grid-column:span 2;width:calc(100% * 2 / 12)}:host.col-xs-3{grid-column:span 3;width:25%}:host.col-xs-4{grid-column:span 4;width:calc(100% * 4 / 12)}:host.col-xs-5{grid-column:span 5;width:calc(100% * 5 / 12)}:host.col-xs-6{grid-column:span 6;width:50%}:host.col-xs-7{grid-column:span 7;width:calc(100% * 7 / 12)}:host.col-xs-8{grid-column:span 8;width:calc(100% * 8 / 12)}:host.col-xs-9{grid-column:span 9;width:75%}:host.col-xs-10{grid-column:span 10;width:calc(100% * 10 / 12)}:host.col-xs-11{grid-column:span 11;width:calc(100% * 11 / 12)}:host.col-xs-12{grid-column:span 12;width:100%}@container mag-grid (min-width: 576px){:host.col-sm-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 576px){:host.col-sm-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 576px){:host.col-sm-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 576px){:host.col-sm-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 768px){:host.col-md-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 768px){:host.col-md-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 768px){:host.col-md-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 768px){:host.col-md-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 992px){:host.col-lg-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 992px){:host.col-lg-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 992px){:host.col-lg-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 992px){:host.col-lg-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 1200px){:host.col-xl-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 1200px){:host.col-xl-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 1200px){:host.col-xl-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 1200px){:host.col-xl-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 1400px){:host.col-xxl-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 1400px){:host.col-xxl-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 1400px){:host.col-xxl-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 1400px){:host.col-xxl-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-12{grid-column:span 12;width:100%}}:host.align-x-left,:host.align-x-center,:host.align-x-right,:host.align-y-top,:host.align-y-center,:host.align-y-bottom{display:flex;flex-direction:column}:host.align-x-left{align-items:flex-start}:host.align-x-center{align-items:center}:host.align-x-right{align-items:flex-end}:host.align-y-top{justify-content:flex-start}:host.align-y-center{justify-content:center}:host.align-y-bottom{justify-content:flex-end}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
17492
17566
  }
17493
17567
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ColComponent, decorators: [{
17494
17568
  type: Component,
@@ -17496,7 +17570,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
17496
17570
  class: 'm-col',
17497
17571
  '[class]': 'classes()',
17498
17572
  '[class.is-full-height]': 'resolvedFullHeight()',
17499
- }, 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;grid-column:span 12;box-sizing:border-box;width:100%;min-height:5em}:host(.is-full-height){height:100%}:host.has-padding-x{padding-inline:var(--col-px, var(--section-px, var(--_section-px, 1rem)))}:host.has-padding-y{padding-block:var(--col-py, var(--section-pt, var(--_section-pt, 1.5rem)))}:host(:not(:last-child)){border-right:1px solid var(--m-backdrop-border)}@container mag-grid (max-width: 575.98px){:host(:not(:last-child)){border-right:none;border-bottom:1px solid var(--m-backdrop-border)}}:host(.no-border){border-right:none}@container mag-grid (max-width: 575.98px){:host(.no-border){border-bottom:none}}:host.full-width{grid-column:span 12!important;width:calc(100% + 2 * var(--section-px, var(--_section-px, 1rem)));margin-inline:calc(-1 * var(--section-px, var(--_section-px, 1rem)))}:host.col-xs-1{grid-column:span 1;width:calc(100% * 1 / 12)}:host.col-xs-2{grid-column:span 2;width:calc(100% * 2 / 12)}:host.col-xs-3{grid-column:span 3;width:25%}:host.col-xs-4{grid-column:span 4;width:calc(100% * 4 / 12)}:host.col-xs-5{grid-column:span 5;width:calc(100% * 5 / 12)}:host.col-xs-6{grid-column:span 6;width:50%}:host.col-xs-7{grid-column:span 7;width:calc(100% * 7 / 12)}:host.col-xs-8{grid-column:span 8;width:calc(100% * 8 / 12)}:host.col-xs-9{grid-column:span 9;width:75%}:host.col-xs-10{grid-column:span 10;width:calc(100% * 10 / 12)}:host.col-xs-11{grid-column:span 11;width:calc(100% * 11 / 12)}:host.col-xs-12{grid-column:span 12;width:100%}@container mag-grid (min-width: 576px){:host.col-sm-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 576px){:host.col-sm-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 576px){:host.col-sm-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 576px){:host.col-sm-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 768px){:host.col-md-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 768px){:host.col-md-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 768px){:host.col-md-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 768px){:host.col-md-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 992px){:host.col-lg-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 992px){:host.col-lg-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 992px){:host.col-lg-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 992px){:host.col-lg-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 1200px){:host.col-xl-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 1200px){:host.col-xl-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 1200px){:host.col-xl-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 1200px){:host.col-xl-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 1400px){:host.col-xxl-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 1400px){:host.col-xxl-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 1400px){:host.col-xxl-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 1400px){:host.col-xxl-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-12{grid-column:span 12;width:100%}}:host.align-x-left,:host.align-x-center,:host.align-x-right,:host.align-y-top,:host.align-y-center,:host.align-y-bottom{display:flex;flex-direction:column}:host.align-x-left{align-items:flex-start}:host.align-x-center{align-items:center}:host.align-x-right{align-items:flex-end}:host.align-y-top{justify-content:flex-start}:host.align-y-center{justify-content:center}:host.align-y-bottom{justify-content:flex-end}\n"] }]
17573
+ }, 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;grid-column:span 12;box-sizing:border-box;width:100%}:host(.is-full-height){height:100%}:host.has-padding-x{padding-inline:var(--col-px, var(--section-px, var(--_section-px, 1rem)))}:host.has-padding-y{padding-block:var(--col-py, var(--section-pt, var(--_section-pt, 1.5rem)))}:host(:not(:last-child)){border-right:1px solid var(--m-backdrop-border)}@container mag-grid (max-width: 575.98px){:host(:not(:last-child)){border-right:none;border-bottom:1px solid var(--m-backdrop-border)}}:host(.no-border){border-right:none}@container mag-grid (max-width: 575.98px){:host(.no-border){border-bottom:none}}:host.full-width{grid-column:span 12!important;width:calc(100% + 2 * var(--section-px, var(--_section-px, 1rem)));margin-inline:calc(-1 * var(--section-px, var(--_section-px, 1rem)))}:host.col-xs-1{grid-column:span 1;width:calc(100% * 1 / 12)}:host.col-xs-2{grid-column:span 2;width:calc(100% * 2 / 12)}:host.col-xs-3{grid-column:span 3;width:25%}:host.col-xs-4{grid-column:span 4;width:calc(100% * 4 / 12)}:host.col-xs-5{grid-column:span 5;width:calc(100% * 5 / 12)}:host.col-xs-6{grid-column:span 6;width:50%}:host.col-xs-7{grid-column:span 7;width:calc(100% * 7 / 12)}:host.col-xs-8{grid-column:span 8;width:calc(100% * 8 / 12)}:host.col-xs-9{grid-column:span 9;width:75%}:host.col-xs-10{grid-column:span 10;width:calc(100% * 10 / 12)}:host.col-xs-11{grid-column:span 11;width:calc(100% * 11 / 12)}:host.col-xs-12{grid-column:span 12;width:100%}@container mag-grid (min-width: 576px){:host.col-sm-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 576px){:host.col-sm-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 576px){:host.col-sm-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 576px){:host.col-sm-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 768px){:host.col-md-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 768px){:host.col-md-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 768px){:host.col-md-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 768px){:host.col-md-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 992px){:host.col-lg-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 992px){:host.col-lg-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 992px){:host.col-lg-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 992px){:host.col-lg-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 1200px){:host.col-xl-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 1200px){:host.col-xl-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 1200px){:host.col-xl-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 1200px){:host.col-xl-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 1400px){:host.col-xxl-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 1400px){:host.col-xxl-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 1400px){:host.col-xxl-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 1400px){:host.col-xxl-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-12{grid-column:span 12;width:100%}}:host.align-x-left,:host.align-x-center,:host.align-x-right,:host.align-y-top,:host.align-y-center,:host.align-y-bottom{display:flex;flex-direction:column}:host.align-x-left{align-items:flex-start}:host.align-x-center{align-items:center}:host.align-x-right{align-items:flex-end}:host.align-y-top{justify-content:flex-start}:host.align-y-center{justify-content:center}:host.align-y-bottom{justify-content:flex-end}\n"] }]
17500
17574
  }], propDecorators: { xs: [{ type: i0.Input, args: [{ isSignal: true, alias: "xs", required: false }] }], sm: [{ type: i0.Input, args: [{ isSignal: true, alias: "sm", required: false }] }], md: [{ type: i0.Input, args: [{ isSignal: true, alias: "md", required: false }] }], lg: [{ type: i0.Input, args: [{ isSignal: true, alias: "lg", required: false }] }], xl: [{ type: i0.Input, args: [{ isSignal: true, alias: "xl", required: false }] }], xxl: [{ type: i0.Input, args: [{ isSignal: true, alias: "xxl", required: false }] }], fullWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "fullWidth", required: false }] }], fullHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "fullHeight", required: false }] }], padding: [{ type: i0.Input, args: [{ isSignal: true, alias: "padding", required: false }] }], paddingX: [{ type: i0.Input, args: [{ isSignal: true, alias: "paddingX", required: false }] }], paddingY: [{ type: i0.Input, args: [{ isSignal: true, alias: "paddingY", required: false }] }], alignX: [{ type: i0.Input, args: [{ isSignal: true, alias: "alignX", required: false }] }], alignY: [{ type: i0.Input, args: [{ isSignal: true, alias: "alignY", required: false }] }] } });
17501
17575
 
17502
17576
  class SectionCardComponent extends ColComponent {
@@ -17553,7 +17627,7 @@ class SectionCardComponent extends ColComponent {
17553
17627
  </div>
17554
17628
  }
17555
17629
  <ng-content />
17556
- `, isInline: true, 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;position:relative;grid-column:span 12;box-sizing:border-box;width:100%;margin-inline:auto;border:var(--section-card-border, 1px solid var(--m-backdrop-border));border-radius:var(--section-card-border-radius, 0)}:host(.no-border){border:none}:host.has-padding-x{padding-inline:var(--col-px, var(--section-px, var(--_section-px, 1rem)))}:host.has-padding-y{padding-block:var(--col-py, var(--section-pt, var(--_section-pt, 1.5rem)))}:host.has-margin{margin:var(--section-card-margin, 1rem);width:calc(100% - 2 * var(--section-card-margin, 1rem))}:host.has-corner{padding-inline-end:var(--section-card-corner-inset, 2.25rem)}:host.full-width{margin-inline:calc(-1 * var(--section-px, var(--_section-px, 1rem)))}:host.col-xs-1{grid-column:span 1;width:calc(100% * 1 / 12)}:host.col-xs-1.has-margin{width:calc(100% * 1 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-1.has-margin{width:calc(100% * 1 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-1.has-margin{width:calc(100% * 1 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-1.has-margin{width:calc(100% * 1 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-1.has-margin{width:calc(100% * 1 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-1.has-margin{width:calc(100% * 1 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-2{grid-column:span 2;width:calc(100% * 2 / 12)}:host.col-xs-2.has-margin{width:calc(100% * 2 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-2.has-margin{width:calc(100% * 2 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-2.has-margin{width:calc(100% * 2 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-2.has-margin{width:calc(100% * 2 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-2.has-margin{width:calc(100% * 2 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-2.has-margin{width:calc(100% * 2 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-3{grid-column:span 3;width:25%}:host.col-xs-3.has-margin{width:calc(100% * 3 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 576px){:host.col-sm-3.has-margin{width:calc(100% * 3 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 768px){:host.col-md-3.has-margin{width:calc(100% * 3 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 992px){:host.col-lg-3.has-margin{width:calc(100% * 3 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 1200px){:host.col-xl-3.has-margin{width:calc(100% * 3 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 1400px){:host.col-xxl-3.has-margin{width:calc(100% * 3 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-4{grid-column:span 4;width:calc(100% * 4 / 12)}:host.col-xs-4.has-margin{width:calc(100% * 4 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-4.has-margin{width:calc(100% * 4 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-4.has-margin{width:calc(100% * 4 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-4.has-margin{width:calc(100% * 4 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-4.has-margin{width:calc(100% * 4 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-4.has-margin{width:calc(100% * 4 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-5{grid-column:span 5;width:calc(100% * 5 / 12)}:host.col-xs-5.has-margin{width:calc(100% * 5 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-5.has-margin{width:calc(100% * 5 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-5.has-margin{width:calc(100% * 5 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-5.has-margin{width:calc(100% * 5 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-5.has-margin{width:calc(100% * 5 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-5.has-margin{width:calc(100% * 5 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-6{grid-column:span 6;width:50%}:host.col-xs-6.has-margin{width:calc(100% * 6 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 576px){:host.col-sm-6.has-margin{width:calc(100% * 6 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 768px){:host.col-md-6.has-margin{width:calc(100% * 6 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 992px){:host.col-lg-6.has-margin{width:calc(100% * 6 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 1200px){:host.col-xl-6.has-margin{width:calc(100% * 6 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 1400px){:host.col-xxl-6.has-margin{width:calc(100% * 6 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-7{grid-column:span 7;width:calc(100% * 7 / 12)}:host.col-xs-7.has-margin{width:calc(100% * 7 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-7.has-margin{width:calc(100% * 7 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-7.has-margin{width:calc(100% * 7 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-7.has-margin{width:calc(100% * 7 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-7.has-margin{width:calc(100% * 7 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-7.has-margin{width:calc(100% * 7 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-8{grid-column:span 8;width:calc(100% * 8 / 12)}:host.col-xs-8.has-margin{width:calc(100% * 8 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-8.has-margin{width:calc(100% * 8 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-8.has-margin{width:calc(100% * 8 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-8.has-margin{width:calc(100% * 8 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-8.has-margin{width:calc(100% * 8 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-8.has-margin{width:calc(100% * 8 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-9{grid-column:span 9;width:75%}:host.col-xs-9.has-margin{width:calc(100% * 9 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 576px){:host.col-sm-9.has-margin{width:calc(100% * 9 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 768px){:host.col-md-9.has-margin{width:calc(100% * 9 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 992px){:host.col-lg-9.has-margin{width:calc(100% * 9 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 1200px){:host.col-xl-9.has-margin{width:calc(100% * 9 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 1400px){:host.col-xxl-9.has-margin{width:calc(100% * 9 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-10{grid-column:span 10;width:calc(100% * 10 / 12)}:host.col-xs-10.has-margin{width:calc(100% * 10 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-10.has-margin{width:calc(100% * 10 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-10.has-margin{width:calc(100% * 10 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-10.has-margin{width:calc(100% * 10 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-10.has-margin{width:calc(100% * 10 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-10.has-margin{width:calc(100% * 10 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-11{grid-column:span 11;width:calc(100% * 11 / 12)}:host.col-xs-11.has-margin{width:calc(100% * 11 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-11.has-margin{width:calc(100% * 11 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-11.has-margin{width:calc(100% * 11 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-11.has-margin{width:calc(100% * 11 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-11.has-margin{width:calc(100% * 11 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-11.has-margin{width:calc(100% * 11 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-12{grid-column:span 12;width:100%}:host.col-xs-12.has-margin{width:calc(100% * 12 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 576px){:host.col-sm-12.has-margin{width:calc(100% * 12 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 768px){:host.col-md-12.has-margin{width:calc(100% * 12 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 992px){:host.col-lg-12.has-margin{width:calc(100% * 12 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 1200px){:host.col-xl-12.has-margin{width:calc(100% * 12 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 1400px){:host.col-xxl-12.has-margin{width:calc(100% * 12 / 12 - 2 * var(--section-card-margin, 1rem))}}.m-section-card__corner{position:absolute;top:.5rem;right:.5rem;z-index:1}\n"], dependencies: [{ kind: "component", type: ButtonComponent, selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted"], outputs: ["toggleChange", "action"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
17630
+ `, isInline: true, 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;position:relative;grid-column:span 12;box-sizing:border-box;width:100%;margin-inline:auto;border:var(--section-card-border, 1px solid var(--m-backdrop-border));border-radius:var(--section-card-border-radius, 0)}:host(.no-border){border:none}:host.has-padding-x{padding-inline:var(--col-px, var(--section-px, var(--_section-px, 1rem)))}:host.has-padding-y{padding-block:var(--col-py, var(--section-pt, var(--_section-pt, 1.5rem)))}:host.has-margin{margin:var(--section-card-margin, 1rem);width:calc(100% - 2 * var(--section-card-margin, 1rem))}:host.has-corner{padding-inline-end:var(--section-card-corner-inset, 2.25rem)}:host.full-width{margin-inline:calc(-1 * var(--section-px, var(--_section-px, 1rem)))}:host.col-xs-1{grid-column:span 1;width:calc(100% * 1 / 12)}:host.col-xs-1.has-margin{width:calc(100% * 1 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-1.has-margin{width:calc(100% * 1 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-1.has-margin{width:calc(100% * 1 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-1.has-margin{width:calc(100% * 1 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-1.has-margin{width:calc(100% * 1 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-1{grid-column:span 1;width:calc(100% * 1 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-1.has-margin{width:calc(100% * 1 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-2{grid-column:span 2;width:calc(100% * 2 / 12)}:host.col-xs-2.has-margin{width:calc(100% * 2 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-2.has-margin{width:calc(100% * 2 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-2.has-margin{width:calc(100% * 2 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-2.has-margin{width:calc(100% * 2 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-2.has-margin{width:calc(100% * 2 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-2{grid-column:span 2;width:calc(100% * 2 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-2.has-margin{width:calc(100% * 2 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-3{grid-column:span 3;width:25%}:host.col-xs-3.has-margin{width:calc(100% * 3 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 576px){:host.col-sm-3.has-margin{width:calc(100% * 3 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 768px){:host.col-md-3.has-margin{width:calc(100% * 3 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 992px){:host.col-lg-3.has-margin{width:calc(100% * 3 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 1200px){:host.col-xl-3.has-margin{width:calc(100% * 3 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-3{grid-column:span 3;width:25%}}@container mag-grid (min-width: 1400px){:host.col-xxl-3.has-margin{width:calc(100% * 3 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-4{grid-column:span 4;width:calc(100% * 4 / 12)}:host.col-xs-4.has-margin{width:calc(100% * 4 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-4.has-margin{width:calc(100% * 4 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-4.has-margin{width:calc(100% * 4 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-4.has-margin{width:calc(100% * 4 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-4.has-margin{width:calc(100% * 4 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-4{grid-column:span 4;width:calc(100% * 4 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-4.has-margin{width:calc(100% * 4 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-5{grid-column:span 5;width:calc(100% * 5 / 12)}:host.col-xs-5.has-margin{width:calc(100% * 5 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-5.has-margin{width:calc(100% * 5 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-5.has-margin{width:calc(100% * 5 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-5.has-margin{width:calc(100% * 5 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-5.has-margin{width:calc(100% * 5 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-5{grid-column:span 5;width:calc(100% * 5 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-5.has-margin{width:calc(100% * 5 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-6{grid-column:span 6;width:50%}:host.col-xs-6.has-margin{width:calc(100% * 6 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 576px){:host.col-sm-6.has-margin{width:calc(100% * 6 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 768px){:host.col-md-6.has-margin{width:calc(100% * 6 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 992px){:host.col-lg-6.has-margin{width:calc(100% * 6 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 1200px){:host.col-xl-6.has-margin{width:calc(100% * 6 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-6{grid-column:span 6;width:50%}}@container mag-grid (min-width: 1400px){:host.col-xxl-6.has-margin{width:calc(100% * 6 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-7{grid-column:span 7;width:calc(100% * 7 / 12)}:host.col-xs-7.has-margin{width:calc(100% * 7 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-7.has-margin{width:calc(100% * 7 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-7.has-margin{width:calc(100% * 7 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-7.has-margin{width:calc(100% * 7 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-7.has-margin{width:calc(100% * 7 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-7{grid-column:span 7;width:calc(100% * 7 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-7.has-margin{width:calc(100% * 7 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-8{grid-column:span 8;width:calc(100% * 8 / 12)}:host.col-xs-8.has-margin{width:calc(100% * 8 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-8.has-margin{width:calc(100% * 8 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-8.has-margin{width:calc(100% * 8 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-8.has-margin{width:calc(100% * 8 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-8.has-margin{width:calc(100% * 8 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-8{grid-column:span 8;width:calc(100% * 8 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-8.has-margin{width:calc(100% * 8 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-9{grid-column:span 9;width:75%}:host.col-xs-9.has-margin{width:calc(100% * 9 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 576px){:host.col-sm-9.has-margin{width:calc(100% * 9 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 768px){:host.col-md-9.has-margin{width:calc(100% * 9 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 992px){:host.col-lg-9.has-margin{width:calc(100% * 9 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 1200px){:host.col-xl-9.has-margin{width:calc(100% * 9 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-9{grid-column:span 9;width:75%}}@container mag-grid (min-width: 1400px){:host.col-xxl-9.has-margin{width:calc(100% * 9 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-10{grid-column:span 10;width:calc(100% * 10 / 12)}:host.col-xs-10.has-margin{width:calc(100% * 10 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-10.has-margin{width:calc(100% * 10 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-10.has-margin{width:calc(100% * 10 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-10.has-margin{width:calc(100% * 10 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-10.has-margin{width:calc(100% * 10 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-10{grid-column:span 10;width:calc(100% * 10 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-10.has-margin{width:calc(100% * 10 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-11{grid-column:span 11;width:calc(100% * 11 / 12)}:host.col-xs-11.has-margin{width:calc(100% * 11 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 576px){:host.col-sm-11.has-margin{width:calc(100% * 11 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 768px){:host.col-md-11.has-margin{width:calc(100% * 11 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 992px){:host.col-lg-11.has-margin{width:calc(100% * 11 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 1200px){:host.col-xl-11.has-margin{width:calc(100% * 11 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-11{grid-column:span 11;width:calc(100% * 11 / 12)}}@container mag-grid (min-width: 1400px){:host.col-xxl-11.has-margin{width:calc(100% * 11 / 12 - 2 * var(--section-card-margin, 1rem))}}:host.col-xs-12{grid-column:span 12;width:100%}:host.col-xs-12.has-margin{width:calc(100% * 12 / 12 - 2 * var(--section-card-margin, 1rem))}@container mag-grid (min-width: 576px){:host.col-sm-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 576px){:host.col-sm-12.has-margin{width:calc(100% * 12 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 768px){:host.col-md-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 768px){:host.col-md-12.has-margin{width:calc(100% * 12 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 992px){:host.col-lg-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 992px){:host.col-lg-12.has-margin{width:calc(100% * 12 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1200px){:host.col-xl-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 1200px){:host.col-xl-12.has-margin{width:calc(100% * 12 / 12 - 2 * var(--section-card-margin, 1rem))}}@container mag-grid (min-width: 1400px){:host.col-xxl-12{grid-column:span 12;width:100%}}@container mag-grid (min-width: 1400px){:host.col-xxl-12.has-margin{width:calc(100% * 12 / 12 - 2 * var(--section-card-margin, 1rem))}}.m-section-card__corner{position:absolute;top:.5rem;right:.5rem;z-index:1}\n"], dependencies: [{ kind: "component", type: ButtonComponent, selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted", "options"], outputs: ["toggleChange", "action"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
17557
17631
  }
17558
17632
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: SectionCardComponent, decorators: [{
17559
17633
  type: Component,
@@ -17863,7 +17937,7 @@ class SectionTabsComponent extends ConfigComponent {
17863
17937
  }
17864
17938
  }
17865
17939
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: SectionTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
17866
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: SectionTabsComponent, isStandalone: true, selector: "m-section-tabs", inputs: { xs: { classPropertyName: "xs", publicName: "xs", isSignal: true, isRequired: false, transformFunction: null }, sm: { classPropertyName: "sm", publicName: "sm", isSignal: true, isRequired: false, transformFunction: null }, md: { classPropertyName: "md", publicName: "md", isSignal: true, isRequired: false, transformFunction: null }, lg: { classPropertyName: "lg", publicName: "lg", isSignal: true, isRequired: false, transformFunction: null }, xl: { classPropertyName: "xl", publicName: "xl", isSignal: true, isRequired: false, transformFunction: null }, xxl: { classPropertyName: "xxl", publicName: "xxl", isSignal: true, isRequired: false, transformFunction: null }, sticky: { classPropertyName: "sticky", publicName: "sticky", isSignal: true, isRequired: false, transformFunction: null }, inverse: { classPropertyName: "inverse", publicName: "inverse", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { action: "action" }, host: { properties: { "style.width": "\"100%\"", "style.display": "\"block\"", "class": "hostClasses()" } }, usesInheritance: true, ngImport: i0, template: "@if (config(); as config) {\n @if (!isColumnMode()) {\n <div class=\"tabs {{ classNames() }}\">\n @for (button of visibleButtons(); track button.name) {\n <m-button [config]=\"button\" (clicked)=\"onButtonClick(button)\" />\n }\n @if (overflowTabs().length) {\n <div class=\"overflow-tab\">\n <m-context-menu\n [config]=\"overflowMenuConfig()\"\n [remote]=\"remote() ?? config.remote\"\n (action)=\"onOverflowTabClick($event)\"\n />\n </div>\n }\n </div>\n }\n @if (isColumnMode()) {\n <div class=\"tabs-column\">\n @for (button of buttons(); track button.name) {\n <m-button [config]=\"button\" (clicked)=\"onButtonClick(button)\" />\n }\n </div>\n }\n}\n", 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(.is-sticky-enabled.is-header-mode){position:sticky;top:0;z-index:10}:host(.is-sticky.is-header-mode){backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);background-color:var(--m-backdrop-glass);border:1px solid var(--m-backdrop-border)}.tabs{display:flex;align-items:center;width:100%;padding:0 var(--section-px, 1rem);border-bottom:1px solid var(--m-backdrop-border);box-sizing:border-box}:host-context(.m-section__body) .tabs{padding-inline:0}.overflow-tab{margin-left:auto;padding:0}:host(.is-header-mode){grid-column:span 12}:host(.is-column-mode){grid-column:span 12}:host(.is-column-mode:not(:last-child)){border-right:1px solid var(--m-backdrop-border)}@container mag-grid (max-width: 575.98px){:host(.is-column-mode:not(:last-child)){border-right:none;border-bottom:1px solid var(--m-backdrop-border)}}.tabs-column{display:flex;flex-direction:column;width:100%}.tabs-column m-button{width:100%}.tabs-column m-button:not(:last-child){border-bottom:1px solid var(--m-backdrop-border)}:host(.no-border) .tabs{border-bottom:none}:host(.no-border).is-column-mode:not(:last-child){border-right:none}:host(.no-border) .tabs-column m-button:not(:last-child){border-bottom:none}@container mag-grid (max-width: 575.98px){:host(.no-border).is-column-mode:not(:last-child){border-bottom:none}}:host(.is-column-mode.col-xs-1){grid-column:span 1}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-1){grid-column:span 1}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-1){grid-column:span 1}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-1){grid-column:span 1}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-1){grid-column:span 1}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-1){grid-column:span 1}}:host(.is-column-mode.col-xs-2){grid-column:span 2}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-2){grid-column:span 2}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-2){grid-column:span 2}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-2){grid-column:span 2}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-2){grid-column:span 2}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-2){grid-column:span 2}}:host(.is-column-mode.col-xs-3){grid-column:span 3}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-3){grid-column:span 3}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-3){grid-column:span 3}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-3){grid-column:span 3}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-3){grid-column:span 3}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-3){grid-column:span 3}}:host(.is-column-mode.col-xs-4){grid-column:span 4}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-4){grid-column:span 4}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-4){grid-column:span 4}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-4){grid-column:span 4}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-4){grid-column:span 4}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-4){grid-column:span 4}}:host(.is-column-mode.col-xs-5){grid-column:span 5}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-5){grid-column:span 5}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-5){grid-column:span 5}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-5){grid-column:span 5}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-5){grid-column:span 5}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-5){grid-column:span 5}}:host(.is-column-mode.col-xs-6){grid-column:span 6}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-6){grid-column:span 6}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-6){grid-column:span 6}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-6){grid-column:span 6}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-6){grid-column:span 6}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-6){grid-column:span 6}}:host(.is-column-mode.col-xs-7){grid-column:span 7}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-7){grid-column:span 7}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-7){grid-column:span 7}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-7){grid-column:span 7}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-7){grid-column:span 7}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-7){grid-column:span 7}}:host(.is-column-mode.col-xs-8){grid-column:span 8}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-8){grid-column:span 8}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-8){grid-column:span 8}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-8){grid-column:span 8}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-8){grid-column:span 8}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-8){grid-column:span 8}}:host(.is-column-mode.col-xs-9){grid-column:span 9}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-9){grid-column:span 9}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-9){grid-column:span 9}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-9){grid-column:span 9}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-9){grid-column:span 9}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-9){grid-column:span 9}}:host(.is-column-mode.col-xs-10){grid-column:span 10}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-10){grid-column:span 10}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-10){grid-column:span 10}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-10){grid-column:span 10}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-10){grid-column:span 10}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-10){grid-column:span 10}}:host(.is-column-mode.col-xs-11){grid-column:span 11}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-11){grid-column:span 11}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-11){grid-column:span 11}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-11){grid-column:span 11}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-11){grid-column:span 11}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-11){grid-column:span 11}}:host(.is-column-mode.col-xs-12){grid-column:span 12}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-12){grid-column:span 12}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-12){grid-column:span 12}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-12){grid-column:span 12}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-12){grid-column:span 12}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-12){grid-column:span 12}}\n"], dependencies: [{ kind: "component", type: ButtonComponent, selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted"], outputs: ["toggleChange", "action"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
17940
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: SectionTabsComponent, isStandalone: true, selector: "m-section-tabs", inputs: { xs: { classPropertyName: "xs", publicName: "xs", isSignal: true, isRequired: false, transformFunction: null }, sm: { classPropertyName: "sm", publicName: "sm", isSignal: true, isRequired: false, transformFunction: null }, md: { classPropertyName: "md", publicName: "md", isSignal: true, isRequired: false, transformFunction: null }, lg: { classPropertyName: "lg", publicName: "lg", isSignal: true, isRequired: false, transformFunction: null }, xl: { classPropertyName: "xl", publicName: "xl", isSignal: true, isRequired: false, transformFunction: null }, xxl: { classPropertyName: "xxl", publicName: "xxl", isSignal: true, isRequired: false, transformFunction: null }, sticky: { classPropertyName: "sticky", publicName: "sticky", isSignal: true, isRequired: false, transformFunction: null }, inverse: { classPropertyName: "inverse", publicName: "inverse", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { action: "action" }, host: { properties: { "style.width": "\"100%\"", "style.display": "\"block\"", "class": "hostClasses()" } }, usesInheritance: true, ngImport: i0, template: "@if (config(); as config) {\n @if (!isColumnMode()) {\n <div class=\"tabs {{ classNames() }}\">\n @for (button of visibleButtons(); track button.name) {\n <m-button [config]=\"button\" (clicked)=\"onButtonClick(button)\" />\n }\n @if (overflowTabs().length) {\n <div class=\"overflow-tab\">\n <m-context-menu\n [config]=\"overflowMenuConfig()\"\n [remote]=\"remote() ?? config.remote\"\n (action)=\"onOverflowTabClick($event)\"\n />\n </div>\n }\n </div>\n }\n @if (isColumnMode()) {\n <div class=\"tabs-column\">\n @for (button of buttons(); track button.name) {\n <m-button [config]=\"button\" (clicked)=\"onButtonClick(button)\" />\n }\n </div>\n }\n}\n", 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(.is-sticky-enabled.is-header-mode){position:sticky;top:0;z-index:10}:host(.is-sticky.is-header-mode){backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);background-color:var(--m-backdrop-glass);border:1px solid var(--m-backdrop-border)}.tabs{display:flex;align-items:center;width:100%;padding:0 var(--section-px, 1rem);border-bottom:1px solid var(--m-backdrop-border);box-sizing:border-box}:host-context(.m-section__body) .tabs{padding-inline:0}.overflow-tab{margin-left:auto;padding:0}:host(.is-header-mode){grid-column:span 12}:host(.is-column-mode){grid-column:span 12}:host(.is-column-mode:not(:last-child)){border-right:1px solid var(--m-backdrop-border)}@container mag-grid (max-width: 575.98px){:host(.is-column-mode:not(:last-child)){border-right:none;border-bottom:1px solid var(--m-backdrop-border)}}.tabs-column{display:flex;flex-direction:column;width:100%}.tabs-column m-button{width:100%}.tabs-column m-button:not(:last-child){border-bottom:1px solid var(--m-backdrop-border)}:host(.no-border) .tabs{border-bottom:none}:host(.no-border).is-column-mode:not(:last-child){border-right:none}:host(.no-border) .tabs-column m-button:not(:last-child){border-bottom:none}@container mag-grid (max-width: 575.98px){:host(.no-border).is-column-mode:not(:last-child){border-bottom:none}}:host(.is-column-mode.col-xs-1){grid-column:span 1}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-1){grid-column:span 1}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-1){grid-column:span 1}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-1){grid-column:span 1}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-1){grid-column:span 1}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-1){grid-column:span 1}}:host(.is-column-mode.col-xs-2){grid-column:span 2}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-2){grid-column:span 2}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-2){grid-column:span 2}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-2){grid-column:span 2}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-2){grid-column:span 2}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-2){grid-column:span 2}}:host(.is-column-mode.col-xs-3){grid-column:span 3}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-3){grid-column:span 3}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-3){grid-column:span 3}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-3){grid-column:span 3}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-3){grid-column:span 3}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-3){grid-column:span 3}}:host(.is-column-mode.col-xs-4){grid-column:span 4}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-4){grid-column:span 4}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-4){grid-column:span 4}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-4){grid-column:span 4}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-4){grid-column:span 4}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-4){grid-column:span 4}}:host(.is-column-mode.col-xs-5){grid-column:span 5}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-5){grid-column:span 5}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-5){grid-column:span 5}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-5){grid-column:span 5}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-5){grid-column:span 5}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-5){grid-column:span 5}}:host(.is-column-mode.col-xs-6){grid-column:span 6}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-6){grid-column:span 6}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-6){grid-column:span 6}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-6){grid-column:span 6}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-6){grid-column:span 6}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-6){grid-column:span 6}}:host(.is-column-mode.col-xs-7){grid-column:span 7}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-7){grid-column:span 7}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-7){grid-column:span 7}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-7){grid-column:span 7}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-7){grid-column:span 7}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-7){grid-column:span 7}}:host(.is-column-mode.col-xs-8){grid-column:span 8}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-8){grid-column:span 8}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-8){grid-column:span 8}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-8){grid-column:span 8}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-8){grid-column:span 8}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-8){grid-column:span 8}}:host(.is-column-mode.col-xs-9){grid-column:span 9}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-9){grid-column:span 9}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-9){grid-column:span 9}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-9){grid-column:span 9}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-9){grid-column:span 9}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-9){grid-column:span 9}}:host(.is-column-mode.col-xs-10){grid-column:span 10}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-10){grid-column:span 10}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-10){grid-column:span 10}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-10){grid-column:span 10}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-10){grid-column:span 10}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-10){grid-column:span 10}}:host(.is-column-mode.col-xs-11){grid-column:span 11}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-11){grid-column:span 11}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-11){grid-column:span 11}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-11){grid-column:span 11}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-11){grid-column:span 11}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-11){grid-column:span 11}}:host(.is-column-mode.col-xs-12){grid-column:span 12}@container mag-grid (min-width: 576px){:host(.is-column-mode.col-sm-12){grid-column:span 12}}@container mag-grid (min-width: 768px){:host(.is-column-mode.col-md-12){grid-column:span 12}}@container mag-grid (min-width: 992px){:host(.is-column-mode.col-lg-12){grid-column:span 12}}@container mag-grid (min-width: 1200px){:host(.is-column-mode.col-xl-12){grid-column:span 12}}@container mag-grid (min-width: 1400px){:host(.is-column-mode.col-xxl-12){grid-column:span 12}}\n"], dependencies: [{ kind: "component", type: ButtonComponent, selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted", "options"], outputs: ["toggleChange", "action"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
17867
17941
  }
17868
17942
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: SectionTabsComponent, decorators: [{
17869
17943
  type: Component,
@@ -20612,7 +20686,7 @@ class WrapperInputComponent extends ConfigComponent {
20612
20686
  break;
20613
20687
  }
20614
20688
  case InputType.TOGGLE: {
20615
- const { ToggleInputComponent } = await import('./magmonium-one-toggle-BMEdMyWj.mjs');
20689
+ const { ToggleInputComponent } = await import('./magmonium-one-toggle-mArDCN6A.mjs');
20616
20690
  this.createDynamicComponent(seq, ToggleInputComponent, [], true);
20617
20691
  break;
20618
20692
  }
@@ -20624,12 +20698,12 @@ class WrapperInputComponent extends ConfigComponent {
20624
20698
  break;
20625
20699
  }
20626
20700
  case InputType.PASSWORD: {
20627
- const { PasswordInputComponent } = await import('./magmonium-one-password-DVYfUUv4.mjs');
20701
+ const { PasswordInputComponent } = await import('./magmonium-one-password-HlJ6mkOW.mjs');
20628
20702
  this.createDynamicComponent(seq, PasswordInputComponent);
20629
20703
  break;
20630
20704
  }
20631
20705
  case InputType.OTP: {
20632
- const { OtpInputComponent } = await import('./magmonium-one-otp-C57Nh-0n.mjs');
20706
+ const { OtpInputComponent } = await import('./magmonium-one-otp-DZ77hPG2.mjs');
20633
20707
  this.createDynamicComponent(seq, OtpInputComponent);
20634
20708
  break;
20635
20709
  }
@@ -21200,7 +21274,7 @@ class ToggleRadioInputComponent extends BaseTextInputComponent {
21200
21274
  }
21201
21275
  </div>
21202
21276
  }
21203
- `, isInline: true, 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%;--toggle-radio-bg: var(--m-background-lite);--toggle-radio-radius: var(--m-toggle-radio-radius, var(--m-input-radius, 4px));--toggle-radio-border-width: var(--m-toggle-radio-border-width, var(--m-input-border-width, 2px));--toggle-radio-border: var(--toggle-radio-border-width) solid var(--m-mm);--toggle-radio-divider-width: var(--toggle-radio-border-width);--toggle-radio-indicator-bg: var(--m-mm);--toggle-radio-indicator-radius: 0;--toggle-radio-pad: 0;--toggle-radio-gap: .375em ;--toggle-radio-height: 2.25em }.toggle-radio{height:calc(var(--input-size, 1em) * 2);min-height:calc(var(--input-size, 1em) * 2);border-width:max(1px,var(--input-size, 1em) * .0625);border-radius:calc(var(--input-size, 1em) * .4);padding:calc(var(--input-size, 1em) * .5) calc(var(--input-size, 1em) * .5);gap:calc(var(--input-size, 1em) * .375);font-size:var(--input-size, 1em);height:var(--toggle-radio-height);min-height:var(--toggle-radio-height);border-radius:var(--toggle-radio-radius);padding:var(--toggle-radio-pad);gap:var(--toggle-radio-gap);border:var(--toggle-radio-border);display:flex;align-items:stretch;width:100%;background:var(--toggle-radio-bg);box-sizing:border-box;overflow:hidden;position:relative;isolation:isolate}.toggle-radio--disabled{opacity:.6;cursor:not-allowed}.toggle-radio--disabled .toggle-radio__option{pointer-events:none}.toggle-radio__option{flex:1 1 0%;display:flex;align-items:stretch;position:relative;z-index:1}.toggle-radio__option--active{background:var(--toggle-radio-indicator-bg);transition:background-color .2s ease}.toggle-radio__option:hover{opacity:.8}.toggle-radio__option:has(input[type=radio]:focus-visible) label{outline:var(--toggle-radio-border-width) solid color-mix(in srgb,var(--m-focus) 45%,transparent);outline-offset:calc(var(--toggle-radio-border-width) * -1)}.toggle-radio__option:not(:last-child):not(.toggle-radio__option--active):not(:has(+.toggle-radio__option--active)):after{content:\"\";position:absolute;top:0;bottom:0;right:calc(var(--toggle-radio-gap) / -2);width:var(--toggle-radio-divider-width);background:var(--m-mm)}.toggle-radio__option input[type=radio]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.toggle-radio__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;--m-icon-size: 1.1em }.toggle-radio__option label{display:flex;align-items:center;justify-content:center;gap:0;width:100%;height:100%;overflow:hidden;border-radius:var(--toggle-radio-indicator-radius);padding:0 1.25em;gap:.375em;cursor:pointer;line-height:normal;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--m-text-secondary);transition:color .2s ease,opacity .2s ease;box-sizing:border-box;-webkit-user-select:none;user-select:none;white-space:nowrap}.toggle-radio__option label:active{transform:scale(.96)}.toggle-radio__option span{display:block;line-height:normal;overflow:hidden;text-overflow:ellipsis;transition:opacity .25s ease}.toggle-radio__option--active label{color:var(--m-inverse-text)}.toggle-radio__option--has-icon:not(.toggle-radio__option--active) span{opacity:0;max-width:0}.toggle-radio__option--has-icon.toggle-radio__option--active span{opacity:1;max-width:200px}.toggle-radio:not(.toggle-radio--equal-width):not(.toggle-radio--icon-only):not(.toggle-radio--vertical) .toggle-radio__option--has-icon{flex:0 0 auto}.toggle-radio:not(.toggle-radio--equal-width):not(.toggle-radio--icon-only):not(.toggle-radio--vertical) .toggle-radio__option--has-icon.toggle-radio__option--active{flex:1 1 auto}.toggle-radio:not(.toggle-radio--equal-width):not(.toggle-radio--icon-only):not(.toggle-radio--vertical):not(:has(.toggle-radio__option--active)) .toggle-radio__option--has-icon{flex:1 1 0%}.toggle-radio:not(.toggle-radio--equal-width):not(.toggle-radio--icon-only):not(.toggle-radio--vertical):not(:has(.toggle-radio__option--active)) .toggle-radio__option--has-icon span{opacity:1;max-width:200px}.toggle-radio--equal-width.toggle-radio .toggle-radio__option--has-icon:not(.toggle-radio__option--active) span{opacity:.7;max-width:200px;overflow:visible}.toggle-radio--vertical{flex-direction:column;height:100%;max-height:inherit}.toggle-radio--vertical .toggle-radio__option{flex:1 1 auto;width:100%}.toggle-radio--vertical .toggle-radio__option:not(:last-child):not(.toggle-radio--vertical .toggle-radio__option--active):not(:has(+.toggle-radio--vertical .toggle-radio__option--active)):after{top:auto;bottom:calc(var(--toggle-radio-gap) / -2);left:0;right:0;width:100%;height:var(--toggle-radio-divider-width)}.toggle-radio--icon-only .toggle-radio__option label{padding:0;gap:0}:host:has(.toggle-radio--vertical.toggle-radio--icon-only){width:fit-content}.toggle-radio--vertical.toggle-radio--icon-only{width:fit-content;gap:0}.toggle-radio--vertical.toggle-radio--icon-only .toggle-radio__option{width:var(--toggle-radio-height);flex:0 0 var(--toggle-radio-height)}.toggle-radio--vertical.toggle-radio--icon-only .toggle-radio__option:not(:last-child):not(.toggle-radio--vertical.toggle-radio--icon-only .toggle-radio__option--active):not(:has(+.toggle-radio--vertical.toggle-radio--icon-only .toggle-radio__option--active)):after{bottom:0}.toggle-radio__overflow{flex:0 0 auto;display:flex;align-items:center;justify-content:center;padding:0 1.25em;--m-context-menu-size: calc(var(--toggle-radio-height) * .6)}.toggle-radio--vertical .toggle-radio__overflow{width:100%;padding:1.25em 0}\n"], dependencies: [{ kind: "component", type: LabelComponent, selector: "m-label", inputs: ["for", "placeholder", "params", "required", "disabled", "color"] }, { kind: "component", type: IconComponent, selector: "m-icon, m-one-icon", inputs: ["config", "name", "color", "size", "one", "baseUrl", "remote"], outputs: ["configChange"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted"], outputs: ["toggleChange", "action"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21277
+ `, isInline: true, 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%;--toggle-radio-bg: var(--m-background-lite);--toggle-radio-radius: var(--m-toggle-radio-radius, var(--m-input-radius, 4px));--toggle-radio-border-width: var(--m-toggle-radio-border-width, var(--m-input-border-width, 2px));--toggle-radio-border: var(--toggle-radio-border-width) solid var(--m-mm);--toggle-radio-divider-width: var(--toggle-radio-border-width);--toggle-radio-indicator-bg: var(--m-mm);--toggle-radio-indicator-radius: 0;--toggle-radio-pad: 0;--toggle-radio-gap: .375em ;--toggle-radio-height: 2.25em }.toggle-radio{height:calc(var(--input-size, 1em) * 2);min-height:calc(var(--input-size, 1em) * 2);border-width:max(1px,var(--input-size, 1em) * .0625);border-radius:calc(var(--input-size, 1em) * .4);padding:calc(var(--input-size, 1em) * .5) calc(var(--input-size, 1em) * .5);gap:calc(var(--input-size, 1em) * .375);font-size:var(--input-size, 1em);height:var(--toggle-radio-height);min-height:var(--toggle-radio-height);border-radius:var(--toggle-radio-radius);padding:var(--toggle-radio-pad);gap:var(--toggle-radio-gap);border:var(--toggle-radio-border);display:flex;align-items:stretch;width:100%;background:var(--toggle-radio-bg);box-sizing:border-box;overflow:hidden;position:relative;isolation:isolate}.toggle-radio--disabled{opacity:.6;cursor:not-allowed}.toggle-radio--disabled .toggle-radio__option{pointer-events:none}.toggle-radio__option{flex:1 1 0%;display:flex;align-items:stretch;position:relative;z-index:1}.toggle-radio__option--active{background:var(--toggle-radio-indicator-bg);transition:background-color .2s ease}.toggle-radio__option:hover{opacity:.8}.toggle-radio__option:has(input[type=radio]:focus-visible) label{outline:var(--toggle-radio-border-width) solid color-mix(in srgb,var(--m-focus) 45%,transparent);outline-offset:calc(var(--toggle-radio-border-width) * -1)}.toggle-radio__option:not(:last-child):not(.toggle-radio__option--active):not(:has(+.toggle-radio__option--active)):after{content:\"\";position:absolute;top:0;bottom:0;right:calc(var(--toggle-radio-gap) / -2);width:var(--toggle-radio-divider-width);background:var(--m-mm)}.toggle-radio__option input[type=radio]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.toggle-radio__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;--m-icon-size: 1.1em }.toggle-radio__option label{display:flex;align-items:center;justify-content:center;gap:0;width:100%;height:100%;overflow:hidden;border-radius:var(--toggle-radio-indicator-radius);padding:0 1.25em;gap:.375em;cursor:pointer;line-height:normal;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--m-text-secondary);transition:color .2s ease,opacity .2s ease;box-sizing:border-box;-webkit-user-select:none;user-select:none;white-space:nowrap}.toggle-radio__option label:active{transform:scale(.96)}.toggle-radio__option span{display:block;line-height:normal;overflow:hidden;text-overflow:ellipsis;transition:opacity .25s ease}.toggle-radio__option--active label{color:var(--m-inverse-text)}.toggle-radio__option--has-icon:not(.toggle-radio__option--active) span{opacity:0;max-width:0}.toggle-radio__option--has-icon.toggle-radio__option--active span{opacity:1;max-width:200px}.toggle-radio:not(.toggle-radio--equal-width):not(.toggle-radio--icon-only):not(.toggle-radio--vertical) .toggle-radio__option--has-icon{flex:0 0 auto}.toggle-radio:not(.toggle-radio--equal-width):not(.toggle-radio--icon-only):not(.toggle-radio--vertical) .toggle-radio__option--has-icon.toggle-radio__option--active{flex:1 1 auto}.toggle-radio:not(.toggle-radio--equal-width):not(.toggle-radio--icon-only):not(.toggle-radio--vertical):not(:has(.toggle-radio__option--active)) .toggle-radio__option--has-icon{flex:1 1 0%}.toggle-radio:not(.toggle-radio--equal-width):not(.toggle-radio--icon-only):not(.toggle-radio--vertical):not(:has(.toggle-radio__option--active)) .toggle-radio__option--has-icon span{opacity:1;max-width:200px}.toggle-radio--equal-width.toggle-radio .toggle-radio__option--has-icon:not(.toggle-radio__option--active) span{opacity:.7;max-width:200px;overflow:visible}.toggle-radio--vertical{flex-direction:column;height:100%;max-height:inherit}.toggle-radio--vertical .toggle-radio__option{flex:1 1 auto;width:100%}.toggle-radio--vertical .toggle-radio__option:not(:last-child):not(.toggle-radio--vertical .toggle-radio__option--active):not(:has(+.toggle-radio--vertical .toggle-radio__option--active)):after{top:auto;bottom:calc(var(--toggle-radio-gap) / -2);left:0;right:0;width:100%;height:var(--toggle-radio-divider-width)}.toggle-radio--icon-only .toggle-radio__option label{padding:0;gap:0}:host:has(.toggle-radio--vertical.toggle-radio--icon-only){width:fit-content}.toggle-radio--vertical.toggle-radio--icon-only{width:fit-content;gap:0}.toggle-radio--vertical.toggle-radio--icon-only .toggle-radio__option{width:var(--toggle-radio-height);flex:0 0 var(--toggle-radio-height)}.toggle-radio--vertical.toggle-radio--icon-only .toggle-radio__option:not(:last-child):not(.toggle-radio--vertical.toggle-radio--icon-only .toggle-radio__option--active):not(:has(+.toggle-radio--vertical.toggle-radio--icon-only .toggle-radio__option--active)):after{bottom:0}.toggle-radio__overflow{flex:0 0 auto;display:flex;align-items:center;justify-content:center;padding:0 1.25em;--m-context-menu-size: calc(var(--toggle-radio-height) * .6)}.toggle-radio--vertical .toggle-radio__overflow{width:100%;padding:1.25em 0}\n"], dependencies: [{ kind: "component", type: LabelComponent, selector: "m-label", inputs: ["for", "placeholder", "params", "required", "disabled", "color"] }, { kind: "component", type: IconComponent, selector: "m-icon, m-one-icon", inputs: ["config", "name", "color", "size", "one", "baseUrl", "remote"], outputs: ["configChange"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted", "options"], outputs: ["toggleChange", "action"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21204
21278
  }
21205
21279
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ToggleRadioInputComponent, decorators: [{
21206
21280
  type: Component,
@@ -23358,6 +23432,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
23358
23432
  }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<m-card variant=\"dashboard\">\n @if (title() || icon() || buttonGroup()) {\n <div slot=\"header\" class=\"m-dashboard-card__header\">\n <div class=\"m-dashboard-card__header-left\">\n @if (icon()) {\n <m-icon [name]=\"icon()!\" color=\"mm\" />\n }\n @if (title()) {\n <m-header [level]=\"4\" color=\"textSecondary\">{{ title()! | translate }}</m-header>\n }\n <ng-content select=\"[slot=header]\"></ng-content>\n </div>\n\n @if (buttonGroup()) {\n <div class=\"m-dashboard-card__header-right\">\n <m-button-group [name]=\"buttonGroup()!\" [config]=\"{ isContext: true }\" />\n </div>\n }\n </div>\n }\n\n <div slot=\"content\" class=\"m-dashboard-card__body\">\n <ng-content select=\"[slot=content]\"></ng-content>\n <ng-content></ng-content>\n </div>\n\n @if (hasFooter()) {\n <div slot=\"footer\" class=\"m-dashboard-card__footer\">\n <ng-content select=\"[slot=footer]\"></ng-content>\n </div>\n }\n</m-card>\n", 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%}.m-dashboard-card__header{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1rem}.m-dashboard-card__header-left{display:flex;flex-direction:row;align-items:center;gap:1rem}.m-dashboard-card__header-left m-header,.m-dashboard-card__header-left h1,.m-dashboard-card__header-left h2,.m-dashboard-card__header-left h3,.m-dashboard-card__header-left h4,.m-dashboard-card__header-left h5,.m-dashboard-card__header-left h6{margin:0;padding:0;display:inline-flex;align-items:center}.m-dashboard-card__header-left m-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.75rem;background:var(--m-background-lite);color:var(--m-mm);border:1px solid var(--m-border);box-shadow:0 4px 10px #00000008}.m-dashboard-card__header-right{display:flex;align-items:center;margin-left:auto}.m-dashboard-card__body,.m-dashboard-card__footer{width:100%;display:block}:host.no-footer .m-dashboard-card__body{padding-bottom:.75rem}\n"] }]
23359
23433
  }], propDecorators: { icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], buttonGroup: [{ type: i0.Input, args: [{ isSignal: true, alias: "buttonGroup", required: false }] }] } });
23360
23434
 
23435
+ class ChatBubbleComponent {
23436
+ variant = input('bordered', ...(ngDevMode ? [{ debugName: "variant" }] : /* istanbul ignore next */ []));
23437
+ pointerPosition = input('bottom', ...(ngDevMode ? [{ debugName: "pointerPosition" }] : /* istanbul ignore next */ []));
23438
+ /** Use top/bottom on vertical sides and left/right on horizontal sides. */
23439
+ pointerAlignment = input('center', ...(ngDevMode ? [{ debugName: "pointerAlignment" }] : /* istanbul ignore next */ []));
23440
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ChatBubbleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
23441
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.9", type: ChatBubbleComponent, isStandalone: true, selector: "m-chat-bubble", inputs: { variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, pointerPosition: { classPropertyName: "pointerPosition", publicName: "pointerPosition", isSignal: true, isRequired: false, transformFunction: null }, pointerAlignment: { classPropertyName: "pointerAlignment", publicName: "pointerAlignment", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.data-variant": "variant()", "attr.data-pointer-position": "pointerPosition()", "attr.data-pointer-alignment": "pointerAlignment()" }, classAttribute: "m-chat-bubble" }, ngImport: i0, template: '<ng-content />', isInline: true, 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{--m-chat-bubble-fill: var(--m-background);--m-chat-bubble-border: var(--m-border);--m-chat-bubble-pointer-offset: 50%;position:relative;display:block;box-sizing:border-box;min-width:3rem;min-height:3rem;padding:1rem;border:1px solid var(--m-chat-bubble-border);border-radius:.75rem;background:var(--m-chat-bubble-fill);color:var(--m-text);overflow-wrap:anywhere}:host([data-variant=solid]){--m-chat-bubble-fill: var(--m-border);--m-chat-bubble-border: var(--m-chat-bubble-fill)}:host([data-pointer-alignment=left]),:host([data-pointer-alignment=top]){--m-chat-bubble-pointer-offset: 1.25rem}:host([data-pointer-alignment=right]),:host([data-pointer-alignment=bottom]){--m-chat-bubble-pointer-offset: calc(100% - 1.25rem) }:host:before{content:\"\";position:absolute;box-sizing:border-box;width:.75rem;height:.75rem;background:var(--m-chat-bubble-fill);border:solid var(--m-chat-bubble-border);border-width:0;pointer-events:none}:host([data-pointer-position=top]):before{top:-1px;left:var(--m-chat-bubble-pointer-offset);border-width:1px 0 0 1px;transform:translate(-50%,-50%) rotate(45deg)}:host([data-pointer-position=bottom]):before{bottom:-1px;left:var(--m-chat-bubble-pointer-offset);border-width:0 1px 1px 0;transform:translate(-50%,50%) rotate(45deg)}:host([data-pointer-position=left]):before{left:-1px;top:var(--m-chat-bubble-pointer-offset);border-width:0 0 1px 1px;transform:translate(-50%,-50%) rotate(45deg)}:host([data-pointer-position=right]):before{right:-1px;top:var(--m-chat-bubble-pointer-offset);border-width:1px 1px 0 0;transform:translate(50%,-50%) rotate(45deg)}:host([data-pointer-position=left][data-pointer-alignment=top]){border-top-left-radius:0}:host([data-pointer-position=left][data-pointer-alignment=top]):before{top:-1px;left:-.75rem;border-width:1px 0 0 1px;transform:skew(45deg);transform-origin:top left}:host([data-pointer-position=right][data-pointer-alignment=top]){border-top-right-radius:0}:host([data-pointer-position=right][data-pointer-alignment=top]):before{top:-1px;right:-.75rem;border-width:1px 1px 0 0;transform:skew(-45deg);transform-origin:top right}:host([data-pointer-position=left][data-pointer-alignment=bottom]){border-bottom-left-radius:0}:host([data-pointer-position=left][data-pointer-alignment=bottom]):before{top:auto;bottom:-1px;left:-.75rem;border-width:0 0 1px 1px;transform:skew(-45deg);transform-origin:bottom left}:host([data-pointer-position=right][data-pointer-alignment=bottom]){border-bottom-right-radius:0}:host([data-pointer-position=right][data-pointer-alignment=bottom]):before{top:auto;bottom:-1px;right:-.75rem;border-width:0 1px 1px 0;transform:skew(45deg);transform-origin:bottom right}:host([data-pointer-position=none]):before{display:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
23442
+ }
23443
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ChatBubbleComponent, decorators: [{
23444
+ type: Component,
23445
+ args: [{ selector: 'm-chat-bubble', template: '<ng-content />', changeDetection: ChangeDetectionStrategy.OnPush, host: {
23446
+ class: 'm-chat-bubble',
23447
+ '[attr.data-variant]': 'variant()',
23448
+ '[attr.data-pointer-position]': 'pointerPosition()',
23449
+ '[attr.data-pointer-alignment]': 'pointerAlignment()',
23450
+ }, 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{--m-chat-bubble-fill: var(--m-background);--m-chat-bubble-border: var(--m-border);--m-chat-bubble-pointer-offset: 50%;position:relative;display:block;box-sizing:border-box;min-width:3rem;min-height:3rem;padding:1rem;border:1px solid var(--m-chat-bubble-border);border-radius:.75rem;background:var(--m-chat-bubble-fill);color:var(--m-text);overflow-wrap:anywhere}:host([data-variant=solid]){--m-chat-bubble-fill: var(--m-border);--m-chat-bubble-border: var(--m-chat-bubble-fill)}:host([data-pointer-alignment=left]),:host([data-pointer-alignment=top]){--m-chat-bubble-pointer-offset: 1.25rem}:host([data-pointer-alignment=right]),:host([data-pointer-alignment=bottom]){--m-chat-bubble-pointer-offset: calc(100% - 1.25rem) }:host:before{content:\"\";position:absolute;box-sizing:border-box;width:.75rem;height:.75rem;background:var(--m-chat-bubble-fill);border:solid var(--m-chat-bubble-border);border-width:0;pointer-events:none}:host([data-pointer-position=top]):before{top:-1px;left:var(--m-chat-bubble-pointer-offset);border-width:1px 0 0 1px;transform:translate(-50%,-50%) rotate(45deg)}:host([data-pointer-position=bottom]):before{bottom:-1px;left:var(--m-chat-bubble-pointer-offset);border-width:0 1px 1px 0;transform:translate(-50%,50%) rotate(45deg)}:host([data-pointer-position=left]):before{left:-1px;top:var(--m-chat-bubble-pointer-offset);border-width:0 0 1px 1px;transform:translate(-50%,-50%) rotate(45deg)}:host([data-pointer-position=right]):before{right:-1px;top:var(--m-chat-bubble-pointer-offset);border-width:1px 1px 0 0;transform:translate(50%,-50%) rotate(45deg)}:host([data-pointer-position=left][data-pointer-alignment=top]){border-top-left-radius:0}:host([data-pointer-position=left][data-pointer-alignment=top]):before{top:-1px;left:-.75rem;border-width:1px 0 0 1px;transform:skew(45deg);transform-origin:top left}:host([data-pointer-position=right][data-pointer-alignment=top]){border-top-right-radius:0}:host([data-pointer-position=right][data-pointer-alignment=top]):before{top:-1px;right:-.75rem;border-width:1px 1px 0 0;transform:skew(-45deg);transform-origin:top right}:host([data-pointer-position=left][data-pointer-alignment=bottom]){border-bottom-left-radius:0}:host([data-pointer-position=left][data-pointer-alignment=bottom]):before{top:auto;bottom:-1px;left:-.75rem;border-width:0 0 1px 1px;transform:skew(-45deg);transform-origin:bottom left}:host([data-pointer-position=right][data-pointer-alignment=bottom]){border-bottom-right-radius:0}:host([data-pointer-position=right][data-pointer-alignment=bottom]):before{top:auto;bottom:-1px;right:-.75rem;border-width:0 1px 1px 0;transform:skew(45deg);transform-origin:bottom right}:host([data-pointer-position=none]):before{display:none}\n"] }]
23451
+ }], propDecorators: { variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], pointerPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "pointerPosition", required: false }] }], pointerAlignment: [{ type: i0.Input, args: [{ isSignal: true, alias: "pointerAlignment", required: false }] }] } });
23452
+
23361
23453
  /**
23362
23454
  * Generate CSS clip-path values for different geometric shapes
23363
23455
  */
@@ -25504,7 +25596,7 @@ class TableBodyComponent {
25504
25596
  </tr>
25505
25597
  }
25506
25598
  </tbody>
25507
- `, isInline: true, 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)}}.m-table-body__row{transition:background-color .3s cubic-bezier(.4,0,.2,1);position:relative}.m-table-body__row:hover{background:color-mix(in srgb,var(--m-mm) 5%,transparent)}.m-table-body__row:hover .m-table-body__cell{background:inherit}.m-table-body__cell{padding:1rem 1.25rem;font-size:.875rem;color:var(--m-text);border-bottom:1px solid var(--m-backdrop-border);white-space:nowrap;vertical-align:middle;background:transparent;transition:background-color .3s ease}.m-table-body__cell[class*=--number],.m-table-body__cell[class*=--currency],.m-table-body__cell[class*=--percent]{font-family:Inter,Roboto Mono,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.01em}@media(min-width:769px){.m-table-body__cell--fixed{position:sticky;background:var(--m-background);z-index:5}}@media(max-width:768px){.m-table-body__cell--fixed{position:static;background:transparent;z-index:auto}}.m-table-body__cell--fixed{border-right:none;transition:background-color .3s ease}.m-table-body__row:hover .m-table-body__cell--fixed{background:color-mix(in srgb,var(--m-mm) 5%,var(--m-background));z-index:6}@media(min-width:769px){.m-table-body__cell--fixed-last{border-right:1px solid var(--m-backdrop-border)}}@media(max-width:768px){.m-table-body__cell--fixed-last{border-right:none}}.m-table-body__cell--context-menu{padding-top:.35rem;padding-bottom:.35rem}.m-table-body__cell--select{width:48px;min-width:48px;max-width:48px;padding:0 1rem;text-align:center}.m-table-body__cell--select input[type=checkbox],.m-table-body__cell--select input[type=radio]{width:1rem;height:1rem;cursor:pointer;accent-color:var(--m-mm);display:block;margin:0 auto}.m-table-body__input{border:none;border-bottom:2px solid var(--m-backdrop-border);background:transparent;font-size:.875rem;color:var(--m-text);padding:.25rem;outline:none;width:100%;transition:border-bottom-color .2s ease}.m-table-body__input:focus{border-bottom-color:var(--m-mm)}.m-table-body__action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;background:transparent;cursor:pointer;color:var(--m-text-tertiary);border-radius:8px;transition:all .2s ease}.m-table-body__action-btn:hover{background:var(--m-backdrop-surface);color:var(--m-text)}.m-table-body__empty{text-align:center;padding:4rem;color:var(--m-text-tertiary);font-size:1rem;font-weight:500;letter-spacing:.02em;font-style:italic;opacity:.7}.m-table-body__link{color:var(--m-mm);text-decoration:none;cursor:pointer;font-weight:600;transition:color .2s ease}.m-table-body__link:hover{text-decoration:underline;color:var(--m-mm-lite)}.m-table-body__value{padding:.25rem .5rem;border-radius:6px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.m-table-body__value--positive{color:var(--m-success);background:var(--m-backdrop-success)}.m-table-body__value--negative{color:var(--m-error);background:var(--m-backdrop-error)}.m-table-body__dash{color:var(--m-text-tertiary);font-weight:400;font-style:italic;opacity:.8}\n"], dependencies: [{ kind: "directive", type: HighlightDirective, selector: "[mHighlight]", inputs: ["mHighlight", "mHighlightText"] }, { kind: "component", type: IconComponent, selector: "m-icon, m-one-icon", inputs: ["config", "name", "color", "size", "one", "baseUrl", "remote"], outputs: ["configChange"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted"], outputs: ["toggleChange", "action"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: TableUserCellComponent, selector: "m-table-user-cell", inputs: ["userId"] }, { kind: "component", type: CheckboxInputComponent, selector: "m-checkbox", inputs: ["checked", "config", "required", "disabled", "invalid", "touched", "focused", "errors"], outputs: ["checkedChange", "touchedChange"] }, { kind: "component", type: RadioInputComponent, selector: "m-radio" }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "pipe", type: DecimalPipe, name: "number" }, { kind: "pipe", type: TimeAgoPipe, name: "timeAgo" }, { kind: "pipe", type: MoneyPipe, name: "money" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
25599
+ `, isInline: true, 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)}}.m-table-body__row{transition:background-color .3s cubic-bezier(.4,0,.2,1);position:relative}.m-table-body__row:hover{background:color-mix(in srgb,var(--m-mm) 5%,transparent)}.m-table-body__row:hover .m-table-body__cell{background:inherit}.m-table-body__cell{padding:1rem 1.25rem;font-size:.875rem;color:var(--m-text);border-bottom:1px solid var(--m-backdrop-border);white-space:nowrap;vertical-align:middle;background:transparent;transition:background-color .3s ease}.m-table-body__cell[class*=--number],.m-table-body__cell[class*=--currency],.m-table-body__cell[class*=--percent]{font-family:Inter,Roboto Mono,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.01em}@media(min-width:769px){.m-table-body__cell--fixed{position:sticky;background:var(--m-background);z-index:5}}@media(max-width:768px){.m-table-body__cell--fixed{position:static;background:transparent;z-index:auto}}.m-table-body__cell--fixed{border-right:none;transition:background-color .3s ease}.m-table-body__row:hover .m-table-body__cell--fixed{background:color-mix(in srgb,var(--m-mm) 5%,var(--m-background));z-index:6}@media(min-width:769px){.m-table-body__cell--fixed-last{border-right:1px solid var(--m-backdrop-border)}}@media(max-width:768px){.m-table-body__cell--fixed-last{border-right:none}}.m-table-body__cell--context-menu{padding-top:.35rem;padding-bottom:.35rem}.m-table-body__cell--select{width:48px;min-width:48px;max-width:48px;padding:0 1rem;text-align:center}.m-table-body__cell--select input[type=checkbox],.m-table-body__cell--select input[type=radio]{width:1rem;height:1rem;cursor:pointer;accent-color:var(--m-mm);display:block;margin:0 auto}.m-table-body__input{border:none;border-bottom:2px solid var(--m-backdrop-border);background:transparent;font-size:.875rem;color:var(--m-text);padding:.25rem;outline:none;width:100%;transition:border-bottom-color .2s ease}.m-table-body__input:focus{border-bottom-color:var(--m-mm)}.m-table-body__action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;background:transparent;cursor:pointer;color:var(--m-text-tertiary);border-radius:8px;transition:all .2s ease}.m-table-body__action-btn:hover{background:var(--m-backdrop-surface);color:var(--m-text)}.m-table-body__empty{text-align:center;padding:4rem;color:var(--m-text-tertiary);font-size:1rem;font-weight:500;letter-spacing:.02em;font-style:italic;opacity:.7}.m-table-body__link{color:var(--m-mm);text-decoration:none;cursor:pointer;font-weight:600;transition:color .2s ease}.m-table-body__link:hover{text-decoration:underline;color:var(--m-mm-lite)}.m-table-body__value{padding:.25rem .5rem;border-radius:6px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.m-table-body__value--positive{color:var(--m-success);background:var(--m-backdrop-success)}.m-table-body__value--negative{color:var(--m-error);background:var(--m-backdrop-error)}.m-table-body__dash{color:var(--m-text-tertiary);font-weight:400;font-style:italic;opacity:.8}\n"], dependencies: [{ kind: "directive", type: HighlightDirective, selector: "[mHighlight]", inputs: ["mHighlight", "mHighlightText"] }, { kind: "component", type: IconComponent, selector: "m-icon, m-one-icon", inputs: ["config", "name", "color", "size", "one", "baseUrl", "remote"], outputs: ["configChange"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted", "options"], outputs: ["toggleChange", "action"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: TableUserCellComponent, selector: "m-table-user-cell", inputs: ["userId"] }, { kind: "component", type: CheckboxInputComponent, selector: "m-checkbox", inputs: ["checked", "config", "required", "disabled", "invalid", "touched", "focused", "errors"], outputs: ["checkedChange", "touchedChange"] }, { kind: "component", type: RadioInputComponent, selector: "m-radio" }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "pipe", type: DecimalPipe, name: "number" }, { kind: "pipe", type: TimeAgoPipe, name: "timeAgo" }, { kind: "pipe", type: MoneyPipe, name: "money" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
25508
25600
  }
25509
25601
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: TableBodyComponent, decorators: [{
25510
25602
  type: Component,
@@ -27155,7 +27247,7 @@ class TreeGridComponent extends ConfigComponent {
27155
27247
  </table>
27156
27248
  </div>
27157
27249
  </div>
27158
- `, isInline: true, 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)}}.m-table{display:flex;flex-direction:column;border:1px solid var(--m-backdrop-border);border-radius:12px;overflow:clip;background:#ffffffe6;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);position:relative;transition:background-color .3s ease}.m-table--flat{border:none;box-shadow:none;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0}.m-table__toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:1.5rem var(--m-table-toolbar-padding-x, 1.25rem);border-bottom:1px solid var(--m-backdrop-border);gap:1.5rem;background:color-mix(in srgb,var(--m-background) 45%,transparent)}.m-table--flat .m-table__toolbar{background:transparent;padding-left:0;padding-right:0}.m-table__title{margin:0;font-size:1.25rem;font-weight:800;color:var(--m-text);letter-spacing:-.02em;flex:1}.m-table__search{flex:0 1 auto;display:flex;align-items:center}.m-table__search .m-input-wrapper{width:100%}.m-table__mobile-view{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;flex:1;overflow:auto}.m-table__empty-mobile{padding:3rem 1.5rem;text-align:center;color:var(--m-text-tertiary);font-size:.9375rem;font-weight:500;font-style:italic;opacity:.8;background:color-mix(in srgb,var(--m-background) 20%,transparent);border-radius:12px;border:1px dashed var(--m-backdrop-border)}.m-table__wrapper{overflow:auto;flex:1}.m-table__wrapper::-webkit-scrollbar{width:6px;height:6px}.m-table__wrapper::-webkit-scrollbar-track{background:transparent}.m-table__wrapper::-webkit-scrollbar-thumb{background:var(--m-backdrop-border);border-radius:10px}.m-table__wrapper::-webkit-scrollbar-thumb:hover{background:var(--m-text-tertiary)}.m-table__table{width:100%;min-width:100%;border-collapse:separate;border-spacing:0}mark.m-table__highlight{background:var(--m-highlight);color:#000;border-radius:2px;padding:0 2px;font-weight:700;box-shadow:0 1px 4px #0003}mark.m-table__highlight .m-one-pagination{margin-left:auto;--m-button-size: 2.25rem;--m-pagination-gap: .375rem}.m-table-pagination{display:flex;align-items:center;gap:1.5rem;padding:1.25rem var(--m-table-pagination-padding-x, 1.25rem);border-top:1px solid var(--m-backdrop-border);font-size:.8125rem;flex-wrap:wrap;background:color-mix(in srgb,var(--m-background) 40%,transparent)}.m-table--flat .m-table-pagination{background:transparent;padding-left:0;padding-right:0}.m-table-pagination__size{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;color:var(--m-text-secondary);font-weight:500}.m-table-pagination__select{border:1px solid var(--m-backdrop-border);border-radius:8px;background:var(--m-backdrop-surface);color:var(--m-text);padding:.375rem .625rem;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none}.m-table-pagination__select:hover{background:var(--m-backdrop-glass);border-color:var(--m-mm);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-mm) 10%,transparent)}.m-table-pagination__select:focus{border-color:var(--m-mm);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-mm) 20%,transparent)}.m-table-filter{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:1rem 1.25rem;background:color-mix(in srgb,var(--m-background-lite) 60%,transparent);border-bottom:1px solid var(--m-backdrop-border);box-shadow:inset 0 2px 4px #00000005;overflow-x:auto;scrollbar-width:none}.m-table-filter::-webkit-scrollbar{display:none}.m-table--flat .m-table-filter{background:transparent;padding-left:0;padding-right:0;border-bottom:none}.m-table-filter__item{display:flex;align-items:center;gap:10px;padding:.4375rem 1rem;border-radius:12px;background:var(--m-background);border:1px solid var(--m-backdrop-border);color:var(--m-text-secondary);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;-webkit-user-select:none;user-select:none;outline:none;font-weight:500}.m-table-filter__item:hover{border-color:var(--m-mm);color:var(--m-mm);background:var(--m-background);transform:translateY(-1px);box-shadow:0 4px 12px #0000000d}.m-table-filter__item--active{background:var(--m-mm);border-color:var(--m-mm);color:var(--m-inverse-text);font-weight:600;box-shadow:0 8px 16px color-mix(in srgb,var(--m-mm) 25%,transparent)}.m-table-filter__item--active:hover{background:var(--m-mm);border-color:var(--m-mm);color:var(--m-inverse-text);transform:translateY(-1px)}.m-table-filter__item--active .m-table-filter__badge{background:#fff3;color:var(--m-inverse-text);border-color:#ffffff1a}.m-table-filter__item--primary{background:var(--m-mm);border-color:var(--m-mm);color:var(--m-inverse-text);font-weight:600;box-shadow:0 8px 16px color-mix(in srgb,var(--m-mm) 25%,transparent)}.m-table-filter__item--primary:hover{background:var(--m-mm);border-color:var(--m-mm);color:var(--m-inverse-text);transform:translateY(-1px);box-shadow:0 10px 20px color-mix(in srgb,var(--m-mm) 30%,transparent)}.m-table-filter__item--primary .m-table-filter__badge{background:#fff3;color:var(--m-inverse-text);border-color:#ffffff1a}.m-table-filter__item--danger{border-color:var(--m-error);color:var(--m-error)}.m-table-filter__item--danger:hover{border-color:var(--m-error);color:var(--m-error);background:var(--m-backdrop-error);transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--m-error) 12%,transparent)}.m-table-filter__item--danger .m-table-filter__badge{background:var(--m-backdrop-error);color:var(--m-error);border-color:color-mix(in srgb,var(--m-error) 20%,transparent)}.m-table-filter__label{font-size:.8125rem;font-weight:600;letter-spacing:.01em}.m-table-filter__badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .375rem;border-radius:100px;background:var(--m-backdrop-surface);color:var(--m-text-secondary);font-size:.6875rem;font-weight:700;border:1px solid var(--m-backdrop-border);transition:all .2s ease}.m-table-thead__th{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--m-background) 95%,transparent);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);padding:1.25rem;text-align:left;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--m-text-tertiary);border-bottom:2px solid var(--m-backdrop-border);white-space:nowrap;transition:all .2s ease}.m-table-thead__th:hover{color:var(--m-text);background:var(--m-background)}@media(min-width:769px){.m-table-thead__th--fixed{z-index:20;background:var(--m-background)}}@media(max-width:768px){.m-table-thead__th--fixed{position:static;z-index:auto}}.m-table-thead__th--fixed{border-right:none}@media(min-width:769px){.m-table-thead__th--fixed-last{border-right:1px solid var(--m-backdrop-border)}}@media(max-width:768px){.m-table-thead__th--fixed-last{border-right:none}}.m-table-thead__th--sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.m-table-thead__th--select{width:48px;min-width:48px;max-width:48px;padding:0 1rem;text-align:center}.m-table-thead__th--select input[type=checkbox]{width:1rem;height:1rem;cursor:pointer;accent-color:var(--m-mm);border-radius:3px;display:block;margin:0 auto}.m-table-thead__cell{display:flex;align-items:center;gap:.5rem}.m-table-thead__sort-icon{color:var(--m-mm);opacity:.6;transition:opacity .2s ease}.m-table-thead__th:hover .m-table-thead__sort-icon{opacity:1}.m-table-thead__menu-btn{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;margin-left:auto;border:none;background:transparent;cursor:pointer;color:var(--m-text-tertiary);border-radius:6px;opacity:0;transition:all .15ms ease}.m-table-thead__menu-btn:hover{background:var(--m-backdrop-surface);color:var(--m-text)}.m-table-thead__th:hover .m-table-thead__menu-btn{opacity:1}.m-table-body__row{transition:background-color .3s cubic-bezier(.4,0,.2,1);position:relative}.m-table-body__row:hover{background:color-mix(in srgb,var(--m-mm) 5%,transparent)}.m-table-body__row:hover .m-table-body__cell{background:inherit}.m-table-body__cell{padding:1rem 1.25rem;font-size:.875rem;color:var(--m-text);border-bottom:1px solid var(--m-backdrop-border);white-space:nowrap;vertical-align:middle;background:transparent;transition:background-color .3s ease}.m-table-body__cell[class*=--number],.m-table-body__cell[class*=--currency],.m-table-body__cell[class*=--percent]{font-family:Inter,Roboto Mono,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.01em}@media(min-width:769px){.m-table-body__cell--fixed{position:sticky;background:var(--m-background);z-index:5}}@media(max-width:768px){.m-table-body__cell--fixed{position:static;background:transparent;z-index:auto}}.m-table-body__cell--fixed{border-right:none;transition:background-color .3s ease}.m-table-body__row:hover .m-table-body__cell--fixed{background:color-mix(in srgb,var(--m-mm) 5%,var(--m-background));z-index:6}@media(min-width:769px){.m-table-body__cell--fixed-last{border-right:1px solid var(--m-backdrop-border)}}@media(max-width:768px){.m-table-body__cell--fixed-last{border-right:none}}.m-table-body__cell--context-menu{padding-top:.35rem;padding-bottom:.35rem}.m-table-body__cell--select{width:48px;min-width:48px;max-width:48px;padding:0 1rem;text-align:center}.m-table-body__cell--select input[type=checkbox],.m-table-body__cell--select input[type=radio]{width:1rem;height:1rem;cursor:pointer;accent-color:var(--m-mm);display:block;margin:0 auto}.m-table-body__input{border:none;border-bottom:2px solid var(--m-backdrop-border);background:transparent;font-size:.875rem;color:var(--m-text);padding:.25rem;outline:none;width:100%;transition:border-bottom-color .2s ease}.m-table-body__input:focus{border-bottom-color:var(--m-mm)}.m-table-body__action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;background:transparent;cursor:pointer;color:var(--m-text-tertiary);border-radius:8px;transition:all .2s ease}.m-table-body__action-btn:hover{background:var(--m-backdrop-surface);color:var(--m-text)}.m-table-body__empty{text-align:center;padding:4rem;color:var(--m-text-tertiary);font-size:1rem;font-weight:500;letter-spacing:.02em;font-style:italic;opacity:.7}.m-table-body__link{color:var(--m-mm);text-decoration:none;cursor:pointer;font-weight:600;transition:color .2s ease}.m-table-body__link:hover{text-decoration:underline;color:var(--m-mm-lite)}.m-table-body__value{padding:.25rem .5rem;border-radius:6px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.m-table-body__value--positive{color:var(--m-success);background:var(--m-backdrop-success)}.m-table-body__value--negative{color:var(--m-error);background:var(--m-backdrop-error)}.m-table-body__dash{color:var(--m-text-tertiary);font-weight:400;font-style:italic;opacity:.8}.m-tree-grid{--m-tree-grid-icon: .75rem}.m-tree-grid .m-table-thead__th,.m-tree-grid .m-table-body__cell{padding:.375rem .5rem}.m-tree-grid .m-table-thead__th{font-size:.6875rem;letter-spacing:.06em;border-bottom-width:1px}.m-tree-grid__tree-cell{display:flex;align-items:center;gap:0;min-width:0}.m-tree-grid__indent{flex:0 0 auto;width:calc(var(--m-tree-grid-depth, 0) * var(--m-tree-grid-indent, var(--m-tree-grid-icon)))}.m-tree-grid__toggle{flex:0 0 auto;width:var(--m-tree-grid-icon);height:var(--m-tree-grid-icon);display:inline-flex;align-items:center;justify-content:center}.m-tree-grid__toggle m-button{--m-button-size: .333rem}.m-tree-grid__toggle-spacer{width:var(--m-tree-grid-icon);height:var(--m-tree-grid-icon);flex:0 0 auto}.m-tree-grid__lead-icon{flex:0 0 auto;display:inline-flex;align-items:center;margin-left:.125rem;opacity:.75}.m-tree-grid__lead-icon m-icon{--m-icon-size: .75rem}.m-tree-grid__label{min-width:0;margin-left:.25rem;overflow:hidden;text-overflow:ellipsis;font-size:.875em;line-height:1.25}.m-tree-grid .m-table-body__row{cursor:pointer}.m-tree-grid .m-table-body__row--selected{background:color-mix(in srgb,var(--m-mm) 12%,transparent)}.m-tree-grid .m-table__toolbar{padding:.5rem;background:var(--m-background)}.m-tree-grid .m-table__search{flex:1 1 auto;width:100%}.m-tree-grid .m-table__search m-input-wrapper,.m-tree-grid .m-table__search .m-input-wrapper{width:100%}.m-tree-grid__match{background:var(--m-highlight);padding:0;color:inherit;border-radius:2px}\n"], dependencies: [{ kind: "component", type: TableHeaderComponent, selector: "m-table-header", inputs: ["visibleColumns", "fixedCount", "fixedOffset", "sortState", "selectable", "allSelected", "someSelected"], outputs: ["sortClick", "selectAll"] }, { kind: "component", type: FreezeComponent, selector: "m-freeze", inputs: ["config"] }, { kind: "component", type: ButtonComponent, selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }, { kind: "component", type: HeaderComponent$1, selector: "m-header", inputs: ["level", "label", "actionButton", "actionLabel", "noTranslate", "params"], outputs: ["actionClick"] }, { kind: "component", type: IconComponent, selector: "m-icon, m-one-icon", inputs: ["config", "name", "color", "size", "one", "baseUrl", "remote"], outputs: ["configChange"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted"], outputs: ["toggleChange", "action"] }, { kind: "component", type: WrapperInputComponent, selector: "m-input-wrapper", inputs: ["remote", "value", "readonly", "state", "focused", "form", "options", "dir", "element", "data", "template", "placeholder", "aclResolver", "formValues"], outputs: ["valueChange", "stateChange", "act", "fieldKey", "fieldType"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
27250
+ `, isInline: true, 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)}}.m-table{display:flex;flex-direction:column;border:1px solid var(--m-backdrop-border);border-radius:12px;overflow:clip;background:#ffffffe6;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);position:relative;transition:background-color .3s ease}.m-table--flat{border:none;box-shadow:none;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0}.m-table__toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:1.5rem var(--m-table-toolbar-padding-x, 1.25rem);border-bottom:1px solid var(--m-backdrop-border);gap:1.5rem;background:color-mix(in srgb,var(--m-background) 45%,transparent)}.m-table--flat .m-table__toolbar{background:transparent;padding-left:0;padding-right:0}.m-table__title{margin:0;font-size:1.25rem;font-weight:800;color:var(--m-text);letter-spacing:-.02em;flex:1}.m-table__search{flex:0 1 auto;display:flex;align-items:center}.m-table__search .m-input-wrapper{width:100%}.m-table__mobile-view{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;flex:1;overflow:auto}.m-table__empty-mobile{padding:3rem 1.5rem;text-align:center;color:var(--m-text-tertiary);font-size:.9375rem;font-weight:500;font-style:italic;opacity:.8;background:color-mix(in srgb,var(--m-background) 20%,transparent);border-radius:12px;border:1px dashed var(--m-backdrop-border)}.m-table__wrapper{overflow:auto;flex:1}.m-table__wrapper::-webkit-scrollbar{width:6px;height:6px}.m-table__wrapper::-webkit-scrollbar-track{background:transparent}.m-table__wrapper::-webkit-scrollbar-thumb{background:var(--m-backdrop-border);border-radius:10px}.m-table__wrapper::-webkit-scrollbar-thumb:hover{background:var(--m-text-tertiary)}.m-table__table{width:100%;min-width:100%;border-collapse:separate;border-spacing:0}mark.m-table__highlight{background:var(--m-highlight);color:#000;border-radius:2px;padding:0 2px;font-weight:700;box-shadow:0 1px 4px #0003}mark.m-table__highlight .m-one-pagination{margin-left:auto;--m-button-size: 2.25rem;--m-pagination-gap: .375rem}.m-table-pagination{display:flex;align-items:center;gap:1.5rem;padding:1.25rem var(--m-table-pagination-padding-x, 1.25rem);border-top:1px solid var(--m-backdrop-border);font-size:.8125rem;flex-wrap:wrap;background:color-mix(in srgb,var(--m-background) 40%,transparent)}.m-table--flat .m-table-pagination{background:transparent;padding-left:0;padding-right:0}.m-table-pagination__size{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;color:var(--m-text-secondary);font-weight:500}.m-table-pagination__select{border:1px solid var(--m-backdrop-border);border-radius:8px;background:var(--m-backdrop-surface);color:var(--m-text);padding:.375rem .625rem;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none}.m-table-pagination__select:hover{background:var(--m-backdrop-glass);border-color:var(--m-mm);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-mm) 10%,transparent)}.m-table-pagination__select:focus{border-color:var(--m-mm);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-mm) 20%,transparent)}.m-table-filter{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:1rem 1.25rem;background:color-mix(in srgb,var(--m-background-lite) 60%,transparent);border-bottom:1px solid var(--m-backdrop-border);box-shadow:inset 0 2px 4px #00000005;overflow-x:auto;scrollbar-width:none}.m-table-filter::-webkit-scrollbar{display:none}.m-table--flat .m-table-filter{background:transparent;padding-left:0;padding-right:0;border-bottom:none}.m-table-filter__item{display:flex;align-items:center;gap:10px;padding:.4375rem 1rem;border-radius:12px;background:var(--m-background);border:1px solid var(--m-backdrop-border);color:var(--m-text-secondary);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;-webkit-user-select:none;user-select:none;outline:none;font-weight:500}.m-table-filter__item:hover{border-color:var(--m-mm);color:var(--m-mm);background:var(--m-background);transform:translateY(-1px);box-shadow:0 4px 12px #0000000d}.m-table-filter__item--active{background:var(--m-mm);border-color:var(--m-mm);color:var(--m-inverse-text);font-weight:600;box-shadow:0 8px 16px color-mix(in srgb,var(--m-mm) 25%,transparent)}.m-table-filter__item--active:hover{background:var(--m-mm);border-color:var(--m-mm);color:var(--m-inverse-text);transform:translateY(-1px)}.m-table-filter__item--active .m-table-filter__badge{background:#fff3;color:var(--m-inverse-text);border-color:#ffffff1a}.m-table-filter__item--primary{background:var(--m-mm);border-color:var(--m-mm);color:var(--m-inverse-text);font-weight:600;box-shadow:0 8px 16px color-mix(in srgb,var(--m-mm) 25%,transparent)}.m-table-filter__item--primary:hover{background:var(--m-mm);border-color:var(--m-mm);color:var(--m-inverse-text);transform:translateY(-1px);box-shadow:0 10px 20px color-mix(in srgb,var(--m-mm) 30%,transparent)}.m-table-filter__item--primary .m-table-filter__badge{background:#fff3;color:var(--m-inverse-text);border-color:#ffffff1a}.m-table-filter__item--danger{border-color:var(--m-error);color:var(--m-error)}.m-table-filter__item--danger:hover{border-color:var(--m-error);color:var(--m-error);background:var(--m-backdrop-error);transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--m-error) 12%,transparent)}.m-table-filter__item--danger .m-table-filter__badge{background:var(--m-backdrop-error);color:var(--m-error);border-color:color-mix(in srgb,var(--m-error) 20%,transparent)}.m-table-filter__label{font-size:.8125rem;font-weight:600;letter-spacing:.01em}.m-table-filter__badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .375rem;border-radius:100px;background:var(--m-backdrop-surface);color:var(--m-text-secondary);font-size:.6875rem;font-weight:700;border:1px solid var(--m-backdrop-border);transition:all .2s ease}.m-table-thead__th{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--m-background) 95%,transparent);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);padding:1.25rem;text-align:left;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--m-text-tertiary);border-bottom:2px solid var(--m-backdrop-border);white-space:nowrap;transition:all .2s ease}.m-table-thead__th:hover{color:var(--m-text);background:var(--m-background)}@media(min-width:769px){.m-table-thead__th--fixed{z-index:20;background:var(--m-background)}}@media(max-width:768px){.m-table-thead__th--fixed{position:static;z-index:auto}}.m-table-thead__th--fixed{border-right:none}@media(min-width:769px){.m-table-thead__th--fixed-last{border-right:1px solid var(--m-backdrop-border)}}@media(max-width:768px){.m-table-thead__th--fixed-last{border-right:none}}.m-table-thead__th--sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.m-table-thead__th--select{width:48px;min-width:48px;max-width:48px;padding:0 1rem;text-align:center}.m-table-thead__th--select input[type=checkbox]{width:1rem;height:1rem;cursor:pointer;accent-color:var(--m-mm);border-radius:3px;display:block;margin:0 auto}.m-table-thead__cell{display:flex;align-items:center;gap:.5rem}.m-table-thead__sort-icon{color:var(--m-mm);opacity:.6;transition:opacity .2s ease}.m-table-thead__th:hover .m-table-thead__sort-icon{opacity:1}.m-table-thead__menu-btn{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;margin-left:auto;border:none;background:transparent;cursor:pointer;color:var(--m-text-tertiary);border-radius:6px;opacity:0;transition:all .15ms ease}.m-table-thead__menu-btn:hover{background:var(--m-backdrop-surface);color:var(--m-text)}.m-table-thead__th:hover .m-table-thead__menu-btn{opacity:1}.m-table-body__row{transition:background-color .3s cubic-bezier(.4,0,.2,1);position:relative}.m-table-body__row:hover{background:color-mix(in srgb,var(--m-mm) 5%,transparent)}.m-table-body__row:hover .m-table-body__cell{background:inherit}.m-table-body__cell{padding:1rem 1.25rem;font-size:.875rem;color:var(--m-text);border-bottom:1px solid var(--m-backdrop-border);white-space:nowrap;vertical-align:middle;background:transparent;transition:background-color .3s ease}.m-table-body__cell[class*=--number],.m-table-body__cell[class*=--currency],.m-table-body__cell[class*=--percent]{font-family:Inter,Roboto Mono,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.01em}@media(min-width:769px){.m-table-body__cell--fixed{position:sticky;background:var(--m-background);z-index:5}}@media(max-width:768px){.m-table-body__cell--fixed{position:static;background:transparent;z-index:auto}}.m-table-body__cell--fixed{border-right:none;transition:background-color .3s ease}.m-table-body__row:hover .m-table-body__cell--fixed{background:color-mix(in srgb,var(--m-mm) 5%,var(--m-background));z-index:6}@media(min-width:769px){.m-table-body__cell--fixed-last{border-right:1px solid var(--m-backdrop-border)}}@media(max-width:768px){.m-table-body__cell--fixed-last{border-right:none}}.m-table-body__cell--context-menu{padding-top:.35rem;padding-bottom:.35rem}.m-table-body__cell--select{width:48px;min-width:48px;max-width:48px;padding:0 1rem;text-align:center}.m-table-body__cell--select input[type=checkbox],.m-table-body__cell--select input[type=radio]{width:1rem;height:1rem;cursor:pointer;accent-color:var(--m-mm);display:block;margin:0 auto}.m-table-body__input{border:none;border-bottom:2px solid var(--m-backdrop-border);background:transparent;font-size:.875rem;color:var(--m-text);padding:.25rem;outline:none;width:100%;transition:border-bottom-color .2s ease}.m-table-body__input:focus{border-bottom-color:var(--m-mm)}.m-table-body__action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;background:transparent;cursor:pointer;color:var(--m-text-tertiary);border-radius:8px;transition:all .2s ease}.m-table-body__action-btn:hover{background:var(--m-backdrop-surface);color:var(--m-text)}.m-table-body__empty{text-align:center;padding:4rem;color:var(--m-text-tertiary);font-size:1rem;font-weight:500;letter-spacing:.02em;font-style:italic;opacity:.7}.m-table-body__link{color:var(--m-mm);text-decoration:none;cursor:pointer;font-weight:600;transition:color .2s ease}.m-table-body__link:hover{text-decoration:underline;color:var(--m-mm-lite)}.m-table-body__value{padding:.25rem .5rem;border-radius:6px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.m-table-body__value--positive{color:var(--m-success);background:var(--m-backdrop-success)}.m-table-body__value--negative{color:var(--m-error);background:var(--m-backdrop-error)}.m-table-body__dash{color:var(--m-text-tertiary);font-weight:400;font-style:italic;opacity:.8}.m-tree-grid{--m-tree-grid-icon: .75rem}.m-tree-grid .m-table-thead__th,.m-tree-grid .m-table-body__cell{padding:.375rem .5rem}.m-tree-grid .m-table-thead__th{font-size:.6875rem;letter-spacing:.06em;border-bottom-width:1px}.m-tree-grid__tree-cell{display:flex;align-items:center;gap:0;min-width:0}.m-tree-grid__indent{flex:0 0 auto;width:calc(var(--m-tree-grid-depth, 0) * var(--m-tree-grid-indent, var(--m-tree-grid-icon)))}.m-tree-grid__toggle{flex:0 0 auto;width:var(--m-tree-grid-icon);height:var(--m-tree-grid-icon);display:inline-flex;align-items:center;justify-content:center}.m-tree-grid__toggle m-button{--m-button-size: .333rem}.m-tree-grid__toggle-spacer{width:var(--m-tree-grid-icon);height:var(--m-tree-grid-icon);flex:0 0 auto}.m-tree-grid__lead-icon{flex:0 0 auto;display:inline-flex;align-items:center;margin-left:.125rem;opacity:.75}.m-tree-grid__lead-icon m-icon{--m-icon-size: .75rem}.m-tree-grid__label{min-width:0;margin-left:.25rem;overflow:hidden;text-overflow:ellipsis;font-size:.875em;line-height:1.25}.m-tree-grid .m-table-body__row{cursor:pointer}.m-tree-grid .m-table-body__row--selected{background:color-mix(in srgb,var(--m-mm) 12%,transparent)}.m-tree-grid .m-table__toolbar{padding:.5rem;background:var(--m-background)}.m-tree-grid .m-table__search{flex:1 1 auto;width:100%}.m-tree-grid .m-table__search m-input-wrapper,.m-tree-grid .m-table__search .m-input-wrapper{width:100%}.m-tree-grid__match{background:var(--m-highlight);padding:0;color:inherit;border-radius:2px}\n"], dependencies: [{ kind: "component", type: TableHeaderComponent, selector: "m-table-header", inputs: ["visibleColumns", "fixedCount", "fixedOffset", "sortState", "selectable", "allSelected", "someSelected"], outputs: ["sortClick", "selectAll"] }, { kind: "component", type: FreezeComponent, selector: "m-freeze", inputs: ["config"] }, { kind: "component", type: ButtonComponent, selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }, { kind: "component", type: HeaderComponent$1, selector: "m-header", inputs: ["level", "label", "actionButton", "actionLabel", "noTranslate", "params"], outputs: ["actionClick"] }, { kind: "component", type: IconComponent, selector: "m-icon, m-one-icon", inputs: ["config", "name", "color", "size", "one", "baseUrl", "remote"], outputs: ["configChange"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted", "options"], outputs: ["toggleChange", "action"] }, { kind: "component", type: WrapperInputComponent, selector: "m-input-wrapper", inputs: ["remote", "value", "readonly", "state", "focused", "form", "options", "dir", "element", "data", "template", "placeholder", "aclResolver", "formValues"], outputs: ["valueChange", "stateChange", "act", "fieldKey", "fieldType"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
27159
27251
  }
27160
27252
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: TreeGridComponent, decorators: [{
27161
27253
  type: Component,
@@ -28877,11 +28969,149 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
28877
28969
  read: ViewContainerRef,
28878
28970
  }, isSignal: true }] }] } });
28879
28971
 
28972
+ /**
28973
+ * Dynamically creates a custom element (web component) by tag name.
28974
+ * Used for cross-bundle rendering where NgComponentOutlet would fail
28975
+ * due to incompatible Angular instances.
28976
+ */
28977
+ class CeOutletComponent {
28978
+ tag = input.required(...(ngDevMode ? [{ debugName: "tag" }] : /* istanbul ignore next */ []));
28979
+ el = inject(ElementRef);
28980
+ child;
28981
+ constructor() {
28982
+ effect(() => {
28983
+ this.child?.remove();
28984
+ this.child = undefined;
28985
+ const tag = this.tag();
28986
+ if (tag) {
28987
+ this.child = document.createElement(tag);
28988
+ this.el.nativeElement.appendChild(this.child);
28989
+ }
28990
+ });
28991
+ }
28992
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: CeOutletComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28993
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.9", type: CeOutletComponent, isStandalone: true, selector: "m-ce-outlet", inputs: { tag: { classPropertyName: "tag", publicName: "tag", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
28994
+ }
28995
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: CeOutletComponent, decorators: [{
28996
+ type: Component,
28997
+ args: [{
28998
+ selector: 'm-ce-outlet',
28999
+ template: '',
29000
+ changeDetection: ChangeDetectionStrategy.OnPush,
29001
+ }]
29002
+ }], ctorParameters: () => [], propDecorators: { tag: [{ type: i0.Input, args: [{ isSignal: true, alias: "tag", required: true }] }] } });
29003
+
29004
+ const OVERLAY_WIDGETS = new InjectionToken('OVERLAY_WIDGETS');
29005
+ const provideOverlayWidgets = (map) => ({
29006
+ provide: OVERLAY_WIDGETS,
29007
+ useValue: map,
29008
+ });
29009
+
29010
+ /**
29011
+ * Turns an overlay's named content — a form asset name, a widget loader or a
29012
+ * custom-element tag — into rendered content. Presentational only, no business
29013
+ * logic.
29014
+ *
29015
+ * Two ways to name a widget, because two callers name one differently. A
29016
+ * generated Screen carries a `() => import(...)`: it knows the class it means
29017
+ * and says so where it is used, so the chunk is the bundler's to split. A
29018
+ * hand-written config carries a tag, which is resolved through `OVERLAY_WIDGETS`
29019
+ * and defined on first open — the older spelling, and the only one available to
29020
+ * a config that cannot hold a function, such as a YAML asset.
29021
+ */
29022
+ class OverlayBodyComponent {
29023
+ form = input(...(ngDevMode ? [undefined, { debugName: "form" }] : /* istanbul ignore next */ []));
29024
+ tag = input(...(ngDevMode ? [undefined, { debugName: "tag" }] : /* istanbul ignore next */ []));
29025
+ widget = input(...(ngDevMode ? [undefined, { debugName: "widget" }] : /* istanbul ignore next */ []));
29026
+ /**
29027
+ * What the rendered widget's own inputs are handed — the Screen's contract
29028
+ * filled by whoever opened the overlay (`ModalStore.openScreen`).
29029
+ *
29030
+ * The loader path alone: `ngComponentOutlet` sets inputs on a class it
29031
+ * instantiated, where a custom element resolved by tag is rendered by
29032
+ * `m-ce-outlet` and takes its values from its own asset. An empty record is
29033
+ * the widget's own defaults, which is every overlay drawn before this input
29034
+ * existed.
29035
+ */
29036
+ inputs = input({}, ...(ngDevMode ? [{ debugName: "inputs" }] : /* istanbul ignore next */ []));
29037
+ injector = inject(Injector);
29038
+ widgets = inject(OVERLAY_WIDGETS, { optional: true });
29039
+ // Held rather than derived: whether a tag can render is the answer to an
29040
+ // async question, and rendering the element before that answer arrives is
29041
+ // how an unknown element ends up in the DOM.
29042
+ ready = signal('', ...(ngDevMode ? [{ debugName: "ready" }] : /* istanbul ignore next */ []));
29043
+ // The same question for a loader, and the same answer: the class exists only
29044
+ // once its chunk has arrived, and `ngComponentOutlet` takes a class.
29045
+ loaded = signal(null, ...(ngDevMode ? [{ debugName: "loaded" }] : /* istanbul ignore next */ []));
29046
+ readyTag = computed(() => this.ready() === this.tag() ? this.ready() : '', ...(ngDevMode ? [{ debugName: "readyTag" }] : /* istanbul ignore next */ []));
29047
+ constructor() {
29048
+ effect(() => {
29049
+ const tag = this.tag() ?? '';
29050
+ this.ready.set('');
29051
+ if (!tag)
29052
+ return;
29053
+ defineOverlayWidget(tag, this.widgets, this.injector).then((ok) => {
29054
+ // A tag the User changed while the chunk was loading is not this
29055
+ // effect's to render any more.
29056
+ if (ok && this.tag() === tag)
29057
+ this.ready.set(tag);
29058
+ });
29059
+ });
29060
+ effect(() => {
29061
+ const load = this.widget();
29062
+ this.loaded.set(null);
29063
+ if (!load)
29064
+ return;
29065
+ load().then((widget) => {
29066
+ if (this.widget() === load)
29067
+ this.loaded.set(widget);
29068
+ });
29069
+ });
29070
+ }
29071
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: OverlayBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29072
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: OverlayBodyComponent, isStandalone: true, selector: "m-overlay-body", inputs: { form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: false, transformFunction: null }, tag: { classPropertyName: "tag", publicName: "tag", isSignal: true, isRequired: false, transformFunction: null }, widget: { classPropertyName: "widget", publicName: "widget", isSignal: true, isRequired: false, transformFunction: null }, inputs: { classPropertyName: "inputs", publicName: "inputs", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
29073
+ @if (form(); as f) {
29074
+ <m-form [name]="f" />
29075
+ } @else if (loaded(); as widget) {
29076
+ <ng-container
29077
+ [ngComponentOutlet]="widget"
29078
+ [ngComponentOutletInputs]="inputs()"
29079
+ />
29080
+ } @else if (readyTag(); as t) {
29081
+ <m-ce-outlet [tag]="t" />
29082
+ }
29083
+ `, isInline: true, dependencies: [{ kind: "component", type: FormGroupComponent, selector: "m-form, m-one-form", inputs: ["data", "state", "validation", "options", "fieldConfigs", "aclResolver", "autofocus", "readonly", "fieldRenderIds", "elements", "templates", "datas", "label", "subtitle"], outputs: ["dataChange", "act", "stateChange"] }, { kind: "component", type: CeOutletComponent, selector: "m-ce-outlet", inputs: ["tag"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule"], exportAs: ["ngComponentOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
29084
+ }
29085
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: OverlayBodyComponent, decorators: [{
29086
+ type: Component,
29087
+ args: [{
29088
+ selector: 'm-overlay-body',
29089
+ template: `
29090
+ @if (form(); as f) {
29091
+ <m-form [name]="f" />
29092
+ } @else if (loaded(); as widget) {
29093
+ <ng-container
29094
+ [ngComponentOutlet]="widget"
29095
+ [ngComponentOutletInputs]="inputs()"
29096
+ />
29097
+ } @else if (readyTag(); as t) {
29098
+ <m-ce-outlet [tag]="t" />
29099
+ }
29100
+ `,
29101
+ changeDetection: ChangeDetectionStrategy.OnPush,
29102
+ imports: [FormGroupComponent, CeOutletComponent, NgComponentOutlet],
29103
+ }]
29104
+ }], ctorParameters: () => [], propDecorators: { form: [{ type: i0.Input, args: [{ isSignal: true, alias: "form", required: false }] }], tag: [{ type: i0.Input, args: [{ isSignal: true, alias: "tag", required: false }] }], widget: [{ type: i0.Input, args: [{ isSignal: true, alias: "widget", required: false }] }], inputs: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputs", required: false }] }] } });
29105
+
28880
29106
  function provideModalComponents() {
28881
29107
  return makeEnvironmentProviders([
28882
29108
  { provide: MODAL_COMPONENT, useValue: ModalComponent },
28883
29109
  { provide: PANEL_COMPONENT, useValue: PanelComponent },
28884
29110
  { provide: CONFIRM_COMPONENT, useValue: ConfirmComponent },
29111
+ {
29112
+ provide: OVERLAY_BODY_COMPONENT,
29113
+ useValue: OverlayBodyComponent,
29114
+ },
28885
29115
  ]);
28886
29116
  }
28887
29117
 
@@ -28995,123 +29225,6 @@ deps) {
28995
29225
  return [widgetProvider, ...provideSearch()];
28996
29226
  }
28997
29227
 
28998
- /**
28999
- * Dynamically creates a custom element (web component) by tag name.
29000
- * Used for cross-bundle rendering where NgComponentOutlet would fail
29001
- * due to incompatible Angular instances.
29002
- */
29003
- class CeOutletComponent {
29004
- tag = input.required(...(ngDevMode ? [{ debugName: "tag" }] : /* istanbul ignore next */ []));
29005
- el = inject(ElementRef);
29006
- child;
29007
- constructor() {
29008
- effect(() => {
29009
- this.child?.remove();
29010
- this.child = undefined;
29011
- const tag = this.tag();
29012
- if (tag) {
29013
- this.child = document.createElement(tag);
29014
- this.el.nativeElement.appendChild(this.child);
29015
- }
29016
- });
29017
- }
29018
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: CeOutletComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29019
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.9", type: CeOutletComponent, isStandalone: true, selector: "m-ce-outlet", inputs: { tag: { classPropertyName: "tag", publicName: "tag", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
29020
- }
29021
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: CeOutletComponent, decorators: [{
29022
- type: Component,
29023
- args: [{
29024
- selector: 'm-ce-outlet',
29025
- template: '',
29026
- changeDetection: ChangeDetectionStrategy.OnPush,
29027
- }]
29028
- }], ctorParameters: () => [], propDecorators: { tag: [{ type: i0.Input, args: [{ isSignal: true, alias: "tag", required: true }] }] } });
29029
-
29030
- const OVERLAY_WIDGETS = new InjectionToken('OVERLAY_WIDGETS');
29031
- const provideOverlayWidgets = (map) => ({
29032
- provide: OVERLAY_WIDGETS,
29033
- useValue: map,
29034
- });
29035
-
29036
- /**
29037
- * Turns an overlay's named content — a form asset name, a widget loader or a
29038
- * custom-element tag — into rendered content. Presentational only, no business
29039
- * logic.
29040
- *
29041
- * Two ways to name a widget, because two callers name one differently. A
29042
- * generated Screen carries a `() => import(...)`: it knows the class it means
29043
- * and says so where it is used, so the chunk is the bundler's to split. A
29044
- * hand-written config carries a tag, which is resolved through `OVERLAY_WIDGETS`
29045
- * and defined on first open — the older spelling, and the only one available to
29046
- * a config that cannot hold a function, such as a YAML asset.
29047
- */
29048
- class OverlayBodyComponent {
29049
- form = input(...(ngDevMode ? [undefined, { debugName: "form" }] : /* istanbul ignore next */ []));
29050
- tag = input(...(ngDevMode ? [undefined, { debugName: "tag" }] : /* istanbul ignore next */ []));
29051
- widget = input(...(ngDevMode ? [undefined, { debugName: "widget" }] : /* istanbul ignore next */ []));
29052
- injector = inject(Injector);
29053
- widgets = inject(OVERLAY_WIDGETS, { optional: true });
29054
- // Held rather than derived: whether a tag can render is the answer to an
29055
- // async question, and rendering the element before that answer arrives is
29056
- // how an unknown element ends up in the DOM.
29057
- ready = signal('', ...(ngDevMode ? [{ debugName: "ready" }] : /* istanbul ignore next */ []));
29058
- // The same question for a loader, and the same answer: the class exists only
29059
- // once its chunk has arrived, and `ngComponentOutlet` takes a class.
29060
- loaded = signal(null, ...(ngDevMode ? [{ debugName: "loaded" }] : /* istanbul ignore next */ []));
29061
- readyTag = computed(() => this.ready() === this.tag() ? this.ready() : '', ...(ngDevMode ? [{ debugName: "readyTag" }] : /* istanbul ignore next */ []));
29062
- constructor() {
29063
- effect(() => {
29064
- const tag = this.tag() ?? '';
29065
- this.ready.set('');
29066
- if (!tag)
29067
- return;
29068
- defineOverlayWidget(tag, this.widgets, this.injector).then((ok) => {
29069
- // A tag the User changed while the chunk was loading is not this
29070
- // effect's to render any more.
29071
- if (ok && this.tag() === tag)
29072
- this.ready.set(tag);
29073
- });
29074
- });
29075
- effect(() => {
29076
- const load = this.widget();
29077
- this.loaded.set(null);
29078
- if (!load)
29079
- return;
29080
- load().then((widget) => {
29081
- if (this.widget() === load)
29082
- this.loaded.set(widget);
29083
- });
29084
- });
29085
- }
29086
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: OverlayBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29087
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: OverlayBodyComponent, isStandalone: true, selector: "m-overlay-body", inputs: { form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: false, transformFunction: null }, tag: { classPropertyName: "tag", publicName: "tag", isSignal: true, isRequired: false, transformFunction: null }, widget: { classPropertyName: "widget", publicName: "widget", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
29088
- @if (form(); as f) {
29089
- <m-form [name]="f" />
29090
- } @else if (loaded(); as widget) {
29091
- <ng-container [ngComponentOutlet]="widget" />
29092
- } @else if (readyTag(); as t) {
29093
- <m-ce-outlet [tag]="t" />
29094
- }
29095
- `, isInline: true, dependencies: [{ kind: "component", type: FormGroupComponent, selector: "m-form, m-one-form", inputs: ["data", "state", "validation", "options", "fieldConfigs", "aclResolver", "autofocus", "readonly", "fieldRenderIds", "elements", "templates", "datas", "label", "subtitle"], outputs: ["dataChange", "act", "stateChange"] }, { kind: "component", type: CeOutletComponent, selector: "m-ce-outlet", inputs: ["tag"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule"], exportAs: ["ngComponentOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
29096
- }
29097
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: OverlayBodyComponent, decorators: [{
29098
- type: Component,
29099
- args: [{
29100
- selector: 'm-overlay-body',
29101
- template: `
29102
- @if (form(); as f) {
29103
- <m-form [name]="f" />
29104
- } @else if (loaded(); as widget) {
29105
- <ng-container [ngComponentOutlet]="widget" />
29106
- } @else if (readyTag(); as t) {
29107
- <m-ce-outlet [tag]="t" />
29108
- }
29109
- `,
29110
- changeDetection: ChangeDetectionStrategy.OnPush,
29111
- imports: [FormGroupComponent, CeOutletComponent, NgComponentOutlet],
29112
- }]
29113
- }], ctorParameters: () => [], propDecorators: { form: [{ type: i0.Input, args: [{ isSignal: true, alias: "form", required: false }] }], tag: [{ type: i0.Input, args: [{ isSignal: true, alias: "tag", required: false }] }], widget: [{ type: i0.Input, args: [{ isSignal: true, alias: "widget", required: false }] }] } });
29114
-
29115
29228
  /** Opens a Modal from an asset name (`modal/<name>.yml`) or an inline config. */
29116
29229
  class ModalDirective {
29117
29230
  mModal = input(...(ngDevMode ? [undefined, { debugName: "mModal" }] : /* istanbul ignore next */ []));
@@ -30988,7 +31101,7 @@ class UserNavComponent {
30988
31101
  this.activeTabId.set(tab.name);
30989
31102
  };
30990
31103
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: UserNavComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
30991
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: UserNavComponent, isStandalone: true, selector: "m-user-nav", ngImport: i0, template: "<m-section maxHeight=\"full\">\n @if (currentUser(); as user) {\n <m-row>\n <m-col [sm]=\"11\" [padding]=\"true\">\n <m-user [id]=\"user.id\" [user]=\"user\" mRef=\"root_user\">\n <span class=\"user-nav__username\">&#64;{{ user.username }}</span>\n </m-user>\n </m-col>\n <m-col [sm]=\"1\">\n <m-context-menu name=\"user_header\" [config]=\"{ one: true }\" (action)=\"onUserMenuAction($event)\" />\n </m-col>\n </m-row>\n }\n <m-col>\n @if (activeTabEntry(); as entry) {\n @if (entry.ceSelector) {\n <m-ce-outlet [tag]=\"entry.ceSelector\" />\n } @else if (entry.component) {\n <ng-container [ngComponentOutlet]=\"entry.component\" />\n } @else {\n <m-nothing icon=\"clock\" title=\"soon-available\" />\n }\n }\n </m-col>\n</m-section>\n", 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)}}.user-nav__username{font-size:.6875rem;font-weight:600;color:var(--m-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.profile-dashboard{display:flex;flex-direction:column;width:100%;margin:0 auto;overflow:visible;box-sizing:border-box;background:var(--m-background-lite)}.profile-banner{position:relative;height:160px;width:100%;overflow:hidden;background:linear-gradient(135deg,var(--m-mm-dark) 0%,color-mix(in oklch,var(--m-mm-dark),#000 20%) 100%);transition:all .5s cubic-bezier(.16,1,.3,1);cursor:pointer}.profile-banner:hover .profile-banner__blob--1{transform:translate(15%,10%) scale(1.1)}.profile-banner:hover .profile-banner__blob--2{transform:translate(-15%,-10%) scale(1.1)}.profile-banner:hover .profile-banner__blob--3{transform:translate(10%,-15%) scale(1.1)}.profile-banner__animate{position:absolute;inset:0;overflow:hidden;opacity:.85}.profile-banner__blob{position:absolute;border-radius:50%;filter:blur(50px);will-change:transform;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}.profile-banner__blob--1{width:240px;height:240px;background:radial-gradient(circle,color-mix(in oklch,var(--m-mm) 85%,transparent) 0%,transparent 70%);top:-85px;left:-40px;animation:float-1 14s infinite alternate ease-in-out}.profile-banner__blob--2{width:200px;height:200px;background:radial-gradient(circle,color-mix(in oklch,#e65c00 75%,transparent) 0%,transparent 70%);bottom:-65px;right:-30px;animation:float-2 18s infinite alternate ease-in-out}.profile-banner__blob--3{width:160px;height:160px;background:radial-gradient(circle,color-mix(in oklch,#ffcc00 65%,transparent) 0%,transparent 70%);top:15px;left:35%;animation:float-3 12s infinite alternate ease-in-out}.profile-banner__overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#00000003,#00000014);-webkit-backdrop-filter:saturate(1.3);backdrop-filter:saturate(1.3)}@keyframes float-1{0%{transform:translate(-10%,-10%) scale(1)}50%{transform:translate(20%,12%) scale(1.1)}to{transform:translate(-5%,15%) scale(.95)}}@keyframes float-2{0%{transform:translate(20%,12%) scale(1.05)}50%{transform:translate(-12%,-12%) scale(.92)}to{transform:translate(12%,5%) scale(1.1)}}@keyframes float-3{0%{transform:translate(8%,20%) scale(.92)}50%{transform:translate(25%,-8%) scale(1.08)}to{transform:translate(5%,12%) scale(1)}}.profile-container{display:flex;flex-direction:column;padding:0 1.5rem 2rem;box-sizing:border-box;width:100%;max-width:1200px;margin:0 auto}.profile-nav-card{background:transparent;border:none;overflow:hidden;box-sizing:border-box;width:100%;transition:all .3s cubic-bezier(.16,1,.3,1);margin-left:-1.75rem;margin-right:-1.75rem;width:calc(100% + 3.5rem)}.profile-nav-card.is-sticky{position:sticky;top:-1px;z-index:100;background:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--m-backdrop-border);box-shadow:0 4px 20px #0000000a;transition:all .3s cubic-bezier(.16,1,.3,1);animation:slide-down-fade .28s cubic-bezier(.16,1,.3,1)}.profile-content{display:flex;flex-direction:column;gap:1rem;box-sizing:border-box;margin-left:-1.75rem;margin-right:-1.75rem;width:calc(100% + 3.5rem)}.soon-card{background:#ffffff8c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--m-backdrop-border);border-radius:20px;padding:4.5rem 2rem;text-align:center;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px #00000004;box-sizing:border-box;width:100%}.soon-text{font-size:.875rem;color:var(--m-text-secondary);font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg,var(--m-mm),var(--m-mm-lite));-webkit-background-clip:text;-webkit-text-fill-color:transparent}@keyframes slide-down-fade{0%{transform:translateY(-10px);opacity:.75}to{transform:translateY(0);opacity:1}}\n"], dependencies: [{ kind: "component", type: SectionComponent, selector: "m-section", inputs: ["variant", "maxWidth", "heightMode", "maxHeight", "height", "align", "alignX", "alignY", "size"], outputs: ["inView"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule"], exportAs: ["ngComponentOutlet"] }, { kind: "component", type: CeOutletComponent, selector: "m-ce-outlet", inputs: ["tag"] }, { kind: "component", type: NothingComponent, selector: "m-nothing", inputs: ["icon", "title", "description", "buttonName", "button"], outputs: ["actionClick"] }, { kind: "component", type: ColComponent, selector: "m-col", inputs: ["xs", "sm", "md", "lg", "xl", "xxl", "fullWidth", "fullHeight", "padding", "paddingX", "paddingY", "alignX", "alignY"] }, { kind: "component", type: RowComponent, selector: "m-row", inputs: ["padding", "paddingX", "paddingY", "maxWidth", "center"] }, { kind: "component", type: UserComponent, selector: "m-user", inputs: ["id", "user", "firstName", "lastName", "profilePic"] }, { kind: "directive", type: MRefDirective, selector: "[mRef]", inputs: ["mRef", "mRefLinkActive", "mRefToggle", "mRefParams"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted"], outputs: ["toggleChange", "action"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
31104
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: UserNavComponent, isStandalone: true, selector: "m-user-nav", ngImport: i0, template: "<m-section maxHeight=\"full\">\n @if (currentUser(); as user) {\n <m-row>\n <m-col [sm]=\"11\" [padding]=\"true\">\n <m-user [id]=\"user.id\" [user]=\"user\" mRef=\"root_user\">\n <span class=\"user-nav__username\">&#64;{{ user.username }}</span>\n </m-user>\n </m-col>\n <m-col [sm]=\"1\">\n <m-context-menu name=\"user_header\" [config]=\"{ one: true }\" (action)=\"onUserMenuAction($event)\" />\n </m-col>\n </m-row>\n }\n <m-col>\n @if (activeTabEntry(); as entry) {\n @if (entry.ceSelector) {\n <m-ce-outlet [tag]=\"entry.ceSelector\" />\n } @else if (entry.component) {\n <ng-container [ngComponentOutlet]=\"entry.component\" />\n } @else {\n <m-nothing icon=\"clock\" title=\"soon-available\" />\n }\n }\n </m-col>\n</m-section>\n", 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)}}.user-nav__username{font-size:.6875rem;font-weight:600;color:var(--m-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.profile-dashboard{display:flex;flex-direction:column;width:100%;margin:0 auto;overflow:visible;box-sizing:border-box;background:var(--m-background-lite)}.profile-banner{position:relative;height:160px;width:100%;overflow:hidden;background:linear-gradient(135deg,var(--m-mm-dark) 0%,color-mix(in oklch,var(--m-mm-dark),#000 20%) 100%);transition:all .5s cubic-bezier(.16,1,.3,1);cursor:pointer}.profile-banner:hover .profile-banner__blob--1{transform:translate(15%,10%) scale(1.1)}.profile-banner:hover .profile-banner__blob--2{transform:translate(-15%,-10%) scale(1.1)}.profile-banner:hover .profile-banner__blob--3{transform:translate(10%,-15%) scale(1.1)}.profile-banner__animate{position:absolute;inset:0;overflow:hidden;opacity:.85}.profile-banner__blob{position:absolute;border-radius:50%;filter:blur(50px);will-change:transform;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}.profile-banner__blob--1{width:240px;height:240px;background:radial-gradient(circle,color-mix(in oklch,var(--m-mm) 85%,transparent) 0%,transparent 70%);top:-85px;left:-40px;animation:float-1 14s infinite alternate ease-in-out}.profile-banner__blob--2{width:200px;height:200px;background:radial-gradient(circle,color-mix(in oklch,#e65c00 75%,transparent) 0%,transparent 70%);bottom:-65px;right:-30px;animation:float-2 18s infinite alternate ease-in-out}.profile-banner__blob--3{width:160px;height:160px;background:radial-gradient(circle,color-mix(in oklch,#ffcc00 65%,transparent) 0%,transparent 70%);top:15px;left:35%;animation:float-3 12s infinite alternate ease-in-out}.profile-banner__overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#00000003,#00000014);-webkit-backdrop-filter:saturate(1.3);backdrop-filter:saturate(1.3)}@keyframes float-1{0%{transform:translate(-10%,-10%) scale(1)}50%{transform:translate(20%,12%) scale(1.1)}to{transform:translate(-5%,15%) scale(.95)}}@keyframes float-2{0%{transform:translate(20%,12%) scale(1.05)}50%{transform:translate(-12%,-12%) scale(.92)}to{transform:translate(12%,5%) scale(1.1)}}@keyframes float-3{0%{transform:translate(8%,20%) scale(.92)}50%{transform:translate(25%,-8%) scale(1.08)}to{transform:translate(5%,12%) scale(1)}}.profile-container{display:flex;flex-direction:column;padding:0 1.5rem 2rem;box-sizing:border-box;width:100%;max-width:1200px;margin:0 auto}.profile-nav-card{background:transparent;border:none;overflow:hidden;box-sizing:border-box;width:100%;transition:all .3s cubic-bezier(.16,1,.3,1);margin-left:-1.75rem;margin-right:-1.75rem;width:calc(100% + 3.5rem)}.profile-nav-card.is-sticky{position:sticky;top:-1px;z-index:100;background:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--m-backdrop-border);box-shadow:0 4px 20px #0000000a;transition:all .3s cubic-bezier(.16,1,.3,1);animation:slide-down-fade .28s cubic-bezier(.16,1,.3,1)}.profile-content{display:flex;flex-direction:column;gap:1rem;box-sizing:border-box;margin-left:-1.75rem;margin-right:-1.75rem;width:calc(100% + 3.5rem)}.soon-card{background:#ffffff8c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--m-backdrop-border);border-radius:20px;padding:4.5rem 2rem;text-align:center;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px #00000004;box-sizing:border-box;width:100%}.soon-text{font-size:.875rem;color:var(--m-text-secondary);font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg,var(--m-mm),var(--m-mm-lite));-webkit-background-clip:text;-webkit-text-fill-color:transparent}@keyframes slide-down-fade{0%{transform:translateY(-10px);opacity:.75}to{transform:translateY(0);opacity:1}}\n"], dependencies: [{ kind: "component", type: SectionComponent, selector: "m-section", inputs: ["variant", "maxWidth", "heightMode", "maxHeight", "height", "align", "alignX", "alignY", "size"], outputs: ["inView"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule"], exportAs: ["ngComponentOutlet"] }, { kind: "component", type: CeOutletComponent, selector: "m-ce-outlet", inputs: ["tag"] }, { kind: "component", type: NothingComponent, selector: "m-nothing", inputs: ["icon", "title", "description", "buttonName", "button"], outputs: ["actionClick"] }, { kind: "component", type: ColComponent, selector: "m-col", inputs: ["xs", "sm", "md", "lg", "xl", "xxl", "fullWidth", "fullHeight", "padding", "paddingX", "paddingY", "alignX", "alignY"] }, { kind: "component", type: RowComponent, selector: "m-row", inputs: ["padding", "paddingX", "paddingY", "maxWidth", "center"] }, { kind: "component", type: UserComponent, selector: "m-user", inputs: ["id", "user", "firstName", "lastName", "profilePic"] }, { kind: "directive", type: MRefDirective, selector: "[mRef]", inputs: ["mRef", "mRefLinkActive", "mRefToggle", "mRefParams"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted", "options"], outputs: ["toggleChange", "action"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
30992
31105
  }
30993
31106
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: UserNavComponent, decorators: [{
30994
31107
  type: Component,
@@ -34520,12 +34633,20 @@ function ingestItems(items) {
34520
34633
  }
34521
34634
  return { commentMap, cursorMap, orderedIds };
34522
34635
  }
34523
- const CommentsStore = signalStore({ providedIn: 'root' }, withState(initialState), withMethods((store, api = inject(CommentsApiService)) => ({
34524
- // ── Load initial comments for a source ──────────────────────────────
34525
- load: rxMethod(pipe(filter((sourceId) => !store.sourceToItemsMap().has(sourceId)), // skip if cached
34526
- tap((sourceId) => patchState(store, (s) => ({
34636
+ const CommentsStore = signalStore({ providedIn: 'root' }, withState(initialState), withMethods((store, api = inject(CommentsApiService)) => {
34637
+ // `load` and `refresh` differ only in whether a cached feed short-circuits
34638
+ // the request — never in what a response does to state, so the fetch itself
34639
+ // lives here once.
34640
+ const markLoading = (sourceId) => patchState(store, (s) => ({
34527
34641
  loadingSources: new Set([...s.loadingSources, sourceId]),
34528
- }))), switchMap$1((sourceId) => api.list(sourceId).pipe(tap(({ items, commentCount }) => {
34642
+ }));
34643
+ const clearLoading = (sourceId) => patchState(store, (s) => ({
34644
+ loadingSources: new Set([...s.loadingSources].filter((id) => id !== sourceId)),
34645
+ }));
34646
+ // Replaces the source's ordered list outright: a comment deleted on the
34647
+ // backend has to leave the feed, and merging could never remove it. Any
34648
+ // cursor the User had expanded collapses back with it.
34649
+ const fetchFeed = (sourceId) => api.list(sourceId).pipe(tap(({ items, commentCount }) => {
34529
34650
  const { commentMap, cursorMap, orderedIds } = ingestItems(items);
34530
34651
  patchState(store, (s) => ({
34531
34652
  commentMap: new Map([...s.commentMap, ...commentMap]),
@@ -34538,181 +34659,192 @@ const CommentsStore = signalStore({ providedIn: 'root' }, withState(initialState
34538
34659
  ...s.sourceToCountMap,
34539
34660
  [sourceId, commentCount],
34540
34661
  ]),
34541
- loadingSources: new Set([...s.loadingSources].filter((id) => id !== sourceId)),
34542
34662
  }));
34663
+ clearLoading(sourceId);
34543
34664
  }), catchError(() => {
34544
- patchState(store, (s) => ({
34545
- loadingSources: new Set([...s.loadingSources].filter((id) => id !== sourceId)),
34546
- }));
34665
+ clearLoading(sourceId);
34547
34666
  return EMPTY;
34548
- }))))),
34549
- // ── Expand cursor: replace token in source list with new items ───────
34550
- expandCursor: rxMethod(pipe(tap(({ token }) => patchState(store, (s) => ({
34551
- expandingCursors: new Set([...s.expandingCursors, token]),
34552
- }))), switchMap$1(({ sourceId, token }) => api.list(sourceId, token).pipe(tap(({ items: newItems, commentCount }) => {
34553
- const { commentMap, cursorMap, orderedIds: newIds, } = ingestItems(newItems);
34554
- patchState(store, (s) => {
34555
- const list = s.sourceToItemsMap.get(sourceId) ?? [];
34556
- const idx = list.indexOf(token);
34557
- const updatedList = idx === -1
34558
- ? list
34559
- : [
34560
- ...list.slice(0, idx),
34561
- ...newIds,
34562
- ...list.slice(idx + 1),
34563
- ];
34564
- // Remove expanded cursor from cursorMap
34565
- const newCursorMap = new Map(s.cursorMap);
34566
- newCursorMap.delete(token);
34567
- return {
34568
- commentMap: new Map([...s.commentMap, ...commentMap]),
34569
- cursorMap: new Map([...newCursorMap, ...cursorMap]),
34570
- sourceToItemsMap: new Map([
34571
- ...s.sourceToItemsMap,
34572
- [sourceId, updatedList],
34573
- ]),
34574
- sourceToCountMap: new Map([
34575
- ...s.sourceToCountMap,
34576
- [sourceId, commentCount],
34577
- ]),
34667
+ }));
34668
+ return {
34669
+ // ── Load initial comments for a source ──────────────────────────────
34670
+ load: rxMethod(pipe(filter((sourceId) => !store.sourceToItemsMap().has(sourceId)), // skip if cached
34671
+ tap(markLoading), switchMap$1(fetchFeed))),
34672
+ // ── Re-read a source's feed, cache or no cache ───────────────────────
34673
+ // The door for anything the backend changed behind our back: another
34674
+ // User's comment, an edit, a delete. `load` can never do this — its cache
34675
+ // guard is what makes a re-render cheap.
34676
+ refresh: rxMethod(pipe(tap(markLoading), switchMap$1(fetchFeed))),
34677
+ // ── Expand cursor: replace token in source list with new items ───────
34678
+ expandCursor: rxMethod(pipe(tap(({ token }) => patchState(store, (s) => ({
34679
+ expandingCursors: new Set([...s.expandingCursors, token]),
34680
+ }))), switchMap$1(({ sourceId, token }) => api.list(sourceId, token).pipe(tap(({ items: newItems, commentCount }) => {
34681
+ const { commentMap, cursorMap, orderedIds: newIds, } = ingestItems(newItems);
34682
+ patchState(store, (s) => {
34683
+ const list = s.sourceToItemsMap.get(sourceId) ?? [];
34684
+ const idx = list.indexOf(token);
34685
+ const updatedList = idx === -1
34686
+ ? list
34687
+ : [
34688
+ ...list.slice(0, idx),
34689
+ ...newIds,
34690
+ ...list.slice(idx + 1),
34691
+ ];
34692
+ // Remove expanded cursor from cursorMap
34693
+ const newCursorMap = new Map(s.cursorMap);
34694
+ newCursorMap.delete(token);
34695
+ return {
34696
+ commentMap: new Map([...s.commentMap, ...commentMap]),
34697
+ cursorMap: new Map([...newCursorMap, ...cursorMap]),
34698
+ sourceToItemsMap: new Map([
34699
+ ...s.sourceToItemsMap,
34700
+ [sourceId, updatedList],
34701
+ ]),
34702
+ sourceToCountMap: new Map([
34703
+ ...s.sourceToCountMap,
34704
+ [sourceId, commentCount],
34705
+ ]),
34706
+ expandingCursors: new Set([...s.expandingCursors].filter((t) => t !== token)),
34707
+ };
34708
+ });
34709
+ }), catchError(() => {
34710
+ patchState(store, (s) => ({
34578
34711
  expandingCursors: new Set([...s.expandingCursors].filter((t) => t !== token)),
34712
+ }));
34713
+ return EMPTY;
34714
+ }))))),
34715
+ // ── Post new comment ─────────────────────────────────────────────────
34716
+ create: rxMethod(pipe(tap(({ sourceId }) => patchState(store, (s) => ({
34717
+ submittingSources: new Set([...s.submittingSources, sourceId]),
34718
+ }))), switchMap$1(({ sourceId, text }) => api.create(sourceId, text).pipe(tap(({ comment }) => patchState(store, (s) => {
34719
+ const normalized = {
34720
+ ...comment,
34721
+ kind: 'comment',
34722
+ date: comment.date || new Date().toISOString(),
34579
34723
  };
34580
- });
34581
- }), catchError(() => {
34582
- patchState(store, (s) => ({
34583
- expandingCursors: new Set([...s.expandingCursors].filter((t) => t !== token)),
34584
- }));
34585
- return EMPTY;
34586
- }))))),
34587
- // ── Post new comment ─────────────────────────────────────────────────
34588
- create: rxMethod(pipe(tap(({ sourceId }) => patchState(store, (s) => ({
34589
- submittingSources: new Set([...s.submittingSources, sourceId]),
34590
- }))), switchMap$1(({ sourceId, text }) => api.create(sourceId, text).pipe(tap(({ comment }) => patchState(store, (s) => {
34591
- const normalized = {
34592
- ...comment,
34593
- kind: 'comment',
34594
- date: comment.date || new Date().toISOString(),
34595
- };
34596
- const existingList = s.sourceToItemsMap.get(sourceId);
34597
- const sourceToItemsMap = existingList !== undefined
34598
- ? new Map([
34599
- ...s.sourceToItemsMap,
34600
- [sourceId, [normalized.id, ...existingList]],
34601
- ])
34602
- : s.sourceToItemsMap;
34603
- const known = s.sourceToCountMap.get(sourceId);
34604
- return {
34605
- commentMap: new Map([
34606
- ...s.commentMap,
34607
- [normalized.id, normalized],
34608
- ]),
34609
- sourceToItemsMap,
34610
- sourceToCountMap: known === undefined
34611
- ? s.sourceToCountMap
34612
- : new Map([...s.sourceToCountMap, [sourceId, known + 1]]),
34613
- submittingSources: new Set([...s.submittingSources].filter((id) => id !== sourceId)),
34614
- };
34615
- })), catchError(() => {
34616
- patchState(store, (s) => ({
34617
- submittingSources: new Set([...s.submittingSources].filter((id) => id !== sourceId)),
34618
- }));
34619
- return EMPTY;
34620
- }))))),
34621
- // ── Delete comment (optimistic) ──────────────────────────────────────
34622
- async removeComment(sourceId, commentId) {
34623
- patchState(store, (s) => {
34624
- const list = s.sourceToItemsMap.get(sourceId) ?? [];
34625
- const newCommentMap = new Map(s.commentMap);
34626
- newCommentMap.delete(commentId);
34724
+ const existingList = s.sourceToItemsMap.get(sourceId);
34725
+ const sourceToItemsMap = existingList !== undefined
34726
+ ? new Map([
34727
+ ...s.sourceToItemsMap,
34728
+ [sourceId, [normalized.id, ...existingList]],
34729
+ ])
34730
+ : s.sourceToItemsMap;
34627
34731
  const known = s.sourceToCountMap.get(sourceId);
34628
34732
  return {
34629
- commentMap: newCommentMap,
34630
- sourceToItemsMap: new Map([
34631
- ...s.sourceToItemsMap,
34632
- [sourceId, list.filter((id) => id !== commentId)],
34733
+ commentMap: new Map([
34734
+ ...s.commentMap,
34735
+ [normalized.id, normalized],
34633
34736
  ]),
34737
+ sourceToItemsMap,
34634
34738
  sourceToCountMap: known === undefined
34635
34739
  ? s.sourceToCountMap
34636
34740
  : new Map([
34637
34741
  ...s.sourceToCountMap,
34638
- [sourceId, Math.max(0, known - 1)],
34742
+ [sourceId, known + 1],
34639
34743
  ]),
34744
+ submittingSources: new Set([...s.submittingSources].filter((id) => id !== sourceId)),
34640
34745
  };
34641
- });
34642
- try {
34643
- await firstValueFrom(api.remove(commentId));
34644
- }
34645
- catch {
34646
- // Re-fetch on failure
34647
- const { items, commentCount } = await firstValueFrom(api.list(sourceId));
34648
- const { commentMap, cursorMap, orderedIds } = ingestItems(items);
34746
+ })), catchError(() => {
34649
34747
  patchState(store, (s) => ({
34650
- commentMap: new Map([...s.commentMap, ...commentMap]),
34651
- cursorMap: new Map([...s.cursorMap, ...cursorMap]),
34652
- sourceToItemsMap: new Map([
34653
- ...s.sourceToItemsMap,
34654
- [sourceId, orderedIds],
34655
- ]),
34656
- sourceToCountMap: new Map([
34657
- ...s.sourceToCountMap,
34658
- [sourceId, commentCount],
34659
- ]),
34748
+ submittingSources: new Set([...s.submittingSources].filter((id) => id !== sourceId)),
34660
34749
  }));
34661
- }
34662
- },
34663
- async editComment(commentId, text) {
34664
- let originalComment;
34665
- patchState(store, (s) => {
34666
- const comment = s.commentMap.get(commentId);
34667
- if (comment) {
34668
- originalComment = { ...comment };
34669
- const updated = { ...comment, text };
34670
- return {
34671
- commentMap: new Map([...s.commentMap, [commentId, updated]]),
34672
- };
34673
- }
34674
- return {};
34675
- });
34676
- try {
34677
- const response = await firstValueFrom(api.update(commentId, text));
34750
+ return EMPTY;
34751
+ }))))),
34752
+ // ── Delete comment (optimistic) ──────────────────────────────────────
34753
+ async removeComment(sourceId, commentId) {
34678
34754
  patchState(store, (s) => {
34679
- const comment = response.comment;
34680
- const normalized = {
34681
- ...comment,
34682
- kind: 'comment',
34683
- date: comment.date || new Date().toISOString(),
34684
- };
34755
+ const list = s.sourceToItemsMap.get(sourceId) ?? [];
34756
+ const newCommentMap = new Map(s.commentMap);
34757
+ newCommentMap.delete(commentId);
34758
+ const known = s.sourceToCountMap.get(sourceId);
34685
34759
  return {
34686
- commentMap: new Map([...s.commentMap, [commentId, normalized]]),
34760
+ commentMap: newCommentMap,
34761
+ sourceToItemsMap: new Map([
34762
+ ...s.sourceToItemsMap,
34763
+ [sourceId, list.filter((id) => id !== commentId)],
34764
+ ]),
34765
+ sourceToCountMap: known === undefined
34766
+ ? s.sourceToCountMap
34767
+ : new Map([
34768
+ ...s.sourceToCountMap,
34769
+ [sourceId, Math.max(0, known - 1)],
34770
+ ]),
34687
34771
  };
34688
34772
  });
34689
- }
34690
- catch {
34691
- if (originalComment) {
34773
+ try {
34774
+ await firstValueFrom(api.remove(commentId));
34775
+ }
34776
+ catch {
34777
+ // Re-fetch on failure
34778
+ const { items, commentCount } = await firstValueFrom(api.list(sourceId));
34779
+ const { commentMap, cursorMap, orderedIds } = ingestItems(items);
34692
34780
  patchState(store, (s) => ({
34693
- commentMap: new Map([
34694
- ...s.commentMap,
34695
- [commentId, originalComment],
34781
+ commentMap: new Map([...s.commentMap, ...commentMap]),
34782
+ cursorMap: new Map([...s.cursorMap, ...cursorMap]),
34783
+ sourceToItemsMap: new Map([
34784
+ ...s.sourceToItemsMap,
34785
+ [sourceId, orderedIds],
34786
+ ]),
34787
+ sourceToCountMap: new Map([
34788
+ ...s.sourceToCountMap,
34789
+ [sourceId, commentCount],
34696
34790
  ]),
34697
34791
  }));
34698
34792
  }
34699
- }
34700
- },
34701
- // ── Selector helpers (called with sourceId from component) ───────────
34702
- itemsFor(sourceId) {
34703
- const ids = store.sourceToItemsMap().get(sourceId) ?? [];
34704
- const cMap = store.commentMap();
34705
- const curMap = store.cursorMap();
34706
- return ids
34707
- .map((id) => (cMap.get(id) ?? curMap.get(id)))
34708
- .filter(Boolean);
34709
- },
34710
- // undefined until the source's feed has been fetched at least once
34711
- countFor: (sourceId) => store.sourceToCountMap().get(sourceId),
34712
- isLoading: (sourceId) => store.loadingSources().has(sourceId),
34713
- isSubmitting: (sourceId) => store.submittingSources().has(sourceId),
34714
- isExpanding: (token) => store.expandingCursors().has(token),
34715
- })));
34793
+ },
34794
+ async editComment(commentId, text) {
34795
+ let originalComment;
34796
+ patchState(store, (s) => {
34797
+ const comment = s.commentMap.get(commentId);
34798
+ if (comment) {
34799
+ originalComment = { ...comment };
34800
+ const updated = { ...comment, text };
34801
+ return {
34802
+ commentMap: new Map([...s.commentMap, [commentId, updated]]),
34803
+ };
34804
+ }
34805
+ return {};
34806
+ });
34807
+ try {
34808
+ const response = await firstValueFrom(api.update(commentId, text));
34809
+ patchState(store, (s) => {
34810
+ const comment = response.comment;
34811
+ const normalized = {
34812
+ ...comment,
34813
+ kind: 'comment',
34814
+ date: comment.date || new Date().toISOString(),
34815
+ };
34816
+ return {
34817
+ commentMap: new Map([...s.commentMap, [commentId, normalized]]),
34818
+ };
34819
+ });
34820
+ }
34821
+ catch {
34822
+ if (originalComment) {
34823
+ patchState(store, (s) => ({
34824
+ commentMap: new Map([
34825
+ ...s.commentMap,
34826
+ [commentId, originalComment],
34827
+ ]),
34828
+ }));
34829
+ }
34830
+ }
34831
+ },
34832
+ // ── Selector helpers (called with sourceId from component) ───────────
34833
+ itemsFor(sourceId) {
34834
+ const ids = store.sourceToItemsMap().get(sourceId) ?? [];
34835
+ const cMap = store.commentMap();
34836
+ const curMap = store.cursorMap();
34837
+ return ids
34838
+ .map((id) => (cMap.get(id) ?? curMap.get(id)))
34839
+ .filter(Boolean);
34840
+ },
34841
+ // undefined until the source's feed has been fetched at least once
34842
+ countFor: (sourceId) => store.sourceToCountMap().get(sourceId),
34843
+ isLoading: (sourceId) => store.loadingSources().has(sourceId),
34844
+ isSubmitting: (sourceId) => store.submittingSources().has(sourceId),
34845
+ isExpanding: (token) => store.expandingCursors().has(token),
34846
+ };
34847
+ }));
34716
34848
 
34717
34849
  class CommentEditModalComponent {
34718
34850
  // --- Inputs ---
@@ -34830,7 +34962,7 @@ class CommentItemComponent {
34830
34962
  }
34831
34963
  }
34832
34964
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: CommentItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
34833
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: CommentItemComponent, isStandalone: true, selector: "m-comment-item", inputs: { comment: { classPropertyName: "comment", publicName: "comment", isSignal: true, isRequired: true, transformFunction: null }, showReplies: { classPropertyName: "showReplies", publicName: "showReplies", isSignal: true, isRequired: false, transformFunction: null }, isReplying: { classPropertyName: "isReplying", publicName: "isReplying", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { reply: "reply", cancelReply: "cancelReply", toggleReplies: "toggleReplies", deleted: "deleted" }, ngImport: i0, template: "<m-user [id]=\"comment().uid\">\n <p class=\"comment-item__text\">{{ comment().text }}</p>\n\n <div class=\"comment-item__actions\">\n <span class=\"comment-item__date\">{{ comment().date | date: 'shortTime' }}</span>\n\n <m-button name=\"reply\" (clicked)=\"reply.emit(comment().id)\" />\n\n <div class=\"comment-item__menu-container\">\n @if (isAuthor()) {\n <m-one-context-menu name=\"comment_actions\" (action)=\"onMenuAction($event)\" />\n }\n </div>\n </div>\n\n @if (hasReplies()) {\n <m-button\n [name]=\"showReplies() ? 'hide-replies' : 'view-replies'\"\n (clicked)=\"toggleReplies.emit()\"\n />\n }\n\n @if (isReplying()) {\n <div class=\"comment-item__reply-compose\">\n <m-textarea-input [config]=\"replyConfig\" [(value)]=\"replyDraft\" [disabled]=\"submitting\" />\n <div class=\"comment-item__reply-actions-wrapper\">\n <m-one-button-group\n name=\"reply_actions\"\n [buttons]=\"{\n post: { disabled: !replyDraft().trim() || submitting },\n }\"\n (clicked)=\"onReplyAction($event)\"\n />\n </div>\n </div>\n }\n\n @if (showReplies()) {\n <div class=\"comment-item__nested\">\n <m-comments [id]=\"comment().id\" [isNested]=\"true\" />\n </div>\n }\n</m-user>\n", 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)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-right{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.comment-item{position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);animation:fade-in .5s cubic-bezier(.16,1,.3,1)}.comment-item__text{margin:.25rem 0 .5rem;font-size:.95rem;line-height:1.6;color:var(--m-text);font-weight:400;word-break:break-word;animation:slide-right .6s cubic-bezier(.16,1,.3,1)}.comment-item__actions{display:flex;align-items:center;gap:1.5rem;margin-top:.25rem}.comment-item__date{color:var(--m-text-tertiary);font-size:.75rem;font-weight:500;letter-spacing:.01em}.comment-item__reply-compose{margin-top:1rem;margin-bottom:.5rem;display:flex;flex-direction:column;gap:1rem;background:color-mix(in srgb,var(--m-border) 15%,transparent);border:1px solid color-mix(in srgb,var(--m-border) 30%,transparent);border-radius:20px;padding:1rem;box-shadow:0 8px 32px #00000005,0 2px 8px #00000003;transition:all .4s cubic-bezier(.2,.8,.2,1);position:relative;overflow:hidden;animation:slide-up .6s cubic-bezier(.16,1,.3,1)}.comment-item__reply-compose:focus-within{border-color:color-mix(in srgb,var(--m-mm) 50%,transparent);background:color-mix(in srgb,var(--m-border) 10%,transparent);box-shadow:0 12px 40px #0000000a}.comment-item__reply-compose .m-textarea-input{--m-textarea-input-background: transparent;--m-textarea-input-border: none;--m-textarea-input-padding: 0;--m-textarea-input-shadow: none;width:100%}.comment-item__reply-compose .m-textarea-input textarea{width:100%;font-size:.9rem;color:var(--m-text);min-height:60px;resize:none;line-height:1.5}.comment-item__reply-compose .m-textarea-input textarea::placeholder{color:var(--m-text-tertiary)}.comment-item__reply-actions-wrapper{display:flex;align-items:center;justify-content:flex-end;align-self:flex-end;width:100%;transition:all .3s ease}.comment-item__nested{margin-top:.25rem;margin-left:1rem;padding:0;border-left:2px solid color-mix(in srgb,var(--m-mm) 10%,transparent);transition:border-color .3s;animation:fade-in .5s ease-out}.comment-item__nested:hover{border-left-color:color-mix(in srgb,var(--m-mm) 30%,transparent)}.comment-item__nested .comments{padding:0;background:transparent;box-shadow:none;border-radius:0;gap:1rem}.comment-item__nested .comments .comments__compose{margin-top:.5rem;padding:1rem;border-radius:.375rem}.comment-item__menu-container{position:relative;display:inline-flex;margin-left:auto}\n"], dependencies: [{ kind: "component", type: i0.forwardRef(() => UserComponent), selector: "m-user", inputs: ["id", "user", "firstName", "lastName", "profilePic"] }, { kind: "component", type: i0.forwardRef(() => TextareaInputComponent), selector: "m-textarea-input" }, { kind: "component", type: i0.forwardRef(() => ButtonGroupComponent), selector: "m-button-group, m-one-button-group", inputs: ["buttons", "names", "exclude", "vertical", "size"], outputs: ["clicked"] }, { kind: "component", type: i0.forwardRef(() => ButtonComponent), selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }, { kind: "component", type: i0.forwardRef(() => ContextMenuComponent), selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted"], outputs: ["toggleChange", "action"] }, { kind: "component", type: i0.forwardRef(() => CommentsComponent), selector: "m-comments", inputs: ["id", "isNested"] }, { kind: "pipe", type: i0.forwardRef(() => DatePipe), name: "date" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
34965
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: CommentItemComponent, isStandalone: true, selector: "m-comment-item", inputs: { comment: { classPropertyName: "comment", publicName: "comment", isSignal: true, isRequired: true, transformFunction: null }, showReplies: { classPropertyName: "showReplies", publicName: "showReplies", isSignal: true, isRequired: false, transformFunction: null }, isReplying: { classPropertyName: "isReplying", publicName: "isReplying", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { reply: "reply", cancelReply: "cancelReply", toggleReplies: "toggleReplies", deleted: "deleted" }, ngImport: i0, template: "<m-user [id]=\"comment().uid\">\n <p class=\"comment-item__text\">{{ comment().text }}</p>\n\n <div class=\"comment-item__actions\">\n <span class=\"comment-item__date\">{{ comment().date | date: 'shortTime' }}</span>\n\n <m-button name=\"reply\" (clicked)=\"reply.emit(comment().id)\" />\n\n <div class=\"comment-item__menu-container\">\n @if (isAuthor()) {\n <m-one-context-menu name=\"comment_actions\" (action)=\"onMenuAction($event)\" />\n }\n </div>\n </div>\n\n @if (hasReplies()) {\n <m-button\n [name]=\"showReplies() ? 'hide-replies' : 'view-replies'\"\n (clicked)=\"toggleReplies.emit()\"\n />\n }\n\n @if (isReplying()) {\n <div class=\"comment-item__reply-compose\">\n <m-textarea-input [config]=\"replyConfig\" [(value)]=\"replyDraft\" [disabled]=\"submitting\" />\n <div class=\"comment-item__reply-actions-wrapper\">\n <m-one-button-group\n name=\"reply_actions\"\n [buttons]=\"{\n post: { disabled: !replyDraft().trim() || submitting },\n }\"\n (clicked)=\"onReplyAction($event)\"\n />\n </div>\n </div>\n }\n\n @if (showReplies()) {\n <div class=\"comment-item__nested\">\n <m-comments [id]=\"comment().id\" [isNested]=\"true\" />\n </div>\n }\n</m-user>\n", 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)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-right{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.comment-item{position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);animation:fade-in .5s cubic-bezier(.16,1,.3,1)}.comment-item__text{margin:.25rem 0 .5rem;font-size:.95rem;line-height:1.6;color:var(--m-text);font-weight:400;word-break:break-word;animation:slide-right .6s cubic-bezier(.16,1,.3,1)}.comment-item__actions{display:flex;align-items:center;gap:1.5rem;margin-top:.25rem}.comment-item__date{color:var(--m-text-tertiary);font-size:.75rem;font-weight:500;letter-spacing:.01em}.comment-item__reply-compose{margin-top:1rem;margin-bottom:.5rem;display:flex;flex-direction:column;gap:1rem;background:color-mix(in srgb,var(--m-border) 15%,transparent);border:1px solid color-mix(in srgb,var(--m-border) 30%,transparent);border-radius:20px;padding:1rem;box-shadow:0 8px 32px #00000005,0 2px 8px #00000003;transition:all .4s cubic-bezier(.2,.8,.2,1);position:relative;overflow:hidden;animation:slide-up .6s cubic-bezier(.16,1,.3,1)}.comment-item__reply-compose:focus-within{border-color:color-mix(in srgb,var(--m-mm) 50%,transparent);background:color-mix(in srgb,var(--m-border) 10%,transparent);box-shadow:0 12px 40px #0000000a}.comment-item__reply-compose .m-textarea-input{--m-textarea-input-background: transparent;--m-textarea-input-border: none;--m-textarea-input-padding: 0;--m-textarea-input-shadow: none;width:100%}.comment-item__reply-compose .m-textarea-input textarea{width:100%;font-size:.9rem;color:var(--m-text);min-height:60px;resize:none;line-height:1.5}.comment-item__reply-compose .m-textarea-input textarea::placeholder{color:var(--m-text-tertiary)}.comment-item__reply-actions-wrapper{display:flex;align-items:center;justify-content:flex-end;align-self:flex-end;width:100%;transition:all .3s ease}.comment-item__nested{margin-top:.25rem;margin-left:1rem;padding:0;border-left:2px solid color-mix(in srgb,var(--m-mm) 10%,transparent);transition:border-color .3s;animation:fade-in .5s ease-out}.comment-item__nested:hover{border-left-color:color-mix(in srgb,var(--m-mm) 30%,transparent)}.comment-item__nested .comments{padding:0;background:transparent;box-shadow:none;border-radius:0;gap:1rem}.comment-item__nested .comments .comments__compose{margin-top:.5rem;padding:1rem;border-radius:.375rem}.comment-item__menu-container{position:relative;display:inline-flex;margin-left:auto}\n"], dependencies: [{ kind: "component", type: i0.forwardRef(() => UserComponent), selector: "m-user", inputs: ["id", "user", "firstName", "lastName", "profilePic"] }, { kind: "component", type: i0.forwardRef(() => TextareaInputComponent), selector: "m-textarea-input" }, { kind: "component", type: i0.forwardRef(() => ButtonGroupComponent), selector: "m-button-group, m-one-button-group", inputs: ["buttons", "names", "exclude", "vertical", "size"], outputs: ["clicked"] }, { kind: "component", type: i0.forwardRef(() => ButtonComponent), selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }, { kind: "component", type: i0.forwardRef(() => ContextMenuComponent), selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted", "options"], outputs: ["toggleChange", "action"] }, { kind: "component", type: i0.forwardRef(() => CommentsComponent), selector: "m-comments", inputs: ["id", "isNested"] }, { kind: "pipe", type: i0.forwardRef(() => DatePipe), name: "date" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
34834
34966
  }
34835
34967
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: CommentItemComponent, decorators: [{
34836
34968
  type: Component,
@@ -34855,6 +34987,20 @@ class CommentsComponent {
34855
34987
  items = computed(() => this.store.itemsFor(this.id()), ...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
34856
34988
  loading = computed(() => this.store.isLoading(this.id()), ...(ngDevMode ? [{ debugName: "loading" }] : /* istanbul ignore next */ []));
34857
34989
  submitting = computed(() => this.store.isSubmitting(this.id()), ...(ngDevMode ? [{ debugName: "submitting" }] : /* istanbul ignore next */ []));
34990
+ // The expand affordance for every cursor in the feed, keyed by token. A
34991
+ // cursor knows how many comments it hides, so the button wears that number
34992
+ // as a badge rather than making the reader spend a request to find out.
34993
+ loadMoreConfigs = computed(() => {
34994
+ const configs = new Map();
34995
+ for (const item of this.items()) {
34996
+ if (item.kind !== 'cursor')
34997
+ continue;
34998
+ configs.set(item.token, this.store.isExpanding(item.token)
34999
+ ? { icon: 'reset' }
35000
+ : { label: 'load-more-comments', badge: { count: item.count } });
35001
+ }
35002
+ return configs;
35003
+ }, ...(ngDevMode ? [{ debugName: "loadMoreConfigs" }] : /* istanbul ignore next */ []));
34858
35004
  textareaConfig = {
34859
35005
  type: InputType.TEXTAREA,
34860
35006
  name: 'comment_text',
@@ -34871,6 +35017,31 @@ class CommentsComponent {
34871
35017
  });
34872
35018
  }
34873
35019
  // --- Handlers ---
35020
+ /**
35021
+ * Ctrl/Cmd+R re-reads the feed instead of reloading the browser. The default
35022
+ * is taken deliberately: inside a comment feed the gesture the User means is
35023
+ * "show me what changed", and a full page reload throws away an unsent draft
35024
+ * to answer it.
35025
+ *
35026
+ * Stops propagating so a reply thread's own feed refreshes alone — without
35027
+ * it the key would bubble to every ancestor feed and fire a request each.
35028
+ */
35029
+ onKeyDown = (event) => {
35030
+ if (!(event.metaKey || event.ctrlKey))
35031
+ return;
35032
+ if (event.key.toLowerCase() !== 'r')
35033
+ return;
35034
+ event.preventDefault();
35035
+ event.stopPropagation();
35036
+ this.refresh();
35037
+ };
35038
+ onMenuAction(item) {
35039
+ if (item.id === 'refresh')
35040
+ this.refresh();
35041
+ }
35042
+ refresh() {
35043
+ this.store.refresh(this.id());
35044
+ }
34874
35045
  onReply(commentId) {
34875
35046
  this.replyingToId.set(commentId);
34876
35047
  }
@@ -34894,7 +35065,7 @@ class CommentsComponent {
34894
35065
  this.store.removeComment(this.id(), commentId);
34895
35066
  }
34896
35067
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: CommentsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
34897
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: CommentsComponent, isStandalone: true, selector: "m-comments", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: true, transformFunction: null }, isNested: { classPropertyName: "isNested", publicName: "isNested", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"comments\">\n <!-- \u2500\u2500 Compose box \u2500\u2500 -->\n <div class=\"comments__compose\">\n <m-textarea-input [config]=\"textareaConfig\" [(value)]=\"draft\" [disabled]=\"submitting()\" />\n <div class=\"comments__toolbar\">\n <m-one-button name=\"post\" [disabled]=\"!draft().trim() || submitting()\" (clicked)=\"submit()\" />\n </div>\n </div>\n\n <!-- \u2500\u2500 Items list \u2500\u2500 -->\n @if (loading()) {\n <div class=\"comments__loading\">{{ 'loading' | translate }}</div>\n } @else if (items().length) {\n <div class=\"comments__list\">\n @for (item of items(); track item.kind === 'comment' ? item.id : 'cursor_' + item.token) {\n @if (item.kind === 'comment') {\n <m-comment-item\n [comment]=\"item\"\n [showReplies]=\"expandedId() === item.id\"\n [isReplying]=\"replyingToId() === item.id\"\n (reply)=\"onReply($event)\"\n (cancelReply)=\"cancelReply()\"\n (toggleReplies)=\"onToggleReplies(item.id)\"\n (deleted)=\"onDelete($event)\"\n />\n } @else {\n <div class=\"comments__load-more-wrapper\">\n <m-button\n [config]=\"store.isExpanding(item.token) ? { icon: 'reset' } : { label: 'load-more-comments' }\"\n [disabled]=\"store.isExpanding(item.token)\"\n (clicked)=\"expand(item.token)\"\n />\n </div>\n }\n }\n </div>\n }\n</div>\n", 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)}}@keyframes shimmer{0%{left:-100%}to{left:100%}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 4px 12px #4169e14d}50%{transform:scale(.92);box-shadow:0 2px 6px #4169e133}to{transform:scale(1);box-shadow:0 4px 12px #4169e14d}}.comments{display:flex;flex-direction:column;gap:1.5rem;width:100%}.comments__list{display:flex;flex-direction:column;gap:1.5rem}.comments__loading{text-align:center;color:var(--m-text-tertiary);font-size:.85rem;font-weight:500;letter-spacing:.02em;position:relative;overflow:hidden}.comments__loading:after{content:\"\";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--m-mm) 5%,transparent),transparent);animation:shimmer 2s infinite}.comments__compose{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;position:relative}.comments__compose .m-textarea-input{--m-textarea-input-background: transparent;--m-textarea-input-border: none;--m-textarea-input-padding: 0;--m-textarea-input-shadow: none;width:100%}.comments__compose .m-textarea-input textarea{width:100%;font-size:.95rem;color:var(--m-text);min-height:80px;resize:none;line-height:1.6}.comments__compose .m-textarea-input textarea::placeholder{color:var(--m-text-tertiary);opacity:.7}.comments__toolbar{display:flex;align-items:center;justify-content:flex-end;width:100%;transition:all .3s ease}.comments__load-more-wrapper{width:100%;padding:1rem;background:color-mix(in srgb,var(--m-border) 20%,transparent);border:1px solid var(--m-border);border-radius:.375rem;color:var(--m-text-secondary);font-size:.85rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.comments__load-more-wrapper .m-button{padding:0;font-size:inherit;background:transparent}.comments__load-more-wrapper:hover:not([disabled]){background:var(--m-frame);border-color:var(--m-mm);color:var(--m-mm);box-shadow:0 4px 12px #0000000d}.comments__load-more-wrapper[disabled]{opacity:.5;cursor:not-allowed}\n"], dependencies: [{ kind: "component", type: CommentItemComponent, selector: "m-comment-item", inputs: ["comment", "showReplies", "isReplying"], outputs: ["reply", "cancelReply", "toggleReplies", "deleted"] }, { kind: "component", type: TextareaInputComponent, selector: "m-textarea-input" }, { kind: "component", type: ButtonComponent, selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
35068
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: CommentsComponent, isStandalone: true, selector: "m-comments", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: true, transformFunction: null }, isNested: { classPropertyName: "isNested", publicName: "isNested", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "tabindex": "-1" }, listeners: { "keydown": "onKeyDown($event)" } }, ngImport: i0, template: "<div class=\"comments\">\n <!-- \u2500\u2500 Compose box \u2500\u2500 -->\n <div class=\"comments__compose\">\n <m-textarea-input [config]=\"textareaConfig\" [(value)]=\"draft\" [disabled]=\"submitting()\" />\n <div class=\"comments__toolbar\">\n <m-one-context-menu name=\"comments_feed_actions\" (action)=\"onMenuAction($event)\" />\n <m-one-button name=\"post\" [disabled]=\"!draft().trim() || submitting()\" (clicked)=\"submit()\" />\n </div>\n </div>\n\n <!-- \u2500\u2500 Items list \u2500\u2500 -->\n @if (loading()) {\n <div class=\"comments__loading\">{{ 'loading' | translate }}</div>\n } @else if (items().length) {\n <div class=\"comments__list\">\n @for (item of items(); track item.kind === 'comment' ? item.id : 'cursor_' + item.token) {\n @if (item.kind === 'comment') {\n <m-comment-item\n [comment]=\"item\"\n [showReplies]=\"expandedId() === item.id\"\n [isReplying]=\"replyingToId() === item.id\"\n (reply)=\"onReply($event)\"\n (cancelReply)=\"cancelReply()\"\n (toggleReplies)=\"onToggleReplies(item.id)\"\n (deleted)=\"onDelete($event)\"\n />\n } @else {\n <div class=\"comments__load-more-wrapper\">\n <m-button\n [config]=\"loadMoreConfigs().get(item.token)\"\n [disabled]=\"store.isExpanding(item.token)\"\n (clicked)=\"expand(item.token)\"\n />\n </div>\n }\n }\n </div>\n }\n</div>\n", 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)}}@keyframes shimmer{0%{left:-100%}to{left:100%}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 4px 12px #4169e14d}50%{transform:scale(.92);box-shadow:0 2px 6px #4169e133}to{transform:scale(1);box-shadow:0 4px 12px #4169e14d}}.comments{display:flex;flex-direction:column;gap:1.5rem;width:100%}.comments__list{display:flex;flex-direction:column;gap:1.5rem}.comments__loading{text-align:center;color:var(--m-text-tertiary);font-size:.85rem;font-weight:500;letter-spacing:.02em;position:relative;overflow:hidden}.comments__loading:after{content:\"\";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--m-mm) 5%,transparent),transparent);animation:shimmer 2s infinite}.comments__compose{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;position:relative}.comments__compose .m-textarea-input{--m-textarea-input-background: transparent;--m-textarea-input-border: none;--m-textarea-input-padding: 0;--m-textarea-input-shadow: none;width:100%}.comments__compose .m-textarea-input textarea{width:100%;font-size:.95rem;color:var(--m-text);min-height:80px;resize:none;line-height:1.6}.comments__compose .m-textarea-input textarea::placeholder{color:var(--m-text-tertiary);opacity:.7}.comments__toolbar{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;width:100%;transition:all .3s ease}.comments__load-more-wrapper{width:100%;padding:1rem;background:color-mix(in srgb,var(--m-border) 20%,transparent);border:1px solid var(--m-border);border-radius:.375rem;color:var(--m-text-secondary);font-size:.85rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.comments__load-more-wrapper .m-button{padding:0;font-size:inherit;background:transparent}.comments__load-more-wrapper:hover:not([disabled]){background:var(--m-frame);border-color:var(--m-mm);color:var(--m-mm);box-shadow:0 4px 12px #0000000d}.comments__load-more-wrapper[disabled]{opacity:.5;cursor:not-allowed}\n"], dependencies: [{ kind: "component", type: CommentItemComponent, selector: "m-comment-item", inputs: ["comment", "showReplies", "isReplying"], outputs: ["reply", "cancelReply", "toggleReplies", "deleted"] }, { kind: "component", type: TextareaInputComponent, selector: "m-textarea-input" }, { kind: "component", type: ButtonComponent, selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "nav", "navParams", "href", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "params", "noNative", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "isSubmit", "tabindex"], outputs: ["configChange", "clicked"] }, { kind: "component", type: ContextMenuComponent, selector: "m-context-menu, m-one-context-menu", inputs: ["toggle", "remote", "exclude", "visibilityRule", "disableRule", "extraData", "inverted", "options"], outputs: ["toggleChange", "action"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
34898
35069
  }
34899
35070
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: CommentsComponent, decorators: [{
34900
35071
  type: Component,
@@ -34903,7 +35074,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
34903
35074
  TextareaInputComponent,
34904
35075
  TranslatePipe,
34905
35076
  ButtonComponent,
34906
- ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"comments\">\n <!-- \u2500\u2500 Compose box \u2500\u2500 -->\n <div class=\"comments__compose\">\n <m-textarea-input [config]=\"textareaConfig\" [(value)]=\"draft\" [disabled]=\"submitting()\" />\n <div class=\"comments__toolbar\">\n <m-one-button name=\"post\" [disabled]=\"!draft().trim() || submitting()\" (clicked)=\"submit()\" />\n </div>\n </div>\n\n <!-- \u2500\u2500 Items list \u2500\u2500 -->\n @if (loading()) {\n <div class=\"comments__loading\">{{ 'loading' | translate }}</div>\n } @else if (items().length) {\n <div class=\"comments__list\">\n @for (item of items(); track item.kind === 'comment' ? item.id : 'cursor_' + item.token) {\n @if (item.kind === 'comment') {\n <m-comment-item\n [comment]=\"item\"\n [showReplies]=\"expandedId() === item.id\"\n [isReplying]=\"replyingToId() === item.id\"\n (reply)=\"onReply($event)\"\n (cancelReply)=\"cancelReply()\"\n (toggleReplies)=\"onToggleReplies(item.id)\"\n (deleted)=\"onDelete($event)\"\n />\n } @else {\n <div class=\"comments__load-more-wrapper\">\n <m-button\n [config]=\"store.isExpanding(item.token) ? { icon: 'reset' } : { label: 'load-more-comments' }\"\n [disabled]=\"store.isExpanding(item.token)\"\n (clicked)=\"expand(item.token)\"\n />\n </div>\n }\n }\n </div>\n }\n</div>\n", 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)}}@keyframes shimmer{0%{left:-100%}to{left:100%}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 4px 12px #4169e14d}50%{transform:scale(.92);box-shadow:0 2px 6px #4169e133}to{transform:scale(1);box-shadow:0 4px 12px #4169e14d}}.comments{display:flex;flex-direction:column;gap:1.5rem;width:100%}.comments__list{display:flex;flex-direction:column;gap:1.5rem}.comments__loading{text-align:center;color:var(--m-text-tertiary);font-size:.85rem;font-weight:500;letter-spacing:.02em;position:relative;overflow:hidden}.comments__loading:after{content:\"\";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--m-mm) 5%,transparent),transparent);animation:shimmer 2s infinite}.comments__compose{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;position:relative}.comments__compose .m-textarea-input{--m-textarea-input-background: transparent;--m-textarea-input-border: none;--m-textarea-input-padding: 0;--m-textarea-input-shadow: none;width:100%}.comments__compose .m-textarea-input textarea{width:100%;font-size:.95rem;color:var(--m-text);min-height:80px;resize:none;line-height:1.6}.comments__compose .m-textarea-input textarea::placeholder{color:var(--m-text-tertiary);opacity:.7}.comments__toolbar{display:flex;align-items:center;justify-content:flex-end;width:100%;transition:all .3s ease}.comments__load-more-wrapper{width:100%;padding:1rem;background:color-mix(in srgb,var(--m-border) 20%,transparent);border:1px solid var(--m-border);border-radius:.375rem;color:var(--m-text-secondary);font-size:.85rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.comments__load-more-wrapper .m-button{padding:0;font-size:inherit;background:transparent}.comments__load-more-wrapper:hover:not([disabled]){background:var(--m-frame);border-color:var(--m-mm);color:var(--m-mm);box-shadow:0 4px 12px #0000000d}.comments__load-more-wrapper[disabled]{opacity:.5;cursor:not-allowed}\n"] }]
35077
+ ContextMenuComponent,
35078
+ ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
35079
+ tabindex: '-1',
35080
+ '(keydown)': 'onKeyDown($event)',
35081
+ }, template: "<div class=\"comments\">\n <!-- \u2500\u2500 Compose box \u2500\u2500 -->\n <div class=\"comments__compose\">\n <m-textarea-input [config]=\"textareaConfig\" [(value)]=\"draft\" [disabled]=\"submitting()\" />\n <div class=\"comments__toolbar\">\n <m-one-context-menu name=\"comments_feed_actions\" (action)=\"onMenuAction($event)\" />\n <m-one-button name=\"post\" [disabled]=\"!draft().trim() || submitting()\" (clicked)=\"submit()\" />\n </div>\n </div>\n\n <!-- \u2500\u2500 Items list \u2500\u2500 -->\n @if (loading()) {\n <div class=\"comments__loading\">{{ 'loading' | translate }}</div>\n } @else if (items().length) {\n <div class=\"comments__list\">\n @for (item of items(); track item.kind === 'comment' ? item.id : 'cursor_' + item.token) {\n @if (item.kind === 'comment') {\n <m-comment-item\n [comment]=\"item\"\n [showReplies]=\"expandedId() === item.id\"\n [isReplying]=\"replyingToId() === item.id\"\n (reply)=\"onReply($event)\"\n (cancelReply)=\"cancelReply()\"\n (toggleReplies)=\"onToggleReplies(item.id)\"\n (deleted)=\"onDelete($event)\"\n />\n } @else {\n <div class=\"comments__load-more-wrapper\">\n <m-button\n [config]=\"loadMoreConfigs().get(item.token)\"\n [disabled]=\"store.isExpanding(item.token)\"\n (clicked)=\"expand(item.token)\"\n />\n </div>\n }\n }\n </div>\n }\n</div>\n", 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)}}@keyframes shimmer{0%{left:-100%}to{left:100%}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 4px 12px #4169e14d}50%{transform:scale(.92);box-shadow:0 2px 6px #4169e133}to{transform:scale(1);box-shadow:0 4px 12px #4169e14d}}.comments{display:flex;flex-direction:column;gap:1.5rem;width:100%}.comments__list{display:flex;flex-direction:column;gap:1.5rem}.comments__loading{text-align:center;color:var(--m-text-tertiary);font-size:.85rem;font-weight:500;letter-spacing:.02em;position:relative;overflow:hidden}.comments__loading:after{content:\"\";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--m-mm) 5%,transparent),transparent);animation:shimmer 2s infinite}.comments__compose{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;position:relative}.comments__compose .m-textarea-input{--m-textarea-input-background: transparent;--m-textarea-input-border: none;--m-textarea-input-padding: 0;--m-textarea-input-shadow: none;width:100%}.comments__compose .m-textarea-input textarea{width:100%;font-size:.95rem;color:var(--m-text);min-height:80px;resize:none;line-height:1.6}.comments__compose .m-textarea-input textarea::placeholder{color:var(--m-text-tertiary);opacity:.7}.comments__toolbar{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;width:100%;transition:all .3s ease}.comments__load-more-wrapper{width:100%;padding:1rem;background:color-mix(in srgb,var(--m-border) 20%,transparent);border:1px solid var(--m-border);border-radius:.375rem;color:var(--m-text-secondary);font-size:.85rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.comments__load-more-wrapper .m-button{padding:0;font-size:inherit;background:transparent}.comments__load-more-wrapper:hover:not([disabled]){background:var(--m-frame);border-color:var(--m-mm);color:var(--m-mm);box-shadow:0 4px 12px #0000000d}.comments__load-more-wrapper[disabled]{opacity:.5;cursor:not-allowed}\n"] }]
34907
35082
  }], ctorParameters: () => [], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: true }] }], isNested: [{ type: i0.Input, args: [{ isSignal: true, alias: "isNested", required: false }] }] } });
34908
35083
 
34909
35084
  const FALLBACK_ICON = 'apps';
@@ -35070,5 +35245,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
35070
35245
  * Generated bundle index. Do not edit.
35071
35246
  */
35072
35247
 
35073
- export { DEFAULT_NAV_PARAM as $, ACCESS_DOMAINS as A, BaseInputComponent as B, COMPONENT_INPUT_REGISTRY as C, CardComponent as D, CardWrapperComponent as E, CarouselComponent as F, ChartComponent as G, CheckboxInputComponent as H, IS_DESIGN_MODE as I, ClearableInputComponent as J, ColComponent as K, LabelComponent as L, ColorPickerInputComponent as M, CommentItemComponent as N, CommentsApiService as O, CommentsComponent as P, CommentsStore as Q, ComponentInputComponent as R, ComponentStepperComponent as S, TranslatePipe as T, ConfigComponent as U, ConfirmComponent as V, ContextMenuComponent as W, CustomIconClass as X, CustomIconEditComponent as Y, DEFAULT_FILTER_RANGE_MODE as Z, DEFAULT_FILTER_VARIANT as _, BaseTextInputComponent as a, MurlUrlSerializer as a$, DEFAULT_NAV_SEGMENT as a0, DEFAULT_SIZE as a1, DashboardCardComponent as a2, DateInputComponent as a3, DatePickerComponent as a4, DeviceService as a5, DomService as a6, Domain as a7, DotGridComponent as a8, DragListDirective as a9, InputType as aA, InstrumentScoreComponent as aB, InterceptorObservables as aC, JumbotronComponent as aD, KeyValueComponent as aE, LAYOUT_ASSET_FOLDER as aF, LOGIN_COMPONENT as aG, LOGIN_STORE as aH, LanguageComponent as aI, ListComponent as aJ, LogoComponent as aK, MAG_SOCKET_EVENT as aL, MHeroColorDirective as aM, MHeroComponent as aN, MODAL_REF as aO, MODAL_STORE_REF as aP, MRefDirective as aQ, MStepComponent as aR, MURL_PARAM as aS, MURL_SEP as aT, ManifestEnrichmentService as aU, MenuComponent as aV, ModalDirective as aW, ModalRef as aX, ModalStore as aY, MoneyPipe as aZ, MultiRangeInputComponent as a_, DragListItemDirective as aa, DraggableDirective as ab, DropdownInputComponent as ac, FILTER_GROUP_CONTEXT as ad, FILTER_RANGE_MODES as ae, FILTER_VARIANTS as af, FLEX_VARIANTS as ag, FOLDER_PICK_LISTENER as ah, FORM_ASSET_FOLDER as ai, FileService as aj, FileUploadDirective as ak, FileUploadInputComponent as al, FlexComponent as am, FlexItemComponent as an, FormGroupComponent as ao, FrameComponent as ap, FreezeService as aq, GRID_BREAKPOINTS as ar, GetNavService as as, HeaderComponent$1 as at, HighlightDirective as au, HttpService as av, ICON_SOURCE as aw, IS_SIDE_PANEL as ax, IconComponent as ay, ImgComponent as az, TextOutputComponent as b, SectionAccordionGroupDirective as b$, NAV_DEFAULT_MURL as b0, NAV_ID_SEP as b1, NAV_MAIN_BUTTONS as b2, NAV_SEGMENT_RE as b3, NAV_STORE_REF as b4, NAV_WC_COMPONENTS as b5, NAV_WIDGET_MAP as b6, NavComponent as b7, NavDetailsComponent as b8, NavHeaderComponent as b9, PlaygroundComponent as bA, PositionDirective as bB, PwaInstallComponent as bC, ROOT_NAV$1 as bD, RadioGroupComponent as bE, RadioInputComponent as bF, RangeInputComponent as bG, RatingInputComponent as bH, ReactiveElementComponent as bI, RemoteComponent as bJ, RemoteLoaderService as bK, ResizeElementComponent as bL, RouteContainer as bM, RowComponent as bN, SEARCH_QUERY as bO, SEARCH_RESULTS_EVENT as bP, SECTION_ACCORDION_GROUP as bQ, SECTION_FORM_CONTEXT as bR, SHARED_ICONS as bS, SIZE_CONTEXT as bT, ScoreComponent as bU, ScrollComponent as bV, ScrollService as bW, SearchPanelComponent as bX, SearchStore as bY, SearchUserPanelComponent as bZ, SectionAccordionDirective as b_, NavMenuComponent as ba, NavStore as bb, NavTrailComponent as bc, NothingComponent as bd, NotificationElementComponent as be, NotificationGroupComponent as bf, NotificationPopupComponent as bg, NotificationService as bh, NotificationStore as bi, NotificationType as bj, NotificationWidgetComponent as bk, ONE_ASSET_BASE_URL as bl, OPTIONS_SOURCE as bm, OVERLAY_WIDGETS as bn, OneApp as bo, OptionsSourceDirective as bp, OverlayBodyComponent as bq, OverlayRef as br, OverlayService as bs, PLATFORM_BUTTON_NAV_IDS as bt, PLATFORM_EXTENSIBLE_NAV_IDS as bu, PLATFORM_NAV_MAP as bv, PLATFORM_ROOT_CHILDREN as bw, PaginationComponent as bx, PanelComponent as by, PercentagePipe as bz, ButtonComponent as c, USER_STORE_REF as c$, SectionBackComponent as c0, SectionBadgesComponent as c1, SectionButtonGroupComponent as c2, SectionCardComponent as c3, SectionCarouselComponent as c4, SectionComponent as c5, SectionFilterComponent as c6, SectionFilterGroupComponent as c7, SectionFilterMenuComponent as c8, SectionFilterPanelComponent as c9, StorageService as cA, StrokeLinecap as cB, StrokeLinejoin as cC, SummaryComponent as cD, SvgGeneratorComponent as cE, SvgGeneratorService as cF, SvgService as cG, TOTAL_COLUMNS as cH, TRANSLATION_SOURCE as cI, TableComponent as cJ, TechnicalMeterComponent as cK, TextInputComponent as cL, TextareaInputComponent as cM, ThemeComponent as cN, ThemeDataService as cO, ThemeService as cP, ThemeStore as cQ, TimeAgoPipe as cR, TimelineComponent as cS, ToggleButtonComponent as cT, ToggleInputComponent as cU, ToggleRadioInputComponent as cV, ToolTipDirective as cW, TooltipComponent as cX, TranslateService as cY, TreeGridComponent as cZ, URL_SEP as c_, SectionFilterRangePanelComponent as ca, SectionFooterComponent as cb, SectionFormComponent as cc, SectionFormItemComponent as cd, SectionHeaderComponent as ce, SectionHeroComponent as cf, SectionPaginationComponent as cg, SectionSearchComponent as ch, SectionStepperComponent as ci, SectionTabsComponent as cj, SectionToggleComponent as ck, SectionToggleItemDirective as cl, SelectableCardInputComponent as cm, SelectorDirective as cn, SettingsSearchBarComponent as co, SettingsSearchService as cp, ShapeComponent as cq, SharedStoreRegistry as cr, SidePanelDirective as cs, Size as ct, SocketStore as cu, SortComponent as cv, StatComponent as cw, StepComponent as cx, StepperComponent as cy, StepsComponent as cz, APP_CONTEXT_REF as d, getTreeGridRow as d$, USER_TAB_MAP as d0, UniverseComponent as d1, UserApiService as d2, UserAvatarComponent as d3, UserComponent as d4, UserNavComponent as d5, UserSettingsComponent as d6, UserStore as d7, WC_ROUTE_CHANGED_EVENT as d8, WC_SEARCH_GROUPS as d9, derivePropertyName as dA, emailValidation as dB, evaluate as dC, evaluateBool as dD, filterHoldsList as dE, filterHoldsOneBound as dF, filterHoldsOptions as dG, filterHoldsRange as dH, filterList as dI, filterNumber as dJ, filterNumberList as dK, filterOne as dL, filterPanelOf as dM, filterPanelWidth as dN, filterRange as dO, filterTreeGridRows as dP, filterValueList as dQ, filterValues as dR, flattenTreeGridRows as dS, formatBadgeCount as dT, fullName as dU, generateClipPath as dV, generateTransform as dW, getClassList as dX, getProperty as dY, getScrollParent as dZ, getTierFromPreviewPath as d_, WIN_USER_TAB_HOOK as da, WIN_USER_TAB_KEY as db, WatermarkComponent as dc, WcRouterStore as dd, WrapperInputComponent as de, anchorNavId as df, applyColorsToElement as dg, assetOptions as dh, bootstrapMagApp as di, bootstrapPwaInstall as dj, buildWcBaseUrl as dk, calculateLuminance as dl, calculateRanks as dm, cellText as dn, checkFilterCondition as dp, childNavId as dq, classListSignal as dr, coerceSize as ds, cornerEdge as dt, cornerSide as du, createMap as dv, createPlatformNavMap as dw, deriveAvatarGradient as dx, deriveContrastColor as dy, deriveOppositeColor as dz, ASSET_BASE_URL as e, provideMagAppConfig as e$, getUniqueId as e0, getValue as e1, hasErrorComputed as e2, hexToRgb as e3, hslToRgb$1 as e4, initMagmoniumApp as e5, initialNotificationState as e6, initialState$2 as e7, initials as e8, injectAuthenticate as e9, maxValidation as eA, mergePlatformNav as eB, mergeUnique as eC, mergeUniqueBy as eD, mergeUniqueWith as eE, minAgeValidation as eF, minLengthValidation as eG, minValidation as eH, miniMarkToHtml as eI, navIdChain as eJ, navIdFor as eK, navIdSegment as eL, navIdToRoutePath as eM, navIdToSegments as eN, navParamOf as eO, navToId as eP, normalizeAssetOptions as eQ, parentNavId as eR, parseAddress as eS, parseColor as eT, parsePatternNames as eU, patternValidation as eV, patternsValidation as eW, platformNavWidgets as eX, privateGuard as eY, processImageToSvg as eZ, provideAppContext as e_, injectInstallApp as ea, injectParentSize as eb, injectScrollSticky as ec, isButtonName as ed, isCancelledComputed as ee, isExtensiblePlatformNavId as ef, isJson as eg, isLoadingComputed as eh, isLocalhost as ei, isNavInstanceConfig as ej, isNavMenuConfig as ek, isNavRowsConfig as el, isPlatformNavId as em, isSize as en, isTierPreview as eo, isUrlLocalhost as ep, isValidNavId as eq, isValidNavSegment as er, isWebComponent as es, linkToId as et, linkToNav as eu, loadingActions as ev, mInterceptor as ew, manualValidation as ex, matchFieldValidation as ey, maxLengthValidation as ez, AccordionBodyDirective as f, provideMagWcConfig as f0, provideMagWcRoutes as f1, provideModalComponents as f2, provideMurlUrlSerializer as f3, provideNavWidgets as f4, provideOverlayWidgets as f5, providePlatformNavWidgets as f6, provideSearch as f7, provideSizeContext as f8, provideUserTabs as f9, toLocalNavId as fA, toggleTreeGridRow as fB, unfetchedPlatformNav as fC, urlValidation as fD, publicGuard as fa, readFieldPatterns as fb, renderAddress as fc, requiredValidation as fd, resolveConfigAsset as fe, resolveIconSize as ff, resolvePallet as fg, resolvePatternRules as fh, resolveSize as fi, rgbToHex as fj, rgbToHsl as fk, rowHasChildren as fl, samePatterns as fm, segmentsToNavId as fn, setProperty as fo, setTreeGridChildren as fp, settingsWidgets as fq, shouldShowBadge as fr, splitNavId as fs, splitOnMatch as ft, stringToColor as fu, toAttrBool as fv, toAttrNumber as fw, toCssLength as fx, toHostNavId as fy, toLength$1 as fz, AccordionComponent as g, AccordionGroupComponent as h, ActionComponent as i, AnimatedGraphsComponent as j, AppCardComponent as k, AppRelationType as l, AppTileComponent as m, AssetStore as n, AssetUrlPipe as o, Assets as p, AuthActivityPageComponent as q, AuthApiService as r, AuthStore as s, AutosizeDirective as t, BadgeComponent as u, BandingComponent as v, BaseArrayInputComponent as w, BaseRootWebComponent as x, BaseWebComponent as y, ButtonGroupComponent as z };
35074
- //# sourceMappingURL=magmonium-one-magmonium-one-VhRbSI7n.mjs.map
35248
+ export { DEFAULT_FILTER_VARIANT as $, ACCESS_DOMAINS as A, BaseInputComponent as B, COMPONENT_INPUT_REGISTRY as C, CardComponent as D, CardWrapperComponent as E, CarouselComponent as F, ChartComponent as G, ChatBubbleComponent as H, IS_DESIGN_MODE as I, CheckboxInputComponent as J, ClearableInputComponent as K, LabelComponent as L, ColComponent as M, ColorPickerInputComponent as N, CommentItemComponent as O, CommentsApiService as P, CommentsComponent as Q, CommentsStore as R, ComponentInputComponent as S, TranslatePipe as T, ComponentStepperComponent as U, ConfigComponent as V, ConfirmComponent as W, ContextMenuComponent as X, CustomIconClass as Y, CustomIconEditComponent as Z, DEFAULT_FILTER_RANGE_MODE as _, BaseTextInputComponent as a, MultiRangeInputComponent as a$, DEFAULT_NAV_PARAM as a0, DEFAULT_NAV_SEGMENT as a1, DEFAULT_SIZE as a2, DashboardCardComponent as a3, DateInputComponent as a4, DatePickerComponent as a5, DeviceService as a6, DomService as a7, Domain as a8, DotGridComponent as a9, ImgComponent as aA, InputType as aB, InstrumentScoreComponent as aC, InterceptorObservables as aD, JumbotronComponent as aE, KeyValueComponent as aF, LAYOUT_ASSET_FOLDER as aG, LOGIN_COMPONENT as aH, LOGIN_STORE as aI, LanguageComponent as aJ, ListComponent as aK, LogoComponent as aL, MAG_SOCKET_EVENT as aM, MHeroColorDirective as aN, MHeroComponent as aO, MODAL_REF as aP, MODAL_STORE_REF as aQ, MRefDirective as aR, MStepComponent as aS, MURL_PARAM as aT, MURL_SEP as aU, ManifestEnrichmentService as aV, MenuComponent as aW, ModalDirective as aX, ModalRef as aY, ModalStore as aZ, MoneyPipe as a_, DragListDirective as aa, DragListItemDirective as ab, DraggableDirective as ac, DropdownInputComponent as ad, FILTER_GROUP_CONTEXT as ae, FILTER_RANGE_MODES as af, FILTER_VARIANTS as ag, FLEX_VARIANTS as ah, FOLDER_PICK_LISTENER as ai, FORM_ASSET_FOLDER as aj, FileService as ak, FileUploadDirective as al, FileUploadInputComponent as am, FlexComponent as an, FlexItemComponent as ao, FormGroupComponent as ap, FrameComponent as aq, FreezeService as ar, GRID_BREAKPOINTS as as, GetNavService as at, HeaderComponent$1 as au, HighlightDirective as av, HttpService as aw, ICON_SOURCE as ax, IS_SIDE_PANEL as ay, IconComponent as az, TextOutputComponent as b, SectionAccordionDirective as b$, MurlUrlSerializer as b0, NAV_DEFAULT_MURL as b1, NAV_ID_SEP as b2, NAV_MAIN_BUTTONS as b3, NAV_SEGMENT_RE as b4, NAV_STORE_REF as b5, NAV_WC_COMPONENTS as b6, NAV_WIDGET_MAP as b7, NavComponent as b8, NavDetailsComponent as b9, PercentagePipe as bA, PlaygroundComponent as bB, PositionDirective as bC, PwaInstallComponent as bD, ROOT_NAV$1 as bE, RadioGroupComponent as bF, RadioInputComponent as bG, RangeInputComponent as bH, RatingInputComponent as bI, ReactiveElementComponent as bJ, RemoteComponent as bK, RemoteLoaderService as bL, ResizeElementComponent as bM, RouteContainer as bN, RowComponent as bO, SEARCH_QUERY as bP, SEARCH_RESULTS_EVENT as bQ, SECTION_ACCORDION_GROUP as bR, SECTION_FORM_CONTEXT as bS, SHARED_ICONS as bT, SIZE_CONTEXT as bU, ScoreComponent as bV, ScrollComponent as bW, ScrollService as bX, SearchPanelComponent as bY, SearchStore as bZ, SearchUserPanelComponent as b_, NavHeaderComponent as ba, NavMenuComponent as bb, NavStore as bc, NavTrailComponent as bd, NothingComponent as be, NotificationElementComponent as bf, NotificationGroupComponent as bg, NotificationPopupComponent as bh, NotificationService as bi, NotificationStore as bj, NotificationType as bk, NotificationWidgetComponent as bl, ONE_ASSET_BASE_URL as bm, OPTIONS_SOURCE as bn, OVERLAY_WIDGETS as bo, OneApp as bp, OptionsSourceDirective as bq, OverlayBodyComponent as br, OverlayRef as bs, OverlayService as bt, PLATFORM_BUTTON_NAV_IDS as bu, PLATFORM_EXTENSIBLE_NAV_IDS as bv, PLATFORM_NAV_MAP as bw, PLATFORM_ROOT_CHILDREN as bx, PaginationComponent as by, PanelComponent as bz, ButtonComponent as c, URL_SEP as c$, SectionAccordionGroupDirective as c0, SectionBackComponent as c1, SectionBadgesComponent as c2, SectionButtonGroupComponent as c3, SectionCardComponent as c4, SectionCarouselComponent as c5, SectionComponent as c6, SectionFilterComponent as c7, SectionFilterGroupComponent as c8, SectionFilterMenuComponent as c9, StepsComponent as cA, StorageService as cB, StrokeLinecap as cC, StrokeLinejoin as cD, SummaryComponent as cE, SvgGeneratorComponent as cF, SvgGeneratorService as cG, SvgService as cH, TOTAL_COLUMNS as cI, TRANSLATION_SOURCE as cJ, TableComponent as cK, TechnicalMeterComponent as cL, TextInputComponent as cM, TextareaInputComponent as cN, ThemeComponent as cO, ThemeDataService as cP, ThemeService as cQ, ThemeStore as cR, TimeAgoPipe as cS, TimelineComponent as cT, ToggleButtonComponent as cU, ToggleInputComponent as cV, ToggleRadioInputComponent as cW, ToolTipDirective as cX, TooltipComponent as cY, TranslateService as cZ, TreeGridComponent as c_, SectionFilterPanelComponent as ca, SectionFilterRangePanelComponent as cb, SectionFooterComponent as cc, SectionFormComponent as cd, SectionFormItemComponent as ce, SectionHeaderComponent as cf, SectionHeroComponent as cg, SectionPaginationComponent as ch, SectionSearchComponent as ci, SectionStepperComponent as cj, SectionTabsComponent as ck, SectionToggleComponent as cl, SectionToggleItemDirective as cm, SelectableCardInputComponent as cn, SelectorDirective as co, SettingsSearchBarComponent as cp, SettingsSearchService as cq, ShapeComponent as cr, SharedStoreRegistry as cs, SidePanelDirective as ct, Size as cu, SocketStore as cv, SortComponent as cw, StatComponent as cx, StepComponent as cy, StepperComponent as cz, APP_CONTEXT_REF as d, getTierFromPreviewPath as d$, USER_STORE_REF as d0, USER_TAB_MAP as d1, UniverseComponent as d2, UserApiService as d3, UserAvatarComponent as d4, UserComponent as d5, UserNavComponent as d6, UserSettingsComponent as d7, UserStore as d8, WC_ROUTE_CHANGED_EVENT as d9, deriveOppositeColor as dA, derivePropertyName as dB, emailValidation as dC, evaluate as dD, evaluateBool as dE, filterHoldsList as dF, filterHoldsOneBound as dG, filterHoldsOptions as dH, filterHoldsRange as dI, filterList as dJ, filterNumber as dK, filterNumberList as dL, filterOne as dM, filterPanelOf as dN, filterPanelWidth as dO, filterRange as dP, filterTreeGridRows as dQ, filterValueList as dR, filterValues as dS, flattenTreeGridRows as dT, formatBadgeCount as dU, fullName as dV, generateClipPath as dW, generateTransform as dX, getClassList as dY, getProperty as dZ, getScrollParent as d_, WC_SEARCH_GROUPS as da, WIN_USER_TAB_HOOK as db, WIN_USER_TAB_KEY as dc, WatermarkComponent as dd, WcRouterStore as de, WrapperInputComponent as df, anchorNavId as dg, applyColorsToElement as dh, assetOptions as di, bootstrapMagApp as dj, bootstrapPwaInstall as dk, buildWcBaseUrl as dl, calculateLuminance as dm, calculateRanks as dn, cellText as dp, checkFilterCondition as dq, childNavId as dr, classListSignal as ds, coerceSize as dt, cornerEdge as du, cornerSide as dv, createMap as dw, createPlatformNavMap as dx, deriveAvatarGradient as dy, deriveContrastColor as dz, ASSET_BASE_URL as e, provideAppContext as e$, getTreeGridRow as e0, getUniqueId as e1, getValue as e2, hasErrorComputed as e3, hexToRgb as e4, hslToRgb$1 as e5, initMagmoniumApp as e6, initialNotificationState as e7, initialState$2 as e8, initials as e9, maxLengthValidation as eA, maxValidation as eB, mergePlatformNav as eC, mergeUnique as eD, mergeUniqueBy as eE, mergeUniqueWith as eF, minAgeValidation as eG, minLengthValidation as eH, minValidation as eI, miniMarkToHtml as eJ, navIdChain as eK, navIdFor as eL, navIdSegment as eM, navIdToRoutePath as eN, navIdToSegments as eO, navParamOf as eP, navToId as eQ, normalizeAssetOptions as eR, parentNavId as eS, parseAddress as eT, parseColor as eU, parsePatternNames as eV, patternValidation as eW, patternsValidation as eX, platformNavWidgets as eY, privateGuard as eZ, processImageToSvg as e_, injectAuthenticate as ea, injectInstallApp as eb, injectParentSize as ec, injectScrollSticky as ed, isButtonName as ee, isCancelledComputed as ef, isExtensiblePlatformNavId as eg, isJson as eh, isLoadingComputed as ei, isLocalhost as ej, isNavInstanceConfig as ek, isNavMenuConfig as el, isNavRowsConfig as em, isPlatformNavId as en, isSize as eo, isTierPreview as ep, isUrlLocalhost as eq, isValidNavId as er, isValidNavSegment as es, isWebComponent as et, linkToId as eu, linkToNav as ev, loadingActions as ew, mInterceptor as ex, manualValidation as ey, matchFieldValidation as ez, AccordionBodyDirective as f, provideMagAppConfig as f0, provideMagWcConfig as f1, provideMagWcRoutes as f2, provideModalComponents as f3, provideMurlUrlSerializer as f4, provideNavWidgets as f5, provideOverlayWidgets as f6, providePlatformNavWidgets as f7, provideSearch as f8, provideSizeContext as f9, toLength$1 as fA, toLocalNavId as fB, toggleTreeGridRow as fC, unfetchedPlatformNav as fD, urlValidation as fE, provideUserTabs as fa, publicGuard as fb, readFieldPatterns as fc, renderAddress as fd, requiredValidation as fe, resolveConfigAsset as ff, resolveIconSize as fg, resolvePallet as fh, resolvePatternRules as fi, resolveSize as fj, rgbToHex as fk, rgbToHsl as fl, rowHasChildren as fm, samePatterns as fn, segmentsToNavId as fo, setProperty as fp, setTreeGridChildren as fq, settingsWidgets as fr, shouldShowBadge as fs, splitNavId as ft, splitOnMatch as fu, stringToColor as fv, toAttrBool as fw, toAttrNumber as fx, toCssLength as fy, toHostNavId as fz, AccordionComponent as g, AccordionGroupComponent as h, ActionComponent as i, AnimatedGraphsComponent as j, AppCardComponent as k, AppRelationType as l, AppTileComponent as m, AssetStore as n, AssetUrlPipe as o, Assets as p, AuthActivityPageComponent as q, AuthApiService as r, AuthStore as s, AutosizeDirective as t, BadgeComponent as u, BandingComponent as v, BaseArrayInputComponent as w, BaseRootWebComponent as x, BaseWebComponent as y, ButtonGroupComponent as z };
35249
+ //# sourceMappingURL=magmonium-one-magmonium-one-CslMO-4v.mjs.map