@shopify/ui-extensions 2026.10.0-rc.3 → 2027.0.0-rc.5
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/build/cjs/surfaces/point-of-sale/events.js +24 -1
- package/build/cjs/surfaces/point-of-sale/types/storage.js +11 -0
- package/build/esm/surfaces/point-of-sale/events.mjs +24 -1
- package/build/esm/surfaces/point-of-sale/types/storage.mjs +11 -0
- package/build/esnext/surfaces/point-of-sale/events.esnext +24 -1
- package/build/esnext/surfaces/point-of-sale/types/storage.esnext +11 -0
- package/build/ts/surfaces/point-of-sale/api.d.ts +1 -1
- package/build/ts/surfaces/point-of-sale/api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/events.d.ts +39 -4
- package/build/ts/surfaces/point-of-sale/events.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/extension-targets.d.ts +2 -2
- package/build/ts/surfaces/point-of-sale/extension-targets.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/storage.d.ts +40 -0
- package/build/ts/surfaces/point-of-sale/types/storage.d.ts.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/surfaces/point-of-sale/api.ts +2 -1
- package/src/surfaces/point-of-sale/events.ts +45 -4
- package/src/surfaces/point-of-sale/extension-targets.ts +1 -2
- package/src/surfaces/point-of-sale/types/storage.ts +47 -0
|
@@ -21,7 +21,8 @@ const POS_EVENT_NAMES = {
|
|
|
21
21
|
* @private
|
|
22
22
|
*/
|
|
23
23
|
const POS_INTERCEPT_NAMES = {
|
|
24
|
-
|
|
24
|
+
CART_VALIDATIONS: 'cartvalidations',
|
|
25
|
+
PAYMENT_VALIDATIONS: 'paymentvalidations'
|
|
25
26
|
};
|
|
26
27
|
|
|
27
28
|
/**
|
|
@@ -47,6 +48,28 @@ const POS_INTERCEPT_NAMES = {
|
|
|
47
48
|
* @private
|
|
48
49
|
*/
|
|
49
50
|
|
|
51
|
+
/**
|
|
52
|
+
* The kind of payment method being attempted.
|
|
53
|
+
*
|
|
54
|
+
* @private
|
|
55
|
+
*/
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Identifies the payment method being attempted.
|
|
59
|
+
*
|
|
60
|
+
* `type` alone identifies singleton methods (for example `cash`). `identifier`
|
|
61
|
+
* disambiguates method types a shop can have several of (for example custom
|
|
62
|
+
* payment methods) as they become interceptable.
|
|
63
|
+
*
|
|
64
|
+
* @private
|
|
65
|
+
*/
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Dispatched when staff selects a payment method on the payments screen.
|
|
69
|
+
*
|
|
70
|
+
* @private
|
|
71
|
+
*/
|
|
72
|
+
|
|
50
73
|
/** @private */
|
|
51
74
|
|
|
52
75
|
/**
|
|
@@ -17,4 +17,15 @@ class StorageError extends Error {
|
|
|
17
17
|
* @publicDocs
|
|
18
18
|
*/
|
|
19
19
|
|
|
20
|
+
/**
|
|
21
|
+
* Provides reactive, subscribable access to individual storage keys.
|
|
22
|
+
*
|
|
23
|
+
* Each property is a `ReadonlySignalLike` that reflects the current value of the
|
|
24
|
+
* corresponding storage key. Values are `undefined` when the key does not exist
|
|
25
|
+
* or is being loaded asynchronously.
|
|
26
|
+
*
|
|
27
|
+
* Mutations are performed through the existing `Storage` methods (`set`,
|
|
28
|
+
* `delete`, `clear`, etc.) — `SubscribableStorage` is read-only and reactive.
|
|
29
|
+
*/
|
|
30
|
+
|
|
20
31
|
exports.StorageError = StorageError;
|
|
@@ -17,7 +17,8 @@ const POS_EVENT_NAMES = {
|
|
|
17
17
|
* @private
|
|
18
18
|
*/
|
|
19
19
|
const POS_INTERCEPT_NAMES = {
|
|
20
|
-
|
|
20
|
+
CART_VALIDATIONS: 'cartvalidations',
|
|
21
|
+
PAYMENT_VALIDATIONS: 'paymentvalidations'
|
|
21
22
|
};
|
|
22
23
|
|
|
23
24
|
/**
|
|
@@ -43,6 +44,28 @@ const POS_INTERCEPT_NAMES = {
|
|
|
43
44
|
* @private
|
|
44
45
|
*/
|
|
45
46
|
|
|
47
|
+
/**
|
|
48
|
+
* The kind of payment method being attempted.
|
|
49
|
+
*
|
|
50
|
+
* @private
|
|
51
|
+
*/
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Identifies the payment method being attempted.
|
|
55
|
+
*
|
|
56
|
+
* `type` alone identifies singleton methods (for example `cash`). `identifier`
|
|
57
|
+
* disambiguates method types a shop can have several of (for example custom
|
|
58
|
+
* payment methods) as they become interceptable.
|
|
59
|
+
*
|
|
60
|
+
* @private
|
|
61
|
+
*/
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Dispatched when staff selects a payment method on the payments screen.
|
|
65
|
+
*
|
|
66
|
+
* @private
|
|
67
|
+
*/
|
|
68
|
+
|
|
46
69
|
/** @private */
|
|
47
70
|
|
|
48
71
|
/**
|
|
@@ -13,4 +13,15 @@ class StorageError extends Error {
|
|
|
13
13
|
* @publicDocs
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
|
+
/**
|
|
17
|
+
* Provides reactive, subscribable access to individual storage keys.
|
|
18
|
+
*
|
|
19
|
+
* Each property is a `ReadonlySignalLike` that reflects the current value of the
|
|
20
|
+
* corresponding storage key. Values are `undefined` when the key does not exist
|
|
21
|
+
* or is being loaded asynchronously.
|
|
22
|
+
*
|
|
23
|
+
* Mutations are performed through the existing `Storage` methods (`set`,
|
|
24
|
+
* `delete`, `clear`, etc.) — `SubscribableStorage` is read-only and reactive.
|
|
25
|
+
*/
|
|
26
|
+
|
|
16
27
|
export { StorageError };
|
|
@@ -17,7 +17,8 @@ const POS_EVENT_NAMES = {
|
|
|
17
17
|
* @private
|
|
18
18
|
*/
|
|
19
19
|
const POS_INTERCEPT_NAMES = {
|
|
20
|
-
|
|
20
|
+
CART_VALIDATIONS: 'cartvalidations',
|
|
21
|
+
PAYMENT_VALIDATIONS: 'paymentvalidations'
|
|
21
22
|
};
|
|
22
23
|
|
|
23
24
|
/**
|
|
@@ -43,6 +44,28 @@ const POS_INTERCEPT_NAMES = {
|
|
|
43
44
|
* @private
|
|
44
45
|
*/
|
|
45
46
|
|
|
47
|
+
/**
|
|
48
|
+
* The kind of payment method being attempted.
|
|
49
|
+
*
|
|
50
|
+
* @private
|
|
51
|
+
*/
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Identifies the payment method being attempted.
|
|
55
|
+
*
|
|
56
|
+
* `type` alone identifies singleton methods (for example `cash`). `identifier`
|
|
57
|
+
* disambiguates method types a shop can have several of (for example custom
|
|
58
|
+
* payment methods) as they become interceptable.
|
|
59
|
+
*
|
|
60
|
+
* @private
|
|
61
|
+
*/
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Dispatched when staff selects a payment method on the payments screen.
|
|
65
|
+
*
|
|
66
|
+
* @private
|
|
67
|
+
*/
|
|
68
|
+
|
|
46
69
|
/** @private */
|
|
47
70
|
|
|
48
71
|
/**
|
|
@@ -13,4 +13,15 @@ class StorageError extends Error {
|
|
|
13
13
|
* @publicDocs
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
|
+
/**
|
|
17
|
+
* Provides reactive, subscribable access to individual storage keys.
|
|
18
|
+
*
|
|
19
|
+
* Each property is a `ReadonlySignalLike` that reflects the current value of the
|
|
20
|
+
* corresponding storage key. Values are `undefined` when the key does not exist
|
|
21
|
+
* or is being loaded asynchronously.
|
|
22
|
+
*
|
|
23
|
+
* Mutations are performed through the existing `Storage` methods (`set`,
|
|
24
|
+
* `delete`, `clear`, etc.) — `SubscribableStorage` is read-only and reactive.
|
|
25
|
+
*/
|
|
26
|
+
|
|
16
27
|
export { StorageError };
|
|
@@ -34,7 +34,7 @@ export type { PaginatedResult } from './types/paginated-result';
|
|
|
34
34
|
export type { Product, ProductVariant, ProductVariantOption, ProductVariantInventoryPolicy, ProductOption, } from './types/product';
|
|
35
35
|
export type { CountryCode } from './types/country-code';
|
|
36
36
|
export type { Session, StaffMember } from './types/session';
|
|
37
|
-
export type { Storage } from './types/storage';
|
|
37
|
+
export type { Storage, SubscribableStorage } from './types/storage';
|
|
38
38
|
export { StorageError } from './types/storage';
|
|
39
39
|
export type { PinPadApiContent, PinPadApi } from './api/pin-pad-api';
|
|
40
40
|
export type { PinPadOptions, PinPadResult, PinLength, PinPadActionType, PinValidationResult, } from './types/pin-pad';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/surfaces/point-of-sale/api.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/surfaces/point-of-sale/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { TransactionCompleteEvent } from './events/transaction-complete-event';
|
|
2
2
|
import type { CashTrackingSessionStartEvent, CashTrackingSessionCompleteEvent } from './events/cash-tracking-session-events';
|
|
3
3
|
import type { Cart } from './types/cart';
|
|
4
|
+
import type { MoneyV2 } from './types/money';
|
|
4
5
|
/**
|
|
5
6
|
* Canonical event-name constants for POS host events. Prefer these over string
|
|
6
7
|
* literals when calling `shopify.addEventListener` / `removeEventListener`.
|
|
@@ -19,7 +20,8 @@ export declare const POS_EVENT_NAMES: {
|
|
|
19
20
|
* @private
|
|
20
21
|
*/
|
|
21
22
|
export declare const POS_INTERCEPT_NAMES: {
|
|
22
|
-
readonly
|
|
23
|
+
readonly CART_VALIDATIONS: "cartvalidations";
|
|
24
|
+
readonly PAYMENT_VALIDATIONS: "paymentvalidations";
|
|
23
25
|
};
|
|
24
26
|
/**
|
|
25
27
|
* Maps Shopify POS event names to their corresponding payload types.
|
|
@@ -48,18 +50,51 @@ export interface ShopifyEventMap {
|
|
|
48
50
|
* @private
|
|
49
51
|
*/
|
|
50
52
|
export interface ShopifyInterceptMap {
|
|
51
|
-
[POS_INTERCEPT_NAMES.
|
|
53
|
+
[POS_INTERCEPT_NAMES.CART_VALIDATIONS]: CartValidationsEvent;
|
|
54
|
+
[POS_INTERCEPT_NAMES.PAYMENT_VALIDATIONS]: PaymentValidationsEvent;
|
|
52
55
|
}
|
|
53
56
|
/**
|
|
54
57
|
* Dispatched when staff attempts to leave the active cart for checkout.
|
|
55
58
|
*
|
|
56
59
|
* @private
|
|
57
60
|
*/
|
|
58
|
-
export interface
|
|
59
|
-
readonly type: typeof POS_INTERCEPT_NAMES.
|
|
61
|
+
export interface CartValidationsEvent extends Event {
|
|
62
|
+
readonly type: typeof POS_INTERCEPT_NAMES.CART_VALIDATIONS;
|
|
60
63
|
/** The POS cart at the point checkout was requested. */
|
|
61
64
|
readonly cart: Cart;
|
|
62
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* The kind of payment method being attempted.
|
|
68
|
+
*
|
|
69
|
+
* @private
|
|
70
|
+
*/
|
|
71
|
+
export type InterceptedPaymentMethodType = 'cash';
|
|
72
|
+
/**
|
|
73
|
+
* Identifies the payment method being attempted.
|
|
74
|
+
*
|
|
75
|
+
* `type` alone identifies singleton methods (for example `cash`). `identifier`
|
|
76
|
+
* disambiguates method types a shop can have several of (for example custom
|
|
77
|
+
* payment methods) as they become interceptable.
|
|
78
|
+
*
|
|
79
|
+
* @private
|
|
80
|
+
*/
|
|
81
|
+
export interface InterceptedPaymentMethod {
|
|
82
|
+
readonly type: InterceptedPaymentMethodType;
|
|
83
|
+
/** Present when `type` alone is ambiguous. Matching is exact on the pair. */
|
|
84
|
+
readonly identifier?: string;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Dispatched when staff selects a payment method on the payments screen.
|
|
88
|
+
*
|
|
89
|
+
* @private
|
|
90
|
+
*/
|
|
91
|
+
export interface PaymentValidationsEvent extends Event {
|
|
92
|
+
readonly type: typeof POS_INTERCEPT_NAMES.PAYMENT_VALIDATIONS;
|
|
93
|
+
/** The payment method staff selected. */
|
|
94
|
+
readonly paymentMethod: InterceptedPaymentMethod;
|
|
95
|
+
/** The amount this tender would charge, in presentment currency. */
|
|
96
|
+
readonly amount: MoneyV2;
|
|
97
|
+
}
|
|
63
98
|
/** @private */
|
|
64
99
|
export type ShopifyInterceptor<TEvent extends Event> = (event: TEvent) => InterceptResult;
|
|
65
100
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/surfaces/point-of-sale/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,qCAAqC,CAAC;AAClF,OAAO,KAAK,EACV,6BAA6B,EAC7B,gCAAgC,EACjC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/surfaces/point-of-sale/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,qCAAqC,CAAC;AAClF,OAAO,KAAK,EACV,6BAA6B,EAC7B,gCAAgC,EACjC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;;CAIlB,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;;CAGtB,CAAC;AAEX;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,CAAC,eAAe,CAAC,oBAAoB,CAAC,EAAE,wBAAwB,CAAC;IACjE,qDAAqD;IACrD,CAAC,eAAe,CAAC,2BAA2B,CAAC,EAAE,6BAA6B,CAAC;IAC7E,2EAA2E;IAC3E,CAAC,eAAe,CAAC,8BAA8B,CAAC,EAAE,gCAAgC,CAAC;CACpF;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;IAC7D,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,EAAE,uBAAuB,CAAC;CACpE;AAED;;;;GAIG;AACH,MAAM,WAAW,oBAAqB,SAAQ,KAAK;IACjD,QAAQ,CAAC,IAAI,EAAE,OAAO,mBAAmB,CAAC,gBAAgB,CAAC;IAC3D,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,MAAM,4BAA4B,GAAG,MAAM,CAAC;AAElD;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,4BAA4B,CAAC;IAE5C,6EAA6E;IAC7E,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAwB,SAAQ,KAAK;IACpD,QAAQ,CAAC,IAAI,EAAE,OAAO,mBAAmB,CAAC,mBAAmB,CAAC;IAE9D,yCAAyC;IACzC,QAAQ,CAAC,aAAa,EAAE,wBAAwB,CAAC;IAEjD,oEAAoE;IACpE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED,eAAe;AACf,MAAM,MAAM,kBAAkB,CAAC,MAAM,SAAS,KAAK,IAAI,CACrD,KAAK,EAAE,MAAM,KACV,eAAe,CAAC;AAErB;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,SAAS,EAAE,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,eAAe;AACf,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,OAAO,CAAC;AAElD;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,uDAAuD;IACvD,KAAK,EAAE,eAAe,CAAC;IAEvB,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAC;IAEf,0DAA0D;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,YAAY,EACV,wBAAwB,EACxB,6BAA6B,EAC7B,gCAAgC,GACjC,CAAC"}
|
|
@@ -181,9 +181,9 @@ export interface RenderExtensionTargets {
|
|
|
181
181
|
/**
|
|
182
182
|
* Renders a full-screen modal interface launched from cart line item menu items. Use this target for complex line item workflows that require forms, multi-step processes, or detailed information displays beyond what a simple button can provide.
|
|
183
183
|
*
|
|
184
|
-
* Extensions at this target have access to detailed line item data through the Cart Line Item API and support workflows with multiple screens, navigation, and interactive components.
|
|
184
|
+
* Extensions at this target have access to detailed line item data through the Cart Line Item API and support workflows with multiple screens, navigation, and interactive components. Action render targets are themselves the modal destination, so the Action API (`shopify.action.presentModal()`) is not available here; use the Navigation API for in-workflow navigation.
|
|
185
185
|
*/
|
|
186
|
-
'pos.cart.line-item-details.action.render': RenderExtension<ActionTargetApi<'pos.cart.line-item-details.action.render'> &
|
|
186
|
+
'pos.cart.line-item-details.action.render': RenderExtension<ActionTargetApi<'pos.cart.line-item-details.action.render'> & CartApi & CartLineItemApi, BasicComponents>;
|
|
187
187
|
/**
|
|
188
188
|
* Renders a custom section in the footer of printed receipts. Use this target for adding contact details, return policies, social media links, or customer engagement elements like survey links or marketing campaigns at the bottom of receipts.
|
|
189
189
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-targets.d.ts","sourceRoot":"","sources":["../../../../src/surfaces/point-of-sale/extension-targets.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"extension-targets.d.ts","sourceRoot":"","sources":["../../../../src/surfaces/point-of-sale/extension-targets.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ReadonlySignalLike } from '../../../shared';
|
|
1
2
|
/**
|
|
2
3
|
* @publicDocs
|
|
3
4
|
*/
|
|
@@ -11,6 +12,32 @@ export declare class StorageError extends Error {
|
|
|
11
12
|
* @publicDocs
|
|
12
13
|
*/
|
|
13
14
|
export interface Storage<BaseStorageTypes extends Record<string, any> = Record<string, unknown>> {
|
|
15
|
+
/**
|
|
16
|
+
* Reactive access to storage values as Subscribables.
|
|
17
|
+
*
|
|
18
|
+
* Each key is exposed as a `ReadonlySignalLike<T | undefined>`, enabling cross-target
|
|
19
|
+
* reactivity. One extension target can subscribe to a key and react when
|
|
20
|
+
* another target updates it via `set()` or `delete()`.
|
|
21
|
+
*
|
|
22
|
+
* The `value` property provides synchronous, reactive access to the current stored
|
|
23
|
+
* value. It is not preloaded: storage hydrates asynchronously, so `value` is
|
|
24
|
+
* `undefined` until the key has been loaded.
|
|
25
|
+
* The `subscribe()` method registers a callback that fires whenever the value
|
|
26
|
+
* changes, including changes made by other extension targets within the same app.
|
|
27
|
+
*
|
|
28
|
+
* @example Cross-target reactivity
|
|
29
|
+
* ```typescript
|
|
30
|
+
* // In one extension target:
|
|
31
|
+
* await shopify.storage.set('syncStatus', 'complete');
|
|
32
|
+
*
|
|
33
|
+
* // In another target:
|
|
34
|
+
* const status = shopify.storage.current.syncStatus.value; // 'complete'
|
|
35
|
+
* const unsubscribe = shopify.storage.current.syncStatus.subscribe((value) => {
|
|
36
|
+
* // Reacts when another target updates this key
|
|
37
|
+
* });
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
current?: SubscribableStorage<BaseStorageTypes>;
|
|
14
41
|
/**
|
|
15
42
|
* Stores a value under the specified key, overwriting any existing value. Values must be JSON-serializable and return `StorageError` when storage limits are exceeded. Commonly used for storing user preferences, caching API responses, or passing contextual data from tiles to modals.
|
|
16
43
|
*
|
|
@@ -48,4 +75,17 @@ export interface Storage<BaseStorageTypes extends Record<string, any> = Record<s
|
|
|
48
75
|
*/
|
|
49
76
|
entries<StorageTypes extends BaseStorageTypes = BaseStorageTypes, Keys extends keyof StorageTypes = keyof StorageTypes>(): Promise<[Keys, StorageTypes[Keys]][]>;
|
|
50
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* Provides reactive, subscribable access to individual storage keys.
|
|
80
|
+
*
|
|
81
|
+
* Each property is a `ReadonlySignalLike` that reflects the current value of the
|
|
82
|
+
* corresponding storage key. Values are `undefined` when the key does not exist
|
|
83
|
+
* or is being loaded asynchronously.
|
|
84
|
+
*
|
|
85
|
+
* Mutations are performed through the existing `Storage` methods (`set`,
|
|
86
|
+
* `delete`, `clear`, etc.) — `SubscribableStorage` is read-only and reactive.
|
|
87
|
+
*/
|
|
88
|
+
export type SubscribableStorage<BaseStorageTypes extends Record<string, any> = Record<string, unknown>> = {
|
|
89
|
+
readonly [K in keyof BaseStorageTypes]: ReadonlySignalLike<BaseStorageTypes[K] | undefined>;
|
|
90
|
+
};
|
|
51
91
|
//# sourceMappingURL=storage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../../../src/surfaces/point-of-sale/types/storage.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK;IAG5B,IAAI,EAAE,cAAc,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS;IAF7D,IAAI,SAAkB;gBAEpB,IAAI,EAAE,cAAc,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,EAClE,OAAO,EAAE,MAAM;CAIlB;AACD;;;GAGG;AACH,MAAM,WAAW,OAAO,CACtB,gBAAgB,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEtE;;;;;;;;;;OAUG;IACH,GAAG,CACD,YAAY,SAAS,gBAAgB,GAAG,gBAAgB,EACxD,IAAI,SAAS,MAAM,YAAY,GAAG,MAAM,YAAY,EAEpD,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,GACxB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;OAMG;IACH,GAAG,CACD,YAAY,SAAS,gBAAgB,GAAG,gBAAgB,EACxD,IAAI,SAAS,MAAM,YAAY,GAAG,MAAM,YAAY,EAEpD,GAAG,EAAE,IAAI,GACR,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;IAE3C;;OAEG;IACH,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3B;;;;OAIG;IACH,MAAM,CACJ,YAAY,SAAS,gBAAgB,GAAG,gBAAgB,EACxD,IAAI,SAAS,MAAM,YAAY,GAAG,MAAM,YAAY,EAEpD,GAAG,EAAE,IAAI,GACR,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpB;;;;OAIG;IACH,OAAO,CACL,YAAY,SAAS,gBAAgB,GAAG,gBAAgB,EACxD,IAAI,SAAS,MAAM,YAAY,GAAG,MAAM,YAAY,KACjD,OAAO,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;CAC5C"}
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../../../src/surfaces/point-of-sale/types/storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AAExD;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK;IAG5B,IAAI,EAAE,cAAc,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS;IAF7D,IAAI,SAAkB;gBAEpB,IAAI,EAAE,cAAc,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,EAClE,OAAO,EAAE,MAAM;CAIlB;AACD;;;GAGG;AACH,MAAM,WAAW,OAAO,CACtB,gBAAgB,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEtE;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,OAAO,CAAC,EAAE,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAEhD;;;;;;;;;;OAUG;IACH,GAAG,CACD,YAAY,SAAS,gBAAgB,GAAG,gBAAgB,EACxD,IAAI,SAAS,MAAM,YAAY,GAAG,MAAM,YAAY,EAEpD,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,GACxB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;OAMG;IACH,GAAG,CACD,YAAY,SAAS,gBAAgB,GAAG,gBAAgB,EACxD,IAAI,SAAS,MAAM,YAAY,GAAG,MAAM,YAAY,EAEpD,GAAG,EAAE,IAAI,GACR,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;IAE3C;;OAEG;IACH,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3B;;;;OAIG;IACH,MAAM,CACJ,YAAY,SAAS,gBAAgB,GAAG,gBAAgB,EACxD,IAAI,SAAS,MAAM,YAAY,GAAG,MAAM,YAAY,EAEpD,GAAG,EAAE,IAAI,GACR,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpB;;;;OAIG;IACH,OAAO,CACL,YAAY,SAAS,gBAAgB,GAAG,gBAAgB,EACxD,IAAI,SAAS,MAAM,YAAY,GAAG,MAAM,YAAY,KACjD,OAAO,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;CAC5C;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,mBAAmB,CAC7B,gBAAgB,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACpE;IACF,QAAQ,EAAE,CAAC,IAAI,MAAM,gBAAgB,GAAG,kBAAkB,CACxD,gBAAgB,CAAC,CAAC,CAAC,GAAG,SAAS,CAChC;CACF,CAAC"}
|