@magmonium/one 0.2.44 → 0.2.46
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.
- package/fesm2022/{magmonium-one-magmonium-one-CMlCmB14.mjs → magmonium-one-magmonium-one-5PPvzWJw.mjs} +196 -52
- package/fesm2022/magmonium-one-magmonium-one-5PPvzWJw.mjs.map +1 -0
- package/fesm2022/{magmonium-one-otp-BFeL75pI.mjs → magmonium-one-otp-Dq_hcKQI.mjs} +2 -2
- package/fesm2022/{magmonium-one-otp-BFeL75pI.mjs.map → magmonium-one-otp-Dq_hcKQI.mjs.map} +1 -1
- package/fesm2022/{magmonium-one-password-BkILMyZy.mjs → magmonium-one-password-CxT6pyYe.mjs} +2 -2
- package/fesm2022/{magmonium-one-password-BkILMyZy.mjs.map → magmonium-one-password-CxT6pyYe.mjs.map} +1 -1
- package/fesm2022/{magmonium-one-toggle-CBL0kOQK.mjs → magmonium-one-toggle-CItqq_8b.mjs} +2 -2
- package/fesm2022/{magmonium-one-toggle-CBL0kOQK.mjs.map → magmonium-one-toggle-CItqq_8b.mjs.map} +1 -1
- package/fesm2022/magmonium-one.mjs +1 -1
- package/package.json +1 -1
- package/types/magmonium-one.d.ts +60 -3
- package/fesm2022/magmonium-one-magmonium-one-CMlCmB14.mjs.map +0 -1
|
@@ -3422,6 +3422,9 @@ function isNavMenuConfig(entry) {
|
|
|
3422
3422
|
function isNavRowsConfig(entry) {
|
|
3423
3423
|
return typeof entry === 'object' && 'navRows' in entry;
|
|
3424
3424
|
}
|
|
3425
|
+
function isNavInstanceConfig(entry) {
|
|
3426
|
+
return typeof entry === 'object' && 'navInstance' in entry;
|
|
3427
|
+
}
|
|
3425
3428
|
/**
|
|
3426
3429
|
* Multi-provided, and resolved **last-wins**: the library provides its own
|
|
3427
3430
|
* Platform Nav panels first so an app registering at the same NavId replaces
|
|
@@ -3649,15 +3652,18 @@ const emptyResult = () => ({
|
|
|
3649
3652
|
* chooses a link kind (ADR 0014).
|
|
3650
3653
|
*/
|
|
3651
3654
|
const toTrailItem = (navId, navMap, anchor,
|
|
3652
|
-
/**
|
|
3653
|
-
label
|
|
3655
|
+
/**
|
|
3656
|
+
* A dynamic node standing on an instance reads that instance's own label and
|
|
3657
|
+
* icon — resolved by a NavInstanceSource, or matched off the rows.
|
|
3658
|
+
*/
|
|
3659
|
+
resolved,
|
|
3654
3660
|
/** ...and carries that instance, so following the entry keeps it. */
|
|
3655
3661
|
navParams) => {
|
|
3656
3662
|
const nav = navMap[navId];
|
|
3657
3663
|
return {
|
|
3658
3664
|
id: navId,
|
|
3659
|
-
label: label ?? nav?.title ?? navIdSegment(navId),
|
|
3660
|
-
icon: nav?.icon,
|
|
3665
|
+
label: resolved?.label ?? nav?.title ?? navIdSegment(navId),
|
|
3666
|
+
icon: resolved?.icon ?? nav?.icon,
|
|
3661
3667
|
nav: navId,
|
|
3662
3668
|
...(navParams ? { navParams } : {}),
|
|
3663
3669
|
address: renderAddress(navId, navMap, anchor, navParams),
|
|
@@ -3669,8 +3675,12 @@ navParams) => {
|
|
|
3669
3675
|
* rides alongside as the param this Nav declared, which is what `renderAddress`
|
|
3670
3676
|
* fills. `id` carries the value only so the list has stable keys.
|
|
3671
3677
|
*/
|
|
3672
|
-
const navRowTrailItem = (navId, nav, row, navMap, anchor
|
|
3673
|
-
|
|
3678
|
+
const navRowTrailItem = (navId, nav, row, navMap, anchor,
|
|
3679
|
+
/** The instances the dynamic Navs *above* this one are standing on — a
|
|
3680
|
+
* dynamic Nav filed under another routes behind both params, and a row that
|
|
3681
|
+
* carried only its own left the one above it unfilled. */
|
|
3682
|
+
inherited) => {
|
|
3683
|
+
const navParams = { ...inherited, [navParamOf(nav)]: row.value };
|
|
3674
3684
|
return {
|
|
3675
3685
|
id: `${navId}${NAV_ID_SEP}${row.value}`,
|
|
3676
3686
|
label: row.label,
|
|
@@ -3683,6 +3693,30 @@ const navRowTrailItem = (navId, nav, row, navMap, anchor) => {
|
|
|
3683
3693
|
address: renderAddress(navId, navMap, anchor, navParams),
|
|
3684
3694
|
};
|
|
3685
3695
|
};
|
|
3696
|
+
/**
|
|
3697
|
+
* Every dynamic Nav on the way to `navId`, paired with the instance the Router
|
|
3698
|
+
* is standing on. A `static` Nav filed *under* a dynamic one is a real place —
|
|
3699
|
+
* `book/:isbn/reviews` — but its Address cannot be rendered from identity
|
|
3700
|
+
* alone: the segment above it is data, so the row would link at `:isbn`
|
|
3701
|
+
* unfilled and match no route. Read off the Router rather than the resolved
|
|
3702
|
+
* rows, the same reason `rowParams` is: the value is known before any source
|
|
3703
|
+
* has answered (CONTEXT.md NavPresentation).
|
|
3704
|
+
*/
|
|
3705
|
+
const navParamsFor = (navId, navMap, routeParams) => {
|
|
3706
|
+
if (!routeParams)
|
|
3707
|
+
return undefined;
|
|
3708
|
+
const params = {};
|
|
3709
|
+
for (const id of navIdChain(navId)) {
|
|
3710
|
+
const nav = navMap[id];
|
|
3711
|
+
if (nav?.presentation !== 'dynamic')
|
|
3712
|
+
continue;
|
|
3713
|
+
const param = navParamOf(nav);
|
|
3714
|
+
const value = routeParams[param];
|
|
3715
|
+
if (value !== undefined)
|
|
3716
|
+
params[param] = value;
|
|
3717
|
+
}
|
|
3718
|
+
return Object.keys(params).length ? params : undefined;
|
|
3719
|
+
};
|
|
3686
3720
|
/** A Nav that *is* its parent's own content rather than a place beside it. */
|
|
3687
3721
|
const isDefaultNav = (navId) => navIdSegment(navId) === DEFAULT_NAV_SEGMENT;
|
|
3688
3722
|
/**
|
|
@@ -3736,12 +3770,19 @@ const drawsRows = (childId, dynamicRows) => {
|
|
|
3736
3770
|
const resolved = dynamicRows[childId];
|
|
3737
3771
|
return !!resolved && (resolved.rows.length > 0 || !!resolved.loading);
|
|
3738
3772
|
};
|
|
3739
|
-
const menuChildIds = (navId, navMap, dynamicRows = {}) => childIdsOf(navId, navMap).flatMap((childId) => {
|
|
3773
|
+
const menuChildIds = (navId, navMap, dynamicRows = {}, instances = {}) => childIdsOf(navId, navMap).flatMap((childId) => {
|
|
3740
3774
|
if (isDefaultNav(childId))
|
|
3741
|
-
return menuChildIds(childId, navMap, dynamicRows);
|
|
3742
|
-
if (navMap[childId]?.presentation === 'dynamic'
|
|
3743
|
-
drawsRows(childId, dynamicRows))
|
|
3744
|
-
|
|
3775
|
+
return menuChildIds(childId, navMap, dynamicRows, instances);
|
|
3776
|
+
if (navMap[childId]?.presentation === 'dynamic') {
|
|
3777
|
+
if (drawsRows(childId, dynamicRows))
|
|
3778
|
+
return [childId];
|
|
3779
|
+
// A NavInstanceSource and no rows is the fourth state (ADR 0030): the
|
|
3780
|
+
// node is resolved *while standing on it* and is not a place to be sent
|
|
3781
|
+
// to, because its own row could only link at `:<param>` unfilled — a
|
|
3782
|
+
// link that matches no route, which is the panel that looks correct and
|
|
3783
|
+
// is not.
|
|
3784
|
+
if (childId in instances)
|
|
3785
|
+
return [];
|
|
3745
3786
|
}
|
|
3746
3787
|
return navMap[childId]?.title ? [childId] : [];
|
|
3747
3788
|
});
|
|
@@ -3752,9 +3793,10 @@ const menuChildIds = (navId, navMap, dynamicRows = {}) => childIdsOf(navId, navM
|
|
|
3752
3793
|
* list the User moved through and the row they are on is the one marked
|
|
3753
3794
|
* active. Root is the floor: its own children are the last list there is.
|
|
3754
3795
|
*/
|
|
3755
|
-
const navMenuOwnerId = (navId, navMap, hasOwnContent = false, dynamicRows = {}) => {
|
|
3796
|
+
const navMenuOwnerId = (navId, navMap, hasOwnContent = false, dynamicRows = {}, instances = {}) => {
|
|
3756
3797
|
const visible = visibleNavId(navId);
|
|
3757
|
-
if (visible === ROOT_NAV$1 ||
|
|
3798
|
+
if (visible === ROOT_NAV$1 ||
|
|
3799
|
+
menuChildIds(visible, navMap, dynamicRows, instances).length) {
|
|
3758
3800
|
return visible;
|
|
3759
3801
|
}
|
|
3760
3802
|
// A panel that answers with a widget of its own keeps its own title —
|
|
@@ -3769,7 +3811,7 @@ const navMenuOwnerId = (navId, navMap, hasOwnContent = false, dynamicRows = {})
|
|
|
3769
3811
|
// than the one we are on — a mistitled empty panel is worse than a titled one.
|
|
3770
3812
|
for (let ancestor = parentNavId(visible); ancestor; ancestor = parentNavId(ancestor)) {
|
|
3771
3813
|
const owner = visibleNavId(ancestor);
|
|
3772
|
-
if (menuChildIds(owner, navMap, dynamicRows).length)
|
|
3814
|
+
if (menuChildIds(owner, navMap, dynamicRows, instances).length)
|
|
3773
3815
|
return owner;
|
|
3774
3816
|
if (owner === ROOT_NAV$1)
|
|
3775
3817
|
break;
|
|
@@ -3789,13 +3831,19 @@ const navMenuOwnerId = (navId, navMap, hasOwnContent = false, dynamicRows = {})
|
|
|
3789
3831
|
* falling through to the static siblings around it would show a panel that
|
|
3790
3832
|
* looks correct and is not.
|
|
3791
3833
|
*/
|
|
3792
|
-
const buildNavMenus = (navId, navMap, anchor, dynamicRows = {}) => menuChildIds(navId, navMap, dynamicRows).flatMap((childId) => {
|
|
3834
|
+
const buildNavMenus = (navId, navMap, anchor, dynamicRows = {}, routeParams, instances = {}) => menuChildIds(navId, navMap, dynamicRows, instances).flatMap((childId) => {
|
|
3793
3835
|
const nav = navMap[childId];
|
|
3794
3836
|
const resolved = nav && dynamicRows[childId];
|
|
3837
|
+
// The instances above this row, whether it is a row of its own or one of
|
|
3838
|
+
// the rows a source resolved: a panel drawn beneath a dynamic Nav is a
|
|
3839
|
+
// panel every entry in it routes behind.
|
|
3840
|
+
const inherited = navParamsFor(parentNavId(childId) ?? childId, navMap, routeParams);
|
|
3795
3841
|
if (!nav || nav.presentation !== 'dynamic' || !resolved) {
|
|
3796
|
-
return [
|
|
3842
|
+
return [
|
|
3843
|
+
toTrailItem(childId, navMap, anchor, undefined, navParamsFor(childId, navMap, routeParams)),
|
|
3844
|
+
];
|
|
3797
3845
|
}
|
|
3798
|
-
return resolved.rows.map((row) => navRowTrailItem(childId, nav, row, navMap, anchor));
|
|
3846
|
+
return resolved.rows.map((row) => navRowTrailItem(childId, nav, row, navMap, anchor, inherited));
|
|
3799
3847
|
});
|
|
3800
3848
|
/**
|
|
3801
3849
|
* Merges a widget's emitted trail over the derived one, matching by depth.
|
|
@@ -3811,43 +3859,56 @@ const mergeTrail = (derived, override, derivedHeader) => {
|
|
|
3811
3859
|
return { trail, header: override.header ?? derivedHeader };
|
|
3812
3860
|
};
|
|
3813
3861
|
function deriveBreadcrumb(params) {
|
|
3814
|
-
const { navId, navMap, anchor, breadcrumb, navMenu, hasOwnContent, dynamicRows, routeParams, } = params;
|
|
3862
|
+
const { navId, navMap, anchor, breadcrumb, navMenu, hasOwnContent, dynamicRows, routeParams, instances, } = params;
|
|
3815
3863
|
if (!navId)
|
|
3816
3864
|
return emptyResult();
|
|
3817
3865
|
/**
|
|
3818
|
-
* The
|
|
3819
|
-
*
|
|
3820
|
-
*
|
|
3821
|
-
*
|
|
3822
|
-
*
|
|
3866
|
+
* The instance a dynamic node wears while the User stands on one, and the
|
|
3867
|
+
* two ways it is answered.
|
|
3868
|
+
*
|
|
3869
|
+
* A **NavInstanceSource wins outright** where one is registered — the key is
|
|
3870
|
+
* present in `instances` whether or not it resolved (ADR 0030). Letting a
|
|
3871
|
+
* row match win when the instance happened to be in the loaded page of rows
|
|
3872
|
+
* would label one node by two mechanisms depending on what the menu had
|
|
3873
|
+
* fetched, which is the panel that looks correct and is not.
|
|
3874
|
+
*
|
|
3875
|
+
* Unresolved under a source is the **raw parameter value**: an id names the
|
|
3876
|
+
* right thing badly, where the node's title (`app`) names the wrong thing
|
|
3877
|
+
* well, and the second is the answer a User cannot tell from a bug.
|
|
3878
|
+
*
|
|
3879
|
+
* With no source at all this is the row match it has always been, falling
|
|
3880
|
+
* through to the node's own title — a deep link that arrived before the rows
|
|
3881
|
+
* did, or a row since gone.
|
|
3823
3882
|
*/
|
|
3824
|
-
const
|
|
3883
|
+
const instanceOf = (id) => {
|
|
3825
3884
|
const nav = navMap[id];
|
|
3826
3885
|
if (nav?.presentation !== 'dynamic')
|
|
3827
3886
|
return undefined;
|
|
3828
3887
|
const value = routeParams?.[navParamOf(nav)];
|
|
3829
3888
|
if (!value)
|
|
3830
3889
|
return undefined;
|
|
3831
|
-
|
|
3890
|
+
if (instances && id in instances) {
|
|
3891
|
+
const resolved = instances[id];
|
|
3892
|
+
return resolved
|
|
3893
|
+
? { label: resolved.label, icon: resolved.icon }
|
|
3894
|
+
: { label: value };
|
|
3895
|
+
}
|
|
3896
|
+
const row = dynamicRows?.[id]?.rows.find((r) => r.value === value);
|
|
3897
|
+
return row ? { label: row.label, icon: row.icon } : undefined;
|
|
3832
3898
|
};
|
|
3833
3899
|
/**
|
|
3834
|
-
* The
|
|
3835
|
-
*
|
|
3836
|
-
*
|
|
3837
|
-
*
|
|
3900
|
+
* The instances an entry routes behind — its own when it is a dynamic node,
|
|
3901
|
+
* and every dynamic ancestor's besides, so a `static` Nav filed under one
|
|
3902
|
+
* keeps the segment above it filled. Read off the Router rather than the
|
|
3903
|
+
* rows: the entry has to keep pointing at the page the User is on even
|
|
3904
|
+
* before a source has answered, and a NavRef with no param renders `:id`
|
|
3905
|
+
* unfilled.
|
|
3838
3906
|
*/
|
|
3839
|
-
const rowParams = (id) =>
|
|
3840
|
-
const nav = navMap[id];
|
|
3841
|
-
if (nav?.presentation !== 'dynamic')
|
|
3842
|
-
return undefined;
|
|
3843
|
-
const param = navParamOf(nav);
|
|
3844
|
-
const value = routeParams?.[param];
|
|
3845
|
-
return value ? { [param]: value } : undefined;
|
|
3846
|
-
};
|
|
3907
|
+
const rowParams = (id) => navParamsFor(id, navMap, routeParams);
|
|
3847
3908
|
// The header and the trail belong to whichever Nav owns the menu below them:
|
|
3848
3909
|
// on a leaf that is the parent, so the User reads the list they are in with
|
|
3849
3910
|
// their own row marked, rather than a title over an empty panel.
|
|
3850
|
-
const ownerId = navMenuOwnerId(navId, navMap, hasOwnContent, dynamicRows);
|
|
3911
|
+
const ownerId = navMenuOwnerId(navId, navMap, hasOwnContent, dynamicRows, instances);
|
|
3851
3912
|
// An emitted breadcrumb names the panel it was emitted for. Once the panel
|
|
3852
3913
|
// has been handed up to an ancestor it is no longer that panel, so the
|
|
3853
3914
|
// override would title the ancestor's list after the leaf we left.
|
|
@@ -3856,15 +3917,16 @@ function deriveBreadcrumb(params) {
|
|
|
3856
3917
|
const derivedTrail = chain
|
|
3857
3918
|
.slice(0, -1)
|
|
3858
3919
|
.filter((id) => !isDefaultNav(id))
|
|
3859
|
-
.map((id) => toTrailItem(id, navMap, anchor,
|
|
3920
|
+
.map((id) => toTrailItem(id, navMap, anchor, instanceOf(id), rowParams(id)));
|
|
3860
3921
|
const nav = navMap[ownerId];
|
|
3861
3922
|
const ownerParams = rowParams(ownerId);
|
|
3923
|
+
const ownerInstance = instanceOf(ownerId);
|
|
3862
3924
|
const derivedHeader = {
|
|
3863
3925
|
id: ownerId,
|
|
3864
|
-
label:
|
|
3926
|
+
label: ownerInstance?.label ??
|
|
3865
3927
|
nav?.title ??
|
|
3866
3928
|
(ownerId === ROOT_NAV$1 ? '' : navIdSegment(ownerId)),
|
|
3867
|
-
icon: nav?.icon,
|
|
3929
|
+
icon: ownerInstance?.icon ?? nav?.icon,
|
|
3868
3930
|
nav: ownerId,
|
|
3869
3931
|
...(ownerParams ? { navParams: ownerParams } : {}),
|
|
3870
3932
|
address: renderAddress(ownerId, navMap, anchor, ownerParams),
|
|
@@ -3876,7 +3938,7 @@ function deriveBreadcrumb(params) {
|
|
|
3876
3938
|
breadcrumb: { trail, header },
|
|
3877
3939
|
navMenus: navMenu?.length && ownPanel
|
|
3878
3940
|
? navMenu
|
|
3879
|
-
: buildNavMenus(ownerId, navMap, anchor, dynamicRows),
|
|
3941
|
+
: buildNavMenus(ownerId, navMap, anchor, dynamicRows, routeParams, instances),
|
|
3880
3942
|
};
|
|
3881
3943
|
}
|
|
3882
3944
|
|
|
@@ -4127,6 +4189,55 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
|
|
|
4127
4189
|
}
|
|
4128
4190
|
return out;
|
|
4129
4191
|
}, ...(ngDevMode ? [{ debugName: "dynamicRows" }] : /* istanbul ignore next */ []));
|
|
4192
|
+
/**
|
|
4193
|
+
* Every `dynamic` Nav with a NavInstanceSource behind it, resolved against
|
|
4194
|
+
* the parameters the Router currently holds (ADR 0030). The whole
|
|
4195
|
+
* `routeParams` record goes in, not just this Nav's own value: a resolver
|
|
4196
|
+
* for an issue is routinely a lookup keyed by the book above it, and the
|
|
4197
|
+
* design tool binds arguments by parameter name.
|
|
4198
|
+
*
|
|
4199
|
+
* The **key is written whether or not the resolver answered**, because
|
|
4200
|
+
* presence of the key is the registration — it is what hides the node in
|
|
4201
|
+
* its parent's panel and what makes an unresolved instance render the raw
|
|
4202
|
+
* id rather than the node's title.
|
|
4203
|
+
*/
|
|
4204
|
+
const dynamicInstances = computed(() => {
|
|
4205
|
+
const out = {};
|
|
4206
|
+
const params = store.routeParams();
|
|
4207
|
+
for (const nav of Object.values(store.navMap())) {
|
|
4208
|
+
if (nav.presentation !== 'dynamic')
|
|
4209
|
+
continue;
|
|
4210
|
+
const hit = entryAt(nav.navId);
|
|
4211
|
+
if (!hit || !isNavInstanceConfig(hit.entry))
|
|
4212
|
+
continue;
|
|
4213
|
+
out[nav.navId] = hit.entry.navInstance(params);
|
|
4214
|
+
}
|
|
4215
|
+
return out;
|
|
4216
|
+
}, ...(ngDevMode ? [{ debugName: "dynamicInstances" }] : /* istanbul ignore next */ []));
|
|
4217
|
+
/**
|
|
4218
|
+
* The load each registered NavInstanceSource offers, paired with the value
|
|
4219
|
+
* of the parameter it resolves. Exposed rather than fired here: calling a
|
|
4220
|
+
* store method from inside a `computed` writes state during a read, and
|
|
4221
|
+
* the re-fire rule is about a value *changing*, which a computed has no
|
|
4222
|
+
* way to say.
|
|
4223
|
+
*/
|
|
4224
|
+
const instanceLoaders = computed(() => {
|
|
4225
|
+
const params = store.routeParams();
|
|
4226
|
+
const out = [];
|
|
4227
|
+
for (const nav of Object.values(store.navMap())) {
|
|
4228
|
+
if (nav.presentation !== 'dynamic')
|
|
4229
|
+
continue;
|
|
4230
|
+
const hit = entryAt(nav.navId);
|
|
4231
|
+
if (!hit || !isNavInstanceConfig(hit.entry))
|
|
4232
|
+
continue;
|
|
4233
|
+
const load = hit.entry.navInstanceLoad;
|
|
4234
|
+
const value = params[navParamOf(nav)];
|
|
4235
|
+
if (!load || !value)
|
|
4236
|
+
continue;
|
|
4237
|
+
out.push({ navId: nav.navId, value, params, load });
|
|
4238
|
+
}
|
|
4239
|
+
return out;
|
|
4240
|
+
}, ...(ngDevMode ? [{ debugName: "instanceLoaders" }] : /* istanbul ignore next */ []));
|
|
4130
4241
|
const resolvedWidget = computed(() => {
|
|
4131
4242
|
const hit = widgetEntry();
|
|
4132
4243
|
// Neither of the two row-shaped entries fills a panel with a component:
|
|
@@ -4135,7 +4246,15 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
|
|
|
4135
4246
|
// neither.
|
|
4136
4247
|
if (!hit || isNavMenuConfig(hit.entry) || isNavRowsConfig(hit.entry))
|
|
4137
4248
|
return null;
|
|
4138
|
-
|
|
4249
|
+
// A NavInstanceConfig is not tested for the same way, because it is the
|
|
4250
|
+
// one entry that legitimately shares an object with a panel: a dynamic
|
|
4251
|
+
// Nav with a `screen` row source and an instance source registers both
|
|
4252
|
+
// keys at once. What disqualifies an entry is therefore having no
|
|
4253
|
+
// `content`, not having a `navInstance` (ADR 0030).
|
|
4254
|
+
const entry = hit.entry;
|
|
4255
|
+
if (typeof entry !== 'function' && !('content' in entry))
|
|
4256
|
+
return null;
|
|
4257
|
+
const config = normalizeNavWidgetEntry(entry);
|
|
4139
4258
|
if (!config.content)
|
|
4140
4259
|
return null;
|
|
4141
4260
|
if (!hit.remote)
|
|
@@ -4169,7 +4288,7 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
|
|
|
4169
4288
|
const map = store.navMap();
|
|
4170
4289
|
const candidates = widgetNavIds();
|
|
4171
4290
|
const rows = dynamicRows();
|
|
4172
|
-
return (candidates.find((c) => menuChildIds(c, map, rows).length) ??
|
|
4291
|
+
return (candidates.find((c) => menuChildIds(c, map, rows, dynamicInstances()).length) ??
|
|
4173
4292
|
// A leaf nothing is registered for is still a Nav the tree knows, and
|
|
4174
4293
|
// that is where the panel belongs: `|settings|app` with no widget hands
|
|
4175
4294
|
// the panel back to *settings*, whose row it is, rather than climbing
|
|
@@ -4186,6 +4305,7 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
|
|
|
4186
4305
|
navMap: store.navMap(),
|
|
4187
4306
|
anchor: { navId: store.routeNavId() ?? ROOT_NAV$1, path: store.path() },
|
|
4188
4307
|
dynamicRows: dynamicRows(),
|
|
4308
|
+
instances: dynamicInstances(),
|
|
4189
4309
|
routeParams: store.routeParams(),
|
|
4190
4310
|
breadcrumb: menuConfig?.breadcramb?.() ??
|
|
4191
4311
|
(typeof widgetConfig?.breadcramb === 'function'
|
|
@@ -4231,6 +4351,7 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
|
|
|
4231
4351
|
navHasContent,
|
|
4232
4352
|
currentWcConfig,
|
|
4233
4353
|
resolvedNavMenuConfig,
|
|
4354
|
+
instanceLoaders,
|
|
4234
4355
|
};
|
|
4235
4356
|
}), withMethods((store) => {
|
|
4236
4357
|
const getNavService = inject(GetNavService);
|
|
@@ -4446,6 +4567,29 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
|
|
|
4446
4567
|
return {
|
|
4447
4568
|
onInit() {
|
|
4448
4569
|
store.syncFromRouter(store.navigationEnd);
|
|
4570
|
+
/**
|
|
4571
|
+
* Fires each NavInstanceSource's load when the value of the parameter
|
|
4572
|
+
* it resolves **changes**, and not otherwise (ADR 0030). Moving between
|
|
4573
|
+
* `/app/a1/about` and `/app/a1/settings` changes no instance, so it
|
|
4574
|
+
* fires nothing; `/app/a1` to `/app/a2` fires once.
|
|
4575
|
+
*
|
|
4576
|
+
* The last value is remembered per NavId rather than compared against
|
|
4577
|
+
* the resolver's own output: gating on "the resolver has not answered"
|
|
4578
|
+
* would never refresh a name that has gone stale, and would make the
|
|
4579
|
+
* trigger depend on the thing it triggers.
|
|
4580
|
+
*/
|
|
4581
|
+
const firedFor = new Map();
|
|
4582
|
+
effect(() => {
|
|
4583
|
+
const loaders = store.instanceLoaders();
|
|
4584
|
+
untracked(() => {
|
|
4585
|
+
for (const { navId, value, params, load } of loaders) {
|
|
4586
|
+
if (firedFor.get(navId) === value)
|
|
4587
|
+
continue;
|
|
4588
|
+
firedFor.set(navId, value);
|
|
4589
|
+
load(params);
|
|
4590
|
+
}
|
|
4591
|
+
});
|
|
4592
|
+
});
|
|
4449
4593
|
store.loadNav(computed(() => ({
|
|
4450
4594
|
navId: store.id(),
|
|
4451
4595
|
appNavId: store.appNavId(),
|
|
@@ -6832,7 +6976,7 @@ class SectionFormItemComponent extends ConfigComponent {
|
|
|
6832
6976
|
break;
|
|
6833
6977
|
}
|
|
6834
6978
|
case InputType.TOGGLE: {
|
|
6835
|
-
const { ToggleInputComponent } = await import('./magmonium-one-toggle-
|
|
6979
|
+
const { ToggleInputComponent } = await import('./magmonium-one-toggle-CItqq_8b.mjs');
|
|
6836
6980
|
this.createDynamicComponent(seq, ToggleInputComponent, [], true);
|
|
6837
6981
|
break;
|
|
6838
6982
|
}
|
|
@@ -6844,12 +6988,12 @@ class SectionFormItemComponent extends ConfigComponent {
|
|
|
6844
6988
|
break;
|
|
6845
6989
|
}
|
|
6846
6990
|
case InputType.PASSWORD: {
|
|
6847
|
-
const { PasswordInputComponent } = await import('./magmonium-one-password-
|
|
6991
|
+
const { PasswordInputComponent } = await import('./magmonium-one-password-CxT6pyYe.mjs');
|
|
6848
6992
|
this.createDynamicComponent(seq, PasswordInputComponent);
|
|
6849
6993
|
break;
|
|
6850
6994
|
}
|
|
6851
6995
|
case InputType.OTP: {
|
|
6852
|
-
const { OtpInputComponent } = await import('./magmonium-one-otp-
|
|
6996
|
+
const { OtpInputComponent } = await import('./magmonium-one-otp-Dq_hcKQI.mjs');
|
|
6853
6997
|
this.createDynamicComponent(seq, OtpInputComponent);
|
|
6854
6998
|
break;
|
|
6855
6999
|
}
|
|
@@ -20404,7 +20548,7 @@ class WrapperInputComponent extends ConfigComponent {
|
|
|
20404
20548
|
break;
|
|
20405
20549
|
}
|
|
20406
20550
|
case InputType.TOGGLE: {
|
|
20407
|
-
const { ToggleInputComponent } = await import('./magmonium-one-toggle-
|
|
20551
|
+
const { ToggleInputComponent } = await import('./magmonium-one-toggle-CItqq_8b.mjs');
|
|
20408
20552
|
this.createDynamicComponent(seq, ToggleInputComponent, [], true);
|
|
20409
20553
|
break;
|
|
20410
20554
|
}
|
|
@@ -20416,12 +20560,12 @@ class WrapperInputComponent extends ConfigComponent {
|
|
|
20416
20560
|
break;
|
|
20417
20561
|
}
|
|
20418
20562
|
case InputType.PASSWORD: {
|
|
20419
|
-
const { PasswordInputComponent } = await import('./magmonium-one-password-
|
|
20563
|
+
const { PasswordInputComponent } = await import('./magmonium-one-password-CxT6pyYe.mjs');
|
|
20420
20564
|
this.createDynamicComponent(seq, PasswordInputComponent);
|
|
20421
20565
|
break;
|
|
20422
20566
|
}
|
|
20423
20567
|
case InputType.OTP: {
|
|
20424
|
-
const { OtpInputComponent } = await import('./magmonium-one-otp-
|
|
20568
|
+
const { OtpInputComponent } = await import('./magmonium-one-otp-Dq_hcKQI.mjs');
|
|
20425
20569
|
this.createDynamicComponent(seq, OtpInputComponent);
|
|
20426
20570
|
break;
|
|
20427
20571
|
}
|
|
@@ -34814,5 +34958,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
34814
34958
|
* Generated bundle index. Do not edit.
|
|
34815
34959
|
*/
|
|
34816
34960
|
|
|
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,
|
|
34818
|
-
//# sourceMappingURL=magmonium-one-magmonium-one-
|
|
34961
|
+
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 };
|
|
34962
|
+
//# sourceMappingURL=magmonium-one-magmonium-one-5PPvzWJw.mjs.map
|