@magmonium/one 0.2.44 → 0.2.47
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-IbM56bN9.mjs} +211 -53
- package/fesm2022/magmonium-one-magmonium-one-IbM56bN9.mjs.map +1 -0
- package/fesm2022/{magmonium-one-otp-BFeL75pI.mjs → magmonium-one-otp-B_s_yv6h.mjs} +2 -2
- package/fesm2022/{magmonium-one-otp-BFeL75pI.mjs.map → magmonium-one-otp-B_s_yv6h.mjs.map} +1 -1
- package/fesm2022/{magmonium-one-password-BkILMyZy.mjs → magmonium-one-password-BPHpE0Y5.mjs} +2 -2
- package/fesm2022/{magmonium-one-password-BkILMyZy.mjs.map → magmonium-one-password-BPHpE0Y5.mjs.map} +1 -1
- package/fesm2022/{magmonium-one-toggle-CBL0kOQK.mjs → magmonium-one-toggle-DzQFBc6i.mjs} +2 -2
- package/fesm2022/{magmonium-one-toggle-CBL0kOQK.mjs.map → magmonium-one-toggle-DzQFBc6i.mjs.map} +1 -1
- package/fesm2022/magmonium-one.mjs +1 -1
- package/package.json +1 -1
- package/types/magmonium-one.d.ts +70 -3
- package/fesm2022/magmonium-one-magmonium-one-CMlCmB14.mjs.map +0 -1
|
@@ -3285,6 +3285,16 @@ const navIdToRoutePath = (navId, navMap) => {
|
|
|
3285
3285
|
* Renders the Address for a NavId. The Url part is taken from `anchorPath`
|
|
3286
3286
|
* when the target is anchored to where we already stand — that is the only
|
|
3287
3287
|
* way a dynamic segment's real value (`abc123`, not `:id`) can appear.
|
|
3288
|
+
*
|
|
3289
|
+
* A Murl opens *over* the page it was opened from, so the Anchor also holds
|
|
3290
|
+
* when we stand **below** the target's Url part: `root_search` is anchored at
|
|
3291
|
+
* `root`, and clicking it from `/a/b/c` must address `/a/b/c|search` rather
|
|
3292
|
+
* than collapsing the location to `/|search` — the panel is chrome over a
|
|
3293
|
+
* place, not a place of its own (ADR 0013). Closing it then returns to the
|
|
3294
|
+
* page it covered instead of stranding the User on the landing route.
|
|
3295
|
+
*
|
|
3296
|
+
* Only for a Murl: a pure Url target below which we happen to stand is a real
|
|
3297
|
+
* navigation, and keeping the deeper path there would make the click a no-op.
|
|
3288
3298
|
*/
|
|
3289
3299
|
const renderAddress = (navId, navMap, anchor,
|
|
3290
3300
|
/**
|
|
@@ -3295,7 +3305,11 @@ const renderAddress = (navId, navMap, anchor,
|
|
|
3295
3305
|
params) => {
|
|
3296
3306
|
const { url, murl } = splitNavId(navId, navMap);
|
|
3297
3307
|
const urlNavId = url.join(NAV_ID_SEP) || ROOT_NAV$1;
|
|
3298
|
-
const path = anchor &&
|
|
3308
|
+
const path = anchor &&
|
|
3309
|
+
!params &&
|
|
3310
|
+
(anchor.navId === urlNavId ||
|
|
3311
|
+
(murl.length > 0 &&
|
|
3312
|
+
anchor.navId.startsWith(`${urlNavId}${NAV_ID_SEP}`)))
|
|
3299
3313
|
? anchor.path
|
|
3300
3314
|
: fillParams(navIdToRoutePath(urlNavId, navMap), params);
|
|
3301
3315
|
// Always keeps the leading `/`: a bare `|search` is a *relative* URL and
|
|
@@ -3422,6 +3436,9 @@ function isNavMenuConfig(entry) {
|
|
|
3422
3436
|
function isNavRowsConfig(entry) {
|
|
3423
3437
|
return typeof entry === 'object' && 'navRows' in entry;
|
|
3424
3438
|
}
|
|
3439
|
+
function isNavInstanceConfig(entry) {
|
|
3440
|
+
return typeof entry === 'object' && 'navInstance' in entry;
|
|
3441
|
+
}
|
|
3425
3442
|
/**
|
|
3426
3443
|
* Multi-provided, and resolved **last-wins**: the library provides its own
|
|
3427
3444
|
* Platform Nav panels first so an app registering at the same NavId replaces
|
|
@@ -3649,15 +3666,18 @@ const emptyResult = () => ({
|
|
|
3649
3666
|
* chooses a link kind (ADR 0014).
|
|
3650
3667
|
*/
|
|
3651
3668
|
const toTrailItem = (navId, navMap, anchor,
|
|
3652
|
-
/**
|
|
3653
|
-
label
|
|
3669
|
+
/**
|
|
3670
|
+
* A dynamic node standing on an instance reads that instance's own label and
|
|
3671
|
+
* icon — resolved by a NavInstanceSource, or matched off the rows.
|
|
3672
|
+
*/
|
|
3673
|
+
resolved,
|
|
3654
3674
|
/** ...and carries that instance, so following the entry keeps it. */
|
|
3655
3675
|
navParams) => {
|
|
3656
3676
|
const nav = navMap[navId];
|
|
3657
3677
|
return {
|
|
3658
3678
|
id: navId,
|
|
3659
|
-
label: label ?? nav?.title ?? navIdSegment(navId),
|
|
3660
|
-
icon: nav?.icon,
|
|
3679
|
+
label: resolved?.label ?? nav?.title ?? navIdSegment(navId),
|
|
3680
|
+
icon: resolved?.icon ?? nav?.icon,
|
|
3661
3681
|
nav: navId,
|
|
3662
3682
|
...(navParams ? { navParams } : {}),
|
|
3663
3683
|
address: renderAddress(navId, navMap, anchor, navParams),
|
|
@@ -3669,8 +3689,12 @@ navParams) => {
|
|
|
3669
3689
|
* rides alongside as the param this Nav declared, which is what `renderAddress`
|
|
3670
3690
|
* fills. `id` carries the value only so the list has stable keys.
|
|
3671
3691
|
*/
|
|
3672
|
-
const navRowTrailItem = (navId, nav, row, navMap, anchor
|
|
3673
|
-
|
|
3692
|
+
const navRowTrailItem = (navId, nav, row, navMap, anchor,
|
|
3693
|
+
/** The instances the dynamic Navs *above* this one are standing on — a
|
|
3694
|
+
* dynamic Nav filed under another routes behind both params, and a row that
|
|
3695
|
+
* carried only its own left the one above it unfilled. */
|
|
3696
|
+
inherited) => {
|
|
3697
|
+
const navParams = { ...inherited, [navParamOf(nav)]: row.value };
|
|
3674
3698
|
return {
|
|
3675
3699
|
id: `${navId}${NAV_ID_SEP}${row.value}`,
|
|
3676
3700
|
label: row.label,
|
|
@@ -3683,6 +3707,30 @@ const navRowTrailItem = (navId, nav, row, navMap, anchor) => {
|
|
|
3683
3707
|
address: renderAddress(navId, navMap, anchor, navParams),
|
|
3684
3708
|
};
|
|
3685
3709
|
};
|
|
3710
|
+
/**
|
|
3711
|
+
* Every dynamic Nav on the way to `navId`, paired with the instance the Router
|
|
3712
|
+
* is standing on. A `static` Nav filed *under* a dynamic one is a real place —
|
|
3713
|
+
* `book/:isbn/reviews` — but its Address cannot be rendered from identity
|
|
3714
|
+
* alone: the segment above it is data, so the row would link at `:isbn`
|
|
3715
|
+
* unfilled and match no route. Read off the Router rather than the resolved
|
|
3716
|
+
* rows, the same reason `rowParams` is: the value is known before any source
|
|
3717
|
+
* has answered (CONTEXT.md NavPresentation).
|
|
3718
|
+
*/
|
|
3719
|
+
const navParamsFor = (navId, navMap, routeParams) => {
|
|
3720
|
+
if (!routeParams)
|
|
3721
|
+
return undefined;
|
|
3722
|
+
const params = {};
|
|
3723
|
+
for (const id of navIdChain(navId)) {
|
|
3724
|
+
const nav = navMap[id];
|
|
3725
|
+
if (nav?.presentation !== 'dynamic')
|
|
3726
|
+
continue;
|
|
3727
|
+
const param = navParamOf(nav);
|
|
3728
|
+
const value = routeParams[param];
|
|
3729
|
+
if (value !== undefined)
|
|
3730
|
+
params[param] = value;
|
|
3731
|
+
}
|
|
3732
|
+
return Object.keys(params).length ? params : undefined;
|
|
3733
|
+
};
|
|
3686
3734
|
/** A Nav that *is* its parent's own content rather than a place beside it. */
|
|
3687
3735
|
const isDefaultNav = (navId) => navIdSegment(navId) === DEFAULT_NAV_SEGMENT;
|
|
3688
3736
|
/**
|
|
@@ -3736,12 +3784,19 @@ const drawsRows = (childId, dynamicRows) => {
|
|
|
3736
3784
|
const resolved = dynamicRows[childId];
|
|
3737
3785
|
return !!resolved && (resolved.rows.length > 0 || !!resolved.loading);
|
|
3738
3786
|
};
|
|
3739
|
-
const menuChildIds = (navId, navMap, dynamicRows = {}) => childIdsOf(navId, navMap).flatMap((childId) => {
|
|
3787
|
+
const menuChildIds = (navId, navMap, dynamicRows = {}, instances = {}) => childIdsOf(navId, navMap).flatMap((childId) => {
|
|
3740
3788
|
if (isDefaultNav(childId))
|
|
3741
|
-
return menuChildIds(childId, navMap, dynamicRows);
|
|
3742
|
-
if (navMap[childId]?.presentation === 'dynamic'
|
|
3743
|
-
drawsRows(childId, dynamicRows))
|
|
3744
|
-
|
|
3789
|
+
return menuChildIds(childId, navMap, dynamicRows, instances);
|
|
3790
|
+
if (navMap[childId]?.presentation === 'dynamic') {
|
|
3791
|
+
if (drawsRows(childId, dynamicRows))
|
|
3792
|
+
return [childId];
|
|
3793
|
+
// A NavInstanceSource and no rows is the fourth state (ADR 0030): the
|
|
3794
|
+
// node is resolved *while standing on it* and is not a place to be sent
|
|
3795
|
+
// to, because its own row could only link at `:<param>` unfilled — a
|
|
3796
|
+
// link that matches no route, which is the panel that looks correct and
|
|
3797
|
+
// is not.
|
|
3798
|
+
if (childId in instances)
|
|
3799
|
+
return [];
|
|
3745
3800
|
}
|
|
3746
3801
|
return navMap[childId]?.title ? [childId] : [];
|
|
3747
3802
|
});
|
|
@@ -3752,9 +3807,10 @@ const menuChildIds = (navId, navMap, dynamicRows = {}) => childIdsOf(navId, navM
|
|
|
3752
3807
|
* list the User moved through and the row they are on is the one marked
|
|
3753
3808
|
* active. Root is the floor: its own children are the last list there is.
|
|
3754
3809
|
*/
|
|
3755
|
-
const navMenuOwnerId = (navId, navMap, hasOwnContent = false, dynamicRows = {}) => {
|
|
3810
|
+
const navMenuOwnerId = (navId, navMap, hasOwnContent = false, dynamicRows = {}, instances = {}) => {
|
|
3756
3811
|
const visible = visibleNavId(navId);
|
|
3757
|
-
if (visible === ROOT_NAV$1 ||
|
|
3812
|
+
if (visible === ROOT_NAV$1 ||
|
|
3813
|
+
menuChildIds(visible, navMap, dynamicRows, instances).length) {
|
|
3758
3814
|
return visible;
|
|
3759
3815
|
}
|
|
3760
3816
|
// A panel that answers with a widget of its own keeps its own title —
|
|
@@ -3769,7 +3825,7 @@ const navMenuOwnerId = (navId, navMap, hasOwnContent = false, dynamicRows = {})
|
|
|
3769
3825
|
// than the one we are on — a mistitled empty panel is worse than a titled one.
|
|
3770
3826
|
for (let ancestor = parentNavId(visible); ancestor; ancestor = parentNavId(ancestor)) {
|
|
3771
3827
|
const owner = visibleNavId(ancestor);
|
|
3772
|
-
if (menuChildIds(owner, navMap, dynamicRows).length)
|
|
3828
|
+
if (menuChildIds(owner, navMap, dynamicRows, instances).length)
|
|
3773
3829
|
return owner;
|
|
3774
3830
|
if (owner === ROOT_NAV$1)
|
|
3775
3831
|
break;
|
|
@@ -3789,13 +3845,19 @@ const navMenuOwnerId = (navId, navMap, hasOwnContent = false, dynamicRows = {})
|
|
|
3789
3845
|
* falling through to the static siblings around it would show a panel that
|
|
3790
3846
|
* looks correct and is not.
|
|
3791
3847
|
*/
|
|
3792
|
-
const buildNavMenus = (navId, navMap, anchor, dynamicRows = {}) => menuChildIds(navId, navMap, dynamicRows).flatMap((childId) => {
|
|
3848
|
+
const buildNavMenus = (navId, navMap, anchor, dynamicRows = {}, routeParams, instances = {}) => menuChildIds(navId, navMap, dynamicRows, instances).flatMap((childId) => {
|
|
3793
3849
|
const nav = navMap[childId];
|
|
3794
3850
|
const resolved = nav && dynamicRows[childId];
|
|
3851
|
+
// The instances above this row, whether it is a row of its own or one of
|
|
3852
|
+
// the rows a source resolved: a panel drawn beneath a dynamic Nav is a
|
|
3853
|
+
// panel every entry in it routes behind.
|
|
3854
|
+
const inherited = navParamsFor(parentNavId(childId) ?? childId, navMap, routeParams);
|
|
3795
3855
|
if (!nav || nav.presentation !== 'dynamic' || !resolved) {
|
|
3796
|
-
return [
|
|
3856
|
+
return [
|
|
3857
|
+
toTrailItem(childId, navMap, anchor, undefined, navParamsFor(childId, navMap, routeParams)),
|
|
3858
|
+
];
|
|
3797
3859
|
}
|
|
3798
|
-
return resolved.rows.map((row) => navRowTrailItem(childId, nav, row, navMap, anchor));
|
|
3860
|
+
return resolved.rows.map((row) => navRowTrailItem(childId, nav, row, navMap, anchor, inherited));
|
|
3799
3861
|
});
|
|
3800
3862
|
/**
|
|
3801
3863
|
* Merges a widget's emitted trail over the derived one, matching by depth.
|
|
@@ -3811,43 +3873,56 @@ const mergeTrail = (derived, override, derivedHeader) => {
|
|
|
3811
3873
|
return { trail, header: override.header ?? derivedHeader };
|
|
3812
3874
|
};
|
|
3813
3875
|
function deriveBreadcrumb(params) {
|
|
3814
|
-
const { navId, navMap, anchor, breadcrumb, navMenu, hasOwnContent, dynamicRows, routeParams, } = params;
|
|
3876
|
+
const { navId, navMap, anchor, breadcrumb, navMenu, hasOwnContent, dynamicRows, routeParams, instances, } = params;
|
|
3815
3877
|
if (!navId)
|
|
3816
3878
|
return emptyResult();
|
|
3817
3879
|
/**
|
|
3818
|
-
* The
|
|
3819
|
-
*
|
|
3820
|
-
*
|
|
3821
|
-
*
|
|
3822
|
-
*
|
|
3880
|
+
* The instance a dynamic node wears while the User stands on one, and the
|
|
3881
|
+
* two ways it is answered.
|
|
3882
|
+
*
|
|
3883
|
+
* A **NavInstanceSource wins outright** where one is registered — the key is
|
|
3884
|
+
* present in `instances` whether or not it resolved (ADR 0030). Letting a
|
|
3885
|
+
* row match win when the instance happened to be in the loaded page of rows
|
|
3886
|
+
* would label one node by two mechanisms depending on what the menu had
|
|
3887
|
+
* fetched, which is the panel that looks correct and is not.
|
|
3888
|
+
*
|
|
3889
|
+
* Unresolved under a source is the **raw parameter value**: an id names the
|
|
3890
|
+
* right thing badly, where the node's title (`app`) names the wrong thing
|
|
3891
|
+
* well, and the second is the answer a User cannot tell from a bug.
|
|
3892
|
+
*
|
|
3893
|
+
* With no source at all this is the row match it has always been, falling
|
|
3894
|
+
* through to the node's own title — a deep link that arrived before the rows
|
|
3895
|
+
* did, or a row since gone.
|
|
3823
3896
|
*/
|
|
3824
|
-
const
|
|
3897
|
+
const instanceOf = (id) => {
|
|
3825
3898
|
const nav = navMap[id];
|
|
3826
3899
|
if (nav?.presentation !== 'dynamic')
|
|
3827
3900
|
return undefined;
|
|
3828
3901
|
const value = routeParams?.[navParamOf(nav)];
|
|
3829
3902
|
if (!value)
|
|
3830
3903
|
return undefined;
|
|
3831
|
-
|
|
3904
|
+
if (instances && id in instances) {
|
|
3905
|
+
const resolved = instances[id];
|
|
3906
|
+
return resolved
|
|
3907
|
+
? { label: resolved.label, icon: resolved.icon }
|
|
3908
|
+
: { label: value };
|
|
3909
|
+
}
|
|
3910
|
+
const row = dynamicRows?.[id]?.rows.find((r) => r.value === value);
|
|
3911
|
+
return row ? { label: row.label, icon: row.icon } : undefined;
|
|
3832
3912
|
};
|
|
3833
3913
|
/**
|
|
3834
|
-
* The
|
|
3835
|
-
*
|
|
3836
|
-
*
|
|
3837
|
-
*
|
|
3914
|
+
* The instances an entry routes behind — its own when it is a dynamic node,
|
|
3915
|
+
* and every dynamic ancestor's besides, so a `static` Nav filed under one
|
|
3916
|
+
* keeps the segment above it filled. Read off the Router rather than the
|
|
3917
|
+
* rows: the entry has to keep pointing at the page the User is on even
|
|
3918
|
+
* before a source has answered, and a NavRef with no param renders `:id`
|
|
3919
|
+
* unfilled.
|
|
3838
3920
|
*/
|
|
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
|
-
};
|
|
3921
|
+
const rowParams = (id) => navParamsFor(id, navMap, routeParams);
|
|
3847
3922
|
// The header and the trail belong to whichever Nav owns the menu below them:
|
|
3848
3923
|
// on a leaf that is the parent, so the User reads the list they are in with
|
|
3849
3924
|
// their own row marked, rather than a title over an empty panel.
|
|
3850
|
-
const ownerId = navMenuOwnerId(navId, navMap, hasOwnContent, dynamicRows);
|
|
3925
|
+
const ownerId = navMenuOwnerId(navId, navMap, hasOwnContent, dynamicRows, instances);
|
|
3851
3926
|
// An emitted breadcrumb names the panel it was emitted for. Once the panel
|
|
3852
3927
|
// has been handed up to an ancestor it is no longer that panel, so the
|
|
3853
3928
|
// override would title the ancestor's list after the leaf we left.
|
|
@@ -3856,15 +3931,16 @@ function deriveBreadcrumb(params) {
|
|
|
3856
3931
|
const derivedTrail = chain
|
|
3857
3932
|
.slice(0, -1)
|
|
3858
3933
|
.filter((id) => !isDefaultNav(id))
|
|
3859
|
-
.map((id) => toTrailItem(id, navMap, anchor,
|
|
3934
|
+
.map((id) => toTrailItem(id, navMap, anchor, instanceOf(id), rowParams(id)));
|
|
3860
3935
|
const nav = navMap[ownerId];
|
|
3861
3936
|
const ownerParams = rowParams(ownerId);
|
|
3937
|
+
const ownerInstance = instanceOf(ownerId);
|
|
3862
3938
|
const derivedHeader = {
|
|
3863
3939
|
id: ownerId,
|
|
3864
|
-
label:
|
|
3940
|
+
label: ownerInstance?.label ??
|
|
3865
3941
|
nav?.title ??
|
|
3866
3942
|
(ownerId === ROOT_NAV$1 ? '' : navIdSegment(ownerId)),
|
|
3867
|
-
icon: nav?.icon,
|
|
3943
|
+
icon: ownerInstance?.icon ?? nav?.icon,
|
|
3868
3944
|
nav: ownerId,
|
|
3869
3945
|
...(ownerParams ? { navParams: ownerParams } : {}),
|
|
3870
3946
|
address: renderAddress(ownerId, navMap, anchor, ownerParams),
|
|
@@ -3876,7 +3952,7 @@ function deriveBreadcrumb(params) {
|
|
|
3876
3952
|
breadcrumb: { trail, header },
|
|
3877
3953
|
navMenus: navMenu?.length && ownPanel
|
|
3878
3954
|
? navMenu
|
|
3879
|
-
: buildNavMenus(ownerId, navMap, anchor, dynamicRows),
|
|
3955
|
+
: buildNavMenus(ownerId, navMap, anchor, dynamicRows, routeParams, instances),
|
|
3880
3956
|
};
|
|
3881
3957
|
}
|
|
3882
3958
|
|
|
@@ -4127,6 +4203,55 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
|
|
|
4127
4203
|
}
|
|
4128
4204
|
return out;
|
|
4129
4205
|
}, ...(ngDevMode ? [{ debugName: "dynamicRows" }] : /* istanbul ignore next */ []));
|
|
4206
|
+
/**
|
|
4207
|
+
* Every `dynamic` Nav with a NavInstanceSource behind it, resolved against
|
|
4208
|
+
* the parameters the Router currently holds (ADR 0030). The whole
|
|
4209
|
+
* `routeParams` record goes in, not just this Nav's own value: a resolver
|
|
4210
|
+
* for an issue is routinely a lookup keyed by the book above it, and the
|
|
4211
|
+
* design tool binds arguments by parameter name.
|
|
4212
|
+
*
|
|
4213
|
+
* The **key is written whether or not the resolver answered**, because
|
|
4214
|
+
* presence of the key is the registration — it is what hides the node in
|
|
4215
|
+
* its parent's panel and what makes an unresolved instance render the raw
|
|
4216
|
+
* id rather than the node's title.
|
|
4217
|
+
*/
|
|
4218
|
+
const dynamicInstances = computed(() => {
|
|
4219
|
+
const out = {};
|
|
4220
|
+
const params = store.routeParams();
|
|
4221
|
+
for (const nav of Object.values(store.navMap())) {
|
|
4222
|
+
if (nav.presentation !== 'dynamic')
|
|
4223
|
+
continue;
|
|
4224
|
+
const hit = entryAt(nav.navId);
|
|
4225
|
+
if (!hit || !isNavInstanceConfig(hit.entry))
|
|
4226
|
+
continue;
|
|
4227
|
+
out[nav.navId] = hit.entry.navInstance(params);
|
|
4228
|
+
}
|
|
4229
|
+
return out;
|
|
4230
|
+
}, ...(ngDevMode ? [{ debugName: "dynamicInstances" }] : /* istanbul ignore next */ []));
|
|
4231
|
+
/**
|
|
4232
|
+
* The load each registered NavInstanceSource offers, paired with the value
|
|
4233
|
+
* of the parameter it resolves. Exposed rather than fired here: calling a
|
|
4234
|
+
* store method from inside a `computed` writes state during a read, and
|
|
4235
|
+
* the re-fire rule is about a value *changing*, which a computed has no
|
|
4236
|
+
* way to say.
|
|
4237
|
+
*/
|
|
4238
|
+
const instanceLoaders = computed(() => {
|
|
4239
|
+
const params = store.routeParams();
|
|
4240
|
+
const out = [];
|
|
4241
|
+
for (const nav of Object.values(store.navMap())) {
|
|
4242
|
+
if (nav.presentation !== 'dynamic')
|
|
4243
|
+
continue;
|
|
4244
|
+
const hit = entryAt(nav.navId);
|
|
4245
|
+
if (!hit || !isNavInstanceConfig(hit.entry))
|
|
4246
|
+
continue;
|
|
4247
|
+
const load = hit.entry.navInstanceLoad;
|
|
4248
|
+
const value = params[navParamOf(nav)];
|
|
4249
|
+
if (!load || !value)
|
|
4250
|
+
continue;
|
|
4251
|
+
out.push({ navId: nav.navId, value, params, load });
|
|
4252
|
+
}
|
|
4253
|
+
return out;
|
|
4254
|
+
}, ...(ngDevMode ? [{ debugName: "instanceLoaders" }] : /* istanbul ignore next */ []));
|
|
4130
4255
|
const resolvedWidget = computed(() => {
|
|
4131
4256
|
const hit = widgetEntry();
|
|
4132
4257
|
// Neither of the two row-shaped entries fills a panel with a component:
|
|
@@ -4135,7 +4260,15 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
|
|
|
4135
4260
|
// neither.
|
|
4136
4261
|
if (!hit || isNavMenuConfig(hit.entry) || isNavRowsConfig(hit.entry))
|
|
4137
4262
|
return null;
|
|
4138
|
-
|
|
4263
|
+
// A NavInstanceConfig is not tested for the same way, because it is the
|
|
4264
|
+
// one entry that legitimately shares an object with a panel: a dynamic
|
|
4265
|
+
// Nav with a `screen` row source and an instance source registers both
|
|
4266
|
+
// keys at once. What disqualifies an entry is therefore having no
|
|
4267
|
+
// `content`, not having a `navInstance` (ADR 0030).
|
|
4268
|
+
const entry = hit.entry;
|
|
4269
|
+
if (typeof entry !== 'function' && !('content' in entry))
|
|
4270
|
+
return null;
|
|
4271
|
+
const config = normalizeNavWidgetEntry(entry);
|
|
4139
4272
|
if (!config.content)
|
|
4140
4273
|
return null;
|
|
4141
4274
|
if (!hit.remote)
|
|
@@ -4169,7 +4302,7 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
|
|
|
4169
4302
|
const map = store.navMap();
|
|
4170
4303
|
const candidates = widgetNavIds();
|
|
4171
4304
|
const rows = dynamicRows();
|
|
4172
|
-
return (candidates.find((c) => menuChildIds(c, map, rows).length) ??
|
|
4305
|
+
return (candidates.find((c) => menuChildIds(c, map, rows, dynamicInstances()).length) ??
|
|
4173
4306
|
// A leaf nothing is registered for is still a Nav the tree knows, and
|
|
4174
4307
|
// that is where the panel belongs: `|settings|app` with no widget hands
|
|
4175
4308
|
// the panel back to *settings*, whose row it is, rather than climbing
|
|
@@ -4186,6 +4319,7 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
|
|
|
4186
4319
|
navMap: store.navMap(),
|
|
4187
4320
|
anchor: { navId: store.routeNavId() ?? ROOT_NAV$1, path: store.path() },
|
|
4188
4321
|
dynamicRows: dynamicRows(),
|
|
4322
|
+
instances: dynamicInstances(),
|
|
4189
4323
|
routeParams: store.routeParams(),
|
|
4190
4324
|
breadcrumb: menuConfig?.breadcramb?.() ??
|
|
4191
4325
|
(typeof widgetConfig?.breadcramb === 'function'
|
|
@@ -4231,6 +4365,7 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
|
|
|
4231
4365
|
navHasContent,
|
|
4232
4366
|
currentWcConfig,
|
|
4233
4367
|
resolvedNavMenuConfig,
|
|
4368
|
+
instanceLoaders,
|
|
4234
4369
|
};
|
|
4235
4370
|
}), withMethods((store) => {
|
|
4236
4371
|
const getNavService = inject(GetNavService);
|
|
@@ -4446,6 +4581,29 @@ const NavStore = signalStore({ providedIn: 'root' }, withState(initialState$3),
|
|
|
4446
4581
|
return {
|
|
4447
4582
|
onInit() {
|
|
4448
4583
|
store.syncFromRouter(store.navigationEnd);
|
|
4584
|
+
/**
|
|
4585
|
+
* Fires each NavInstanceSource's load when the value of the parameter
|
|
4586
|
+
* it resolves **changes**, and not otherwise (ADR 0030). Moving between
|
|
4587
|
+
* `/app/a1/about` and `/app/a1/settings` changes no instance, so it
|
|
4588
|
+
* fires nothing; `/app/a1` to `/app/a2` fires once.
|
|
4589
|
+
*
|
|
4590
|
+
* The last value is remembered per NavId rather than compared against
|
|
4591
|
+
* the resolver's own output: gating on "the resolver has not answered"
|
|
4592
|
+
* would never refresh a name that has gone stale, and would make the
|
|
4593
|
+
* trigger depend on the thing it triggers.
|
|
4594
|
+
*/
|
|
4595
|
+
const firedFor = new Map();
|
|
4596
|
+
effect(() => {
|
|
4597
|
+
const loaders = store.instanceLoaders();
|
|
4598
|
+
untracked(() => {
|
|
4599
|
+
for (const { navId, value, params, load } of loaders) {
|
|
4600
|
+
if (firedFor.get(navId) === value)
|
|
4601
|
+
continue;
|
|
4602
|
+
firedFor.set(navId, value);
|
|
4603
|
+
load(params);
|
|
4604
|
+
}
|
|
4605
|
+
});
|
|
4606
|
+
});
|
|
4449
4607
|
store.loadNav(computed(() => ({
|
|
4450
4608
|
navId: store.id(),
|
|
4451
4609
|
appNavId: store.appNavId(),
|
|
@@ -6832,7 +6990,7 @@ class SectionFormItemComponent extends ConfigComponent {
|
|
|
6832
6990
|
break;
|
|
6833
6991
|
}
|
|
6834
6992
|
case InputType.TOGGLE: {
|
|
6835
|
-
const { ToggleInputComponent } = await import('./magmonium-one-toggle-
|
|
6993
|
+
const { ToggleInputComponent } = await import('./magmonium-one-toggle-DzQFBc6i.mjs');
|
|
6836
6994
|
this.createDynamicComponent(seq, ToggleInputComponent, [], true);
|
|
6837
6995
|
break;
|
|
6838
6996
|
}
|
|
@@ -6844,12 +7002,12 @@ class SectionFormItemComponent extends ConfigComponent {
|
|
|
6844
7002
|
break;
|
|
6845
7003
|
}
|
|
6846
7004
|
case InputType.PASSWORD: {
|
|
6847
|
-
const { PasswordInputComponent } = await import('./magmonium-one-password-
|
|
7005
|
+
const { PasswordInputComponent } = await import('./magmonium-one-password-BPHpE0Y5.mjs');
|
|
6848
7006
|
this.createDynamicComponent(seq, PasswordInputComponent);
|
|
6849
7007
|
break;
|
|
6850
7008
|
}
|
|
6851
7009
|
case InputType.OTP: {
|
|
6852
|
-
const { OtpInputComponent } = await import('./magmonium-one-otp-
|
|
7010
|
+
const { OtpInputComponent } = await import('./magmonium-one-otp-B_s_yv6h.mjs');
|
|
6853
7011
|
this.createDynamicComponent(seq, OtpInputComponent);
|
|
6854
7012
|
break;
|
|
6855
7013
|
}
|
|
@@ -20404,7 +20562,7 @@ class WrapperInputComponent extends ConfigComponent {
|
|
|
20404
20562
|
break;
|
|
20405
20563
|
}
|
|
20406
20564
|
case InputType.TOGGLE: {
|
|
20407
|
-
const { ToggleInputComponent } = await import('./magmonium-one-toggle-
|
|
20565
|
+
const { ToggleInputComponent } = await import('./magmonium-one-toggle-DzQFBc6i.mjs');
|
|
20408
20566
|
this.createDynamicComponent(seq, ToggleInputComponent, [], true);
|
|
20409
20567
|
break;
|
|
20410
20568
|
}
|
|
@@ -20416,12 +20574,12 @@ class WrapperInputComponent extends ConfigComponent {
|
|
|
20416
20574
|
break;
|
|
20417
20575
|
}
|
|
20418
20576
|
case InputType.PASSWORD: {
|
|
20419
|
-
const { PasswordInputComponent } = await import('./magmonium-one-password-
|
|
20577
|
+
const { PasswordInputComponent } = await import('./magmonium-one-password-BPHpE0Y5.mjs');
|
|
20420
20578
|
this.createDynamicComponent(seq, PasswordInputComponent);
|
|
20421
20579
|
break;
|
|
20422
20580
|
}
|
|
20423
20581
|
case InputType.OTP: {
|
|
20424
|
-
const { OtpInputComponent } = await import('./magmonium-one-otp-
|
|
20582
|
+
const { OtpInputComponent } = await import('./magmonium-one-otp-B_s_yv6h.mjs');
|
|
20425
20583
|
this.createDynamicComponent(seq, OtpInputComponent);
|
|
20426
20584
|
break;
|
|
20427
20585
|
}
|
|
@@ -34814,5 +34972,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
34814
34972
|
* Generated bundle index. Do not edit.
|
|
34815
34973
|
*/
|
|
34816
34974
|
|
|
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-
|
|
34975
|
+
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 };
|
|
34976
|
+
//# sourceMappingURL=magmonium-one-magmonium-one-IbM56bN9.mjs.map
|