@magmonium/one 0.2.43 → 0.2.44

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.
@@ -3980,6 +3980,7 @@ const initialState$3 = {
3980
3980
  appLink: undefined,
3981
3981
  appNavId: undefined,
3982
3982
  navOpenedByUser: false,
3983
+ menuNavId: undefined,
3983
3984
  keepPanelOnPathChange: false,
3984
3985
  panelPushed: false,
3985
3986
  navScrolledDown: false,
@@ -4034,7 +4035,7 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
4034
4035
  * chrome opened onto the page's own menu instead of onto itself.
4035
4036
  */
4036
4037
  const anchorRouteNavId = computed(() => visibleNavId(store.routeNavId() ?? ROOT_NAV$1), ...(ngDevMode ? [{ debugName: "anchorRouteNavId" }] : /* istanbul ignore next */ []));
4037
- const id = computed(() => navIdFor(anchorRouteNavId(), store.murl()), ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
4038
+ const id = computed(() => store.menuNavId() ?? navIdFor(anchorRouteNavId(), store.murl()), ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
4038
4039
  /**
4039
4040
  * The keys a panel is looked up under, nearest first: the anchored one, and
4040
4041
  * — while a Murl is open — the root-anchored one behind it. A Murl is a
@@ -4249,6 +4250,7 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
4249
4250
  */
4250
4251
  const goToNav = (navId, params, options) => {
4251
4252
  const wasOpen = untracked(() => store.hasMurl());
4253
+ patchState(store, { menuNavId: undefined });
4252
4254
  const address = addressFor(navId, params);
4253
4255
  const willOpen = untracked(() => splitNavId(navId, store.navMap()).murl.length > 0);
4254
4256
  if (willOpen && !wasOpen) {
@@ -4264,7 +4266,7 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
4264
4266
  };
4265
4267
  /** Closes the panel, popping our own entry when we are the one who pushed it. */
4266
4268
  const closePanel = () => {
4267
- patchState(store, { navOpenedByUser: false });
4269
+ patchState(store, { navOpenedByUser: false, menuNavId: undefined });
4268
4270
  if (!untracked(() => store.hasMurl()))
4269
4271
  return;
4270
4272
  if (untracked(() => store.panelPushed())) {
@@ -4300,6 +4302,7 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
4300
4302
  routeNavId,
4301
4303
  routeParams,
4302
4304
  murl,
4305
+ menuNavId: undefined,
4303
4306
  // Address changes clear the icon-opened flag (ADR 0013), except
4304
4307
  // an explicit `keepPanel` goToNav (AppLogo while open).
4305
4308
  navOpenedByUser: pathChanged && !keepPanel ? false : store.navOpenedByUser(),
@@ -4356,7 +4359,7 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
4356
4359
  }));
4357
4360
  };
4358
4361
  /**
4359
- * In-panel "up". Always changes the Address to the parent. Replaces, so
4362
+ * In-panel "up". Murl steps replace the Address, so
4360
4363
  * the browser back button still closes the whole panel. Leaving Murl
4361
4364
  * space (or stepping while icon-opened) keeps the panel open so the menu
4362
4365
  * follows the trail instead of closing (same exception as AppLogo).
@@ -4388,15 +4391,13 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
4388
4391
  });
4389
4392
  return;
4390
4393
  }
4391
- // Icon-opened over a page: "up" is the Url tree's own step.
4392
- const parent = parentNavId(untracked(() => store.id()));
4394
+ // Start above the menu actually shown: a leaf may already be showing
4395
+ // its ancestor's rows. Browsing that menu leaves the page in place.
4396
+ const owner = untracked(() => store.breadcrumb().header?.id);
4397
+ const parent = owner ? parentNavId(owner) : undefined;
4393
4398
  if (!parent)
4394
4399
  return;
4395
- patchState(store, {
4396
- navOpenedByUser: true,
4397
- keepPanelOnPathChange: true,
4398
- });
4399
- router.navigateByUrl(addressFor(parent), { replaceUrl: true });
4400
+ patchState(store, { menuNavId: visibleNavId(parent) });
4400
4401
  };
4401
4402
  const loadNav = rxMethod(pipe(filter((req) => !!req.navId), tap(() => untracked(() => patchState(store, { navLoading: true }))), switchMap$1(({ navId, appNavId }) => getNavService
4402
4403
  .getNav(navId, untracked(() => store.navMap()), {
@@ -6831,7 +6832,7 @@ class SectionFormItemComponent extends ConfigComponent {
6831
6832
  break;
6832
6833
  }
6833
6834
  case InputType.TOGGLE: {
6834
- const { ToggleInputComponent } = await import('./magmonium-one-toggle-CFYMEJcZ.mjs');
6835
+ const { ToggleInputComponent } = await import('./magmonium-one-toggle-CBL0kOQK.mjs');
6835
6836
  this.createDynamicComponent(seq, ToggleInputComponent, [], true);
6836
6837
  break;
6837
6838
  }
@@ -6843,12 +6844,12 @@ class SectionFormItemComponent extends ConfigComponent {
6843
6844
  break;
6844
6845
  }
6845
6846
  case InputType.PASSWORD: {
6846
- const { PasswordInputComponent } = await import('./magmonium-one-password-DUUhSEnp.mjs');
6847
+ const { PasswordInputComponent } = await import('./magmonium-one-password-BkILMyZy.mjs');
6847
6848
  this.createDynamicComponent(seq, PasswordInputComponent);
6848
6849
  break;
6849
6850
  }
6850
6851
  case InputType.OTP: {
6851
- const { OtpInputComponent } = await import('./magmonium-one-otp-COwJYVW6.mjs');
6852
+ const { OtpInputComponent } = await import('./magmonium-one-otp-BFeL75pI.mjs');
6852
6853
  this.createDynamicComponent(seq, OtpInputComponent);
6853
6854
  break;
6854
6855
  }
@@ -20403,7 +20404,7 @@ class WrapperInputComponent extends ConfigComponent {
20403
20404
  break;
20404
20405
  }
20405
20406
  case InputType.TOGGLE: {
20406
- const { ToggleInputComponent } = await import('./magmonium-one-toggle-CFYMEJcZ.mjs');
20407
+ const { ToggleInputComponent } = await import('./magmonium-one-toggle-CBL0kOQK.mjs');
20407
20408
  this.createDynamicComponent(seq, ToggleInputComponent, [], true);
20408
20409
  break;
20409
20410
  }
@@ -20415,12 +20416,12 @@ class WrapperInputComponent extends ConfigComponent {
20415
20416
  break;
20416
20417
  }
20417
20418
  case InputType.PASSWORD: {
20418
- const { PasswordInputComponent } = await import('./magmonium-one-password-DUUhSEnp.mjs');
20419
+ const { PasswordInputComponent } = await import('./magmonium-one-password-BkILMyZy.mjs');
20419
20420
  this.createDynamicComponent(seq, PasswordInputComponent);
20420
20421
  break;
20421
20422
  }
20422
20423
  case InputType.OTP: {
20423
- const { OtpInputComponent } = await import('./magmonium-one-otp-COwJYVW6.mjs');
20424
+ const { OtpInputComponent } = await import('./magmonium-one-otp-BFeL75pI.mjs');
20424
20425
  this.createDynamicComponent(seq, OtpInputComponent);
20425
20426
  break;
20426
20427
  }
@@ -21074,7 +21075,7 @@ var toggleRadio = /*#__PURE__*/Object.freeze({
21074
21075
  // Stand-ins for a card list that has no options yet — DesignMode only. They
21075
21076
  // carry no label: nothing is mapped to them yet, and a name shown here would
21076
21077
  // read as a choice the Field offers. Bare boxes say the shape and no more.
21077
- const DESIGN_STUB_IDS$2 = ['stub-1', 'stub-2', 'stub-3'];
21078
+ const DESIGN_STUB_IDS$1 = ['stub-1', 'stub-2', 'stub-3'];
21078
21079
  class SelectableCardInputComponent extends BaseInputComponent {
21079
21080
  element = input(...(ngDevMode ? [undefined, { debugName: "element" }] : /* istanbul ignore next */ []));
21080
21081
  data = input([], ...(ngDevMode ? [{ debugName: "data" }] : /* istanbul ignore next */ []));
@@ -21109,7 +21110,7 @@ class SelectableCardInputComponent extends BaseInputComponent {
21109
21110
  return data;
21110
21111
  const options = this.cardOptions();
21111
21112
  if (!options.length && this.isDesignMode) {
21112
- return DESIGN_STUB_IDS$2.map((id) => ({ id }));
21113
+ return DESIGN_STUB_IDS$1.map((id) => ({ id }));
21113
21114
  }
21114
21115
  return options.map((option) => ({
21115
21116
  id: option.value,
@@ -21724,10 +21725,17 @@ function getClassList$2(variant, orientation, config) {
21724
21725
  return classList.join(' ');
21725
21726
  }
21726
21727
 
21727
- // Stand-ins for a List whose collection is not bound yet — DesignMode only,
21728
- // the reason a SectionCarousel draws its own: an empty list has no height, and
21729
- // a Control with no rect cannot be selected or moved on a Canvas.
21730
- const DESIGN_STUB_IDS$1 = ['stub-1', 'stub-2', 'stub-3'];
21728
+ // The stand-in row a List draws on a Canvas — DesignMode only, and exactly
21729
+ // one however long the collection behind it will be. Every row of a List is
21730
+ // the same body drawn again, so a second stub shows nothing a first did not
21731
+ // and costs the author the vertical space they are laying out in (m-one-ui
21732
+ // CONTEXT.md ListControl).
21733
+ //
21734
+ // Drawn only once there is a body to draw. A List with no row template and no
21735
+ // row component is one the author has not filled yet, and it renders as the
21736
+ // empty box its own min-height gives it rather than as rows of invented text
21737
+ // — the state a RepeatControl is in before its source is picked.
21738
+ const DESIGN_STUB = { id: 'stub-1', label: 'Item 1' };
21731
21739
  // `toLength` only appends `em` to real numbers — a numeric string comes back
21732
21740
  // bare, yielding `gap: 2`. Design-editor text fields and YAML both hand over
21733
21741
  // strings, so narrow before converting (the FlexContainer's rule, ADR 0008:
@@ -21791,7 +21799,7 @@ class ListComponent extends ConfigComponent {
21791
21799
  return variant === 'ordered' ? 'counter' : 'bullet';
21792
21800
  }, ...(ngDevMode ? [{ debugName: "marker" }] : /* istanbul ignore next */ []));
21793
21801
  // A bound `data` wins over the authored `items`, and both win over the
21794
- // design stubs: what a caller passes at runtime is the more deliberate.
21802
+ // design stub: what a caller passes at runtime is the more deliberate.
21795
21803
  rows = computed(() => {
21796
21804
  const bound = this.data();
21797
21805
  if (bound?.length)
@@ -21801,26 +21809,36 @@ class ListComponent extends ConfigComponent {
21801
21809
  return authored.map(toItem);
21802
21810
  if (bound || authored)
21803
21811
  return [];
21804
- return this.isDesignMode
21805
- ? DESIGN_STUB_IDS$1.map((id, i) => ({ id, label: `Item ${i + 1}` }))
21806
- : [];
21812
+ // A body is what makes a stub worth drawing: without one the row would be
21813
+ // invented text standing in for nothing, where an empty box says exactly
21814
+ // what is true — this List has not been filled in yet.
21815
+ return this.isDesignMode && this.hasRowBody() ? [DESIGN_STUB] : [];
21807
21816
  }, ...(ngDevMode ? [{ debugName: "rows" }] : /* istanbul ignore next */ []));
21817
+ /** Whether a row has anything to render beyond its own `label`. */
21818
+ hasRowBody = computed(() => !!this.element() || !!this.rowTemplate(), ...(ngDevMode ? [{ debugName: "hasRowBody" }] : /* istanbul ignore next */ []));
21808
21819
  classNames = computed(() => getClassList$2(this.resolvedVariant(), this.resolvedOrientation(), this.config()), ...(ngDevMode ? [{ debugName: "classNames" }] : /* istanbul ignore next */ []));
21809
21820
  rowInputs = (item) => ({
21810
21821
  ...(item.inputs ?? {}),
21811
21822
  });
21812
21823
  projectedTemplate = contentChild((TemplateRef), ...(ngDevMode ? [{ debugName: "projectedTemplate" }] : /* istanbul ignore next */ []));
21813
21824
  rowTemplate = computed(() => this.template() ?? this.projectedTemplate(), ...(ngDevMode ? [{ debugName: "rowTemplate" }] : /* istanbul ignore next */ []));
21825
+ /**
21826
+ * What an inline row body reads. `row` falls back to the item itself, so a
21827
+ * row authored in the asset reaches the template the way a mapped one does:
21828
+ * an authored `ListItem` carries no `row` of its own, and a body reading
21829
+ * `undefined` would make the static source unusable to anything but a bare
21830
+ * label (m-one-ui CONTEXT.md ListControl).
21831
+ */
21814
21832
  rowContext = (item, index, first, last) => ({
21815
21833
  $implicit: item,
21816
21834
  item,
21817
- row: item.row,
21835
+ row: item.row ?? item,
21818
21836
  index,
21819
21837
  first,
21820
21838
  last,
21821
21839
  });
21822
21840
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ListComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
21823
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: ListComponent, isStandalone: true, selector: "m-list, m-one-list", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, element: { classPropertyName: "element", publicName: "element", isSignal: true, isRequired: false, transformFunction: null }, template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null }, gap: { classPropertyName: "gap", publicName: "gap", isSignal: true, isRequired: false, transformFunction: null }, startIcon: { classPropertyName: "startIcon", publicName: "startIcon", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, noTranslate: { classPropertyName: "noTranslate", publicName: "noTranslate", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.--m-list-gap": "resolvedGap()" }, classAttribute: "m-list" }, queries: [{ propertyName: "projectedTemplate", first: true, predicate: (TemplateRef), descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
21841
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: ListComponent, isStandalone: true, selector: "m-list, m-one-list", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, element: { classPropertyName: "element", publicName: "element", isSignal: true, isRequired: false, transformFunction: null }, template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null }, gap: { classPropertyName: "gap", publicName: "gap", isSignal: true, isRequired: false, transformFunction: null }, startIcon: { classPropertyName: "startIcon", publicName: "startIcon", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, noTranslate: { classPropertyName: "noTranslate", publicName: "noTranslate", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.is-design-mode": "isDesignMode", "style.--m-list-gap": "resolvedGap()" }, classAttribute: "m-list" }, queries: [{ propertyName: "projectedTemplate", first: true, predicate: (TemplateRef), descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
21824
21842
  <ng-template #rowList>
21825
21843
  @for (item of rows(); track item.id; let i = $index) {
21826
21844
  <li class="m-list__item">
@@ -21864,7 +21882,7 @@ class ListComponent extends ConfigComponent {
21864
21882
  <ng-container *ngTemplateOutlet="rowList" />
21865
21883
  </ul>
21866
21884
  }
21867
- `, 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%}.m-list__list{display:flex;gap:var(--m-list-gap, 0);margin:0;padding:0;list-style:none}.m-list__list--vertical{flex-direction:column}.m-list__list--horizontal{flex-direction:row;flex-wrap:wrap}.m-list__list.align-center{align-items:center}.m-list__list.align-right{align-items:flex-end}.m-list__item{display:flex;align-items:flex-start;gap:.5em;min-width:0}.m-list__marker{flex:0 0 auto;display:flex;align-items:center;color:var(--m-text-tertiary);line-height:inherit}.m-list__body{flex:1 1 auto;min-width:0}\n"], dependencies: [{ kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent, selector: "m-icon, m-one-icon", inputs: ["config", "name", "color", "size", "one", "baseUrl", "remote"], outputs: ["configChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21885
+ `, 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%}:host(.is-design-mode){min-height:4em}.m-list__list{display:flex;gap:var(--m-list-gap, 0);margin:0;padding:0;list-style:none}.m-list__list--vertical{flex-direction:column}.m-list__list--horizontal{flex-direction:row;flex-wrap:wrap}.m-list__list.align-center{align-items:center}.m-list__list.align-right{align-items:flex-end}.m-list__item{display:flex;align-items:flex-start;gap:.5em;min-width:0}.m-list__marker{flex:0 0 auto;display:flex;align-items:center;color:var(--m-text-tertiary);line-height:inherit}.m-list__body{flex:1 1 auto;min-width:0}\n"], dependencies: [{ kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent, selector: "m-icon, m-one-icon", inputs: ["config", "name", "color", "size", "one", "baseUrl", "remote"], outputs: ["configChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21868
21886
  }
21869
21887
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ListComponent, decorators: [{
21870
21888
  type: Component,
@@ -21914,8 +21932,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
21914
21932
  }
21915
21933
  `, changeDetection: ChangeDetectionStrategy.OnPush, host: {
21916
21934
  class: 'm-list',
21935
+ '[class.is-design-mode]': 'isDesignMode',
21917
21936
  '[style.--m-list-gap]': 'resolvedGap()',
21918
- }, 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-list__list{display:flex;gap:var(--m-list-gap, 0);margin:0;padding:0;list-style:none}.m-list__list--vertical{flex-direction:column}.m-list__list--horizontal{flex-direction:row;flex-wrap:wrap}.m-list__list.align-center{align-items:center}.m-list__list.align-right{align-items:flex-end}.m-list__item{display:flex;align-items:flex-start;gap:.5em;min-width:0}.m-list__marker{flex:0 0 auto;display:flex;align-items:center;color:var(--m-text-tertiary);line-height:inherit}.m-list__body{flex:1 1 auto;min-width:0}\n"] }]
21937
+ }, 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-design-mode){min-height:4em}.m-list__list{display:flex;gap:var(--m-list-gap, 0);margin:0;padding:0;list-style:none}.m-list__list--vertical{flex-direction:column}.m-list__list--horizontal{flex-direction:row;flex-wrap:wrap}.m-list__list.align-center{align-items:center}.m-list__list.align-right{align-items:flex-end}.m-list__item{display:flex;align-items:flex-start;gap:.5em;min-width:0}.m-list__marker{flex:0 0 auto;display:flex;align-items:center;color:var(--m-text-tertiary);line-height:inherit}.m-list__body{flex:1 1 auto;min-width:0}\n"] }]
21919
21938
  }], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], element: [{ type: i0.Input, args: [{ isSignal: true, alias: "element", required: false }] }], template: [{ type: i0.Input, args: [{ isSignal: true, alias: "template", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], orientation: [{ type: i0.Input, args: [{ isSignal: true, alias: "orientation", required: false }] }], gap: [{ type: i0.Input, args: [{ isSignal: true, alias: "gap", required: false }] }], startIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "startIcon", required: false }] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: false }] }], noTranslate: [{ type: i0.Input, args: [{ isSignal: true, alias: "noTranslate", required: false }] }], projectedTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => TemplateRef), { isSignal: true }] }] } });
21920
21939
 
21921
21940
  const TOTAL_COLUMNS = 12;
@@ -29154,7 +29173,7 @@ class NavHeaderComponent {
29154
29173
  _searchStore = inject(SearchStore);
29155
29174
  _isUser = computed(() => this._navStore.id() === `${ROOT_NAV$1}_user`, ...(ngDevMode ? [{ debugName: "_isUser" }] : /* istanbul ignore next */ []));
29156
29175
  _isSearch = computed(() => this._navStore.id() === `${ROOT_NAV$1}_search`, ...(ngDevMode ? [{ debugName: "_isSearch" }] : /* istanbul ignore next */ []));
29157
- _hasParent = computed(() => this._navStore.id() !== ROOT_NAV$1, ...(ngDevMode ? [{ debugName: "_hasParent" }] : /* istanbul ignore next */ []));
29176
+ _hasParent = computed(() => this._navStore.breadcrumb().header?.id !== ROOT_NAV$1, ...(ngDevMode ? [{ debugName: "_hasParent" }] : /* istanbul ignore next */ []));
29158
29177
  _trail = computed(() => {
29159
29178
  const trail = this._navStore.breadcrumb().trail;
29160
29179
  return trail && trail.length > 0 ? trail : null;
@@ -34796,4 +34815,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
34796
34815
  */
34797
34816
 
34798
34817
  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, provideMagWcConfig 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, mergePlatformNav as eA, mergeUnique as eB, mergeUniqueBy as eC, mergeUniqueWith as eD, minAgeValidation as eE, minLengthValidation as eF, minValidation as eG, miniMarkToHtml as eH, navIdChain as eI, navIdFor as eJ, navIdSegment as eK, navIdToRoutePath as eL, navIdToSegments as eM, navParamOf as eN, navToId as eO, normalizeAssetOptions as eP, parentNavId as eQ, parseAddress as eR, parseColor as eS, parsePatternNames as eT, patternValidation as eU, patternsValidation as eV, platformNavWidgets as eW, privateGuard as eX, processImageToSvg as eY, provideAppContext as eZ, provideMagAppConfig 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, isNavMenuConfig as ej, isNavRowsConfig as ek, isPlatformNavId as el, isSize as em, isTierPreview as en, isUrlLocalhost as eo, isValidNavId as ep, isValidNavSegment as eq, isWebComponent as er, linkToId as es, linkToNav as et, loadingActions as eu, mInterceptor as ev, manualValidation as ew, matchFieldValidation as ex, maxLengthValidation as ey, maxValidation as ez, AccordionBodyDirective as f, provideMagWcRoutes as f0, provideModalComponents as f1, provideMurlUrlSerializer as f2, provideNavWidgets as f3, provideOverlayWidgets as f4, providePlatformNavWidgets as f5, provideSearch as f6, provideSizeContext as f7, provideUserTabs as f8, publicGuard as f9, toggleTreeGridRow as fA, unfetchedPlatformNav as fB, urlValidation as fC, readFieldPatterns as fa, renderAddress as fb, requiredValidation as fc, resolveConfigAsset as fd, resolveIconSize as fe, resolvePallet as ff, resolvePatternRules as fg, resolveSize as fh, rgbToHex as fi, rgbToHsl as fj, rowHasChildren as fk, samePatterns as fl, segmentsToNavId as fm, setProperty as fn, setTreeGridChildren as fo, settingsWidgets as fp, shouldShowBadge as fq, splitNavId as fr, splitOnMatch as fs, stringToColor as ft, toAttrBool as fu, toAttrNumber as fv, toCssLength as fw, toHostNavId as fx, toLength$1 as fy, toLocalNavId 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 };
34799
- //# sourceMappingURL=magmonium-one-magmonium-one-C5whWXef.mjs.map
34818
+ //# sourceMappingURL=magmonium-one-magmonium-one-CMlCmB14.mjs.map