@curless/shopify-storefront 0.5.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env node
2
+ import { randomUUID } from 'node:crypto';
2
3
  import { readFileSync } from 'node:fs';
3
4
  import { createRequire } from 'node:module';
4
5
  import { dirname, resolve } from 'node:path';
@@ -48,6 +49,7 @@ const VERSION = createRequire(import.meta.url)('../package.json').version;
48
49
  // OPENAI_APPS_CHALLENGE_TOKEN single-host fallback for the above
49
50
  import { serve } from '@hono/node-server';
50
51
  import { Hono } from 'hono';
52
+ import { AssistantRegistry } from './assistant.js';
51
53
  import { MOODY_CARD_HTML } from './card.generated.js';
52
54
  import { CatalogRegistry } from './catalog-registry.js';
53
55
  import { Catalog } from './catalog.js';
@@ -55,6 +57,7 @@ import { challengeFor } from './challenge.js';
55
57
  import { resolveStorefront } from './config.js';
56
58
  import { credentialsRejected, needsAuth } from './connection.js';
57
59
  import { docsPage, merchantTermsPage, privacyPage, securityPage, } from './legal.js';
60
+ import { connectPage, connectedPage, escapeHtml, listedLandingPage, } from './listed-pages.js';
58
61
  import { loadStorefrontConfig } from './load-config.js';
59
62
  import { MultiTokenStore, isStorableShop } from './multi-token-store.js';
60
63
  import { exchangeCode, installUrl, isShopDomain, makeState, verifyCallbackHmac, verifyState, } from './oauth.js';
@@ -158,34 +161,12 @@ const tokens = new TokenStore(TOKEN_PATH);
158
161
  // quota — an exhausted quota shows up to real buyers as a store with no
159
162
  // products. The narrow one is on order lookup, which takes attacker-chosen
160
163
  // input and answers a question about a real person's purchase.
161
- // Who is shopping, as reported at handshake. MCP clients identify themselves in
162
- // `initialize` (clientInfo.name "claude-ai", "ChatGPT", …), but that arrives on
163
- // a DIFFERENT request from the tool call, so it has to be remembered against the
164
- // session the transport gives us. No session header → we fall back to the
165
- // User-Agent, and then to nothing. It is a label on an order, not an
166
- // authorisation decision, so a best guess is fine and a wrong one is harmless.
167
- const clients = new Map();
168
- const CLIENT_TTL_MS = 60 * 60_000;
169
- const rememberClient = (sessionId, name) => {
170
- if (!sessionId || !name)
171
- return;
172
- const now = Date.now();
173
- for (const [k, v] of clients)
174
- if (now - v.at > CLIENT_TTL_MS)
175
- clients.delete(k);
176
- if (clients.size > 5_000)
177
- clients.clear();
178
- clients.set(sessionId, { name, at: now });
179
- };
180
- const assistantFor = (c) => {
181
- const sid = c.req.header('mcp-session-id');
182
- const known = sid ? clients.get(sid)?.name : undefined;
183
- if (known)
184
- return known;
185
- const ua = c.req.header('user-agent');
186
- // Node's default UA and curl say nothing about who is shopping.
187
- return ua && !/^(node|curl|undici|python)/i.test(ua) ? ua.slice(0, 60) : undefined;
188
- };
164
+ // Who is shopping, as reported at handshake the `attributes[Assistant]` half
165
+ // of what a merchant sees on the order. See assistant.ts for why it has to be
166
+ // remembered against a session at all, and why THIS server has to be the one
167
+ // that issues that session id.
168
+ const assistants = new AssistantRegistry();
169
+ const assistantFor = (c) => assistants.nameFor(c.req.header('mcp-session-id'), c.req.header('user-agent'));
189
170
  // Named so the docs page can quote them instead of restating them from memory —
190
171
  // a published number that drifts from the enforced one is worse than none.
191
172
  const MCP_RATE_PER_MIN = 60;
@@ -271,6 +252,10 @@ const brandAsset = (rel) => {
271
252
  const ICON_PNG = brandAsset(STORE.config.server.iconFile);
272
253
  const LOGO_PNG = brandAsset(STORE.config.server.logoFile);
273
254
  const MULTI = STORE.config.shopify.mode === 'oauth-install';
255
+ // What the listed app's own pages say it is. Its `server.title` is OUR product's
256
+ // name — the branded deployments put a merchant's there, which is exactly the
257
+ // confusion the connected page must not repeat.
258
+ const LISTED = { appUrl: APP_URL, productName: MERCHANT_NAME };
274
259
  /**
275
260
  * The shop a request is about.
276
261
  *
@@ -484,6 +469,26 @@ app.get('/img', async (c) => {
484
469
  }
485
470
  });
486
471
  app.get('/healthz', async (c) => {
472
+ // ⚠️ The listed app has no single shop, and answering as if it did made this
473
+ // endpoint report `not-installed` with an empty shop domain forever — a health
474
+ // check that is wrong in precisely the state it exists to detect.
475
+ //
476
+ // What can actually be wrong here is a token that stopped renewing: this is
477
+ // the first deployment whose tokens expire, and a refresh that has been
478
+ // failing shows up as a deadline in the past long before a merchant notices
479
+ // their assistant has gone quiet.
480
+ if (MULTI) {
481
+ const shops = await multiTokens.list();
482
+ const now = Date.now();
483
+ const stale = shops.filter((t) => t.expiresAt !== undefined && Date.parse(t.expiresAt) < now).length;
484
+ return c.json({
485
+ status: stale > 0 ? 'degraded' : 'ok',
486
+ mode: 'listed',
487
+ shops: shops.length,
488
+ staleTokens: stale,
489
+ residentCatalogs: registry.size,
490
+ });
491
+ }
487
492
  const snap = catalog.current;
488
493
  const connected = (await shopifyConfig()) !== null;
489
494
  return c.json({
@@ -537,6 +542,44 @@ app.get('/', async (c) => {
537
542
  <p class="muted">No sign-in, and no payment happens here — checkout is on
538
543
  ${escapeHtml(MERCHANT_NAME)}' own page. <a href="/docs">What this connector can reach</a>.</p>`);
539
544
  }
545
+ // ⚠️ EVERYTHING BELOW ASSUMES ONE SHOP. `catalog`, `shopifyConfig()` and
546
+ // SHOP_DOMAIN are the branded deployment's single tenant. The listed app has
547
+ // no shop of its own, and running that code anyway is what put "Connect " —
548
+ // an empty shop name, behind a link that 400s — on the page a merchant lands
549
+ // on the moment they finish installing.
550
+ //
551
+ // Three states, decided by the shop in the query:
552
+ // • no shop — what this is. Nothing tenant-specific, and no list of
553
+ // who has installed it.
554
+ // • shop, no token — offer the install, and start it outright when the
555
+ // query is Shopify's own (HMAC and all), so a merchant
556
+ // who just clicked Install is not asked to click Connect.
557
+ // • shop + token — connected, and THE ADDRESS THEY NEED: nothing else in
558
+ // the product tells a merchant what to paste into
559
+ // ChatGPT or Claude.
560
+ if (MULTI) {
561
+ const named = (c.req.query('shop') ?? '').trim().toLowerCase();
562
+ if (!named)
563
+ return c.html(listedLandingPage(LISTED));
564
+ // The same allow-list the token store keys on. `shop` decides where the
565
+ // button below sends someone, so a lookalike domain must not reach it.
566
+ if (!isStorableShop(named))
567
+ return c.text('that is not a Shopify store domain', 400);
568
+ if (await multiTokens.get(named)) {
569
+ const cat = registry.for(named);
570
+ // First view after an install: the catalogue was created a moment ago and
571
+ // its boot fetch is still in flight. `refresh()` joins that one rather
572
+ // than starting a second, so this waits for the load instead of telling a
573
+ // merchant with a full store that it has no products.
574
+ if (cat.current.loadedAt === null)
575
+ await cat.refresh();
576
+ return c.html(connectedPage(LISTED, named, cat.current));
577
+ }
578
+ if (CLIENT_SECRET && verifyCallbackHmac(CLIENT_SECRET, new URL(c.req.url).search)) {
579
+ return c.redirect(installUrl({ ...oauth, shopDomain: named }, makeState(CLIENT_SECRET)));
580
+ }
581
+ return c.html(connectPage(named));
582
+ }
540
583
  const snap = catalog.current;
541
584
  const connected = (await shopifyConfig()) !== null;
542
585
  // Shopify sends the merchant HERE after a legacy-flow install, with ?shop=…
@@ -696,7 +739,14 @@ app.get('/auth/callback', async (c) => {
696
739
  if (!code)
697
740
  return c.text('missing code', 400);
698
741
  try {
699
- const { accessToken, scope, refreshToken, expiresAt } = await exchangeCode(oauth, code);
742
+ // ⚠️ THE SHOP COMES FROM THE CALLBACK, NOT FROM THE CONFIG. `oauth` carries
743
+ // the BRANDED deployment's single shop; the listed app's is `''`, because
744
+ // its shop is whoever is installing. Passing `oauth` here built
745
+ // `https:///admin/oauth/access_token` and every install on the listed app
746
+ // died with `fetch failed` — the install route already spreads the shop in,
747
+ // and this one, three hundred lines away, did not. `shopEndpoint` now
748
+ // refuses an empty shop out loud so the next one cannot be silent.
749
+ const { accessToken, scope, refreshToken, expiresAt } = await exchangeCode({ ...oauth, shopDomain: shop }, code);
700
750
  // Per-shop in the listed app, single-file in a branded one. The record is
701
751
  // the same; where it lands is the whole difference between serving one
702
752
  // merchant and serving many.
@@ -717,6 +767,16 @@ app.get('/auth/callback', async (c) => {
717
767
  await tokens.set(record);
718
768
  console.log(`[oauth] installed on ${shop} (scopes: ${scope})`);
719
769
  // The catalog is empty until now; fill it before the merchant looks.
770
+ //
771
+ // ⚠️ THE RIGHT ONE. `catalog` is the branded deployment's single tenant, and
772
+ // in the listed app it belongs to no shop at all — so an install refreshed
773
+ // nothing, and then told the merchant that "Curless Storefront is
774
+ // connected", which is OUR product's name rather than their store's.
775
+ if (MULTI) {
776
+ const cat = registry.for(shop);
777
+ await cat.refresh();
778
+ return c.html(connectedPage(LISTED, shop.toLowerCase(), cat.current));
779
+ }
720
780
  void catalog.refresh();
721
781
  return c.html(`<!doctype html><meta charset="utf-8"><link rel="icon" href="./icon.png"><title>Connected</title>
722
782
  <body style="font-family:system-ui;padding:40px;max-width:32rem">
@@ -750,18 +810,6 @@ app.get('/.well-known/openai-apps-challenge', (c) => {
750
810
  return c.notFound();
751
811
  return c.text(token);
752
812
  });
753
- // Anything interpolated into the page below comes from our own env, but escape
754
- // it anyway: the day one of these becomes merchant-supplied, the page should not
755
- // be the thing that has to be remembered.
756
- const escapeHtml = (s) => s.replace(/[&<>"']/g, (ch) => ch === '&'
757
- ? '&amp;'
758
- : ch === '<'
759
- ? '&lt;'
760
- : ch === '>'
761
- ? '&gt;'
762
- : ch === '"'
763
- ? '&quot;'
764
- : '&#39;');
765
813
  // The MCP Apps card. Declared on the tools AND on their results — a host reads
766
814
  // it from either — and served over resources/read. Version the URI: hosts cache
767
815
  // by it, and a stale card is worse than no card because it looks current.
@@ -853,7 +901,22 @@ app.on('POST', MCP_PATHS, async (c) => {
853
901
  const { id, method, params } = body;
854
902
  if (method === 'initialize') {
855
903
  const info = params?.clientInfo;
856
- rememberClient(c.req.header('mcp-session-id'), info?.name);
904
+ // ⚠️ WE HAVE TO ISSUE THE SESSION ID, or the name below is remembered
905
+ // against nothing. A client only says who it is here, and the tool call
906
+ // that builds the checkout permalink is a different request; the session id
907
+ // is the only thing both carry. We were not issuing one, so a
908
+ // spec-following client had none to send back and every permalink went out
909
+ // with `Source` and no `Assistant`.
910
+ //
911
+ // ⚠️ AND AN UNRECOGNISED ONE IS NOT AN ERROR HERE. The spec lets a server
912
+ // answer 404 to a request bearing a session it does not know, so the client
913
+ // re-initialises. We deliberately do not: this server is otherwise
914
+ // stateless, the id buys a LABEL and nothing else, and 404-ing a shopper
915
+ // mid-conversation because a cache entry expired would trade a missing
916
+ // attribute for a broken checkout.
917
+ const sessionId = c.req.header('mcp-session-id') ?? randomUUID();
918
+ assistants.remember(sessionId, info?.name);
919
+ c.header('Mcp-Session-Id', sessionId);
857
920
  return ok(c, id, {
858
921
  protocolVersion: PROTOCOL_VERSION,
859
922
  capabilities: { tools: {}, resources: {} },
@@ -1025,6 +1088,12 @@ app.on('POST', MCP_PATHS, async (c) => {
1025
1088
  vocab: { noun: STORE.vocab.noun, nounPlural: STORE.vocab.nounPlural },
1026
1089
  imageProxy: `${PUBLIC_URL}/img?u=`,
1027
1090
  ...(assistantFor(c) ? { assistant: assistantFor(c) } : {}),
1091
+ // ⚠️ The listed app has NOT been approved for protected customer data,
1092
+ // and Shopify refuses the whole order-lookup query rather than the one
1093
+ // field. Custom distribution is exempt — the same exemption that
1094
+ // governs expiring tokens — so the branded deployments keep the status
1095
+ // link they have always had. Flip this when the approval lands.
1096
+ protectedCustomerData: !MULTI,
1028
1097
  };
1029
1098
  const res = await callTool(deps, name, args);
1030
1099
  logCall(method, name, `ok view=${String(res.structured.view ?? '?')}`, startedAt);
@@ -1037,10 +1106,20 @@ app.on('POST', MCP_PATHS, async (c) => {
1037
1106
  catch (err) {
1038
1107
  // A tool failure is a RESULT, not a transport error: the client should be
1039
1108
  // able to show the buyer what went wrong instead of a dead connector.
1109
+ // ⚠️ THE DETAIL GOES TO THE LOG, NOT TO THE BUYER. This used to hand the
1110
+ // shopper whatever was thrown, and on 2026-09-10 that was a raw Shopify
1111
+ // ACCESS_DENIED — GraphQL error JSON, our field names, a shopify.dev
1112
+ // link — presented to someone who had asked where their order was. An
1113
+ // upstream failure is ours to explain, not theirs to read.
1040
1114
  const message = err instanceof Error ? err.message : String(err);
1041
1115
  logCall(method, name, `FAILED ${message}`, startedAt);
1042
1116
  return ok(c, id, {
1043
- content: [{ type: 'text', text: `That did not work: ${message}` }],
1117
+ content: [
1118
+ {
1119
+ type: 'text',
1120
+ text: 'That did not work — the shop could not be reached just now. Please try again in a moment.',
1121
+ },
1122
+ ],
1044
1123
  isError: true,
1045
1124
  });
1046
1125
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAG7C,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAC9E,gFAAgF;AAChF,wEAAwE;AACxE,MAAM,OAAO,GAAI,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,iBAAiB,CAAyB,CAAC,OAAO,CAAC;AACnG,2DAA2D;AAC3D,EAAE;AACF,gFAAgF;AAChF,6EAA6E;AAC7E,wEAAwE;AACxE,EAAE;AACF,8EAA8E;AAC9E,2EAA2E;AAC3E,gFAAgF;AAChF,4EAA4E;AAC5E,+EAA+E;AAC/E,oDAAoD;AACpD,EAAE;AACF,6EAA6E;AAC7E,6EAA6E;AAC7E,8EAA8E;AAC9E,gFAAgF;AAChF,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,6EAA6E;AAC7E,yEAAyE;AACzE,gEAAgE;AAChE,EAAE;AACF,wEAAwE;AACxE,+EAA+E;AAC/E,gFAAgF;AAChF,4CAA4C;AAC5C,EAAE;AACF,iFAAiF;AACjF,2EAA2E;AAC3E,0FAA0F;AAC1F,4FAA4F;AAC5F,uCAAuC;AACvC,iDAAiD;AACjD,8EAA8E;AAC9E,uFAAuF;AACvF,qEAAqE;AACrE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAgB,IAAI,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAEL,QAAQ,EACR,iBAAiB,EACjB,WAAW,EACX,YAAY,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAEL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,SAAS,EACT,kBAAkB,EAClB,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAiB,kBAAkB,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEjE,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AAC9C,6EAA6E;AAC7E,wEAAwE;AACxE,MAAM,KAAK,GAAG,iBAAiB,CAAC,oBAAoB,EAAE,CAAC,CAAC;AACxD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;AACnD,MAAM,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACvD,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;AAChD,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE;IACvB,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,OAAO,CAAC,CAAC;IAC5D,0EAA0E;IAC1E,oDAAoD;IACpD,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;AACzD,CAAC,CAAC,EAAE,CAAC;AAEL,6EAA6E;AAC7E,0EAA0E;AAC1E,iFAAiF;AACjF,iFAAiF;AACjF,+EAA+E;AAC/E,yBAAyB;AACzB,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;AAC1D,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,IAAI,EAAE,CAAC;AACjE,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,EAAE,CAAC;AACzE,6EAA6E;AAC7E,oCAAoC;AACpC,EAAE;AACF,iFAAiF;AACjF,kFAAkF;AAClF,gFAAgF;AAChF,8EAA8E;AAC9E,gEAAgE;AAChE,EAAE;AACF,iFAAiF;AACjF,yEAAyE;AACzE,EAAE;AACF,4EAA4E;AAC5E,wEAAwE;AACxE,gFAAgF;AAChF,mEAAmE;AACnE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;AAE7B,+EAA+E;AAC/E,2EAA2E;AAC3E,gFAAgF;AAChF,4EAA4E;AAC5E,0CAA0C;AAC1C,EAAE;AACF,6EAA6E;AAC7E,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC;AAEnC,iFAAiF;AACjF,EAAE;AACF,8EAA8E;AAC9E,gFAAgF;AAChF,iFAAiF;AACjF,uCAAuC;AACvC,EAAE;AACF,gFAAgF;AAChF,8EAA8E;AAC9E,yCAAyC;AACzC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAC3D,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AACrD,MAAM,WAAW,GAAG,CAAC,CAAU,EAAW,EAAE,CAC1C,WAAW,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC;AACzF,iFAAiF;AACjF,kFAAkF;AAClF,+EAA+E;AAC/E,gDAAgD;AAChD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;AAC5B,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC;AAEnC,8EAA8E;AAC9E,+EAA+E;AAC/E,iEAAiE;AACjE,8EAA8E;AAC9E,8EAA8E;AAC9E,wCAAwC;AACxC,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;IACxF,OAAO,CAAC,KAAK,CACX,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,4DAA4D,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAC9G,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,KAAK,GAAgB;IACzB,QAAQ,EAAE,SAAS;IACnB,YAAY,EAAE,aAAa;IAC3B,UAAU,EAAE,WAAW;IACvB,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,MAAM;IACd,2EAA2E;IAC3E,yEAAyE;IACzE,2EAA2E;IAC3E,yEAAyE;IACzE,uEAAuE;IACvE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,eAAe;CACxD,CAAC;AACF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC;AAE1C,8EAA8E;AAC9E,wEAAwE;AACxE,2EAA2E;AAC3E,+DAA+D;AAC/D,gFAAgF;AAChF,kFAAkF;AAClF,iFAAiF;AACjF,0EAA0E;AAC1E,qEAAqE;AACrE,+EAA+E;AAC/E,MAAM,OAAO,GAAG,IAAI,GAAG,EAAwC,CAAC;AAChE,MAAM,aAAa,GAAG,EAAE,GAAG,MAAM,CAAC;AAElC,MAAM,cAAc,GAAG,CAAC,SAA6B,EAAE,IAAwB,EAAQ,EAAE;IACvF,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI;QAAE,OAAO;IAChC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,OAAO;QAAE,IAAI,GAAG,GAAG,CAAC,CAAC,EAAE,GAAG,aAAa;YAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAChF,IAAI,OAAO,CAAC,IAAI,GAAG,KAAK;QAAE,OAAO,CAAC,KAAK,EAAE,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,CAAU,EAAsB,EAAE;IACtD,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IACvD,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACtC,gEAAgE;IAChE,OAAO,EAAE,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACrF,CAAC,CAAC;AAEF,gFAAgF;AAChF,2EAA2E;AAC3E,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAC5B,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAC/B,MAAM,QAAQ,GAAG,IAAI,WAAW,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;AAC3D,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;AAEjE,iFAAiF;AACjF,4EAA4E;AAC5E,4EAA4E;AAC5E,6DAA6D;AAC7D,EAAE;AACF,8EAA8E;AAC9E,2EAA2E;AAC3E,6EAA6E;AAC7E,4EAA4E;AAC5E,gFAAgF;AAChF,wBAAwB;AACxB,MAAM,aAAa,GAAG,KAAK,IAAmC,EAAE;IAC9D,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC;IAC5D,IAAI,QAAQ;QAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;IACvE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;IAClC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QACxE,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,8BAA8B,WAAW,KAAK,GAAG,EAAE,CAAC;KACrF,CAAC,CAAC;IACH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;AACpE,CAAC,CAAC;AAEF,4EAA4E;AAC5E,8EAA8E;AAC9E,2EAA2E;AAC3E,+BAA+B;AAC/B,MAAM,YAAY,GAAG,KAAK,IAAmB,EAAE;IAC7C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;IAClC,IAAI,CAAC,MAAM,EAAE,YAAY;QAAE,OAAO;IAClC,MAAM,YAAY,CAAC,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CACnF,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CACd,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;AAE/F,+EAA+E;AAC/E,EAAE;AACF,wEAAwE;AACxE,6EAA6E;AAC7E,6EAA6E;AAC7E,8EAA8E;AAC9E,0EAA0E;AAC1E,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AACxE,MAAM,QAAQ,GAAG,IAAI,eAAe,CAClC,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,qEAAqE;IACrE,wEAAwE;IACxE,yDAAyD;IACzD,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QAC7E,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,8BAA8B,IAAI,KAAK,GAAG,EAAE,CAAC;KAC9E,CAAC,CAAC;IACH,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;AAC7D,CAAC,EACD,EAAE,SAAS,EAAE,UAAU,EAAE,CAC1B,CAAC;AAEF,sEAAsE;AACtE,EAAE;AACF,2EAA2E;AAC3E,8EAA8E;AAC9E,6EAA6E;AAC7E,uBAAuB;AACvB,MAAM,UAAU,GAAG,CAAC,GAAY,EAAkC,EAAE;IAClE,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACvF,iFAAiF;QACjF,+EAA+E;QAC/E,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QAC9D,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACf,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,uBAAwB,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7E,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AACF,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC1D,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAE1D,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC;AAE5D;;;;;;;;;;GAUG;AACH,MAAM,cAAc,GAAG,CAAC,CAAU,EAAsB,EAAE,CACxD,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1C,MAAM,aAAa,GAAG,KAAK;IACzB,CAAC,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IACtD,CAAC,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AAE1D,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;AAEvB,gFAAgF;AAChF,iFAAiF;AACjF,iFAAiF;AACjF,EAAE;AACF,2DAA2D;AAC3D,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE;IACzB,yEAAyE;IACzE,0EAA0E;IAC1E,2CAA2C;IAC3C,IAAI,CAAC,QAAQ;QAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;IACnC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;QAC3B,cAAc,EAAE,WAAW;QAC3B,eAAe,EAAE,uBAAuB;KACzC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AACH,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC;AAC9D,6DAA6D;AAC7D,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE;IACzB,IAAI,CAAC,QAAQ;QAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;IACnC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;QAC3B,cAAc,EAAE,WAAW;QAC3B,eAAe,EAAE,uBAAuB;KACzC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAC9E,uBAAuB;AACvB,MAAM,KAAK,GAAiB;IAC1B,8EAA8E;IAC9E,yDAAyD;IACzD,KAAK,EAAE,KAAK,CAAC,KAAK;IAClB,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;IACtB,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU;IAClC,YAAY,EAAE,aAAa;IAC3B,2EAA2E;IAC3E,4EAA4E;IAC5E,4EAA4E;IAC5E,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,eAAe;IAC1D,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,IAAI,UAAU;IACxD,0EAA0E;IAC1E,6EAA6E;IAC7E,4EAA4E;IAC5E,yBAAyB;IACzB,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,SAAS;IAClD,6EAA6E;IAC7E,sDAAsD;IACtD,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,IAAI,gBAAgB;IACvE,yEAAyE;IACzE,wEAAwE;IACxE,oCAAoC;IACpC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,IAAI,EAAE;IACzD,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE;IACzC,UAAU,EAAE,WAAW;IACvB,4EAA4E;IAC5E,+EAA+E;IAC/E,8EAA8E;IAC9E,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,WAAW;IAChD,6EAA6E;IAC7E,0BAA0B;IAC1B,WAAW,EAAE,gBAAgB;IAC7B,UAAU,EAAE,mBAAmB;CAChC,CAAC;AACF,4EAA4E;AAC5E,0EAA0E;AAC1E,qEAAqE;AACrE,EAAE;AACF,iFAAiF;AACjF,6EAA6E;AAC7E,6EAA6E;AAC7E,iFAAiF;AACjF,sEAAsE;AACtE,MAAM,aAAa,GAAG,GAAW,EAAE;IACjC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5D,IAAI,CAAC,OAAO,EAAE,GAAG;QAAE,OAAO,KAAK,CAAC,UAAU,CAAC;IAC3C,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC,UAAU,CAAC;IAC1B,CAAC;AACH,CAAC,CAAC;AAEF,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AACrF,sEAAsE;AACtE,EAAE;AACF,gFAAgF;AAChF,yEAAyE;AACzE,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,gFAAgF;AAChF,+EAA+E;AAC/E,EAAE;AACF,iFAAiF;AACjF,+EAA+E;AAC/E,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAC9E,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AAC3F,iFAAiF;AACjF,EAAE;AACF,gFAAgF;AAChF,6EAA6E;AAC7E,0EAA0E;AAC1E,6EAA6E;AAC7E,+EAA+E;AAC/E,gFAAgF;AAChF,uEAAuE;AACvE,+EAA+E;AAC/E,wDAAwD;AACxD,IAAI,KAAK,EAAE,CAAC;IACV,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/F,CAAC;AACD,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CACtB,KAAK;IACH,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,aAAa,EAAE,4BAA4B,EAAE,GAAG,CAAC,CACpE,CAAC;AAEF,6CAA6C;AAC7C,EAAE;AACF,gFAAgF;AAChF,4EAA4E;AAC5E,+EAA+E;AAC/E,gFAAgF;AAChF,yEAAyE;AACzE,EAAE;AACF,8EAA8E;AAC9E,iFAAiF;AACjF,gFAAgF;AAChF,mBAAmB;AACnB,MAAM,UAAU,GAAG,iBAAiB,CAAC;AACrC,MAAM,eAAe,GAAG,SAAS,CAAC;AAClC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAC/B,iFAAiF;AACjF,2EAA2E;AAC3E,6EAA6E;AAC7E,iDAAiD;AACjD,MAAM,WAAW,GAAG,mCAAmC,CAAC;AACxD,oEAAoE;AACpE,4EAA4E;AAC5E,uEAAuE;AACvE,mEAAmE;AACnE,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B,MAAM,UAAU,GAAG,IAAI,WAAW,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;AAE/D,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IACnF,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IACnC,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAC9F,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,OAAO,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE;YAC9B,0EAA0E;YAC1E,iEAAiE;YACjE,mEAAmE;YACnE,2EAA2E;YAC3E,wEAAwE;YACxE,8CAA8C;YAC9C,QAAQ,EAAE,OAAO;YACjB,2EAA2E;YAC3E,sDAAsD;YACtD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,gBAAgB,CAAC;SAC9C,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACtF,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;QAChF,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;QAChE,IAAI,GAAG,GAAG,eAAe;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QACtD,IAAI,GAAG,CAAC,UAAU,GAAG,eAAe;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACtE,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;YACtB,cAAc,EAAE,IAAI;YACpB,0EAA0E;YAC1E,0EAA0E;YAC1E,eAAe,EAAE,uBAAuB;YACxC,qEAAqE;YACrE,sCAAsC;YACtC,wBAAwB,EAAE,SAAS;YACnC,yBAAyB,EAAE,6BAA6B;SACzD,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;IACxC,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAC7B,MAAM,SAAS,GAAG,CAAC,MAAM,aAAa,EAAE,CAAC,KAAK,IAAI,CAAC;IACnD,OAAO,CAAC,CAAC,IAAI,CAAC;QACZ,6EAA6E;QAC7E,4EAA4E;QAC5E,qCAAqC;QACrC,MAAM,EAAE,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC;YACzC,CAAC,CAAC,sBAAsB;YACxB,CAAC,CAAC,IAAI,CAAC,QAAQ;gBACb,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,SAAS;oBACT,CAAC,CAAC,UAAU;oBACZ,CAAC,CAAC,eAAe;QACvB,IAAI,EAAE,WAAW;QACjB,SAAS;QACT,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;QAC9B,eAAe,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,IAAI;QACrD,2EAA2E;QAC3E,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI;KAClC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,gFAAgF;AAChF,+EAA+E;AAC/E,gFAAgF;AAChF,6DAA6D;AAC7D,EAAE;AACF,+EAA+E;AAC/E,4EAA4E;AAC5E,2CAA2C;AAC3C,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACvB,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,YAAY;IACZ,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;QAC7B,OAAO,CAAC,CAAC,IAAI,CACX,iFAAiF,UAAU,CAAC,aAAa,CAAC;;;;;;;;aAQnG,UAAU,CAAC,aAAa,CAAC;gCACN,UAAU,CAAC,aAAa,CAAC;4BAC7B,UAAU,CAAC,aAAa,CAAC,KAAK,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC;;oCAExD,UAAU,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;;SAE9E,UAAU,CAAC,aAAa,CAAC,oEAAoE,CACjG,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAC7B,MAAM,SAAS,GAAG,CAAC,MAAM,aAAa,EAAE,CAAC,KAAK,IAAI,CAAC;IAEnD,4EAA4E;IAC5E,8EAA8E;IAC9E,0EAA0E;IAC1E,8EAA8E;IAC9E,+CAA+C;IAC/C,EAAE;IACF,+EAA+E;IAC/E,4EAA4E;IAC5E,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,aAAa,EAAE,CAAC;QACvE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;QACzC,IACE,kBAAkB,CAAC,aAAa,EAAE,MAAM,CAAC;YACzC,YAAY,CAAC,SAAS,CAAC;YACvB,SAAS,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE,EACrD,CAAC;YACD,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACjE,CAAC;QACD,8EAA8E;QAC9E,oDAAoD;IACtD,CAAC;IACD,+EAA+E;IAC/E,8EAA8E;IAC9E,+EAA+E;IAC/E,0EAA0E;IAC1E,qEAAqE;IACrE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,QAAQ;QACnB,CAAC,CAAC,8DAA8D,WAAW;;;;2DAIpB,UAAU,CAAC,WAAW,CAAC;0CACxC,UAAU,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,MAAM;QAC5E,CAAC,CAAC,SAAS;YACT,CAAC,CAAC,iCAAiC,WAAW;YACxC,IAAI,CAAC,QAAQ,CAAC,MAAM,qBACvB,IAAI,CAAC,QAAQ;gBACX,CAAC,CAAC,kBAAkB,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM;gBACpF,CAAC,CAAC,EACN;SACE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,mCAAmC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;;6EAErB;YACvE,CAAC,CAAC;yDACiD,UAAU,CAAC,WAAW,CAAC;;kEAEd,CAAC;IACjE,OAAO,CAAC,CAAC,IAAI,CACX,kFAAkF,UAAU,CAAC,aAAa,CAAC;;;;;;;;;;WAUpG,UAAU,CAAC,aAAa,CAAC;OAC7B,IAAI,EAAE,CACV,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,gFAAgF;AAChF,iFAAiF;AACjF,uEAAuE;AAEvE,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE;IAC7B,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;IAC3F,4EAA4E;IAC5E,wEAAwE;IACxE,2EAA2E;IAC3E,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,KAAK,EAAE,CAAC;QACV,4EAA4E;QAC5E,wEAAwE;QACxE,kEAAkE;QAClE,EAAE;QACF,0EAA0E;QAC1E,mEAAmE;QACnE,sEAAsE;QACtE,yEAAyE;QACzE,6CAA6C;QAC7C,MAAM,KAAK,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAChD,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,4CAA4C,EAAE,GAAG,CAAC,CAAC;QAC7E,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;QACrF,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAC3F,CAAC;IACD,yEAAyE;IACzE,gDAAgD;IAChD,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;QAC7D,OAAO,CAAC,CAAC,IAAI,CAAC,2CAA2C,EAAE,GAAG,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC,CAAC;AAEH,yEAAyE;AACzE,2EAA2E;AAC3E,mBAAmB;AACnB,EAAE;AACF,8EAA8E;AAC9E,wEAAwE;AACxE,iCAAiC;AACjC,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACxC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAC/B,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QACxF,2EAA2E;QAC3E,4CAA4C;QAC5C,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,GAAG,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IACpD,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAC;IACzD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE;QAC9C,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YACtB,IAAI,KAAK,EAAE,CAAC;gBACV,qEAAqE;gBACrE,qDAAqD;gBACrD,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACnB,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC5B,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,QAAQ,CAAC,gCAAgC,CAAC,CAAC;gBACzE,OAAO;YACT,CAAC;YACD,yEAAyE;YACzE,kEAAkE;YAClE,uEAAuE;YACvE,sEAAsE;YACtE,yEAAyE;YACzE,+BAA+B;YAC/B,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,QAAQ,CAAC,qDAAqD,CAAC,CAAC;QAChG,CAAC;KACF,CAAC,CAAC;IACH,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAa,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACpC,IAAI,CAAC,aAAa;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;IAC7E,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;IAE7D,8EAA8E;IAC9E,2EAA2E;IAC3E,6EAA6E;IAC7E,wCAAwC;IACxC,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;IACxF,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7D,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACtC,0EAA0E;IAC1E,8EAA8E;IAC9E,yEAAyE;IACzE,sCAAsC;IACtC,MAAM,MAAM,GAAG,KAAK;QAClB,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACpC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE,CAAC;IAC3E,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;IACxC,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACtC,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IAE9C,IAAI,CAAC;QACH,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,MAAM,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACxF,0EAA0E;QAC1E,uEAAuE;QACvE,6BAA6B;QAC7B,MAAM,MAAM,GAAG;YACb,UAAU,EAAE,IAAI;YAChB,WAAW;YACX,KAAK;YACL,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,sEAAsE;YACtE,yEAAyE;YACzE,gBAAgB;YAChB,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpC,CAAC;QACF,IAAI,KAAK;YAAE,MAAM,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;;YACpC,MAAM,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,aAAa,KAAK,GAAG,CAAC,CAAC;QAC/D,qEAAqE;QACrE,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;QACvB,OAAO,CAAC,CAAC,IAAI,CACX;;aAEO,aAAa;;eAEX,CACV,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,qDAAqD;QACrD,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,CAAC,KAAK,CAAC,qCAAqC,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC;QACvE,OAAO,CAAC,CAAC,IAAI,CAAC,4DAA4D,EAAE,GAAG,CAAC,CAAC;IACnF,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,6EAA6E;AAC7E,4DAA4D;AAC5D,EAAE;AACF,+EAA+E;AAC/E,4EAA4E;AAC5E,gFAAgF;AAChF,6EAA6E;AAC7E,gFAAgF;AAChF,8EAA8E;AAC9E,gDAAgD;AAChD,EAAE;AACF,mEAAmE;AACnE,8EAA8E;AAC9E,GAAG,CAAC,GAAG,CAAC,oCAAoC,EAAE,CAAC,CAAC,EAAE,EAAE;IAClD,MAAM,KAAK,GAAG,YAAY,CACxB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EACpB,OAAO,CAAC,GAAG,CAAC,4BAA4B,EACxC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CACxC,CAAC;IACF,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;IAChC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,iFAAiF;AACjF,0CAA0C;AAC1C,MAAM,UAAU,GAAG,CAAC,CAAS,EAAU,EAAE,CACvC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,CAC3B,EAAE,KAAK,GAAG;IACR,CAAC,CAAC,OAAO;IACT,CAAC,CAAC,EAAE,KAAK,GAAG;QACV,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,EAAE,KAAK,GAAG;YACV,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,EAAE,KAAK,GAAG;gBACV,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,OAAO,CAClB,CAAC;AAEJ,+EAA+E;AAC/E,gFAAgF;AAChF,0EAA0E;AAC1E,MAAM,QAAQ,GAAG,GAAG,KAAK,CAAC,aAAa,qBAAqB,CAAC;AAC7D,gFAAgF;AAChF,gFAAgF;AAChF,+EAA+E;AAC/E,4EAA4E;AAC5E,kDAAkD;AAClD,MAAM,SAAS,GAAG,2BAA2B,CAAC;AAC9C,8EAA8E;AAC9E,gFAAgF;AAChF,8EAA8E;AAC9E,iFAAiF;AACjF,4EAA4E;AAC5E,MAAM,OAAO,GAAG;IACd,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE;IAC7B,gBAAgB,EAAE,QAAQ;IAC1B,uBAAuB,EAAE,QAAQ;IACjC,yBAAyB,EAAE,IAAI;CAChC,CAAC;AACF,6EAA6E;AAC7E,4DAA4D;AAC5D,EAAE;AACF,iFAAiF;AACjF,0EAA0E;AAC1E,2EAA2E;AAC3E,yEAAyE;AACzE,iFAAiF;AACjF,8EAA8E;AAC9E,EAAE;AACF,kEAAkE;AAClE,0EAA0E;AAC1E,uEAAuE;AACvE,EAAE;AACF,+EAA+E;AAC/E,qBAAqB;AACrB,MAAM,aAAa,GAAG,CAAC,yBAAyB,EAAE,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAC9E,MAAM,WAAW,GAAG;IAClB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE;IACnE,kBAAkB,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,gBAAgB,EAAE,aAAa,EAAE;IAC5E,qBAAqB,EAAE,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,MAAM;CAClD,CAAC;AAEF,MAAM,gBAAgB,GAAG,YAAY,CAAC;AACtC,MAAM,EAAE,GAAG,CAAC,CAAU,EAAE,EAAW,EAAE,MAAe,EAAE,EAAE,CACtD,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;AACrD,MAAM,IAAI,GAAG,CAAC,CAAU,EAAE,EAAW,EAAE,IAAY,EAAE,OAAe,EAAE,EAAE,CACtE,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAEvE,0DAA0D;AAC1D,EAAE;AACF,gFAAgF;AAChF,iFAAiF;AACjF,6EAA6E;AAC7E,4CAA4C;AAC5C,MAAM,OAAO,GAAG,CACd,MAA0B,EAC1B,IAAwB,EACxB,OAAe,EACf,SAAiB,EACX,EAAE;IACR,OAAO,CAAC,GAAG,CACT,SAAS,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,OAAO,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,IAAI,CACzF,CAAC;AACJ,CAAC,CAAC;AAEF,4EAA4E;AAC5E,+EAA+E;AAC/E,2DAA2D;AAC3D,8EAA8E;AAC9E,8EAA8E;AAC9E,yEAAyE;AACzE,gFAAgF;AAChF,wEAAwE;AACxE,EAAE;AACF,0EAA0E;AAC1E,mDAAmD;AACnD,uEAAuE;AACvE,EAAE;AACF,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAC9E,8BAA8B;AAC9B,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAExE,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACpC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAChD,4EAA4E;QAC5E,0EAA0E;QAC1E,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC;QACnD,OAAO,CAAC,CAAC,IAAI,CACX,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,EAC9E,GAAG,CACJ,CAAC;IACJ,CAAC;IACD,IAAI,IAA2F,CAAC;IAChG,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAEpC,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,EAAE,UAA2C,CAAC;QACjE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3D,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE;YACf,eAAe,EAAE,gBAAgB;YACjC,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;YAC1C,wEAAwE;YACxE,0EAA0E;YAC1E,sEAAsE;YACtE,qEAAqE;YACrE,kCAAkC;YAClC,UAAU,EAAE;gBACV,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;gBAC9B,KAAK,EAAE,aAAa;gBACpB,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,IAAI,UAAU;gBACxD,iEAAiE;gBACjE,qEAAqE;gBACrE,mBAAmB;gBACnB,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,QAAQ;oBACzC,CAAC,CAAC;wBACE,KAAK,EAAE;4BACL;gCACE,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,GAAG,UAAU,WAAW;gCAC5D,QAAQ,EAAE,WAAW;gCACrB,KAAK,EAAE,CAAC,SAAS,CAAC;6BACnB;yBACF;qBACF;oBACH,CAAC,CAAC,EAAE,CAAC;aACR;YACD,yEAAyE;YACzE,2EAA2E;YAC3E,qEAAqE;YACrE,2EAA2E;YAC3E,yEAAyE;YACzE,uBAAuB;YACvB,EAAE;YACF,2EAA2E;YAC3E,2EAA2E;YAC3E,sDAAsD;YACtD,YAAY,EAAE;gBACZ,GAAG,aAAa,mDAAmD,KAAK,CAAC,KAAK,CAAC,UAAU,6DAA6D;gBACtJ,uEAAuE;gBACvE,wEAAwE;gBACxE,sEAAsE;gBACtE,wEAAwE;gBACxE,uEAAuE;gBACvE,yEAAyE;gBACzE,uEAAuE;gBACvE,wBAAwB,aAAa,wHAAwH;gBAC7J,oBAAoB,KAAK,CAAC,KAAK,CAAC,IAAI,4EAA4E,KAAK,CAAC,KAAK,CAAC,IAAI,kGAAkG,KAAK,CAAC,KAAK,CAAC,UAAU,oCAAoC;gBAC5R,kDAAkD,KAAK,CAAC,KAAK,CAAC,UAAU,6BAA6B;gBACrG,6GAA6G;gBAC7G,kOAAkO;gBAClO,6DAA6D;gBAC7D,iDAAiD;gBACjD,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;gBAC1E,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,0BAA0B,aAAa,uCAAuC;aACtG,CAAC,IAAI,CAAC,IAAI,CAAC;SACb,CAAC,CAAC;IACL,CAAC;IAED,2EAA2E;IAC3E,0EAA0E;IAC1E,6EAA6E;IAC7E,+EAA+E;IAC/E,uEAAuE;IACvE,gFAAgF;IAChF,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5C,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACvB,CAAC;IAED,yDAAyD;IACzD,IAAI,MAAM,KAAK,2BAA2B,EAAE,CAAC;QAC3C,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5C,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,6EAA6E;QAC7E,6EAA6E;QAC7E,uEAAuE;QACvE,iEAAiE;QACjE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE;YACf,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAyB,EAAE,EAAE;gBAC7C,uEAAuE;gBACvE,uEAAuE;gBACvE,0DAA0D;gBAC1D,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC5C,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;YAC7E,CAAC,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED,IAAI,MAAM,KAAK,gBAAgB,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE;YACf,SAAS,EAAE;gBACT;oBACE,GAAG,EAAE,QAAQ;oBACb,IAAI,EAAE,GAAG,aAAa,aAAa;oBACnC,WAAW,EAAE,UAAU,KAAK,CAAC,KAAK,CAAC,UAAU,qCAAqC;oBAClF,QAAQ,EAAE,SAAS;oBACnB,KAAK,EAAE,WAAW;iBACnB;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,MAAM,KAAK,gBAAgB,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,MAAM,CAAE,MAAwC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;QACzE,sEAAsE;QACtE,qCAAqC;QACrC,EAAE;QACF,2EAA2E;QAC3E,4EAA4E;QAC5E,0EAA0E;QAC1E,uEAAuE;QACvE,EAAE;QACF,wEAAwE;QACxE,mEAAmE;QACnE,qDAAqD;QACrD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,qBAAqB,GAAG,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE;YACf,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;SACpF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,SAAS,IAAI,EAAE,CAA4B,CAAC;QAClE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAyB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YAChE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC;YACjD,OAAO,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YACvF,0EAA0E;YAC1E,yEAAyE;YACzE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,qBAAqB,EAAE,SAAS,CAAC,CAAC;YACxD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE;gBACf,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iEAAiE,EAAE;iBAC1F;gBACD,iBAAiB,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE;gBAC3C,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC;YACH,yEAAyE;YACzE,0EAA0E;YAC1E,yDAAyD;YACzD,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1D,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;gBACnB,uEAAuE;gBACvE,gEAAgE;gBAChE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE;oBACf,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC9D,iBAAiB,EAAE;wBACjB,IAAI,EAAE,eAAe;wBACrB,IAAI,EACF,UAAU,CAAC,MAAM,KAAK,SAAS;4BAC7B,CAAC,CAAC,EAAE;4BACJ,CAAC,CAAC,CAAE,UAAgD,CAAC,IAAI;gCACtD,UAAiC,CAAC,KAAK;gCACxC,EAAE,CAAC;qBACV;iBACF,CAAC,CAAC;YACL,CAAC;YACD,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;YAC1C,MAAM,IAAI,GAAa;gBACrB,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO;gBAClC,OAAO;gBACP,YAAY,EAAE,aAAa;gBAC3B,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,UAAU,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1D,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE;gBACrE,UAAU,EAAE,GAAG,UAAU,SAAS;gBAClC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC3D,CAAC;YACF,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC7C,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAClF,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE;gBACf,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC3C,iBAAiB,EAAE,GAAG,CAAC,UAAU;gBACjC,KAAK,EAAE,OAAO;aACf,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,0EAA0E;YAC1E,sEAAsE;YACtE,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;YACtD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE;gBACf,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,OAAO,EAAE,EAAE,CAAC;gBAClE,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,SAAS,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,qBAAqB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AACpE,CAAC,CAAC,CAAC;AAEH,4EAA4E;AAC5E,0DAA0D;AAC1D,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;AAEjG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;AAE1B,6EAA6E;AAC7E,gFAAgF;AAChF,2EAA2E;AAC3E,+EAA+E;AAC/E,+EAA+E;AAC/E,uDAAuD;AACvD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;IACnB,MAAM,KAAK,GAAG,KAAK,IAAI,EAAE;QACvB,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,KAAK;gBACb,CAAC,CAAC,MAAM,SAAS,CACb,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,EACxB,KAAK,EACL,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAC1B;gBACH,CAAC,CAAC,MAAM,SAAS,CACb,KAAK,IAAI,EAAE;oBACT,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;oBAC7B,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtB,CAAC,EACD,KAAK,EACL,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CACrB,CAAC;YACN,IAAI,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,yEAAyE;YACzE,yDAAyD;YACzD,OAAO,CAAC,KAAK,CAAC,mCAAmC,GAAG,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC,CAAC;IACF,KAAK,KAAK,EAAE,CAAC;IACb,WAAW,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC,KAAK,EAAE,CAAC;AACpD,CAAC;AAED,KAAK,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE;IAC/C,OAAO,CAAC,GAAG,CACT,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,mBAAmB,IAAI,CAAC,IAAI,UAAU,WAAW,aAAa,UAAU,KAAK,CAChG,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import type { CatalogSnapshot } from './catalog.js';
2
+ export type ListedPageContext = {
3
+ /** Public base of the listed app, e.g. https://storefront.curless.ai */
4
+ appUrl: string;
5
+ /** What this connector calls ITSELF — our product, never a merchant. */
6
+ productName: string;
7
+ };
8
+ export declare const escapeHtml: (s: string) => string;
9
+ /** The address the merchant pastes into ChatGPT or Claude. Their shop is in it. */
10
+ export declare const connectorUrl: (ctx: ListedPageContext, shop: string) => string;
11
+ /** No shop is asking — say what this is, and nothing about who has installed it. */
12
+ export declare const listedLandingPage: (ctx: ListedPageContext) => string;
13
+ /** A shop that has not installed yet — the only page here that sends anyone anywhere. */
14
+ export declare const connectPage: (shop: string) => string;
15
+ /**
16
+ * A shop that has installed.
17
+ *
18
+ * ⚠️ The connector URL is the POINT of this page. An install otherwise ends with
19
+ * a merchant on a page congratulating them, holding nothing they can act on —
20
+ * nowhere else in the product does anything tell them what to paste into an
21
+ * assistant.
22
+ */
23
+ export declare const connectedPage: (ctx: ListedPageContext, shop: string, snap: CatalogSnapshot) => string;
24
+ //# sourceMappingURL=listed-pages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listed-pages.d.ts","sourceRoot":"","sources":["../src/listed-pages.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAMF,eAAO,MAAM,UAAU,GAAI,GAAG,MAAM,KAAG,MAWpC,CAAC;AAkBJ,mFAAmF;AACnF,eAAO,MAAM,YAAY,GAAI,KAAK,iBAAiB,EAAE,MAAM,MAAM,KAAG,MACJ,CAAC;AAEjE,oFAAoF;AACpF,eAAO,MAAM,iBAAiB,GAAI,KAAK,iBAAiB,KAAG,MAaxD,CAAC;AAEJ,yFAAyF;AACzF,eAAO,MAAM,WAAW,GAAI,MAAM,MAAM,KAAG,MAQxC,CAAC;AAEJ;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,GACxB,KAAK,iBAAiB,EACtB,MAAM,MAAM,EACZ,MAAM,eAAe,KACpB,MAgBA,CAAC"}
@@ -0,0 +1,65 @@
1
+ // Nothing interpolated below is merchant-supplied today: the shop domain has
2
+ // already passed the *.myshopify.com allow-list by the time it reaches here.
3
+ // Escaped anyway — the day one of these comes from a store's own settings, the
4
+ // page should not be the thing that has to be remembered.
5
+ export const escapeHtml = (s) => s.replace(/[&<>"']/g, (ch) => ch === '&'
6
+ ? '&amp;'
7
+ : ch === '<'
8
+ ? '&lt;'
9
+ : ch === '>'
10
+ ? '&gt;'
11
+ : ch === '"'
12
+ ? '&quot;'
13
+ : '&#39;');
14
+ const PAGE_CSS = `body{font-family:system-ui,-apple-system,sans-serif;margin:0;padding:32px;
15
+ color:#1a1a1a;line-height:1.6;max-width:36rem}
16
+ h1{font-size:18px;margin:0 0 16px}
17
+ h2{font-size:15px;margin:28px 0 8px}
18
+ code{background:#f3f4f6;padding:2px 6px;border-radius:4px;font-size:13px;word-break:break-all}
19
+ .ok{color:#0a7d3f;font-weight:600}
20
+ .warn{color:#a15c00}
21
+ .muted{color:#6b7280;font-size:14px}
22
+ .btn{display:inline-block;background:#1a1a1a;color:#fff;text-decoration:none;
23
+ padding:10px 18px;border-radius:8px;font-weight:600}`;
24
+ const page = (title, body) => `<!doctype html><meta charset="utf-8"><link rel="icon" href="/icon.png"><title>${escapeHtml(title)}</title>
25
+ <style>${PAGE_CSS}</style>
26
+ ${body}`;
27
+ /** The address the merchant pastes into ChatGPT or Claude. Their shop is in it. */
28
+ export const connectorUrl = (ctx, shop) => `${ctx.appUrl.replace(/\/$/, '')}/s/${shop.toLowerCase()}/mcp`;
29
+ /** No shop is asking — say what this is, and nothing about who has installed it. */
30
+ export const listedLandingPage = (ctx) => page(ctx.productName, `<h1>${escapeHtml(ctx.productName)}</h1>
31
+ <p>This is the Curless connector for Shopify. Installed on a store, it lets an AI
32
+ assistant show that store's products and what is in stock, hand the shopper a link to
33
+ the store's own checkout, and look up an order for the person who placed it.</p>
34
+ <p>It is read-only. Nothing is written to the store, and no payment passes through here.</p>
35
+ <p class="muted">Merchants install it from the Shopify App Store. Without a store there is
36
+ nothing to use on this page.</p>
37
+ <p class="muted"><a href="/docs">What this connector can reach</a> ·
38
+ <a href="/privacy">Privacy</a> · <a href="/terms">Terms</a> ·
39
+ <a href="/security">Data protection</a></p>`);
40
+ /** A shop that has not installed yet — the only page here that sends anyone anywhere. */
41
+ export const connectPage = (shop) => page('Connect your store', `<h1>${escapeHtml(shop)}</h1>
42
+ <p>This store has not installed the connector yet.</p>
43
+ <p><a class="btn" href="/auth/install?shop=${encodeURIComponent(shop)}">Connect ${escapeHtml(shop)}</a></p>
44
+ <p class="muted">Grants read-only access to products, orders and discounts. Nothing is
45
+ written to your store, and no money passes through us.</p>`);
46
+ /**
47
+ * A shop that has installed.
48
+ *
49
+ * ⚠️ The connector URL is the POINT of this page. An install otherwise ends with
50
+ * a merchant on a page congratulating them, holding nothing they can act on —
51
+ * nowhere else in the product does anything tell them what to paste into an
52
+ * assistant.
53
+ */
54
+ export const connectedPage = (ctx, shop, snap) => page('Connected', `<h1>${escapeHtml(shop)}</h1>
55
+ <p class="ok">Connected.</p>
56
+ <p>${snap.products.length} products readable${snap.loadedAt
57
+ ? ` · last synced ${snap.loadedAt.toISOString().replace('T', ' ').slice(0, 16)} UTC`
58
+ : ''}.</p>
59
+ ${snap.lastError ? `<p class="warn">Last sync said: ${escapeHtml(snap.lastError)}</p>` : ''}
60
+ <h2>Add it to an assistant</h2>
61
+ <p>Paste this address into ChatGPT or Claude as a connector:</p>
62
+ <p><code>${escapeHtml(connectorUrl(ctx, shop))}</code></p>
63
+ <p class="muted">Shoppers reach your catalogue through it. Checkout still happens on your
64
+ own Shopify checkout — nothing here moves money.</p>`);
65
+ //# sourceMappingURL=listed-pages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listed-pages.js","sourceRoot":"","sources":["../src/listed-pages.ts"],"names":[],"mappings":"AAuBA,6EAA6E;AAC7E,6EAA6E;AAC7E,+EAA+E;AAC/E,0DAA0D;AAC1D,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAS,EAAU,EAAE,CAC9C,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,CAC3B,EAAE,KAAK,GAAG;IACR,CAAC,CAAC,OAAO;IACT,CAAC,CAAC,EAAE,KAAK,GAAG;QACV,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,EAAE,KAAK,GAAG;YACV,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,EAAE,KAAK,GAAG;gBACV,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,OAAO,CAClB,CAAC;AAEJ,MAAM,QAAQ,GAAG;;;;;;;;;iEASgD,CAAC;AAElE,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,IAAY,EAAU,EAAE,CACnD,iFAAiF,UAAU,CAAC,KAAK,CAAC;cACtF,QAAQ;OACf,IAAI,EAAE,CAAC;AAEd,mFAAmF;AACnF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAsB,EAAE,IAAY,EAAU,EAAE,CAC3E,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC;AAEjE,oFAAoF;AACpF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAsB,EAAU,EAAE,CAClE,IAAI,CACF,GAAG,CAAC,WAAW,EACf,OAAO,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC;;;;;;;;;iDASW,CAC9C,CAAC;AAEJ,yFAAyF;AACzF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAY,EAAU,EAAE,CAClD,IAAI,CACF,oBAAoB,EACpB,OAAO,UAAU,CAAC,IAAI,CAAC;;kDAEuB,kBAAkB,CAAC,IAAI,CAAC,aAAa,UAAU,CAAC,IAAI,CAAC;;gEAEvC,CAC7D,CAAC;AAEJ;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,GAAsB,EACtB,IAAY,EACZ,IAAqB,EACb,EAAE,CACV,IAAI,CACF,WAAW,EACX,OAAO,UAAU,CAAC,IAAI,CAAC;;UAEjB,IAAI,CAAC,QAAQ,CAAC,MAAM,qBACvB,IAAI,CAAC,QAAQ;IACX,CAAC,CAAC,kBAAkB,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM;IACpF,CAAC,CAAC,EACN;OACE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,mCAAmC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;;;gBAGhF,UAAU,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;;0DAEO,CACvD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"AAqBA,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,gFAAgF;IAChF,UAAU,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAMF,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,OAA6B,CAAC;AAe1E,eAAO,MAAM,SAAS,GAAI,QAAQ,MAAM,EAAE,MAAK,MAAmB,KAAG,MAIpE,CAAC;AAMF,eAAO,MAAM,WAAW,GAAI,QAAQ,MAAM,EAAE,OAAO,MAAM,EAAE,MAAK,MAAmB,KAAG,OASrF,CAAC;AAKF,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,EAAE,UAAU,MAAM,KAAG,OA0BrE,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,QAAQ,WAAW,EAAE,OAAO,MAAM,KAAG,MAc/D,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AA0BF,eAAO,MAAM,YAAY,GACvB,QAAQ,WAAW,EACnB,MAAM,MAAM,EACZ,YAAW,OAAO,KAAa,EAC/B,MAAK,IAAiB,KACrB,OAAO,CAAC,aAAa,CA0BvB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,GAC7B,QAAQ,WAAW,EACnB,cAAc,MAAM,EACpB,YAAW,OAAO,KAAa,EAC/B,MAAK,IAAiB,KACrB,OAAO,CAAC,aAAa,CAavB,CAAC"}
1
+ {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"AAqBA,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,gFAAgF;IAChF,UAAU,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAMF,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,OAA6B,CAAC;AAwC1E,eAAO,MAAM,SAAS,GAAI,QAAQ,MAAM,EAAE,MAAK,MAAmB,KAAG,MAIpE,CAAC;AAMF,eAAO,MAAM,WAAW,GAAI,QAAQ,MAAM,EAAE,OAAO,MAAM,EAAE,MAAK,MAAmB,KAAG,OASrF,CAAC;AAKF,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,EAAE,UAAU,MAAM,KAAG,OA0BrE,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,QAAQ,WAAW,EAAE,OAAO,MAAM,KAAG,MAe/D,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AA0BF,eAAO,MAAM,YAAY,GACvB,QAAQ,WAAW,EACnB,MAAM,MAAM,EACZ,YAAW,OAAO,KAAa,EAC/B,MAAK,IAAiB,KACrB,OAAO,CAAC,aAAa,CA0BvB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,GAC7B,QAAQ,WAAW,EACnB,cAAc,MAAM,EACpB,YAAW,OAAO,KAAa,EAC/B,MAAK,IAAiB,KACrB,OAAO,CAAC,aAAa,CAavB,CAAC"}
package/dist/oauth.js CHANGED
@@ -22,6 +22,28 @@ import { createHmac, randomBytes, timingSafeEqual } from 'node:crypto';
22
22
  // domain here would send the merchant's authorisation somewhere else entirely.
23
23
  const SHOP_RE = /^[a-z0-9][a-z0-9-]*\.myshopify\.com$/i;
24
24
  export const isShopDomain = (shop) => SHOP_RE.test(shop);
25
+ /**
26
+ * The shop's OAuth endpoint — the ONE place these three calls learn where to go.
27
+ *
28
+ * ⚠️ IT THROWS ON AN EMPTY SHOP, and that is the whole point. `OauthConfig`
29
+ * carries a `shopDomain`, which for the LISTED app is not a property of the
30
+ * config at all: it has no shop of its own, and the shop is a property of the
31
+ * REQUEST. So its module-level config holds `''`, and every call site has to
32
+ * remember to spread the real shop in. The callback forgot, built
33
+ * `https:///admin/oauth/access_token`, and undici answered `fetch failed` —
34
+ * which reads as a network problem, sends you to check DNS and egress from
35
+ * inside the container, and says nothing whatsoever about the missing host.
36
+ * Verified in production on 2026-09-10: a real merchant's install died there.
37
+ *
38
+ * A thrown error naming the empty shop costs one line and turns that hour into
39
+ * a log line.
40
+ */
41
+ const shopEndpoint = (config, path) => {
42
+ if (!isShopDomain(config.shopDomain)) {
43
+ throw new Error(`shopify oauth: no shop to talk to (shopDomain is ${JSON.stringify(config.shopDomain)}) — a multi-tenant caller must pass the request's shop, e.g. { ...oauth, shopDomain }`);
44
+ }
45
+ return `https://${config.shopDomain}${path}`;
46
+ };
25
47
  const constantTimeEqual = (a, b) => {
26
48
  const ab = Buffer.from(a);
27
49
  const bb = Buffer.from(b);
@@ -85,6 +107,7 @@ export const verifyCallbackHmac = (secret, rawQuery) => {
85
107
  return constantTimeEqual(createHmac('sha256', secret).update(message).digest('hex'), hmac);
86
108
  };
87
109
  export const installUrl = (config, state) => {
110
+ const authorize = shopEndpoint(config, '/admin/oauth/authorize');
88
111
  const redirectUri = `${config.appUrl.replace(/\/$/, '')}/auth/callback`;
89
112
  const qs = new URLSearchParams({
90
113
  client_id: config.clientId,
@@ -97,7 +120,7 @@ export const installUrl = (config, state) => {
97
120
  // an agent reading the catalogue at 3am needs. `per-user` would tie it to a
98
121
  // merchant's session and die when they log out. Sending the key with an empty
99
122
  // value is neither, and not something the docs define.
100
- return `https://${config.shopDomain}/admin/oauth/authorize?${qs.toString()}`;
123
+ return `${authorize}?${qs.toString()}`;
101
124
  };
102
125
  const readToken = (body, now) => {
103
126
  if (!body.access_token)
@@ -116,7 +139,7 @@ const readToken = (body, now) => {
116
139
  };
117
140
  };
118
141
  export const exchangeCode = async (config, code, fetchImpl = fetch, now = new Date()) => {
119
- const res = await fetchImpl(`https://${config.shopDomain}/admin/oauth/access_token`, {
142
+ const res = await fetchImpl(shopEndpoint(config, '/admin/oauth/access_token'), {
120
143
  method: 'POST',
121
144
  headers: { 'content-type': 'application/json', accept: 'application/json' },
122
145
  body: JSON.stringify({
@@ -151,7 +174,7 @@ export const exchangeCode = async (config, code, fetchImpl = fetch, now = new Da
151
174
  * managed to persist; it is not a licence to keep using the old one.
152
175
  */
153
176
  export const refreshAccessToken = async (config, refreshToken, fetchImpl = fetch, now = new Date()) => {
154
- const res = await fetchImpl(`https://${config.shopDomain}/admin/oauth/access_token`, {
177
+ const res = await fetchImpl(shopEndpoint(config, '/admin/oauth/access_token'), {
155
178
  method: 'POST',
156
179
  headers: { 'content-type': 'application/json', accept: 'application/json' },
157
180
  body: JSON.stringify({
package/dist/oauth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"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"}