@m4l/testing 1.2.1-beta-docs-autocomplete-async-with-add-mf-sync.0 → 1.2.1-beta-fix-reports-viewer-chart-tab-resize.0
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/README.md +9 -4
- package/chunks/{reactLeaflet-CYEpmWXL.js → reactLeaflet-Ca5S8G_T.js} +100 -123
- package/index.js +52 -54
- package/package.json +1 -1
- package/types/packages/testing/mocks/src/constants.d.ts +1 -1
- package/types/packages/testing/playwright/src/installers/installHostUiConfigAssetRoutes.d.ts +1 -1
- package/types/packages/testing/playwright/src/types.d.ts +10 -10
- package/types/packages/testing/vitest/src/factories/app/m4lAppComponents.d.ts +1 -3
- package/types/packages/testing/vitest/src/factories/packages/m4lPackageGclick.d.ts +1 -3
- package/types/packages/testing/vitest/src/types.d.ts +0 -32
- package/vitest/index.js +36 -38
package/README.md
CHANGED
|
@@ -168,6 +168,14 @@ guide and update it alongside the helper docs.
|
|
|
168
168
|
Builds a typed preview-scenario `dynamicParams` payload for authenticated MF launches. It documents the shared `dummyPresetId` and `testCondition` keys while still allowing MF-specific extension keys when a scenario needs more than the common baseline.
|
|
169
169
|
- `installHostAuthenticatedMfPreviewBootstrap(...)`
|
|
170
170
|
Composes the authenticated host-shell bootstrap baseline with one deterministic MF sidebar entry. The high-level installer accepts the MF identity fields directly (`moduleId`, `title`, `debugPort`, optional `iconUrl`, and optional `dynamicParams`) instead of exposing the lower-level menu-fixture shape. The shared baseline now also stubs `GET /users/me/preferences`, so authenticated host-preview suites inherit the same preferences bootstrap seam that the host runtime now requires without re-registering that endpoint in every MF-owned E2E project.
|
|
171
|
+
- `installHostAuthenticatedBootstrapRoutes({ page: browserContext, moduleId: 'platform' })`
|
|
172
|
+
Installs the existing auth, locale, branding, preferences and shell routes for every
|
|
173
|
+
page in a browser context. Use this before a real user action opens a host popup;
|
|
174
|
+
opener-only `page.route(...)` handlers do not intercept that popup's requests.
|
|
175
|
+
Route-only bootstrap options accept `Page | BrowserContext`; navigation helpers
|
|
176
|
+
still require `Page`. Keep feature endpoints context-scoped as well, and narrow
|
|
177
|
+
API patterns to `/api/v1/...` so they cannot fulfill `/reports/:uuid` HTML navigation
|
|
178
|
+
with JSON. The Export DataGrid and Tags visible-column E2E flows exercise this seam.
|
|
171
179
|
- `installHostAuthenticatedMfModuleDictionaryRoute(...)`
|
|
172
180
|
Installs the common authenticated MF module-dictionary route used after host-side launch so each MF pilot does not need its own one-line `isAuth: true` wrapper around the lower-level module-dictionary installer.
|
|
173
181
|
- `openHostAuthenticatedMfPreviewModule(...)`
|
|
@@ -312,7 +320,6 @@ Current shared Vitest helpers in `@m4l/testing/vitest` include:
|
|
|
312
320
|
- `createM4lAppFormLayoutsModuleOverrides(...)`
|
|
313
321
|
- `createM4lAppCoreModuleMock(...)`
|
|
314
322
|
- `createM4lPackageGclickModuleMock(...)`
|
|
315
|
-
- `createM4lResourceSynchronizationModuleOverrides()`
|
|
316
323
|
- `createM4lPackageGclickRealtimeModuleMock(...)`
|
|
317
324
|
- `createM4lAppGraphicsModuleMock(...)`
|
|
318
325
|
Includes a neutral `useInfinitePaginate()` entry (no rows, `hasMore: false`,
|
|
@@ -339,9 +346,8 @@ Current shared Vitest helpers in `@m4l/testing/vitest` include:
|
|
|
339
346
|
- `createReResizableModuleMock(...)`
|
|
340
347
|
- `createReactLeafletModuleMock(...)`
|
|
341
348
|
Reusable module factories for M4L component consumers plus app and package `test/setup.ts` files so packages, hosts, and MFs can keep thin local adapters instead of repeating the same large `vi.mock(...)` payloads. When a consumer needs untouched real exports too, pass `baseModule` populated from `importOriginal(...)` and let the shared factory override only the test-facing surface.
|
|
342
|
-
`createM4lAppFormComponentsModuleOverrides(...)` provides a reusable override payload for app/MF `@m4l/components` setups that need the dynamic-MF parameters store plus neutral form container/action placeholders (`FormContainer`, `ActionsContainer`, `ActionFormCancel`, `ActionFormIntro`, `RHFAutocompleteAsync`, and `RHFRadioGroup`) without copying the same local override object across app test setups.
|
|
349
|
+
`createM4lAppFormComponentsModuleOverrides(...)` provides a reusable override payload for app/MF `@m4l/components` setups that need the dynamic-MF parameters store plus neutral form container/action placeholders (`FormContainer`, `ActionsContainer`, `ActionFormCancel`, `ActionFormIntro`, `RHFAutocompleteAsync`, and `RHFRadioGroup`) without copying the same local override object across app test setups.
|
|
343
350
|
`createM4lAppFormLayoutsModuleOverrides(...)` provides a reusable override payload for app/MF `@m4l/layouts` setups that need neutral paper-form seams (`useDynamicPaperForm`, `useFormAddEdit`) and a configurable `createComponentField(...)` identity baseline without repeating the same setup-local overrides.
|
|
344
|
-
`createM4lMFActionModuleOverrides()` provides opt-in `completeMFAction` and `isMFActionRequest` spies plus the production `MF_ACTION_REQUEST_PARAM` identity for save-orchestration tests. Request recognition defaults to false and completion is a no-op; individual scenarios can enable recognition or make the observer throw. Compose it through app-component `moduleOverrides` instead of dynamically importing a component implementation from an MF setup, because that dynamic workspace import marks the component package as lazy in Nx's dependency graph. The standard factory continues to preserve real action helpers through `baseModule`; transport and lifecycle behavior have their own component-level tests.
|
|
345
351
|
`createReactHookFormModuleMock(...)` now accepts `useFormContextData` so tests can inject package-local `setValue`, `reset`, `formState`, and related RHF behavior without rebuilding the full `react-hook-form` contract in each file.
|
|
346
352
|
`createLeafletModuleMock(...)` now covers the repeated partial `leaflet` seams that showed up during the `GpsMap` normalization work: configurable `L.control.scale()` and `L.DomEvent.disableClickPropagation()` / `disableScrollPropagation()` behavior, while still preserving real exports through `baseModule` when the consumer needs the untouched runtime surface.
|
|
347
353
|
`createReactLeafletModuleMock(...)` now covers neutral `Circle`, `GeoJSON`, `Polygon`, `Polyline`, `LayerGroup`, `Marker`, `Popup`, and configurable `useMap()` behavior. Use `useMapData` when the test can keep one stable map object for the whole file, or `useMapImplementation` when the test needs `useMap()` to read mutable per-test state such as a late-bound fake map ref. When a test still needs real exports such as `MapContainer`, keep the mock partial by passing `baseModule` from `importOriginal(...)` and override only the shape components or `useMap()` contract that belong to the scenario.
|
|
@@ -363,7 +369,6 @@ Current shared Vitest helpers in `@m4l/testing/vitest` include:
|
|
|
363
369
|
The shared M4L app factories now also cover neutral platform-shell and MF-loading collaborators that repeatedly show up in app tests, including provider passthrough components such as `ModuleDictionaryProvider`, `ModuleSkeletonProvider`, `DomainCountryProvider`, `FormatterProvider`, `ModalProvider`, `PopupsProvider`, `AreasProvider`, `FlagsProvider`, `EnvironmentProvider`, `HostToolsProvider`, `NetworkProvider`, `AuthProvider`, `LocalesProvider`, `ThemeSettingsProvider`, `DeviceTypeProvider`, and `HostThemeProvider`, plus shell primitives such as `SideBar`, `AppBar`, `HelmetPage`, `AreasAdmin`, `LanguagePopover`, `AccountPopover`, `MFNoAuthApp`, `MFLoader`, `createDynamicMFStore(...)`, `createToaster(...)`, `getMFLoaderComponentsDictionary()`, `getLoadingErrorComponentsDictionary()`, and locale/domain hooks such as `useLocales()`, `useDomainCountry()`, and `getLocaleFromNetwork()`.
|
|
364
370
|
The shared base `@m4l/components` layer now also owns reusable view primitives such as `Divider`, `NavLink`, and `WindowBase`, plus focused placeholder helpers such as `createDividerComponentMock(...)`, `createNavLinkComponentMock(...)`, and `createWindowBaseComponentMock(...)` so app tests can stay on top of the setup-owned baseline instead of rebuilding local workspace-library mocks.
|
|
365
371
|
`createM4lPackageGclickModuleMock(...)` remains intentionally specific to the `@m4l/gclick` package and covers map-store, indicator, and GNSS enum behavior that only makes sense when mocking that exact runtime package.
|
|
366
|
-
`createM4lResourceSynchronizationModuleOverrides()` is an explicit opt-in for MF orchestration suites that need controllable `useResourceInvalidation`, `useResourceMutation`, and `useEntityReferenceAdd` hooks plus the `PERSONS_RESOURCE` and `PROTOCOL_PERSON_REPORT_METHODS_RESOURCE` identities. A lightweight MF setup can use this payload directly without importing the full map/video runtime; a suite that needs other GClick exports can pass it through `moduleOverrides` or combine it with its existing partial mock. The standard package factory keeps these new exports real by default. Each factory invocation owns stable hook results and action functions, so component rerenders do not create artificial subscription changes. The resource contract test imports the real public root while isolating unrelated feature barrels, and compares the two identity constants with production values. Component passthrough contracts reuse the existing real Components preload; the generic autocomplete and MF action helpers remain real unless explicitly overridden.
|
|
367
372
|
The shared app-components baseline now exposes a minimal but stable
|
|
368
373
|
`WINDOW_SIZES.square` contract with both `medium` and `large` entries so app
|
|
369
374
|
tests can open modal windows without each suite rebuilding the same shape
|
|
@@ -5,7 +5,7 @@ import { q as Q, l as x, r as B, w as ee, v as te, u as re } from "./userPrefere
|
|
|
5
5
|
import "date-fns";
|
|
6
6
|
import "history";
|
|
7
7
|
import y from "react";
|
|
8
|
-
const
|
|
8
|
+
const O = "__rhfOnSubmitRef", ne = {
|
|
9
9
|
square: {
|
|
10
10
|
large: {
|
|
11
11
|
width: 800,
|
|
@@ -102,13 +102,13 @@ function he(e) {
|
|
|
102
102
|
function Se(e) {
|
|
103
103
|
return e?.type === "icon";
|
|
104
104
|
}
|
|
105
|
-
function
|
|
105
|
+
function Pe(e) {
|
|
106
106
|
return e?.type === "color";
|
|
107
107
|
}
|
|
108
|
-
function
|
|
108
|
+
function Me(e) {
|
|
109
109
|
return e?.type === "image";
|
|
110
110
|
}
|
|
111
|
-
function
|
|
111
|
+
function k(e) {
|
|
112
112
|
return typeof e == "string" ? JSON.stringify(e) : typeof e == "symbol" ? e.toString() : $(e, {
|
|
113
113
|
depth: 4,
|
|
114
114
|
breakLength: 1 / 0,
|
|
@@ -118,15 +118,15 @@ function O(e) {
|
|
|
118
118
|
}
|
|
119
119
|
function A(e, n, o, r, a) {
|
|
120
120
|
e.push(
|
|
121
|
-
`${n} ${o}: expected ${
|
|
121
|
+
`${n} ${o}: expected ${k(r)}, got ${k(a)}`
|
|
122
122
|
);
|
|
123
123
|
}
|
|
124
|
-
function
|
|
124
|
+
function _(e, n, o) {
|
|
125
125
|
e.push(`${n} ${o}: expected a function, got undefined`);
|
|
126
126
|
}
|
|
127
|
-
function
|
|
127
|
+
function w(e, n, o) {
|
|
128
128
|
e.push(
|
|
129
|
-
`${n} ${o}: expected undefined, got ${
|
|
129
|
+
`${n} ${o}: expected undefined, got ${k("function")}`
|
|
130
130
|
);
|
|
131
131
|
}
|
|
132
132
|
function Ae(e, n, o, r) {
|
|
@@ -136,7 +136,7 @@ function Ae(e, n, o, r) {
|
|
|
136
136
|
}
|
|
137
137
|
const a = Object.keys(o).sort(), i = Object.keys(r).sort();
|
|
138
138
|
g(a, i) || e.push(
|
|
139
|
-
`${n} testProps keys: expected ${
|
|
139
|
+
`${n} testProps keys: expected ${k(i)}, got ${k(a)}`
|
|
140
140
|
), i.forEach((s) => {
|
|
141
141
|
const c = r[s], d = o[s];
|
|
142
142
|
if (c === D) {
|
|
@@ -264,14 +264,14 @@ function be(e) {
|
|
|
264
264
|
requiresFormatter: !0,
|
|
265
265
|
requiresFilter: !1,
|
|
266
266
|
requiresSort: !1
|
|
267
|
-
} :
|
|
267
|
+
} : Pe(e) ? {
|
|
268
268
|
expectedTestProps: {
|
|
269
269
|
fieldValue: e.fieldValue
|
|
270
270
|
},
|
|
271
271
|
requiresFormatter: !0,
|
|
272
272
|
requiresFilter: !1,
|
|
273
273
|
requiresSort: !1
|
|
274
|
-
} :
|
|
274
|
+
} : Me(e) ? {
|
|
275
275
|
expectedTestProps: {
|
|
276
276
|
fieldValue: e.fieldValue,
|
|
277
277
|
fieldText: e.fieldText,
|
|
@@ -287,7 +287,7 @@ function be(e) {
|
|
|
287
287
|
function Te(e) {
|
|
288
288
|
return {
|
|
289
289
|
expectedTestProps: {
|
|
290
|
-
unsupportedHookCall:
|
|
290
|
+
unsupportedHookCall: k(e)
|
|
291
291
|
},
|
|
292
292
|
requiresFormatter: !0,
|
|
293
293
|
requiresFilter: !0,
|
|
@@ -335,10 +335,10 @@ function et(e, n) {
|
|
|
335
335
|
s,
|
|
336
336
|
i.testProps,
|
|
337
337
|
c.expectedTestProps
|
|
338
|
-
), i.formatter === void 0 &&
|
|
338
|
+
), i.formatter === void 0 && _(o, s, "formatter"), c.requiresFilter && i.customFilter === void 0 && _(o, s, "customFilter"), c.requiresSort && i.customSort === void 0 && _(o, s, "customSort");
|
|
339
339
|
return;
|
|
340
340
|
}
|
|
341
|
-
i.formatter !== void 0 &&
|
|
341
|
+
i.formatter !== void 0 && w(o, s, "formatter"), i.customFilter !== void 0 && w(o, s, "customFilter"), i.customSort !== void 0 && w(o, s, "customSort");
|
|
342
342
|
}), o;
|
|
343
343
|
}
|
|
344
344
|
function p(e) {
|
|
@@ -387,21 +387,21 @@ function T(e) {
|
|
|
387
387
|
})
|
|
388
388
|
);
|
|
389
389
|
}
|
|
390
|
-
function
|
|
390
|
+
function ke(e = "property") {
|
|
391
391
|
return t.fn(
|
|
392
392
|
({ property: n }) => y.createElement("div", {
|
|
393
393
|
"data-testid": `${e}-${String(n)}`
|
|
394
394
|
})
|
|
395
395
|
);
|
|
396
396
|
}
|
|
397
|
-
function
|
|
397
|
+
function Fe(e = "data-src") {
|
|
398
398
|
return t.fn(
|
|
399
399
|
({ src: n }) => y.createElement("span", {
|
|
400
400
|
[e]: String(n)
|
|
401
401
|
})
|
|
402
402
|
);
|
|
403
403
|
}
|
|
404
|
-
function
|
|
404
|
+
function Ee(e = "divider") {
|
|
405
405
|
return t.fn(
|
|
406
406
|
({ customVariant: n, orientation: o }) => y.createElement("div", {
|
|
407
407
|
"data-testid": e,
|
|
@@ -410,7 +410,7 @@ function Fe(e = "divider") {
|
|
|
410
410
|
})
|
|
411
411
|
);
|
|
412
412
|
}
|
|
413
|
-
function
|
|
413
|
+
function Oe(e = "nav-link") {
|
|
414
414
|
return t.fn(
|
|
415
415
|
({ children: n, reloadDocument: o, text: r, to: a, ...i }) => y.createElement(
|
|
416
416
|
"a",
|
|
@@ -444,7 +444,7 @@ function Ie(e = "window-base") {
|
|
|
444
444
|
)
|
|
445
445
|
);
|
|
446
446
|
}
|
|
447
|
-
function
|
|
447
|
+
function Le({
|
|
448
448
|
testId: e,
|
|
449
449
|
disabledProp: n = "disabled",
|
|
450
450
|
handlerProp: o = "onClick",
|
|
@@ -490,7 +490,7 @@ function C() {
|
|
|
490
490
|
testProps: e
|
|
491
491
|
}));
|
|
492
492
|
}
|
|
493
|
-
function
|
|
493
|
+
function R(e) {
|
|
494
494
|
return typeof e == "string" ? JSON.stringify(e) : $(e, {
|
|
495
495
|
depth: 4,
|
|
496
496
|
breakLength: 1 / 0,
|
|
@@ -498,9 +498,9 @@ function w(e) {
|
|
|
498
498
|
sorted: !0
|
|
499
499
|
});
|
|
500
500
|
}
|
|
501
|
-
function
|
|
501
|
+
function M(e, n, o, r, a) {
|
|
502
502
|
e.push(
|
|
503
|
-
`${n} ${o}: expected ${
|
|
503
|
+
`${n} ${o}: expected ${R(r)}, got ${R(a)}`
|
|
504
504
|
);
|
|
505
505
|
}
|
|
506
506
|
function rt(e, n) {
|
|
@@ -513,37 +513,37 @@ function rt(e, n) {
|
|
|
513
513
|
o.push(`${s} missing field at index ${a}`);
|
|
514
514
|
return;
|
|
515
515
|
}
|
|
516
|
-
if (i.name !== r.name &&
|
|
516
|
+
if (i.name !== r.name && M(
|
|
517
517
|
o,
|
|
518
518
|
s,
|
|
519
519
|
"name",
|
|
520
520
|
r.name,
|
|
521
521
|
i.name
|
|
522
|
-
), g(i.dictionaryId, r.dictionaryId) ||
|
|
522
|
+
), g(i.dictionaryId, r.dictionaryId) || M(
|
|
523
523
|
o,
|
|
524
524
|
s,
|
|
525
525
|
"dictionaryId",
|
|
526
526
|
r.dictionaryId,
|
|
527
527
|
i.dictionaryId
|
|
528
|
-
), i.type !== r.type &&
|
|
528
|
+
), i.type !== r.type && M(
|
|
529
529
|
o,
|
|
530
530
|
s,
|
|
531
531
|
"type",
|
|
532
532
|
r.type,
|
|
533
533
|
i.type
|
|
534
|
-
), g(i.multiple, r.multiple) ||
|
|
534
|
+
), g(i.multiple, r.multiple) || M(
|
|
535
535
|
o,
|
|
536
536
|
s,
|
|
537
537
|
"multiple",
|
|
538
538
|
r.multiple,
|
|
539
539
|
i.multiple
|
|
540
|
-
), g(i.presence, r.presence) ||
|
|
540
|
+
), g(i.presence, r.presence) || M(
|
|
541
541
|
o,
|
|
542
542
|
s,
|
|
543
543
|
"presence",
|
|
544
544
|
r.presence,
|
|
545
545
|
i.presence
|
|
546
|
-
), r.defaultOperator !== void 0 && !g(i.defaultOperator, r.defaultOperator) &&
|
|
546
|
+
), r.defaultOperator !== void 0 && !g(i.defaultOperator, r.defaultOperator) && M(
|
|
547
547
|
o,
|
|
548
548
|
s,
|
|
549
549
|
"defaultOperator",
|
|
@@ -552,19 +552,19 @@ function rt(e, n) {
|
|
|
552
552
|
), r.restritcOperatorsTo !== void 0 && !g(
|
|
553
553
|
i.restritcOperatorsTo,
|
|
554
554
|
r.restritcOperatorsTo
|
|
555
|
-
) &&
|
|
555
|
+
) && M(
|
|
556
556
|
o,
|
|
557
557
|
s,
|
|
558
558
|
"restritcOperatorsTo",
|
|
559
559
|
r.restritcOperatorsTo,
|
|
560
560
|
i.restritcOperatorsTo
|
|
561
|
-
), r.defaultOperand1 !== void 0 && !g(i.defaultOperand1, r.defaultOperand1) &&
|
|
561
|
+
), r.defaultOperand1 !== void 0 && !g(i.defaultOperand1, r.defaultOperand1) && M(
|
|
562
562
|
o,
|
|
563
563
|
s,
|
|
564
564
|
"defaultOperand1",
|
|
565
565
|
r.defaultOperand1,
|
|
566
566
|
i.defaultOperand1
|
|
567
|
-
), r.urlIcon !== void 0 && !g(i.urlIcon, r.urlIcon) &&
|
|
567
|
+
), r.urlIcon !== void 0 && !g(i.urlIcon, r.urlIcon) && M(
|
|
568
568
|
o,
|
|
569
569
|
s,
|
|
570
570
|
"urlIcon",
|
|
@@ -580,7 +580,7 @@ function rt(e, n) {
|
|
|
580
580
|
r.selectAsyncOptions && !g(
|
|
581
581
|
i.selectAsyncOptions,
|
|
582
582
|
r.selectAsyncOptions
|
|
583
|
-
) &&
|
|
583
|
+
) && M(
|
|
584
584
|
o,
|
|
585
585
|
s,
|
|
586
586
|
"selectAsyncOptions",
|
|
@@ -589,13 +589,13 @@ function rt(e, n) {
|
|
|
589
589
|
);
|
|
590
590
|
}
|
|
591
591
|
}), o) : (o.push(
|
|
592
|
-
`[fields] type: expected "array", got ${
|
|
592
|
+
`[fields] type: expected "array", got ${R(typeof e)}`
|
|
593
593
|
), o);
|
|
594
594
|
}
|
|
595
|
-
function
|
|
595
|
+
function _e(e = O) {
|
|
596
596
|
return globalThis[e];
|
|
597
597
|
}
|
|
598
|
-
function
|
|
598
|
+
function we(e) {
|
|
599
599
|
return e === void 0 ? "" : JSON.stringify(e);
|
|
600
600
|
}
|
|
601
601
|
function V(e) {
|
|
@@ -606,7 +606,7 @@ function V(e) {
|
|
|
606
606
|
sorted: !0
|
|
607
607
|
});
|
|
608
608
|
}
|
|
609
|
-
function
|
|
609
|
+
function F(e, n, o, r, a) {
|
|
610
610
|
e.push(
|
|
611
611
|
`${n} ${o}: expected ${V(r)}, got ${V(a)}`
|
|
612
612
|
);
|
|
@@ -621,31 +621,31 @@ function nt(e, n) {
|
|
|
621
621
|
o.push(`${s} missing field at index ${a}`);
|
|
622
622
|
return;
|
|
623
623
|
}
|
|
624
|
-
i.name !== r.name &&
|
|
624
|
+
i.name !== r.name && F(
|
|
625
625
|
o,
|
|
626
626
|
s,
|
|
627
627
|
"name",
|
|
628
628
|
r.name,
|
|
629
629
|
i.name
|
|
630
|
-
), g(i.dictionaryId, r.dictionaryId) ||
|
|
630
|
+
), g(i.dictionaryId, r.dictionaryId) || F(
|
|
631
631
|
o,
|
|
632
632
|
s,
|
|
633
633
|
"dictionaryId",
|
|
634
634
|
r.dictionaryId,
|
|
635
635
|
i.dictionaryId
|
|
636
|
-
), i.type !== r.type &&
|
|
636
|
+
), i.type !== r.type && F(
|
|
637
637
|
o,
|
|
638
638
|
s,
|
|
639
639
|
"type",
|
|
640
640
|
r.type,
|
|
641
641
|
i.type
|
|
642
|
-
), g(i.presence, r.presence) ||
|
|
642
|
+
), g(i.presence, r.presence) || F(
|
|
643
643
|
o,
|
|
644
644
|
s,
|
|
645
645
|
"presence",
|
|
646
646
|
r.presence,
|
|
647
647
|
i.presence
|
|
648
|
-
), r.urlIcon !== void 0 && !g(i.urlIcon, r.urlIcon) &&
|
|
648
|
+
), r.urlIcon !== void 0 && !g(i.urlIcon, r.urlIcon) && F(
|
|
649
649
|
o,
|
|
650
650
|
s,
|
|
651
651
|
"urlIcon",
|
|
@@ -656,7 +656,7 @@ function nt(e, n) {
|
|
|
656
656
|
`[fields] type: expected "array", got ${V(typeof e)}`
|
|
657
657
|
), o);
|
|
658
658
|
}
|
|
659
|
-
function
|
|
659
|
+
function Re() {
|
|
660
660
|
return {
|
|
661
661
|
hashLayers: {},
|
|
662
662
|
mapActions: {
|
|
@@ -711,7 +711,7 @@ function at({
|
|
|
711
711
|
console.error = n;
|
|
712
712
|
});
|
|
713
713
|
}
|
|
714
|
-
function st(e =
|
|
714
|
+
function st(e = O) {
|
|
715
715
|
globalThis[e] = {
|
|
716
716
|
current: null
|
|
717
717
|
};
|
|
@@ -795,7 +795,7 @@ function ct({
|
|
|
795
795
|
function W({
|
|
796
796
|
baseModule: e = {},
|
|
797
797
|
moduleOverrides: n = {},
|
|
798
|
-
submitRefGlobalKey: o =
|
|
798
|
+
submitRefGlobalKey: o = O
|
|
799
799
|
} = {}) {
|
|
800
800
|
const r = e.createValidationPartialObject, a = e.createValidationFullObject, i = e.createValidationSchema, s = e.getStepsAndValidationSchema;
|
|
801
801
|
return {
|
|
@@ -803,7 +803,7 @@ function W({
|
|
|
803
803
|
Accordion: p("accordion"),
|
|
804
804
|
ContainerFlow: S("container-flow"),
|
|
805
805
|
ActionsGroup: p("actions-group"),
|
|
806
|
-
Divider:
|
|
806
|
+
Divider: Ee(),
|
|
807
807
|
ChipStatusFormatter: t.fn(({ label: c }) => /* @__PURE__ */ u("div", { "data-testid": "chip-status-formatter", children: c ?? "" })),
|
|
808
808
|
BooleanFormatter: t.fn(({ value: c }) => /* @__PURE__ */ u("div", { "data-testid": "boolean-formatter", children: `${c ?? ""}` })),
|
|
809
809
|
DateFormatter: t.fn(({ value: c }) => `${c ?? ""}`),
|
|
@@ -813,9 +813,9 @@ function W({
|
|
|
813
813
|
getTypographyStyles: t.fn(() => ({})),
|
|
814
814
|
getComponentClasses: t.fn(
|
|
815
815
|
(c, d) => (Array.isArray(d) ? d : Object.keys(d)).reduce(
|
|
816
|
-
(m,
|
|
816
|
+
(m, P) => ({
|
|
817
817
|
...m,
|
|
818
|
-
[
|
|
818
|
+
[P]: P
|
|
819
819
|
}),
|
|
820
820
|
{}
|
|
821
821
|
)
|
|
@@ -847,7 +847,7 @@ function W({
|
|
|
847
847
|
onSubmit: d,
|
|
848
848
|
statusLoad: l
|
|
849
849
|
}) => {
|
|
850
|
-
const m =
|
|
850
|
+
const m = _e(o);
|
|
851
851
|
return m && d && (m.current = d), /* @__PURE__ */ u(
|
|
852
852
|
"div",
|
|
853
853
|
{
|
|
@@ -884,10 +884,10 @@ function W({
|
|
|
884
884
|
DataGrid: t.fn(({ children: c }) => /* @__PURE__ */ u("div", { "data-testid": "data-grid", children: c })),
|
|
885
885
|
Stack: v("stack"),
|
|
886
886
|
Button: t.fn(
|
|
887
|
-
({ children: c, disabled: d, label: l, onClick: m, "data-testid":
|
|
887
|
+
({ children: c, disabled: d, label: l, onClick: m, "data-testid": P }) => /* @__PURE__ */ u(
|
|
888
888
|
"button",
|
|
889
889
|
{
|
|
890
|
-
"data-testid": typeof
|
|
890
|
+
"data-testid": typeof P == "string" ? P : "button",
|
|
891
891
|
disabled: !!d,
|
|
892
892
|
onClick: m,
|
|
893
893
|
children: String(l ?? c ?? "")
|
|
@@ -898,7 +898,7 @@ function W({
|
|
|
898
898
|
WindowBase: Ie(),
|
|
899
899
|
Card: v("card"),
|
|
900
900
|
Typography: v("typography"),
|
|
901
|
-
NavLink:
|
|
901
|
+
NavLink: Oe(),
|
|
902
902
|
Tooltip: t.fn(
|
|
903
903
|
({
|
|
904
904
|
children: c,
|
|
@@ -931,8 +931,8 @@ function W({
|
|
|
931
931
|
}
|
|
932
932
|
)
|
|
933
933
|
),
|
|
934
|
-
Icon:
|
|
935
|
-
ReactJsonViewer: t.fn(({ data: c }) => /* @__PURE__ */ u("div", { "data-testid": "react-json-view", children:
|
|
934
|
+
Icon: Fe(),
|
|
935
|
+
ReactJsonViewer: t.fn(({ data: c }) => /* @__PURE__ */ u("div", { "data-testid": "react-json-view", children: we(c) })),
|
|
936
936
|
TabsNavigator: S("tabs-navigator", "TabsNavigator"),
|
|
937
937
|
DistanceToNowFormatter: t.fn(
|
|
938
938
|
({
|
|
@@ -967,7 +967,7 @@ function W({
|
|
|
967
967
|
(c, d, l) => d.filter((m) => c.has(l(m)))
|
|
968
968
|
),
|
|
969
969
|
PaperForm: Ce(),
|
|
970
|
-
PropertyValue:
|
|
970
|
+
PropertyValue: ke(),
|
|
971
971
|
RHFColorPicker: T("rhf-color"),
|
|
972
972
|
RHFCheckbox: T("rhf-checkbox"),
|
|
973
973
|
RHFHelperError: T("rhf-helper"),
|
|
@@ -995,7 +995,7 @@ function W({
|
|
|
995
995
|
StepperNextButton: S("stepper-next"),
|
|
996
996
|
StepperPrevButton: S("stepper-prev"),
|
|
997
997
|
StepperSubmitButton: S("stepper-submit"),
|
|
998
|
-
StepperCancelButton:
|
|
998
|
+
StepperCancelButton: Le({
|
|
999
999
|
testId: "stepper-cancel-button",
|
|
1000
1000
|
handlerProp: "onClose",
|
|
1001
1001
|
labelProp: "children"
|
|
@@ -1013,7 +1013,7 @@ function W({
|
|
|
1013
1013
|
function dt({
|
|
1014
1014
|
baseModule: e = {},
|
|
1015
1015
|
moduleOverrides: n = {},
|
|
1016
|
-
submitRefGlobalKey: o =
|
|
1016
|
+
submitRefGlobalKey: o = O
|
|
1017
1017
|
} = {}) {
|
|
1018
1018
|
return {
|
|
1019
1019
|
...W({ baseModule: e, submitRefGlobalKey: o }),
|
|
@@ -1106,14 +1106,7 @@ function ut({
|
|
|
1106
1106
|
RHFRadioGroup: t.fn(() => null)
|
|
1107
1107
|
};
|
|
1108
1108
|
}
|
|
1109
|
-
function ft(
|
|
1110
|
-
return {
|
|
1111
|
-
MF_ACTION_REQUEST_PARAM: "mfActionRequest",
|
|
1112
|
-
completeMFAction: t.fn(),
|
|
1113
|
-
isMFActionRequest: t.fn(() => !1)
|
|
1114
|
-
};
|
|
1115
|
-
}
|
|
1116
|
-
function lt({
|
|
1109
|
+
function ft({
|
|
1117
1110
|
baseModule: e = {},
|
|
1118
1111
|
baseStoreState: n,
|
|
1119
1112
|
environmentData: o,
|
|
@@ -1131,7 +1124,7 @@ function lt({
|
|
|
1131
1124
|
const m = x({
|
|
1132
1125
|
...U,
|
|
1133
1126
|
...o
|
|
1134
|
-
}),
|
|
1127
|
+
}), P = r ?? B(), h = ee(
|
|
1135
1128
|
s
|
|
1136
1129
|
), b = te(s), K = n ?? {}, z = l ?? {
|
|
1137
1130
|
flagsActions: {
|
|
@@ -1177,16 +1170,16 @@ function lt({
|
|
|
1177
1170
|
EMMIT_EVENT_HOST_EMERGE_WINDOW: "EMMIT_EVENT_HOST_EMERGE_WINDOW"
|
|
1178
1171
|
},
|
|
1179
1172
|
getPropertyByString: t.fn(
|
|
1180
|
-
(f, I,
|
|
1173
|
+
(f, I, L) => {
|
|
1181
1174
|
if (f == null)
|
|
1182
|
-
return
|
|
1175
|
+
return L;
|
|
1183
1176
|
try {
|
|
1184
1177
|
return I.split(".").reduce(
|
|
1185
1178
|
(Z, X) => Z?.[X],
|
|
1186
1179
|
f
|
|
1187
|
-
) ??
|
|
1180
|
+
) ?? L;
|
|
1188
1181
|
} catch {
|
|
1189
|
-
return
|
|
1182
|
+
return L;
|
|
1190
1183
|
}
|
|
1191
1184
|
}
|
|
1192
1185
|
),
|
|
@@ -1202,7 +1195,7 @@ function lt({
|
|
|
1202
1195
|
useFlagsStore: t.fn(
|
|
1203
1196
|
(f) => f(z)
|
|
1204
1197
|
),
|
|
1205
|
-
useHostTools: t.fn(() =>
|
|
1198
|
+
useHostTools: t.fn(() => P),
|
|
1206
1199
|
useModuleDictionary: t.fn(() => ({
|
|
1207
1200
|
getLabel: t.fn(i),
|
|
1208
1201
|
getModuleLabel: t.fn(() => a)
|
|
@@ -1245,7 +1238,7 @@ function lt({
|
|
|
1245
1238
|
...c
|
|
1246
1239
|
};
|
|
1247
1240
|
}
|
|
1248
|
-
function
|
|
1241
|
+
function lt({
|
|
1249
1242
|
baseModule: e = {},
|
|
1250
1243
|
moduleOverrides: n = {}
|
|
1251
1244
|
} = {}) {
|
|
@@ -1308,7 +1301,7 @@ function pt({
|
|
|
1308
1301
|
...n
|
|
1309
1302
|
};
|
|
1310
1303
|
}
|
|
1311
|
-
function
|
|
1304
|
+
function pt({
|
|
1312
1305
|
baseModule: e = {},
|
|
1313
1306
|
moduleOverrides: n = {}
|
|
1314
1307
|
} = {}) {
|
|
@@ -1347,7 +1340,7 @@ function mt({
|
|
|
1347
1340
|
...n
|
|
1348
1341
|
};
|
|
1349
1342
|
}
|
|
1350
|
-
function
|
|
1343
|
+
function mt({
|
|
1351
1344
|
createComponentFieldImplementation: e
|
|
1352
1345
|
} = {}) {
|
|
1353
1346
|
return {
|
|
@@ -1358,7 +1351,7 @@ function yt({
|
|
|
1358
1351
|
)
|
|
1359
1352
|
};
|
|
1360
1353
|
}
|
|
1361
|
-
function
|
|
1354
|
+
function yt({
|
|
1362
1355
|
baseModule: e = {},
|
|
1363
1356
|
domEventData: n,
|
|
1364
1357
|
moduleOverrides: o = {},
|
|
@@ -1382,7 +1375,7 @@ function gt({
|
|
|
1382
1375
|
...o
|
|
1383
1376
|
};
|
|
1384
1377
|
}
|
|
1385
|
-
function
|
|
1378
|
+
function gt({
|
|
1386
1379
|
baseModule: e = {},
|
|
1387
1380
|
dataGridPersistenceData: n,
|
|
1388
1381
|
dynamicFilterAndSortData: o,
|
|
@@ -1413,7 +1406,7 @@ function vt({
|
|
|
1413
1406
|
popupsActions: {
|
|
1414
1407
|
addPopup: t.fn()
|
|
1415
1408
|
}
|
|
1416
|
-
},
|
|
1409
|
+
}, P = s ?? {
|
|
1417
1410
|
getCookie: t.fn(),
|
|
1418
1411
|
getWindowId: t.fn(() => "test-window-id"),
|
|
1419
1412
|
setCookie: t.fn(),
|
|
@@ -1431,11 +1424,11 @@ function vt({
|
|
|
1431
1424
|
),
|
|
1432
1425
|
useWatchTyped: t.fn(() => {
|
|
1433
1426
|
}),
|
|
1434
|
-
useWindowToolsMF: t.fn(() =>
|
|
1427
|
+
useWindowToolsMF: t.fn(() => P),
|
|
1435
1428
|
...a
|
|
1436
1429
|
};
|
|
1437
1430
|
}
|
|
1438
|
-
function
|
|
1431
|
+
function vt({
|
|
1439
1432
|
baseModule: e = {},
|
|
1440
1433
|
environmentData: n,
|
|
1441
1434
|
getLabel: o = (d, l) => l ? `label:${d}:${l}` : `label:${d}`,
|
|
@@ -1450,7 +1443,7 @@ function ht({
|
|
|
1450
1443
|
...n
|
|
1451
1444
|
}), l = r ?? B(), m = s ?? {
|
|
1452
1445
|
hasPrivilege: t.fn(() => !0)
|
|
1453
|
-
},
|
|
1446
|
+
}, P = c ?? {
|
|
1454
1447
|
networkOperation: t.fn()
|
|
1455
1448
|
};
|
|
1456
1449
|
return {
|
|
@@ -1466,17 +1459,17 @@ function ht({
|
|
|
1466
1459
|
})),
|
|
1467
1460
|
useModulePrivileges: t.fn(() => m),
|
|
1468
1461
|
useModuleSkeleton: t.fn(() => !1),
|
|
1469
|
-
useNetwork: t.fn(() =>
|
|
1462
|
+
useNetwork: t.fn(() => P),
|
|
1470
1463
|
...a
|
|
1471
1464
|
};
|
|
1472
1465
|
}
|
|
1473
|
-
function
|
|
1466
|
+
function ht({
|
|
1474
1467
|
baseModule: e = {},
|
|
1475
1468
|
mapStoreState: n,
|
|
1476
1469
|
moduleOverrides: o = {}
|
|
1477
1470
|
} = {}) {
|
|
1478
1471
|
const r = {
|
|
1479
|
-
...
|
|
1472
|
+
...Re(),
|
|
1480
1473
|
...n
|
|
1481
1474
|
};
|
|
1482
1475
|
return {
|
|
@@ -1544,30 +1537,16 @@ function St({
|
|
|
1544
1537
|
...o
|
|
1545
1538
|
};
|
|
1546
1539
|
}
|
|
1547
|
-
function Mt() {
|
|
1548
|
-
const e = { scopeKey: "test-scope", refreshKey: void 0 }, n = {
|
|
1549
|
-
scopeKey: "test-scope",
|
|
1550
|
-
publishResourceChange: t.fn(async (r) => r.operationId ?? "operation-test"),
|
|
1551
|
-
reportFailure: t.fn()
|
|
1552
|
-
}, o = t.fn(async () => ({ status: "cancelled" }));
|
|
1553
|
-
return {
|
|
1554
|
-
PERSONS_RESOURCE: "rt_persons",
|
|
1555
|
-
PROTOCOL_PERSON_REPORT_METHODS_RESOURCE: "rt_protocol_person_report_methods",
|
|
1556
|
-
useResourceInvalidation: t.fn(() => e),
|
|
1557
|
-
useResourceMutation: t.fn(() => n),
|
|
1558
|
-
useEntityReferenceAdd: t.fn(() => o)
|
|
1559
|
-
};
|
|
1560
|
-
}
|
|
1561
1540
|
const He = "#1E96DC", Ne = /* @__PURE__ */ new Set(["state", "updatedAt", "value"]);
|
|
1562
1541
|
var G = /* @__PURE__ */ ((e) => (e[e.off = 0] = "off", e[e.moving = 1] = "moving", e[e.stopped = 2] = "stopped", e[e.stoppedRalenti = 3] = "stoppedRalenti", e[e.stoppedExcesiveRalenti = 4] = "stoppedExcesiveRalenti", e[e.towing = 5] = "towing", e[e.powerSaving = 6] = "powerSaving", e[e.maxSpeed = 7] = "maxSpeed", e[e.notDetectable = 250] = "notDetectable", e))(G || {}), J = /* @__PURE__ */ ((e) => (e[e.reliable = 0] = "reliable", e[e.acceptable = 1] = "acceptable", e[e.noSignal = 2] = "noSignal", e))(J || {});
|
|
1563
|
-
function
|
|
1542
|
+
function E(e) {
|
|
1564
1543
|
if (typeof e != "object" || e === null || Array.isArray(e))
|
|
1565
1544
|
return !1;
|
|
1566
1545
|
const n = Object.getPrototypeOf(e);
|
|
1567
1546
|
return n === Object.prototype || n === null;
|
|
1568
1547
|
}
|
|
1569
1548
|
function N(e) {
|
|
1570
|
-
return
|
|
1549
|
+
return E(e) ? Object.keys(e).some((n) => Ne.has(n)) : !1;
|
|
1571
1550
|
}
|
|
1572
1551
|
function qe(e, n) {
|
|
1573
1552
|
const o = e.updatedAt, r = n.updatedAt;
|
|
@@ -1601,7 +1580,7 @@ function j(e, n) {
|
|
|
1601
1580
|
};
|
|
1602
1581
|
if (Array.isArray(n))
|
|
1603
1582
|
return n;
|
|
1604
|
-
if (
|
|
1583
|
+
if (E(e) && E(n)) {
|
|
1605
1584
|
let o = n, r = !1;
|
|
1606
1585
|
return Object.entries(n).forEach(([a, i]) => {
|
|
1607
1586
|
const s = j(
|
|
@@ -1619,9 +1598,9 @@ function Ue(e, n) {
|
|
|
1619
1598
|
e,
|
|
1620
1599
|
n
|
|
1621
1600
|
);
|
|
1622
|
-
return
|
|
1601
|
+
return E(o) ? o : n;
|
|
1623
1602
|
}
|
|
1624
|
-
function
|
|
1603
|
+
function St({
|
|
1625
1604
|
baseModule: e = {},
|
|
1626
1605
|
moduleOverrides: n = {},
|
|
1627
1606
|
surface: o = "root"
|
|
@@ -1643,7 +1622,7 @@ function Pt({
|
|
|
1643
1622
|
...n
|
|
1644
1623
|
};
|
|
1645
1624
|
}
|
|
1646
|
-
function
|
|
1625
|
+
function Pt({
|
|
1647
1626
|
baseModule: e = {},
|
|
1648
1627
|
moduleOverrides: n = {}
|
|
1649
1628
|
} = {}) {
|
|
@@ -1669,7 +1648,7 @@ function At({
|
|
|
1669
1648
|
...n
|
|
1670
1649
|
};
|
|
1671
1650
|
}
|
|
1672
|
-
function
|
|
1651
|
+
function Mt({
|
|
1673
1652
|
baseModule: e = {},
|
|
1674
1653
|
moduleOverrides: n = {}
|
|
1675
1654
|
} = {}) {
|
|
@@ -1705,7 +1684,7 @@ function bt({
|
|
|
1705
1684
|
...n
|
|
1706
1685
|
};
|
|
1707
1686
|
}
|
|
1708
|
-
function
|
|
1687
|
+
function At({
|
|
1709
1688
|
baseModule: e = {},
|
|
1710
1689
|
moduleOverrides: n = {},
|
|
1711
1690
|
useFormContextData: o = {}
|
|
@@ -1728,12 +1707,12 @@ function Tt({
|
|
|
1728
1707
|
...n
|
|
1729
1708
|
};
|
|
1730
1709
|
}
|
|
1731
|
-
function
|
|
1710
|
+
function bt() {
|
|
1732
1711
|
return {
|
|
1733
1712
|
Resizable: t.fn(({ children: e }) => /* @__PURE__ */ u("div", { "data-testid": "resizable", children: e }))
|
|
1734
1713
|
};
|
|
1735
1714
|
}
|
|
1736
|
-
function
|
|
1715
|
+
function Tt({
|
|
1737
1716
|
baseModule: e = {},
|
|
1738
1717
|
moduleOverrides: n = {},
|
|
1739
1718
|
useMapData: o,
|
|
@@ -1831,11 +1810,10 @@ function Dt({
|
|
|
1831
1810
|
};
|
|
1832
1811
|
}
|
|
1833
1812
|
export {
|
|
1834
|
-
Dt as $,
|
|
1835
1813
|
H as A,
|
|
1836
1814
|
ot as B,
|
|
1837
1815
|
it as C,
|
|
1838
|
-
|
|
1816
|
+
O as D,
|
|
1839
1817
|
at as E,
|
|
1840
1818
|
st as F,
|
|
1841
1819
|
ct as G,
|
|
@@ -1846,19 +1824,18 @@ export {
|
|
|
1846
1824
|
pt as L,
|
|
1847
1825
|
ne as M,
|
|
1848
1826
|
mt as N,
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1827
|
+
W as O,
|
|
1828
|
+
yt as P,
|
|
1829
|
+
$e as Q,
|
|
1830
|
+
gt as R,
|
|
1853
1831
|
vt as S,
|
|
1854
1832
|
ht as T,
|
|
1855
1833
|
St as U,
|
|
1856
|
-
|
|
1857
|
-
|
|
1834
|
+
Pt as V,
|
|
1835
|
+
Mt as W,
|
|
1858
1836
|
At as X,
|
|
1859
1837
|
bt as Y,
|
|
1860
1838
|
Tt as Z,
|
|
1861
|
-
Ct as _,
|
|
1862
1839
|
oe as a,
|
|
1863
1840
|
ie as b,
|
|
1864
1841
|
ae as c,
|
|
@@ -1872,17 +1849,17 @@ export {
|
|
|
1872
1849
|
v as k,
|
|
1873
1850
|
De as l,
|
|
1874
1851
|
T as m,
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1852
|
+
ke as n,
|
|
1853
|
+
Fe as o,
|
|
1854
|
+
Ee as p,
|
|
1855
|
+
Oe as q,
|
|
1879
1856
|
Ie as r,
|
|
1880
|
-
|
|
1857
|
+
Le as s,
|
|
1881
1858
|
tt as t,
|
|
1882
1859
|
C as u,
|
|
1883
1860
|
rt as v,
|
|
1884
|
-
|
|
1885
|
-
|
|
1861
|
+
_e as w,
|
|
1862
|
+
we as x,
|
|
1886
1863
|
nt as y,
|
|
1887
|
-
|
|
1864
|
+
Re as z
|
|
1888
1865
|
};
|
package/index.js
CHANGED
|
@@ -1,80 +1,78 @@
|
|
|
1
1
|
import { act as o } from "react";
|
|
2
|
-
import { afterAll as r, afterEach as c, beforeAll as s, beforeEach as M, describe as l, expect as n, it as i, test as k, vi as
|
|
2
|
+
import { afterAll as r, afterEach as c, beforeAll as s, beforeEach as M, describe as l, expect as n, it as i, test as k, vi as p } from "vitest";
|
|
3
3
|
import { cleanup as u, fireEvent as m, renderHook as C, screen as f, waitFor as g, within as A } from "@testing-library/react";
|
|
4
4
|
import { default as E } from "@testing-library/user-event";
|
|
5
|
-
import { c as
|
|
6
|
-
import { D as
|
|
5
|
+
import { c as S } from "./chunks/render-CsuV8xqo.js";
|
|
6
|
+
import { D as x, a as L, M as R, f as D, v as _, y as G, s as h, k as b, h as B, u as H, z as I, p as O, l as T, o as w, P as y, G as N, H as W, J as K, I as U, N as V, K as z, L as Y, O as Z, Q as j, R as q, S as J, T as Q, U as X, V as $, W as ee, m as ae, q as oe, j as te, n as re, Y as ce, X as se, Z as Me, i as le, t as ne, r as ie, d as ke, b as pe, c as de, e as ue, g as me, B as Ce, A as fe, C as ge, w as Ae, E as Fe, F as Ee, x as Pe } from "./chunks/reactLeaflet-Ca5S8G_T.js";
|
|
7
7
|
export {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
x as DEFAULT_RHF_SUBMIT_REF_GLOBAL_KEY,
|
|
9
|
+
L as M4L_APP_DATAGRID_SEMANTIC_WIDTHS,
|
|
10
|
+
R as M4L_APP_WINDOW_SIZES,
|
|
11
11
|
o as act,
|
|
12
12
|
r as afterAll,
|
|
13
13
|
c as afterEach,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
D as assertColumnConfigs,
|
|
15
|
+
_ as assertFilterFields,
|
|
16
|
+
G as assertSortFields,
|
|
17
17
|
s as beforeAll,
|
|
18
18
|
M as beforeEach,
|
|
19
19
|
u as cleanup,
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
20
|
+
h as createActionButtonComponentMock,
|
|
21
|
+
b as createChildrenContainerComponentMock,
|
|
22
|
+
B as createChildrenDivComponentMock,
|
|
23
|
+
H as createDataGridColumnHookMock,
|
|
24
|
+
I as createDefaultM4lPackageGclickMapStoreState,
|
|
25
|
+
O as createDividerComponentMock,
|
|
26
|
+
T as createHelmetPageComponentMock,
|
|
27
|
+
w as createIconComponentMock,
|
|
28
|
+
y as createLeafletModuleMock,
|
|
29
29
|
N as createM4lAppBaseModuleMock,
|
|
30
30
|
W as createM4lAppComponentsModuleMock,
|
|
31
31
|
K as createM4lAppCoreModuleMock,
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
U as createM4lAppFormComponentsModuleOverrides,
|
|
33
|
+
V as createM4lAppFormLayoutsModuleOverrides,
|
|
34
|
+
z as createM4lAppGraphicsModuleMock,
|
|
35
35
|
Y as createM4lAppLayoutsModuleMock,
|
|
36
36
|
Z as createM4lBaseComponentsModuleMock,
|
|
37
|
-
j as
|
|
38
|
-
q as
|
|
39
|
-
J as
|
|
40
|
-
Q as
|
|
41
|
-
X as
|
|
42
|
-
$ as
|
|
43
|
-
ee as
|
|
44
|
-
ae as
|
|
45
|
-
oe as
|
|
46
|
-
te as
|
|
47
|
-
re as
|
|
48
|
-
ce as
|
|
49
|
-
se as
|
|
50
|
-
Me as
|
|
51
|
-
le as
|
|
52
|
-
ne as
|
|
53
|
-
ie as
|
|
54
|
-
ke as
|
|
55
|
-
|
|
56
|
-
pe as defaultM4lAppEnvironmentOverrides,
|
|
57
|
-
ue as defaultM4lPackageEnvironmentOverrides,
|
|
37
|
+
j as createM4lPackageBaseModuleMock,
|
|
38
|
+
q as createM4lPackageComponentsModuleMock,
|
|
39
|
+
J as createM4lPackageCoreModuleMock,
|
|
40
|
+
Q as createM4lPackageGclickModuleMock,
|
|
41
|
+
X as createM4lPackageGclickRealtimeModuleMock,
|
|
42
|
+
$ as createM4lPackageGraphicsModuleMock,
|
|
43
|
+
ee as createM4lPackageLayoutsModuleMock,
|
|
44
|
+
ae as createNamedFieldComponentMock,
|
|
45
|
+
oe as createNavLinkComponentMock,
|
|
46
|
+
te as createPaperFormComponentMock,
|
|
47
|
+
re as createPropertyValueComponentMock,
|
|
48
|
+
ce as createReResizableModuleMock,
|
|
49
|
+
se as createReactHookFormModuleMock,
|
|
50
|
+
Me as createReactLeafletModuleMock,
|
|
51
|
+
le as createStaticDivComponentMock,
|
|
52
|
+
ne as createSuspenseLoadableComponentMock,
|
|
53
|
+
ie as createWindowBaseComponentMock,
|
|
54
|
+
ke as defaultM4lAppEnvironmentOverrides,
|
|
55
|
+
pe as defaultM4lPackageEnvironmentOverrides,
|
|
58
56
|
l as describe,
|
|
59
|
-
|
|
57
|
+
de as distanceToNowFormatterFixture,
|
|
60
58
|
n as expect,
|
|
61
59
|
m as fireEvent,
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
60
|
+
ue as gclickGnssMotionStatusEnumFixture,
|
|
61
|
+
me as gclickGnssSignalEnumFixture,
|
|
62
|
+
Ce as getMissingModuleMockExports,
|
|
63
|
+
fe as getModuleExportContractKind,
|
|
64
|
+
ge as getModuleMockKindMismatches,
|
|
65
|
+
Ae as getRHFSubmitRef,
|
|
66
|
+
Fe as installConsoleErrorFilter,
|
|
67
|
+
Ee as installRhfOnSubmitRef,
|
|
70
68
|
i as it,
|
|
71
|
-
|
|
69
|
+
S as render,
|
|
72
70
|
C as renderHook,
|
|
73
71
|
f as screen,
|
|
74
|
-
|
|
72
|
+
Pe as stringifyViewerData,
|
|
75
73
|
k as test,
|
|
76
74
|
E as userEvent,
|
|
77
|
-
|
|
75
|
+
p as vi,
|
|
78
76
|
g as waitFor,
|
|
79
77
|
A as within
|
|
80
78
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@m4l/testing",
|
|
3
|
-
"version": "1.2.1-beta-
|
|
3
|
+
"version": "1.2.1-beta-fix-reports-viewer-chart-tab-resize.0",
|
|
4
4
|
"description": "Shared M4L testing contracts for React, Vitest and Playwright",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"engines": {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Stable module id used by shared testing fixtures that need a deterministic
|
|
2
|
+
* Stable module id used by shared testing fixtures that need a deterministic.
|
|
3
3
|
* module identity without coupling the fixture back to one package.
|
|
4
4
|
*/
|
|
5
5
|
export declare const testModuleId = "testing";
|
package/types/packages/testing/playwright/src/installers/installHostUiConfigAssetRoutes.d.ts
CHANGED
|
@@ -4,6 +4,6 @@ import type { HostUIConfigFixture } from '../types';
|
|
|
4
4
|
* no-auth shell can render deterministically without hitting remote storage.
|
|
5
5
|
*/
|
|
6
6
|
export declare function installHostUiConfigAssetRoutes(options: {
|
|
7
|
-
page: import('@playwright/test').Page;
|
|
7
|
+
page: import('@playwright/test').Page | import('@playwright/test').BrowserContext;
|
|
8
8
|
uiConfig?: Partial<HostUIConfigFixture>;
|
|
9
9
|
}): Promise<void>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Page } from '@playwright/test';
|
|
1
|
+
import type { BrowserContext, Page } from '@playwright/test';
|
|
2
2
|
/**
|
|
3
3
|
* Shared UI-config payload shape used by host-style Playwright mocks.
|
|
4
4
|
* Keep this contract local to the testing library so app E2E projects can
|
|
@@ -206,7 +206,7 @@ export type HostMutationFixture = HostMutationSuccessFixture | HostMutationError
|
|
|
206
206
|
* Installs the shared UI-config bootstrap route.
|
|
207
207
|
*/
|
|
208
208
|
export interface InstallHostUIConfigRouteOptions {
|
|
209
|
-
page: Page;
|
|
209
|
+
page: Page | BrowserContext;
|
|
210
210
|
uiConfig?: Partial<HostUIConfigFixture>;
|
|
211
211
|
status?: number;
|
|
212
212
|
delayMs?: number;
|
|
@@ -230,7 +230,7 @@ export interface InstallHostGuestSessionRouteOptions {
|
|
|
230
230
|
* Installs the shared authenticated session bootstrap route.
|
|
231
231
|
*/
|
|
232
232
|
export interface InstallHostAuthenticatedSessionRouteOptions {
|
|
233
|
-
page: Page;
|
|
233
|
+
page: Page | BrowserContext;
|
|
234
234
|
session?: Partial<HostAuthenticatedSessionUserFixture>;
|
|
235
235
|
status?: number;
|
|
236
236
|
delayMs?: number;
|
|
@@ -239,14 +239,14 @@ export interface InstallHostAuthenticatedSessionRouteOptions {
|
|
|
239
239
|
* Installs the shared locale bootstrap route.
|
|
240
240
|
*/
|
|
241
241
|
export interface InstallHostLocaleRouteOptions {
|
|
242
|
-
page: Page;
|
|
242
|
+
page: Page | BrowserContext;
|
|
243
243
|
locale?: Partial<HostLocaleFixture>;
|
|
244
244
|
}
|
|
245
245
|
/**
|
|
246
246
|
* Installs the shared authenticated user-preferences bootstrap route.
|
|
247
247
|
*/
|
|
248
248
|
export interface InstallHostUserPreferencesRouteOptions {
|
|
249
|
-
page: Page;
|
|
249
|
+
page: Page | BrowserContext;
|
|
250
250
|
userPreferences?: Partial<HostUserPreferencesFixture>;
|
|
251
251
|
status?: number;
|
|
252
252
|
delayMs?: number;
|
|
@@ -255,7 +255,7 @@ export interface InstallHostUserPreferencesRouteOptions {
|
|
|
255
255
|
* Installs the shared no-auth dictionary bootstrap route.
|
|
256
256
|
*/
|
|
257
257
|
export interface InstallHostModuleDictionaryRouteOptions {
|
|
258
|
-
page: Page;
|
|
258
|
+
page: Page | BrowserContext;
|
|
259
259
|
moduleId: string;
|
|
260
260
|
moduleDictionary?: HostModuleDictionaryFixture;
|
|
261
261
|
isAuth?: boolean;
|
|
@@ -272,21 +272,21 @@ export interface InstallHostAuthenticatedMfModuleDictionaryRouteOptions extends
|
|
|
272
272
|
* Installs the shared authenticated areas route.
|
|
273
273
|
*/
|
|
274
274
|
export interface InstallHostAreasRouteOptions {
|
|
275
|
-
page: Page;
|
|
275
|
+
page: Page | BrowserContext;
|
|
276
276
|
areas?: HostAreaFixture[];
|
|
277
277
|
}
|
|
278
278
|
/**
|
|
279
279
|
* Installs the shared cookies route used by the platform shell.
|
|
280
280
|
*/
|
|
281
281
|
export interface InstallHostCookiesRouteOptions {
|
|
282
|
-
page: Page;
|
|
282
|
+
page: Page | BrowserContext;
|
|
283
283
|
cookies?: HostCookieFixture[];
|
|
284
284
|
}
|
|
285
285
|
/**
|
|
286
286
|
* Installs the shared menus route used by the platform shell.
|
|
287
287
|
*/
|
|
288
288
|
export interface InstallHostMenusRouteOptions {
|
|
289
|
-
page: Page;
|
|
289
|
+
page: Page | BrowserContext;
|
|
290
290
|
menuData?: HostMenuItemFixture[];
|
|
291
291
|
/**
|
|
292
292
|
* Rows served to the **account popover** (`menus?position=1`), the door the host
|
|
@@ -321,7 +321,7 @@ export interface InstallHostGuestBootstrapRoutesOptions {
|
|
|
321
321
|
* Installs a complete authenticated bootstrap baseline for host-style apps.
|
|
322
322
|
*/
|
|
323
323
|
export interface InstallHostAuthenticatedBootstrapRoutesOptions {
|
|
324
|
-
page: Page;
|
|
324
|
+
page: Page | BrowserContext;
|
|
325
325
|
moduleId: string;
|
|
326
326
|
uiConfig?: Partial<HostUIConfigFixture>;
|
|
327
327
|
uiConfigRouteOptions?: HostUiConfigRouteControlOptions;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CreateM4lAppComponentsModuleMockOptions, CreateM4lAppFormComponentsModuleOverridesOptions,
|
|
1
|
+
import type { CreateM4lAppComponentsModuleMockOptions, CreateM4lAppFormComponentsModuleOverridesOptions, VitestModuleMockExports } from '../../types';
|
|
2
2
|
/**
|
|
3
3
|
* Builds the shared `@m4l/components` mock payload used by M4L app test
|
|
4
4
|
* setups.
|
|
@@ -18,5 +18,3 @@ export declare function createM4lAppComponentsModuleMock({ baseModule, moduleOve
|
|
|
18
18
|
* `moduleOverrides` payloads.
|
|
19
19
|
*/
|
|
20
20
|
export declare function createM4lAppFormComponentsModuleOverrides({ dynamicMFParameters, }?: CreateM4lAppFormComponentsModuleOverridesOptions): VitestModuleMockExports;
|
|
21
|
-
/** Isolate MF completion observers for app tests while leaving the standard factory's real exports intact. */
|
|
22
|
-
export declare function createM4lMFActionModuleOverrides(): MFActionModuleOverrides;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CreateM4lPackageGclickModuleMockOptions,
|
|
1
|
+
import type { CreateM4lPackageGclickModuleMockOptions, VitestModuleMockExports } from '../../types';
|
|
2
2
|
/**
|
|
3
3
|
* Builds the shared `@m4l/gclick` mock payload used by tests that depend on
|
|
4
4
|
* the exact runtime package.
|
|
@@ -8,5 +8,3 @@ import type { CreateM4lPackageGclickModuleMockOptions, ResourceSynchronizationMo
|
|
|
8
8
|
* on orchestration logic.
|
|
9
9
|
*/
|
|
10
10
|
export declare function createM4lPackageGclickModuleMock({ baseModule, mapStoreState, moduleOverrides, }?: CreateM4lPackageGclickModuleMockOptions): VitestModuleMockExports;
|
|
11
|
-
/** Supply isolated resource hooks and stable identities without loading unrelated GClick feature runtimes. */
|
|
12
|
-
export declare function createM4lResourceSynchronizationModuleOverrides(): ResourceSynchronizationModuleOverrides;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { EnvironmentFixture, HostToolsFixture, UserPreferencesFixture } from '../../mocks/src/index';
|
|
2
2
|
import type React from 'react';
|
|
3
|
-
import type { Mock } from 'vitest';
|
|
4
3
|
export type UnknownRecord = Record<string, unknown>;
|
|
5
4
|
export type VitestModuleMockExports = Record<string, unknown>;
|
|
6
5
|
export type PropsWithChildren = {
|
|
@@ -68,12 +67,6 @@ export interface CreateM4lAppComponentsModuleMockOptions extends CreateVitestMod
|
|
|
68
67
|
export interface CreateM4lAppFormComponentsModuleOverridesOptions {
|
|
69
68
|
dynamicMFParameters?: UnknownRecord;
|
|
70
69
|
}
|
|
71
|
-
/** Describe opt-in MF completion collaborators without importing the runtime component package. */
|
|
72
|
-
export type MFActionModuleOverrides = {
|
|
73
|
-
MF_ACTION_REQUEST_PARAM: 'mfActionRequest';
|
|
74
|
-
completeMFAction: Mock<(hostTools: unknown, request: unknown, outcome: unknown) => void>;
|
|
75
|
-
isMFActionRequest: Mock<(value: unknown) => boolean>;
|
|
76
|
-
};
|
|
77
70
|
export interface CreateM4lAppFormLayoutsModuleOverridesOptions {
|
|
78
71
|
createComponentFieldImplementation?: (field: UnknownRecord) => unknown;
|
|
79
72
|
}
|
|
@@ -102,31 +95,6 @@ export type CreateM4lPackageGraphicsModuleMockOptions = CreateVitestModuleMockOp
|
|
|
102
95
|
export interface CreateM4lPackageGclickModuleMockOptions extends CreateVitestModuleMockOptions {
|
|
103
96
|
mapStoreState?: UnknownRecord;
|
|
104
97
|
}
|
|
105
|
-
/** Mirrors the committed-mutation input needed by resource synchronization mocks. */
|
|
106
|
-
export interface ResourceMutationMockInput {
|
|
107
|
-
mutation: 'created' | 'updated' | 'deleted' | 'revalidate';
|
|
108
|
-
entityId: string;
|
|
109
|
-
operationId?: string;
|
|
110
|
-
requestId?: string;
|
|
111
|
-
requesterWindowId?: string;
|
|
112
|
-
}
|
|
113
|
-
/** Names resource-hook mocks through Vitest's public types for portable declarations. */
|
|
114
|
-
export type ResourceSynchronizationModuleOverrides = {
|
|
115
|
-
PERSONS_RESOURCE: 'rt_persons';
|
|
116
|
-
PROTOCOL_PERSON_REPORT_METHODS_RESOURCE: 'rt_protocol_person_report_methods';
|
|
117
|
-
useResourceInvalidation: Mock<() => {
|
|
118
|
-
scopeKey: string;
|
|
119
|
-
refreshKey: string | undefined;
|
|
120
|
-
}>;
|
|
121
|
-
useResourceMutation: Mock<() => {
|
|
122
|
-
scopeKey: string;
|
|
123
|
-
publishResourceChange: Mock<(change: ResourceMutationMockInput) => Promise<string>>;
|
|
124
|
-
reportFailure: Mock;
|
|
125
|
-
}>;
|
|
126
|
-
useEntityReferenceAdd: Mock<() => Mock<() => Promise<{
|
|
127
|
-
status: 'cancelled';
|
|
128
|
-
}>>>;
|
|
129
|
-
};
|
|
130
98
|
export interface CreateM4lPackageGclickRealtimeModuleMockOptions extends CreateVitestModuleMockOptions {
|
|
131
99
|
surface?: 'root' | 'payload' | 'contracts';
|
|
132
100
|
}
|
package/vitest/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { D as o, a as t, M as c, f as s, v as r, y as M, s as l, k as n, h as i, u as k, z as
|
|
1
|
+
import { D as o, a as t, M as c, f as s, v as r, y as M, s as l, k as n, h as i, u as k, z as p, p as d, l as u, o as m, P as C, G as g, H as F, J as A, I as P, N as S, K as E, L, O as R, Q as f, R as D, S as _, T as v, U as G, V as B, W as I, m as O, q as h, j as x, n as H, Y as T, X as y, Z as N, i as b, t as W, r as w, d as K, b as U, c as V, e as z, g as Y, B as Z, A as j, C as q, w as J, E as Q, F as X, x as $ } from "../chunks/reactLeaflet-Ca5S8G_T.js";
|
|
2
2
|
export {
|
|
3
3
|
o as DEFAULT_RHF_SUBMIT_REF_GLOBAL_KEY,
|
|
4
4
|
t as M4L_APP_DATAGRID_SEMANTIC_WIDTHS,
|
|
@@ -10,9 +10,9 @@ export {
|
|
|
10
10
|
n as createChildrenContainerComponentMock,
|
|
11
11
|
i as createChildrenDivComponentMock,
|
|
12
12
|
k as createDataGridColumnHookMock,
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
p as createDefaultM4lPackageGclickMapStoreState,
|
|
14
|
+
d as createDividerComponentMock,
|
|
15
|
+
u as createHelmetPageComponentMock,
|
|
16
16
|
m as createIconComponentMock,
|
|
17
17
|
C as createLeafletModuleMock,
|
|
18
18
|
g as createM4lAppBaseModuleMock,
|
|
@@ -20,38 +20,36 @@ export {
|
|
|
20
20
|
A as createM4lAppCoreModuleMock,
|
|
21
21
|
P as createM4lAppFormComponentsModuleOverrides,
|
|
22
22
|
S as createM4lAppFormLayoutsModuleOverrides,
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
G as
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
x as
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
N as
|
|
40
|
-
b as
|
|
41
|
-
W as
|
|
42
|
-
w as
|
|
43
|
-
K as
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
Y as
|
|
48
|
-
Z as
|
|
49
|
-
j as
|
|
50
|
-
q as
|
|
51
|
-
J as
|
|
52
|
-
Q as
|
|
53
|
-
X as
|
|
54
|
-
$ as
|
|
55
|
-
ee as installRhfOnSubmitRef,
|
|
56
|
-
ae as stringifyViewerData
|
|
23
|
+
E as createM4lAppGraphicsModuleMock,
|
|
24
|
+
L as createM4lAppLayoutsModuleMock,
|
|
25
|
+
R as createM4lBaseComponentsModuleMock,
|
|
26
|
+
f as createM4lPackageBaseModuleMock,
|
|
27
|
+
D as createM4lPackageComponentsModuleMock,
|
|
28
|
+
_ as createM4lPackageCoreModuleMock,
|
|
29
|
+
v as createM4lPackageGclickModuleMock,
|
|
30
|
+
G as createM4lPackageGclickRealtimeModuleMock,
|
|
31
|
+
B as createM4lPackageGraphicsModuleMock,
|
|
32
|
+
I as createM4lPackageLayoutsModuleMock,
|
|
33
|
+
O as createNamedFieldComponentMock,
|
|
34
|
+
h as createNavLinkComponentMock,
|
|
35
|
+
x as createPaperFormComponentMock,
|
|
36
|
+
H as createPropertyValueComponentMock,
|
|
37
|
+
T as createReResizableModuleMock,
|
|
38
|
+
y as createReactHookFormModuleMock,
|
|
39
|
+
N as createReactLeafletModuleMock,
|
|
40
|
+
b as createStaticDivComponentMock,
|
|
41
|
+
W as createSuspenseLoadableComponentMock,
|
|
42
|
+
w as createWindowBaseComponentMock,
|
|
43
|
+
K as defaultM4lAppEnvironmentOverrides,
|
|
44
|
+
U as defaultM4lPackageEnvironmentOverrides,
|
|
45
|
+
V as distanceToNowFormatterFixture,
|
|
46
|
+
z as gclickGnssMotionStatusEnumFixture,
|
|
47
|
+
Y as gclickGnssSignalEnumFixture,
|
|
48
|
+
Z as getMissingModuleMockExports,
|
|
49
|
+
j as getModuleExportContractKind,
|
|
50
|
+
q as getModuleMockKindMismatches,
|
|
51
|
+
J as getRHFSubmitRef,
|
|
52
|
+
Q as installConsoleErrorFilter,
|
|
53
|
+
X as installRhfOnSubmitRef,
|
|
54
|
+
$ as stringifyViewerData
|
|
57
55
|
};
|