pi-kiosk-shared 2.3.0 → 2.3.3
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 +21 -6
- package/dist/components/DatabaseUnavailable.d.ts +12 -7
- package/dist/components/DatabaseUnavailable.d.ts.map +1 -1
- package/dist/components/DatabaseUnavailable.js +58 -48
- package/dist/components/DatabaseUnavailable.js.map +1 -1
- package/dist/hooks/databaseHealthCoordinator.d.ts +1 -0
- package/dist/hooks/databaseHealthCoordinator.d.ts.map +1 -1
- package/dist/hooks/databaseHealthCoordinator.js +7 -0
- package/dist/hooks/databaseHealthCoordinator.js.map +1 -1
- package/dist/hooks/useDatabaseHealth.d.ts +1 -1
- package/dist/hooks/useDatabaseHealth.d.ts.map +1 -1
- package/dist/hooks/useDatabaseHealth.js +2 -0
- package/dist/hooks/useDatabaseHealth.js.map +1 -1
- package/dist/sentry/initSentry.d.ts.map +1 -1
- package/dist/sentry/initSentry.js +5 -5
- package/dist/sentry/initSentry.js.map +1 -1
- package/dist/tenant-entitlements/applyTenantScopeToSimpleStates.d.ts +9 -0
- package/dist/tenant-entitlements/applyTenantScopeToSimpleStates.d.ts.map +1 -1
- package/dist/tenant-entitlements/applyTenantScopeToSimpleStates.js +42 -2
- package/dist/tenant-entitlements/applyTenantScopeToSimpleStates.js.map +1 -1
- package/dist/tenant-entitlements/index.d.ts +1 -1
- package/dist/tenant-entitlements/index.d.ts.map +1 -1
- package/dist/tenant-entitlements/index.js +1 -1
- package/dist/tenant-entitlements/index.js.map +1 -1
- package/dist/ui/index.d.ts +1 -1
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +1 -1
- package/dist/ui/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/analyticsPiiTags.d.ts +0 -6
- package/dist/analyticsPiiTags.d.ts.map +0 -1
- package/dist/api.d.ts +0 -129
- package/dist/api.d.ts.map +0 -1
- package/dist/api.js +0 -305
- package/dist/api.js.map +0 -1
- package/dist/auditEventCodes.d.ts +0 -8
- package/dist/auditEventCodes.d.ts.map +0 -1
- package/dist/auditEventCodes.js +0 -180
- package/dist/auditEventCodes.js.map +0 -1
- package/dist/auditEventDescriptions.d.ts +0 -5
- package/dist/auditEventDescriptions.d.ts.map +0 -1
- package/dist/auditEventDescriptions.js +0 -849
- package/dist/auditEventDescriptions.js.map +0 -1
- package/dist/auditEventLabels.d.ts +0 -4
- package/dist/auditEventLabels.d.ts.map +0 -1
- package/dist/auditEventLabels.js +0 -858
- package/dist/auditEventLabels.js.map +0 -1
- package/dist/auditMetadataDisplayFields.d.ts +0 -9
- package/dist/auditMetadataDisplayFields.d.ts.map +0 -1
- package/dist/auditMetadataDisplayFields.js +0 -273
- package/dist/auditMetadataDisplayFields.js.map +0 -1
- package/dist/barcode/normalizeScanPayload.d.ts +0 -17
- package/dist/barcode/normalizeScanPayload.d.ts.map +0 -1
- package/dist/barcode/normalizeScanPayload.js +0 -100
- package/dist/barcode/normalizeScanPayload.js.map +0 -1
- package/dist/checkout/sessionMetadataV3.d.ts +0 -36
- package/dist/checkout/sessionMetadataV3.d.ts.map +0 -1
- package/dist/checkout/sessionMetadataV3.js +0 -6
- package/dist/checkout/sessionMetadataV3.js.map +0 -1
- package/dist/checkout/sessionMetadataV4.d.ts +0 -19
- package/dist/checkout/sessionMetadataV4.d.ts.map +0 -1
- package/dist/checkout/sessionMetadataV4.js +0 -33
- package/dist/checkout/sessionMetadataV4.js.map +0 -1
- package/dist/checkout/sessionMetadataV5.d.ts +0 -46
- package/dist/checkout/sessionMetadataV5.d.ts.map +0 -1
- package/dist/checkout/sessionMetadataV5.js +0 -40
- package/dist/checkout/sessionMetadataV5.js.map +0 -1
- package/dist/errors/pickLocalizedApiMessage.d.ts +0 -6
- package/dist/errors/pickLocalizedApiMessage.d.ts.map +0 -1
- package/dist/errors/pickLocalizedApiMessage.js +0 -31
- package/dist/errors/pickLocalizedApiMessage.js.map +0 -1
- package/dist/hooks/scannerCameraConstraints.d.ts +0 -57
- package/dist/hooks/scannerCameraConstraints.d.ts.map +0 -1
- package/dist/hooks/scannerCameraConstraints.js +0 -195
- package/dist/hooks/scannerCameraConstraints.js.map +0 -1
- package/dist/hooks/scannerFormats.d.ts +0 -11
- package/dist/hooks/scannerFormats.d.ts.map +0 -1
- package/dist/hooks/scannerFormats.js +0 -39
- package/dist/hooks/scannerFormats.js.map +0 -1
- package/dist/hooks/scannerNativeTypes.d.ts +0 -18
- package/dist/hooks/scannerNativeTypes.d.ts.map +0 -1
- package/dist/hooks/scannerNativeTypes.js +0 -2
- package/dist/hooks/scannerNativeTypes.js.map +0 -1
- package/dist/hooks/scannerPlatformProfile.d.ts +0 -23
- package/dist/hooks/scannerPlatformProfile.d.ts.map +0 -1
- package/dist/hooks/scannerPlatformProfile.js +0 -86
- package/dist/hooks/scannerPlatformProfile.js.map +0 -1
- package/dist/hooks/scannerScanPasses.d.ts +0 -23
- package/dist/hooks/scannerScanPasses.d.ts.map +0 -1
- package/dist/hooks/scannerScanPasses.js +0 -66
- package/dist/hooks/scannerScanPasses.js.map +0 -1
- package/dist/hooks/selectEngine.d.ts +0 -14
- package/dist/hooks/selectEngine.d.ts.map +0 -1
- package/dist/hooks/selectEngine.js +0 -2
- package/dist/hooks/selectEngine.js.map +0 -1
- package/dist/hooks/zxingJsSensitiveDecode.d.ts +0 -13
- package/dist/hooks/zxingJsSensitiveDecode.d.ts.map +0 -1
- package/dist/hooks/zxingJsSensitiveDecode.js +0 -54
- package/dist/hooks/zxingJsSensitiveDecode.js.map +0 -1
- package/dist/labels/localizedNameMap.d.ts +0 -37
package/README.md
CHANGED
|
@@ -9,7 +9,7 @@ Shared types, API contracts, and error classes for the Pi Kiosk system.
|
|
|
9
9
|
|
|
10
10
|
## Temporary retention
|
|
11
11
|
|
|
12
|
-
`up-backend` keeps production `react` / `react-dom` until cold/start paths consume a Node-safe published or overlaid main barrel. Do **not** drop those deps until that consume path is proven on the version actually installed (registry tarball from `npm view`, or monorepo overlay of sibling `../shared` **2.2
|
|
12
|
+
`up-backend` keeps production `react` / `react-dom` until cold/start paths consume a Node-safe published or overlaid main barrel. Do **not** drop those deps until that consume path is proven on the version actually installed (registry tarball from `npm view`, or monorepo overlay of sibling `../shared` **2.3.2**). Same caveat as `up-backend/docs/DEPLOYMENT/DEPLOY_SEPARATE_REPOS.md`.
|
|
13
13
|
|
|
14
14
|
## Installation
|
|
15
15
|
|
|
@@ -74,14 +74,29 @@ Frontends import React modules from `/ui`. The **target** main barrel (local ove
|
|
|
74
74
|
|
|
75
75
|
## Local monorepo overlay
|
|
76
76
|
|
|
77
|
-
**Honesty (SSOT):** Live monorepo source is `shared/package.json` **2.2
|
|
77
|
+
**Honesty (SSOT):** Live monorepo source is `shared/package.json` **2.3.2** (service-unavailable UX, ZBar WASM primary + still-image snap). All consumers pin **`^2.3.2`** in `package.json`. Lockfiles currently resolve **registry** `https://registry.npmjs.org/pi-kiosk-shared/-/pi-kiosk-shared-2.3.2.tgz` — the rewrite ships when that tarball is published **or** when monorepo overlay / local tarball bootstrap is used (below).
|
|
78
|
+
|
|
79
|
+
### Distribution paths (pick one per checkout)
|
|
80
|
+
|
|
81
|
+
| Path | When | How UI rewrite reaches `node_modules` |
|
|
82
|
+
|------|------|----------------------------------------|
|
|
83
|
+
| **A — Monorepo overlay (local dev)** | Sibling `../shared` present | `npm install` / `npm ci` → `overlaySharedIfPresent.mjs` → `ensureDist.mjs` copies `shared/dist` into `node_modules/pi-kiosk-shared`. Vite alias reads sibling `dist` when present. |
|
|
84
|
+
| **B — Registry `^2.3.2` (default locks)** | App-only clone / Railway | `npm ci` installs published tarball. **Requires** `npm view pi-kiosk-shared@2.3.2` to include the rewrite (publish after `shared` bump). |
|
|
85
|
+
| **C — File tarball bootstrap (CI strict `npm ci`)** | Locks pinned to `file:../shared/pi-kiosk-shared-2.3.2.tgz` | Run `node scripts/workspace/bootstrap-pi-kiosk-shared-tarball.mjs` (repack + ephemeral integrity patch), then consumer `npm ci`. Tarball is **gitignored** — not in VCS. |
|
|
86
|
+
|
|
87
|
+
Verify local pack contents after `cd shared && npm run publish:local`:
|
|
88
|
+
|
|
89
|
+
```powershell
|
|
90
|
+
tar -tf pi-kiosk-shared-2.3.2.tgz | Select-String DatabaseUnavailable
|
|
91
|
+
# dist/components/DatabaseUnavailable.js must contain "Aplikace teď není dostupná"
|
|
92
|
+
```
|
|
78
93
|
|
|
79
94
|
### Consumer lock tarball bootstrap (Strategy A — optional)
|
|
80
95
|
|
|
81
|
-
When frontends use a **file tarball** pin (instead of registry `^2.2
|
|
96
|
+
When frontends use a **file tarball** pin (instead of registry `^2.3.2`):
|
|
82
97
|
|
|
83
98
|
```json
|
|
84
|
-
"pi-kiosk-shared": "file:../shared/pi-kiosk-shared-2.2.
|
|
99
|
+
"pi-kiosk-shared": "file:../shared/pi-kiosk-shared-2.3.2.tgz"
|
|
85
100
|
```
|
|
86
101
|
|
|
87
102
|
The tarball is **gitignored** (`*.tgz` in repo root `.gitignore`) and is **not** in VCS. A fresh clone has no pack file until you build it:
|
|
@@ -114,7 +129,7 @@ npm ci
|
|
|
114
129
|
|
|
115
130
|
**Local dev (preferred):** sibling `../shared` + `postinstall`/`prepare` overlay via `ensureDist.mjs` — tarball optional when the monorepo layout is complete and overlay runs on install.
|
|
116
131
|
|
|
117
|
-
**Registry-only / Railway app-only clones:** with **registry `^2.2
|
|
132
|
+
**Registry-only / Railway app-only clones:** with **registry `^2.3.2` pins** (current monorepo `package.json`/locks), bare **`npm ci` succeeds** on app-only checkouts — no sibling tarball required. If you use **monorepo `file:` tarball pins** instead, bare `npm ci` **fails** on app-only clones (missing pack file). **`prebuildShared.mjs` runs on `predev` / `prebuild` only** — npm has already finished `install`/`ci` by then, and the script does **not** rewrite `package.json` or `package-lock.json` (it side-installs `pi-kiosk-shared` into `node_modules` with `--no-save`, which does **not** make a later strict `npm ci` succeed on `file:` pins). App-only options for `file:` pins: **(a)** run `cd shared && npm run publish:local` and ensure `../shared/pi-kiosk-shared-<version>.tgz` exists on disk before consumer `npm ci` (see [Consumer lock tarball bootstrap](#consumer-lock-tarball-bootstrap)), or **(b)** commit app-only `package.json`/lock with registry pins (same as current monorepo). Confirm with `npm view pi-kiosk-shared version` at deploy time.
|
|
118
133
|
|
|
119
134
|
**Documented cold path (monorepo):** `npm ci` / `npm install` in each app runs lifecycle hooks → `scripts/overlaySharedIfPresent.mjs` → `shared/scripts/ensureDist.mjs` when sibling `../shared` exists:
|
|
120
135
|
|
|
@@ -151,7 +166,7 @@ npm run gate:main-barrel-node-safe
|
|
|
151
166
|
|
|
152
167
|
From `shared/`, prove the documented cold path:
|
|
153
168
|
|
|
154
|
-
1. **DIAGNOSTIC** — `npm pack` a known Node-safe registry tarball (`COLD_VERSION` in `prove-pi-kiosk-shared-cold-overlay.mjs`, currently `2.2.82` — intentional historical diagnostic fixture, not the live pin) in a temp dir and assert COLD_BAD markers (never installs into a consumer with `--ignore-scripts`). Live monorepo source is `shared/package.json` **2.2
|
|
169
|
+
1. **DIAGNOSTIC** — `npm pack` a known Node-safe registry tarball (`COLD_VERSION` in `prove-pi-kiosk-shared-cold-overlay.mjs`, currently `2.2.82` — intentional historical diagnostic fixture, not the live pin) in a temp dir and assert COLD_BAD markers (never installs into a consumer with `--ignore-scripts`). Live monorepo source is `shared/package.json` **2.3.2**.
|
|
155
170
|
2. **PASS** — wipe that consumer’s `node_modules/pi-kiosk-shared`, then `npm install` with **scripts on** (no package args) so `prepare` / `postinstall` overlays during install; assert Node-safe barrel + `NODE_IMPORT_OK`.
|
|
156
171
|
|
|
157
172
|
```bash
|
|
@@ -1,14 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
maxRetries?: number;
|
|
1
|
+
type ButtonSurface = 'admin' | 'kiosk' | 'customer' | 'pickup';
|
|
2
|
+
export interface DatabaseUnavailableProps {
|
|
4
3
|
nextRetryDelay?: number;
|
|
4
|
+
isChecking?: boolean;
|
|
5
5
|
onRetry?: () => void;
|
|
6
|
+
/** Button styling — admin gate should pass `admin`, kiosk passes `kiosk`. */
|
|
7
|
+
surface?: ButtonSurface;
|
|
6
8
|
}
|
|
7
9
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* Displays exponential backoff retry information
|
|
10
|
+
* Shown when the backend /health check fails (API unreachable or not ready).
|
|
11
|
+
* Copy is intentionally non-technical — end users, not operators.
|
|
11
12
|
*/
|
|
12
|
-
export declare function DatabaseUnavailable({
|
|
13
|
+
export declare function DatabaseUnavailable({ nextRetryDelay, isChecking, onRetry, surface, }: DatabaseUnavailableProps): JSX.Element;
|
|
14
|
+
/** Minimal boot splash while the first /health check is in flight. */
|
|
15
|
+
export declare function ServiceHealthBootScreen({ label, }: {
|
|
16
|
+
readonly label?: string;
|
|
17
|
+
}): JSX.Element;
|
|
13
18
|
export {};
|
|
14
19
|
//# sourceMappingURL=DatabaseUnavailable.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatabaseUnavailable.d.ts","sourceRoot":"","sources":["../../src/components/DatabaseUnavailable.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DatabaseUnavailable.d.ts","sourceRoot":"","sources":["../../src/components/DatabaseUnavailable.tsx"],"names":[],"mappings":"AAMA,KAAK,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE/D,MAAM,WAAW,wBAAwB;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB;AAID;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,cAAkB,EAClB,UAAkB,EAClB,OAAO,EACP,OAAoB,GACrB,EAAE,wBAAwB,GAAG,GAAG,CAAC,OAAO,CAkKxC;AAED,sEAAsE;AACtE,wBAAgB,uBAAuB,CAAC,EACtC,KAAmB,GACpB,EAAE;IACD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,GAAG,CAAC,OAAO,CAkBd"}
|
|
@@ -1,49 +1,38 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { useEffect, useState } from 'react';
|
|
2
|
+
import { useEffect, useRef, useState } from 'react';
|
|
3
3
|
import { Button } from '../ui/Button/Button.js';
|
|
4
|
+
import { Icon } from '../ui/Icon/Icon.js';
|
|
5
|
+
import { Hourglass } from '../ui/Icon/lucide.js';
|
|
6
|
+
import { Loader } from '../ui/Loader/Loader.js';
|
|
7
|
+
const HEADLINE = 'Aplikace teď není dostupná';
|
|
4
8
|
/**
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Displays exponential backoff retry information
|
|
9
|
+
* Shown when the backend /health check fails (API unreachable or not ready).
|
|
10
|
+
* Copy is intentionally non-technical — end users, not operators.
|
|
8
11
|
*/
|
|
9
|
-
export function DatabaseUnavailable({
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
+
export function DatabaseUnavailable({ nextRetryDelay = 0, isChecking = false, onRetry, surface = 'customer', }) {
|
|
13
|
+
const headingRef = useRef(null);
|
|
14
|
+
const [remainingMs, setRemainingMs] = useState(nextRetryDelay);
|
|
12
15
|
useEffect(() => {
|
|
13
|
-
|
|
16
|
+
headingRef.current?.focus();
|
|
17
|
+
}, []);
|
|
18
|
+
useEffect(() => {
|
|
19
|
+
if (nextRetryDelay <= 0) {
|
|
20
|
+
setRemainingMs(0);
|
|
14
21
|
return;
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
22
|
+
}
|
|
23
|
+
const deadline = Date.now() + nextRetryDelay;
|
|
24
|
+
const tick = () => {
|
|
25
|
+
setRemainingMs(Math.max(0, deadline - Date.now()));
|
|
26
|
+
};
|
|
27
|
+
tick();
|
|
28
|
+
const interval = setInterval(tick, 250);
|
|
21
29
|
return () => clearInterval(interval);
|
|
22
30
|
}, [nextRetryDelay]);
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
const seconds = Math.ceil(ms / 1000);
|
|
29
|
-
const formatSeconds = (n) => {
|
|
30
|
-
if (n === 1)
|
|
31
|
-
return '1 sekundu';
|
|
32
|
-
if (n >= 2 && n <= 4)
|
|
33
|
-
return `${n} sekundy`;
|
|
34
|
-
return `${n} sekund`;
|
|
35
|
-
};
|
|
36
|
-
if (seconds < 60) {
|
|
37
|
-
return formatSeconds(seconds);
|
|
38
|
-
}
|
|
39
|
-
const minutes = Math.floor(seconds / 60);
|
|
40
|
-
const remainingSeconds = seconds % 60;
|
|
41
|
-
const minuteLabel = minutes === 1 ? 'minuta' : minutes < 5 ? 'minuty' : 'minut';
|
|
42
|
-
if (remainingSeconds === 0) {
|
|
43
|
-
return `${minutes} ${minuteLabel}`;
|
|
44
|
-
}
|
|
45
|
-
return `${minutes} ${minuteLabel} ${formatSeconds(remainingSeconds)}`;
|
|
46
|
-
};
|
|
31
|
+
const autoRetryScheduled = nextRetryDelay > 0;
|
|
32
|
+
const countdownSeconds = Math.max(0, Math.ceil(remainingMs / 1000));
|
|
33
|
+
const bodyCopy = autoRetryScheduled
|
|
34
|
+
? 'Obsah teď nejde načíst. Zkuste to prosím za chvíli znovu — nebo počkejte, zkusíme to obnovit automaticky.'
|
|
35
|
+
: 'Obsah teď nejde načíst. Zkuste to prosím za chvíli znovu, nebo klepněte na tlačítko níže.';
|
|
47
36
|
return (_jsx("div", { style: {
|
|
48
37
|
display: 'flex',
|
|
49
38
|
flexDirection: 'column',
|
|
@@ -53,39 +42,60 @@ export function DatabaseUnavailable({ retryCount = 0, maxRetries = 5, nextRetryD
|
|
|
53
42
|
padding: '2rem',
|
|
54
43
|
backgroundColor: '#f5f5f5',
|
|
55
44
|
textAlign: 'center',
|
|
56
|
-
},
|
|
45
|
+
}, "data-testid": "service-unavailable", children: _jsxs("div", { style: {
|
|
57
46
|
maxWidth: '600px',
|
|
58
47
|
backgroundColor: 'white',
|
|
59
48
|
padding: '3rem',
|
|
60
49
|
borderRadius: '8px',
|
|
61
50
|
boxShadow: '0 2px 8px rgba(0, 0, 0, 0.1)',
|
|
62
|
-
}, children: [_jsx("div", { style: {
|
|
51
|
+
}, children: [_jsx("div", { style: {
|
|
52
|
+
marginBottom: '1rem',
|
|
53
|
+
display: 'flex',
|
|
54
|
+
justifyContent: 'center',
|
|
55
|
+
color: '#666',
|
|
56
|
+
}, "aria-hidden": "true", children: _jsx(Icon, { icon: Hourglass, size: 48, strokeWidth: 1.75 }) }), _jsx("h1", { ref: headingRef, tabIndex: -1, style: {
|
|
63
57
|
fontSize: '2rem',
|
|
64
58
|
fontWeight: 'bold',
|
|
65
59
|
marginBottom: '1rem',
|
|
66
60
|
color: '#333',
|
|
67
|
-
|
|
61
|
+
outline: 'none',
|
|
62
|
+
}, role: "alert", children: HEADLINE }), _jsx("p", { style: {
|
|
68
63
|
fontSize: '1.1rem',
|
|
69
64
|
color: '#666',
|
|
70
65
|
marginBottom: '2rem',
|
|
71
66
|
lineHeight: '1.6',
|
|
72
|
-
}, children:
|
|
67
|
+
}, children: bodyCopy }), autoRetryScheduled && (_jsxs("div", { role: "status", "aria-live": "polite", "aria-atomic": "true", style: {
|
|
73
68
|
backgroundColor: '#f8f9fa',
|
|
74
69
|
padding: '1.5rem',
|
|
75
70
|
borderRadius: '6px',
|
|
76
71
|
marginBottom: '2rem',
|
|
77
72
|
border: '1px solid #dee2e6',
|
|
78
|
-
|
|
73
|
+
fontSize: '1rem',
|
|
74
|
+
color: '#444',
|
|
75
|
+
}, children: [_jsxs("span", { "aria-hidden": "true", children: ["Automaticky to zkus\u00EDme znovu za", ' ', _jsx("span", { style: { color: '#007bff', fontWeight: 'bold' }, children: countdownSeconds > 0 ? `${countdownSeconds} s` : 'právě teď…' })] }), _jsx("span", { className: "sr-only", children: countdownSeconds > 0
|
|
76
|
+
? `Automatické opakování za ${countdownSeconds} sekund`
|
|
77
|
+
: 'Automatické opakování právě probíhá' })] })), onRetry && (_jsx(Button, { type: "button", intent: "primary", size: "md", surface: surface, loading: isChecking, disabled: isChecking, onClick: onRetry, children: "Zkusit znovu" })), _jsxs("div", { style: {
|
|
79
78
|
marginTop: '2rem',
|
|
80
79
|
paddingTop: '2rem',
|
|
81
80
|
borderTop: '1px solid #dee2e6',
|
|
82
|
-
fontSize: '0.
|
|
83
|
-
color: '#
|
|
84
|
-
}, children: [_jsx("p", { style: { margin: 0 }, children: "
|
|
81
|
+
fontSize: '0.95rem',
|
|
82
|
+
color: '#555',
|
|
83
|
+
}, children: [_jsx("p", { style: { margin: 0, marginBottom: '0.75rem' }, children: "Co m\u016F\u017Eete zkusit:" }), _jsxs("ul", { style: {
|
|
85
84
|
textAlign: 'left',
|
|
86
85
|
display: 'inline-block',
|
|
87
|
-
|
|
86
|
+
margin: 0,
|
|
88
87
|
paddingLeft: '1.5rem',
|
|
89
|
-
|
|
88
|
+
lineHeight: 1.7,
|
|
89
|
+
}, children: [_jsx("li", { children: "Zkontrolujte, zda funguje internet" }), _jsx("li", { children: "Obnovte str\u00E1nku v prohl\u00ED\u017Ee\u010Di" }), _jsx("li", { children: "Pokud probl\u00E9m trv\u00E1 d\u00E9le ne\u017E p\u00E1r minut, kontaktujte provozovatele nebo podporu" })] })] })] }) }));
|
|
90
|
+
}
|
|
91
|
+
/** Minimal boot splash while the first /health check is in flight. */
|
|
92
|
+
export function ServiceHealthBootScreen({ label = 'Načítání…', }) {
|
|
93
|
+
return (_jsx("div", { style: {
|
|
94
|
+
display: 'flex',
|
|
95
|
+
minHeight: '100vh',
|
|
96
|
+
alignItems: 'center',
|
|
97
|
+
justifyContent: 'center',
|
|
98
|
+
backgroundColor: '#f5f5f5',
|
|
99
|
+
}, "data-testid": "health-check-boot", role: "status", "aria-live": "polite", "aria-busy": "true", children: _jsx(Loader, { size: "lg", label: label, testId: "health-check-boot-loader" }) }));
|
|
90
100
|
}
|
|
91
101
|
//# sourceMappingURL=DatabaseUnavailable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatabaseUnavailable.js","sourceRoot":"","sources":["../../src/components/DatabaseUnavailable.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DatabaseUnavailable.js","sourceRoot":"","sources":["../../src/components/DatabaseUnavailable.tsx"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
export interface HealthCoordinatorSnapshot {
|
|
12
12
|
readonly isDatabaseAvailable: boolean;
|
|
13
13
|
readonly isChecking: boolean;
|
|
14
|
+
readonly hasResolvedInitialCheck: boolean;
|
|
14
15
|
readonly retryCount: number;
|
|
15
16
|
readonly nextRetryDelay: number;
|
|
16
17
|
readonly error: Error | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"databaseHealthCoordinator.d.ts","sourceRoot":"","sources":["../../src/hooks/databaseHealthCoordinator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAUH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;IACtC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CAC9B;
|
|
1
|
+
{"version":3,"file":"databaseHealthCoordinator.d.ts","sourceRoot":"","sources":["../../src/hooks/databaseHealthCoordinator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAUH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;IACtC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAC;IAC1C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CAC9B;AAsXD,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,4BAA4B,EACnC,QAAQ,EAAE,CAAC,QAAQ,EAAE,yBAAyB,KAAK,IAAI,GACtD,MAAM,IAAI,CAwBZ;AAED,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GACrC,OAAO,CAAC,IAAI,CAAC,CASf;AAED,wBAAgB,6BAA6B,IAAI,MAAM,CActD;AAED,sBAAsB;AACtB,wBAAgB,sCAAsC,IAAI,IAAI,CAO7D"}
|
|
@@ -27,6 +27,7 @@ function emptySnapshot() {
|
|
|
27
27
|
return {
|
|
28
28
|
isDatabaseAvailable: true,
|
|
29
29
|
isChecking: false,
|
|
30
|
+
hasResolvedInitialCheck: false,
|
|
30
31
|
retryCount: 0,
|
|
31
32
|
nextRetryDelay: 0,
|
|
32
33
|
error: null,
|
|
@@ -72,6 +73,7 @@ function applyRemoteResult(endpoint, available, errorMessage, checkedAt) {
|
|
|
72
73
|
patchSnapshot(state, {
|
|
73
74
|
isDatabaseAvailable: available,
|
|
74
75
|
isChecking: false,
|
|
76
|
+
hasResolvedInitialCheck: true,
|
|
75
77
|
error: errorMessage ? new Error(errorMessage) : null,
|
|
76
78
|
retryCount: available ? 0 : state.retryCount,
|
|
77
79
|
nextRetryDelay: available ? 0 : state.snapshot.nextRetryDelay,
|
|
@@ -144,10 +146,13 @@ async function performHealthFetch(state) {
|
|
|
144
146
|
cache: 'no-store',
|
|
145
147
|
});
|
|
146
148
|
if (response.status === 429) {
|
|
149
|
+
// Product intent: 429 is transport throttling, not an outage — keep the last known
|
|
150
|
+
// isDatabaseAvailable value so the full-screen gate does not flash during backoff.
|
|
147
151
|
const retryMs = parseRetryAfterMs(response) ?? state.pollIntervalMs;
|
|
148
152
|
state.lastCheckAt = Date.now();
|
|
149
153
|
patchSnapshot(state, {
|
|
150
154
|
isChecking: false,
|
|
155
|
+
hasResolvedInitialCheck: true,
|
|
151
156
|
error: new Error('Health check rate-limited; backing off'),
|
|
152
157
|
});
|
|
153
158
|
scheduleNextPoll(state, retryMs);
|
|
@@ -170,6 +175,7 @@ async function performHealthFetch(state) {
|
|
|
170
175
|
patchSnapshot(state, {
|
|
171
176
|
isDatabaseAvailable: true,
|
|
172
177
|
isChecking: false,
|
|
178
|
+
hasResolvedInitialCheck: true,
|
|
173
179
|
retryCount: 0,
|
|
174
180
|
nextRetryDelay: 0,
|
|
175
181
|
error: null,
|
|
@@ -195,6 +201,7 @@ async function performHealthFetch(state) {
|
|
|
195
201
|
patchSnapshot(state, {
|
|
196
202
|
isDatabaseAvailable: false,
|
|
197
203
|
isChecking: false,
|
|
204
|
+
hasResolvedInitialCheck: true,
|
|
198
205
|
retryCount: state.retryCount,
|
|
199
206
|
nextRetryDelay: delayMs,
|
|
200
207
|
error,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"databaseHealthCoordinator.js","sourceRoot":"","sources":["../../src/hooks/databaseHealthCoordinator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"databaseHealthCoordinator.js","sourceRoot":"","sources":["../../src/hooks/databaseHealthCoordinator.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,12 +7,12 @@
|
|
|
7
7
|
interface UseDatabaseHealthOptions {
|
|
8
8
|
pollInterval?: number;
|
|
9
9
|
maxRetries?: number;
|
|
10
|
-
retryDelay?: number;
|
|
11
10
|
enabled?: boolean;
|
|
12
11
|
}
|
|
13
12
|
interface UseDatabaseHealthReturn {
|
|
14
13
|
isDatabaseAvailable: boolean;
|
|
15
14
|
isChecking: boolean;
|
|
15
|
+
hasResolvedInitialCheck: boolean;
|
|
16
16
|
retryCount: number;
|
|
17
17
|
nextRetryDelay: number;
|
|
18
18
|
error: Error | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDatabaseHealth.d.ts","sourceRoot":"","sources":["../../src/hooks/useDatabaseHealth.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,UAAU,wBAAwB;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,
|
|
1
|
+
{"version":3,"file":"useDatabaseHealth.d.ts","sourceRoot":"","sources":["../../src/hooks/useDatabaseHealth.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,UAAU,wBAAwB;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,uBAAuB;IAC/B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,uBAAuB,EAAE,OAAO,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAClC;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,GAAE,wBAA6B,GACrC,uBAAuB,CAsCzB"}
|
|
@@ -12,6 +12,7 @@ export function useDatabaseHealth(options = {}) {
|
|
|
12
12
|
const [snapshot, setSnapshot] = useState({
|
|
13
13
|
isDatabaseAvailable: true,
|
|
14
14
|
isChecking: false,
|
|
15
|
+
hasResolvedInitialCheck: false,
|
|
15
16
|
retryCount: 0,
|
|
16
17
|
nextRetryDelay: 0,
|
|
17
18
|
error: null,
|
|
@@ -26,6 +27,7 @@ export function useDatabaseHealth(options = {}) {
|
|
|
26
27
|
return {
|
|
27
28
|
isDatabaseAvailable: snapshot.isDatabaseAvailable,
|
|
28
29
|
isChecking: snapshot.isChecking,
|
|
30
|
+
hasResolvedInitialCheck: snapshot.hasResolvedInitialCheck,
|
|
29
31
|
retryCount: snapshot.retryCount,
|
|
30
32
|
nextRetryDelay: snapshot.nextRetryDelay,
|
|
31
33
|
error: snapshot.error,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDatabaseHealth.js","sourceRoot":"","sources":["../../src/hooks/useDatabaseHealth.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAEL,0BAA0B,EAC1B,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,gCAAgC,CAAC;AAkBxC,MAAM,UAAU,iBAAiB,CAC/B,UAAoC,EAAE;IAEtC,MAAM,EACJ,YAAY,GAAG,OAAO,EACtB,UAAU,GAAG,CAAC,EACd,OAAO,GAAG,IAAI,GACf,GAAG,OAAO,CAAC;IAEZ,MAAM,WAAW,GAAG,MAAM,CAAC,6BAA6B,EAAE,CAAC,CAAC;IAC5D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAA4B;QAClE,mBAAmB,EAAE,IAAI;QACzB,UAAU,EAAE,KAAK;QACjB,UAAU,EAAE,CAAC;QACb,cAAc,EAAE,CAAC;QACjB,KAAK,EAAE,IAAI;KACZ,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC;QACrC,OAAO,uBAAuB,CAC5B,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,EAC/C,WAAW,CACZ,CAAC;IACJ,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC;IAExC,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QACxD,MAAM,0BAA0B,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACzE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;QACjD,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,cAAc,EAAE,QAAQ,CAAC,cAAc;QACvC,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,WAAW;KACZ,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"useDatabaseHealth.js","sourceRoot":"","sources":["../../src/hooks/useDatabaseHealth.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAEL,0BAA0B,EAC1B,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,gCAAgC,CAAC;AAkBxC,MAAM,UAAU,iBAAiB,CAC/B,UAAoC,EAAE;IAEtC,MAAM,EACJ,YAAY,GAAG,OAAO,EACtB,UAAU,GAAG,CAAC,EACd,OAAO,GAAG,IAAI,GACf,GAAG,OAAO,CAAC;IAEZ,MAAM,WAAW,GAAG,MAAM,CAAC,6BAA6B,EAAE,CAAC,CAAC;IAC5D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAA4B;QAClE,mBAAmB,EAAE,IAAI;QACzB,UAAU,EAAE,KAAK;QACjB,uBAAuB,EAAE,KAAK;QAC9B,UAAU,EAAE,CAAC;QACb,cAAc,EAAE,CAAC;QACjB,KAAK,EAAE,IAAI;KACZ,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC;QACrC,OAAO,uBAAuB,CAC5B,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,EAC/C,WAAW,CACZ,CAAC;IACJ,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC;IAExC,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QACxD,MAAM,0BAA0B,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACzE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;QACjD,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,uBAAuB,EAAE,QAAQ,CAAC,uBAAuB;QACzD,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,cAAc,EAAE,QAAQ,CAAC,cAAc;QACvC,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,WAAW;KACZ,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initSentry.d.ts","sourceRoot":"","sources":["../../src/sentry/initSentry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"initSentry.d.ts","sourceRoot":"","sources":["../../src/sentry/initSentry.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC;AAEtE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAID,sEAAsE;AACtE,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AAoBD,wBAAgB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAoC3D;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,IAAI,CASN;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI,CAgB7E"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Shared Sentry browser init for admin, kiosk, and customer PWAs.
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import { captureException as sentryCaptureException, init as sentryInit, setTag as sentrySetTag, } from '@sentry/react';
|
|
5
5
|
import { redactClientLogMeta, redactStringSecrets } from '../clientLogRedaction.js';
|
|
6
6
|
import { registerSentryCorrelationTagger } from './correlationTagBridge.js';
|
|
7
7
|
export { setSentryCorrelationId } from './correlationTagBridge.js';
|
|
@@ -31,7 +31,7 @@ export function initSentry(options) {
|
|
|
31
31
|
return;
|
|
32
32
|
}
|
|
33
33
|
try {
|
|
34
|
-
|
|
34
|
+
sentryInit({
|
|
35
35
|
dsn,
|
|
36
36
|
environment: options.environment ?? 'development',
|
|
37
37
|
release: options.release,
|
|
@@ -52,7 +52,7 @@ export function initSentry(options) {
|
|
|
52
52
|
},
|
|
53
53
|
});
|
|
54
54
|
registerSentryCorrelationTagger((corrId) => {
|
|
55
|
-
|
|
55
|
+
sentrySetTag('correlationId', corrId);
|
|
56
56
|
});
|
|
57
57
|
initialized = true;
|
|
58
58
|
}
|
|
@@ -67,7 +67,7 @@ export function captureException(error, context) {
|
|
|
67
67
|
const extra = context !== undefined
|
|
68
68
|
? redactClientLogMeta(context)
|
|
69
69
|
: undefined;
|
|
70
|
-
|
|
70
|
+
sentryCaptureException(error, extra !== undefined ? { extra } : undefined);
|
|
71
71
|
}
|
|
72
72
|
export function captureBoundaryError(error, errorInfo) {
|
|
73
73
|
if (!initialized) {
|
|
@@ -77,7 +77,7 @@ export function captureBoundaryError(error, errorInfo) {
|
|
|
77
77
|
const componentStack = rawStack !== undefined && rawStack !== null
|
|
78
78
|
? redactStringSecrets(rawStack)
|
|
79
79
|
: undefined;
|
|
80
|
-
|
|
80
|
+
sentryCaptureException(error, {
|
|
81
81
|
contexts: {
|
|
82
82
|
react: {
|
|
83
83
|
componentStack,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initSentry.js","sourceRoot":"","sources":["../../src/sentry/initSentry.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,
|
|
1
|
+
{"version":3,"file":"initSentry.js","sourceRoot":"","sources":["../../src/sentry/initSentry.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,4 +28,13 @@ export declare function stripAxisControlledSimpleStates(states: Partial<Record<E
|
|
|
28
28
|
export declare function applyTenantScopeToSimpleStates(allowedPurposes: TenantAllowedPurposes, surfaceScope: TenantSurfaceScope, current?: Partial<Record<EntitlementBlockKey, SimpleEntitlementState>>): Partial<Record<EntitlementBlockKey, SimpleEntitlementState>>;
|
|
29
29
|
export declare function inferAllowedPurposesFromSimpleStates(states: Partial<Record<EntitlementBlockKey, SimpleEntitlementState>>): TenantAllowedPurposes;
|
|
30
30
|
export declare function inferSurfaceScopeFromSimpleStates(states: Partial<Record<EntitlementBlockKey, SimpleEntitlementState>>): TenantSurfaceScope;
|
|
31
|
+
/** Blocks whose explicit inactive SIMPLE values must survive axis strip + scope resolve (save/draft rebuild). */
|
|
32
|
+
export declare const EXPLICIT_INACTIVE_REINJECT_BLOCK_KEYS: readonly ["donation", "analytics_overview", "analytics_explore"];
|
|
33
|
+
/**
|
|
34
|
+
* Re-applies explicit off/hardOff from source after axis-controlled keys are stripped.
|
|
35
|
+
* Mirrors donation on BOTH save path; analytics use the same contract since 2.3.1.
|
|
36
|
+
*/
|
|
37
|
+
export declare function reinjectExplicitInactiveSimpleStates(scopeBase: Partial<Record<EntitlementBlockKey, SimpleEntitlementState>>, sourceStates: Partial<Record<EntitlementBlockKey, SimpleEntitlementState>>, blockKeys?: readonly EntitlementBlockKey[]): Partial<Record<EntitlementBlockKey, SimpleEntitlementState>>;
|
|
38
|
+
/** Preserve hardOff when dependency implications soften to off (UI Tvrdé vypnutí must stick). */
|
|
39
|
+
export declare function preserveHardOffSimpleStates(implied: Partial<Record<EntitlementBlockKey, SimpleEntitlementState>>, sourceStates: Partial<Record<EntitlementBlockKey, SimpleEntitlementState>>, blockKeys?: readonly EntitlementBlockKey[]): Partial<Record<EntitlementBlockKey, SimpleEntitlementState>>;
|
|
31
40
|
//# sourceMappingURL=applyTenantScopeToSimpleStates.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applyTenantScopeToSimpleStates.d.ts","sourceRoot":"","sources":["../../src/tenant-entitlements/applyTenantScopeToSimpleStates.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAC9E,OAAO,KAAK,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAMvF,wFAAwF;AACxF,eAAO,MAAM,8BAA8B,0CAGQ,CAAC;AAEpD,mGAAmG;AACnG,eAAO,MAAM,8BAA8B,gDAGQ,CAAC;AAEpD,mHAAmH;AACnH,eAAO,MAAM,iCAAiC,+EAGK,CAAC;AAEpD,MAAM,MAAM,4BAA4B,GAAG,CAAC,OAAO,iCAAiC,CAAC,CAAC,MAAM,CAAC,CAAC;AAM9F,uFAAuF;AACvF,wBAAgB,qCAAqC,CAAC,KAAK,EAAE,sBAAsB,GAAG,SAAS,GAAG,OAAO,CAExG;AAED,sFAAsF;AACtF,wBAAgB,+BAA+B,IAAI,OAAO,CAAC,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC,CA2B9G;AAED,wBAAgB,gCAAgC,CAAC,QAAQ,EAAE,mBAAmB,GAAG,QAAQ,IAAI,4BAA4B,CAExH;AAaD,qGAAqG;AACrG,eAAO,MAAM,wCAAwC,mCAEF,CAAC;AAEpD,MAAM,MAAM,kCAAkC,GAC5C,CAAC,OAAO,wCAAwC,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5D,wBAAgB,wBAAwB,CAAC,eAAe,EAAE,qBAAqB,GAAG,OAAO,CAExF;AAsBD;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,mBAAmB,EAC7B,eAAe,EAAE,qBAAqB,EACtC,aAAa,EAAE,kBAAkB,GAChC,OAAO,CAgBT;AAED,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC,EACpE,KAAK,CAAC,EAAE;IACN,QAAQ,CAAC,eAAe,EAAE,qBAAqB,CAAC;IAChD,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;CAC3C,GACA,OAAO,CAAC,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC,CAQ9D;
|
|
1
|
+
{"version":3,"file":"applyTenantScopeToSimpleStates.d.ts","sourceRoot":"","sources":["../../src/tenant-entitlements/applyTenantScopeToSimpleStates.ts"],"names":[],"mappings":"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"}
|
|
@@ -147,8 +147,18 @@ function applyAllowedPurposesToStates(allowedPurposes, states) {
|
|
|
147
147
|
if (states.donation === undefined || states.donation === 'on' || states.donation === 'softOffVisible' || states.donation === 'softOffHidden') {
|
|
148
148
|
result.donation = ON;
|
|
149
149
|
}
|
|
150
|
-
|
|
151
|
-
|
|
150
|
+
if (states.analytics_overview === undefined ||
|
|
151
|
+
states.analytics_overview === 'on' ||
|
|
152
|
+
states.analytics_overview === 'softOffVisible' ||
|
|
153
|
+
states.analytics_overview === 'softOffHidden') {
|
|
154
|
+
result.analytics_overview = ON;
|
|
155
|
+
}
|
|
156
|
+
if (states.analytics_explore === undefined ||
|
|
157
|
+
states.analytics_explore === 'on' ||
|
|
158
|
+
states.analytics_explore === 'softOffVisible' ||
|
|
159
|
+
states.analytics_explore === 'softOffHidden') {
|
|
160
|
+
result.analytics_explore = ON;
|
|
161
|
+
}
|
|
152
162
|
result.pickup_points = ON;
|
|
153
163
|
result.inventory_management = ON;
|
|
154
164
|
break;
|
|
@@ -219,4 +229,34 @@ export function inferSurfaceScopeFromSimpleStates(states) {
|
|
|
219
229
|
}
|
|
220
230
|
return 'BOTH';
|
|
221
231
|
}
|
|
232
|
+
/** Blocks whose explicit inactive SIMPLE values must survive axis strip + scope resolve (save/draft rebuild). */
|
|
233
|
+
export const EXPLICIT_INACTIVE_REINJECT_BLOCK_KEYS = [
|
|
234
|
+
'donation',
|
|
235
|
+
'analytics_overview',
|
|
236
|
+
'analytics_explore',
|
|
237
|
+
];
|
|
238
|
+
/**
|
|
239
|
+
* Re-applies explicit off/hardOff from source after axis-controlled keys are stripped.
|
|
240
|
+
* Mirrors donation on BOTH save path; analytics use the same contract since 2.3.1.
|
|
241
|
+
*/
|
|
242
|
+
export function reinjectExplicitInactiveSimpleStates(scopeBase, sourceStates, blockKeys = EXPLICIT_INACTIVE_REINJECT_BLOCK_KEYS) {
|
|
243
|
+
const result = { ...scopeBase };
|
|
244
|
+
for (const blockKey of blockKeys) {
|
|
245
|
+
const explicit = sourceStates[blockKey];
|
|
246
|
+
if (explicit !== undefined && !isRuntimeActiveSimpleEntitlementState(explicit)) {
|
|
247
|
+
result[blockKey] = explicit;
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
return result;
|
|
251
|
+
}
|
|
252
|
+
/** Preserve hardOff when dependency implications soften to off (UI Tvrdé vypnutí must stick). */
|
|
253
|
+
export function preserveHardOffSimpleStates(implied, sourceStates, blockKeys = EXPLICIT_INACTIVE_REINJECT_BLOCK_KEYS) {
|
|
254
|
+
let result = implied;
|
|
255
|
+
for (const blockKey of blockKeys) {
|
|
256
|
+
if (sourceStates[blockKey] === 'hardOff' && result[blockKey] === 'off') {
|
|
257
|
+
result = { ...result, [blockKey]: 'hardOff' };
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
return result;
|
|
261
|
+
}
|
|
222
262
|
//# sourceMappingURL=applyTenantScopeToSimpleStates.js.map
|