@scayle/storefront-nuxt 8.12.1 → 8.12.2

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.
@@ -0,0 +1,2331 @@
1
+ # @scayle/storefront-nuxt (v7)
2
+
3
+ This changelog contains all changes prior to the release of `@scayle/storefront-nuxt@8.0.0`.
4
+
5
+ ## 7.95.4
6
+
7
+ ### Patch Changes
8
+
9
+ **Dependencies**
10
+
11
+ - Updated dependency to @scayle/storefront-core@7.69.3
12
+
13
+ ## 7.95.3
14
+
15
+ ### Patch Changes
16
+
17
+ **Dependencies**
18
+
19
+ - Updated dependency to @scayle/storefront-core@7.69.2
20
+
21
+ ## 7.95.2
22
+
23
+ ### Patch Changes
24
+
25
+ - Updated dependency `@vueuse/core@11.2.0` to `@vueuse/core@11.3.0`
26
+
27
+ ## 7.95.1
28
+
29
+ ### Patch Changes
30
+
31
+ **Dependencies**
32
+
33
+ - Updated dependency to @scayle/storefront-core@7.69.1
34
+
35
+ ## 7.95.0
36
+
37
+ ### Minor Changes
38
+
39
+ - Move test factories to separate entry point. They are now available via `@scayle/storefront-nuxt/dist/test/factories` (or `@scayle/storefront-nuxt/test/factories` when `moduleResolution` is set to `Bundler`.
40
+
41
+ The location of the test factories within the `@scayle/storefront-nuxt` entry point unintentionally caused them to be included in the client build. This resulted in an error because the client build attempted to import the default export of `lodash.mergeWith`, which is not available.
42
+
43
+ ### Patch Changes
44
+
45
+ **Dependencies**
46
+
47
+ - Updated dependency to @scayle/storefront-core@7.69.0
48
+
49
+ ## 7.94.7
50
+
51
+ ### Patch Changes
52
+
53
+ **Dependencies**
54
+
55
+ - Updated dependency to @scayle/storefront-core@7.68.0
56
+
57
+ ## 7.94.6
58
+
59
+ ### Patch Changes
60
+
61
+ **Dependencies**
62
+
63
+ - Updated dependency to @scayle/storefront-core@7.67.1
64
+
65
+ ## 7.94.5
66
+
67
+ ### Patch Changes
68
+
69
+ **Dependencies**
70
+
71
+ - Updated dependency to @scayle/storefront-core@7.67.0
72
+
73
+ ## 7.94.4
74
+
75
+ ### Patch Changes
76
+
77
+ - Updated dependency `@scayle/storefront-core@7.66.5` to `@scayle/storefront-core@7.66.6`
78
+ **Dependencies**
79
+
80
+ - Updated dependency to @scayle/storefront-core@7.66.7
81
+
82
+ ## 7.94.3
83
+
84
+ ### Patch Changes
85
+
86
+ **Dependencies**
87
+
88
+ - Updated dependency to @scayle/storefront-core@7.66.6
89
+
90
+ ## 7.94.2
91
+
92
+ ### Patch Changes
93
+
94
+ **Dependencies**
95
+
96
+ - Updated dependency to @scayle/storefront-core@7.66.5
97
+
98
+ ## 7.94.1
99
+
100
+ ### Patch Changes
101
+
102
+ **Dependencies**
103
+
104
+ - Updated dependency to @scayle/storefront-core@7.66.4
105
+
106
+ ## 7.94.0
107
+
108
+ ### Minor Changes
109
+
110
+ - Move `vitest` to dev dependencies
111
+
112
+ ### Patch Changes
113
+
114
+ - Removed dependency `vitest@2.1.4`
115
+ - Add `useNavigationTreeById` and `useNavigationTreeByName` to the list of keyed composables
116
+
117
+ ## 7.93.0
118
+
119
+ ### Minor Changes
120
+
121
+ - Test factories are now exported via package source root (`./src/index.ts`).
122
+ Now, all test factories can be imported as follows:
123
+
124
+ ```ts
125
+ import { categoryFactory } from '@scayle/storefront-nuxt'
126
+ ```
127
+
128
+ - Add `product`, `variant`, `price`, `attribute` and `route` test factories.
129
+
130
+ ### Patch Changes
131
+
132
+ - Added dependency `vitest@2.1.4`
133
+
134
+ ## 7.92.0
135
+
136
+ ### Minor Changes
137
+
138
+ - Add nitropack as a peer dependency
139
+
140
+ ### Patch Changes
141
+
142
+ - Removed dependency `nitropack@^2.9.7`
143
+ **Dependencies**
144
+
145
+ - Updated dependency to @scayle/storefront-core@7.66.3
146
+
147
+ ## 7.91.0
148
+
149
+ ### Minor Changes
150
+
151
+ - Remove `category` utils
152
+
153
+ ### Patch Changes
154
+
155
+ **Dependencies**
156
+
157
+ - Updated dependency to @scayle/storefront-core@7.66.2
158
+
159
+ ## 7.90.0
160
+
161
+ ### Minor Changes
162
+
163
+ - Fix RPC context test factory `Log` import
164
+
165
+ ## 7.89.0
166
+
167
+ ### Minor Changes
168
+
169
+ - Add `category` test factory and expose all test factories. Moreover, `fishery` has
170
+ been added to the `peerDependencies` as it is main dependency for the test factories.
171
+ They can be used as follows:
172
+
173
+ ```ts
174
+ import { categoryFactory } from '@scayle/storefront-nuxt/test-factories'
175
+
176
+ categoryFactory.build()
177
+ ```
178
+
179
+ - Introduce `seo` and `category` utilities within the module and expose them as externals.
180
+ The category utilities consist of various functions that manage category tree-structured data.
181
+ The SEO utilities focus primarily on generating schemas and manipulating URLs for SEO purposes.
182
+
183
+ They are exposed externally and can be used as follows:
184
+
185
+ ```ts
186
+ import { sanitizeCanonicalURL } from '@scayle/storefront-nuxt'
187
+
188
+ sanitizeCanonicalURL('/en/women-2045')
189
+ ```
190
+
191
+ ### Patch Changes
192
+
193
+ - Added dependency `schema-dts@1.1.2`
194
+ - Updated dependency `ufo@^1.5.3` to `ufo@^1.5.4`
195
+ **Dependencies**
196
+
197
+ - Updated dependency to @scayle/unstorage-compression-driver@0.1.5
198
+
199
+ ## 7.88.1
200
+
201
+ ### Patch Changes
202
+
203
+ - Updated dependency `@vueuse/core@11.1.0` to `@vueuse/core@11.2.0`
204
+ - Handle error when reading from or saving to the redirect cache
205
+
206
+ With this change, when the application fails to read from the redirect cache it will log the error and fallback to using the SAPI endpoint.
207
+ **Dependencies**
208
+
209
+ - Updated dependency to @scayle/storefront-core@7.66.1
210
+
211
+ ## 7.88.0
212
+
213
+ ### Minor Changes
214
+
215
+ - Add `useNavigationTreeByName` and `useNavigationTreeById` composables.
216
+ Deprecate `useNavigationTree` composable in favor of `useNavigationTreeById`.
217
+
218
+ ### Patch Changes
219
+
220
+ **Dependencies**
221
+
222
+ - Updated dependency to @scayle/storefront-core@7.66.0
223
+
224
+ ## 7.87.2
225
+
226
+ ### Patch Changes
227
+
228
+ **Dependencies**
229
+
230
+ - Updated dependency to @scayle/storefront-core@7.65.11
231
+
232
+ ## 7.87.1
233
+
234
+ ### Patch Changes
235
+
236
+ **Dependencies**
237
+
238
+ - Updated dependency to @scayle/storefront-core@7.65.10
239
+
240
+ ## 7.87.0
241
+
242
+ ### Minor Changes
243
+
244
+ - Added export entry for "./composables".
245
+
246
+ Composables can now be directly imported using:
247
+
248
+ `import { useCurrentShop } from '@scayle/storefront-nuxt/composables';`
249
+
250
+ ## 7.86.0
251
+
252
+ ### Minor Changes
253
+
254
+ - Add `formatPercentage` to `useFormatHelpers.ts`
255
+
256
+ ### Patch Changes
257
+
258
+ **Dependencies**
259
+
260
+ - Updated dependency to @scayle/storefront-core@7.65.9
261
+
262
+ ## 7.85.16
263
+
264
+ ### Patch Changes
265
+
266
+ **Dependencies**
267
+
268
+ - Updated dependency to @scayle/storefront-core@7.65.8
269
+
270
+ ## 7.85.15
271
+
272
+ ### Patch Changes
273
+
274
+ **Dependencies**
275
+
276
+ - Updated dependency to @scayle/storefront-core@7.65.7
277
+
278
+ ## 7.85.14
279
+
280
+ ### Patch Changes
281
+
282
+ **Dependencies**
283
+
284
+ - Updated dependency to @scayle/storefront-core@7.65.6
285
+
286
+ ## 7.85.13
287
+
288
+ ### Patch Changes
289
+
290
+ - Updated dependency `@scayle/h3-session@^0.4.0` to `@scayle/h3-session@^0.4.1`
291
+ - Updated dependency `@scayle/unstorage-compression-driver@^0.1.3` to `@scayle/unstorage-compression-driver@^0.1.4`
292
+
293
+ ## 7.85.12
294
+
295
+ ### Patch Changes
296
+
297
+ - Support passing an internal access header
298
+ **Dependencies**
299
+
300
+ - Updated dependency to @scayle/storefront-core@7.65.5
301
+
302
+ ## 7.85.11
303
+
304
+ ### Patch Changes
305
+
306
+ - Update @nuxt/module-builder to 0.8.4
307
+
308
+ ## 7.85.10
309
+
310
+ ### Patch Changes
311
+
312
+ - Update @nuxt/module-builder to 0.7.1
313
+
314
+ ## 7.85.9
315
+
316
+ ### Patch Changes
317
+
318
+ - Update @nuxt/module-builder to 0.6.0
319
+
320
+ ## 7.85.8
321
+
322
+ ### Patch Changes
323
+
324
+ - Correct the types of `useOrder` and `useOrderConfirmation`
325
+ **Dependencies**
326
+
327
+ - Updated dependency to @scayle/storefront-core@7.65.4
328
+
329
+ ## 7.85.7
330
+
331
+ ### Patch Changes
332
+
333
+ **Dependencies**
334
+
335
+ - Updated dependency to @scayle/storefront-core@7.65.3
336
+
337
+ ## 7.85.6
338
+
339
+ ### Patch Changes
340
+
341
+ **Dependencies**
342
+
343
+ - Updated dependency to @scayle/storefront-core@7.65.2
344
+
345
+ ## 7.85.5
346
+
347
+ ### Patch Changes
348
+
349
+ **Dependencies**
350
+
351
+ - Updated dependency to @scayle/storefront-core@7.65.1
352
+
353
+ ## 7.85.4
354
+
355
+ ### Patch Changes
356
+
357
+ **Dependencies**
358
+
359
+ - Updated dependency to @scayle/storefront-core@7.65.0
360
+
361
+ ## 7.85.3
362
+
363
+ ### Patch Changes
364
+
365
+ - Replaced `radash` utils with custom native implementations
366
+ - Replace `yn` with custom `stringToBoolean` utility function.
367
+ NOTE: As the parsing of boolean environment values has been changed,
368
+ this might have unwanted effects if the respective values have been incorrectly
369
+ defined within the environment.
370
+ **Dependencies**
371
+
372
+ - Updated dependency to @scayle/storefront-core@7.64.4
373
+
374
+ ## 7.85.2
375
+
376
+ ### Patch Changes
377
+
378
+ - Fixed bootstrap middleware logging `[object Object]` by providing an appropriate log message and passing the object as optional data parameter
379
+
380
+ ## 7.85.1
381
+
382
+ ### Patch Changes
383
+
384
+ - Fix `@vueuse/core` version to `11.0.3`
385
+
386
+ ## 7.85.0
387
+
388
+ ### Minor Changes
389
+
390
+ - Fix typing when using `transform`, `default` or `pick` in RPC composables
391
+
392
+ NOTE: This update corrects some broken typings and as a result may require some code changes.
393
+ Previously many composables asserted that the default value would match the response value even when relying on the fallback `default` factory function: `() => null`.
394
+ Due to this, the `data` property would be typed as `Ref<T>` even when it would be `Ref<null>` in case of error on a still pending request.
395
+ The types have now been corrected to respect the `default` factory function's return and accurately represent the behavior.
396
+ This means that you may have to add additional null checks in your code for typechecking to pass.
397
+
398
+ For example:
399
+
400
+ **In 7.84.6**
401
+
402
+ ```ts
403
+ useBrand({
404
+ params: { brandId: 1 },
405
+ }).data satisfies Ref<Brand>
406
+
407
+ useBrand({
408
+ params: { brandId: 1 },
409
+ options: {
410
+ pick: ['id', 'isActive'],
411
+ },
412
+ }).data satisfies Ref<Brand>
413
+
414
+ useBrand({
415
+ params: { brandId: 1 },
416
+ options: {
417
+ transform: (brand) => brand.slug,
418
+ },
419
+ }).data satisfies Ref<Brand>
420
+
421
+ useBrand({
422
+ params: { brandId: 1 },
423
+ options: {
424
+ default: () => 'Brand not found',
425
+ },
426
+ }).data satisfies Ref<Brand>
427
+ ```
428
+
429
+ **In 7.85.0**
430
+
431
+ ```ts
432
+ useBrand({
433
+ params: { brandId: 1 },
434
+ }).data satisfies Ref<Brand | null>
435
+
436
+ useBrand({
437
+ params: { brandId: 1 },
438
+ options: {
439
+ pick: ['id', 'isActive'],
440
+ },
441
+ }).data satisfies Ref<Pick<Brand, 'id' | 'isActive'> | null>
442
+
443
+ useBrand({
444
+ params: { brandId: 1 },
445
+ options: {
446
+ transform: (brand) => brand.slug,
447
+ },
448
+ }).data satisfies Ref<string | null>
449
+
450
+ useBrand({
451
+ params: { brandId: 1 },
452
+ options: {
453
+ default: () => 'Brand not found',
454
+ },
455
+ }).data satisfies Ref<Brand | string>
456
+ ```
457
+
458
+ For more details on `useAsyncData` usage check out the [Nuxt Docs](https://nuxt.com/docs/api/composables/use-async-data)
459
+
460
+ ### Patch Changes
461
+
462
+ - Updated dependencies
463
+ - @scayle/storefront-core@7.64.3
464
+
465
+ ## 7.84.6
466
+
467
+ ### Patch Changes
468
+
469
+ - Updated dependencies
470
+ - @scayle/storefront-core@7.64.2
471
+
472
+ ## 7.84.5
473
+
474
+ ### Patch Changes
475
+
476
+ - Updated dependencies
477
+ - @scayle/storefront-core@7.64.1
478
+
479
+ ## 7.84.4
480
+
481
+ ### Patch Changes
482
+
483
+ - Improve type definitions for exported composables
484
+
485
+ ## 7.84.3
486
+
487
+ ### Patch Changes
488
+
489
+ -
490
+ - Updated dependencies
491
+ - @scayle/storefront-core@7.64.0
492
+
493
+ ## 7.84.2
494
+
495
+ ### Patch Changes
496
+
497
+ - Add support for removing basket items using their item key
498
+ - Updated dependencies
499
+ - @scayle/storefront-core@7.63.1
500
+
501
+ ## 7.84.1
502
+
503
+ ### Patch Changes
504
+
505
+ - Improve typing of `H3EventContext` and `Session.data`
506
+
507
+ ## 7.84.0
508
+
509
+ ### Minor Changes
510
+
511
+ - Migrate from `ModuleBaseOptions.stores` to `ModuleBaseOptions.shops`
512
+
513
+ ## 7.83.0
514
+
515
+ ### Minor Changes
516
+
517
+ - Introduce `disableDefaultGetCachedDataOverride` flag in the public runtime configuration. Setting this to true prevents `useRpc` from sharing data across multiple instances.
518
+ Important: The `disableDefaultGetCachedDataOverride` flag currently does not affect the `useUser`, `useBasket`, and `useWishlist` composables. These composables will continue to share a common cache even when `disableDefaultGetCachedDataOverride` is set to true.
519
+ - Deprecate `useQueryFilterState` in the `@scayle/storefront-nuxt` package
520
+
521
+ ### Patch Changes
522
+
523
+ - Remove `shopCampaignKeyword` from ShopConfigSchema
524
+ - Migrate from using `RpcContext.bapiClient` to using `RpcContext.sapiClient`
525
+ - Updated dependencies
526
+ - @scayle/storefront-core@7.63.0
527
+
528
+ ## 7.82.2
529
+
530
+ ### Patch Changes
531
+
532
+ - Fix types of `useBasket` composable
533
+ - Fix types for more composables
534
+ - Migrate from using `RpcContext.bapiClient` to using `RpcContext.sapiClient`
535
+ - Updated dependencies
536
+ - @scayle/storefront-core@7.62.0
537
+
538
+ ## 7.82.1
539
+
540
+ ### Patch Changes
541
+
542
+ - Fix types of `useBasket` composable
543
+ - Updated dependencies
544
+ - @scayle/storefront-core@7.61.0
545
+
546
+ ## 7.82.0
547
+
548
+ ### Minor Changes
549
+
550
+ - Add new `useRpcCall` composable to make imperative RPC calls more ergonomic
551
+
552
+ ```vue
553
+ <script lang="ts" setup>
554
+ const getConfig = useRpcCall('getShopConfiguration)
555
+ const getProduct = useRpcCall('getProductById')
556
+ const config = await getConfig()
557
+ const product = await getProduct({ id: 1 })
558
+ </script>
559
+ ```
560
+
561
+ ### Patch Changes
562
+
563
+ - Updated dependencies
564
+ - @scayle/storefront-core@7.59.1
565
+
566
+ ## 7.81.0
567
+
568
+ ### Minor Changes
569
+
570
+ - Support enabling or disabling optional server-side plugins
571
+
572
+ Plugins with optional behavior can now be disabled at build time through `env` variables.
573
+
574
+ - `SFC_PLUGIN_CONFIG_VALIDATION_ENABLED` This plugin executes during app startup and validates the runtime config, exiting with an error if a problem is found. It is enabled by default and can be disabled by setting this variable to `false`.
575
+ - `SFC_PLUGIN_POWERED_BY_ENABLED` This plugin sets the `X-Powered-By-Header` on every HTTP response to include SCAYLE. It is enabled by default and can be disabled by setting this variable to `false`.
576
+ - `SFC_PLUGIN_RUNTIME_PERFORMANCE_ENABLED` This plugin improves performance by computing the runtime configuration at startup rather than for every request. It is enabled by default and can be disabled by setting this variable to `false`.
577
+
578
+ - Add a plugin to cache the runtime config
579
+
580
+ This change adds a Nitro plugin to calculate the runtime config at startup, rather than for every requests. It offers significant performance improvements for large runtime configs.
581
+
582
+ ### Patch Changes
583
+
584
+ - Add import for runtimeConfig plugin
585
+ - Revert type of `publicShopData` to `string[]`
586
+
587
+ ## 7.80.0
588
+
589
+ ### Minor Changes
590
+
591
+ - Do not set session cookie for cached pages
592
+
593
+ ### Patch Changes
594
+
595
+ - Updated to `nuxt@3.12.2`
596
+ - Fix the the type off `publicShopData` in the config. This restores it to `(keyof ShopConfig)[]` instead of `string[]`, allowing its elements to be used to index a `ShopConfig`
597
+
598
+ ## 7.79.1
599
+
600
+ ### Patch Changes
601
+
602
+ - Import `useNitroApp` from `#imports`
603
+
604
+ ## 7.79.0
605
+
606
+ ### Minor Changes
607
+
608
+ - Add hooks before and after RPC execution (`storefront:rpc:before` and `storefront:rpc:after`) and when an RPC fails (`storefront:rpc:error`)
609
+
610
+ These hooks allow you to execute extra logic before/after executing an RPC and even alter the properties of the RPC context/result.
611
+
612
+ Hooks can be registered by adding a nitro plugin inside ´server/plugins/´:
613
+
614
+ ```ts
615
+ import { defineNitroPlugin } from '#imports'
616
+
617
+ export default defineNitroPlugin((nitroApp) => {
618
+ nitroApp.hooks.hook('storefront:rpc:before', (rpcName, rpcContext) => {
619
+ rpcContext.log.debug(`Before: ${rpcName}`)
620
+ })
621
+
622
+ nitroApp.hooks.hook(
623
+ 'storefront:rpc:after',
624
+ (rpcName, rpcContext, result) => {
625
+ rpcContext.log.debug(`After: ${rpcName} returned ${result}`)
626
+ },
627
+ )
628
+
629
+ nitroApp.hooks.hook(
630
+ 'storefront:rpc:error',
631
+ (rpcName, rpcContext, error) => {
632
+ rpcContext.log.error(`ERROR: ${rpcName} did throw ${error}`)
633
+ },
634
+ )
635
+ })
636
+ ```
637
+
638
+ Added [`callHook`](https://github.com/unjs/hookable?tab=readme-ov-file#async-callhook-name-args), `callHookParallel` and [`callHookWith`](https://github.com/unjs/hookable?tab=readme-ov-file#callhookwith-name-callerfn) to `RpcContext` to allow triggering hooks within RPCs
639
+
640
+ ### Patch Changes
641
+
642
+ - Updated dependencies
643
+ - @scayle/storefront-core@7.59.0
644
+
645
+ ## 7.78.1
646
+
647
+ ### Patch Changes
648
+
649
+ - Import `useNitroApp` from `#imports`
650
+
651
+ ## 7.78.0
652
+
653
+ ### Minor Changes
654
+
655
+ - Support shops with multiple paths
656
+
657
+ The `path` property in the shop config can now be defined as an array of strings. If this is the case, multiple path prefixes will point to the same shop. For example, with the config `{ path: ['en', 'en-US'], shopId: 1001 }` both `example.com/en` and `example.com/en-US` will use shop 1001. Because it is the same shop, `/en` and `/en-US` will have the same locale and share user sessions, baskets and wishlists. The first path in the array will be considered the default path and used for API calls.
658
+
659
+ ## 7.77.3
660
+
661
+ ### Patch Changes
662
+
663
+ - Updated dependencies
664
+ - @scayle/storefront-core@7.58.3
665
+
666
+ ## 7.77.2
667
+
668
+ ### Patch Changes
669
+
670
+ - Fix basket count calculation for baskets including item groups
671
+
672
+ ## 7.77.1
673
+
674
+ ### Patch Changes
675
+
676
+ - Updated dependencies
677
+ - @scayle/storefront-core@7.58.2
678
+
679
+ ## 7.77.0
680
+
681
+ ### Minor Changes
682
+
683
+ - Add default `getCachedData` implementation to `useRpc`
684
+
685
+ The default implementation looks like this:
686
+
687
+ ```ts
688
+ getCachedData(key, nuxtApp) {
689
+ return nuxtApp._asyncData[key]?.data.value as TResult
690
+ },
691
+ ```
692
+
693
+ compared to the default in `useAsyncData`
694
+
695
+ ```ts
696
+ getCachedData(key, nuxtApp) {
697
+ const hydrationData = nuxtApp.isHydrating ? nuxtApp.payload.data[key] : nuxtApp.static.data[key]
698
+ return hydrationData ?? nuxtApp._asyncData[key]?.data.value as TResult
699
+ }
700
+ ```
701
+
702
+ With this change multiple calls to the same composable with the same key will reference the cache. Previously, for every call of a composable a request would be sent except in hydration. This should be more similar to the pre-7.75.0 behavior.
703
+
704
+ The `getCachedData` implementation can be overridden when calling `useRpc` or any related composable.
705
+
706
+ ## 7.76.6
707
+
708
+ ### Patch Changes
709
+
710
+ - Updated dependencies
711
+ - @scayle/storefront-core@7.58.1
712
+
713
+ ## 7.76.5
714
+
715
+ ### Patch Changes
716
+
717
+ - Updated dependencies
718
+ - @scayle/storefront-core@7.58.0
719
+
720
+ ## 7.76.4
721
+
722
+ ### Patch Changes
723
+
724
+ - Updated dependencies
725
+ - @scayle/storefront-core@7.57.0
726
+
727
+ ## 7.76.3
728
+
729
+ ### Patch Changes
730
+
731
+ - Updated dependencies
732
+ - @scayle/storefront-core@7.56.0
733
+
734
+ ## 7.76.2
735
+
736
+ ### Patch Changes
737
+
738
+ - Updated to `vue@3.4.27`
739
+ - Updated to `nuxt@3.11.2`
740
+
741
+ ## 7.76.1
742
+
743
+ ### Patch Changes
744
+
745
+ - `useRpc` will watch now `params` if it is a getter or ref, whereas previously it would only watch for refs
746
+
747
+ ## 7.76.0
748
+
749
+ ### Minor Changes
750
+
751
+ - `useOrder` `useOrderConfirmation` and `useIDP` are now optionally awaitable
752
+
753
+ ## 7.75.1
754
+
755
+ ### Patch Changes
756
+
757
+ - Add `immediate` option to `useUser` and deprecate `autoFetch`
758
+ - Log warning when deprecated `autoFetch` option is used
759
+
760
+ ## 7.75.0
761
+
762
+ ### Minor Changes
763
+
764
+ - Configure `keyedComposables` to automatically create keys for `useRpc` wrapping composables instead of relying on hardcoded defaults
765
+ - Export the `extendPromise` util
766
+ - Restore the `useAsyncData` implementation of `useRpc`
767
+
768
+ Originally, `useRpc` was based on `useAsyncData` but in order to fix an issue with wishlists, we restricted the API and changed it to a rough emulation of `useAsyncData`. Because this emulation was similar, but not the same as `useAsyncData` it caused additional confusion. This change brings back the `useAsyncData` implementation.
769
+
770
+ For developers, this means that `useRpc` will behave in the same manner as `useAsyncData`, be subject to the same restrictions and allow the same options.
771
+
772
+ This also means that `useRpc` is now optionally awaitable. `const { data } = await useRpc()` now works as well as `const { data } = useRpc()`. The difference is that the former will wait for the data to load, while the latter will initially be set to the default value.
773
+
774
+ Composables which are simply wrappers around `useRpc` also inherit this new behavior. They accept the same options as `useAsyncData`, return the same properties (and possibly some additional ones) and are optionally awaitable.
775
+
776
+ This includes the following composables:
777
+
778
+ - `useBrand`
779
+ - `useBrands`
780
+ - `useCategories`
781
+ - `useCategoryById`
782
+ - `useCategoryByPath`
783
+ - `useCurrentPromotions`
784
+ - `useFilters`
785
+ - `useNavigationTree`
786
+ - `useNavigationTrees`
787
+ - `useProduct`
788
+ - `useProducts`
789
+ - `useProductsByIds`
790
+ - `useProductsByReferenceKeys`
791
+ - `useProductsCount`
792
+ - `usePromotions`
793
+ - `usePromotionsByIds`
794
+ - `useShopConfiguration`
795
+ - `useUserAddresses`
796
+ - `useVariant`
797
+
798
+ ### Patch Changes
799
+
800
+ - It is no longer mandatory to `await` calls to `useFacet`, `useUser`, `useWishlist` and `useBasket`
801
+
802
+ ## 7.74.0
803
+
804
+ ### Minor Changes
805
+
806
+ - Support for `isDefault` to be an empty string.
807
+ This resolves an issue where an `undefined` value of `isDefault` within a shop config is changed to an empty string during build-time and fails the config validation.
808
+
809
+ ### Patch Changes
810
+
811
+ - Updated dependencies
812
+ - @scayle/storefront-core@7.55.0
813
+
814
+ ## 7.73.0
815
+
816
+ ### Minor Changes
817
+
818
+ - Breaking: Renamed ModuleOptions to ModuleBaseOptions to differentiate it from other ModuleOptions used in different modules.
819
+
820
+ ### Patch Changes
821
+
822
+ - Fix construction of API base path: When setting up a `baseURL` in combination with path based shop selection, the `baseURL` is now the first path segment of the API base path.
823
+ - Updated dependencies
824
+ - @scayle/storefront-core@7.54.0
825
+
826
+ ## 7.72.5
827
+
828
+ ### Patch Changes
829
+
830
+ - Updated dependencies
831
+ - @scayle/storefront-core@7.53.0
832
+
833
+ ## 7.72.4
834
+
835
+ ### Patch Changes
836
+
837
+ - Updated dependencies
838
+ - @scayle/storefront-core@7.52.1
839
+
840
+ ## 7.72.3
841
+
842
+ ### Patch Changes
843
+
844
+ - Refactored composables to consistently use named exports rather than default exports and to use named functions instead of arrow functions
845
+
846
+ ## 7.72.2
847
+
848
+ ### Patch Changes
849
+
850
+ - Add import alias `#storefront/composables` to package.json imports and explicitly added import alias to build transpilation to prevent potential build issues
851
+
852
+ ## 7.72.1
853
+
854
+ ### Patch Changes
855
+
856
+ - Updated dependencies
857
+ - @scayle/storefront-core@7.52.0
858
+
859
+ ## 7.72.0
860
+
861
+ ### Minor Changes
862
+
863
+ - Introduced a new feature that validates runtime configurations using Zod schemas upon server startup.
864
+ The server will exit if validation fails.
865
+ - We now log a warning when an RPC method from `@scayle/storefront-nuxt` is overridden by an RPC custom implementation.
866
+
867
+ If the override is intentional, we provide a new config option called `rpcMethodOverrides` to silence this warning.
868
+ In the future, the warning will become an error message if the RPC is not explicitly marked as an override.
869
+
870
+ ## 7.71.2
871
+
872
+ ### Patch Changes
873
+
874
+ - Provide new import alias `#storefront/composables` to allow for explicit imports of composables provided by the `@scayle/storefront-nuxt` package instead of only relying on the Nuxt auto-import functionality
875
+
876
+ ## 7.71.1
877
+
878
+ ### Patch Changes
879
+
880
+ - Correctly set the `optimizeDeps` for the new `@scayle/storefront-api` package
881
+ - Updated dependencies
882
+ - @scayle/storefront-core@7.51.1
883
+
884
+ ## 7.71.0
885
+
886
+ ### Minor Changes
887
+
888
+ - Add new shopSelector mode `path_or_default`
889
+
890
+ The `path_or_default` mode is similar to `path`, but loading the root will open the default shop instead of redirecting to the first shop. So you can have a shop at `example.com/` and `example.com/de` instead of `example.com/en` and `example.com/de`. To set a default shop, add `isDefault: true` to the shop's configuration in the `nuxt.config`. When using `nuxt-i18n` the `strategy` option should be set to `prefix_except_default`. (This is the default value.)
891
+
892
+ ## 7.70.0
893
+
894
+ ### Minor Changes
895
+
896
+ - `rpcContext.campaignKey` will now be set to the key of the first active campaign matching `$shopConfig.storeCampaignKeyword`. When `$shopConfig.storeCampaignKeyword` is set, campaign keys not starting with `$shopConfig.storeCampaignKeyword` will be ignored.
897
+
898
+ This behavior, is now similar to the nuxt 2 implementation.
899
+
900
+ - It is now also possible to extend the RPCContext using the `storefront:context:created` nitro runtime hook.
901
+
902
+ ```ts
903
+ import { defineNitroPlugin } from 'nitropack/runtime/plugin'
904
+ // Augment RpxContext type
905
+ declare module '@scayle/storefront-nuxt' {
906
+ interface AdditionalRpcContext {
907
+ myNewProp: string
908
+ }
909
+ }
910
+
911
+ // Set new value on rpcContext
912
+ export default defineNitroPlugin((nitroApp) => {
913
+ nitroApp.hooks.hook('storefront:context:created', (rpcContext) => {
914
+ rpcContext.myNewProp = 'My campaign key'
915
+ })
916
+ })
917
+ ```
918
+
919
+ ### Patch Changes
920
+
921
+ - Add campaignKey dependency to nitro
922
+ - Updated dependencies
923
+ - @scayle/storefront-core@7.51.0
924
+
925
+ ## 7.69.1
926
+
927
+ ### Patch Changes
928
+
929
+ - Updated dependencies
930
+ - @scayle/storefront-core@7.50.1
931
+
932
+ ## 7.69.0
933
+
934
+ ### Minor Changes
935
+
936
+ - Upgraded to `@scayle/storefront-api@v17.0.0` and replaced `@aboutyou/backbone`
937
+
938
+ ### Patch Changes
939
+
940
+ - Updated dependencies
941
+ - @scayle/storefront-core@7.50.0
942
+
943
+ ## 7.68.1
944
+
945
+ ### Patch Changes
946
+
947
+ - Updated dependencies
948
+ - @scayle/storefront-core@7.49.4
949
+
950
+ ## 7.68.0
951
+
952
+ ### Minor Changes
953
+
954
+ - Use unique session cookie names for each shop
955
+
956
+ To simplify the implementation and improve the stability of session handling, we now use a differently named cookie for each shop instead of depending on the `Path` attribute.
957
+
958
+ This is a change only to the framework internals, and should not have any visible impact or require any code changes.
959
+
960
+ Before: `Set-Cookie: $session=s:fa3746f9-88c8-4065-a6c9-0c7bee473dd8.pSoaN6Q7iFHHyWKE7s9gQAqdDzGb9fS8a478P7PHLxw; Path=/de`
961
+
962
+ After: `Set-Cookie: $session-1001=s:fa3746f9-88c8-4065-a6c9-0c7bee473dd8.pSoaN6Q7iFHHyWKE7s9gQAqdDzGb9fS8a478P7PHLxw; Path=/`
963
+
964
+ When a cookie is found that uses the old format, it will be migrated to the new.
965
+
966
+ ### Patch Changes
967
+
968
+ - We stop bootstrapping requests where we can't determine a shop based on the request parameters.
969
+ Previously, we fell back to the first shop configuration, which has now been removed.
970
+
971
+ In this case, no `$rpcContext` is available during the request event.
972
+
973
+ We also bootstrap the Nuxt Error Page with the correct shop config now.
974
+
975
+ - Updated dependencies
976
+ - @scayle/h3-session@0.4.0
977
+
978
+ ## 7.67.2
979
+
980
+ ### Patch Changes
981
+
982
+ - Updated dependencies
983
+ - @scayle/storefront-core@7.49.3
984
+
985
+ ## 7.67.1
986
+
987
+ ### Patch Changes
988
+
989
+ - `initialPath` option in `useFacet` should be optional
990
+ - Updated dependencies
991
+ - @scayle/storefront-core@7.49.2
992
+
993
+ ## 7.67.0
994
+
995
+ ### Minor Changes
996
+
997
+ - Support passing initial path to `useFacet`
998
+
999
+ ## 7.66.4
1000
+
1001
+ ### Patch Changes
1002
+
1003
+ - Updated dependencies
1004
+ - @scayle/storefront-core@7.49.1
1005
+
1006
+ ## 7.66.3
1007
+
1008
+ ### Patch Changes
1009
+
1010
+ - Updated dependencies
1011
+ - @scayle/storefront-core@7.49.0
1012
+
1013
+ ## 7.66.2
1014
+
1015
+ ### Patch Changes
1016
+
1017
+ - We fixed a bug where we would attach a session to a request for `/favicon.ico` when no favicon was present in the public directory.
1018
+
1019
+ This leads to a session conflict when using a path-based shop selector.
1020
+
1021
+ ## 7.66.1
1022
+
1023
+ ### Patch Changes
1024
+
1025
+ - Fix RpcContext containing outdated data for the remainder of the request after mutating the session data
1026
+
1027
+ ## 7.66.0
1028
+
1029
+ ### Minor Changes
1030
+
1031
+ - Fix variable used before initialization in `useBasket`
1032
+
1033
+ Breaking: This change removes the `useEventListener` call from `useBasket`. This code was specific to the checkout page and it has been moved to that page in the Storefront Boilerplate (v1.0.0-rc.9). To make the necessary change in your own project, add the following code to `checkout.vue`.
1034
+
1035
+ ```ts
1036
+ import type { CheckoutEvent } from '@scayle/storefront-nuxt'
1037
+ const { fetching, fetch } = await useBasket()
1038
+
1039
+ const onCheckoutUpdate = async (
1040
+ event: MessageEvent<CheckoutEvent>,
1041
+ fetching: Boolean,
1042
+ fetchCallback: () => Promise<void>,
1043
+ ) => {
1044
+ if (fetching) {
1045
+ return
1046
+ } // prevent multiple fetches
1047
+ if (event?.data?.type === 'tracking') {
1048
+ const actionType = event.data.event?.event
1049
+
1050
+ if (actionType === 'add_to_cart' || actionType === 'remove_from_cart') {
1051
+ await fetchCallback()
1052
+ }
1053
+ }
1054
+ }
1055
+
1056
+ // Refresh basket if the user changes quantity or removes an item at checkout
1057
+ useEventListener(
1058
+ 'message',
1059
+ (event) => onCheckoutUpdate(event, fetching.value, fetch),
1060
+ )
1061
+ ```
1062
+
1063
+ ### Patch Changes
1064
+
1065
+ - Fixes an issue where the `refreshToken` was not exposed on the `RPCContext` even if the user is logged in.
1066
+ - Updated dependencies
1067
+ - @scayle/storefront-core@7.48.2
1068
+
1069
+ ## 7.65.1
1070
+
1071
+ ### Patch Changes
1072
+
1073
+ - Updated dependencies
1074
+ - @scayle/storefront-core@7.48.1
1075
+
1076
+ ## 7.65.0
1077
+
1078
+ ### Minor Changes
1079
+
1080
+ - Add OpenTelemetry instrumentation to RPC methods
1081
+
1082
+ This release adds the beginning of native instrumentation to the `@scayle/storefront-nuxt` package.
1083
+
1084
+ If you are using the OpenTelemetry SDK in your application, a `Span` will now be created for calls to RPC methods. The `Span` will be named `storefront-nuxt.rpc/[method]` and have the following attributes:
1085
+
1086
+ - `rpc.method` the method name
1087
+ - `rpc.server` `'storefront-nuxt.rpc'`
1088
+ - `rpc.payload` the payload passed to the RPC
1089
+ - `server.address` the hostname of the server
1090
+ - `server.port` the port of the server
1091
+
1092
+ Additionally, the `Span`'s status will be set to `ERROR` or `OK` depending on the result of the RPC call.
1093
+
1094
+ If you are not using the `@opentelemetry/sdk` in your application, this change will have no impact. A reference implementation of the OpenTelemetry SDK will be included in a future Storefront Boilerplate release.
1095
+
1096
+ ## 7.64.1
1097
+
1098
+ ### Patch Changes
1099
+
1100
+ - Format code with dprint
1101
+ - Updated dependencies
1102
+ - @scayle/unstorage-compression-driver@0.1.3
1103
+ - @scayle/h3-session@0.3.6
1104
+
1105
+ ## 7.64.0
1106
+
1107
+ ### Minor Changes
1108
+
1109
+ - Add `useStorefrontSearch` composable
1110
+
1111
+ ## 7.63.0
1112
+
1113
+ ### Minor Changes
1114
+
1115
+ - Add support for dynamically adding query parameters to the IDP redirect callback URLs to be read back when the user returns from the IDP.
1116
+
1117
+ ```ts
1118
+ const { data: externalIDPRedirects } = await useIDP({
1119
+ queryParams: { redirectTo: '/account' },
1120
+ })
1121
+ ```
1122
+
1123
+ Please note that `code` and `state` are not supported as these are used by the SCAYLE Authentication API.
1124
+
1125
+ ### Patch Changes
1126
+
1127
+ - Avoid querying for redirects on pages matching the `/__nuxt_error` pattern.
1128
+ - Updated dependencies
1129
+ - @scayle/storefront-core@7.48.0
1130
+
1131
+ ## 7.62.4
1132
+
1133
+ ### Patch Changes
1134
+
1135
+ - Removed direct logging of `vm` in `log.client.ts` to fix a recursive/infinite logging issue, now logging `vm.$options` instead.
1136
+ - Updated dependencies
1137
+ - @scayle/storefront-core@7.47.0
1138
+
1139
+ ## 7.62.3
1140
+
1141
+ ### Patch Changes
1142
+
1143
+ - Ensure composables are not called asynchronously in `useBasket` and `useFacet`
1144
+
1145
+ ## 7.62.2
1146
+
1147
+ ### Patch Changes
1148
+
1149
+ - Error pages should be bootstrapped based on the URL where the error occurred
1150
+
1151
+ This resolves an issue where context properties such as `currentShop` and `availableShops` were not available on the error page.
1152
+
1153
+ ## 7.62.1
1154
+
1155
+ ### Patch Changes
1156
+
1157
+ - Revert breaking change in `handleIDPLoginCallback` signature
1158
+ - Updated dependencies
1159
+ - @scayle/storefront-core@7.46.1
1160
+
1161
+ ## 7.62.0
1162
+
1163
+ ### Minor Changes
1164
+
1165
+ - Add `useProductsByReferenceKeys` composable
1166
+ Add `useCategoryById` composable
1167
+
1168
+ ### Patch Changes
1169
+
1170
+ - Do not throw error in `useRpc`. This is the reversion of a change introduced in 7.61.5. If you need a thrown error when a `useRpc` request fails, check the `error` property returned by `useRpc` and `throw` it.
1171
+ - Updated dependencies
1172
+ - @scayle/storefront-core@7.46.0
1173
+
1174
+ ## 7.61.5
1175
+
1176
+ ### Patch Changes
1177
+
1178
+ - Log errors that occur when attaching the session in bootstrap
1179
+ - Update the type of `data` returned by `useRpc` to indicate that it may be undefined. Note: This may cause new typechecking errors. These cases should be corrected to handle `undefined`. It was always possible for `data` to be `undefined`, but the types did not represent that.
1180
+ - Updated dependencies
1181
+ - @scayle/storefront-core@7.45.0
1182
+
1183
+ ## 7.61.4
1184
+
1185
+ ### Patch Changes
1186
+
1187
+ - Fix the type of unitialized data in `useBasket` and `useWishlist`
1188
+
1189
+ When the request for the basket/wishlist has not completed or has failed, the `data` property is `undefined`. In the previous release this was inadvertently changed to `null`. Now it is once again `undefined`.
1190
+
1191
+ ## 7.61.3
1192
+
1193
+ ### Patch Changes
1194
+
1195
+ - Fix types of useBasket and useWishlist
1196
+
1197
+ ## 7.61.2
1198
+
1199
+ ### Patch Changes
1200
+
1201
+ - Updated to `vue@3.4.21` (​For more details check the [Vue 3.4.21 Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md#3421-2024-02-28​)
1202
+ - Updated to `nuxt@3.10.3` (​For more details check the [Nuxt 3.10.3 Release Notes](https://github.com/nuxt/nuxt/releases/tag/v3.10.3)​)
1203
+ - Updated dependencies
1204
+ - @scayle/storefront-core@7.44.1
1205
+
1206
+ ## 7.61.1
1207
+
1208
+ ### Patch Changes
1209
+
1210
+ - `useBasket` and `useWishlist` should no longer trigger duplicate requests when used in multiple components. Note: As part of this change, the `options` parameter has been removed from both functions.
1211
+
1212
+ ## 7.61.0
1213
+
1214
+ ### Minor Changes
1215
+
1216
+ - Expose the `loginWithIDP` function from the `useSession` composable.
1217
+ - Add error logging to RPC handler
1218
+
1219
+ ### Patch Changes
1220
+
1221
+ - Updated dependencies
1222
+ - @scayle/storefront-core@7.44.0
1223
+
1224
+ ## 7.60.1
1225
+
1226
+ ### Patch Changes
1227
+
1228
+ - Prioritize the execution of `bootstrap` middleware so storefront server middlewares can depend on the extended `event.context`
1229
+
1230
+ If your middleware depends on the `event.context` properties, it must be registered as a `serverHandler` and not automatically scanned from the `~/server/middleware` directory.
1231
+
1232
+ ## 7.60.0
1233
+
1234
+ ### Minor Changes
1235
+
1236
+ - ### Log Configuration changes
1237
+
1238
+ Consolidate the logging configuration for `@scayle/storefront-nuxt`.
1239
+
1240
+ Going forward, the logging needs to be configured on the public runtime that you can control through the `NUXT_PUBLIC_STOREFRONT_LOG_NAME` and `NUXT_PUBLIC_STOREFRONT_LOG_LEVEL` override parameters.
1241
+
1242
+ We have also removed this setting from the module options and the private runtime to prevent misconfigurations.
1243
+
1244
+ ### Authentication Config
1245
+
1246
+ We removed the authentication config as it's not required for the Storefront Nuxt application.
1247
+
1248
+ ## 7.59.0
1249
+
1250
+ ### Minor Changes
1251
+
1252
+ - Breaking: Change default `sameSite` cookie attribute from `none` to `lax`
1253
+ - Attach `headers` to the RPC context
1254
+
1255
+ ### Patch Changes
1256
+
1257
+ - Updated dependencies
1258
+ - @scayle/storefront-core@7.43.0
1259
+
1260
+ ## 7.58.3
1261
+
1262
+ ### Patch Changes
1263
+
1264
+ - Update `/api/up` endpoint to also support non-GET requests
1265
+
1266
+ ## 7.58.2
1267
+
1268
+ ### Patch Changes
1269
+
1270
+ - Fix missing IP address on the RpcContext
1271
+
1272
+ ## 7.58.1
1273
+
1274
+ ### Patch Changes
1275
+
1276
+ - Updated dependencies
1277
+ - @scayle/storefront-core@7.42.1
1278
+
1279
+ ## 7.58.0
1280
+
1281
+ ### Minor Changes
1282
+
1283
+ - Add `useCategoryByPath` composable
1284
+
1285
+ ### Patch Changes
1286
+
1287
+ - Updated dependencies
1288
+ - @scayle/storefront-core@7.42.0
1289
+ - @scayle/unstorage-compression-driver@0.1.2
1290
+
1291
+ ## 7.57.4
1292
+
1293
+ ### Patch Changes
1294
+
1295
+ - Updated dependencies
1296
+ - @scayle/storefront-core@7.41.3
1297
+
1298
+ ## 7.57.3
1299
+
1300
+ ### Patch Changes
1301
+
1302
+ - Updated dependencies
1303
+ - @scayle/storefront-core@7.41.2
1304
+
1305
+ ## 7.57.2
1306
+
1307
+ ### Patch Changes
1308
+
1309
+ - Updated dependencies
1310
+ - @scayle/storefront-core@7.41.1
1311
+
1312
+ ## 7.57.1
1313
+
1314
+ ### Patch Changes
1315
+
1316
+ - Update to `nuxt@3.10.2`
1317
+
1318
+ ## 7.57.0
1319
+
1320
+ ### Minor Changes
1321
+
1322
+ - Strip sensitive data from log messages
1323
+
1324
+ ### Patch Changes
1325
+
1326
+ - Updated dependencies
1327
+ - @scayle/storefront-core@7.41.0
1328
+
1329
+ ## 7.56.0
1330
+
1331
+ ### Minor Changes
1332
+
1333
+ - Updated to `nuxt@3.10.1` and `vue@3.4.19` (_For more details check the [Nuxt 3.10.1 Release Notes](https://nuxt.com/blog/v3-10) and [Vue 3.4.19 Changelogs](https://github.com/vuejs/core/blob/main/CHANGELOG.md#3418-2024-02-09)_)
1334
+
1335
+ ### Patch Changes
1336
+
1337
+ - Updated dependencies
1338
+ - @scayle/storefront-core@7.40.1
1339
+
1340
+ ## 7.55.3
1341
+
1342
+ ### Patch Changes
1343
+
1344
+ - Updated dependencies
1345
+ - @scayle/storefront-core@7.40.0
1346
+
1347
+ ## 7.55.2
1348
+
1349
+ ### Patch Changes
1350
+
1351
+ - Updated dependencies
1352
+ - @scayle/storefront-core@7.39.1
1353
+
1354
+ ## 7.55.1
1355
+
1356
+ ### Patch Changes
1357
+
1358
+ - Skip basic auth when `auth.username` or `auth.password` is nullish
1359
+
1360
+ ## 7.55.0
1361
+
1362
+ ### Minor Changes
1363
+
1364
+ - Export `unwrap()` from `@scayle/storefront-core`
1365
+
1366
+ ## 7.54.0
1367
+
1368
+ ### Minor Changes
1369
+
1370
+ - Authentication RPC methods include status codes in error cases
1371
+
1372
+ ### Patch Changes
1373
+
1374
+ - Updated dependencies
1375
+ - @scayle/storefront-core@7.39.0
1376
+
1377
+ ## 7.53.1
1378
+
1379
+ ### Patch Changes
1380
+
1381
+ - Fix potential empty user after login
1382
+ - Updated dependencies
1383
+ - @scayle/storefront-core@7.38.1
1384
+
1385
+ ## 7.53.0
1386
+
1387
+ ### Minor Changes
1388
+
1389
+ - Nest public `runtimeConfig` properties under the `storefront` key
1390
+
1391
+ Breaking: `useRuntimeConfig().public.log` and `useRuntimeConfig().public.auth` should be replaced by `useRuntimeConfig().public.storefront.log` and `useRuntimeConfig().public.storefront.log`
1392
+
1393
+ ## 7.52.0
1394
+
1395
+ ### Minor Changes
1396
+
1397
+ - Allow the session of an `RpcContext` to be undefined
1398
+
1399
+ BREAKING: This changes the structure of the `RpcContext`, so it may be a breaking change if you have written custom RPC methods.
1400
+
1401
+ The affected properties on the `RpcContext` are `sessionId`, `wishlistKey` and `basketKey` and the affected methods are `destroySession`, `createUserBoundSession`, `updateUser`, and `updateTokens`. If you use these methods or properties in a custom RPC method, make sure that you handle the case where they might be undefined. TypeScript will also catch these cases if you have `strictNullChecks` enabled.
1402
+
1403
+ You can check `context.sessionId` (or another session-dependent property) to determine if the session is present. If one of these properties is present, all will be. Alternatively, you can call `assertSession(context)` before referencing any properties on the context. If the session is not present, an error will be thrown. For any usage of `context` after `assertSession` is called, TypeScript will understand that the session properties are present.
1404
+
1405
+ - Do not attach session for cached request
1406
+
1407
+ ### Patch Changes
1408
+
1409
+ - Updated dependencies
1410
+ - @scayle/storefront-core@7.38.0
1411
+
1412
+ ## 7.51.2
1413
+
1414
+ ### Patch Changes
1415
+
1416
+ - Updated to `nuxt@3.9.3` and `vue@3.4.15` (\__For more details check the [Nuxt 3.9.3 Release Notes](https://github.com/nuxt/nuxt/releases/tag/v3.9.3) and [Vue 3.4.15 Changelogs](https://github.com/vuejs/core/blob/main/CHANGELOG.md#3415-2024-01-18)_)
1417
+
1418
+ **NOTE: The minimum supported versions of the `@scayle/storefront-nuxt` package are `nuxt >=3.9.0` and `vue >=3.4.0`. Please update your application stack accordingly.**
1419
+
1420
+ - useRpc - clear error state when re-fetching
1421
+
1422
+ ## 7.51.1
1423
+
1424
+ ### Patch Changes
1425
+
1426
+ - Updated to `nuxt@3.9.2` and `vue@3.4.14` (_For more details check the [Nuxt 3.9.2 Release Notes](https://github.com/nuxt/nuxt/releases/tag/v3.9.2) and [Vue 3.4.14 Changelogs](https://github.com/vuejs/core/blob/main/CHANGELOG.md#3414-2024-01-15_)
1427
+
1428
+ **NOTE: The minimum supported versions of the `@scayle/storefront-nuxt` package are `nuxt >=3.9.0` and `vue >=3.4.0`. Please update your application stack accordingly.**
1429
+
1430
+ ## 7.51.0
1431
+
1432
+ ### Minor Changes
1433
+
1434
+ - Update dependency `jose` to the latest `5.2.0` version
1435
+
1436
+ ### Patch Changes
1437
+
1438
+ - Updated dependencies
1439
+ - @scayle/storefront-core@7.37.0
1440
+
1441
+ ## 7.50.1
1442
+
1443
+ ### Patch Changes
1444
+
1445
+ - Update to `vue@3.4.10` (​For detailed changes see [Changelog for Vue](https://github.com/vuejs/core/blob/main/CHANGELOG.md)​)
1446
+
1447
+ ## 7.50.0
1448
+
1449
+ ### Minor Changes
1450
+
1451
+ - Update to `nuxt@3.9.1` and `vue@3.4.7` (_For detailed changes see [Blog post: Nuxt 3.9](https://nuxt.com/blog/v3-9) and [Blog post: Announcing Vue 3.4](https://blog.vuejs.org/posts/vue-3-4)_)
1452
+
1453
+ **Please note that `@scayle/storefront-nuxt` is now compatible with `nuxt@9.0.0` or higher!**
1454
+
1455
+ ### Patch Changes
1456
+
1457
+ - Updated dependencies
1458
+ - @scayle/h3-session@0.3.5
1459
+
1460
+ ## 7.49.0
1461
+
1462
+ ### Minor Changes
1463
+
1464
+ - Support `Response` returns in RPC methods
1465
+
1466
+ BREAKING: As part of this change, the return type of `ParamRpcHandler` and `NoParamRpcHandler` has been changed to also allow `Response`. This should have no impact on calling RPCs because the return will automatically be normalized. However, if you also importing the functions explicitly typed as `ParamRpcHandler` or `NoParamRpcHandler` and calling them directly, you may have to updated your code to handle the more expansive return type.
1467
+
1468
+ There is an `unwrap` function exported by this package (>=7.55.0) that can be used to normalize the type.
1469
+
1470
+ - Handle 401 from CO and delete session
1471
+
1472
+ ### Patch Changes
1473
+
1474
+ - Updated dependencies
1475
+ - @scayle/storefront-core@7.36.0
1476
+
1477
+ ## 7.48.2
1478
+
1479
+ ### Patch Changes
1480
+
1481
+ - Updated dependencies
1482
+ - @scayle/storefront-core@7.35.0
1483
+
1484
+ ## 7.48.1
1485
+
1486
+ ### Patch Changes
1487
+
1488
+ - Updated dependencies
1489
+ - @scayle/storefront-core@7.34.1
1490
+
1491
+ ## 7.48.0
1492
+
1493
+ ### Minor Changes
1494
+
1495
+ - We added support for Identity Provider (IDP), enhancing our authentication and identity management capabilities.
1496
+
1497
+ ### Patch Changes
1498
+
1499
+ - Fix runtime crash when using md5 for appKeys
1500
+ - Updated dependencies
1501
+ - @scayle/storefront-core@7.34.0
1502
+
1503
+ ## 7.47.0
1504
+
1505
+ ### Minor Changes
1506
+
1507
+ - Create a shared logger instance per-server instead of per-request
1508
+
1509
+ ## 7.46.1
1510
+
1511
+ ### Patch Changes
1512
+
1513
+ - Updated dependencies
1514
+ - @scayle/storefront-core@7.33.0
1515
+
1516
+ ## 7.46.0
1517
+
1518
+ ### Minor Changes
1519
+
1520
+ - Use new password change API when oauth is enabled
1521
+
1522
+ ### Patch Changes
1523
+
1524
+ - Locale is optional in formatCurrency
1525
+ - Updated dependencies
1526
+ - @scayle/storefront-core@7.32.0
1527
+
1528
+ ## 7.45.0
1529
+
1530
+ ### Minor Changes
1531
+
1532
+ - Migrate currency formatters to a composable
1533
+
1534
+ Because the currency formatter functions depend on the `useCurrentShop` composable, they must also be initialized through a composable. Additionally, because `formatPrice` was the same as `toCurrency` except that it excluded the symbol, the two functions have been merged into `formatCurrency`. If you don't want the currency symbol to be displayed, set the `style` option to `decimal`. These changes requires a small migration step.
1535
+
1536
+ Before:
1537
+
1538
+ ```typescript
1539
+ toCurrency(100, { currency: 'EUR' })
1540
+ formatPrice(100, { currencyFractionDigits: 2 })
1541
+ ```
1542
+
1543
+ After:
1544
+
1545
+ ```typescript
1546
+ const { formatCurrency } = useFormatHelpers()
1547
+ formatCurrency(100, { currency: 'EUR' })
1548
+ formatCurrency(100, { style: 'decimal', currencyFractionDigits: 2 })
1549
+ ```
1550
+
1551
+ ## 7.44.1
1552
+
1553
+ ### Patch Changes
1554
+
1555
+ - The api/up route should not be bootstrapped with the context
1556
+
1557
+ ## 7.44.0
1558
+
1559
+ ### Minor Changes
1560
+
1561
+ - Update SAPI SDK to v16
1562
+
1563
+ ### Patch Changes
1564
+
1565
+ - Fix error when mounting vercelKV driver with default options
1566
+ - Updated dependencies
1567
+ - @scayle/storefront-core@7.31.0
1568
+
1569
+ ## 7.43.1
1570
+
1571
+ ### Patch Changes
1572
+
1573
+ - Updated dependencies
1574
+ - @scayle/storefront-core@7.30.0
1575
+
1576
+ ## 7.43.0
1577
+
1578
+ ### Minor Changes
1579
+
1580
+ - Extend `StorageEntity` with optional `compression: 'none' | 'deflate' | 'gzip' | 'brotli'` option.
1581
+ Modify [unstorage](https://unstorage.unjs.io/) driver creation during server startup to configure`@scayle/unstorage-compression-driver` if value of `compression` is set to a supported compression algorithm.
1582
+
1583
+ ### Patch Changes
1584
+
1585
+ - Ensure correct unstorage drivers are bundled
1586
+ - Updated dependencies
1587
+ - @scayle/unstorage-compression-driver@0.1.1
1588
+ - @scayle/storefront-core@7.29.0
1589
+
1590
+ ## 7.42.3
1591
+
1592
+ ### Patch Changes
1593
+
1594
+ - Fix incorrect parsing of legacy config
1595
+ - Include missing unstorage drivers in final build
1596
+ - Updated dependencies
1597
+ - @scayle/storefront-core@7.28.2
1598
+
1599
+ ## 7.42.2
1600
+
1601
+ ### Patch Changes
1602
+
1603
+ - Ensure `useNuxtApp` is only called from a composable context in `useCategories`
1604
+
1605
+ ## 7.42.1
1606
+
1607
+ ### Patch Changes
1608
+
1609
+ - Ensure useNuxtApp is only called from a composable context
1610
+
1611
+ ## 7.42.0
1612
+
1613
+ ### Minor Changes
1614
+
1615
+ - Unify Storefront Core cache handling using the [Nitro Storage Layer - Mountpoints](https://www.nitropack.org/guide/storage#mountpoints)
1616
+
1617
+ This release changes how cache and session storage is managed in Storefront Core. Storefront Core will now use the `storefront-cache` mountpoint as the root for its cache storage, and `storefront-session` for sessions storage. These can be manually configured through Nitro, but Storefront Core also now includes `storefront.storage.cache` and `storefront.storage.session` config options to automatically create these mountpoints.
1618
+
1619
+ `storefront.storage.cache` is used to configure the primary global cache storage mounted under `storefront-cache`. If not configured, a dedicated memory driver is used.
1620
+
1621
+ `storefront.storage.session` is used to configure the global session storage mounted under `storefront-session`. If not configured, a dedicated memory driver is used.
1622
+
1623
+ The config options `storefront.redis`, `storefront.stores[X].redis`, `storefront.session.provider` and `storefront.cache.provider` have been deprecated in favor of the new `storage` config. In a future version, they will be replaced.
1624
+
1625
+ ### Patch Changes
1626
+
1627
+ - Update to Nuxt `v3.8.2` (See [Nuxt v3.8.2 Release notes](https://github.com/nuxt/nuxt/releases/tag/v3.8.2) for details.)
1628
+
1629
+ ## 7.41.0
1630
+
1631
+ ### Minor Changes
1632
+
1633
+ - Add `campaignKey` to the RPC context
1634
+
1635
+ ## 7.40.6
1636
+
1637
+ ### Patch Changes
1638
+
1639
+ - Updated dependencies
1640
+ - @scayle/storefront-core@7.28.1
1641
+
1642
+ ## 7.40.5
1643
+
1644
+ ### Patch Changes
1645
+
1646
+ - Allow setting the log level in the module config
1647
+ - Prevent infinite loops when log writing fails
1648
+ - Updated dependencies
1649
+ - @scayle/storefront-core@7.28.0
1650
+
1651
+ ## 7.40.4
1652
+
1653
+ ### Patch Changes
1654
+
1655
+ - Resolve error with newly introduced `nitro` plugin during local dev mode
1656
+
1657
+ ## 7.40.3
1658
+
1659
+ ### Patch Changes
1660
+
1661
+ - Introduce `nitro` server plugin to override `x-powered-by` header default value of `Nuxt` with `SCAYLE Storefront by SCAYLE Commerce Engine - www.scayle.com`
1662
+
1663
+ ## 7.40.2
1664
+
1665
+ ### Patch Changes
1666
+
1667
+ - Updated dependencies
1668
+ - @scayle/storefront-core@7.27.0
1669
+
1670
+ ## 7.40.1
1671
+
1672
+ ### Patch Changes
1673
+
1674
+ - Updated dependencies
1675
+ - @scayle/storefront-core@7.26.0
1676
+
1677
+ ## 7.40.0
1678
+
1679
+ ### Minor Changes
1680
+
1681
+ - Update to Nuxt `v3.8.1` (See [Nuxt 3.8 Release Notes](https://github.com/nuxt/nuxt/releases/tag/v3.8.0) and [Nuxt 3.8.1 Release Notes](https://github.com/nuxt/nuxt/releases/tag/v3.8.1) for more details.)
1682
+ - Refactored imports to be compatible with TypeScript `verbatimModuleSyntax` option (See [TypeScript 5.0 - verbatimModuleSyntax](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-0.html#--verbatimmodulesyntax) for more details.)
1683
+ - Update to Vue `v3.3.8` (See [Vue 3.3.8 Release notes](https://github.com/vuejs/core/blob/main/CHANGELOG.md#338-2023-11-06) for more details.)
1684
+
1685
+ ## 7.39.0
1686
+
1687
+ ### Minor Changes
1688
+
1689
+ - Redirects should use the cache provider configured for the shop
1690
+
1691
+ ### Patch Changes
1692
+
1693
+ - Updated dependencies
1694
+ - @scayle/storefront-core@7.25.1
1695
+
1696
+ ## 7.38.1
1697
+
1698
+ ### Patch Changes
1699
+
1700
+ - Updated dependencies
1701
+ - @scayle/storefront-core@7.25.0
1702
+
1703
+ ## 7.38.0
1704
+
1705
+ ### Minor Changes
1706
+
1707
+ - Ensure the session is not shared between different country shops
1708
+
1709
+ ## 7.37.2
1710
+
1711
+ ### Patch Changes
1712
+
1713
+ - Updated dependencies
1714
+ - @scayle/storefront-core@7.24.1
1715
+
1716
+ ## 7.37.1
1717
+
1718
+ ### Patch Changes
1719
+
1720
+ - Updated dependencies
1721
+ - @scayle/storefront-core@7.24.0
1722
+
1723
+ ## 7.37.0
1724
+
1725
+ ### Minor Changes
1726
+
1727
+ - Add `runtimeConfiguration` property to the `RPCContext`
1728
+ - Breaking: Remove re-exported `useEventListener` composable
1729
+
1730
+ Import the composable directly from @vueuse/core
1731
+
1732
+ ### Patch Changes
1733
+
1734
+ - Updated dependencies
1735
+ - @scayle/storefront-core@7.23.0
1736
+
1737
+ ## 7.36.3
1738
+
1739
+ ### Patch Changes
1740
+
1741
+ - Add license file
1742
+ - Updated dependencies
1743
+ - @scayle/storefront-core@7.22.1
1744
+ - @scayle/h3-session@0.3.4
1745
+
1746
+ ## 7.36.2
1747
+
1748
+ ### Patch Changes
1749
+
1750
+ - Fix SFC_OMIT_MD5 not being respected
1751
+
1752
+ ## 7.36.1
1753
+
1754
+ ### Patch Changes
1755
+
1756
+ - Updated dependencies
1757
+ - @scayle/storefront-core@7.22.0
1758
+
1759
+ ## 7.36.0
1760
+
1761
+ ### Minor Changes
1762
+
1763
+ - Breaking: Remove imageBaseUrl from the config. This property is no longer used in the Nuxt3 package.
1764
+
1765
+ ## 7.35.0
1766
+
1767
+ ### Minor Changes
1768
+
1769
+ - Updated to latest Vue version `v3.3.7`
1770
+
1771
+ ## 7.34.0
1772
+
1773
+ ### Minor Changes
1774
+
1775
+ - Updated to latest Vue version `v3.3.6`
1776
+
1777
+ ## 7.33.0
1778
+
1779
+ ### Minor Changes
1780
+
1781
+ - Add promotion data to the `addItemToBasket` method
1782
+ - Add `usePromotions`, `useCurrentPromotions` & `usePromotionsByIds` composables
1783
+
1784
+ ### Patch Changes
1785
+
1786
+ - Updated dependencies
1787
+ - @scayle/storefront-core@7.21.0
1788
+
1789
+ ## 7.32.3
1790
+
1791
+ ### Patch Changes
1792
+
1793
+ - Updated dependencies
1794
+ - @scayle/h3-session@0.3.3
1795
+
1796
+ ## 7.32.2
1797
+
1798
+ ### Patch Changes
1799
+
1800
+ - Updated dependencies
1801
+ - @scayle/storefront-core@7.20.0
1802
+
1803
+ ## 7.32.1
1804
+
1805
+ ### Patch Changes
1806
+
1807
+ - The `auth` config is optional
1808
+ - Updated dependencies
1809
+ - @scayle/storefront-core@7.19.1
1810
+
1811
+ ## 7.32.0
1812
+
1813
+ ### Minor Changes
1814
+
1815
+ - Make the `shop` param required in `rpcCall`
1816
+
1817
+ ## 7.31.0
1818
+
1819
+ ### Minor Changes
1820
+
1821
+ - Support setting default `with` params in the module options
1822
+
1823
+ ### Patch Changes
1824
+
1825
+ - Updated dependencies
1826
+ - @scayle/storefront-core@7.19.0
1827
+
1828
+ ## 7.30.1
1829
+
1830
+ ### Patch Changes
1831
+
1832
+ - Add timing to RPC log message
1833
+
1834
+ ## 7.30.0
1835
+
1836
+ ### Minor Changes
1837
+
1838
+ - Pass `withParams` through the private runtime storefront config
1839
+
1840
+ ## 7.29.1
1841
+
1842
+ ### Patch Changes
1843
+
1844
+ - Updated dependencies
1845
+ - @scayle/storefront-core@7.18.0
1846
+
1847
+ ## 7.29.0
1848
+
1849
+ ### Minor Changes
1850
+
1851
+ - Improve `useFacet` & `useQueryFilterState` computed types and `useRpc` error state type
1852
+
1853
+ ### Patch Changes
1854
+
1855
+ - Fix build warning caused by `createError` import
1856
+ - Updated dependencies
1857
+ - @scayle/storefront-core@7.17.0
1858
+
1859
+ ## 7.28.0
1860
+
1861
+ ### Minor Changes
1862
+
1863
+ - Handle errors and return proper status codes for RPC methods
1864
+
1865
+ ## 7.27.0
1866
+
1867
+ ### Minor Changes
1868
+
1869
+ - Add `cbdExpiration` to the checkout config to support expiring CBD tokens
1870
+
1871
+ ### Patch Changes
1872
+
1873
+ - Updated dependencies
1874
+ - @scayle/storefront-core@7.16.0
1875
+
1876
+ ## 7.26.0
1877
+
1878
+ ### Minor Changes
1879
+
1880
+ - Breaking: Minimum node version is 20.7.0
1881
+ - Import `computed` from `vue` instead of `#imports`
1882
+ - Use default withParams config for `useProducts`, `useProduct`, `useProductsByIds`, `useVariant` and `usSearch`
1883
+
1884
+ ### Patch Changes
1885
+
1886
+ - Updated dependencies
1887
+ - @scayle/storefront-core@7.15.1
1888
+
1889
+ ## 7.25.3
1890
+
1891
+ ### Patch Changes
1892
+
1893
+ - Avoid pulling in `redis` package as an accidental dependency
1894
+ - Add sideEffects false
1895
+ - Updated dependencies
1896
+ - @scayle/storefront-core@7.15.0
1897
+
1898
+ ## 7.25.2
1899
+
1900
+ ### Patch Changes
1901
+
1902
+ - Updated dependencies
1903
+ - @scayle/storefront-core@7.14.3
1904
+
1905
+ ## 7.25.1
1906
+
1907
+ ### Patch Changes
1908
+
1909
+ - Improve imports of useBasket
1910
+
1911
+ ## 7.25.0
1912
+
1913
+ ### Minor Changes
1914
+
1915
+ - Mark `autoFetch` as optional option for `useRpc`. The default is `true`.
1916
+
1917
+ ## 7.24.0
1918
+
1919
+ ### Minor Changes
1920
+
1921
+ - Always `await` autoFetched `useRpc` during SSR
1922
+
1923
+ ## 7.23.0
1924
+
1925
+ ### Minor Changes
1926
+
1927
+ - Add `lazy` option to `useRpc` options. This will allow fetching data without blocking client side navigation.
1928
+
1929
+ ## 7.22.4
1930
+
1931
+ ### Patch Changes
1932
+
1933
+ - Use unstorage for all redis caches
1934
+ - Updated dependencies
1935
+ - @scayle/storefront-core@7.14.2
1936
+
1937
+ ## 7.22.3
1938
+
1939
+ ### Patch Changes
1940
+
1941
+ - Updated dependencies
1942
+ - @scayle/storefront-core@7.14.1
1943
+
1944
+ ## 7.22.2
1945
+
1946
+ ### Patch Changes
1947
+
1948
+ - Remove useCurrentShop from rpcCall
1949
+ - Allow setting apiBasePath on shop config
1950
+
1951
+ ## 7.22.1
1952
+
1953
+ ### Patch Changes
1954
+
1955
+ - Fix redis connection in redirects module
1956
+
1957
+ ## 7.22.0
1958
+
1959
+ ### Minor Changes
1960
+
1961
+ - Change storefront composables signatures to be an options object
1962
+
1963
+ ## 7.21.0
1964
+
1965
+ ### Minor Changes
1966
+
1967
+ - Support apiBasePath option
1968
+
1969
+ ## 7.20.2
1970
+
1971
+ ### Patch Changes
1972
+
1973
+ - Add api/up handler
1974
+
1975
+ ## 7.20.1
1976
+
1977
+ ### Patch Changes
1978
+
1979
+ - Fix issue where errors within `useRpc` could not be serialized.
1980
+
1981
+ ## 7.20.0
1982
+
1983
+ ### Minor Changes
1984
+
1985
+ - `useRpc` and composables that are based on `useRpc` now expose `status` and `error`, to allow error handling.
1986
+
1987
+ ### Patch Changes
1988
+
1989
+ - Updated dependencies
1990
+ - @scayle/h3-session@0.3.2
1991
+
1992
+ ## 7.19.0
1993
+
1994
+ ### Minor Changes
1995
+
1996
+ - Set OAuth settings when building the context to support runtime OAuth configuration
1997
+ - Support enabling/disabling the cache using the runtime config
1998
+
1999
+ ### Patch Changes
2000
+
2001
+ - Updated dependencies
2002
+ - @scayle/storefront-core@7.14.0
2003
+
2004
+ ## 7.18.2
2005
+
2006
+ ### Patch Changes
2007
+
2008
+ - `runtimeConfig.storefront.stores` now only accepts `ShopConfigIndexed` objects as value to simplify the usage.
2009
+ Passing a `ShopConfig[]` array into `runtimeConfig.storefront.stores` can lead to runtime errors.
2010
+
2011
+ ## 7.18.1
2012
+
2013
+ ### Patch Changes
2014
+
2015
+ - Updated dependencies
2016
+ - @scayle/storefront-core@7.13.0
2017
+
2018
+ ## 7.18.0
2019
+
2020
+ ### Minor Changes
2021
+
2022
+ - Provide option to pass `shopConfig` either as an array/list (`shopConfig[]`) or as an object (`shopConfigIndexed`) to make them overridable as part of the `runtimeConfig`.
2023
+ Internally they are still processed as array/list.
2024
+
2025
+ ### Patch Changes
2026
+
2027
+ - Add sub dependencies `isomorphic-dompurify` and `slugify` to `optimizeDeps` list
2028
+
2029
+ ## 7.17.0
2030
+
2031
+ ### Minor Changes
2032
+
2033
+ - Add explicit vue/nuxt specific stuff imports
2034
+ - Make `ToCurrencyOptions` of `toCurrency` and `FormatOptions` of `formatPrice` optional. They use the currentShop config as default.
2035
+
2036
+ ## 7.16.0
2037
+
2038
+ ### Minor Changes
2039
+
2040
+ - `runtimeConfig.$storefront` is now just `runtimeConfig.storefront`
2041
+
2042
+ ## 7.15.1
2043
+
2044
+ ### Patch Changes
2045
+
2046
+ - added missing slash for bapi.host default
2047
+ - add missing auth section for PublicRuntimeConfig module declaration
2048
+ - extend vite config as part of module setup and include storefront and axios (sapi) package for optimizeDeps include list
2049
+ - set module nuxt compatibility to nuxt@3.7.0 or higher
2050
+ - Updated dependencies
2051
+ - @scayle/h3-session@0.3.1
2052
+
2053
+ ## 7.15.0
2054
+
2055
+ ### Minor Changes
2056
+
2057
+ - Replace `lodash` with `radash`
2058
+
2059
+ ## 7.14.0
2060
+
2061
+ ### Minor Changes
2062
+
2063
+ - Add auth options within the module options
2064
+
2065
+ ### Patch Changes
2066
+
2067
+ - Support server-side autoFetch for useUser, useWishlist and useBasket
2068
+ - Updated dependencies
2069
+ - @scayle/storefront-core@7.12.2
2070
+
2071
+ ## 7.13.0
2072
+
2073
+ ### Minor Changes
2074
+
2075
+ - `withParams` are now exposed though `useRuntimeConfig().public` instead of `useRuntimeConfig().$storefront`
2076
+
2077
+ ### Patch Changes
2078
+
2079
+ - Remove usages of `event.node.req`
2080
+ - Updated dependencies
2081
+ - @scayle/h3-session@0.3.0
2082
+
2083
+ ## 7.12.0
2084
+
2085
+ ### Minor Changes
2086
+
2087
+ - Make composables share state across every instance.
2088
+
2089
+ ### Patch Changes
2090
+
2091
+ - Updated dependencies
2092
+ - @scayle/h3-session@0.2.1
2093
+
2094
+ ## 7.11.0
2095
+
2096
+ ### Minor Changes
2097
+
2098
+ - Support top-level and shop-level definitions for bapi, appKeys, and redis configs
2099
+
2100
+ ### Patch Changes
2101
+
2102
+ - Add isEnabled to ShopConfig options
2103
+ - Update `rpcCall` to accept a `NuxtApp` instance as its first parameter
2104
+
2105
+ ## 7.10.0
2106
+
2107
+ ### Minor Changes
2108
+
2109
+ - Add useUserAddresses composable
2110
+ - Add useNavigationTree and useNavigationTrees composables
2111
+ - Add useOrder and useOrderConfirmation composables
2112
+
2113
+ ### Patch Changes
2114
+
2115
+ - Updated dependencies
2116
+ - @scayle/storefront-core@7.12.1
2117
+
2118
+ ## 7.9.0
2119
+
2120
+ ### Minor Changes
2121
+
2122
+ - Wrap `refreshProductCount` in `useFacet` composable so that have proper where condition typing
2123
+
2124
+ ### Patch Changes
2125
+
2126
+ - Prevent nuxt from setting wrong default value to `session.maxAge` in module options
2127
+ - Add `refreshProductCount` filter params default
2128
+
2129
+ ## 7.8.1
2130
+
2131
+ ### Patch Changes
2132
+
2133
+ - Make selection of fetch function in `rpcCall` null safe
2134
+ - Make `params` parameter within the `useBasket` and `useWishlist` optional
2135
+ - Ensure that the accessing `withParams` is null safe within the `useBasket`
2136
+ and `useWishlist` composables
2137
+
2138
+ ## 7.8.0
2139
+
2140
+ ### Minor Changes
2141
+
2142
+ - Add sessions module
2143
+
2144
+ ### Patch Changes
2145
+
2146
+ - Updated dependencies
2147
+ - @scayle/h3-session@0.2.0
2148
+
2149
+ ## 7.7.0
2150
+
2151
+ ### Minor Changes
2152
+
2153
+ - Introduce `withParams` storefront option
2154
+
2155
+ ## 7.6.1
2156
+
2157
+ ### Patch Changes
2158
+
2159
+ - Share context between RPC requests
2160
+ - Updated dependencies
2161
+ - @scayle/storefront-core@7.12.0
2162
+
2163
+ ## 7.6.0
2164
+
2165
+ ### Minor Changes
2166
+
2167
+ - Adjust `fetching` prop of useRpc to reflect more nuxt2 behavior
2168
+ - Move `deserializeFilters` and `serializeFilters` to `@scayle/storefront-core`
2169
+ - Extend existing composables return object with `status` and `error`
2170
+ - Add `price` utils
2171
+ - Add useFacet and useQueryFilterState composable
2172
+
2173
+ ### Patch Changes
2174
+
2175
+ - Updated dependencies
2176
+ - @scayle/storefront-core@7.11.0
2177
+
2178
+ ## 7.5.0
2179
+
2180
+ ### Minor Changes
2181
+
2182
+ - Add `useBasket`, `useWishlist` and `useEventListener` composables
2183
+
2184
+ ## 7.4.0
2185
+
2186
+ ### Minor Changes
2187
+
2188
+ - Add redirects module
2189
+
2190
+ ## 7.3.3
2191
+
2192
+ ### Patch Changes
2193
+
2194
+ - Updated dependencies
2195
+ - @scayle/storefront-core@7.10.2
2196
+
2197
+ ## 7.3.2
2198
+
2199
+ ### Patch Changes
2200
+
2201
+ - Updated dependencies
2202
+ - @scayle/storefront-core@7.10.1
2203
+
2204
+ ## 7.3.1
2205
+
2206
+ ### Patch Changes
2207
+
2208
+ - Updated dependencies
2209
+ - @scayle/storefront-core@7.10.0
2210
+
2211
+ ## 7.3.0
2212
+
2213
+ ### Minor Changes
2214
+
2215
+ - Add cache module
2216
+
2217
+ ### Patch Changes
2218
+
2219
+ - Updated dependencies
2220
+ - @scayle/storefront-core@7.9.0
2221
+
2222
+ ## 7.2.0
2223
+
2224
+ ### Minor Changes
2225
+
2226
+ - Support client- and server-side RPC calls
2227
+ - Add useCurrentShop and useAvailableShops composables
2228
+ - Add useSearch composable
2229
+ - Add logging module and useLog composable
2230
+ - Add useRpc composable
2231
+ - Allow passing AsyncDataOptions to useRpc
2232
+ - Add useShopConfiguration composable
2233
+ - Add useFilters, useProduct, useProductsCount, useProductsByIds and useVariant composables
2234
+ - Add useBrand and useBrands composables
2235
+
2236
+ ### Patch Changes
2237
+
2238
+ - Add useProducts composable
2239
+ - Add useCategories composable
2240
+ - Updated dependencies
2241
+ - @scayle/storefront-core@7.8.0
2242
+
2243
+ ## 7.1.5
2244
+
2245
+ ### Patch Changes
2246
+
2247
+ - Updated dependencies
2248
+ - @scayle/storefront-core@7.7.1
2249
+
2250
+ ## 7.1.4
2251
+
2252
+ ### Patch Changes
2253
+
2254
+ - Updated dependencies
2255
+ - @scayle/storefront-core@7.7.0
2256
+
2257
+ ## 7.1.3
2258
+
2259
+ ### Patch Changes
2260
+
2261
+ - Updated dependencies
2262
+ - @scayle/storefront-core@7.6.1
2263
+
2264
+ ## 7.1.2
2265
+
2266
+ ### Patch Changes
2267
+
2268
+ - Updated dependencies
2269
+ - @scayle/storefront-core@7.6.0
2270
+
2271
+ ## 7.1.1
2272
+
2273
+ ### Patch Changes
2274
+
2275
+ - Add exports from storefront-core
2276
+
2277
+ ## 7.1.0
2278
+
2279
+ ### Minor Changes
2280
+
2281
+ - Add possibility to define the session config on application and store level.
2282
+ - Add possibility to configure the `domain` attribute of the session cookie
2283
+
2284
+ ## 7.0.0
2285
+
2286
+ ### Major Changes
2287
+
2288
+ - **Changed NPM package names**
2289
+ - **Breaking**: Change package scope and name of `@aboutyou/scayle-sfc-nuxt` to `@scayle/storefront-nuxt2`
2290
+ - **Breaking**: Change package scope and name of `@aboutyou/sfc-nuxt3` to `@scayle/storefront-nuxt`
2291
+ - **Breaking**: Change package scope and name of `@aboutyou/scayle-sfc-lib` to `@scayle/storefront-core`
2292
+ - **Breaking**: Change package scope and name of `@aboutyou/eslint-config-sfc` to `@scayle/eslint-config-storefront`
2293
+ - **Breaking**: Change package scope and name of `@aboutyou/prettier-config-sfc` to `@scayle/prettier-config-storefront`
2294
+
2295
+ _NOTE: Due to the changes of the NPM package scope from `@aboutyou` to `@scayle`,
2296
+ it is required to change the consuming projects local `.npmrc` file as follows:_
2297
+
2298
+ - Before:
2299
+
2300
+ ```text
2301
+ @aboutyou:registry=https://gitlab.com/api/v4/packages/npm/
2302
+ ```
2303
+
2304
+ - After:
2305
+
2306
+ ```text
2307
+ @aboutyou:registry=https://gitlab.com/api/v4/projects/29746107/packages/npm/
2308
+ @scayle:registry=https://gitlab.com/api/v4/projects/29746107/packages/npm/
2309
+ ```
2310
+
2311
+ - **Breaking**: Minimum `node` version raised to `18.15.0`
2312
+
2313
+ ## 7.0.0-alpha.0
2314
+
2315
+ ### Major Changes
2316
+
2317
+ - **Changed NPM package names**
2318
+
2319
+ - **Breaking**: Change package scope and name of `@aboutyou/scayle-sfc-nuxt` to `@scayle/storefront-nuxt2`
2320
+ - **Breaking**: Change package scope and name of `@aboutyou/sfc-nuxt3` to `@scayle/storefront-nuxt`
2321
+ - **Breaking**: Change package scope and name of `@aboutyou/scayle-sfc-lib` to `@scayle/storefront-core``
2322
+ - **Breaking**: Change package scope and name of `@aboutyou/eslint-config-sfc` to `@scayle/eslint-config-storefront`
2323
+ - **Breaking**: Change package scope and name of `@aboutyou/prettier-config-sfc` to `@scayle/prettier-config-storefront`
2324
+
2325
+ Due to the changes of the NPM package scope from `@aboutyou` to `@scayle`,
2326
+ it is required to change the consuming projects local `.npmrc` file as follows:
2327
+
2328
+ - Before: `@aboutyou:registry=https://gitlab.com/api/v4/packages/npm/`
2329
+ - After: `@scayle:registry=https://gitlab.com/api/v4/packages/npm/`
2330
+
2331
+ - Minimum node version is 18.15.0