@clicktap/state 0.12.17 → 0.13.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clicktap/state",
3
- "version": "0.12.17",
3
+ "version": "0.13.1",
4
4
  "private": false,
5
5
  "author": "Clicktap",
6
6
  "description": "A state management library for Clicktap reference frontend.",
@@ -17,6 +17,8 @@
17
17
  "xstate": "^5.9.1",
18
18
  "@xstate/react": "^4.1.0",
19
19
  "cookie": "^0.5.0",
20
+ "graphql": "^16.6.0",
21
+ "graphql-request": "^6.1.0",
20
22
  "nanoid": "^4.0.2"
21
23
  },
22
24
  "devDependencies": {
@@ -0,0 +1,207 @@
1
+ import { ReactNode } from 'react';
2
+ import { Actor, InspectionEvent, Observer } from 'xstate';
3
+ import { quoteMachine } from './quote';
4
+ import { DeepPartial, QuoteMachineContext } from './types';
5
+ export interface QuoteContextType {
6
+ quoteActor: Actor<typeof quoteMachine>;
7
+ items: QuoteMachineContext['quote']['items'];
8
+ itemsCount: number;
9
+ }
10
+ export declare const QuoteContext: import("react").Context<Actor<import("xstate").StateMachine<QuoteMachineContext, import("./types").SetEmptyEvent | import("./types").SetActiveEvent | import("./types").AddItemsEvent | import("./types").RemoveItemsEvent | import("./types").ClearItemsEvent | import("./types").RefreshEvent | import("./types").ApplyPromotionEvent | import("./types").RemovePromotionEvent | import("./types").AddAddressEvent | import("./types").RemoveAddressEvent | import("./types").ApplyPaymentMethodEvent | import("./types").AddRewardEvent | import("./types").RemoveRewardEvent | import("./types").AddStoreCreditEvent | import("./types").RemoveStoreCreditEvent | import("./types").AddGiftCardEvent | import("./types").RemoveGiftCardEvent | import("xstate").DoneActorEvent<import("./types").AddItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").RemoveItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").ClearItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").RefreshSuccessEvent>, {
11
+ [x: string]: import("xstate").ActorRef<import("xstate").PromiseSnapshot<import("./types").AddItemsSuccessEvent, import("./actors").AddItemsInput>, {
12
+ [k: string]: unknown;
13
+ type: string;
14
+ }, import("xstate").EventObject> | import("xstate").ActorRef<import("xstate").PromiseSnapshot<import("./types").RemoveItemsSuccessEvent, import("./actors").RemoveItemsInput>, {
15
+ [k: string]: unknown;
16
+ type: string;
17
+ }, import("xstate").EventObject> | import("xstate").ActorRef<import("xstate").PromiseSnapshot<import("./types").RefreshSuccessEvent, import("./actors").RefreshInput>, {
18
+ [k: string]: unknown;
19
+ type: string;
20
+ }, import("xstate").EventObject> | undefined;
21
+ }, import("xstate").Values<{
22
+ addItems: {
23
+ src: "addItems";
24
+ logic: import("xstate").PromiseActorLogic<import("./types").AddItemsSuccessEvent, import("./actors").AddItemsInput>;
25
+ id: string | undefined;
26
+ };
27
+ removeItems: {
28
+ src: "removeItems";
29
+ logic: import("xstate").PromiseActorLogic<import("./types").RemoveItemsSuccessEvent, import("./actors").RemoveItemsInput>;
30
+ id: string | undefined;
31
+ };
32
+ refresh: {
33
+ src: "refresh";
34
+ logic: import("xstate").PromiseActorLogic<import("./types").RefreshSuccessEvent, import("./actors").RefreshInput>;
35
+ id: string | undefined;
36
+ };
37
+ }>, import("xstate").Values<{
38
+ addItems: {
39
+ type: "addItems";
40
+ params: import("xstate").NonReducibleUnknown;
41
+ };
42
+ removeItems: {
43
+ type: "removeItems";
44
+ params: import("xstate").NonReducibleUnknown;
45
+ };
46
+ refresh: {
47
+ type: "refresh";
48
+ params: import("xstate").NonReducibleUnknown;
49
+ };
50
+ }>, import("xstate").Values<{
51
+ canRefresh: {
52
+ type: "canRefresh";
53
+ params: unknown;
54
+ };
55
+ hasItems: {
56
+ type: "hasItems";
57
+ params: unknown;
58
+ };
59
+ }>, never, "active" | "refreshing" | "initializing" | "uninitialized" | "empty" | "addingItems" | "removingItems", string, {
60
+ initialContext: DeepPartial<QuoteMachineContext>;
61
+ initialState?: string | undefined;
62
+ }, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, import("xstate").ResolveTypegenMeta<import("xstate").TypegenDisabled, import("./types").SetEmptyEvent | import("./types").SetActiveEvent | import("./types").AddItemsEvent | import("./types").RemoveItemsEvent | import("./types").ClearItemsEvent | import("./types").RefreshEvent | import("./types").ApplyPromotionEvent | import("./types").RemovePromotionEvent | import("./types").AddAddressEvent | import("./types").RemoveAddressEvent | import("./types").ApplyPaymentMethodEvent | import("./types").AddRewardEvent | import("./types").RemoveRewardEvent | import("./types").AddStoreCreditEvent | import("./types").RemoveStoreCreditEvent | import("./types").AddGiftCardEvent | import("./types").RemoveGiftCardEvent | import("xstate").DoneActorEvent<import("./types").AddItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").RemoveItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").ClearItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").RefreshSuccessEvent>, import("xstate").Values<{
63
+ addItems: {
64
+ src: "addItems";
65
+ logic: import("xstate").PromiseActorLogic<import("./types").AddItemsSuccessEvent, import("./actors").AddItemsInput>;
66
+ id: string | undefined;
67
+ };
68
+ removeItems: {
69
+ src: "removeItems";
70
+ logic: import("xstate").PromiseActorLogic<import("./types").RemoveItemsSuccessEvent, import("./actors").RemoveItemsInput>;
71
+ id: string | undefined;
72
+ };
73
+ refresh: {
74
+ src: "refresh";
75
+ logic: import("xstate").PromiseActorLogic<import("./types").RefreshSuccessEvent, import("./actors").RefreshInput>;
76
+ id: string | undefined;
77
+ };
78
+ }>, import("xstate").Values<{
79
+ addItems: {
80
+ type: "addItems";
81
+ params: import("xstate").NonReducibleUnknown;
82
+ };
83
+ removeItems: {
84
+ type: "removeItems";
85
+ params: import("xstate").NonReducibleUnknown;
86
+ };
87
+ refresh: {
88
+ type: "refresh";
89
+ params: import("xstate").NonReducibleUnknown;
90
+ };
91
+ }>, import("xstate").Values<{
92
+ canRefresh: {
93
+ type: "canRefresh";
94
+ params: unknown;
95
+ };
96
+ hasItems: {
97
+ type: "hasItems";
98
+ params: unknown;
99
+ };
100
+ }>, never, string, import("xstate").EventObject>>>>;
101
+ export declare const useQuote: () => QuoteContextType;
102
+ type QuoteOptions = {
103
+ inspect: Observer<InspectionEvent> | undefined;
104
+ quote: DeepPartial<QuoteMachineContext['quote']>;
105
+ endpoints?: Partial<QuoteMachineContext['endpoints']>;
106
+ graphql?: Partial<QuoteMachineContext['graphql']>;
107
+ };
108
+ /**
109
+ * runs on server side as part of withQuote HOF
110
+ */
111
+ export declare const getQuote: (options?: QuoteOptions) => Promise<Actor<import("xstate").StateMachine<QuoteMachineContext, import("./types").SetEmptyEvent | import("./types").SetActiveEvent | import("./types").AddItemsEvent | import("./types").RemoveItemsEvent | import("./types").ClearItemsEvent | import("./types").RefreshEvent | import("./types").ApplyPromotionEvent | import("./types").RemovePromotionEvent | import("./types").AddAddressEvent | import("./types").RemoveAddressEvent | import("./types").ApplyPaymentMethodEvent | import("./types").AddRewardEvent | import("./types").RemoveRewardEvent | import("./types").AddStoreCreditEvent | import("./types").RemoveStoreCreditEvent | import("./types").AddGiftCardEvent | import("./types").RemoveGiftCardEvent | import("xstate").DoneActorEvent<import("./types").AddItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").RemoveItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").ClearItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").RefreshSuccessEvent>, {
112
+ [x: string]: import("xstate").ActorRef<import("xstate").PromiseSnapshot<import("./types").AddItemsSuccessEvent, import("./actors").AddItemsInput>, {
113
+ [k: string]: unknown;
114
+ type: string;
115
+ }, import("xstate").EventObject> | import("xstate").ActorRef<import("xstate").PromiseSnapshot<import("./types").RemoveItemsSuccessEvent, import("./actors").RemoveItemsInput>, {
116
+ [k: string]: unknown;
117
+ type: string;
118
+ }, import("xstate").EventObject> | import("xstate").ActorRef<import("xstate").PromiseSnapshot<import("./types").RefreshSuccessEvent, import("./actors").RefreshInput>, {
119
+ [k: string]: unknown;
120
+ type: string;
121
+ }, import("xstate").EventObject> | undefined;
122
+ }, import("xstate").Values<{
123
+ addItems: {
124
+ src: "addItems";
125
+ logic: import("xstate").PromiseActorLogic<import("./types").AddItemsSuccessEvent, import("./actors").AddItemsInput>;
126
+ id: string | undefined;
127
+ };
128
+ removeItems: {
129
+ src: "removeItems";
130
+ logic: import("xstate").PromiseActorLogic<import("./types").RemoveItemsSuccessEvent, import("./actors").RemoveItemsInput>;
131
+ id: string | undefined;
132
+ };
133
+ refresh: {
134
+ src: "refresh";
135
+ logic: import("xstate").PromiseActorLogic<import("./types").RefreshSuccessEvent, import("./actors").RefreshInput>;
136
+ id: string | undefined;
137
+ };
138
+ }>, import("xstate").Values<{
139
+ addItems: {
140
+ type: "addItems";
141
+ params: import("xstate").NonReducibleUnknown;
142
+ };
143
+ removeItems: {
144
+ type: "removeItems";
145
+ params: import("xstate").NonReducibleUnknown;
146
+ };
147
+ refresh: {
148
+ type: "refresh";
149
+ params: import("xstate").NonReducibleUnknown;
150
+ };
151
+ }>, import("xstate").Values<{
152
+ canRefresh: {
153
+ type: "canRefresh";
154
+ params: unknown;
155
+ };
156
+ hasItems: {
157
+ type: "hasItems";
158
+ params: unknown;
159
+ };
160
+ }>, never, "active" | "refreshing" | "initializing" | "uninitialized" | "empty" | "addingItems" | "removingItems", string, {
161
+ initialContext: DeepPartial<QuoteMachineContext>;
162
+ initialState?: string | undefined;
163
+ }, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, import("xstate").ResolveTypegenMeta<import("xstate").TypegenDisabled, import("./types").SetEmptyEvent | import("./types").SetActiveEvent | import("./types").AddItemsEvent | import("./types").RemoveItemsEvent | import("./types").ClearItemsEvent | import("./types").RefreshEvent | import("./types").ApplyPromotionEvent | import("./types").RemovePromotionEvent | import("./types").AddAddressEvent | import("./types").RemoveAddressEvent | import("./types").ApplyPaymentMethodEvent | import("./types").AddRewardEvent | import("./types").RemoveRewardEvent | import("./types").AddStoreCreditEvent | import("./types").RemoveStoreCreditEvent | import("./types").AddGiftCardEvent | import("./types").RemoveGiftCardEvent | import("xstate").DoneActorEvent<import("./types").AddItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").RemoveItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").ClearItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").RefreshSuccessEvent>, import("xstate").Values<{
164
+ addItems: {
165
+ src: "addItems";
166
+ logic: import("xstate").PromiseActorLogic<import("./types").AddItemsSuccessEvent, import("./actors").AddItemsInput>;
167
+ id: string | undefined;
168
+ };
169
+ removeItems: {
170
+ src: "removeItems";
171
+ logic: import("xstate").PromiseActorLogic<import("./types").RemoveItemsSuccessEvent, import("./actors").RemoveItemsInput>;
172
+ id: string | undefined;
173
+ };
174
+ refresh: {
175
+ src: "refresh";
176
+ logic: import("xstate").PromiseActorLogic<import("./types").RefreshSuccessEvent, import("./actors").RefreshInput>;
177
+ id: string | undefined;
178
+ };
179
+ }>, import("xstate").Values<{
180
+ addItems: {
181
+ type: "addItems";
182
+ params: import("xstate").NonReducibleUnknown;
183
+ };
184
+ removeItems: {
185
+ type: "removeItems";
186
+ params: import("xstate").NonReducibleUnknown;
187
+ };
188
+ refresh: {
189
+ type: "refresh";
190
+ params: import("xstate").NonReducibleUnknown;
191
+ };
192
+ }>, import("xstate").Values<{
193
+ canRefresh: {
194
+ type: "canRefresh";
195
+ params: unknown;
196
+ };
197
+ hasItems: {
198
+ type: "hasItems";
199
+ params: unknown;
200
+ };
201
+ }>, never, string, import("xstate").EventObject>>>>;
202
+ type Props = {
203
+ children: ReactNode;
204
+ actor: Actor<typeof quoteMachine>;
205
+ };
206
+ export declare function QuoteProvider({ actor, children }: Props): import("react/jsx-runtime").JSX.Element;
207
+ export {};
@@ -0,0 +1,80 @@
1
+ import { QuoteMachineContext, QuoteMachineEvents } from '../types';
2
+ export declare function addItems({ context, event, }: {
3
+ context: QuoteMachineContext;
4
+ event: QuoteMachineEvents;
5
+ }): QuoteMachineContext | {
6
+ quote?: {
7
+ id: string | null;
8
+ locale: string | null;
9
+ baseCurrency: string | null;
10
+ currency: string | null;
11
+ currencyConversionRate: number | null;
12
+ dateCreated: Date | null;
13
+ dateLastUpdated: Date | null;
14
+ items: Record<string, any>[] | null;
15
+ promotions: Record<string, any>[] | null;
16
+ shippingAddresses: {
17
+ available: Record<string, any>[];
18
+ selected: string | null;
19
+ } | null;
20
+ totals: {
21
+ discount: number;
22
+ tax: number;
23
+ shipping: number;
24
+ shippingTax: number;
25
+ subtotal: number;
26
+ grandTotal: number;
27
+ } | null;
28
+ appliedPriceRules: Record<string, any>[] | null;
29
+ appliedPromotions: Record<string, any>[] | null;
30
+ shippingMethods: Record<string, any>[] | null;
31
+ paymentMethods: Record<string, any>[] | null;
32
+ storeCredit: Record<string, any>[] | null;
33
+ rewards: Record<string, any>[] | null;
34
+ giftCards: Record<string, any>[] | null;
35
+ } | undefined;
36
+ endpoints?: {
37
+ client?: string | undefined;
38
+ server?: string | undefined;
39
+ } | undefined;
40
+ graphql?: {
41
+ refresh: {
42
+ document: import("graphql-request").RequestDocument | import("@graphql-typed-document-node/core").TypedDocumentNode<unknown, {}>;
43
+ requestHeaders?: import("graphql-request/build/esm/types").GraphQLClientRequestHeaders | undefined;
44
+ };
45
+ addItems: {
46
+ document: import("graphql-request").RequestDocument | import("@graphql-typed-document-node/core").TypedDocumentNode<unknown, {}>;
47
+ requestHeaders?: import("graphql-request/build/esm/types").GraphQLClientRequestHeaders | undefined;
48
+ };
49
+ } | undefined;
50
+ errors?: string[] | undefined;
51
+ id: string | null;
52
+ locale: string | null;
53
+ baseCurrency: string | null;
54
+ currency: string | null;
55
+ currencyConversionRate: number | null;
56
+ dateCreated: Date | null;
57
+ dateLastUpdated: Date | null;
58
+ items: Record<string, any>[] | null;
59
+ promotions: Record<string, any>[] | null;
60
+ shippingAddresses: {
61
+ available: Record<string, any>[];
62
+ selected: string | null;
63
+ } | null;
64
+ totals: {
65
+ discount: number;
66
+ tax: number;
67
+ shipping: number;
68
+ shippingTax: number;
69
+ subtotal: number;
70
+ grandTotal: number;
71
+ } | null;
72
+ appliedPriceRules: Record<string, any>[] | null;
73
+ appliedPromotions: Record<string, any>[] | null;
74
+ shippingMethods: Record<string, any>[] | null;
75
+ paymentMethods: Record<string, any>[] | null;
76
+ storeCredit: Record<string, any>[] | null;
77
+ rewards: Record<string, any>[] | null;
78
+ giftCards: Record<string, any>[] | null;
79
+ };
80
+ export default addItems;
@@ -0,0 +1,3 @@
1
+ export * from './addItems';
2
+ export * from './removeItems';
3
+ export * from './refresh';
@@ -0,0 +1,82 @@
1
+ import { QuoteMachineContext, QuoteMachineEvents } from '../types';
2
+ export declare function refresh({ context, event, }: {
3
+ context: QuoteMachineContext;
4
+ event: QuoteMachineEvents;
5
+ }): QuoteMachineContext | {
6
+ quote: {
7
+ quote?: {
8
+ id: string | null;
9
+ locale: string | null;
10
+ baseCurrency: string | null;
11
+ currency: string | null;
12
+ currencyConversionRate: number | null;
13
+ dateCreated: Date | null;
14
+ dateLastUpdated: Date | null;
15
+ items: Record<string, any>[] | null;
16
+ promotions: Record<string, any>[] | null;
17
+ shippingAddresses: {
18
+ available: Record<string, any>[];
19
+ selected: string | null;
20
+ } | null;
21
+ totals: {
22
+ discount: number;
23
+ tax: number;
24
+ shipping: number;
25
+ shippingTax: number;
26
+ subtotal: number;
27
+ grandTotal: number;
28
+ } | null;
29
+ appliedPriceRules: Record<string, any>[] | null;
30
+ appliedPromotions: Record<string, any>[] | null;
31
+ shippingMethods: Record<string, any>[] | null;
32
+ paymentMethods: Record<string, any>[] | null;
33
+ storeCredit: Record<string, any>[] | null;
34
+ rewards: Record<string, any>[] | null;
35
+ giftCards: Record<string, any>[] | null;
36
+ } | undefined;
37
+ endpoints?: {
38
+ client?: string | undefined;
39
+ server?: string | undefined;
40
+ } | undefined;
41
+ graphql?: {
42
+ refresh: {
43
+ document: import("graphql-request").RequestDocument | import("@graphql-typed-document-node/core").TypedDocumentNode<unknown, {}>;
44
+ requestHeaders?: import("graphql-request/build/esm/types").GraphQLClientRequestHeaders | undefined;
45
+ };
46
+ addItems: {
47
+ document: import("graphql-request").RequestDocument | import("@graphql-typed-document-node/core").TypedDocumentNode<unknown, {}>;
48
+ requestHeaders?: import("graphql-request/build/esm/types").GraphQLClientRequestHeaders | undefined;
49
+ };
50
+ } | undefined;
51
+ errors?: string[] | undefined;
52
+ id: string | null;
53
+ locale: string | null;
54
+ baseCurrency: string | null;
55
+ currency: string | null;
56
+ currencyConversionRate: number | null;
57
+ dateCreated: Date | null;
58
+ dateLastUpdated: Date | null;
59
+ items: Record<string, any>[] | null;
60
+ promotions: Record<string, any>[] | null;
61
+ shippingAddresses: {
62
+ available: Record<string, any>[];
63
+ selected: string | null;
64
+ } | null;
65
+ totals: {
66
+ discount: number;
67
+ tax: number;
68
+ shipping: number;
69
+ shippingTax: number;
70
+ subtotal: number;
71
+ grandTotal: number;
72
+ } | null;
73
+ appliedPriceRules: Record<string, any>[] | null;
74
+ appliedPromotions: Record<string, any>[] | null;
75
+ shippingMethods: Record<string, any>[] | null;
76
+ paymentMethods: Record<string, any>[] | null;
77
+ storeCredit: Record<string, any>[] | null;
78
+ rewards: Record<string, any>[] | null;
79
+ giftCards: Record<string, any>[] | null;
80
+ };
81
+ };
82
+ export default refresh;
@@ -0,0 +1,80 @@
1
+ import { QuoteMachineContext, QuoteMachineEvents } from '../types';
2
+ export declare function removeItems({ context, event, }: {
3
+ context: QuoteMachineContext;
4
+ event: QuoteMachineEvents;
5
+ }): QuoteMachineContext | {
6
+ quote?: {
7
+ id: string | null;
8
+ locale: string | null;
9
+ baseCurrency: string | null;
10
+ currency: string | null;
11
+ currencyConversionRate: number | null;
12
+ dateCreated: Date | null;
13
+ dateLastUpdated: Date | null;
14
+ items: Record<string, any>[] | null;
15
+ promotions: Record<string, any>[] | null;
16
+ shippingAddresses: {
17
+ available: Record<string, any>[];
18
+ selected: string | null;
19
+ } | null;
20
+ totals: {
21
+ discount: number;
22
+ tax: number;
23
+ shipping: number;
24
+ shippingTax: number;
25
+ subtotal: number;
26
+ grandTotal: number;
27
+ } | null;
28
+ appliedPriceRules: Record<string, any>[] | null;
29
+ appliedPromotions: Record<string, any>[] | null;
30
+ shippingMethods: Record<string, any>[] | null;
31
+ paymentMethods: Record<string, any>[] | null;
32
+ storeCredit: Record<string, any>[] | null;
33
+ rewards: Record<string, any>[] | null;
34
+ giftCards: Record<string, any>[] | null;
35
+ } | undefined;
36
+ endpoints?: {
37
+ client?: string | undefined;
38
+ server?: string | undefined;
39
+ } | undefined;
40
+ graphql?: {
41
+ refresh: {
42
+ document: import("graphql-request").RequestDocument | import("@graphql-typed-document-node/core").TypedDocumentNode<unknown, {}>;
43
+ requestHeaders?: import("graphql-request/build/esm/types").GraphQLClientRequestHeaders | undefined;
44
+ };
45
+ addItems: {
46
+ document: import("graphql-request").RequestDocument | import("@graphql-typed-document-node/core").TypedDocumentNode<unknown, {}>;
47
+ requestHeaders?: import("graphql-request/build/esm/types").GraphQLClientRequestHeaders | undefined;
48
+ };
49
+ } | undefined;
50
+ errors?: string[] | undefined;
51
+ id: string | null;
52
+ locale: string | null;
53
+ baseCurrency: string | null;
54
+ currency: string | null;
55
+ currencyConversionRate: number | null;
56
+ dateCreated: Date | null;
57
+ dateLastUpdated: Date | null;
58
+ items: Record<string, any>[] | null;
59
+ promotions: Record<string, any>[] | null;
60
+ shippingAddresses: {
61
+ available: Record<string, any>[];
62
+ selected: string | null;
63
+ } | null;
64
+ totals: {
65
+ discount: number;
66
+ tax: number;
67
+ shipping: number;
68
+ shippingTax: number;
69
+ subtotal: number;
70
+ grandTotal: number;
71
+ } | null;
72
+ appliedPriceRules: Record<string, any>[] | null;
73
+ appliedPromotions: Record<string, any>[] | null;
74
+ shippingMethods: Record<string, any>[] | null;
75
+ paymentMethods: Record<string, any>[] | null;
76
+ storeCredit: Record<string, any>[] | null;
77
+ rewards: Record<string, any>[] | null;
78
+ giftCards: Record<string, any>[] | null;
79
+ };
80
+ export default removeItems;
@@ -0,0 +1,19 @@
1
+ import { AddItemsEvent, AddItemsSuccessEvent, QuoteMachineContext } from '../types';
2
+ export type AddItemsInput = {
3
+ endpoint: QuoteMachineContext['endpoints']['client'];
4
+ items: AddItemsEvent['items'];
5
+ document: QuoteMachineContext['graphql']['addItems']['document'];
6
+ requestHeaders?: QuoteMachineContext['graphql']['addItems']['requestHeaders'];
7
+ };
8
+ export type AddItemsOutput = Partial<{
9
+ quoteAddItem: {
10
+ quote: object;
11
+ userErrors: Array<{
12
+ code: string;
13
+ field: string;
14
+ message: string;
15
+ }>;
16
+ };
17
+ }>;
18
+ export declare const addItems: import("xstate").PromiseActorLogic<AddItemsSuccessEvent, AddItemsInput>;
19
+ export default addItems;
@@ -0,0 +1,3 @@
1
+ export * from './addItems';
2
+ export * from './removeItems';
3
+ export * from './refresh';
@@ -0,0 +1,21 @@
1
+ import { RefreshSuccessEvent, QuoteMachineContext } from '../types';
2
+ export type RefreshInput = {
3
+ endpoint: QuoteMachineContext['endpoints']['client'];
4
+ endpointSsr: QuoteMachineContext['endpoints']['server'];
5
+ quoteId: QuoteMachineContext['quote']['id'];
6
+ locale: QuoteMachineContext['quote']['locale'];
7
+ document: QuoteMachineContext['graphql']['refresh']['document'];
8
+ requestHeaders?: QuoteMachineContext['graphql']['refresh']['requestHeaders'];
9
+ };
10
+ export type RefreshOutput = Partial<{
11
+ refreshQuote: {
12
+ quote: object;
13
+ userErrors: Array<{
14
+ code: string;
15
+ field: string;
16
+ message: string;
17
+ }>;
18
+ };
19
+ }>;
20
+ export declare const refresh: import("xstate").PromiseActorLogic<RefreshSuccessEvent, RefreshInput>;
21
+ export default refresh;
@@ -0,0 +1,17 @@
1
+ import { RemoveItemsEvent, RemoveItemsSuccessEvent, QuoteMachineContext } from '../types';
2
+ export type RemoveItemsInput = {
3
+ endpoint: QuoteMachineContext['endpoints']['client'];
4
+ items: RemoveItemsEvent['items'];
5
+ };
6
+ export type RemoveItemsOutput = Partial<{
7
+ quoteRemoveItem: {
8
+ quote: object;
9
+ userErrors: Array<{
10
+ code: string;
11
+ field: string;
12
+ message: string;
13
+ }>;
14
+ };
15
+ }>;
16
+ export declare const removeItems: import("xstate").PromiseActorLogic<RemoveItemsSuccessEvent, RemoveItemsInput>;
17
+ export default removeItems;
@@ -0,0 +1,10 @@
1
+ import { QuoteMachineContext } from '../types';
2
+ /**
3
+ * Used for initializing quote.
4
+ * Allow quote to be refreshed if on server side and quote cookie present OR
5
+ * if on client side regardless of quote cookie
6
+ */
7
+ export declare const canRefresh: ({ context }: {
8
+ context: QuoteMachineContext;
9
+ }) => boolean;
10
+ export default canRefresh;
@@ -0,0 +1,5 @@
1
+ import { QuoteMachineContext } from '../types';
2
+ export declare const hasItems: ({ context }: {
3
+ context: QuoteMachineContext;
4
+ }) => boolean;
5
+ export default hasItems;
@@ -0,0 +1 @@
1
+ export * from './hasItems';
@@ -0,0 +1,93 @@
1
+ import type { DeepPartial, QuoteMachineContext } from './types';
2
+ export declare const quoteMachine: import("xstate").StateMachine<QuoteMachineContext, import("./types").SetEmptyEvent | import("./types").SetActiveEvent | import("./types").AddItemsEvent | import("./types").RemoveItemsEvent | import("./types").ClearItemsEvent | import("./types").RefreshEvent | import("./types").ApplyPromotionEvent | import("./types").RemovePromotionEvent | import("./types").AddAddressEvent | import("./types").RemoveAddressEvent | import("./types").ApplyPaymentMethodEvent | import("./types").AddRewardEvent | import("./types").RemoveRewardEvent | import("./types").AddStoreCreditEvent | import("./types").RemoveStoreCreditEvent | import("./types").AddGiftCardEvent | import("./types").RemoveGiftCardEvent | import("xstate").DoneActorEvent<import("./types").AddItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").RemoveItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").ClearItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").RefreshSuccessEvent>, {
3
+ [x: string]: import("xstate").ActorRef<import("xstate").PromiseSnapshot<import("./types").AddItemsSuccessEvent, import("./actors").AddItemsInput>, {
4
+ [k: string]: unknown;
5
+ type: string;
6
+ }, import("xstate").EventObject> | import("xstate").ActorRef<import("xstate").PromiseSnapshot<import("./types").RemoveItemsSuccessEvent, import("./actors").RemoveItemsInput>, {
7
+ [k: string]: unknown;
8
+ type: string;
9
+ }, import("xstate").EventObject> | import("xstate").ActorRef<import("xstate").PromiseSnapshot<import("./types").RefreshSuccessEvent, import("./actors").RefreshInput>, {
10
+ [k: string]: unknown;
11
+ type: string;
12
+ }, import("xstate").EventObject> | undefined;
13
+ }, import("xstate").Values<{
14
+ addItems: {
15
+ src: "addItems";
16
+ logic: import("xstate").PromiseActorLogic<import("./types").AddItemsSuccessEvent, import("./actors").AddItemsInput>;
17
+ id: string | undefined;
18
+ };
19
+ removeItems: {
20
+ src: "removeItems";
21
+ logic: import("xstate").PromiseActorLogic<import("./types").RemoveItemsSuccessEvent, import("./actors").RemoveItemsInput>;
22
+ id: string | undefined;
23
+ };
24
+ refresh: {
25
+ src: "refresh";
26
+ logic: import("xstate").PromiseActorLogic<import("./types").RefreshSuccessEvent, import("./actors").RefreshInput>;
27
+ id: string | undefined;
28
+ };
29
+ }>, import("xstate").Values<{
30
+ addItems: {
31
+ type: "addItems";
32
+ params: import("xstate").NonReducibleUnknown;
33
+ };
34
+ removeItems: {
35
+ type: "removeItems";
36
+ params: import("xstate").NonReducibleUnknown;
37
+ };
38
+ refresh: {
39
+ type: "refresh";
40
+ params: import("xstate").NonReducibleUnknown;
41
+ };
42
+ }>, import("xstate").Values<{
43
+ canRefresh: {
44
+ type: "canRefresh";
45
+ params: unknown;
46
+ };
47
+ hasItems: {
48
+ type: "hasItems";
49
+ params: unknown;
50
+ };
51
+ }>, never, "active" | "refreshing" | "initializing" | "uninitialized" | "empty" | "addingItems" | "removingItems", string, {
52
+ initialContext: DeepPartial<QuoteMachineContext>;
53
+ initialState?: string | undefined;
54
+ }, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, import("xstate").ResolveTypegenMeta<import("xstate").TypegenDisabled, import("./types").SetEmptyEvent | import("./types").SetActiveEvent | import("./types").AddItemsEvent | import("./types").RemoveItemsEvent | import("./types").ClearItemsEvent | import("./types").RefreshEvent | import("./types").ApplyPromotionEvent | import("./types").RemovePromotionEvent | import("./types").AddAddressEvent | import("./types").RemoveAddressEvent | import("./types").ApplyPaymentMethodEvent | import("./types").AddRewardEvent | import("./types").RemoveRewardEvent | import("./types").AddStoreCreditEvent | import("./types").RemoveStoreCreditEvent | import("./types").AddGiftCardEvent | import("./types").RemoveGiftCardEvent | import("xstate").DoneActorEvent<import("./types").AddItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").RemoveItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").ClearItemsSuccessEvent> | import("xstate").DoneActorEvent<import("./types").RefreshSuccessEvent>, import("xstate").Values<{
55
+ addItems: {
56
+ src: "addItems";
57
+ logic: import("xstate").PromiseActorLogic<import("./types").AddItemsSuccessEvent, import("./actors").AddItemsInput>;
58
+ id: string | undefined;
59
+ };
60
+ removeItems: {
61
+ src: "removeItems";
62
+ logic: import("xstate").PromiseActorLogic<import("./types").RemoveItemsSuccessEvent, import("./actors").RemoveItemsInput>;
63
+ id: string | undefined;
64
+ };
65
+ refresh: {
66
+ src: "refresh";
67
+ logic: import("xstate").PromiseActorLogic<import("./types").RefreshSuccessEvent, import("./actors").RefreshInput>;
68
+ id: string | undefined;
69
+ };
70
+ }>, import("xstate").Values<{
71
+ addItems: {
72
+ type: "addItems";
73
+ params: import("xstate").NonReducibleUnknown;
74
+ };
75
+ removeItems: {
76
+ type: "removeItems";
77
+ params: import("xstate").NonReducibleUnknown;
78
+ };
79
+ refresh: {
80
+ type: "refresh";
81
+ params: import("xstate").NonReducibleUnknown;
82
+ };
83
+ }>, import("xstate").Values<{
84
+ canRefresh: {
85
+ type: "canRefresh";
86
+ params: unknown;
87
+ };
88
+ hasItems: {
89
+ type: "hasItems";
90
+ params: unknown;
91
+ };
92
+ }>, never, string, import("xstate").EventObject>>;
93
+ export default quoteMachine;