@curless/shopify-storefront 0.2.2 → 0.2.3

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.
@@ -68,6 +68,21 @@ describe('privacy page', () => {
68
68
  expect(adapterOrderFields()).not.toContain('email');
69
69
  expect(privacyPage(CTX)).toContain('never returned');
70
70
  });
71
+ // elspet had no legal.merchantContact, so both legal pages rendered
72
+ // `<a href="mailto:"></a>` — an empty link, in the sentence telling a shopper
73
+ // how to exercise their rights, on the page a directory reviewer opens. The
74
+ // config comment claimed the value was filled from the shop's contactEmail;
75
+ // the code said `?? ''`.
76
+ test('never emits a mailto with nothing after it', () => {
77
+ const noContact = privacyPage({ ...CTX, merchantContact: '' });
78
+ expect(noContact).not.toContain('mailto:"');
79
+ expect(noContact).not.toContain('mailto:<');
80
+ // It still tells them where to go — the shop itself.
81
+ expect(noContact).toContain('https://moodylenses.com');
82
+ });
83
+ test('uses the address when there is one', () => {
84
+ expect(privacyPage(CTX)).toContain('mailto:support@moodylenses.com');
85
+ });
71
86
  test('defers to the merchant rather than replacing their policy', () => {
72
87
  const page = privacyPage(CTX);
73
88
  expect(page).toContain("This is not Moody Lenses's privacy policy");
@@ -1 +1 @@
1
- {"version":3,"file":"privacy-page.test.js","sourceRoot":"","sources":["../../src/__tests__/privacy-page.test.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,8EAA8E;AAC9E,+EAA+E;AAC/E,iFAAiF;AACjF,WAAW;AACX,EAAE;AACF,iFAAiF;AACjF,6EAA6E;AAC7E,+EAA+E;AAE/E,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAqB,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE3E,MAAM,GAAG,GAAiB;IACxB,YAAY,EAAE,cAAc;IAC5B,UAAU,EAAE,yBAAyB;IACrC,QAAQ,EAAE,SAAS;IACnB,eAAe,EAAE,gBAAgB;IACjC,OAAO,EAAE,gBAAgB;IACzB,UAAU,EAAE,yBAAyB;IACrC,MAAM,EAAE,4BAA4B;IACpC,eAAe,EAAE,yBAAyB;IAC1C,WAAW,EAAE,EAAE;IACf,UAAU,EAAE,EAAE;IACd,KAAK,EAAE;QACL,IAAI,EAAE,mBAAmB;QACzB,GAAG,EAAE,gBAAgB;QACrB,QAAQ,EAAE,yBAAyB;QACnC,WAAW,EAAE,oBAAoB;KAClC;IACD,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,QAAQ;CACrB,CAAC;AAEF,yEAAyE;AACzE,+EAA+E;AAC/E,4EAA4E;AAC5E,MAAM,WAAW,GAAG,IAAI,CACtB,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EACvC,8CAA8C,CAC/C,CAAC;AAEF,4EAA4E;AAC5E,MAAM,kBAAkB,GAAG,GAAa,EAAE;IACxC,MAAM,GAAG,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,sEAAsE,CAAC,IAAI,CACvF,GAAG,CACJ,EAAE,CAAC,CAAC,CAAC,CAAC;IACP,MAAM,KAAK,GAAG,iDAAiD,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/E,MAAM,KAAK,GAAG,CAAC,CAAqB,EAAE,EAAE,CACtC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAW,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC;AACvF,CAAC,CAAC;AAEF,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACxD,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC9B,KAAK,MAAM,CAAC,KAAK,CAAC,IAAI,YAAY,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,EAAE,gCAAgC,KAAK,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,yEAAyE;IACzE,IAAI,CAAC,uDAAuD,EAAE,GAAG,EAAE;QACjE,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;QACpC,MAAM,CACJ,MAAM,CAAC,MAAM,EACb,0DAA0D,CAC3D,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACrB,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,oDAAoD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,8EAA8E;IAC9E,+EAA+E;IAC/E,eAAe;IACf,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACrE,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,2CAA2C,CAAC,CAAC;QACpE,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,iDAAiD,CAAC,CAAC;QAC1E,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"privacy-page.test.js","sourceRoot":"","sources":["../../src/__tests__/privacy-page.test.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -98,7 +98,14 @@ export type StorefrontConfig = {
98
98
  legal: {
99
99
  operator?: string;
100
100
  operatorContact?: string;
101
- /** Left unset it is filled from the shop's `contactEmail`. */
101
+ /**
102
+ * The address the merchant publishes in their OWN privacy policy.
103
+ *
104
+ * This used to claim it was filled from the shop's `contactEmail`. It never
105
+ * was — the code reads `?? ''` — and the promise is why nobody noticed the
106
+ * legal pages rendering an empty mailto. Left unset, the pages point at the
107
+ * storefront instead; set it and a shopper gets a real address.
108
+ */
102
109
  merchantContact?: string;
103
110
  region?: string;
104
111
  updated?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/legal.d.ts CHANGED
@@ -12,7 +12,17 @@ export type LegalContext = {
12
12
  shopDomain: string;
13
13
  /** Where it runs, for a reviewer with data-residency rules. */
14
14
  region: string;
15
- /** The merchant's own support address, as published in their own policies. */
15
+ /**
16
+ * The merchant's own support address, as published in their OWN policies —
17
+ * not the contact page, which on a fresh Shopify theme is still
18
+ * info@yourstore.com.
19
+ *
20
+ * May be empty. It was empty for elspet, and the page rendered
21
+ * `<a href="mailto:"></a>` — an empty link, in the "how to exercise your
22
+ * rights" sentence, on the page a directory reviewer reads. Every use goes
23
+ * through `reachAt()` now, which falls back to the storefront rather than
24
+ * emitting a link to nowhere.
25
+ */
16
26
  merchantContact: string;
17
27
  /** The two rate limits, quoted from the code rather than from memory. */
18
28
  rateGeneral: number;
@@ -49,13 +59,6 @@ export type LegalContext = {
49
59
  * install, and the egress list is every outbound host the service can reach.
50
60
  */
51
61
  export declare const docsPage: (c: LegalContext) => string;
52
- /**
53
- * The fields an order lookup can return, as they are named in the response.
54
- *
55
- * Exported so the test can assert the page names every one of them: the reason
56
- * Curless was rejected was a policy that did not enumerate what came back, and
57
- * a list kept by hand drifts the moment the adapter grows a field.
58
- */
59
62
  export declare const ORDER_FIELDS: ReadonlyArray<[field: string, meaning: string]>;
60
63
  /**
61
64
  * The privacy page. Scoped deliberately: it covers this connector, not the shop.
@@ -1 +1 @@
1
- {"version":3,"file":"legal.d.ts","sourceRoot":"","sources":["../src/legal.ts"],"names":[],"mappings":"AA2CA,4EAA4E;AAC5E,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,2EAA2E;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB;6DACyD;IACzD,UAAU,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,MAAM,EAAE,MAAM,CAAC;IACf,8EAA8E;IAC9E,eAAe,EAAE,MAAM,CAAC;IACxB,yEAAyE;IACzE,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;;OAOG;IACH,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,QAAQ,GAAI,GAAG,YAAY,KAAG,MAmGxC,CAAC;AAEJ;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,EAAE,aAAa,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAexE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,GAAI,GAAG,YAAY,KAAG,MA6D3C,CAAC"}
1
+ {"version":3,"file":"legal.d.ts","sourceRoot":"","sources":["../src/legal.ts"],"names":[],"mappings":"AA2CA,4EAA4E;AAC5E,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,2EAA2E;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB;6DACyD;IACzD,UAAU,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;;;;OAUG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB,yEAAyE;IACzE,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;;OAOG;IACH,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,QAAQ,GAAI,GAAG,YAAY,KAAG,MAkGxC,CAAC;AAkBJ,eAAO,MAAM,YAAY,EAAE,aAAa,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAexE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,GAAI,GAAG,YAAY,KAAG,MA4D3C,CAAC"}
package/dist/legal.js CHANGED
@@ -139,8 +139,7 @@ export const docsPage = (c) => PAGE(`Documentation — ${c.merchantName} shoppin
139
139
 
140
140
  <h2>Contact</h2>
141
141
  <p>Anything a shopper would ask — an order, a payment, a return —
142
- is ${c.merchantName}'s: <a href="mailto:${c.merchantContact}">${c.merchantContact}</a>,
143
- or <a href="${c.storefront}">${c.storefront}</a>.</p>
142
+ is ${c.merchantName}'s: ${reachAt(c)}, or <a href="${c.storefront}">${c.storefront}</a>.</p>
144
143
  <p>An administrator reviewing this server, or reporting a fault in it, reaches the
145
144
  operator at <a href="mailto:${c.operatorContact}">${c.operatorContact}</a> — kept here
146
145
  because the point of this page is to say who runs the thing you are being asked to
@@ -155,6 +154,13 @@ export const docsPage = (c) => PAGE(`Documentation — ${c.merchantName} shoppin
155
154
  * Curless was rejected was a policy that did not enumerate what came back, and
156
155
  * a list kept by hand drifts the moment the adapter grows a field.
157
156
  */
157
+ /**
158
+ * How to reach the merchant, as HTML. The address when there is one, the shop
159
+ * itself when there is not — never `mailto:` with nothing after it.
160
+ */
161
+ const reachAt = (c) => c.merchantContact
162
+ ? `<a href="mailto:${c.merchantContact}">${c.merchantContact}</a>`
163
+ : `<a href="${c.storefront}">${c.storefront}</a>`;
158
164
  export const ORDER_FIELDS = [
159
165
  ['name', 'the order number as the merchant writes it, e.g. #1052'],
160
166
  ['createdAt', 'when the order was placed'],
@@ -224,8 +230,7 @@ export const privacyPage = (c) => PAGE(`Privacy — ${c.merchantName} shopping a
224
230
 
225
231
  <h2>Your rights</h2>
226
232
  <p>Exercise them with ${c.merchantName} — they hold the order, and this connector holds no
227
- shopper record to correct or delete:
228
- <a href="mailto:${c.merchantContact}">${c.merchantContact}</a>.</p>
233
+ shopper record to correct or delete: ${reachAt(c)}.</p>
229
234
  <p>About the connector itself, ${c.operator} is reachable at
230
235
  <a href="mailto:${c.operatorContact}">${c.operatorContact}</a>.</p>
231
236
 
package/dist/legal.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"legal.js","sourceRoot":"","sources":["../src/legal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"legal.js","sourceRoot":"","sources":["../src/legal.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@curless/shopify-storefront",
3
- "version": "0.2.2",
3
+ "version": "0.2.3",
4
4
  "type": "module",
5
5
  "description": "One Shopify storefront MCP connector, driven by a config file. Identity, tool names, vocabulary and shop wiring come from a StorefrontConfig, so a second merchant is a JSON file rather than a fork of 3,400 lines.",
6
6
  "keywords": [