@spiffcommerce/core 30.0.1-beta.98c5ea96-cd5c-5541-a3ab-ada9e1901d6f → 30.0.1-beta.d314ee57-14a8-5953-959b-ce73186a03eb
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/CHANGELOG.md +144 -144
- package/dist/index.d.ts +3 -12
- package/dist/index.js +166 -172
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +3026 -3477
- package/dist/index.mjs.map +1 -1
- package/package.json +10 -10
package/CHANGELOG.md
CHANGED
@@ -7,18 +7,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
7
7
|
|
8
8
|
#### Types of changes
|
9
9
|
|
10
|
-
-
|
11
|
-
-
|
12
|
-
-
|
13
|
-
-
|
14
|
-
-
|
15
|
-
-
|
10
|
+
- `Added` for new features.
|
11
|
+
- `Changed` for changes in existing functionality.
|
12
|
+
- `Deprecated` for soon-to-be removed features.
|
13
|
+
- `Removed` for now removed features.
|
14
|
+
- `Fixed` for any bug fixes.
|
15
|
+
- `Security` in case of vulnerabilities.
|
16
16
|
|
17
|
-
## [
|
17
|
+
## [31.0.0] - 27-08-2025
|
18
18
|
|
19
19
|
## Added
|
20
20
|
|
21
|
-
-
|
21
|
+
- Latest versions of internal build tools and libraries. EG. Vite and ESLint
|
22
22
|
|
23
23
|
## [30.0.0] - 27-08-2025
|
24
24
|
|
@@ -30,586 +30,586 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
30
30
|
|
31
31
|
## Added
|
32
32
|
|
33
|
-
-
|
34
|
-
-
|
35
|
-
-
|
36
|
-
-
|
33
|
+
- Added new functionality regarding mandatory Global Property aspects:
|
34
|
+
- New function `GlobalPropertyHandle.isMandatory(): boolean`: returns a boolean indicating whether the aspect has been marked as required to be completed before the user can continue.
|
35
|
+
- New function `GlobalPropertyHandle.isMandatoryFulfilled(): boolean`: returns a boolean indicating whether the aspect has been marked as "completed" for mandatory checks. Note that this function always returns `true` if the aspect has not been marked as mandatory.
|
36
|
+
- New event on Bundle `global-properties-mandatory-changed`: Fires whenever any global property's mandatory states have changed. Provides an object with the following shape: `{ changed: GlobalPropertyHandle[]; completed: GlobalPropertyHandle[]; remaining: GlobalPropertyHandle[]; }`
|
37
37
|
|
38
38
|
## [29.2.0] - 25-08-2025
|
39
39
|
|
40
40
|
## Added
|
41
41
|
|
42
|
-
-
|
42
|
+
- Added the function `TextGlobalPropertyHandle.isTemplatingEnabled(): boolean`. Use this to determine whether you should display any templating tools.
|
43
43
|
|
44
44
|
## [29.1.2] - 25-08-2025
|
45
45
|
|
46
46
|
## Changed
|
47
47
|
|
48
|
-
-
|
48
|
+
- Text steps now render any templated values prior to calculating the character limit
|
49
49
|
|
50
50
|
## [29.1.1] - 20-08-2025
|
51
51
|
|
52
52
|
## Fixed
|
53
53
|
|
54
|
-
-
|
54
|
+
- Inputting an incorrect code when calling `verifyCode` will no longer prevent you from succeeding if you then input the correct code in a subsequent request.
|
55
55
|
|
56
56
|
## [29.0.4] - 14-08-2025
|
57
57
|
|
58
58
|
## Fixed
|
59
59
|
|
60
|
-
-
|
60
|
+
- Existing dispatchDate is now correctly applied when reloading a bundle
|
61
61
|
|
62
62
|
## [29.0.3] - 14-08-2025
|
63
63
|
|
64
64
|
## Added
|
65
65
|
|
66
|
-
-
|
67
|
-
-
|
66
|
+
- `getDispatchStartDate` method to `ProductCollection`.
|
67
|
+
- `getDispatchEndDate` method to `ProductCollection`.
|
68
68
|
|
69
69
|
## [29.0.2] - 08-08-2025
|
70
70
|
|
71
71
|
## Fixed
|
72
72
|
|
73
|
-
-
|
73
|
+
- `getExportedStepData` now returns only steps with properties as per original behavior.
|
74
74
|
|
75
75
|
## [29.0.1] - 07-08-2025
|
76
76
|
|
77
77
|
## Fixed
|
78
78
|
|
79
|
-
-
|
79
|
+
- Missing `ExportedStepData` types.
|
80
80
|
|
81
81
|
## [29.0.0] - 06-08-2025
|
82
82
|
|
83
83
|
## Changed
|
84
84
|
|
85
|
-
-
|
85
|
+
- The `getExportedData` method has been renamed `getExportedStepData` for clarity, it now returns a list of steps and their metadata chronological to the workflow. Localization has also been removed as this is a theme concern.
|
86
86
|
|
87
87
|
## [28.0.0] - 30-07-2025
|
88
88
|
|
89
89
|
## Changed
|
90
90
|
|
91
|
-
-
|
91
|
+
- The `duplicateBundle` method now returns a function that creates a bundle object, rather than creating the object automatically.
|
92
92
|
|
93
93
|
## Fixed
|
94
94
|
|
95
|
-
-
|
95
|
+
- Fixed bugs around reloading state.
|
96
96
|
|
97
97
|
## [27.3.0] - 28-07-2025
|
98
98
|
|
99
99
|
## Added
|
100
100
|
|
101
|
-
-
|
101
|
+
- CurrencyService & CurrencyContext can now be used to correctly transform values for display. See `client.getCurrencyContext`
|
102
102
|
|
103
103
|
## [27.2.1] - 28-07-2025
|
104
104
|
|
105
105
|
## Fixed
|
106
106
|
|
107
|
-
-
|
107
|
+
- `WorkflowExperience.assignCustomerDetails` should no longer fail when you have ownership of the associated Transaction.
|
108
108
|
|
109
109
|
## [27.2.0] - 24-07-2025
|
110
110
|
|
111
111
|
## Added
|
112
112
|
|
113
|
-
-
|
113
|
+
- Bundles now have the `applyGlobalPropertyState` method for copying one global state onto another.
|
114
114
|
|
115
115
|
## [27.1.1] - 23-07-2025
|
116
116
|
|
117
117
|
## Fixed
|
118
118
|
|
119
|
-
-
|
119
|
+
- Correctly the case of handle multiple text steps that are conditional and share a text aspect.
|
120
120
|
|
121
121
|
## [27.1.0] - 16-07-2025
|
122
122
|
|
123
123
|
## Changed
|
124
124
|
|
125
|
-
-
|
125
|
+
- Added support for Handlebars in text steps.
|
126
126
|
|
127
127
|
## [27.0.0] - 15-07-2025
|
128
128
|
|
129
129
|
## Changed
|
130
130
|
|
131
|
-
-
|
131
|
+
- Modified the functions for logging in as a customer.
|
132
132
|
|
133
133
|
## [26.40.0] - 10-07-2025
|
134
134
|
|
135
135
|
## Added
|
136
136
|
|
137
|
-
-
|
137
|
+
- Added `setDispatchDate` and `setPurchaseOrder` to `Bundle`.
|
138
138
|
|
139
139
|
## [26.39.0] - 08-07-2025
|
140
140
|
|
141
141
|
## Fixed
|
142
142
|
|
143
|
-
-
|
143
|
+
- The function `fetchProductsFeed` on `ProductCollection` now correctly reads from the in-memory cache for repeated calls with the same inputs.
|
144
144
|
|
145
145
|
## [26.38.0] - 07-07-2025
|
146
146
|
|
147
147
|
## Added
|
148
148
|
|
149
|
-
-
|
149
|
+
- `WorkflowManager` now has the function `addRecipientCallback` to listen to changes to the attached Recipient.
|
150
150
|
|
151
151
|
## [26.35.0] - 03-07-2025
|
152
152
|
|
153
153
|
## Added
|
154
154
|
|
155
|
-
-
|
155
|
+
- The `Bundle` type now has the `productsCount` property.
|
156
156
|
|
157
157
|
## [26.33.0] - 02-07-2025
|
158
158
|
|
159
159
|
## Added
|
160
160
|
|
161
|
-
-
|
161
|
+
- The method `getBundlesForCustomer` now has an "ordered" option.
|
162
162
|
|
163
163
|
## [26.31.0] - 24-06-2025
|
164
164
|
|
165
165
|
## Fixed
|
166
166
|
|
167
|
-
-
|
167
|
+
- Fixed issues with authorizing certain requests affecting recipients.
|
168
168
|
|
169
169
|
## [26.30.0] - 23-06-2025
|
170
170
|
|
171
171
|
## Added
|
172
172
|
|
173
|
-
-
|
173
|
+
- New global function `getProductCollections`, which fetches a list of Product Collections by their ids.
|
174
174
|
|
175
175
|
## [26.29.3] - 19-06-2025
|
176
176
|
|
177
177
|
## Fixed
|
178
178
|
|
179
|
-
-
|
179
|
+
- The method `updateRecipient` now saves its arguments correctly.
|
180
180
|
|
181
181
|
## [26.29.1] - 18-06-2025
|
182
182
|
|
183
183
|
### Fixed
|
184
184
|
|
185
|
-
-
|
185
|
+
- Fix issues with bleeding-edge endpoints.
|
186
186
|
|
187
187
|
## [26.29.0] - 18-06-2025
|
188
188
|
|
189
189
|
### Added
|
190
190
|
|
191
|
-
-
|
191
|
+
- The method `updateRecipient` on `WorkflowManager`.
|
192
192
|
|
193
193
|
## [26.28.0] - 18-06-2025
|
194
194
|
|
195
195
|
### Added
|
196
196
|
|
197
|
-
-
|
197
|
+
- The methods `filterProducts` and `fetchProductsFeed` on `ProductCollection` now accept the optional parameters `sortKey` and `sortDescending`. Sort key can be one of: Default, Name, Price.
|
198
198
|
|
199
199
|
## [26.27.0] - 11-06-2025
|
200
200
|
|
201
201
|
### Added
|
202
202
|
|
203
|
-
-
|
203
|
+
- The methods `filterProducts` and `fetchProductsFeed` on `ProductCollection` now accept an optional parameter `tags`, which is an object with the shape `{ include: string[]; exclude: string[]; }`. Only products that have all tags in `include` and no tags in `exclude` will be returned. If either array is provided as empty they will have no effect on the query.
|
204
204
|
|
205
205
|
## [26.26.0] - 27-05-2025
|
206
206
|
|
207
207
|
### Changed
|
208
208
|
|
209
|
-
-
|
209
|
+
- The event emitter on `Bundle` has been improved and made generic. Two new events will also now fire. One for a workflow being added and one for a workflow being removed.
|
210
210
|
|
211
211
|
### Added
|
212
212
|
|
213
|
-
-
|
213
|
+
- The `MetafieldManager` is now exposed for use. Certain functions such as CollectionProduct will now expose utility functions that allow pulling the metafields for the entity being called on.
|
214
214
|
|
215
215
|
## [26.24.0] - 12-05-2025
|
216
216
|
|
217
217
|
### Changed
|
218
218
|
|
219
|
-
-
|
219
|
+
- The functions `getIntegrationProductById` and `getIntegrationProductFromExternalIds` now accept an additional boolean parameter that allows you to fetch all of the linked integration products on the product you have requested.
|
220
220
|
|
221
221
|
### Fixed
|
222
222
|
|
223
|
-
-
|
223
|
+
- The `duplicateBundle` call no longer fails due to missing GraphQl fragments.
|
224
224
|
|
225
225
|
## [26.23.2] - 16-04-2025
|
226
226
|
|
227
227
|
### Fixed
|
228
228
|
|
229
|
-
-
|
229
|
+
- The `duplicateBundle` will now correctly duplicate the global property state.
|
230
230
|
|
231
231
|
## [26.22.0] - 07-04-2025
|
232
232
|
|
233
233
|
### Changed
|
234
234
|
|
235
|
-
-
|
235
|
+
- The `approve` and `reject` functions on `Bundle` now accept a `stakeholderId?: string` to specify which stakeholder you are interacting as.
|
236
236
|
|
237
237
|
## [26.21.1] - 03-04-2025
|
238
238
|
|
239
239
|
### Fixed
|
240
240
|
|
241
|
-
-
|
241
|
+
- Fixed a bug around illustrations in global configurations being initializd with the incorrect amount of channel aspects.
|
242
242
|
|
243
243
|
## [26.21.0] - 01-04-2025
|
244
244
|
|
245
245
|
### Added
|
246
246
|
|
247
|
-
-
|
247
|
+
- The `getQuoteCompleteMessage` method on bundles. Pass the return value of this method to Theme Bridge's `SpiffThemeLoader.completeQuote` method.
|
248
248
|
|
249
249
|
## [26.20.0] - 31-03-2025
|
250
250
|
|
251
251
|
### Added
|
252
252
|
|
253
|
-
-
|
254
|
-
-
|
255
|
-
-
|
256
|
-
-
|
257
|
-
-
|
258
|
-
-
|
259
|
-
-
|
253
|
+
- Added new methods to the `FileUploadGlobalPropertyHandle` for overriding SVG colors:
|
254
|
+
- `getImageWithColors`: Returns a promise that resolves with the current image with the current color configuration, if applicable.
|
255
|
+
- `getAvailableColors`: Returns the colors from the configured color option.
|
256
|
+
- `getCurrentColors`: Returns the current color configuration.
|
257
|
+
- `isColorPickerEnabled` and `isPmsPickerEnabled`: Return whether the color picker and pms picker are enabled, respectively.
|
258
|
+
- `getOriginalColors`: Returns a promise that resolves with the original color configuration of the image asset.
|
259
|
+
- `changeColors`: Updates the current color configuration and propagates the changes to all connected workflow experiences.
|
260
260
|
|
261
261
|
## [26.19.0] - 26-03-2025
|
262
262
|
|
263
263
|
### Added
|
264
264
|
|
265
|
-
-
|
265
|
+
- The `generateQuoteId` method on bundles.
|
266
266
|
|
267
267
|
## [26.18.0] - 24-03-2025
|
268
268
|
|
269
269
|
### Added
|
270
270
|
|
271
|
-
-
|
271
|
+
- Added `OneToOne` mode to `BundleDesignCreationCartAddMode`, which adds each Transaction of a Bundle to the cart as individual line items.
|
272
272
|
|
273
273
|
## [26.17.0] - 24-03-2025
|
274
274
|
|
275
275
|
### Added
|
276
276
|
|
277
|
-
-
|
277
|
+
- The object returned by `Bundle.finish()`, `BundleDesignCreationMessage`, has a new field `cartAddMode?: BundleDesignCreationCartAddMode`. This controls the strategy for adding the items of a Bundle to an ecommerce cart.
|
278
278
|
|
279
279
|
## [26.16.1] - 18-03-2025
|
280
280
|
|
281
281
|
### Changed
|
282
282
|
|
283
|
-
-
|
283
|
+
- If both the partner and workflow have terms and conditions, the workflow wins.
|
284
284
|
|
285
285
|
## [26.15.0] - 03-03-2025
|
286
286
|
|
287
287
|
### Added
|
288
288
|
|
289
|
-
-
|
289
|
+
- Methods on experiences and bundles to attach addresses and organizations.
|
290
290
|
|
291
291
|
## [26.13.0] - 27-02-2025
|
292
292
|
|
293
293
|
### Changed
|
294
294
|
|
295
|
-
-
|
295
|
+
- The selectVariant method of ColorOptionGlobalPropertyHandle objects now has an optional `channel` parameter for color channels.
|
296
296
|
|
297
297
|
## [26.12.0] - 26-02-2025
|
298
298
|
|
299
299
|
### Changed
|
300
300
|
|
301
|
-
-
|
301
|
+
- The global function `getIntegration` now supports a second parameter, `themeConfigurationId`, which allows you to override the Theme Configuration that is returned on the object.
|
302
302
|
|
303
303
|
## [26.11.0] - 24-02-2025
|
304
304
|
|
305
305
|
### Changed
|
306
306
|
|
307
|
-
-
|
307
|
+
- The `createPreviewImage` parameter in `Bundle.finish()` is now provided a second argument, `shouldRender3D: boolean`, which can be passed to `WorkflowExperience.createPreviewImage()`
|
308
308
|
|
309
309
|
## [26.10.0] - 24-02-2025
|
310
310
|
|
311
311
|
### Added
|
312
312
|
|
313
|
-
-
|
313
|
+
- Ability to handle illustrations with asset configurations.
|
314
314
|
|
315
315
|
## [26.9.1] - 20-02-2025
|
316
316
|
|
317
317
|
### Fixed
|
318
318
|
|
319
|
-
-
|
319
|
+
- Resolved an issue allowing empty text to pass mandatory checks on the text step.
|
320
320
|
|
321
321
|
## [26.8.0] - 06-02-2025
|
322
322
|
|
323
323
|
### Fixed
|
324
324
|
|
325
|
-
-
|
325
|
+
- Resolved an issue causing clients using module steps not to handle errors correctly.
|
326
326
|
|
327
327
|
## [26.7.9] - 21-01-2025
|
328
328
|
|
329
329
|
### Fixed
|
330
330
|
|
331
|
-
-
|
331
|
+
- Resolved an issue when duplicating a bundle causing any copied workflow experiences to be missing in the javascript class returned.
|
332
332
|
|
333
333
|
## [26.7.6] - 10-01-2025
|
334
334
|
|
335
335
|
### Fixed
|
336
336
|
|
337
|
-
-
|
337
|
+
- Reverted the previous due to issues with other areas of opentype.
|
338
338
|
|
339
339
|
## [26.7.5] - 10-01-2025
|
340
340
|
|
341
341
|
### Added
|
342
342
|
|
343
|
-
-
|
343
|
+
- Updated opentype to access more functionality around font outlining.
|
344
344
|
|
345
345
|
## [26.7.4] - 19-12-2024
|
346
346
|
|
347
347
|
### Fixed
|
348
348
|
|
349
|
-
-
|
349
|
+
- The version of Opentype we use now correctly includes the fill functionality of the font outlining tool. Fill will now be correctly applied to any text outlined by this tool.
|
350
350
|
|
351
351
|
## [26.7.3] - 18-12-2024
|
352
352
|
|
353
353
|
### Added
|
354
354
|
|
355
|
-
-
|
355
|
+
- Added the `illustrationStep.isPMSPickerEnabled` function. This function returns a boolean indicating whether the PMS picker is enabled for the step.
|
356
356
|
|
357
357
|
## [26.7.2] - 02-12-2024
|
358
358
|
|
359
359
|
### Fixed
|
360
360
|
|
361
|
-
-
|
361
|
+
- Corrected an issue with `TextStepService.availableFillColors` not returning the correct colors under certain conditions.
|
362
362
|
|
363
363
|
## [26.7.0] - 27-11-2024
|
364
364
|
|
365
365
|
### Added
|
366
366
|
|
367
|
-
-
|
368
|
-
|
367
|
+
- Text steps now support custom stroke. Similar to other color customisation features, this is accessible via the functions `getAvailableStrokeColors`, `getStrokeColor`, and `setStrokeColor` on `TextStepHandle`.
|
368
|
+
The thickness of the stroke, the colors to select from, and other options, are configurable via the Spiff Hub in the Workflow editor.
|
369
369
|
|
370
370
|
## [26.5.2] - 20-11-2024
|
371
371
|
|
372
372
|
### Fixed
|
373
373
|
|
374
|
-
-
|
374
|
+
- Fixed issues regarding EXIF orientation calculation throwing errors under specific conditions.
|
375
375
|
|
376
376
|
## [26.5.1] - 20-11-2024
|
377
377
|
|
378
378
|
### Fixed
|
379
379
|
|
380
|
-
-
|
381
|
-
|
382
|
-
|
380
|
+
- SVG Files uploaded to the platform will now have widths and heights specified in non-pixel values
|
381
|
+
stripped. This shouldn't have any effect on user uploads but will prevent the system from breaking when
|
382
|
+
encountering these values.
|
383
383
|
|
384
384
|
## [26.5.0] - 18-11-2024
|
385
385
|
|
386
386
|
### Added
|
387
387
|
|
388
|
-
-
|
388
|
+
- ProductCollection has a new function `fetchProductsFeed`, which fetches a paginated array of product collection products (entries in the product collection). Note that this does not edit the internal array of previously fetched products like `fetchProducts` does, so calls to `fetchProductsFeed` will not change the array that is returned by `getProducts`. If `fetchProducts` has already been called, or if the ProductCollection has been initialised with products, `fetchProductsFeed` will avoid making any network calls where it can.
|
389
389
|
|
390
390
|
## [26.4.0] - 07-11-2024
|
391
391
|
|
392
392
|
### Added
|
393
393
|
|
394
|
-
-
|
395
|
-
-
|
396
|
-
-
|
394
|
+
- The client now has a `placeOrder` function. This allows ordering any combination of transactions. Remember that this may require additional permissions on the application key.
|
395
|
+
- Bundle now has a `placeOrder` function that will place an order for the bundle. The will create an order containing all transactions in the bundle. Remember that this may require additional permissions on the application key.
|
396
|
+
- Interface `Order` and `OrderItem` have been added to the package. These interfaces can be used with the new placeOrder functions.
|
397
397
|
|
398
398
|
## [26.3.0] - 04-11-2024
|
399
399
|
|
400
400
|
### Changed
|
401
401
|
|
402
|
-
-
|
403
|
-
-
|
402
|
+
- IllustrationStepHandle now accepts providing PMS values when calling `setColor`
|
403
|
+
- IllustrationStepHandle's `getAvailableColors` function now returns the names of the variants as PMS values.
|
404
404
|
|
405
405
|
## [26.1.2] - 30-10-2024
|
406
406
|
|
407
407
|
### Fixed
|
408
408
|
|
409
|
-
-
|
409
|
+
- The ProductCollection class will no longer request the products it contains if they are already present in the cache.
|
410
410
|
|
411
411
|
## [26.1.1] - 30-10-2024
|
412
412
|
|
413
413
|
### Changed
|
414
414
|
|
415
|
-
-
|
415
|
+
- Merged some GraphQL calls to reduce the number of requests made when loading a bundle.
|
416
416
|
|
417
417
|
## [26.1.0] - 30-10-2024
|
418
418
|
|
419
419
|
### Changed
|
420
420
|
|
421
|
-
-
|
422
|
-
-
|
421
|
+
- Several internal functions have been changed, been merged or removed. This should not affect any public API.
|
422
|
+
- `rehydrateSerializedLayout` is no longer exported from the package. No functionality is intended to take its place. The function was always intended for internal use only.
|
423
423
|
|
424
424
|
## [26.0.0] - 30-10-2024
|
425
425
|
|
426
426
|
### Changed
|
427
427
|
|
428
|
-
-
|
429
|
-
-
|
430
|
-
-
|
428
|
+
- `getWorkflowExperience` has removed 3 deprecated parameters in favor of the options object. The options object is no longer optional.
|
429
|
+
- `configureUrls` has been removed in favor of the `configure` function. Please use `configure` moving forwards.
|
430
|
+
- The client constructor should know be called with an application in most use cases. We'll continue locking down functionality to require this in the future.
|
431
431
|
|
432
432
|
## [22.0.0] - 10-07-2024
|
433
433
|
|
434
434
|
### Changed
|
435
435
|
|
436
|
-
-
|
436
|
+
- `matchHexToPms` now returns a list of objects of `{ pms: string; hex: string; }` rather than strings.
|
437
437
|
|
438
438
|
### Added
|
439
439
|
|
440
|
-
-
|
440
|
+
- `findPmsColors(input: string, limit?: number): PmsSearchResult[]`: A function to find PMS colors by name using fuzzy search.
|
441
441
|
|
442
442
|
## [21.8.1] - 27-03-2024
|
443
443
|
|
444
444
|
### Fixed
|
445
445
|
|
446
|
-
-
|
446
|
+
- `WorkflowExperience.getTotalPriceSubunits` no longer always returns the discounted price.
|
447
447
|
|
448
448
|
## [21.8.0] - 26-03-2024
|
449
449
|
|
450
450
|
### Added
|
451
451
|
|
452
|
-
-
|
452
|
+
- `Bundle.removeStakeholder(email: string): Promise<void>`: Removes a single stakeholder from the Bundle, via email address.
|
453
453
|
|
454
454
|
## [21.7.1] - 25-03-2024
|
455
455
|
|
456
456
|
### Fixed
|
457
457
|
|
458
|
-
-
|
458
|
+
- `Bundle.getAllStakeholders()` now returns correct results on subsequent calls.
|
459
459
|
|
460
460
|
## [21.7.0] - 25-03-2024
|
461
461
|
|
462
462
|
### Added
|
463
463
|
|
464
|
-
-
|
464
|
+
- `CollectionProduct.getAllWorkflows(): ProductWorkflow[]`: Returns all workflows associated with this product.
|
465
465
|
|
466
466
|
## [21.6.0] - 22-03-2024
|
467
467
|
|
468
468
|
### Added
|
469
469
|
|
470
|
-
-
|
470
|
+
- `WorkflowExperienceEventType.PriceBreakChanged`: The relevant event fires whenever the price break to be used in a WorkflowExperience changes. This even will fire when the quantity changes, and will also fire when in a Bundle when other WorkflowExperiences using the same Product have quantity changes (or are added & removed from the Bundle).
|
471
471
|
|
472
472
|
## [21.5.0] - 22-03-2024
|
473
473
|
|
474
474
|
### Changed
|
475
475
|
|
476
|
-
-
|
477
|
-
-
|
478
|
-
-
|
476
|
+
- `StepHandle`: The override global property state setting now has a different value for each Global Property Aspect type. The get/set functions have been renamed and have an extra parameter to determine the Aspect Type.
|
477
|
+
- `getOverrideGlobalPreviewConfiguration` -> `getOverrideGlobalPropertyConfiguration(type: AspectType): boolean`.
|
478
|
+
- `setOverrideGlobalPreviewConfiguration` -> `setOverrideGlobalPropertyConfiguration(type: AspectType, value: boolean): void`
|
479
479
|
|
480
480
|
## [21.4.1] - 21-03-2024
|
481
481
|
|
482
482
|
### Changed
|
483
483
|
|
484
|
-
-
|
484
|
+
- `readTransactionsQuery` now fetches `printFileUrl1` to `printFileUrl5` for each transaction.
|
485
485
|
|
486
486
|
## [21.4.0] - 20-03-2024
|
487
487
|
|
488
488
|
### Added
|
489
489
|
|
490
|
-
-
|
491
|
-
-
|
492
|
-
-
|
493
|
-
-
|
494
|
-
-
|
490
|
+
- `StepHandle`:
|
491
|
+
- `getOverrideGlobalPreviewConfiguration(): boolean`: Returns a boolean that indicates whether this step should override (ignore) Global Property state.
|
492
|
+
- `setOverrideGlobalPreviewConfiguration(value: boolean): void`: Modifies whether this step should override (ignore) Global Property state.
|
493
|
+
- `getGlobalPropertyAspects(configurationId: string): string[]`: Returns all Aspect names in the supplied Global Property Configuration that this step is configured to use.
|
494
|
+
- `Bundle.getGlobalPropertyConfiguration(): GlobalPropertyConfiguration | undefined`: Returns the Global Property Configuration object associated with the Bundle, if it exists.
|
495
495
|
|
496
496
|
## [21.3.1] - 20-03-2024
|
497
497
|
|
498
498
|
### Fixed
|
499
499
|
|
500
|
-
-
|
500
|
+
- When a `Bundle` is loaded by ID, the `WorkflowExperience` objects it loads will not correctly be linked internally. This resolves issues regarding price breaks not calculating correctly on bundle reload when multiple transactions share a product.
|
501
501
|
|
502
502
|
## [21.3.0] - 20-03-2024
|
503
503
|
|
504
504
|
### Added
|
505
505
|
|
506
|
-
-
|
506
|
+
- `WorkflowExperience.priceBreakToBeApplied()` returns the percentage that will be used in `WorkflowExperience.getTotalPriceSubunits()` and related methods.
|
507
507
|
|
508
508
|
### Changed
|
509
509
|
|
510
|
-
-
|
510
|
+
- `WorkflowExperience.getTotalPriceSubunits()` and related methods now consider price breaks in their calculations, but also now have a `disablePriceBreaks` argument.
|
511
511
|
|
512
512
|
## [21.2.1] - 15-03-2024
|
513
513
|
|
514
514
|
### Fixed
|
515
515
|
|
516
|
-
-
|
516
|
+
- Fixed Global Property Handles not updating values when WorkflowExperiences in the Bundle share the same Workflow.
|
517
517
|
|
518
518
|
## [21.2.0] - 15-03-2024
|
519
519
|
|
520
520
|
### Added
|
521
521
|
|
522
|
-
-
|
523
|
-
-
|
524
|
-
-
|
522
|
+
- `FileUploadGlobalPropertyHandle`:
|
523
|
+
- `hasImage(): boolean`: Returns a boolean value indicating if the associated state has an image.
|
524
|
+
- `getImage(): Promise<Asset | undefined>`: Retrieves the current image from the server.
|
525
525
|
|
526
526
|
## [21.1.1] - 15-03-2024
|
527
527
|
|
528
528
|
### Fixed
|
529
529
|
|
530
|
-
-
|
530
|
+
- Exported missing `AspectType` for global property handles.
|
531
531
|
|
532
532
|
## [21.1.0] - 14-03-2024
|
533
533
|
|
534
534
|
### Added
|
535
535
|
|
536
|
-
-
|
536
|
+
- `Bundle.hasGlobalProperties(): boolean`: Returns true when the bundle is linked to a Global Property Configuration.
|
537
537
|
|
538
538
|
## [21.0.1] - 13-03-2024
|
539
539
|
|
540
540
|
### Fixed
|
541
541
|
|
542
|
-
-
|
542
|
+
- Package now supplies this `CHANGELOG.md` in published releases.
|
543
543
|
|
544
544
|
## [21.0.0] - 13-03-2024
|
545
545
|
|
546
546
|
### Added
|
547
547
|
|
548
|
-
-
|
548
|
+
- `DesignCreationMessage` now has `quantity: number | undefined`.
|
549
549
|
|
550
550
|
### Changed
|
551
551
|
|
552
|
-
-
|
552
|
+
- `Bundle.finish()` no longer returns an array of `DesignCreationMessage` objects, but instead returns a `BundleDesignCreationMessage` object which wraps the array of `DesignCreationMessage` entries.
|
553
553
|
|
554
554
|
## [20.5.1] - 12-03-2024
|
555
555
|
|
556
556
|
### Fixed
|
557
557
|
|
558
|
-
-
|
558
|
+
- `WorkflowExperience.getSelectionPriceSubunits()` (and consequently `getTotalPriceSubunits()`) can no longer return `NaN`.
|
559
559
|
|
560
560
|
## [20.5.0] - 12-03-2024
|
561
561
|
|
562
562
|
### Added
|
563
563
|
|
564
|
-
-
|
564
|
+
- `WorkflowManager.injectIntoPreviewService()` now has a second argument `refocusCamera`, a boolean which allows you to disable the automatic refocusing of the camera when the model is loaded. This requires `@spiffcommerce/preview@^5.7.0`.
|
565
565
|
|
566
566
|
## [20.4.5] - 08-03-2024
|
567
567
|
|
568
568
|
### Added
|
569
569
|
|
570
|
-
-
|
570
|
+
- `RenderableScene` objects will now contain a `workflowScene: WorkflowScene` field. This is only provided for backwards compatibility and is considered deprecated functionality.
|
571
571
|
|
572
572
|
## [20.4.4] - 08-03-2024
|
573
573
|
|
574
574
|
### Fixed
|
575
575
|
|
576
|
-
-
|
576
|
+
- Updating quantity via `WorkflowExperience.setQuantity()` will now correctly update on the server.
|
577
577
|
|
578
578
|
## [20.4.3] - 08-03-2024
|
579
579
|
|
580
580
|
### Changed
|
581
581
|
|
582
|
-
-
|
582
|
+
- `WorkflowExperience.setQuantity()` now returns a promise that resolves once the quantity has been updated on the server.
|
583
583
|
|
584
584
|
## [20.4.0] - 08-03-2024
|
585
585
|
|
586
586
|
### Added
|
587
587
|
|
588
|
-
-
|
589
|
-
-
|
590
|
-
-
|
591
|
-
-
|
592
|
-
-
|
593
|
-
-
|
594
|
-
-
|
588
|
+
- `Transaction` entities now have `quantity: number | undefined`.
|
589
|
+
- New functions on `WorkflowExperience` for managing quantity:
|
590
|
+
- `getQuantity()`: The amount that was, or will be, ordered of the underlying `Transaction`. This will default to `1` if the value is undefined. If you want to read the raw value, use `getWorkflowManager().getTransaction().quantity`.
|
591
|
+
- `setQuantity(<number>)`: Updates the quantity value on the underlying `Transaction` entity. Must be >= 1.
|
592
|
+
- New events functionality on `WorkflowExperience`. Currently the only event is `QuantityChanged`.
|
593
|
+
- `addEventListener(<type>, <callback>)`: Registers a callback function to be called when the specified event is raised. The associated `WorkflowExperience` is passed as a parameter to the callback function.
|
594
|
+
- `removeEventListener(<type>, <callback>)`: Removes a previously registered callback.
|
595
595
|
|
596
596
|
## [20.3.0] - 07-03-2024
|
597
597
|
|
598
598
|
### Added
|
599
599
|
|
600
|
-
-
|
600
|
+
- `CollectionProduct.getCurrentIntegration()`: returns the `IntegrationProductResource` associated with the product that is linked to the current Integration (resolved via the application key).
|
601
601
|
|
602
602
|
## [20.2.2] - 05-03-2024
|
603
603
|
|
604
604
|
### Changed
|
605
605
|
|
606
|
-
-
|
606
|
+
- `WorkflowExperience.getStepById(<string>)` now internally caches the `StepHandle` objects that it creates. This resolves an issue with functional rendering systems that re-render when the object reference changes, where they would re-renderer whenever this function was called even if the object was identical.
|
607
607
|
|
608
608
|
## [20.2.1] - 29-02-2024
|
609
609
|
|
610
610
|
### Changed
|
611
611
|
|
612
|
-
-
|
612
|
+
- The union type `GetWorkflowOptions` has some of its entries wrapped in another union. The types that will create a brand new `Transaction` are now nested under `GetNewWorkflowOptions`:
|
613
613
|
|
614
614
|
```ts
|
615
615
|
// Before
|
@@ -630,7 +630,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
630
630
|
|
631
631
|
### Added
|
632
632
|
|
633
|
-
-
|
633
|
+
- `SpiffCommerceClient.getIntegrationProduct(<options>)`: Fetches an `IntegrationProduct` object. Essentially a wrapper for the functions `getIntegrationProductById` and `getIntegrationProductFromExternalIds`. The options object type is as follows:
|
634
634
|
```ts
|
635
635
|
{
|
636
636
|
type: "integration";
|
@@ -646,27 +646,27 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
646
646
|
|
647
647
|
### Added
|
648
648
|
|
649
|
-
-
|
649
|
+
- `IntegrationProduct.getAllWorkflows()`: Returns an array of `ProductWorkflow`, ordered by their internal `index` value (matches the order seen on the SpiffCommerce Hub).
|
650
650
|
|
651
651
|
## [20.0.1] - 23-02-2024
|
652
652
|
|
653
653
|
### Changed
|
654
654
|
|
655
|
-
-
|
655
|
+
- `StepHandle.executeAnimations()` now logs a warning to the console when the associated `WorkflowManager` is not associated with a `ThreeDPreviewService`.
|
656
656
|
|
657
657
|
## [20.0.0] - 15-02-2024
|
658
658
|
|
659
659
|
### Added
|
660
660
|
|
661
|
-
-
|
662
|
-
-
|
661
|
+
- Additional configuration options for GraphQL on bundles.
|
662
|
+
- A separate fetchProducts function on the ProductCollection interface.
|
663
663
|
|
664
664
|
### Changed
|
665
665
|
|
666
|
-
-
|
666
|
+
- Removed async on getProducts call.
|
667
667
|
|
668
668
|
### Removed
|
669
669
|
|
670
|
-
-
|
671
|
-
-
|
672
|
-
-
|
670
|
+
- Unused normalize.css file.
|
671
|
+
- Identical links assigned in each translation file.
|
672
|
+
- Duplicate index file for the english version.
|