@doswiftly/storefront-operations 22.0.0 → 22.1.0

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/AGENTS.md CHANGED
@@ -27,7 +27,7 @@ consumer's `codegen.ts` references this package's `.graphql` files as
27
27
  live in the consumer's repo.
28
28
 
29
29
  <!-- AUTOGEN:STATS:BEGIN — auto-regenerated, do not edit by hand -->
30
- - **Schema version**: 22.0.0
30
+ - **Schema version**: 22.1.0
31
31
  - **Queries**: 52
32
32
  - **Mutations**: 44
33
33
  - **Fragments**: 105
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # Changelog
2
2
 
3
+ ## 22.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 32ee745: Forward the real buyer IP from server-rendered storefronts (per-buyer rate limiting)
8
+
9
+ A server-rendered (BFF) storefront fetches from its own server, so the API sees one
10
+ source IP for every buyer and per-IP rate limits collapse onto that single address.
11
+ The server client now forwards the real buyer IP to the API so rate limiting applies
12
+ per buyer again.
13
+
14
+ **Automatic on the server — no wiring, fully backward-compatible.** Call
15
+ `getStorefrontClient({ apiUrl, shopSlug })` as before; forwarding configures itself
16
+ and stays inert when it cannot apply, so existing setups are unaffected. Server-only.
17
+
18
+ Non-Next server runtimes can supply the buyer IP explicitly via `getBuyerIp` (and
19
+ `getForwardedIpSecret`). The lower-level `forwardedIpMiddleware` is also exported.
20
+
21
+ (`@doswiftly/storefront-operations` is a version-sync bump — no code change.)
22
+
3
23
  ## 22.0.0
4
24
 
5
25
  ### Major Changes
package/llms-full.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  # DoSwiftly Storefront Operations — Full Reference
2
2
 
3
- > Schema version: **22.0.0**
3
+ > Schema version: **22.1.0**
4
4
  > 52 queries · 44 mutations · 105 fragments
5
5
 
6
6
  Auto-generated from `.graphql` source files. Do not edit by hand — this file is
package/operations.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "schemaVersion": "22.0.0",
2
+ "schemaVersion": "22.1.0",
3
3
  "queries": [
4
4
  {
5
5
  "name": "Shop",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@doswiftly/storefront-operations",
3
- "version": "22.0.0",
3
+ "version": "22.1.0",
4
4
  "description": "GraphQL operations for DoSwiftly Storefront - SSOT from backend",
5
5
  "homepage": "https://doswiftly.pl",
6
6
  "publishConfig": {
@@ -41,6 +41,7 @@
41
41
  "scripts": {
42
42
  "sync": "node scripts/sync-operations.js",
43
43
  "validate": "node scripts/validate-operations.js",
44
+ "check:breaking": "node scripts/schema-breaking-gate.js",
44
45
  "build": "npm run sync",
45
46
  "test": "node --test scripts/__tests__/*.test.js",
46
47
  "yalc:push": "yalc publish --push"