@glubean/scanner 0.5.1 → 0.5.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.
@@ -23,13 +23,19 @@ import type { ContractStaticMeta, FlowStaticMeta, PickMeta } from "./extractor-s
23
23
  */
24
24
  export declare function extractFromSource(content: string, customFns?: string[]): ExportMeta[];
25
25
  /**
26
- * AST replacement for the regex `extractContractCases`. Extracts
27
- * `contract.<protocol>("id", { endpoint, description, feature, cases })` exports
28
- * `ContractStaticMeta[]` (same fields the regex set: contract id/exportName/
29
- * line/endpoint/protocol/description/feature + per-case key/line/description/
30
- * expectStatus/deferred/requires/defaultRun/given). Returns [] on parse error.
26
+ * Extract `<factory>("id", { endpoint, description, feature, cases })` contract
27
+ * exports → `ContractStaticMeta[]` (contract id/exportName/line/endpoint/protocol/
28
+ * description/feature + per-case key/line/description/expectStatus/deferred/
29
+ * deprecated/requires/defaultRun/given). Returns [] on parse error.
30
+ *
31
+ * @param opts.broad - When true, duck-type ANY factory (scoped `.with()` /
32
+ * custom `*Api`) for discovery (VSCode). Default false: only the literal
33
+ * `contract.<protocol>(...)` form, so the CLI/scanner upload path keeps its
34
+ * deliberate "fail closed on scoped/custom forms" discipline.
31
35
  */
32
- export declare function extractContractCases(content: string): ContractStaticMeta[];
36
+ export declare function extractContractCases(content: string, opts?: {
37
+ broad?: boolean;
38
+ }): ContractStaticMeta[];
33
39
  /**
34
40
  * Structural (marker-free) flow extraction: every `export const X = <fn>.flow("id")…`
35
41
  * → `FlowStaticMeta`. Replaces vscode's `// @flow`-gated extractMarkedFlows — AST
@@ -1 +1 @@
1
- {"version":3,"file":"extractor-ast.d.ts","sourceRoot":"","sources":["../src/extractor-ast.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAgBH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAA0B,kBAAkB,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAqMlH;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAcrF;AA+ED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAsC1E;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,EAAE,CAkC9D;AA2GD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1E,QAAQ,EAAE,CAmFZ;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,EAC3C,SAAS,CAAC,EAAE,MAAM,EAAE,GACnB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,UAAU,EAAE,CAAC,CASpE"}
1
+ {"version":3,"file":"extractor-ast.d.ts","sourceRoot":"","sources":["../src/extractor-ast.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAgBH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAA0B,kBAAkB,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAqMlH;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAcrF;AA8HD;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GACzB,kBAAkB,EAAE,CAuCtB;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,EAAE,CAkC9D;AA2GD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1E,QAAQ,EAAE,CAmFZ;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,EAC3C,SAAS,CAAC,EAAE,MAAM,EAAE,GACnB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,UAAU,EAAE,CAAC,CASpE"}
@@ -237,25 +237,46 @@ export function extractFromSource(content, customFns) {
237
237
  });
238
238
  return results;
239
239
  }
240
- /** Find the `contract.<protocol>(...)` call in a chain (object named `contract`). */
241
- function findContractCall(init) {
240
+ /**
241
+ * Find the contract call in a chain.
242
+ *
243
+ * - **narrow** (default): only the literal `contract.<protocol>("id", { … })`
244
+ * direct form — the regex-faithful behavior the CLI/scanner depend on. The
245
+ * scanner deliberately "fails closed" on scoped/custom forms (warns + requires
246
+ * runtime import) rather than emit incomplete static metadata for upload (see
247
+ * the graphql README "Phase 1 limitations" + GraphQL RFR).
248
+ * - **broad** (opt-in, for VSCode discovery): DUCK-TYPE any
249
+ * `<factory>("id", { …cases… })` — `contract.http.with(defaults)(...)` scoped
250
+ * instances, custom `stableApi(...)` factories, etc. (cookbook/demo use these
251
+ * heavily). `protocol` is best-effort (derived from a `contract.<X>` segment;
252
+ * "" when unknown).
253
+ */
254
+ function findContractCall(init, broad) {
242
255
  let node = unwrapExpression(init);
243
256
  while (node && node.type === "CallExpression") {
244
257
  const callee = unwrapExpression(node.callee);
245
258
  if (!callee)
246
259
  break;
247
- if (callee.type === "MemberExpression") {
260
+ if (broad) {
261
+ // Duck-type: (string id, object literal carrying `cases`).
262
+ const args = node.arguments;
263
+ const id = stringFromExpression(args?.[0]);
264
+ const spec = objectFromExpression(args?.[1]);
265
+ if (id !== undefined && spec && objectProperty(spec, "cases")) {
266
+ return { protocol: deriveProtocol(callee), call: node };
267
+ }
268
+ }
269
+ else if (callee.type === "MemberExpression" && callee.computed !== true) {
270
+ // Narrow: literal `contract.<protocol>(...)`.
248
271
  const object = callee.object;
249
272
  const property = callee.property;
250
- // Non-computed only: `contract.http(...)`, not `contract[protocol](...)`
251
- // (a computed access' property is a variable, not a literal protocol name).
252
- if (callee.computed !== true &&
253
- object.type === "Identifier" &&
254
- object.name === "contract" &&
255
- property.type === "Identifier") {
273
+ if (object.type === "Identifier" && object.name === "contract" && property.type === "Identifier") {
256
274
  return { protocol: property.name, call: node };
257
275
  }
258
- node = unwrapExpression(object);
276
+ }
277
+ // Descend the chain toward the head.
278
+ if (callee.type === "MemberExpression") {
279
+ node = unwrapExpression(callee.object);
259
280
  }
260
281
  else if (callee.type === "CallExpression") {
261
282
  node = callee;
@@ -266,6 +287,27 @@ function findContractCall(init) {
266
287
  }
267
288
  return undefined;
268
289
  }
290
+ /** Best-effort protocol from a `contract.<X>` segment in a callee chain; "" if none. */
291
+ function deriveProtocol(callee) {
292
+ let c = unwrapExpression(callee);
293
+ while (c) {
294
+ if (c.type === "MemberExpression" && c.computed !== true) {
295
+ const object = c.object;
296
+ const property = c.property;
297
+ if (object.type === "Identifier" && object.name === "contract" && property.type === "Identifier") {
298
+ return property.name; // contract.<X>
299
+ }
300
+ c = unwrapExpression(object); // e.g. contract.http.with → descend to contract.http
301
+ }
302
+ else if (c.type === "CallExpression") {
303
+ c = unwrapExpression(c.callee); // .with(defaults) → its callee
304
+ }
305
+ else {
306
+ break;
307
+ }
308
+ }
309
+ return "";
310
+ }
269
311
  const _REQUIRES = new Set(["headless", "browser", "out-of-band"]);
270
312
  const _DEFAULT_RUN = new Set(["always", "opt-in"]);
271
313
  /** Parse the `cases: { key: { ... } }` object into ContractCaseStaticMeta[]. */
@@ -276,9 +318,16 @@ function readCases(casesObj) {
276
318
  if (property.type !== "ObjectProperty")
277
319
  continue;
278
320
  const key = propertyNameText(property);
321
+ if (key === undefined)
322
+ continue;
279
323
  const body = objectFromExpression(property.value);
280
- if (key === undefined || !body)
324
+ if (!body) {
325
+ // Reference / shorthand case value (`cases: { ok }` or `ok: sharedCase`):
326
+ // the case body isn't an inline object, so per-case fields can't be read,
327
+ // but the KEY is still a real case — preserve it (VSCode discovery needs it).
328
+ out.push({ key, line: lineOf(property.key ?? property.value) });
281
329
  continue;
330
+ }
282
331
  const meta = { key, line: lineOf(property.value) };
283
332
  const description = stringProperty(body, "description");
284
333
  if (description !== undefined)
@@ -311,13 +360,18 @@ function readCases(casesObj) {
311
360
  return out;
312
361
  }
313
362
  /**
314
- * AST replacement for the regex `extractContractCases`. Extracts
315
- * `contract.<protocol>("id", { endpoint, description, feature, cases })` exports
316
- * `ContractStaticMeta[]` (same fields the regex set: contract id/exportName/
317
- * line/endpoint/protocol/description/feature + per-case key/line/description/
318
- * expectStatus/deferred/requires/defaultRun/given). Returns [] on parse error.
363
+ * Extract `<factory>("id", { endpoint, description, feature, cases })` contract
364
+ * exports → `ContractStaticMeta[]` (contract id/exportName/line/endpoint/protocol/
365
+ * description/feature + per-case key/line/description/expectStatus/deferred/
366
+ * deprecated/requires/defaultRun/given). Returns [] on parse error.
367
+ *
368
+ * @param opts.broad - When true, duck-type ANY factory (scoped `.with()` /
369
+ * custom `*Api`) for discovery (VSCode). Default false: only the literal
370
+ * `contract.<protocol>(...)` form, so the CLI/scanner upload path keeps its
371
+ * deliberate "fail closed on scoped/custom forms" discipline.
319
372
  */
320
- export function extractContractCases(content) {
373
+ export function extractContractCases(content, opts) {
374
+ const broad = opts?.broad === true;
321
375
  let source;
322
376
  try {
323
377
  source = parseSource(content);
@@ -331,7 +385,7 @@ export function extractContractCases(content) {
331
385
  const init = declaration.init;
332
386
  if (!exportName || !init)
333
387
  return;
334
- const found = findContractCall(init);
388
+ const found = findContractCall(init, broad);
335
389
  if (!found)
336
390
  return;
337
391
  const args = found.call.arguments ?? [];
@@ -1 +1 @@
1
- {"version":3,"file":"extractor-ast.js","sourceRoot":"","sources":["../src/extractor-ast.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extractor-ast.js","sourceRoot":"","sources":["../src/extractor-ast.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@glubean/scanner",
3
- "version": "0.5.1",
3
+ "version": "0.5.2",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {