@ikenga/contract 0.6.0 → 0.9.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/README.md +56 -11
- package/dist/canvas/Canvas.d.ts +7 -0
- package/dist/canvas/Canvas.d.ts.map +1 -0
- package/dist/canvas/Canvas.js +115 -0
- package/dist/canvas/Canvas.js.map +1 -0
- package/dist/canvas/canvas.css +579 -0
- package/dist/canvas/index.d.ts +7 -0
- package/dist/canvas/index.d.ts.map +1 -0
- package/dist/canvas/index.js +4 -0
- package/dist/canvas/index.js.map +1 -0
- package/dist/canvas/types.d.ts +45 -0
- package/dist/canvas/types.d.ts.map +1 -0
- package/dist/canvas/types.js +2 -0
- package/dist/canvas/types.js.map +1 -0
- package/dist/canvas/use-drag-snap.d.ts +33 -0
- package/dist/canvas/use-drag-snap.d.ts.map +1 -0
- package/dist/canvas/use-drag-snap.js +73 -0
- package/dist/canvas/use-drag-snap.js.map +1 -0
- package/dist/canvas/use-pan-zoom.d.ts +32 -0
- package/dist/canvas/use-pan-zoom.d.ts.map +1 -0
- package/dist/canvas/use-pan-zoom.js +161 -0
- package/dist/canvas/use-pan-zoom.js.map +1 -0
- package/dist/engine/index.d.ts +2 -0
- package/dist/engine/index.d.ts.map +1 -1
- package/dist/engine/index.js +2 -0
- package/dist/engine/index.js.map +1 -1
- package/dist/engine/portability.d.ts +113 -0
- package/dist/engine/portability.d.ts.map +1 -0
- package/dist/engine/portability.js +17 -0
- package/dist/engine/portability.js.map +1 -0
- package/dist/engine/subagent-transcoder.d.ts +24 -0
- package/dist/engine/subagent-transcoder.d.ts.map +1 -0
- package/dist/engine/subagent-transcoder.js +341 -0
- package/dist/engine/subagent-transcoder.js.map +1 -0
- package/dist/engine.d.ts +574 -0
- package/dist/engine.d.ts.map +1 -0
- package/dist/engine.js +85 -0
- package/dist/engine.js.map +1 -0
- package/dist/host-verbs.d.ts +194 -0
- package/dist/host-verbs.d.ts.map +1 -0
- package/dist/host-verbs.js +15 -0
- package/dist/host-verbs.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/manifest.d.ts +376 -19
- package/dist/manifest.d.ts.map +1 -1
- package/dist/manifest.js +95 -4
- package/dist/manifest.js.map +1 -1
- package/dist/registry.d.ts +364 -36
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +9 -0
- package/dist/registry.js.map +1 -1
- package/dist/scopes.js +1 -1
- package/dist/scopes.js.map +1 -1
- package/package.json +36 -10
- package/schemas/registry/index-v1.json +11 -0
- package/src/canvas/Canvas.tsx +161 -0
- package/src/canvas/canvas.css +579 -0
- package/src/canvas/index.ts +14 -0
- package/src/canvas/types.ts +48 -0
- package/src/canvas/use-drag-snap.ts +107 -0
- package/src/canvas/use-pan-zoom.ts +211 -0
- package/src/engine/index.ts +2 -0
- package/src/engine/portability.ts +123 -0
- package/src/engine/subagent-transcoder.test.ts +306 -0
- package/src/engine/subagent-transcoder.ts +333 -0
- package/src/host-verbs.ts +207 -0
- package/src/index.ts +1 -0
- package/src/manifest.test.ts +97 -0
- package/src/manifest.ts +109 -4
- package/src/registry.ts +9 -0
- package/src/scopes.ts +1 -1
package/dist/manifest.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
export declare const IKENGA_API_VERSION:
|
|
2
|
+
export declare const IKENGA_API_VERSION: 2;
|
|
3
3
|
export declare const IKENGA_API_MIN_SUPPORTED: 1;
|
|
4
4
|
export declare const AuthorSchema: z.ZodObject<{
|
|
5
5
|
name: z.ZodString;
|
|
@@ -76,6 +76,12 @@ export declare const PermissionsSchema: z.ZodDefault<z.ZodObject<{
|
|
|
76
76
|
'fs.read': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
77
77
|
'fs.write': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
78
78
|
net: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
79
|
+
/** Local SQLite table patterns; validated against tables.json at install time.
|
|
80
|
+
* For api ≥ 2 manifests. Replaces `supabase.tables`. */
|
|
81
|
+
'sqlite.tables': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
82
|
+
/** @deprecated api=1 compat alias for `sqlite.tables`. New manifests should
|
|
83
|
+
* use `sqlite.tables` instead. Kept so ikenga_api="1" manifests parse
|
|
84
|
+
* without errors during the transition window. */
|
|
79
85
|
'supabase.tables': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
80
86
|
'vault.keys': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
81
87
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -83,6 +89,7 @@ export declare const PermissionsSchema: z.ZodDefault<z.ZodObject<{
|
|
|
83
89
|
'fs.read': string[];
|
|
84
90
|
'fs.write': string[];
|
|
85
91
|
net: string[];
|
|
92
|
+
'sqlite.tables': string[];
|
|
86
93
|
'supabase.tables': string[];
|
|
87
94
|
'vault.keys': string[];
|
|
88
95
|
}, {
|
|
@@ -90,6 +97,7 @@ export declare const PermissionsSchema: z.ZodDefault<z.ZodObject<{
|
|
|
90
97
|
'fs.read'?: string[] | undefined;
|
|
91
98
|
'fs.write'?: string[] | undefined;
|
|
92
99
|
net?: string[] | undefined;
|
|
100
|
+
'sqlite.tables'?: string[] | undefined;
|
|
93
101
|
'supabase.tables'?: string[] | undefined;
|
|
94
102
|
'vault.keys'?: string[] | undefined;
|
|
95
103
|
}>>;
|
|
@@ -397,6 +405,56 @@ export declare const CronEntrySchema: z.ZodObject<{
|
|
|
397
405
|
expr: string;
|
|
398
406
|
env_from_settings?: string[] | undefined;
|
|
399
407
|
}>;
|
|
408
|
+
/** Local SQLite capability (api ≥ 2). Threads the logical db name into the
|
|
409
|
+
* iframe host context so the pkg can call `db_query` without hard-coding it.
|
|
410
|
+
* Mirrors `SqliteCapability` in `shell/src-tauri/src/pkg/manifest.rs`. */
|
|
411
|
+
export declare const SqliteCapabilitySchema: z.ZodObject<{
|
|
412
|
+
/** Logical DB name. Currently only `"ikenga.local"` is supported.
|
|
413
|
+
* Defaults to `"ikenga.local"` when omitted. */
|
|
414
|
+
db: z.ZodDefault<z.ZodString>;
|
|
415
|
+
}, "strip", z.ZodTypeAny, {
|
|
416
|
+
db: string;
|
|
417
|
+
}, {
|
|
418
|
+
db?: string | undefined;
|
|
419
|
+
}>;
|
|
420
|
+
export type SqliteCapability = z.infer<typeof SqliteCapabilitySchema>;
|
|
421
|
+
/** Supabase capability. Mirrors `SupabaseCapability` in
|
|
422
|
+
* `shell/src-tauri/src/pkg/manifest.rs`. */
|
|
423
|
+
export declare const SupabaseCapabilitySchema: z.ZodObject<{
|
|
424
|
+
/** When true, mint fails if the Supabase vault keys are missing; when
|
|
425
|
+
* false/omitted, missing keys surface as `supabase: null` in host context. */
|
|
426
|
+
required: z.ZodDefault<z.ZodBoolean>;
|
|
427
|
+
}, "strip", z.ZodTypeAny, {
|
|
428
|
+
required: boolean;
|
|
429
|
+
}, {
|
|
430
|
+
required?: boolean | undefined;
|
|
431
|
+
}>;
|
|
432
|
+
export type SupabaseCapability = z.infer<typeof SupabaseCapabilitySchema>;
|
|
433
|
+
/** Native child-webview capability. Mirrors `WebviewCapability` in
|
|
434
|
+
* `shell/src-tauri/src/pkg/manifest.rs`. */
|
|
435
|
+
export declare const WebviewCapabilitySchema: z.ZodObject<{
|
|
436
|
+
/** Whether this pkg may create child webviews via the kernel. Required for
|
|
437
|
+
* any `ui.routes[]` entry with `kind = "webview"` to mount. */
|
|
438
|
+
child_webviews: z.ZodDefault<z.ZodBoolean>;
|
|
439
|
+
/** Named cookie/data partitions; empty = the implicit "default" partition. */
|
|
440
|
+
partitions: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
441
|
+
}, "strip", z.ZodTypeAny, {
|
|
442
|
+
child_webviews: boolean;
|
|
443
|
+
partitions: string[];
|
|
444
|
+
}, {
|
|
445
|
+
child_webviews?: boolean | undefined;
|
|
446
|
+
partitions?: string[] | undefined;
|
|
447
|
+
}>;
|
|
448
|
+
export type WebviewCapability = z.infer<typeof WebviewCapabilitySchema>;
|
|
449
|
+
/** Agent-ops host-bridge capability (api ≥ 2). Opt-in to the privileged
|
|
450
|
+
* `host.agentOps.*` verbs (run-now / enable-disable / list-jobs) the shell
|
|
451
|
+
* exposes for the agent-ops observability pkg — these reach the always-on
|
|
452
|
+
* cron daemon's localhost trigger endpoint and read the daemon's config +
|
|
453
|
+
* state files, hops an iframe cannot make itself. Presence of the block is
|
|
454
|
+
* the gate (mirrors the `capabilities.sqlite` opt-in). Mirrors
|
|
455
|
+
* `AgentOpsCapability` in `shell/src-tauri/src/pkg/manifest.rs`. */
|
|
456
|
+
export declare const AgentOpsCapabilitySchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
457
|
+
export type AgentOpsCapability = z.infer<typeof AgentOpsCapabilitySchema>;
|
|
400
458
|
export declare const WindowBlockSchema: z.ZodObject<{
|
|
401
459
|
label: z.ZodString;
|
|
402
460
|
url: z.ZodString;
|
|
@@ -440,6 +498,45 @@ export declare const ScreenshotSchema: z.ZodObject<{
|
|
|
440
498
|
caption?: string | undefined;
|
|
441
499
|
}>;
|
|
442
500
|
export type Screenshot = z.infer<typeof ScreenshotSchema>;
|
|
501
|
+
/** Forward-dependency source for a `requires[]` entry. Mirrors the Rust
|
|
502
|
+
* `RequireSource` enum (`pkg/manifest.rs`) and the registry `ProvenanceSource`
|
|
503
|
+
* set. Optional on an entry — absent means the resolver looks the dep up in the
|
|
504
|
+
* store registry / catalog. */
|
|
505
|
+
export declare const RequireSourceSchema: z.ZodEnum<["git", "npx", "catalog", "local"]>;
|
|
506
|
+
export type RequireSource = z.infer<typeof RequireSourceSchema>;
|
|
507
|
+
/**
|
|
508
|
+
* One forward-dependency edge (`requires[]` element, ADR-015 §3 / Ọba WP-11).
|
|
509
|
+
* Names a standalone Ọba primitive a pkg `requires`; the resolver (WP-13/14)
|
|
510
|
+
* installs the closure at install/enable. This is a SEPARATE graph from a
|
|
511
|
+
* skill's `SKILL.md` `depends_on` (the G-04 authoring star, `skill-core`-only):
|
|
512
|
+
* a pkg `requires` MAY reference any primitive, and the publish-time lift
|
|
513
|
+
* (WP-12) compiles `depends_on` into this field. `.strict()` mirrors the Rust
|
|
514
|
+
* `deny_unknown_fields` on `RequiresEntry`. Source of truth: the Rust struct in
|
|
515
|
+
* `shell/src-tauri/src/pkg/manifest.rs` — keep in lockstep.
|
|
516
|
+
*/
|
|
517
|
+
export declare const RequiresEntrySchema: z.ZodObject<{
|
|
518
|
+
/** Primitive kind: skill | agent | command | hook | mcp. Kept a string so a
|
|
519
|
+
* future kind doesn't break old manifests. */
|
|
520
|
+
kind: z.ZodString;
|
|
521
|
+
/** Primitive name (e.g. `skill-core`, `@ikenga/studio-beat-detect`). */
|
|
522
|
+
name: z.ZodString;
|
|
523
|
+
/** Optional fetch source. */
|
|
524
|
+
source: z.ZodOptional<z.ZodEnum<["git", "npx", "catalog", "local"]>>;
|
|
525
|
+
/** Optional git tag/branch or version pin. The shape leaves room for an
|
|
526
|
+
* explicit semver range later without another schema break. */
|
|
527
|
+
ref: z.ZodOptional<z.ZodString>;
|
|
528
|
+
}, "strict", z.ZodTypeAny, {
|
|
529
|
+
name: string;
|
|
530
|
+
kind: string;
|
|
531
|
+
ref?: string | undefined;
|
|
532
|
+
source?: "git" | "npx" | "catalog" | "local" | undefined;
|
|
533
|
+
}, {
|
|
534
|
+
name: string;
|
|
535
|
+
kind: string;
|
|
536
|
+
ref?: string | undefined;
|
|
537
|
+
source?: "git" | "npx" | "catalog" | "local" | undefined;
|
|
538
|
+
}>;
|
|
539
|
+
export type RequiresEntry = z.infer<typeof RequiresEntrySchema>;
|
|
443
540
|
export declare const ManifestSchema: z.ZodObject<{
|
|
444
541
|
/** Reverse-DNS, e.g. `com.ikenga.studio`. */
|
|
445
542
|
id: z.ZodString;
|
|
@@ -461,9 +558,6 @@ export declare const ManifestSchema: z.ZodObject<{
|
|
|
461
558
|
}>>;
|
|
462
559
|
/** Rust target triples; empty = host-agnostic. */
|
|
463
560
|
targets: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
464
|
-
skills: z.ZodOptional<z.ZodString>;
|
|
465
|
-
commands: z.ZodOptional<z.ZodString>;
|
|
466
|
-
agents: z.ZodOptional<z.ZodString>;
|
|
467
561
|
mcp: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
468
562
|
name: z.ZodString;
|
|
469
563
|
command: z.ZodString;
|
|
@@ -527,6 +621,12 @@ export declare const ManifestSchema: z.ZodObject<{
|
|
|
527
621
|
'fs.read': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
528
622
|
'fs.write': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
529
623
|
net: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
624
|
+
/** Local SQLite table patterns; validated against tables.json at install time.
|
|
625
|
+
* For api ≥ 2 manifests. Replaces `supabase.tables`. */
|
|
626
|
+
'sqlite.tables': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
627
|
+
/** @deprecated api=1 compat alias for `sqlite.tables`. New manifests should
|
|
628
|
+
* use `sqlite.tables` instead. Kept so ikenga_api="1" manifests parse
|
|
629
|
+
* without errors during the transition window. */
|
|
530
630
|
'supabase.tables': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
531
631
|
'vault.keys': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
532
632
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -534,6 +634,7 @@ export declare const ManifestSchema: z.ZodObject<{
|
|
|
534
634
|
'fs.read': string[];
|
|
535
635
|
'fs.write': string[];
|
|
536
636
|
net: string[];
|
|
637
|
+
'sqlite.tables': string[];
|
|
537
638
|
'supabase.tables': string[];
|
|
538
639
|
'vault.keys': string[];
|
|
539
640
|
}, {
|
|
@@ -541,6 +642,7 @@ export declare const ManifestSchema: z.ZodObject<{
|
|
|
541
642
|
'fs.read'?: string[] | undefined;
|
|
542
643
|
'fs.write'?: string[] | undefined;
|
|
543
644
|
net?: string[] | undefined;
|
|
645
|
+
'sqlite.tables'?: string[] | undefined;
|
|
544
646
|
'supabase.tables'?: string[] | undefined;
|
|
545
647
|
'vault.keys'?: string[] | undefined;
|
|
546
648
|
}>>;
|
|
@@ -778,6 +880,67 @@ export declare const ManifestSchema: z.ZodObject<{
|
|
|
778
880
|
}, {
|
|
779
881
|
key_prefixes?: string[] | undefined;
|
|
780
882
|
}>>;
|
|
883
|
+
/** Optional capabilities the host resolves and injects at iframe-mount
|
|
884
|
+
* time via the AppBridge `hostContext` handshake. Mirrors the Rust
|
|
885
|
+
* `CapabilitiesBlock` in `shell/src-tauri/src/pkg/manifest.rs`. */
|
|
886
|
+
capabilities: z.ZodOptional<z.ZodObject<{
|
|
887
|
+
supabase: z.ZodOptional<z.ZodObject<{
|
|
888
|
+
/** When true, mint fails if the Supabase vault keys are missing; when
|
|
889
|
+
* false/omitted, missing keys surface as `supabase: null` in host context. */
|
|
890
|
+
required: z.ZodDefault<z.ZodBoolean>;
|
|
891
|
+
}, "strip", z.ZodTypeAny, {
|
|
892
|
+
required: boolean;
|
|
893
|
+
}, {
|
|
894
|
+
required?: boolean | undefined;
|
|
895
|
+
}>>;
|
|
896
|
+
sqlite: z.ZodOptional<z.ZodObject<{
|
|
897
|
+
/** Logical DB name. Currently only `"ikenga.local"` is supported.
|
|
898
|
+
* Defaults to `"ikenga.local"` when omitted. */
|
|
899
|
+
db: z.ZodDefault<z.ZodString>;
|
|
900
|
+
}, "strip", z.ZodTypeAny, {
|
|
901
|
+
db: string;
|
|
902
|
+
}, {
|
|
903
|
+
db?: string | undefined;
|
|
904
|
+
}>>;
|
|
905
|
+
webview: z.ZodOptional<z.ZodObject<{
|
|
906
|
+
/** Whether this pkg may create child webviews via the kernel. Required for
|
|
907
|
+
* any `ui.routes[]` entry with `kind = "webview"` to mount. */
|
|
908
|
+
child_webviews: z.ZodDefault<z.ZodBoolean>;
|
|
909
|
+
/** Named cookie/data partitions; empty = the implicit "default" partition. */
|
|
910
|
+
partitions: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
911
|
+
}, "strip", z.ZodTypeAny, {
|
|
912
|
+
child_webviews: boolean;
|
|
913
|
+
partitions: string[];
|
|
914
|
+
}, {
|
|
915
|
+
child_webviews?: boolean | undefined;
|
|
916
|
+
partitions?: string[] | undefined;
|
|
917
|
+
}>>;
|
|
918
|
+
agentOps: z.ZodOptional<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>>;
|
|
919
|
+
}, "strip", z.ZodTypeAny, {
|
|
920
|
+
supabase?: {
|
|
921
|
+
required: boolean;
|
|
922
|
+
} | undefined;
|
|
923
|
+
sqlite?: {
|
|
924
|
+
db: string;
|
|
925
|
+
} | undefined;
|
|
926
|
+
webview?: {
|
|
927
|
+
child_webviews: boolean;
|
|
928
|
+
partitions: string[];
|
|
929
|
+
} | undefined;
|
|
930
|
+
agentOps?: {} | undefined;
|
|
931
|
+
}, {
|
|
932
|
+
supabase?: {
|
|
933
|
+
required?: boolean | undefined;
|
|
934
|
+
} | undefined;
|
|
935
|
+
sqlite?: {
|
|
936
|
+
db?: string | undefined;
|
|
937
|
+
} | undefined;
|
|
938
|
+
webview?: {
|
|
939
|
+
child_webviews?: boolean | undefined;
|
|
940
|
+
partitions?: string[] | undefined;
|
|
941
|
+
} | undefined;
|
|
942
|
+
agentOps?: {} | undefined;
|
|
943
|
+
}>>;
|
|
781
944
|
/**
|
|
782
945
|
* Engine-adapter manifest block. Present iff this pkg is an engine-*
|
|
783
946
|
* adapter. Declares the agent id, display name, capability snapshot,
|
|
@@ -906,6 +1069,36 @@ export declare const ManifestSchema: z.ZodObject<{
|
|
|
906
1069
|
path: string;
|
|
907
1070
|
caption?: string | undefined;
|
|
908
1071
|
}>, "many">>;
|
|
1072
|
+
/**
|
|
1073
|
+
* Forward dependency declarations (ADR-015 §3 / Ọba WP-11). Each entry names a
|
|
1074
|
+
* standalone primitive this pkg `requires`; the Ọba resolver installs the
|
|
1075
|
+
* closure at install/enable. A SEPARATE graph from a skill's `depends_on` (the
|
|
1076
|
+
* G-04 authoring star). Empty by default so pre-Phase-4 manifests are
|
|
1077
|
+
* unaffected. Mirrors `requires: Vec<RequiresEntry>` on the Rust `Manifest`
|
|
1078
|
+
* (`pkg/manifest.rs`) — keep in lockstep (`deny_unknown_fields`).
|
|
1079
|
+
*/
|
|
1080
|
+
requires: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
1081
|
+
/** Primitive kind: skill | agent | command | hook | mcp. Kept a string so a
|
|
1082
|
+
* future kind doesn't break old manifests. */
|
|
1083
|
+
kind: z.ZodString;
|
|
1084
|
+
/** Primitive name (e.g. `skill-core`, `@ikenga/studio-beat-detect`). */
|
|
1085
|
+
name: z.ZodString;
|
|
1086
|
+
/** Optional fetch source. */
|
|
1087
|
+
source: z.ZodOptional<z.ZodEnum<["git", "npx", "catalog", "local"]>>;
|
|
1088
|
+
/** Optional git tag/branch or version pin. The shape leaves room for an
|
|
1089
|
+
* explicit semver range later without another schema break. */
|
|
1090
|
+
ref: z.ZodOptional<z.ZodString>;
|
|
1091
|
+
}, "strict", z.ZodTypeAny, {
|
|
1092
|
+
name: string;
|
|
1093
|
+
kind: string;
|
|
1094
|
+
ref?: string | undefined;
|
|
1095
|
+
source?: "git" | "npx" | "catalog" | "local" | undefined;
|
|
1096
|
+
}, {
|
|
1097
|
+
name: string;
|
|
1098
|
+
kind: string;
|
|
1099
|
+
ref?: string | undefined;
|
|
1100
|
+
source?: "git" | "npx" | "catalog" | "local" | undefined;
|
|
1101
|
+
}>, "many">>;
|
|
909
1102
|
}, "strip", z.ZodTypeAny, {
|
|
910
1103
|
mcp: {
|
|
911
1104
|
args: string[];
|
|
@@ -919,11 +1112,18 @@ export declare const ManifestSchema: z.ZodObject<{
|
|
|
919
1112
|
id: string;
|
|
920
1113
|
name: string;
|
|
921
1114
|
version: string;
|
|
1115
|
+
requires: {
|
|
1116
|
+
name: string;
|
|
1117
|
+
kind: string;
|
|
1118
|
+
ref?: string | undefined;
|
|
1119
|
+
source?: "git" | "npx" | "catalog" | "local" | undefined;
|
|
1120
|
+
}[];
|
|
922
1121
|
permissions: {
|
|
923
1122
|
'shell.execute': string[];
|
|
924
1123
|
'fs.read': string[];
|
|
925
1124
|
'fs.write': string[];
|
|
926
1125
|
net: string[];
|
|
1126
|
+
'sqlite.tables': string[];
|
|
927
1127
|
'supabase.tables': string[];
|
|
928
1128
|
'vault.keys': string[];
|
|
929
1129
|
};
|
|
@@ -980,10 +1180,20 @@ export declare const ManifestSchema: z.ZodObject<{
|
|
|
980
1180
|
name: string;
|
|
981
1181
|
key?: string | undefined;
|
|
982
1182
|
} | undefined;
|
|
1183
|
+
capabilities?: {
|
|
1184
|
+
supabase?: {
|
|
1185
|
+
required: boolean;
|
|
1186
|
+
} | undefined;
|
|
1187
|
+
sqlite?: {
|
|
1188
|
+
db: string;
|
|
1189
|
+
} | undefined;
|
|
1190
|
+
webview?: {
|
|
1191
|
+
child_webviews: boolean;
|
|
1192
|
+
partitions: string[];
|
|
1193
|
+
} | undefined;
|
|
1194
|
+
agentOps?: {} | undefined;
|
|
1195
|
+
} | undefined;
|
|
983
1196
|
kind?: string | undefined;
|
|
984
|
-
skills?: string | undefined;
|
|
985
|
-
commands?: string | undefined;
|
|
986
|
-
agents?: string | undefined;
|
|
987
1197
|
migrations?: string | undefined;
|
|
988
1198
|
settings?: {
|
|
989
1199
|
schema: {
|
|
@@ -1054,19 +1264,36 @@ export declare const ManifestSchema: z.ZodObject<{
|
|
|
1054
1264
|
name: string;
|
|
1055
1265
|
key?: string | undefined;
|
|
1056
1266
|
} | undefined;
|
|
1267
|
+
requires?: {
|
|
1268
|
+
name: string;
|
|
1269
|
+
kind: string;
|
|
1270
|
+
ref?: string | undefined;
|
|
1271
|
+
source?: "git" | "npx" | "catalog" | "local" | undefined;
|
|
1272
|
+
}[] | undefined;
|
|
1273
|
+
capabilities?: {
|
|
1274
|
+
supabase?: {
|
|
1275
|
+
required?: boolean | undefined;
|
|
1276
|
+
} | undefined;
|
|
1277
|
+
sqlite?: {
|
|
1278
|
+
db?: string | undefined;
|
|
1279
|
+
} | undefined;
|
|
1280
|
+
webview?: {
|
|
1281
|
+
child_webviews?: boolean | undefined;
|
|
1282
|
+
partitions?: string[] | undefined;
|
|
1283
|
+
} | undefined;
|
|
1284
|
+
agentOps?: {} | undefined;
|
|
1285
|
+
} | undefined;
|
|
1057
1286
|
kind?: string | undefined;
|
|
1058
1287
|
permissions?: {
|
|
1059
1288
|
'shell.execute'?: string[] | undefined;
|
|
1060
1289
|
'fs.read'?: string[] | undefined;
|
|
1061
1290
|
'fs.write'?: string[] | undefined;
|
|
1062
1291
|
net?: string[] | undefined;
|
|
1292
|
+
'sqlite.tables'?: string[] | undefined;
|
|
1063
1293
|
'supabase.tables'?: string[] | undefined;
|
|
1064
1294
|
'vault.keys'?: string[] | undefined;
|
|
1065
1295
|
} | undefined;
|
|
1066
1296
|
targets?: string[] | undefined;
|
|
1067
|
-
skills?: string | undefined;
|
|
1068
|
-
commands?: string | undefined;
|
|
1069
|
-
agents?: string | undefined;
|
|
1070
1297
|
sidecars?: {
|
|
1071
1298
|
name: string;
|
|
1072
1299
|
bin: string;
|
|
@@ -1184,9 +1411,6 @@ export declare const PkgManifestSchema: z.ZodObject<{
|
|
|
1184
1411
|
}>>;
|
|
1185
1412
|
/** Rust target triples; empty = host-agnostic. */
|
|
1186
1413
|
targets: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
1187
|
-
skills: z.ZodOptional<z.ZodString>;
|
|
1188
|
-
commands: z.ZodOptional<z.ZodString>;
|
|
1189
|
-
agents: z.ZodOptional<z.ZodString>;
|
|
1190
1414
|
mcp: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
1191
1415
|
name: z.ZodString;
|
|
1192
1416
|
command: z.ZodString;
|
|
@@ -1250,6 +1474,12 @@ export declare const PkgManifestSchema: z.ZodObject<{
|
|
|
1250
1474
|
'fs.read': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
1251
1475
|
'fs.write': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
1252
1476
|
net: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
1477
|
+
/** Local SQLite table patterns; validated against tables.json at install time.
|
|
1478
|
+
* For api ≥ 2 manifests. Replaces `supabase.tables`. */
|
|
1479
|
+
'sqlite.tables': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
1480
|
+
/** @deprecated api=1 compat alias for `sqlite.tables`. New manifests should
|
|
1481
|
+
* use `sqlite.tables` instead. Kept so ikenga_api="1" manifests parse
|
|
1482
|
+
* without errors during the transition window. */
|
|
1253
1483
|
'supabase.tables': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
1254
1484
|
'vault.keys': z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
1255
1485
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -1257,6 +1487,7 @@ export declare const PkgManifestSchema: z.ZodObject<{
|
|
|
1257
1487
|
'fs.read': string[];
|
|
1258
1488
|
'fs.write': string[];
|
|
1259
1489
|
net: string[];
|
|
1490
|
+
'sqlite.tables': string[];
|
|
1260
1491
|
'supabase.tables': string[];
|
|
1261
1492
|
'vault.keys': string[];
|
|
1262
1493
|
}, {
|
|
@@ -1264,6 +1495,7 @@ export declare const PkgManifestSchema: z.ZodObject<{
|
|
|
1264
1495
|
'fs.read'?: string[] | undefined;
|
|
1265
1496
|
'fs.write'?: string[] | undefined;
|
|
1266
1497
|
net?: string[] | undefined;
|
|
1498
|
+
'sqlite.tables'?: string[] | undefined;
|
|
1267
1499
|
'supabase.tables'?: string[] | undefined;
|
|
1268
1500
|
'vault.keys'?: string[] | undefined;
|
|
1269
1501
|
}>>;
|
|
@@ -1501,6 +1733,67 @@ export declare const PkgManifestSchema: z.ZodObject<{
|
|
|
1501
1733
|
}, {
|
|
1502
1734
|
key_prefixes?: string[] | undefined;
|
|
1503
1735
|
}>>;
|
|
1736
|
+
/** Optional capabilities the host resolves and injects at iframe-mount
|
|
1737
|
+
* time via the AppBridge `hostContext` handshake. Mirrors the Rust
|
|
1738
|
+
* `CapabilitiesBlock` in `shell/src-tauri/src/pkg/manifest.rs`. */
|
|
1739
|
+
capabilities: z.ZodOptional<z.ZodObject<{
|
|
1740
|
+
supabase: z.ZodOptional<z.ZodObject<{
|
|
1741
|
+
/** When true, mint fails if the Supabase vault keys are missing; when
|
|
1742
|
+
* false/omitted, missing keys surface as `supabase: null` in host context. */
|
|
1743
|
+
required: z.ZodDefault<z.ZodBoolean>;
|
|
1744
|
+
}, "strip", z.ZodTypeAny, {
|
|
1745
|
+
required: boolean;
|
|
1746
|
+
}, {
|
|
1747
|
+
required?: boolean | undefined;
|
|
1748
|
+
}>>;
|
|
1749
|
+
sqlite: z.ZodOptional<z.ZodObject<{
|
|
1750
|
+
/** Logical DB name. Currently only `"ikenga.local"` is supported.
|
|
1751
|
+
* Defaults to `"ikenga.local"` when omitted. */
|
|
1752
|
+
db: z.ZodDefault<z.ZodString>;
|
|
1753
|
+
}, "strip", z.ZodTypeAny, {
|
|
1754
|
+
db: string;
|
|
1755
|
+
}, {
|
|
1756
|
+
db?: string | undefined;
|
|
1757
|
+
}>>;
|
|
1758
|
+
webview: z.ZodOptional<z.ZodObject<{
|
|
1759
|
+
/** Whether this pkg may create child webviews via the kernel. Required for
|
|
1760
|
+
* any `ui.routes[]` entry with `kind = "webview"` to mount. */
|
|
1761
|
+
child_webviews: z.ZodDefault<z.ZodBoolean>;
|
|
1762
|
+
/** Named cookie/data partitions; empty = the implicit "default" partition. */
|
|
1763
|
+
partitions: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
1764
|
+
}, "strip", z.ZodTypeAny, {
|
|
1765
|
+
child_webviews: boolean;
|
|
1766
|
+
partitions: string[];
|
|
1767
|
+
}, {
|
|
1768
|
+
child_webviews?: boolean | undefined;
|
|
1769
|
+
partitions?: string[] | undefined;
|
|
1770
|
+
}>>;
|
|
1771
|
+
agentOps: z.ZodOptional<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>>;
|
|
1772
|
+
}, "strip", z.ZodTypeAny, {
|
|
1773
|
+
supabase?: {
|
|
1774
|
+
required: boolean;
|
|
1775
|
+
} | undefined;
|
|
1776
|
+
sqlite?: {
|
|
1777
|
+
db: string;
|
|
1778
|
+
} | undefined;
|
|
1779
|
+
webview?: {
|
|
1780
|
+
child_webviews: boolean;
|
|
1781
|
+
partitions: string[];
|
|
1782
|
+
} | undefined;
|
|
1783
|
+
agentOps?: {} | undefined;
|
|
1784
|
+
}, {
|
|
1785
|
+
supabase?: {
|
|
1786
|
+
required?: boolean | undefined;
|
|
1787
|
+
} | undefined;
|
|
1788
|
+
sqlite?: {
|
|
1789
|
+
db?: string | undefined;
|
|
1790
|
+
} | undefined;
|
|
1791
|
+
webview?: {
|
|
1792
|
+
child_webviews?: boolean | undefined;
|
|
1793
|
+
partitions?: string[] | undefined;
|
|
1794
|
+
} | undefined;
|
|
1795
|
+
agentOps?: {} | undefined;
|
|
1796
|
+
}>>;
|
|
1504
1797
|
/**
|
|
1505
1798
|
* Engine-adapter manifest block. Present iff this pkg is an engine-*
|
|
1506
1799
|
* adapter. Declares the agent id, display name, capability snapshot,
|
|
@@ -1629,6 +1922,36 @@ export declare const PkgManifestSchema: z.ZodObject<{
|
|
|
1629
1922
|
path: string;
|
|
1630
1923
|
caption?: string | undefined;
|
|
1631
1924
|
}>, "many">>;
|
|
1925
|
+
/**
|
|
1926
|
+
* Forward dependency declarations (ADR-015 §3 / Ọba WP-11). Each entry names a
|
|
1927
|
+
* standalone primitive this pkg `requires`; the Ọba resolver installs the
|
|
1928
|
+
* closure at install/enable. A SEPARATE graph from a skill's `depends_on` (the
|
|
1929
|
+
* G-04 authoring star). Empty by default so pre-Phase-4 manifests are
|
|
1930
|
+
* unaffected. Mirrors `requires: Vec<RequiresEntry>` on the Rust `Manifest`
|
|
1931
|
+
* (`pkg/manifest.rs`) — keep in lockstep (`deny_unknown_fields`).
|
|
1932
|
+
*/
|
|
1933
|
+
requires: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
1934
|
+
/** Primitive kind: skill | agent | command | hook | mcp. Kept a string so a
|
|
1935
|
+
* future kind doesn't break old manifests. */
|
|
1936
|
+
kind: z.ZodString;
|
|
1937
|
+
/** Primitive name (e.g. `skill-core`, `@ikenga/studio-beat-detect`). */
|
|
1938
|
+
name: z.ZodString;
|
|
1939
|
+
/** Optional fetch source. */
|
|
1940
|
+
source: z.ZodOptional<z.ZodEnum<["git", "npx", "catalog", "local"]>>;
|
|
1941
|
+
/** Optional git tag/branch or version pin. The shape leaves room for an
|
|
1942
|
+
* explicit semver range later without another schema break. */
|
|
1943
|
+
ref: z.ZodOptional<z.ZodString>;
|
|
1944
|
+
}, "strict", z.ZodTypeAny, {
|
|
1945
|
+
name: string;
|
|
1946
|
+
kind: string;
|
|
1947
|
+
ref?: string | undefined;
|
|
1948
|
+
source?: "git" | "npx" | "catalog" | "local" | undefined;
|
|
1949
|
+
}, {
|
|
1950
|
+
name: string;
|
|
1951
|
+
kind: string;
|
|
1952
|
+
ref?: string | undefined;
|
|
1953
|
+
source?: "git" | "npx" | "catalog" | "local" | undefined;
|
|
1954
|
+
}>, "many">>;
|
|
1632
1955
|
}, "strip", z.ZodTypeAny, {
|
|
1633
1956
|
mcp: {
|
|
1634
1957
|
args: string[];
|
|
@@ -1642,11 +1965,18 @@ export declare const PkgManifestSchema: z.ZodObject<{
|
|
|
1642
1965
|
id: string;
|
|
1643
1966
|
name: string;
|
|
1644
1967
|
version: string;
|
|
1968
|
+
requires: {
|
|
1969
|
+
name: string;
|
|
1970
|
+
kind: string;
|
|
1971
|
+
ref?: string | undefined;
|
|
1972
|
+
source?: "git" | "npx" | "catalog" | "local" | undefined;
|
|
1973
|
+
}[];
|
|
1645
1974
|
permissions: {
|
|
1646
1975
|
'shell.execute': string[];
|
|
1647
1976
|
'fs.read': string[];
|
|
1648
1977
|
'fs.write': string[];
|
|
1649
1978
|
net: string[];
|
|
1979
|
+
'sqlite.tables': string[];
|
|
1650
1980
|
'supabase.tables': string[];
|
|
1651
1981
|
'vault.keys': string[];
|
|
1652
1982
|
};
|
|
@@ -1703,10 +2033,20 @@ export declare const PkgManifestSchema: z.ZodObject<{
|
|
|
1703
2033
|
name: string;
|
|
1704
2034
|
key?: string | undefined;
|
|
1705
2035
|
} | undefined;
|
|
2036
|
+
capabilities?: {
|
|
2037
|
+
supabase?: {
|
|
2038
|
+
required: boolean;
|
|
2039
|
+
} | undefined;
|
|
2040
|
+
sqlite?: {
|
|
2041
|
+
db: string;
|
|
2042
|
+
} | undefined;
|
|
2043
|
+
webview?: {
|
|
2044
|
+
child_webviews: boolean;
|
|
2045
|
+
partitions: string[];
|
|
2046
|
+
} | undefined;
|
|
2047
|
+
agentOps?: {} | undefined;
|
|
2048
|
+
} | undefined;
|
|
1706
2049
|
kind?: string | undefined;
|
|
1707
|
-
skills?: string | undefined;
|
|
1708
|
-
commands?: string | undefined;
|
|
1709
|
-
agents?: string | undefined;
|
|
1710
2050
|
migrations?: string | undefined;
|
|
1711
2051
|
settings?: {
|
|
1712
2052
|
schema: {
|
|
@@ -1777,19 +2117,36 @@ export declare const PkgManifestSchema: z.ZodObject<{
|
|
|
1777
2117
|
name: string;
|
|
1778
2118
|
key?: string | undefined;
|
|
1779
2119
|
} | undefined;
|
|
2120
|
+
requires?: {
|
|
2121
|
+
name: string;
|
|
2122
|
+
kind: string;
|
|
2123
|
+
ref?: string | undefined;
|
|
2124
|
+
source?: "git" | "npx" | "catalog" | "local" | undefined;
|
|
2125
|
+
}[] | undefined;
|
|
2126
|
+
capabilities?: {
|
|
2127
|
+
supabase?: {
|
|
2128
|
+
required?: boolean | undefined;
|
|
2129
|
+
} | undefined;
|
|
2130
|
+
sqlite?: {
|
|
2131
|
+
db?: string | undefined;
|
|
2132
|
+
} | undefined;
|
|
2133
|
+
webview?: {
|
|
2134
|
+
child_webviews?: boolean | undefined;
|
|
2135
|
+
partitions?: string[] | undefined;
|
|
2136
|
+
} | undefined;
|
|
2137
|
+
agentOps?: {} | undefined;
|
|
2138
|
+
} | undefined;
|
|
1780
2139
|
kind?: string | undefined;
|
|
1781
2140
|
permissions?: {
|
|
1782
2141
|
'shell.execute'?: string[] | undefined;
|
|
1783
2142
|
'fs.read'?: string[] | undefined;
|
|
1784
2143
|
'fs.write'?: string[] | undefined;
|
|
1785
2144
|
net?: string[] | undefined;
|
|
2145
|
+
'sqlite.tables'?: string[] | undefined;
|
|
1786
2146
|
'supabase.tables'?: string[] | undefined;
|
|
1787
2147
|
'vault.keys'?: string[] | undefined;
|
|
1788
2148
|
} | undefined;
|
|
1789
2149
|
targets?: string[] | undefined;
|
|
1790
|
-
skills?: string | undefined;
|
|
1791
|
-
commands?: string | undefined;
|
|
1792
|
-
agents?: string | undefined;
|
|
1793
2150
|
sidecars?: {
|
|
1794
2151
|
name: string;
|
|
1795
2152
|
bin: string;
|
package/dist/manifest.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,kBAAkB,EAAG,CAAU,CAAC;AAC7C,eAAO,MAAM,wBAAwB,EAAG,CAAU,CAAC;AAInD,eAAO,MAAM,YAAY;;;;;;;;;EAGvB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;IAK1B,0CAA0C;;IAE1C;;0CAEsC;;IAEtC;;8BAE0B;;;;;;;;;;;;;;;;;;EAE1B,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,iBAAiB;IAC5B,mEAAmE;;IAEnE,iEAAiE;;IAEjE,+BAA+B;;IAE/B;4EACwE;;IAExE;6DACyD;;;;;;;;;;;;;;EAEzD,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,iBAAiB;;;;;IAK5B;6DACyD;;IAEzD;;uDAEmD;;;;;;;;;;;;;;;;;;;GAGvC,CAAC;AAEf,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;EAMzB,CAAC;AAEH,eAAO,MAAM,aAAa;;IAExB,yDAAyD;;IAEzD,oEAAoE;;;;;;;;;;EAEpE,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;EAKpC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;QAnBxB,yDAAyD;;QAEzD,oEAAoE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsBpE,0DAA0D;;IAE1D,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAElC,CAAC;AAEf,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;EAM9B,CAAC;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE9B,CAAC;AAEH,eAAO,MAAM,eAAe;;IAE1B,oCAAoC;;IAEpC,8CAA8C;;;;;;;;;;EAE9C,CAAC;AACH,eAAO,MAAM,eAAe;;;QAL1B,oCAAoC;;QAEpC,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;;;;EAM9C,CAAC;AAEH,eAAO,MAAM,eAAe;;IAE1B,0DAA0D;;;;;;;;;;;;;;EAI1D,CAAC;AAEH;;2EAE2E;AAC3E,eAAO,MAAM,sBAAsB;IACjC;qDACiD;;;;;;EAEjD,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;6CAC6C;AAC7C,eAAO,MAAM,wBAAwB;IACnC;mFAC+E;;;;;;EAE/E,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;6CAC6C;AAC7C,eAAO,MAAM,uBAAuB;IAClC;oEACgE;;IAEhE,8EAA8E;;;;;;;;EAE9E,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;;;;;qEAMqE;AACrE,eAAO,MAAM,wBAAwB,gDAAe,CAAC;AACrD,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;EAM5B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;EAE7B,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;EAG3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;;gCAGgC;AAChC,eAAO,MAAM,mBAAmB,+CAA6C,CAAC;AAC9E,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB;IAE5B;mDAC+C;;IAE/C,wEAAwE;;IAExE,6BAA6B;;IAE7B;oEACgE;;;;;;;;;;;;EAGzD,CAAC;AACZ,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAIhE,eAAO,MAAM,cAAc;IACzB,6CAA6C;;;;IAI7C,gEAAgE;;IAGhE,wEAAwE;;;;;;;;;;;;IAGxE,kDAAkD;;;;;;;QAjOlD,0CAA0C;;QAE1C;;8CAEsC;;QAEtC;;kCAE0B;;;;;;;;;;;;;;;;;;;;QAM1B,mEAAmE;;QAEnE,iEAAiE;;QAEjE,+BAA+B;;QAE/B;gFACwE;;QAExE;iEACyD;;;;;;;;;;;;;;;;;;;;QAUzD;iEACyD;;QAEzD;;2DAEmD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAenD,yDAAyD;;YAEzD,oEAAoE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAsBpE,0DAA0D;;QAE1D,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAiB9C,oCAAoC;;YAEpC,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAU9C,0DAA0D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA0I1D;;wEAEoE;;;YAzHpE;2FAC+E;;;;;;;;YAV/E;6DACiD;;;;;;;;YAiBjD;4EACgE;;YAEhE,8EAA8E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqH9E;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAGH;;;;;OAKG;;;;;;;;;;;IAGH;;;;;;;OAOG;;QAlFD;uDAC+C;;QAE/C,wEAAwE;;QAExE,6BAA6B;;QAE7B;wEACgE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4ElE,CAAC;AAEH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,2EAA2E;AAC3E,eAAO,MAAM,iBAAiB;IAvE5B,6CAA6C;;;;IAI7C,gEAAgE;;IAGhE,wEAAwE;;;;;;;;;;;;IAGxE,kDAAkD;;;;;;;QAjOlD,0CAA0C;;QAE1C;;8CAEsC;;QAEtC;;kCAE0B;;;;;;;;;;;;;;;;;;;;QAM1B,mEAAmE;;QAEnE,iEAAiE;;QAEjE,+BAA+B;;QAE/B;gFACwE;;QAExE;iEACyD;;;;;;;;;;;;;;;;;;;;QAUzD;iEACyD;;QAEzD;;2DAEmD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAenD,yDAAyD;;YAEzD,oEAAoE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAsBpE,0DAA0D;;QAE1D,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAiB9C,oCAAoC;;YAEpC,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAU9C,0DAA0D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA0I1D;;wEAEoE;;;YAzHpE;2FAC+E;;;;;;;;YAV/E;6DACiD;;;;;;;;YAiBjD;4EACgE;;YAEhE,8EAA8E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqH9E;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAGH;;;;;OAKG;;;;;;;;;;;IAGH;;;;;;;OAOG;;QAlFD;uDAC+C;;QAE/C,wEAAwE;;QAExE,6BAA6B;;QAE7B;wEACgE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgFrB,CAAC;AAChD,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC;AAInC,qFAAqF;AACrF,wBAAgB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAE1C;AAED,sDAAsD;AACtD,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAIjD"}
|