pi-kiosk-shared 2.2.6 → 2.2.7

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/dist/api.d.ts CHANGED
@@ -91,7 +91,15 @@ export declare class APIClient {
91
91
  constructor(baseUrl: string, kioskSecret?: string, tenantCode?: string, salesPointId?: number);
92
92
  private injectTenantIntoEndpoint;
93
93
  private request;
94
- get<T>(endpoint: string): Promise<T>;
94
+ get<T>(endpoint: string, headers?: Record<string, string>): Promise<T>;
95
+ /**
96
+ * GET with conditional caching — returns 304 without parsing a body (G-12 catalog poll).
97
+ */
98
+ getConditional<T>(endpoint: string, ifNoneMatch?: string): Promise<{
99
+ status: 200 | 304;
100
+ data?: T;
101
+ etag?: string | null;
102
+ }>;
95
103
  post<T>(endpoint: string, data?: unknown): Promise<T>;
96
104
  put<T>(endpoint: string, data?: unknown): Promise<T>;
97
105
  delete<T>(endpoint: string): Promise<T>;
package/dist/api.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B;;;CAGhC,CAAC;AAEX;;;;;;GAMG;AAIH,eAAO,MAAM,aAAa;;;IAIxB,0FAA0F;;IAE1F,8FAA8F;;;;;;;;;;;;;;;IAmB9F,6EAA6E;;;;IAI7E,2EAA2E;;IAE3E,wEAAwE;;IAExE,4FAA4F;;;;;;;;;;;;;IAe5F,yCAAyC;;IAEzC,gDAAgD;;;;;;;;;CAWxC,CAAC;AAIX;;;;;;;GAOG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,YAAY,CAAC,CAAS;gBAG5B,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM;IAWvB,OAAO,CAAC,wBAAwB;YAclB,OAAO;IAgDf,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAIpC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAOrD,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAOpD,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAG9C;AAED;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAC1B,UAAU,MAAM,EAChB,cAAc,MAAM,EACpB,aAAa,MAAM,EACnB,eAAe,MAAM,KACpB,SAKF,CAAC"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B;;;CAGhC,CAAC;AAEX;;;;;;GAMG;AAIH,eAAO,MAAM,aAAa;;;IAIxB,0FAA0F;;IAE1F,8FAA8F;;;;;;;;;;;;;;;IAmB9F,6EAA6E;;;;IAI7E,2EAA2E;;IAE3E,wEAAwE;;IAExE,4FAA4F;;;;;;;;;;;;;IAe5F,yCAAyC;;IAEzC,gDAAgD;;;;;;;;;CAWxC,CAAC;AAIX;;;;;;;GAOG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,YAAY,CAAC,CAAS;gBAG5B,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM;IAWvB,OAAO,CAAC,wBAAwB;YAclB,OAAO;IAgDf,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAI5E;;OAEG;IACG,cAAc,CAAC,CAAC,EACpB,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC;QAAE,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAgC3D,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAOrD,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAOpD,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAG9C;AAED;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAC1B,UAAU,MAAM,EAChB,cAAc,MAAM,EACpB,aAAa,MAAM,EACnB,eAAe,MAAM,KACpB,SAKF,CAAC"}
package/dist/api.js CHANGED
@@ -153,8 +153,40 @@ export class APIClient {
153
153
  }
154
154
  return response.json();
155
155
  }
156
- async get(endpoint) {
157
- return this.request(endpoint, { method: 'GET' });
156
+ async get(endpoint, headers) {
157
+ return this.request(endpoint, { method: 'GET', headers });
158
+ }
159
+ /**
160
+ * GET with conditional caching — returns 304 without parsing a body (G-12 catalog poll).
161
+ */
162
+ async getConditional(endpoint, ifNoneMatch) {
163
+ if (!endpoint || typeof endpoint !== 'string') {
164
+ throw new Error(`APIClient: endpoint is required and must be a string, got: ${typeof endpoint}`);
165
+ }
166
+ const tenantEndpoint = this.injectTenantIntoEndpoint(endpoint);
167
+ const url = `${this.baseUrl}${tenantEndpoint}`;
168
+ const headers = { 'Content-Type': 'application/json' };
169
+ if (ifNoneMatch) {
170
+ headers['If-None-Match'] = ifNoneMatch;
171
+ }
172
+ if (this.kioskSecret) {
173
+ headers['X-Sales-Point-Secret'] = this.kioskSecret;
174
+ }
175
+ if (typeof this.salesPointId === 'number' &&
176
+ Number.isInteger(this.salesPointId) &&
177
+ this.salesPointId > 0) {
178
+ headers['X-Sales-Point-Id'] = String(this.salesPointId);
179
+ }
180
+ const response = await fetch(url, { method: 'GET', headers });
181
+ const etag = response.headers.get('etag');
182
+ if (response.status === 304) {
183
+ return { status: 304, etag };
184
+ }
185
+ if (!response.ok) {
186
+ throw new Error(`HTTP ${response.status}: ${response.statusText}`);
187
+ }
188
+ const data = (await response.json());
189
+ return { status: 200, data, etag };
158
190
  }
159
191
  async post(endpoint, data) {
160
192
  return this.request(endpoint, {
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ export interface PollRetryBackoffOptions {
2
+ /** Base delay before exponential growth (ms). */
3
+ baseMs?: number;
4
+ /** Maximum delay cap (ms). */
5
+ maxMs?: number;
6
+ /** Multiplier per attempt (1-based attempt index). */
7
+ multiplier?: number;
8
+ /** Random jitter fraction (0–1) applied to the computed delay. */
9
+ jitterRatio?: number;
10
+ }
11
+ /**
12
+ * True when a poll/fetch error should use server-overload backoff (G-45 / G-23-fe).
13
+ */
14
+ export declare function isServerOverloadPollError(error: unknown): boolean;
15
+ /**
16
+ * Exponential backoff with jitter for catalog poll / SWR retries on 5xx and 503.
17
+ * Honors Retry-After when present on the error envelope.
18
+ */
19
+ export declare function computePollRetryDelayMs(attemptIndex: number, error: unknown, options?: PollRetryBackoffOptions): number;
20
+ //# sourceMappingURL=pollRetryBackoff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pollRetryBackoff.d.ts","sourceRoot":"","sources":["../../src/http/pollRetryBackoff.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,uBAAuB;IACtC,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAWD;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAcjE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,uBAA4B,GACpC,MAAM,CAcR"}
@@ -0,0 +1,39 @@
1
+ import { getRetryAfterMs } from './rateLimitError.js';
2
+ const DEFAULT_BASE_MS = 1_000;
3
+ const DEFAULT_MAX_MS = 120_000;
4
+ const DEFAULT_MULTIPLIER = 2;
5
+ const DEFAULT_JITTER_RATIO = 0.2;
6
+ function isServerOverloadStatus(status) {
7
+ return status === 503 || status >= 500;
8
+ }
9
+ /**
10
+ * True when a poll/fetch error should use server-overload backoff (G-45 / G-23-fe).
11
+ */
12
+ export function isServerOverloadPollError(error) {
13
+ if (typeof error !== 'object' || error === null) {
14
+ return false;
15
+ }
16
+ if ('statusCode' in error && typeof error.statusCode === 'number') {
17
+ return isServerOverloadStatus(error.statusCode);
18
+ }
19
+ if ('status' in error && typeof error.status === 'number') {
20
+ return isServerOverloadStatus(error.status);
21
+ }
22
+ return false;
23
+ }
24
+ /**
25
+ * Exponential backoff with jitter for catalog poll / SWR retries on 5xx and 503.
26
+ * Honors Retry-After when present on the error envelope.
27
+ */
28
+ export function computePollRetryDelayMs(attemptIndex, error, options = {}) {
29
+ const baseMs = options.baseMs ?? DEFAULT_BASE_MS;
30
+ const maxMs = options.maxMs ?? DEFAULT_MAX_MS;
31
+ const multiplier = options.multiplier ?? DEFAULT_MULTIPLIER;
32
+ const jitterRatio = options.jitterRatio ?? DEFAULT_JITTER_RATIO;
33
+ const retryAfterMs = getRetryAfterMs(error, baseMs);
34
+ const exponentialMs = Math.min(maxMs, Math.max(baseMs, retryAfterMs) * Math.pow(multiplier, Math.max(0, attemptIndex)));
35
+ const jitterSpan = exponentialMs * jitterRatio;
36
+ const jitter = jitterSpan > 0 ? Math.floor(Math.random() * jitterSpan) : 0;
37
+ return Math.min(maxMs, exponentialMs + jitter);
38
+ }
39
+ //# sourceMappingURL=pollRetryBackoff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pollRetryBackoff.js","sourceRoot":"","sources":["../../src/http/pollRetryBackoff.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAatD,MAAM,eAAe,GAAG,KAAK,CAAC;AAC9B,MAAM,cAAc,GAAG,OAAO,CAAC;AAC/B,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAEjC,SAAS,sBAAsB,CAAC,MAAc;IAC5C,OAAO,MAAM,KAAK,GAAG,IAAI,MAAM,IAAI,GAAG,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAc;IACtD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,YAAY,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QAClE,OAAO,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,QAAQ,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1D,OAAO,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CACrC,YAAoB,EACpB,KAAc,EACd,UAAmC,EAAE;IAErC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,eAAe,CAAC;IACjD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,cAAc,CAAC;IAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,kBAAkB,CAAC;IAC5D,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,oBAAoB,CAAC;IAEhE,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAC5B,KAAK,EACL,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CACjF,CAAC;IACF,MAAM,UAAU,GAAG,aAAa,GAAG,WAAW,CAAC;IAC/C,MAAM,MAAM,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAAC,CAAC;AACjD,CAAC"}
package/dist/index.d.ts CHANGED
@@ -61,6 +61,7 @@ export type { PermissionLevel } from './permissions/permissionLabels.js';
61
61
  export { TURNSTILE_PUBLIC_CONFIG_PATH, fetchTurnstileConfig, appendTurnstileToken, } from './auth/turnstileTypes.js';
62
62
  export type { TurnstileConfigData, TurnstileAuthBodyFields, AdminLoginRequest, ExchangeSuperAdminInviteSessionRequest, CompleteSuperAdminInviteRequest, PickupStaffLoginRequest, CustomerAuthTurnstileBody, } from './auth/turnstileTypes.js';
63
63
  export { isRateLimitError, getRetryAfterMs } from './http/rateLimitError.js';
64
+ export { computePollRetryDelayMs, isServerOverloadPollError, type PollRetryBackoffOptions, } from './http/pollRetryBackoff.js';
64
65
  export { formatRateLimitMessage } from './errors/formatRateLimitMessage.js';
65
66
  export { createCoalescedRefetchScheduler, type CoalescedRefetchScheduler, } from './catalog/createCoalescedRefetchScheduler.js';
66
67
  export { resolvePickupHandoffModeForCheckout } from './checkout/resolvePickupHandoffModeForCheckout.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -59,6 +59,7 @@ export { PERMISSION_DOMAIN_LABELS, PERMISSION_LEVEL_LABELS, getPermissionDomainL
59
59
  export { expandCapabilitiesForClientCheck, grantImpliesTarget, hasEffectiveCapability, hasAnyEffectiveCapability, ADMIN_USERS_MANAGE_BRIDGE_SOURCES, ADMIN_USERS_MANAGE_BRIDGE_TARGETS, BRIDGE_PARITY_FIXTURE_GRANTS, BRIDGE_PARITY_FIXTURE_EXPECTED_TARGETS, } from './permissions/effectiveCapabilities.js';
60
60
  export { TURNSTILE_PUBLIC_CONFIG_PATH, fetchTurnstileConfig, appendTurnstileToken, } from './auth/turnstileTypes.js';
61
61
  export { isRateLimitError, getRetryAfterMs } from './http/rateLimitError.js';
62
+ export { computePollRetryDelayMs, isServerOverloadPollError, } from './http/pollRetryBackoff.js';
62
63
  export { formatRateLimitMessage } from './errors/formatRateLimitMessage.js';
63
64
  export { createCoalescedRefetchScheduler, } from './catalog/createCoalescedRefetchScheduler.js';
64
65
  export { resolvePickupHandoffModeForCheckout } from './checkout/resolvePickupHandoffModeForCheckout.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yCAAyC,CAAC;AACxD,OAAO,EACL,wCAAwC,EACxC,yCAAyC,GAC1C,MAAM,yCAAyC,CAAC;AACjD,cAAc,oBAAoB,CAAC;AACnC,cAAc,oCAAoC,CAAC;AACnD,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAgC,MAAM,8BAA8B,CAAC;AAC/F,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,uCAAuC,CAAC;AACtD,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC;AACjD,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,gCAAgC,EAChC,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,iCAAiC,EACjC,iCAAiC,EACjC,4BAA4B,EAC5B,sCAAsC,GACvC,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EACL,4BAA4B,EAC5B,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAUlC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EACL,+BAA+B,GAEhC,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,mCAAmC,EAAE,MAAM,mDAAmD,CAAC;AACxG,cAAc,oBAAoB,CAAC;AACnC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC;AACvC,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,0BAA0B,GAI3B,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yCAAyC,CAAC;AACxD,OAAO,EACL,wCAAwC,EACxC,yCAAyC,GAC1C,MAAM,yCAAyC,CAAC;AACjD,cAAc,oBAAoB,CAAC;AACnC,cAAc,oCAAoC,CAAC;AACnD,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAgC,MAAM,8BAA8B,CAAC;AAC/F,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,uCAAuC,CAAC;AACtD,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC;AACjD,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,gCAAgC,EAChC,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,iCAAiC,EACjC,iCAAiC,EACjC,4BAA4B,EAC5B,sCAAsC,GACvC,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EACL,4BAA4B,EAC5B,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAUlC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EACL,uBAAuB,EACvB,yBAAyB,GAE1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EACL,+BAA+B,GAEhC,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,mCAAmC,EAAE,MAAM,mDAAmD,CAAC;AACxG,cAAc,oBAAoB,CAAC;AACnC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC;AACvC,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,0BAA0B,GAI3B,MAAM,4BAA4B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pi-kiosk-shared",
3
- "version": "2.2.6",
3
+ "version": "2.2.7",
4
4
  "type": "module",
5
5
  "private": false,
6
6
  "description": "Shared types, API contracts, and error classes for Pi Kiosk system",