@mailwoman/api 9.3.0 → 10.0.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.
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ */
6
+
7
+ import { z } from "@hono/zod-openapi"
8
+ import type { AddressNode } from "@mailwoman/core/decoder"
9
+
10
+ /**
11
+ * OpenAPI representation of one decoded address-tree node.
12
+ *
13
+ * The decoder's recursive union cannot be derived by the OpenAPI generator, so the runtime wire contract is an open
14
+ * object while the `AddressNode` type documents its recursive shape.
15
+ */
16
+ export const AddressNodeSchema = z.custom<AddressNode>().openapi("AddressNode", {
17
+ type: "object",
18
+ additionalProperties: true,
19
+ description:
20
+ "A decoded address-tree node: a tag, its span, and its children. See `AddressNode` in `@mailwoman/core/decoder`.",
21
+ })
package/lib/app.ts CHANGED
@@ -9,10 +9,14 @@
9
9
  */
10
10
 
11
11
  import { OpenAPIHono } from "@hono/zod-openapi"
12
- import { attachOpenAPIDocs, engineHeaders, errorResponse, type OpenAPIDocInfo } from "@mailwoman/api-kit"
13
- import { readLocalJSONFile } from "@mailwoman/core/fs/readers"
12
+ import {
13
+ attachOpenAPIDocs,
14
+ engineHeaders,
15
+ errorResponse,
16
+ type OpenAPIDocInfo,
17
+ readServedDocumentInfo,
18
+ } from "@mailwoman/api-kit"
14
19
  import type { EngineStamp } from "@mailwoman/core/license"
15
- import { resolvePackagePath } from "@mailwoman/core/module/resolvers"
16
20
  import { bodyLimit } from "hono/body-limit"
17
21
  import { cors } from "hono/cors"
18
22
 
@@ -20,14 +24,6 @@ import type { MailwomanAPIEngine } from "#engine"
20
24
  import { DEFAULT_BATCH_MAX, registerMailwomanAPIRoutes } from "#routes"
21
25
  import type { GeocodeOutcomeLike } from "#schema"
22
26
 
23
- /**
24
- * This package's own manifest, read at load rather than imported as a module: a JSON import makes `tsc` copy the file
25
- * into `out/`, where it becomes the package scope for the compiled tree and breaks every `#` import in it.
26
- */
27
- const packageJson = await readLocalJSONFile<{ name: string; version: string; description: string }>(
28
- resolvePackagePath("@mailwoman/api", "package.json")
29
- )
30
-
31
27
  /**
32
28
  * 2 MiB — carried from the express server's `express.json({ limit: "2mb" })` (`mailwoman/server/index.ts`).
33
29
  */
@@ -77,9 +73,7 @@ function summarizeValidationError(error: { issues: Array<{ path: PropertyKey[];
77
73
  * {@link attachOpenAPIDocs}) uses — one source of truth, no risk of the two drifting.
78
74
  */
79
75
  export const MAILWOMAN_API_DOC_INFO: OpenAPIDocInfo = {
80
- title: packageJson.name,
81
- version: packageJson.version,
82
- description: packageJson.description,
76
+ ...(await readServedDocumentInfo(import.meta.url, "@mailwoman/api")),
83
77
  license: { name: "AGPL-3.0-only OR LicenseRef-Commercial", identifier: "AGPL-3.0-only" },
84
78
  contact: { name: "Sister Software", url: "https://mailwoman.ai" },
85
79
  servers: [
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ */
6
+
7
+ /**
8
+ * Longest accepted address input, in characters.
9
+ *
10
+ * The classifier reads a 128-piece SentencePiece window, roughly 330 Latin-script characters. The larger bound leaves
11
+ * room for denser scripts and form prefixes while refusing a body whose tail the parser would discard and whose
12
+ * preprocessing would occupy Node's request thread.
13
+ */
14
+ export const MAX_ADDRESS_LENGTH = 1024
package/lib/routes.ts CHANGED
@@ -26,15 +26,16 @@ import {
26
26
  recordTimed,
27
27
  stampedResponseSchema,
28
28
  withEngineStamp,
29
+ APIErrorSchema,
29
30
  } from "@mailwoman/api-kit"
31
+ import { type ComponentDict, formatAddress, type FormatAddressOptions } from "@mailwoman/codex/address-format"
32
+ import { canonicalKey } from "@mailwoman/codex/address-key"
33
+ import type { ComponentTag } from "@mailwoman/codex/component"
30
34
  import type { AddressTree } from "@mailwoman/core/decoder"
31
35
  import type { EngineStamp } from "@mailwoman/core/license"
32
- import type { ComponentTag } from "@mailwoman/core/types"
33
- import { canonicalKey, type ComponentDict, formatAddress, type FormatAddressOptions } from "@mailwoman/formatter"
34
36
 
35
37
  import type { MailwomanAPIEngine } from "#engine"
36
38
  import {
37
- APIErrorSchema,
38
39
  BatchRequestSchema,
39
40
  BatchResponseSchema,
40
41
  FormatRequestSchema,
@@ -90,7 +91,7 @@ const parseQueryParams = z.object({
90
91
  const parseResponses = {
91
92
  200: {
92
93
  description: "The tokenized input span + ranked solutions.",
93
- content: { "application/json": { schema: stampedResponseSchema(ParseOutcomeSchema) } },
94
+ content: { "application/json": { schema: stampedResponseSchema(ParseOutcomeSchema, "StampedParseOutcome") } },
94
95
  },
95
96
  400: errorContent("`address` is required."),
96
97
  501: errorContent("The backing engine method is not wired for this deployment."),
@@ -99,7 +100,7 @@ const parseResponses = {
99
100
  const geocodeResponses = {
100
101
  200: {
101
102
  description: "One geocode result (parse → resolve cascade), passed through from the engine verbatim.",
102
- content: { "application/json": { schema: stampedResponseSchema(GeocodeOutcomeSchema) } },
103
+ content: { "application/json": { schema: stampedResponseSchema(GeocodeOutcomeSchema, "StampedGeocodeOutcome") } },
103
104
  },
104
105
  400: errorContent("`address` is required."),
105
106
  503: errorContent("The geocoding engine is not wired for this deployment (dependencies missing)."),
@@ -108,7 +109,7 @@ const geocodeResponses = {
108
109
  const batchResponses = {
109
110
  200: {
110
111
  description: "One result per input address, in input order (per-row error isolation).",
111
- content: { "application/json": { schema: stampedResponseSchema(BatchResponseSchema) } },
112
+ content: { "application/json": { schema: stampedResponseSchema(BatchResponseSchema, "StampedBatchResponse") } },
112
113
  },
113
114
  400: errorContent("Body must be `{ addresses: string[] }`."),
114
115
  413: errorContent("`addresses.length` exceeds the configured batch cap."),
@@ -118,7 +119,7 @@ const batchResponses = {
118
119
  const resolveResponses = {
119
120
  200: {
120
121
  description: "The same tree, decorated in place with gazetteer coordinates + attribution.",
121
- content: { "application/json": { schema: stampedResponseSchema(ResolveResponseSchema) } },
122
+ content: { "application/json": { schema: stampedResponseSchema(ResolveResponseSchema, "StampedResolveResponse") } },
122
123
  },
123
124
  400: errorContent("Body must be `{ tree: AddressTree, opts? }`."),
124
125
  503: errorContent("The resolver is not wired for this deployment (dependencies missing)."),
@@ -137,7 +138,7 @@ const reloadResponses = {
137
138
  const formatResponses = {
138
139
  200: {
139
140
  description: "The rendered address string + the deterministic canonical match key.",
140
- content: { "application/json": { schema: stampedResponseSchema(FormatResponseSchema) } },
141
+ content: { "application/json": { schema: stampedResponseSchema(FormatResponseSchema, "StampedFormatResponse") } },
141
142
  },
142
143
  400: errorContent("Invalid request body."),
143
144
  }
package/lib/schema.ts CHANGED
@@ -17,24 +17,12 @@
17
17
  */
18
18
 
19
19
  import { z } from "@hono/zod-openapi"
20
- import type { AddressNode } from "@mailwoman/core/decoder"
21
20
  import type { DerivationProjection, Evidence } from "@mailwoman/evidence"
22
21
 
23
- export { APIErrorSchema } from "@mailwoman/api-kit"
22
+ import { AddressNodeSchema } from "#address-node-schema"
23
+ import { MAX_ADDRESS_LENGTH } from "#input-limits"
24
24
 
25
- /**
26
- * `POST /v1/parse` request body.
27
- */
28
- /**
29
- * One node of the decoded address tree. The decoder's `AddressNode` is a recursive union the OpenAPI generator cannot
30
- * derive a schema for on its own, so it is registered as an open object; the shape is documented by the type.
31
- */
32
- export const AddressNodeSchema = z.custom<AddressNode>().openapi("AddressNode", {
33
- type: "object",
34
- additionalProperties: true,
35
- description:
36
- "A decoded address-tree node: a tag, its span, and its children. See `AddressNode` in `@mailwoman/core/decoder`.",
37
- })
25
+ export { AddressNodeSchema } from "#address-node-schema"
38
26
 
39
27
  /**
40
28
  * The input register (Decision A / GTM B10): `fragmented` = the map-search register (evidence-bundle channels feed);
@@ -43,20 +31,7 @@ export const AddressNodeSchema = z.custom<AddressNode>().openapi("AddressNode",
43
31
  */
44
32
  export const InputModeSchema = z.enum(["fragmented", "formatted"]).openapi("InputMode")
45
33
 
46
- /**
47
- * Longest accepted `address`, in characters.
48
- *
49
- * Sized against what the model can actually read, not against a guess at abuse. The classifier's window is 128
50
- * SentencePiece pieces — roughly 330 characters of address text — and everything past it is truncated before inference,
51
- * so input beyond this bound cannot influence a result. The margin over that window leaves room for scripts that
52
- * tokenize denser than Latin, and for the department-and-division prefixes web forms concatenate.
53
- *
54
- * The bound exists because preprocessing is linear but not free: a 1 MB body costs ~1.7 s across normalize, query-shape
55
- * and the phrase grouper, and Node runs them on the one thread every other request is waiting on. A cap here is cheaper
56
- * than fairness plumbing, and rejecting is more honest than accepting a body whose tail the parser will silently
57
- * discard.
58
- */
59
- export const MAX_ADDRESS_LENGTH = 1024
34
+ export { MAX_ADDRESS_LENGTH } from "#input-limits"
60
35
 
61
36
  /**
62
37
  * `POST /v1/parse` request body.
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ */
6
+ import { z } from "@hono/zod-openapi";
7
+ import type { AddressNode } from "@mailwoman/core/decoder";
8
+ /**
9
+ * OpenAPI representation of one decoded address-tree node.
10
+ *
11
+ * The decoder's recursive union cannot be derived by the OpenAPI generator, so the runtime wire contract is an open
12
+ * object while the `AddressNode` type documents its recursive shape.
13
+ */
14
+ export declare const AddressNodeSchema: z.ZodCustom<AddressNode, AddressNode>;
15
+ //# sourceMappingURL=address-node-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address-node-schema.d.ts","sourceRoot":"","sources":["../lib/address-node-schema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAA;AACrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAE1D;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,uCAK5B,CAAA"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ */
6
+ import { z } from "@hono/zod-openapi";
7
+ /**
8
+ * OpenAPI representation of one decoded address-tree node.
9
+ *
10
+ * The decoder's recursive union cannot be derived by the OpenAPI generator, so the runtime wire contract is an open
11
+ * object while the `AddressNode` type documents its recursive shape.
12
+ */
13
+ export const AddressNodeSchema = z.custom().openapi("AddressNode", {
14
+ type: "object",
15
+ additionalProperties: true,
16
+ description: "A decoded address-tree node: a tag, its span, and its children. See `AddressNode` in `@mailwoman/core/decoder`.",
17
+ });
18
+ //# sourceMappingURL=address-node-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address-node-schema.js","sourceRoot":"","sources":["../lib/address-node-schema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAA;AAGrC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,EAAe,CAAC,OAAO,CAAC,aAAa,EAAE;IAC/E,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,IAAI;IAC1B,WAAW,EACV,iHAAiH;CAClH,CAAC,CAAA"}
package/out/app.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../lib/app.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAmD,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEzG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAK1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAEjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAejD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,CAAA;IAEd;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;CACpB;AAUD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,cAoBpC,CAAA;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,EAC5F,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC7B,OAAO,GAAE,mBAAwB,GAC/B,WAAW,CAyDb"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../lib/app.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAIN,KAAK,cAAc,EAEnB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAI1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAEjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAOjD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,CAAA;IAEd;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;CACpB;AAUD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,cAkBpC,CAAA;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,EAC5F,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC7B,OAAO,GAAE,mBAAwB,GAC/B,WAAW,CAyDb"}
package/out/app.js CHANGED
@@ -8,17 +8,10 @@
8
8
  * CLI wires the real parse/geocode/resolve stack (phase 4b); tests inject fixtures.
9
9
  */
10
10
  import { OpenAPIHono } from "@hono/zod-openapi";
11
- import { attachOpenAPIDocs, engineHeaders, errorResponse } from "@mailwoman/api-kit";
12
- import { readLocalJSONFile } from "@mailwoman/core/fs/readers";
13
- import { resolvePackagePath } from "@mailwoman/core/module/resolvers";
11
+ import { attachOpenAPIDocs, engineHeaders, errorResponse, readServedDocumentInfo, } from "@mailwoman/api-kit";
14
12
  import { bodyLimit } from "hono/body-limit";
15
13
  import { cors } from "hono/cors";
16
14
  import { DEFAULT_BATCH_MAX, registerMailwomanAPIRoutes } from "#routes";
17
- /**
18
- * This package's own manifest, read at load rather than imported as a module: a JSON import makes `tsc` copy the file
19
- * into `out/`, where it becomes the package scope for the compiled tree and breaks every `#` import in it.
20
- */
21
- const packageJson = await readLocalJSONFile(resolvePackagePath("@mailwoman/api", "package.json"));
22
15
  /**
23
16
  * 2 MiB — carried from the express server's `express.json({ limit: "2mb" })` (`mailwoman/server/index.ts`).
24
17
  */
@@ -36,9 +29,7 @@ function summarizeValidationError(error) {
36
29
  * {@link attachOpenAPIDocs}) uses — one source of truth, no risk of the two drifting.
37
30
  */
38
31
  export const MAILWOMAN_API_DOC_INFO = {
39
- title: packageJson.name,
40
- version: packageJson.version,
41
- description: packageJson.description,
32
+ ...(await readServedDocumentInfo(import.meta.url, "@mailwoman/api")),
42
33
  license: { name: "AGPL-3.0-only OR LicenseRef-Commercial", identifier: "AGPL-3.0-only" },
43
34
  contact: { name: "Sister Software", url: "https://mailwoman.ai" },
44
35
  servers: [
package/out/app.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../lib/app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../lib/app.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ */
6
+ /**
7
+ * Longest accepted address input, in characters.
8
+ *
9
+ * The classifier reads a 128-piece SentencePiece window, roughly 330 Latin-script characters. The larger bound leaves
10
+ * room for denser scripts and form prefixes while refusing a body whose tail the parser would discard and whose
11
+ * preprocessing would occupy Node's request thread.
12
+ */
13
+ export declare const MAX_ADDRESS_LENGTH = 1024;
14
+ //# sourceMappingURL=input-limits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-limits.d.ts","sourceRoot":"","sources":["../lib/input-limits.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,OAAO,CAAA"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ */
6
+ /**
7
+ * Longest accepted address input, in characters.
8
+ *
9
+ * The classifier reads a 128-piece SentencePiece window, roughly 330 Latin-script characters. The larger bound leaves
10
+ * room for denser scripts and form prefixes while refusing a body whose tail the parser would discard and whose
11
+ * preprocessing would occupy Node's request thread.
12
+ */
13
+ export const MAX_ADDRESS_LENGTH = 1024;
14
+ //# sourceMappingURL=input-limits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-limits.js","sourceRoot":"","sources":["../lib/input-limits.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../lib/routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAe,KAAK,WAAW,EAAK,MAAM,mBAAmB,CAAA;AASpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAI1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AACjD,OAAO,EAaN,KAAK,cAAc,EACnB,MAAM,SAAS,CAAA;AAEhB;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,MAAM,CAAA;AAIpC;;GAEG;AACH,MAAM,WAAW,iCAAiC;IACjD;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;CACpB;AA+LD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc,EAC5F,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC7B,OAAO,GAAE,iCAAsC,GAC7C,IAAI,CAwKN"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../lib/routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAe,KAAK,WAAW,EAAK,MAAM,mBAAmB,CAAA;AAapE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAE1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AACjD,OAAO,EAYN,KAAK,cAAc,EACnB,MAAM,SAAS,CAAA;AAEhB;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,MAAM,CAAA;AAIpC;;GAEG;AACH,MAAM,WAAW,iCAAiC;IACjD;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;CACpB;AA+LD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc,EAC5F,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC7B,OAAO,GAAE,iCAAsC,GAC7C,IAAI,CAwKN"}
package/out/routes.js CHANGED
@@ -19,9 +19,10 @@
19
19
  * `"invalid request body"`.
20
20
  */
21
21
  import { createRoute, z } from "@hono/zod-openapi";
22
- import { geocoderUnavailableError, metricsSnapshot, recordTimed, stampedResponseSchema, withEngineStamp, } from "@mailwoman/api-kit";
23
- import { canonicalKey, formatAddress } from "@mailwoman/formatter";
24
- import { APIErrorSchema, BatchRequestSchema, BatchResponseSchema, FormatRequestSchema, FormatResponseSchema, GeocodeOutcomeSchema, GeocodeRequestSchema, HealthResponseSchema, ParseOutcomeSchema, ParseRequestSchema, ResolveRequestSchema, ResolveResponseSchema, } from "#schema";
22
+ import { geocoderUnavailableError, metricsSnapshot, recordTimed, stampedResponseSchema, withEngineStamp, APIErrorSchema, } from "@mailwoman/api-kit";
23
+ import { formatAddress } from "@mailwoman/codex/address-format";
24
+ import { canonicalKey } from "@mailwoman/codex/address-key";
25
+ import { BatchRequestSchema, BatchResponseSchema, FormatRequestSchema, FormatResponseSchema, GeocodeOutcomeSchema, GeocodeRequestSchema, HealthResponseSchema, ParseOutcomeSchema, ParseRequestSchema, ResolveRequestSchema, ResolveResponseSchema, } from "#schema";
25
26
  /**
26
27
  * Default `POST /v1/batch` row cap when {@link RegisterMailwomanAPIRoutesOptions.batchMax} is omitted. This is the
27
28
  * standalone-engine default, not derived from env — `mailwoman serve` always passes the env-derived value explicitly
@@ -44,7 +45,7 @@ const parseQueryParams = z.object({
44
45
  const parseResponses = {
45
46
  200: {
46
47
  description: "The tokenized input span + ranked solutions.",
47
- content: { "application/json": { schema: stampedResponseSchema(ParseOutcomeSchema) } },
48
+ content: { "application/json": { schema: stampedResponseSchema(ParseOutcomeSchema, "StampedParseOutcome") } },
48
49
  },
49
50
  400: errorContent("`address` is required."),
50
51
  501: errorContent("The backing engine method is not wired for this deployment."),
@@ -52,7 +53,7 @@ const parseResponses = {
52
53
  const geocodeResponses = {
53
54
  200: {
54
55
  description: "One geocode result (parse → resolve cascade), passed through from the engine verbatim.",
55
- content: { "application/json": { schema: stampedResponseSchema(GeocodeOutcomeSchema) } },
56
+ content: { "application/json": { schema: stampedResponseSchema(GeocodeOutcomeSchema, "StampedGeocodeOutcome") } },
56
57
  },
57
58
  400: errorContent("`address` is required."),
58
59
  503: errorContent("The geocoding engine is not wired for this deployment (dependencies missing)."),
@@ -60,7 +61,7 @@ const geocodeResponses = {
60
61
  const batchResponses = {
61
62
  200: {
62
63
  description: "One result per input address, in input order (per-row error isolation).",
63
- content: { "application/json": { schema: stampedResponseSchema(BatchResponseSchema) } },
64
+ content: { "application/json": { schema: stampedResponseSchema(BatchResponseSchema, "StampedBatchResponse") } },
64
65
  },
65
66
  400: errorContent("Body must be `{ addresses: string[] }`."),
66
67
  413: errorContent("`addresses.length` exceeds the configured batch cap."),
@@ -69,7 +70,7 @@ const batchResponses = {
69
70
  const resolveResponses = {
70
71
  200: {
71
72
  description: "The same tree, decorated in place with gazetteer coordinates + attribution.",
72
- content: { "application/json": { schema: stampedResponseSchema(ResolveResponseSchema) } },
73
+ content: { "application/json": { schema: stampedResponseSchema(ResolveResponseSchema, "StampedResolveResponse") } },
73
74
  },
74
75
  400: errorContent("Body must be `{ tree: AddressTree, opts? }`."),
75
76
  503: errorContent("The resolver is not wired for this deployment (dependencies missing)."),
@@ -86,7 +87,7 @@ const reloadResponses = {
86
87
  const formatResponses = {
87
88
  200: {
88
89
  description: "The rendered address string + the deterministic canonical match key.",
89
- content: { "application/json": { schema: stampedResponseSchema(FormatResponseSchema) } },
90
+ content: { "application/json": { schema: stampedResponseSchema(FormatResponseSchema, "StampedFormatResponse") } },
90
91
  },
91
92
  400: errorContent("Invalid request body."),
92
93
  };
package/out/routes.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../lib/routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,WAAW,EAAoB,CAAC,EAAE,MAAM,mBAAmB,CAAA;AACpE,OAAO,EACN,wBAAwB,EACxB,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,eAAe,GACf,MAAM,oBAAoB,CAAA;AAI3B,OAAO,EAAE,YAAY,EAAsB,aAAa,EAA6B,MAAM,sBAAsB,CAAA;AAGjH,OAAO,EACN,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,GAErB,MAAM,SAAS,CAAA;AAEhB;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAA;AAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;AAiB5B,MAAM,YAAY,GAAG,CAAC,WAAmB,EAAE,EAAE,CAAC,CAAC;IAC9C,WAAW;IACX,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE;CAC3D,CAAC,CAAA;AAEF,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,uBAAuB,EAAE,CAAC;IAChF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,0CAA0C,EAAE,CAAC;IACjG,UAAU,EAAE,CAAC;SACX,IAAI,CAAC,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;SACjC,QAAQ,EAAE;SACV,OAAO,CAAC,EAAE,WAAW,EAAE,sEAAsE,EAAE,CAAC;CAClG,CAAC,CAAA;AAEF,MAAM,cAAc,GAAG;IACtB,GAAG,EAAE;QACJ,WAAW,EAAE,8CAA8C;QAC3D,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,qBAAqB,CAAC,kBAAkB,CAAC,EAAE,EAAE;KACtF;IACD,GAAG,EAAE,YAAY,CAAC,wBAAwB,CAAC;IAC3C,GAAG,EAAE,YAAY,CAAC,6DAA6D,CAAC;CAChF,CAAA;AAED,MAAM,gBAAgB,GAAG;IACxB,GAAG,EAAE;QACJ,WAAW,EAAE,wFAAwF;QACrG,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,qBAAqB,CAAC,oBAAoB,CAAC,EAAE,EAAE;KACxF;IACD,GAAG,EAAE,YAAY,CAAC,wBAAwB,CAAC;IAC3C,GAAG,EAAE,YAAY,CAAC,+EAA+E,CAAC;CAClG,CAAA;AAED,MAAM,cAAc,GAAG;IACtB,GAAG,EAAE;QACJ,WAAW,EAAE,yEAAyE;QACtF,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,qBAAqB,CAAC,mBAAmB,CAAC,EAAE,EAAE;KACvF;IACD,GAAG,EAAE,YAAY,CAAC,yCAAyC,CAAC;IAC5D,GAAG,EAAE,YAAY,CAAC,sDAAsD,CAAC;IACzE,GAAG,EAAE,YAAY,CAAC,+EAA+E,CAAC;CAClG,CAAA;AAED,MAAM,gBAAgB,GAAG;IACxB,GAAG,EAAE;QACJ,WAAW,EAAE,6EAA6E;QAC1F,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,qBAAqB,CAAC,qBAAqB,CAAC,EAAE,EAAE;KACzF;IACD,GAAG,EAAE,YAAY,CAAC,8CAA8C,CAAC;IACjE,GAAG,EAAE,YAAY,CAAC,uEAAuE,CAAC;CAC1F,CAAA;AAED,MAAM,eAAe,GAAG;IACvB,GAAG,EAAE;QACJ,WAAW,EAAE,qEAAqE;QAClF,OAAO,EAAE;YACR,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE;SAC/F;KACD;IACD,GAAG,EAAE,YAAY,CAAC,+EAA+E,CAAC;CAClG,CAAA;AAED,MAAM,eAAe,GAAG;IACvB,GAAG,EAAE;QACJ,WAAW,EAAE,sEAAsE;QACnF,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,qBAAqB,CAAC,oBAAoB,CAAC,EAAE,EAAE;KACxF;IACD,GAAG,EAAE,YAAY,CAAC,uBAAuB,CAAC;CAC1C,CAAA;AAED,MAAM,eAAe,GAAG;IACvB,GAAG,EAAE;QACJ,WAAW,EAAE,uFAAuF;QACpG,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE;KACjE;CACD,CAAA;AAED,MAAM,gBAAgB,GAAG;IACxB,GAAG,EAAE;QACJ,WAAW,EAAE,sFAAsF;QACnG,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE;KAC9D;CACD,CAAA;AAED,MAAM,aAAa,GAAG,WAAW,CAAC;IACjC,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,UAAU;IACvB,OAAO,EAAE,iCAAiC;IAC1C,IAAI,EAAE,CAAC,SAAS,CAAC;IACjB,OAAO,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE;IACpC,SAAS,EAAE,cAAc;CACzB,CAAC,CAAA;AAEF,MAAM,cAAc,GAAG,WAAW,CAAC;IAClC,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,WAAW;IACxB,OAAO,EAAE,8BAA8B;IACvC,IAAI,EAAE,CAAC,SAAS,CAAC;IACjB,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;IACtG,SAAS,EAAE,cAAc;CACzB,CAAC,CAAA;AAEF,MAAM,YAAY,GAAG,WAAW,CAAC;IAChC,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,SAAS;IACtB,OAAO,EAAE,mCAAmC;IAC5C,IAAI,EAAE,CAAC,WAAW,CAAC;IACnB,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;IACxG,SAAS,EAAE,gBAAgB;CAC3B,CAAC,CAAA;AAEF,MAAM,UAAU,GAAG,WAAW,CAAC;IAC9B,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,OAAO;IACpB,OAAO,EAAE,8BAA8B;IACvC,IAAI,EAAE,CAAC,WAAW,CAAC;IACnB,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;IACtG,SAAS,EAAE,cAAc;CACzB,CAAC,CAAA;AAEF,MAAM,YAAY,GAAG,WAAW,CAAC;IAChC,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,SAAS;IACtB,OAAO,EAAE,+DAA+D;IACxE,IAAI,EAAE,CAAC,WAAW,CAAC;IACnB,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;IACxG,SAAS,EAAE,gBAAgB;CAC3B,CAAC,CAAA;AAEF,MAAM,WAAW,GAAG,WAAW,CAAC;IAC/B,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,QAAQ;IACrB,OAAO,EAAE,gEAAgE;IACzE,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,SAAS,EAAE,eAAe;CAC1B,CAAC,CAAA;AAEF,MAAM,WAAW,GAAG,WAAW,CAAC;IAC/B,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,QAAQ;IACrB,OAAO,EAAE,6DAA6D;IACtE,IAAI,EAAE,CAAC,YAAY,CAAC;IACpB,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;IACvG,SAAS,EAAE,eAAe;CAC1B,CAAC,CAAA;AAEF,MAAM,WAAW,GAAG,WAAW,CAAC;IAC/B,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,QAAQ;IACrB,OAAO,EAAE,0BAA0B;IACnC,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,SAAS,EAAE,eAAe;CAC1B,CAAC,CAAA;AAEF,MAAM,YAAY,GAAG,WAAW,CAAC;IAChC,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,UAAU;IAChB,WAAW,EAAE,SAAS;IACtB,OAAO,EAAE,oCAAoC;IAC7C,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,SAAS,EAAE,gBAAgB;CAC3B,CAAC,CAAA;AAEF;;;;GAIG;AACH,SAAS,eAAe,CAAC,UAA6C;IACrE,MAAM,GAAG,GAAkB,EAAE,CAAA;IAE7B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACvD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QAErD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACzB,GAAG,CAAC,GAAmB,CAAC,GAAG,KAAK,CAAA;QACjC,CAAC;IACF,CAAC;IAED,OAAO,GAAG,CAAA;AACX,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CACzC,GAAgB,EAChB,MAA6B,EAC7B,UAA6C,EAAE;IAE/C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,iBAAiB,CAAA;IACtD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAA;IAE5B,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACtC,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,EAAE,GAAG,CAAC,CAAA;QAEzE,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAA;QAE9C,IAAI,CAAC,OAAO;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,GAAG,CAAC,CAAA;QAClE,MAAM,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,MAAM,CAAA;QAC7C,MAAM,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;QAC9C,MAAM,SAAS,GAAG,YAAY,KAAK,YAAY,IAAI,YAAY,KAAK,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAA;QAC1G,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;QAEjE,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IAEF,GAAG,CAAC,OAAO,CACV,cAAc,EACd,KAAK,EAAE,CAAC,EAAE,EAAE;QACX,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,EAAE,GAAG,CAAC,CAAA;QACvD,CAAC;QAED,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAC1D,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;QAE9B,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,GAAG,CAAC,CAAA;QACrD,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAA;QAE7F,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,CAAA;IACpD,CAAC,EACD,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACb,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,GAAG,CAAC,CAAA;QAEzE,OAAO,SAAS,CAAA;IACjB,CAAC,CACD,CAAA;IAED,GAAG,CAAC,OAAO,CACV,YAAY,EACZ,KAAK,EAAE,CAAC,EAAE,EAAE;QACX,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QACnD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;QAE9B,IAAI,CAAC,OAAO;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,GAAG,CAAC,CAAA;QAClE,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;QAE5B,OAAO,MAAM;aACX,OAAO,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;aAC3C,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YACjB,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,CAAC,CAAA;YAE/E,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,OAAyB,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,CAAA;QACtE,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAChB,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,CAAA;YAE5C,MAAM,KAAK,CAAA;QACZ,CAAC,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACb,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,GAAG,CAAC,CAAA;QACrD,CAAC;QAED,OAAO,SAAS,CAAA;IACjB,CAAC,CACD,CAAA;IAED,GAAG,CAAC,OAAO,CACV,UAAU,EACV,KAAK,EAAE,CAAC,EAAE,EAAE;QACX,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAErD,IAAI,CAAC,SAAS,CAAC,MAAM;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,CAAA;QAElF,IAAI,SAAS,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;YACjC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,SAAS,CAAC,MAAM,MAAM,QAAQ,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;QACpF,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAAA;QACnC,CAAC;QAED,6FAA6F;QAC7F,sEAAsE;QACtE,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;QAE5B,IAAI,CAAC;YACJ,iGAAiG;YACjG,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,IAAI,WAAW,EAAE,CAAC,CAAA;YACvF,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,CAAA;YAE5C,4FAA4F;YAC5F,oGAAoG;YACpG,4BAA4B;YAC5B,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,OAA8C,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,CAAA;QAC3F,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,CAAA;YAC5C,MAAM,KAAK,CAAA;QACZ,CAAC;IACF,CAAC,EACD,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACb,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,sCAAsC,EAAE,EAAE,GAAG,CAAC,CAAA;QAE1F,OAAO,SAAS,CAAA;IACjB,CAAC,CACD,CAAA;IAED,GAAG,CAAC,OAAO,CACV,YAAY;IACZ,gGAAgG;IAChG,8FAA8F;IAC9F,0EAA0E;IAC1E,KAAK,EAAE,CAAC,EAAE,EAAE;QACX,iGAAiG;QACjG,sCAAsC;QACtC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YACzB,OAAO,wBAAwB,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;QAC/C,CAAC;QAED,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAE1C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,IAAmB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAA;QAEzE,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,CAAA;IACpD,CAAC,EACD,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACb,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,2CAA2C,EAAE,EAAE,GAAG,CAAC,CAAA;QAE/F,OAAO,SAAS,CAAA;IACjB,CAAC,CACD,CAAA;IAED,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACpC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACpB,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,MAAM,EAAE,CAAA;QAErC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IAC5B,CAAC,CAAC,CAAA;IAEF,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE;QAC9B,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAC3E,MAAM,IAAI,GAAG,eAAe,CAAC,UAAU,CAAC,CAAA;QACxC,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,aAAiD,CAAC,CAAA;QAEjG,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,CAAA;IAC5F,CAAC,CAAC,CAAA;IAEF,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACpC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAA;QAEjE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;IAC5F,CAAC,CAAC,CAAA;IAEF,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,GAAG,CAAC,CAAC,CAAA;AACjE,CAAC"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../lib/routes.ts"],"names":[],"mappings":"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"}