@stigmer/sdk 3.12.2 → 3.12.4

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.
Files changed (62) hide show
  1. package/__tests__/billing.test.js +36 -0
  2. package/__tests__/billing.test.js.map +1 -1
  3. package/__tests__/skill.test.d.ts +2 -0
  4. package/__tests__/skill.test.d.ts.map +1 -0
  5. package/__tests__/skill.test.js +117 -0
  6. package/__tests__/skill.test.js.map +1 -0
  7. package/billing.d.ts +27 -0
  8. package/billing.d.ts.map +1 -1
  9. package/billing.js +26 -1
  10. package/billing.js.map +1 -1
  11. package/errors.d.ts +1 -1
  12. package/errors.d.ts.map +1 -1
  13. package/errors.js +1 -1
  14. package/errors.js.map +1 -1
  15. package/execution/__tests__/tool-view.fixtures.test.js +23 -4
  16. package/execution/__tests__/tool-view.fixtures.test.js.map +1 -1
  17. package/execution/tool-view.d.ts +32 -0
  18. package/execution/tool-view.d.ts.map +1 -1
  19. package/execution/tool-view.js +45 -0
  20. package/execution/tool-view.js.map +1 -1
  21. package/gen/client.d.ts +1 -1
  22. package/gen/client.d.ts.map +1 -1
  23. package/gen/client.js +1 -1
  24. package/gen/client.js.map +1 -1
  25. package/gen/errors.d.ts +7 -0
  26. package/gen/errors.d.ts.map +1 -1
  27. package/gen/errors.js +9 -0
  28. package/gen/errors.js.map +1 -1
  29. package/gen/skill.d.ts +3 -1
  30. package/gen/skill.d.ts.map +1 -1
  31. package/gen/skill.js +16 -0
  32. package/gen/skill.js.map +1 -1
  33. package/index.d.ts +4 -2
  34. package/index.d.ts.map +1 -1
  35. package/index.js +5 -2
  36. package/index.js.map +1 -1
  37. package/package.json +2 -2
  38. package/provider-standing.d.ts +19 -0
  39. package/provider-standing.d.ts.map +1 -0
  40. package/provider-standing.js +31 -0
  41. package/provider-standing.js.map +1 -0
  42. package/skill.d.ts +51 -0
  43. package/skill.d.ts.map +1 -0
  44. package/skill.js +102 -0
  45. package/skill.js.map +1 -0
  46. package/src/__tests__/billing.test.ts +44 -0
  47. package/src/__tests__/skill.test.ts +150 -0
  48. package/src/billing.ts +44 -0
  49. package/src/errors.ts +1 -0
  50. package/src/execution/__tests__/tool-view.fixtures.test.ts +41 -4
  51. package/src/execution/tool-view.ts +52 -0
  52. package/src/gen/client.ts +1 -1
  53. package/src/gen/errors.ts +10 -0
  54. package/src/gen/skill.ts +13 -1
  55. package/src/index.ts +8 -0
  56. package/src/provider-standing.ts +37 -0
  57. package/src/skill.ts +125 -0
  58. package/src/stigmer.ts +12 -0
  59. package/stigmer.d.ts +10 -0
  60. package/stigmer.d.ts.map +1 -1
  61. package/stigmer.js +12 -0
  62. package/stigmer.js.map +1 -1
package/src/skill.ts ADDED
@@ -0,0 +1,125 @@
1
+ import { create } from "@bufbuild/protobuf";
2
+ import { Code } from "@connectrpc/connect";
3
+ import type { Transport } from "@connectrpc/connect";
4
+ import type { Skill } from "@stigmer/protos/ai/stigmer/agentic/skill/v1/api_pb";
5
+ import {
6
+ CreateSkillArtifactUploadUrlRequestSchema,
7
+ PushSkillRequestSchema,
8
+ type PushSkillRequest,
9
+ } from "@stigmer/protos/ai/stigmer/agentic/skill/v1/io_pb";
10
+ import { isUnimplemented, StigmerError } from "./gen/errors.js";
11
+ import { SkillClient } from "./gen/skill.js";
12
+
13
+ /**
14
+ * Largest artifact pushed inline in the gRPC request (#675). The server's
15
+ * transport cap is 10MB for the WHOLE message, so the artifact leaves 64KB
16
+ * of headroom for the request envelope (org, tag, provenance, framing).
17
+ * Mirrors the Go SDK's maxInlineArtifactBytes.
18
+ */
19
+ export const MAX_INLINE_ARTIFACT_BYTES = 10 * 1024 * 1024 - 64 * 1024;
20
+
21
+ /**
22
+ * Skill client with transport-aware push routing (stigmer#675 / #701).
23
+ *
24
+ * The gRPC transport caps messages at 10MB while skills may be up to 100MB,
25
+ * so `push` routes by size: small artifacts travel inline in the request
26
+ * (one round trip, unchanged behavior), larger ones are staged over HTTP
27
+ * via `createArtifactUploadUrl` — a capability URL, so no auth header —
28
+ * and pushed by reference. Callers never see the mechanics: `push(req)`
29
+ * simply works for any valid skill size.
30
+ *
31
+ * Every other method is the generated client's, inherited unchanged.
32
+ */
33
+ export class RoutedSkillClient extends SkillClient {
34
+ private readonly fetchImpl: typeof globalThis.fetch | undefined;
35
+
36
+ /**
37
+ * @param fetchImpl - Custom `fetch` for the staging PUT. Must be the same
38
+ * implementation the transport uses where the global one is restricted
39
+ * (the Tauri CSP/CORS case the `Stigmer.fetch` property documents).
40
+ */
41
+ constructor(transport: Transport, fetchImpl?: typeof globalThis.fetch) {
42
+ super(transport);
43
+ this.fetchImpl = fetchImpl;
44
+ }
45
+
46
+ /**
47
+ * Push a skill, routing the artifact by size (see the class comment).
48
+ *
49
+ * A request that already carries an `artifactUploadRef` is passed through
50
+ * untouched — the caller has done its own staging.
51
+ */
52
+ override async push(input: PushSkillRequest): Promise<Skill> {
53
+ if (input.artifactUploadRef !== "" || input.artifact.length <= MAX_INLINE_ARTIFACT_BYTES) {
54
+ return super.push(input);
55
+ }
56
+ return this.pushViaUploadUrl(input);
57
+ }
58
+
59
+ /**
60
+ * Stage the artifact over HTTP and push by reference:
61
+ * createArtifactUploadUrl → PUT bytes → push(artifactUploadRef).
62
+ */
63
+ private async pushViaUploadUrl(input: PushSkillRequest): Promise<Skill> {
64
+ let minted;
65
+ try {
66
+ minted = await super.createArtifactUploadUrl(
67
+ create(CreateSkillArtifactUploadUrlRequestSchema, {
68
+ org: input.org,
69
+ sizeBytes: BigInt(input.artifact.length),
70
+ }),
71
+ );
72
+ } catch (err) {
73
+ if (isUnimplemented(err)) {
74
+ // Pre-transfer-lane server: without staging, an artifact this size
75
+ // physically cannot travel. Say so instead of surfacing the raw
76
+ // transport error (the failure mode #675 reported).
77
+ throw new StigmerError(
78
+ "unknown",
79
+ `skill artifact is ${input.artifact.length} bytes, above the ~10MB gRPC message cap, ` +
80
+ "and this server does not support the HTTP artifact transfer lane — " +
81
+ "upgrade stigmer-server to push skills of this size",
82
+ Code.Unimplemented,
83
+ { cause: err },
84
+ );
85
+ }
86
+ throw err;
87
+ }
88
+
89
+ await this.putArtifact(minted.url, input.artifact);
90
+
91
+ // Same request, artifact traveling by reference instead of by value.
92
+ const byRef = create(PushSkillRequestSchema, {
93
+ ...input,
94
+ artifact: new Uint8Array(0),
95
+ artifactUploadRef: minted.artifactUploadRef,
96
+ });
97
+ return super.push(byRef);
98
+ }
99
+
100
+ /**
101
+ * PUT the artifact ZIP to the staging URL. The URL is the credential
102
+ * (capability semantics — a pre-signed R2 URL on cloud, the server's own
103
+ * transfer lane on OSS), so no auth header is attached.
104
+ */
105
+ private async putArtifact(url: string, artifact: Uint8Array): Promise<void> {
106
+ const doFetch = this.fetchImpl ?? globalThis.fetch;
107
+ const resp = await doFetch(url, {
108
+ method: "PUT",
109
+ // Both DOM and undici accept an ArrayBufferView body at runtime; the
110
+ // cast bridges TS 5.7's ArrayBufferLike generic, which BodyInit's
111
+ // typing predates. A Blob/Buffer wrapper would copy up to 100MB for
112
+ // nothing, and Buffer is Node-only while this client is isomorphic.
113
+ body: artifact as unknown as RequestInit["body"],
114
+ headers: { "content-type": "application/zip" },
115
+ });
116
+ if (!resp.ok) {
117
+ const detail = (await resp.text().catch(() => "")).slice(0, 512).trim();
118
+ throw new StigmerError(
119
+ "unknown",
120
+ `skill artifact upload rejected with HTTP ${resp.status}${detail === "" ? "" : `: ${detail}`}`,
121
+ Code.Unknown,
122
+ );
123
+ }
124
+ }
125
+ }
package/src/stigmer.ts CHANGED
@@ -5,7 +5,9 @@ import { GeneratedClient } from "./gen/client.js";
5
5
  import { GitHubClient } from "./github.js";
6
6
  import { ManifestClient } from "./manifest/index.js";
7
7
  import { PlatformClient } from "./platform.js";
8
+ import { ProviderStandingClient } from "./provider-standing.js";
8
9
  import { SearchClient } from "./search.js";
10
+ import { RoutedSkillClient } from "./skill.js";
9
11
  import { createStigmerTransport } from "./transport.js";
10
12
  import {
11
13
  validateConfig,
@@ -78,10 +80,18 @@ export class Stigmer extends GeneratedClient {
78
80
  readonly billing: BillingClient;
79
81
  /** Managed Cursor accounts (platform operators only). */
80
82
  readonly cursorAccounts: CursorAccountsClient;
83
+ /** Platform provider standing, read-only (platform operators only). */
84
+ readonly providerStanding: ProviderStandingClient;
81
85
  readonly platform: PlatformClient;
82
86
  readonly search: SearchClient;
83
87
  readonly github: GitHubClient;
84
88
  readonly manifest: ManifestClient;
89
+ /**
90
+ * Skill operations, with `push` routed by artifact size over the transfer
91
+ * lane (stigmer#675) — shadows the inherited generated client so
92
+ * `stigmer.skill.push` simply works for any valid skill size.
93
+ */
94
+ override readonly skill: RoutedSkillClient;
85
95
 
86
96
  private readonly _tokenProvider: TokenProvider;
87
97
 
@@ -101,10 +111,12 @@ export class Stigmer extends GeneratedClient {
101
111
  this.activity = new ActivityClient(transport);
102
112
  this.billing = new BillingClient(transport);
103
113
  this.cursorAccounts = new CursorAccountsClient(transport);
114
+ this.providerStanding = new ProviderStandingClient(transport);
104
115
  this.platform = new PlatformClient(transport);
105
116
  this.search = new SearchClient(transport);
106
117
  this.github = new GitHubClient(transport);
107
118
  this.manifest = new ManifestClient(transport);
119
+ this.skill = new RoutedSkillClient(transport, config.fetch);
108
120
 
109
121
  if (this.defaultExecutionTarget != null) {
110
122
  this._applyExecutionTargetDefaults();
package/stigmer.d.ts CHANGED
@@ -5,7 +5,9 @@ import { GeneratedClient } from "./gen/client.js";
5
5
  import { GitHubClient } from "./github.js";
6
6
  import { ManifestClient } from "./manifest/index.js";
7
7
  import { PlatformClient } from "./platform.js";
8
+ import { ProviderStandingClient } from "./provider-standing.js";
8
9
  import { SearchClient } from "./search.js";
10
+ import { RoutedSkillClient } from "./skill.js";
9
11
  import { type StigmerConfig } from "./config.js";
10
12
  import { ExecutionTarget } from "@stigmer/protos/ai/stigmer/agentic/session/v1/enum_pb";
11
13
  /**
@@ -67,10 +69,18 @@ export declare class Stigmer extends GeneratedClient {
67
69
  readonly billing: BillingClient;
68
70
  /** Managed Cursor accounts (platform operators only). */
69
71
  readonly cursorAccounts: CursorAccountsClient;
72
+ /** Platform provider standing, read-only (platform operators only). */
73
+ readonly providerStanding: ProviderStandingClient;
70
74
  readonly platform: PlatformClient;
71
75
  readonly search: SearchClient;
72
76
  readonly github: GitHubClient;
73
77
  readonly manifest: ManifestClient;
78
+ /**
79
+ * Skill operations, with `push` routed by artifact size over the transfer
80
+ * lane (stigmer#675) — shadows the inherited generated client so
81
+ * `stigmer.skill.push` simply works for any valid skill size.
82
+ */
83
+ readonly skill: RoutedSkillClient;
74
84
  private readonly _tokenProvider;
75
85
  constructor(config: StigmerConfig);
76
86
  /**
package/stigmer.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"stigmer.d.ts","sourceRoot":"","sources":["../src/stigmer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAEL,KAAK,aAAa,EAEnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAC;AAIxF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,OAAQ,SAAQ,eAAe;IAC1C;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB;;;;;;;;OAQG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,UAAU,CAAC,KAAK,GAAG,SAAS,CAAC;IAEpD;;;;;;;;;OASG;IACH,QAAQ,CAAC,sBAAsB,EAAE,eAAe,GAAG,SAAS,CAAC;IAE7D,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,yDAAyD;IACzD,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAElC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;gBAEnC,MAAM,EAAE,aAAa;IA0BjC;;;;;;;;;OASG;IACH,OAAO,CAAC,6BAA6B;IAoBrC;;;;;;;;;OASG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAGlD"}
1
+ {"version":3,"file":"stigmer.d.ts","sourceRoot":"","sources":["../src/stigmer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAEL,KAAK,aAAa,EAEnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAC;AAIxF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,OAAQ,SAAQ,eAAe;IAC1C;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB;;;;;;;;OAQG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,UAAU,CAAC,KAAK,GAAG,SAAS,CAAC;IAEpD;;;;;;;;;OASG;IACH,QAAQ,CAAC,sBAAsB,EAAE,eAAe,GAAG,SAAS,CAAC;IAE7D,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,yDAAyD;IACzD,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAC9C,uEAAuE;IACvE,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;IAClD,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC;;;;OAIG;IACH,SAAkB,KAAK,EAAE,iBAAiB,CAAC;IAE3C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;gBAEnC,MAAM,EAAE,aAAa;IA4BjC;;;;;;;;;OASG;IACH,OAAO,CAAC,6BAA6B;IAoBrC;;;;;;;;;OASG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAGlD"}
package/stigmer.js CHANGED
@@ -5,7 +5,9 @@ import { GeneratedClient } from "./gen/client.js";
5
5
  import { GitHubClient } from "./github.js";
6
6
  import { ManifestClient } from "./manifest/index.js";
7
7
  import { PlatformClient } from "./platform.js";
8
+ import { ProviderStandingClient } from "./provider-standing.js";
8
9
  import { SearchClient } from "./search.js";
10
+ import { RoutedSkillClient } from "./skill.js";
9
11
  import { createStigmerTransport } from "./transport.js";
10
12
  import { validateConfig, } from "./config.js";
11
13
  import { ExecutionTarget } from "@stigmer/protos/ai/stigmer/agentic/session/v1/enum_pb";
@@ -68,10 +70,18 @@ export class Stigmer extends GeneratedClient {
68
70
  billing;
69
71
  /** Managed Cursor accounts (platform operators only). */
70
72
  cursorAccounts;
73
+ /** Platform provider standing, read-only (platform operators only). */
74
+ providerStanding;
71
75
  platform;
72
76
  search;
73
77
  github;
74
78
  manifest;
79
+ /**
80
+ * Skill operations, with `push` routed by artifact size over the transfer
81
+ * lane (stigmer#675) — shadows the inherited generated client so
82
+ * `stigmer.skill.push` simply works for any valid skill size.
83
+ */
84
+ skill;
75
85
  _tokenProvider;
76
86
  constructor(config) {
77
87
  validateConfig(config);
@@ -86,10 +96,12 @@ export class Stigmer extends GeneratedClient {
86
96
  this.activity = new ActivityClient(transport);
87
97
  this.billing = new BillingClient(transport);
88
98
  this.cursorAccounts = new CursorAccountsClient(transport);
99
+ this.providerStanding = new ProviderStandingClient(transport);
89
100
  this.platform = new PlatformClient(transport);
90
101
  this.search = new SearchClient(transport);
91
102
  this.github = new GitHubClient(transport);
92
103
  this.manifest = new ManifestClient(transport);
104
+ this.skill = new RoutedSkillClient(transport, config.fetch);
93
105
  if (this.defaultExecutionTarget != null) {
94
106
  this._applyExecutionTargetDefaults();
95
107
  }
package/stigmer.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"stigmer.js","sourceRoot":"","sources":["../src/stigmer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EACL,cAAc,GAGf,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAC;AAIxF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,OAAO,OAAQ,SAAQ,eAAe;IAC1C;;;;;;OAMG;IACM,OAAO,CAAS;IAEzB;;;;;;;;OAQG;IACM,KAAK,CAAsC;IAEpD;;;;;;;;;OASG;IACM,sBAAsB,CAA8B;IAEpD,QAAQ,CAAiB;IACzB,OAAO,CAAgB;IAChC,yDAAyD;IAChD,cAAc,CAAuB;IACrC,QAAQ,CAAiB;IACzB,MAAM,CAAe;IACrB,MAAM,CAAe;IACrB,QAAQ,CAAiB;IAEjB,cAAc,CAAgB;IAE/C,YAAY,MAAqB;QAC/B,cAAc,CAAC,MAAM,CAAC,CAAC;QAEvB,MAAM,SAAS,GAAG,MAAM,CAAC,eAAe,IAAI,sBAAsB,CAAC,MAAM,CAAC,CAAC;QAC3E,KAAK,CAAC,SAAS,CAAC,CAAC;QAEjB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,sBAAsB,GAAG,iBAAiB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACxE,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,MAAM;YACjC,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAO;YACtB,CAAC,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAE1C,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,GAAG,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,cAAc,GAAG,IAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,GAAG,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;QAE9C,IAAI,IAAI,CAAC,sBAAsB,IAAI,IAAI,EAAE,CAAC;YACxC,IAAI,CAAC,6BAA6B,EAAE,CAAC;QACvC,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACK,6BAA6B;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAuB,CAAC;QAC5C,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/D,MAAM,mBAAmB,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CACzD,IAAI,CAAC,cAAc,CACpB,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,KAAK,EAAE,EAAE,CAC9B,iBAAiB,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QACxD,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,KAAK,EAAE,EAAE,CAC7B,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QACvD,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,KAAK,EAAE,EAAE,CACrC,mBAAmB,CACjB,KAAK,CAAC,WAAW;YACf,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE,mBAAmB,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE;YAC3E,CAAC,CAAC,KAAK,CACV,CAAC;IACN,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,iBAAiB;QACrB,OAAO,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;IACrC,CAAC;CACF;AAED,SAAS,iBAAiB,CACxB,GAA0B;IAE1B,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,OAAO;YACV,OAAO,eAAe,CAAC,KAAK,CAAC;QAC/B,KAAK,OAAO;YACV,OAAO,eAAe,CAAC,KAAK,CAAC;QAC/B;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAQ,EACR,MAAuB;IAEvB,IACE,KAAK,CAAC,eAAe,IAAI,IAAI;QAC7B,KAAK,CAAC,eAAe,KAAK,eAAe,CAAC,WAAW,EACrD,CAAC;QACD,OAAO,EAAE,GAAG,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC;IAC/C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"stigmer.js","sourceRoot":"","sources":["../src/stigmer.ts"],"names":[],"mappings":"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"}