@descryy/adapter-python 0.5.1 → 0.6.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/dist/adapter.d.ts CHANGED
@@ -19,7 +19,7 @@ export declare const ADAPTER_VERSION: string;
19
19
  export declare const DEFAULT_PYTHON_GLOBS: readonly ["**/*.py", "**/*.pyi"];
20
20
  /**
21
21
  * What EACH bound extractor individually supplies (DEC-419's additive fix,
22
- * `CapabilityMatrix.frameworkCapabilityMap`) — 11 extractors bound, and this
22
+ * `CapabilityMatrix.frameworkCapabilityMap`) — 12 extractors bound, and this
23
23
  * adapter's flat `frameworkCapabilities` below used to declare all 6
24
24
  * capabilities once for the whole adapter, which is the exact coarseness
25
25
  * DEC-419 measured for this adapter by name.
@@ -63,6 +63,17 @@ export interface PythonAdapterOptions {
63
63
  /** Override the interpreter. Mostly for tests and for a pinned virtualenv. */
64
64
  readonly python?: string;
65
65
  }
66
+ /**
67
+ * `myapp/templates/orders/index.html` -> `"orders/index.html"`;
68
+ * `templates/orders/index.html` -> `"orders/index.html"`. Django resolves a
69
+ * template NAME by searching every app's own `templates/` directory plus
70
+ * each project-level `DIRS` entry (`APP_DIRS`/`TEMPLATES` in settings.py) and
71
+ * joining the name onto whichever one contains it — so the name is always
72
+ * the path *underneath* a directory literally called `templates`, whichever
73
+ * one that turns out to be. `undefined` for a file with no `templates/`
74
+ * segment at all, or where `templates/` is the last segment (nothing under it).
75
+ */
76
+ export declare function djangoTemplateNameOf(repoRelativePath: string): string | undefined;
66
77
  /**
67
78
  * Read line-by-line rather than via `execFile`: `execFile` buffers all of
68
79
  * stdout and fails past `maxBuffer` with a generic error. On
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,OAAO,EAKL,KAAK,mBAAmB,EAExB,KAAK,eAAe,EAGpB,KAAK,eAAe,EAEpB,KAAK,UAAU,EAChB,MAAM,aAAa,CAAC;AAIrB,OAAO,EAA0B,QAAQ,EAAmB,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AAKhG,eAAO,MAAM,UAAU,mBAAmB,CAAC;AAC3C;;;;;;kCAMkC;AAClC,eAAO,MAAM,eAAe,EAAE,MAErB,CAAC;AACV,eAAO,MAAM,oBAAoB,kCAAmC,CAAC;AAMrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,eAAO,MAAM,kCAAkC,EAAE,QAAQ,CACvD,MAAM,CAAC,MAAM,EAAE,SAAS,mBAAmB,EAAE,CAAC,CAa/C,CAAC;AAUF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,eAAe,CAAC;IACzC,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAmBD;;;;;;;;GAQG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;CAAE,GACnC;IAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjF;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,8EAA8E;AAC9E,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAuBjE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAIxD;AA2HD,MAAM,WAAW,aAAc,SAAQ,eAAe;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,oBAAyB,GAAG,aAAa,CA2XrF;AAED,2DAA2D;AAC3D,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAW7D;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,OAAO,EAKL,KAAK,mBAAmB,EAExB,KAAK,eAAe,EAGpB,KAAK,eAAe,EAEpB,KAAK,UAAU,EAChB,MAAM,aAAa,CAAC;AAIrB,OAAO,EAA0B,QAAQ,EAAmB,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AAKhG,eAAO,MAAM,UAAU,mBAAmB,CAAC;AAC3C;;;;;;kCAMkC;AAClC,eAAO,MAAM,eAAe,EAAE,MAErB,CAAC;AACV,eAAO,MAAM,oBAAoB,kCAAmC,CAAC;AAarE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,eAAO,MAAM,kCAAkC,EAAE,QAAQ,CACvD,MAAM,CAAC,MAAM,EAAE,SAAS,mBAAmB,EAAE,CAAC,CAkC/C,CAAC;AAUF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,eAAe,CAAC;IACzC,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAsBD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKjF;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;CAAE,GACnC;IAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjF;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,8EAA8E;AAC9E,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAuBjE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAIxD;AA2HD,MAAM,WAAW,aAAc,SAAQ,eAAe;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,oBAAyB,GAAG,aAAa,CA4ZrF;AAED,2DAA2D;AAC3D,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAW7D;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
package/dist/adapter.js CHANGED
@@ -27,9 +27,15 @@ export const ADAPTER_VERSION = JSON.parse(readFileSync(new URL("../package.json"
27
27
  export const DEFAULT_PYTHON_GLOBS = ["**/*.py", "**/*.pyi"];
28
28
  const PRODUCED_BY = `${ADAPTER_ID}@${ADAPTER_VERSION}`;
29
29
  import { CLIENT_MODULES } from "./client.js";
30
+ /** `emitGrpc()`'s own deep-call trigger — every `grpcio`-generated
31
+ * `_pb2_grpc.py` file imports this, which is exactly the evidence needed to
32
+ * read its `<Service>Stub.__init__` body at full depth. See `extract.ts`'s
33
+ * `emitGrpc()` for the reader itself; this is the one piece of framework
34
+ * knowledge the Node side owns instead. */
35
+ const GRPC_MODULES = new Set(["grpc"]);
30
36
  /**
31
37
  * What EACH bound extractor individually supplies (DEC-419's additive fix,
32
- * `CapabilityMatrix.frameworkCapabilityMap`) — 11 extractors bound, and this
38
+ * `CapabilityMatrix.frameworkCapabilityMap`) — 12 extractors bound, and this
33
39
  * adapter's flat `frameworkCapabilities` below used to declare all 6
34
40
  * capabilities once for the whole adapter, which is the exact coarseness
35
41
  * DEC-419 measured for this adapter by name.
@@ -68,7 +74,13 @@ import { CLIENT_MODULES } from "./client.js";
68
74
  */
69
75
  export const SUPPLIED_CAPABILITIES_BY_FRAMEWORK = {
70
76
  sqlalchemy: ["orm-extractor"],
71
- django: ["route-extractor", "route-handler-extractor", "orm-extractor"],
77
+ // `server-page-extractor` (golden pattern 23): `render()`/`render_to_response()`/
78
+ // `TemplateResponse()` from `django.shortcuts`/`django.template.response`, plus
79
+ // a class-based view's own `template_name` — `extract.ts`'s Django page-
80
+ // rendering pass, verified by reading that pass, not inferred from route
81
+ // capability. Not on djangorestframework/fastapi/flask/odoo/strawberry: none
82
+ // of those readers touch a render/template call at all.
83
+ django: ["route-extractor", "route-handler-extractor", "orm-extractor", "server-page-extractor"],
72
84
  djangorestframework: ["route-extractor", "route-handler-extractor"],
73
85
  fastapi: ["route-extractor", "route-handler-extractor", "shape-direction-extractor"],
74
86
  flask: ["route-extractor", "route-handler-extractor"],
@@ -78,12 +90,44 @@ export const SUPPLIED_CAPABILITIES_BY_FRAMEWORK = {
78
90
  requests: ["client-call-extractor", "client-base-extractor"],
79
91
  httpx: ["client-call-extractor", "client-base-extractor"],
80
92
  aiohttp: ["client-call-extractor", "client-base-extractor"],
93
+ // `extract.ts`'s `emitGrpc()`: both boundary halves off `grpcio`'s own
94
+ // generated `_pb2_grpc.py` evidence — `add_<Service>Servicer_to_server(...)`
95
+ // plus the servicer class's own methods for the provider side,
96
+ // `<pkg>_pb2_grpc.<Service>Stub(channel)` then `.<Method>(...)` for the
97
+ // caller. No `client-base-extractor`: a gRPC call's target is the resolved
98
+ // service definition's own wire path, never a spliced base.
99
+ grpc: ["route-extractor", "route-handler-extractor", "client-call-extractor"],
100
+ // Celery (`celery.ts`, `DEC-NEXT-grpc-client-and-queue-endpoint-convention.md`):
101
+ // a `@app.task`/`@shared_task`-decorated function is both the queue's
102
+ // registration (route-extractor) and its own handler (route-handler-extractor
103
+ // — no separate resolution step, unlike an HTTP route's handler argument);
104
+ // `task.delay(...)`/`task.apply_async(...)` is the producer
105
+ // (client-call-extractor). No client-base-extractor: that capability is
106
+ // HTTP-specific (a call's base URL), which a queue topic has no analogue of.
107
+ celery: ["route-extractor", "route-handler-extractor", "client-call-extractor"],
81
108
  };
82
109
  // Resolved from `import.meta.dirname`, not `process.cwd()`: the engine's
83
110
  // cwd is the repo under analysis, not this package.
84
111
  const EXTRACTOR = join(import.meta.dirname, "extract.py");
85
112
  /** Interpreters to try, in order. `python` last: on many systems it is Python 2. */
86
113
  const INTERPRETERS = ["python3", "python"];
114
+ /**
115
+ * `myapp/templates/orders/index.html` -> `"orders/index.html"`;
116
+ * `templates/orders/index.html` -> `"orders/index.html"`. Django resolves a
117
+ * template NAME by searching every app's own `templates/` directory plus
118
+ * each project-level `DIRS` entry (`APP_DIRS`/`TEMPLATES` in settings.py) and
119
+ * joining the name onto whichever one contains it — so the name is always
120
+ * the path *underneath* a directory literally called `templates`, whichever
121
+ * one that turns out to be. `undefined` for a file with no `templates/`
122
+ * segment at all, or where `templates/` is the last segment (nothing under it).
123
+ */
124
+ export function djangoTemplateNameOf(repoRelativePath) {
125
+ const parts = repoRelativePath.replace(/\\/g, "/").split("/");
126
+ const index = parts.lastIndexOf("templates");
127
+ if (index === -1 || index === parts.length - 1)
128
+ return undefined;
129
+ return parts.slice(index + 1).join("/");
130
+ }
87
131
  /** Human-readable, and deliberately explicit that the graph is incomplete. */
88
132
  export function describeFailure(failure) {
89
133
  switch (failure.kind) {
@@ -320,6 +364,7 @@ export function createPythonAdapter(options = {}) {
320
364
  "DATABASE_TABLE",
321
365
  "DATABASE_COLUMN",
322
366
  "FUNCTION",
367
+ "PAGE",
323
368
  "TEST_CASE",
324
369
  "API_ROUTE",
325
370
  "API_ENDPOINT",
@@ -363,6 +408,8 @@ export function createPythonAdapter(options = {}) {
363
408
  "requests",
364
409
  "httpx",
365
410
  "aiohttp",
411
+ "grpc",
412
+ "celery",
366
413
  ],
367
414
  // The only adapter supplying all three: fastapi/flask/django/odoo
368
415
  // routes, DRF's router.register action table, sqlalchemy/django
@@ -420,6 +467,21 @@ export function createPythonAdapter(options = {}) {
420
467
  async prepare(ctx) {
421
468
  const files = filesUnder(ctx.root);
422
469
  const project = projectName(ctx.root.absolutePath);
470
+ // Golden pattern 23's evidence: every file this repository ships under
471
+ // a `templates/` directory (an app's own, or a project-level one) —
472
+ // read as its own glob for the same reason `discover()`'s own Python
473
+ // globs above are separate from it: a `.html` template is not Python
474
+ // syntax this adapter's `ast`-based extractor would parse, so it never
475
+ // enters `files`/`parsed` (`parseFiles()` only ever returns what a real
476
+ // parse produced, never a filesystem existence check masquerading as
477
+ // one). This reader only needs EXISTENCE, never a parse.
478
+ const templatePaths = discover(ctx.root.absolutePath, ["**/templates/**"], {}).filter((file) => !file.includes("/site-packages/"));
479
+ const templateFiles = new Map();
480
+ for (const file of [...templatePaths].sort()) {
481
+ const name = djangoTemplateNameOf(file);
482
+ if (name !== undefined && !templateFiles.has(name))
483
+ templateFiles.set(name, file);
484
+ }
423
485
  if (interpreter === undefined) {
424
486
  interpreter = await findInterpreter(options.python, ctx.signal);
425
487
  }
@@ -430,6 +492,7 @@ export function createPythonAdapter(options = {}) {
430
492
  parsed: undefined,
431
493
  reached: 0,
432
494
  packageName: project.name,
495
+ templateFiles,
433
496
  // No files is not a failure; no interpreter is.
434
497
  ...(interpreter === undefined && files.length > 0
435
498
  ? { failure: { kind: "no-interpreter" } }
@@ -444,7 +507,12 @@ export function createPythonAdapter(options = {}) {
444
507
  // wrong for the caller half (an HTTP call lives in a method). Which
445
508
  // packages need full depth is framework knowledge, kept here — the
446
509
  // extractor only knows how to record a call.
447
- deepCallModules: [...CLIENT_MODULES],
510
+ //
511
+ // `"grpc"` (GRPC_MODULES) is here for `emitGrpc()`'s stub-side read:
512
+ // `channel.unary_unary(...)` etc. sit inside `<Service>Stub.__init__`,
513
+ // one level below what `_call_record` captures unconditionally, and
514
+ // every generated `_pb2_grpc.py` file imports `grpc` to get there.
515
+ deepCallModules: [...CLIENT_MODULES, ...GRPC_MODULES],
448
516
  }), ctx.signal,
449
517
  // Measured: slowest of a 21-repo sweep was posthog at 25ms/file (462s
450
518
  // over 18,479 files); strapi 7.6ms, cal.com 4.9ms. Budget is 4x worst
@@ -477,6 +545,7 @@ export function createPythonAdapter(options = {}) {
477
545
  parsed: outcome.parsed,
478
546
  reached,
479
547
  packageName: project.name,
548
+ templateFiles,
480
549
  ...(density === undefined ? {} : { density }),
481
550
  ...(outcome.failure === undefined ? {} : { failure: outcome.failure }),
482
551
  };
@@ -539,15 +608,22 @@ export function createPythonAdapter(options = {}) {
539
608
  : describeFailure(active.failure),
540
609
  })
541
610
  : undefined;
611
+ const finalNodes = degraded?.nodes ?? extraction.nodes;
612
+ // Golden pattern 23: a PAGE's `file` is a real Django template, never
613
+ // one of the `**/*.py`/`**/*.pyi` globs `files` was built from — the IR
614
+ // boundary's `FILE_OUTSIDE_SOURCE_FILES` rejects a node whose file is
615
+ // not among `sourceFiles`, so every template that backs an emitted
616
+ // PAGE has to be added here explicitly.
617
+ const pageFiles = new Set(finalNodes.filter((node) => node.type === "PAGE" && node.file !== null).map((node) => node.file));
542
618
  return {
543
619
  repo: ctx.root.repo,
544
620
  ...(ctx.root.workspace === undefined ? {} : { workspace: ctx.root.workspace }),
545
621
  commitSha: ctx.root.commitSha,
546
622
  producedBy: PRODUCED_BY,
547
- sourceFiles: active.files.filter((f) => !skippedSet.has(f)),
623
+ sourceFiles: [...new Set([...active.files.filter((f) => !skippedSet.has(f)), ...pageFiles])],
548
624
  skippedFiles,
549
625
  reachedResolution: reached,
550
- nodes: degraded?.nodes ?? extraction.nodes,
626
+ nodes: finalNodes,
551
627
  edges: degraded?.edges ?? extraction.edges,
552
628
  unresolved: degraded?.unresolved ?? extraction.unresolved,
553
629
  };
@@ -571,6 +647,7 @@ export function createPythonAdapter(options = {}) {
571
647
  // Read from the project's own config — pytest's `test_*.py`/`Test*`/
572
648
  // `test_*` are defaults, not its definition, and can be overridden.
573
649
  pytest: readPytestConfig(active.root.absolutePath),
650
+ templateFiles: active.templateFiles,
574
651
  });
575
652
  }
576
653
  }
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Celery task producer/consumer extraction.
3
+ *
4
+ * Per `DEC-NEXT-grpc-client-and-queue-endpoint-convention.md`: a queue is an
5
+ * `API_ENDPOINT` with sentinel `method: "PUBLISH"`. A `@app.task`/
6
+ * `@shared_task`-decorated function IS the consumer registration — unlike
7
+ * kafkajs/BullMQ, Celery needs no separate subscribe/run correlation, because
8
+ * the decorated function itself is both the registration and the handler.
9
+ * `task.delay(...)`/`task.apply_async(...)` is the producer call.
10
+ *
11
+ * The queue name is the task's registered name: an explicit `name=` literal
12
+ * when the decorator was written as a call (`@app.task(name="orders.process")`),
13
+ * else the module-qualified name Celery itself derives (`<dotted module
14
+ * path>.<function name>`) — never guessed when `name=` is written but not a
15
+ * literal (rule 2: precision over recall).
16
+ *
17
+ * `extract.py` records syntactic form (a decorator's text, and — when it's a
18
+ * call — its structured `PyCall`) and names no framework; the framework
19
+ * decision (is this decorator Celery's, is this call a task dispatch) is
20
+ * taken here, same discipline `routes.ts`'s own module doc states for HTTP.
21
+ *
22
+ * Deliberately lighter-weight than `routes.ts`'s router-provenance table
23
+ * (which requires a receiver be traced back to a real `Flask()`/`FastAPI()`
24
+ * construction): `shared_task` is an unambiguous name with no realistic
25
+ * false-positive, and `<x>.task` is gated by the wiring in `extract.ts` on
26
+ * the *task's own file* importing `celery` before any decorator in it is
27
+ * read — a receiver named `self`/`executor` etc. would need that import
28
+ * AND a `.task` attribute AND a callable body shaped like a task to reach
29
+ * this reader at all. Noted as a rule-level tradeoff in the lane's report;
30
+ * a `Celery(...)`-construction check would be the stricter equivalent of
31
+ * `routes.ts`'s `ROUTER_CONSTRUCTORS`, not built this round.
32
+ */
33
+ /** The minimal shape this reader needs out of `extract.py`'s call record —
34
+ * duck-typed against `PyCall` in `extract.ts` rather than importing it, so
35
+ * this file has no dependency on that module's internals. */
36
+ export interface CeleryCallLike {
37
+ readonly callee: string | null;
38
+ readonly receiver: string | null;
39
+ readonly attribute: string | null;
40
+ readonly keywords: Readonly<Record<string, unknown>>;
41
+ readonly opaqueKeywords: readonly string[];
42
+ readonly scope: readonly string[];
43
+ readonly line: number;
44
+ }
45
+ /** The minimal shape this reader needs out of `extract.py`'s declaration record. */
46
+ export interface CeleryDeclarationLike {
47
+ readonly kind: "class" | "function";
48
+ readonly path: readonly string[];
49
+ readonly range: {
50
+ readonly startLine: number;
51
+ readonly endLine: number;
52
+ };
53
+ readonly decorators?: readonly (string | null)[];
54
+ readonly decoratorCalls?: readonly CeleryCallLike[];
55
+ }
56
+ export interface CeleryTaskCandidate {
57
+ readonly path: readonly string[];
58
+ readonly line: number;
59
+ /** `name="orders.process"` — a literal, so it wins over the derived name outright. */
60
+ readonly explicitName: string | undefined;
61
+ /** `name=` was written but isn't a literal — the topic is not derivable, and
62
+ * nothing about this task may be emitted (rule 2). */
63
+ readonly nameOpaque: boolean;
64
+ }
65
+ /**
66
+ * Every `@app.task`/`@shared_task`-decorated function in one file's already-
67
+ * parsed declarations. Callers gate this on the file importing `celery` at
68
+ * all (see `extract.ts`'s wiring) — this function itself only matches
69
+ * decorator text and reads a literal `name=` when the decorator is a call.
70
+ */
71
+ export declare function celeryTaskDeclarationsIn(declarations: readonly CeleryDeclarationLike[]): readonly CeleryTaskCandidate[];
72
+ /** Every `.delay(...)`/`.apply_async(...)` call with a named receiver — the
73
+ * candidate producer call sites. Whether the receiver actually names a
74
+ * Celery task is a cross-file resolution question the caller answers. */
75
+ export declare function celeryProducerCallsIn(calls: readonly CeleryCallLike[]): readonly CeleryCallLike[];
76
+ //# sourceMappingURL=celery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"celery.d.ts","sourceRoot":"","sources":["../src/celery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH;;8DAE8D;AAC9D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACrD,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,oFAAoF;AACpF,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IACzE,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IACjD,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;CACrD;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,sFAAsF;IACtF,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C;2DACuD;IACvD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAWD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,SAAS,qBAAqB,EAAE,GAC7C,SAAS,mBAAmB,EAAE,CAkBhC;AAED;;0EAE0E;AAC1E,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,cAAc,EAAE,GAAG,SAAS,cAAc,EAAE,CAEjG"}
package/dist/celery.js ADDED
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Celery task producer/consumer extraction.
3
+ *
4
+ * Per `DEC-NEXT-grpc-client-and-queue-endpoint-convention.md`: a queue is an
5
+ * `API_ENDPOINT` with sentinel `method: "PUBLISH"`. A `@app.task`/
6
+ * `@shared_task`-decorated function IS the consumer registration — unlike
7
+ * kafkajs/BullMQ, Celery needs no separate subscribe/run correlation, because
8
+ * the decorated function itself is both the registration and the handler.
9
+ * `task.delay(...)`/`task.apply_async(...)` is the producer call.
10
+ *
11
+ * The queue name is the task's registered name: an explicit `name=` literal
12
+ * when the decorator was written as a call (`@app.task(name="orders.process")`),
13
+ * else the module-qualified name Celery itself derives (`<dotted module
14
+ * path>.<function name>`) — never guessed when `name=` is written but not a
15
+ * literal (rule 2: precision over recall).
16
+ *
17
+ * `extract.py` records syntactic form (a decorator's text, and — when it's a
18
+ * call — its structured `PyCall`) and names no framework; the framework
19
+ * decision (is this decorator Celery's, is this call a task dispatch) is
20
+ * taken here, same discipline `routes.ts`'s own module doc states for HTTP.
21
+ *
22
+ * Deliberately lighter-weight than `routes.ts`'s router-provenance table
23
+ * (which requires a receiver be traced back to a real `Flask()`/`FastAPI()`
24
+ * construction): `shared_task` is an unambiguous name with no realistic
25
+ * false-positive, and `<x>.task` is gated by the wiring in `extract.ts` on
26
+ * the *task's own file* importing `celery` before any decorator in it is
27
+ * read — a receiver named `self`/`executor` etc. would need that import
28
+ * AND a `.task` attribute AND a callable body shaped like a task to reach
29
+ * this reader at all. Noted as a rule-level tradeoff in the lane's report;
30
+ * a `Celery(...)`-construction check would be the stricter equivalent of
31
+ * `routes.ts`'s `ROUTER_CONSTRUCTORS`, not built this round.
32
+ */
33
+ const PRODUCER_ATTRIBUTES = new Set(["delay", "apply_async"]);
34
+ /** `app.task` (any receiver) or exactly `shared_task` — bare or called, decorator text as written. */
35
+ function isTaskDecoratorText(text) {
36
+ if (text === null)
37
+ return false;
38
+ const head = text.includes("(") ? text.slice(0, text.indexOf("(")) : text;
39
+ return head === "shared_task" || head.endsWith(".task");
40
+ }
41
+ /**
42
+ * Every `@app.task`/`@shared_task`-decorated function in one file's already-
43
+ * parsed declarations. Callers gate this on the file importing `celery` at
44
+ * all (see `extract.ts`'s wiring) — this function itself only matches
45
+ * decorator text and reads a literal `name=` when the decorator is a call.
46
+ */
47
+ export function celeryTaskDeclarationsIn(declarations) {
48
+ const out = [];
49
+ for (const declaration of declarations) {
50
+ if (declaration.kind !== "function")
51
+ continue;
52
+ const decorators = declaration.decorators ?? [];
53
+ if (!decorators.some(isTaskDecoratorText))
54
+ continue;
55
+ const call = (declaration.decoratorCalls ?? []).find((c) => isTaskDecoratorText(c.callee));
56
+ const literalName = call?.keywords["name"];
57
+ const nameOpaque = call !== undefined && call.opaqueKeywords.includes("name");
58
+ out.push({
59
+ path: declaration.path,
60
+ line: declaration.range.startLine,
61
+ explicitName: typeof literalName === "string" ? literalName : undefined,
62
+ nameOpaque,
63
+ });
64
+ }
65
+ return out;
66
+ }
67
+ /** Every `.delay(...)`/`.apply_async(...)` call with a named receiver — the
68
+ * candidate producer call sites. Whether the receiver actually names a
69
+ * Celery task is a cross-file resolution question the caller answers. */
70
+ export function celeryProducerCallsIn(calls) {
71
+ return calls.filter((call) => call.receiver !== null && call.attribute !== null && PRODUCER_ATTRIBUTES.has(call.attribute));
72
+ }
73
+ //# sourceMappingURL=celery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"celery.js","sourceRoot":"","sources":["../src/celery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAkCH,MAAM,mBAAmB,GAAwB,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;AAEnF,sGAAsG;AACtG,SAAS,mBAAmB,CAAC,IAAmB;IAC9C,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1E,OAAO,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CACtC,YAA8C;IAE9C,MAAM,GAAG,GAA0B,EAAE,CAAC;IACtC,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,IAAI,WAAW,CAAC,IAAI,KAAK,UAAU;YAAE,SAAS;QAC9C,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,IAAI,EAAE,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC;YAAE,SAAS;QAEpD,MAAM,IAAI,GAAG,CAAC,WAAW,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3F,MAAM,WAAW,GAAG,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,UAAU,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9E,GAAG,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,SAAS;YACjC,YAAY,EAAE,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;YACvE,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;0EAE0E;AAC1E,MAAM,UAAU,qBAAqB,CAAC,KAAgC;IACpE,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AAC9H,CAAC"}
package/dist/extract.d.ts CHANGED
@@ -243,6 +243,15 @@ export interface ExtractInput {
243
243
  readonly parsed: PyResult;
244
244
  /** The repository's own collection rules. Omitted means pytest's defaults. */
245
245
  readonly pytest?: PytestConfig;
246
+ /** Django template name (`orders/index.html`, Django's own dotted-path
247
+ * vocabulary relative to a `templates/` directory) -> the real
248
+ * repo-relative file that backs it, for every template this repository
249
+ * ships under an app's own `<app>/templates/` or a project-level
250
+ * `templates/` directory — golden pattern 23's evidence. The IR boundary
251
+ * requires a PAGE's `file` to be a real, batch-scoped path
252
+ * (`MISSING_FILE`/`FILE_OUTSIDE_SOURCE_FILES` in `@descryy/ir`'s
253
+ * normaliser); this map is what supplies it. */
254
+ readonly templateFiles?: ReadonlyMap<string, string>;
246
255
  }
247
256
  export interface Extraction {
248
257
  readonly nodes: readonly IRNode[];
@@ -1 +1 @@
1
- {"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../src/extract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EAaL,KAAK,MAAM,EACX,KAAK,MAAM,EAGX,KAAK,eAAe,EACpB,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AAErB,OAAO,EAKL,KAAK,YAAY,EAClB,MAAM,aAAa,CAAC;AAQrB,OAAO,EAOL,KAAK,WAAW,EACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAiC,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AA2CtF,eAAO,MAAM,QAAQ,WAAW,CAAC;AAgJjC,UAAU,OAAO;IACf,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,UAAU,aAAa;IACrB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,EAAE,CAAC;IACzE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,UAAU,EAAE,OAAO,CAAA;KAAE,EAAE,CAAC;IAC9F,4FAA4F;IAC5F,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC7C,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IACjD,+FAA+F;IAC/F,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7C;AAED;;;;;;;;GAQG;AACH,mFAAmF;AACnF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC;IACjE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IAC9C,iEAAiE;IACjE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IAC9C;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,SAAS,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;IAC3D,QAAQ,CAAC,WAAW,EAAE,SAAS,OAAO,EAAE,CAAC;IACzC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACrD,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACxD,8DAA8D;IAC9D,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,oFAAoF;IACpF,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAC,CAAC,CAAC;IACpE,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,iEAAiE;IACjE,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,WAAW;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,iBAAiB,GAAG,YAAY,CAAC;IAClF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,eAAe;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,UAAU,iBAAiB;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,UAAU,OAAO;IACf,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AAED;;;;;;;GAOG;AACH,UAAU,UAAU;IAClB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,MAAM;IACd,QAAQ,CAAC,YAAY,EAAE,SAAS,aAAa,EAAE,CAAC;IAChD,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;IAC1C,QAAQ,CAAC,UAAU,EAAE,SAAS,WAAW,EAAE,CAAC;IAC5C,QAAQ,CAAC,cAAc,EAAE,SAAS,eAAe,EAAE,CAAC;IACpD,gHAAgH;IAChH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACzD,QAAQ,CAAC,SAAS,EAAE,SAAS,UAAU,EAAE,CAAC;IAC1C,gEAAgE;IAChE,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC;IACtC,iGAAiG;IACjG,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,iFAAiF;IACjF,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IACnD,oFAAoF;IACpF,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAC3C,2EAA2E;IAC3E,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IACjD,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;IACzC,qEAAqE;IACrE,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,wEAAwE;IACxE,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IACjD,iHAAiH;IACjH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACxD;;;;0EAIsE;IACtE,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5C;AAED,mFAAmF;AACnF,UAAU,SAAS;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,sFAAsF;AACtF,UAAU,aAAa;IACrB,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,aAAa,GAAG,aAAa,GAAG,UAAU,GAAG,QAAQ,CAAC;IACpF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IACpD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;GAQG;AACH,UAAU,mBAAmB;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,CAAC;CACtE;AAED,UAAU,UAAU;IAClB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,aAAa;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACjD,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACnD;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,SAAS,aAAa,EAAE,CAAC;CAC/C;AAuLD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAClG,UAAU,CAuCZ;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,UAAU,CAk8FvD"}
1
+ {"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../src/extract.ts"],"names":[],"mappings":"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"}