@appforge-ci/core 0.1.2 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-readiness.d.ts +44 -1
- package/dist/agent-readiness.d.ts.map +1 -1
- package/dist/agent-readiness.js +29 -1
- package/dist/agent-readiness.js.map +1 -1
- package/dist/agent-readiness.test.js +39 -1
- package/dist/agent-readiness.test.js.map +1 -1
- package/dist/api-client.d.ts +62 -1
- package/dist/api-client.d.ts.map +1 -1
- package/dist/api-client.js +38 -0
- package/dist/api-client.js.map +1 -1
- 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/schemas.d.ts +112 -0
- package/dist/schemas.d.ts.map +1 -1
- package/dist/schemas.js +65 -0
- package/dist/schemas.js.map +1 -1
- package/dist/types.d.ts +101 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/vpn-network.d.ts +116 -0
- package/dist/vpn-network.d.ts.map +1 -0
- package/dist/vpn-network.js +325 -0
- package/dist/vpn-network.js.map +1 -0
- package/dist/vpn-network.test.d.ts +2 -0
- package/dist/vpn-network.test.d.ts.map +1 -0
- package/dist/vpn-network.test.js +296 -0
- package/dist/vpn-network.test.js.map +1 -0
- package/package.json +2 -2
package/dist/schemas.d.ts
CHANGED
|
@@ -486,14 +486,20 @@ export declare const updateAppSchema: z.ZodObject<{
|
|
|
486
486
|
name: z.ZodOptional<z.ZodString>;
|
|
487
487
|
repoUrl: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
|
|
488
488
|
defaultBranch: z.ZodOptional<z.ZodString>;
|
|
489
|
+
/** Opt this app's builds into the org's site-to-site VPN tunnel. Needs
|
|
490
|
+
* org owner/admin and an existing, non-disabled tunnel — enforced by
|
|
491
|
+
* the route, not here, since it's a cross-resource rule. */
|
|
492
|
+
useVpn: z.ZodOptional<z.ZodBoolean>;
|
|
489
493
|
}, "strip", z.ZodTypeAny, {
|
|
490
494
|
name?: string | undefined;
|
|
491
495
|
repoUrl?: string | undefined;
|
|
492
496
|
defaultBranch?: string | undefined;
|
|
497
|
+
useVpn?: boolean | undefined;
|
|
493
498
|
}, {
|
|
494
499
|
name?: string | undefined;
|
|
495
500
|
repoUrl?: string | undefined;
|
|
496
501
|
defaultBranch?: string | undefined;
|
|
502
|
+
useVpn?: boolean | undefined;
|
|
497
503
|
}>;
|
|
498
504
|
export declare const updateOrgSchema: z.ZodObject<{
|
|
499
505
|
name: z.ZodOptional<z.ZodString>;
|
|
@@ -617,6 +623,12 @@ export declare const agentHeartbeatSchema: z.ZodObject<{
|
|
|
617
623
|
* <= capacity. Empty array means idle, distinct from omitting the
|
|
618
624
|
* field entirely (an old agent binary that's never heard of this). */
|
|
619
625
|
activeBuildIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
626
|
+
/** Whether this Mac has the signed WireGuard helper and can serve a
|
|
627
|
+
* site-to-site VPN build (migrations/0037_vpn.sql). Same COALESCE-on-
|
|
628
|
+
* omission reasoning as agentVersion above: an agent binary that
|
|
629
|
+
* predates the VPN feature omits it and stays `vpnCapable = 0`, so it
|
|
630
|
+
* is never offered a VPN build. */
|
|
631
|
+
vpnCapable: z.ZodOptional<z.ZodBoolean>;
|
|
620
632
|
}, "strip", z.ZodTypeAny, {
|
|
621
633
|
status: "online" | "draining" | "building";
|
|
622
634
|
xcodeVersion: string | null;
|
|
@@ -629,6 +641,7 @@ export declare const agentHeartbeatSchema: z.ZodObject<{
|
|
|
629
641
|
diskFreeGb: number;
|
|
630
642
|
agentVersion?: string | null | undefined;
|
|
631
643
|
screenSharingEnabled?: boolean | null | undefined;
|
|
644
|
+
vpnCapable?: boolean | undefined;
|
|
632
645
|
tailscaleHostname?: string | null | undefined;
|
|
633
646
|
currentBuildId?: string | null | undefined;
|
|
634
647
|
activeBuildIds?: string[] | undefined;
|
|
@@ -645,6 +658,7 @@ export declare const agentHeartbeatSchema: z.ZodObject<{
|
|
|
645
658
|
diskFreeGb: number;
|
|
646
659
|
agentVersion?: string | null | undefined;
|
|
647
660
|
screenSharingEnabled?: boolean | null | undefined;
|
|
661
|
+
vpnCapable?: boolean | undefined;
|
|
648
662
|
tailscaleHostname?: string | null | undefined;
|
|
649
663
|
currentBuildId?: string | null | undefined;
|
|
650
664
|
activeBuildIds?: string[] | undefined;
|
|
@@ -759,6 +773,18 @@ export declare const setAgentRemoteControlSchema: z.ZodObject<{
|
|
|
759
773
|
}, {
|
|
760
774
|
enabled: boolean;
|
|
761
775
|
}>;
|
|
776
|
+
/** `PATCH /orgs/:orgId/agents/:agentId/vpn-approved` (apps/admin-api) —
|
|
777
|
+
* the only way `Agent.vpnApproved` ever changes (see @appforge/db's
|
|
778
|
+
* migrations/0039_agent_vpn_approved.sql, issue #643). Deliberately not in
|
|
779
|
+
* agentHeartbeatSchema: the heartbeat's `vpnCapable` is the agent's claim
|
|
780
|
+
* that the helper is installed; this is the platform admin's decision. */
|
|
781
|
+
export declare const setAgentVpnApprovedSchema: z.ZodObject<{
|
|
782
|
+
approved: z.ZodBoolean;
|
|
783
|
+
}, "strip", z.ZodTypeAny, {
|
|
784
|
+
approved: boolean;
|
|
785
|
+
}, {
|
|
786
|
+
approved: boolean;
|
|
787
|
+
}>;
|
|
762
788
|
/** `PATCH /orgs/:orgId/agents/:agentId/device-stream-hostname` (apps/
|
|
763
789
|
* admin-api)'s request body — `hostname: null` clears it, going back
|
|
764
790
|
* to the global DEVICE_STREAM_WS_URL fallback (see migrations/0034's
|
|
@@ -786,4 +812,90 @@ export declare const startVncSessionSchema: z.ZodObject<{
|
|
|
786
812
|
}, {
|
|
787
813
|
mode?: "view" | "control" | undefined;
|
|
788
814
|
}>;
|
|
815
|
+
export declare const createVpnTunnelSchema: z.ZodObject<{
|
|
816
|
+
name: z.ZodString;
|
|
817
|
+
gatewayEndpoint: z.ZodString;
|
|
818
|
+
gatewayPublicKey: z.ZodString;
|
|
819
|
+
lanCidrs: z.ZodArray<z.ZodString, "many">;
|
|
820
|
+
dnsServer: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
821
|
+
allowedDomains: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
822
|
+
/** Omit to have the server allocate a free /30. Supply it only when a
|
|
823
|
+
* customer network already routes the allocated range. */
|
|
824
|
+
tunnelCidr: z.ZodOptional<z.ZodString>;
|
|
825
|
+
/** Lab mode — allow a private (RFC1918/CGNAT) gateway endpoint. Setting it
|
|
826
|
+
* `true` is platform-admin only (enforced by the route, not here). */
|
|
827
|
+
allowPrivateEndpoint: z.ZodOptional<z.ZodBoolean>;
|
|
828
|
+
}, "strip", z.ZodTypeAny, {
|
|
829
|
+
name: string;
|
|
830
|
+
gatewayEndpoint: string;
|
|
831
|
+
gatewayPublicKey: string;
|
|
832
|
+
lanCidrs: string[];
|
|
833
|
+
dnsServer?: string | null | undefined;
|
|
834
|
+
allowedDomains?: string[] | undefined;
|
|
835
|
+
tunnelCidr?: string | undefined;
|
|
836
|
+
allowPrivateEndpoint?: boolean | undefined;
|
|
837
|
+
}, {
|
|
838
|
+
name: string;
|
|
839
|
+
gatewayEndpoint: string;
|
|
840
|
+
gatewayPublicKey: string;
|
|
841
|
+
lanCidrs: string[];
|
|
842
|
+
dnsServer?: string | null | undefined;
|
|
843
|
+
allowedDomains?: string[] | undefined;
|
|
844
|
+
tunnelCidr?: string | undefined;
|
|
845
|
+
allowPrivateEndpoint?: boolean | undefined;
|
|
846
|
+
}>;
|
|
847
|
+
export declare const updateVpnTunnelSchema: z.ZodObject<{
|
|
848
|
+
name: z.ZodOptional<z.ZodString>;
|
|
849
|
+
gatewayEndpoint: z.ZodOptional<z.ZodString>;
|
|
850
|
+
gatewayPublicKey: z.ZodOptional<z.ZodString>;
|
|
851
|
+
lanCidrs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
852
|
+
/** Explicit `null` clears it; omitted leaves it unchanged. */
|
|
853
|
+
dnsServer: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
854
|
+
allowedDomains: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
855
|
+
tunnelCidr: z.ZodOptional<z.ZodString>;
|
|
856
|
+
/** Lab mode. `true` is platform-admin only; omitted leaves it unchanged. */
|
|
857
|
+
allowPrivateEndpoint: z.ZodOptional<z.ZodBoolean>;
|
|
858
|
+
/** `false` disables the tunnel (builds that need it then fail fast
|
|
859
|
+
* instead of queueing); `true` re-enables it, back to `pending` until
|
|
860
|
+
* the next handshake proves it works. */
|
|
861
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
862
|
+
}, "strip", z.ZodTypeAny, {
|
|
863
|
+
name?: string | undefined;
|
|
864
|
+
enabled?: boolean | undefined;
|
|
865
|
+
gatewayEndpoint?: string | undefined;
|
|
866
|
+
gatewayPublicKey?: string | undefined;
|
|
867
|
+
lanCidrs?: string[] | undefined;
|
|
868
|
+
dnsServer?: string | null | undefined;
|
|
869
|
+
allowedDomains?: string[] | undefined;
|
|
870
|
+
tunnelCidr?: string | undefined;
|
|
871
|
+
allowPrivateEndpoint?: boolean | undefined;
|
|
872
|
+
}, {
|
|
873
|
+
name?: string | undefined;
|
|
874
|
+
enabled?: boolean | undefined;
|
|
875
|
+
gatewayEndpoint?: string | undefined;
|
|
876
|
+
gatewayPublicKey?: string | undefined;
|
|
877
|
+
lanCidrs?: string[] | undefined;
|
|
878
|
+
dnsServer?: string | null | undefined;
|
|
879
|
+
allowedDomains?: string[] | undefined;
|
|
880
|
+
tunnelCidr?: string | undefined;
|
|
881
|
+
allowPrivateEndpoint?: boolean | undefined;
|
|
882
|
+
}>;
|
|
883
|
+
/** `POST /agents/vpn/report` (apps/admin-api) — what the agent that holds
|
|
884
|
+
* an org's tunnel for a build tells the control plane about it. The
|
|
885
|
+
* handshake outcome drives `VpnTunnel.status` (pending/ready/degraded);
|
|
886
|
+
* every event lands in the org's audit log. `detail` is agent-supplied
|
|
887
|
+
* free text shown to the customer, so it is length-bounded. */
|
|
888
|
+
export declare const reportVpnEventSchema: z.ZodObject<{
|
|
889
|
+
buildId: z.ZodString;
|
|
890
|
+
event: z.ZodEnum<["tunnel_up", "tunnel_down", "handshake_ok", "handshake_failed"]>;
|
|
891
|
+
detail: z.ZodOptional<z.ZodString>;
|
|
892
|
+
}, "strip", z.ZodTypeAny, {
|
|
893
|
+
buildId: string;
|
|
894
|
+
event: "tunnel_up" | "tunnel_down" | "handshake_ok" | "handshake_failed";
|
|
895
|
+
detail?: string | undefined;
|
|
896
|
+
}, {
|
|
897
|
+
buildId: string;
|
|
898
|
+
event: "tunnel_up" | "tunnel_down" | "handshake_ok" | "handshake_failed";
|
|
899
|
+
detail?: string | undefined;
|
|
900
|
+
}>;
|
|
789
901
|
//# sourceMappingURL=schemas.d.ts.map
|
package/dist/schemas.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,cAAc,0DAAwD,CAAC;AAEpF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwBjC;;;sEAGkE;;IAElE,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO7E,CAAC;AAEH,iDAAiD;AACjD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAf/B;;;0EAGkE;;QAElE,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAe7E,CAAC;AAgCH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;EAKvB,CAAC;AAEH,eAAO,MAAM,WAAW;;;IAGtB;;;uEAGmE;;IAEnE;;yCAEqC;;;;;;;;;;;;EAErC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;EAE5B,CAAC;AAEH;;;;;;;;;;;;uEAYuE;AACvE,eAAO,MAAM,iBAAiB;;;;;;;;;EAG5B,CAAC;AAEH;;;4CAG4C;AAC5C,eAAO,MAAM,iBAAiB;;;;;;EAE5B,CAAC;AAEH;;;;;;;;;;;;;;;4CAe4C;AAC5C,eAAO,MAAM,6BAA6B;;;;;;EAExC,CAAC;AAEH;;;;;wDAKwD;AACxD,eAAO,MAAM,oBAAoB;;;;;;;;;EAG/B,CAAC;AAEH;;;;;gEAKgE;AAChE,eAAO,MAAM,oBAAoB;;;;;;EAE/B,CAAC;AAEH;;;4BAG4B;AAC5B,eAAO,MAAM,mBAAmB;;;;;;;;;EAG9B,CAAC;AAuCH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;EAK1B,CAAC;AAKH,eAAO,MAAM,eAAe;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"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"}
|
package/dist/schemas.js
CHANGED
|
@@ -212,6 +212,10 @@ export const updateAppSchema = z.object({
|
|
|
212
212
|
name: z.string().min(1).max(255, "must be at most 255 characters").optional(),
|
|
213
213
|
repoUrl: repoUrlSchema.optional(),
|
|
214
214
|
defaultBranch: z.string().min(1).optional(),
|
|
215
|
+
/** Opt this app's builds into the org's site-to-site VPN tunnel. Needs
|
|
216
|
+
* org owner/admin and an existing, non-disabled tunnel — enforced by
|
|
217
|
+
* the route, not here, since it's a cross-resource rule. */
|
|
218
|
+
useVpn: z.boolean().optional(),
|
|
215
219
|
});
|
|
216
220
|
// Deliberately narrower than `OrgRow` (packages/db) — `updateOrg`'s own
|
|
217
221
|
// signature takes `Partial<OrgRow>` and applies whatever keys it's
|
|
@@ -446,6 +450,12 @@ export const agentHeartbeatSchema = z.object({
|
|
|
446
450
|
* <= capacity. Empty array means idle, distinct from omitting the
|
|
447
451
|
* field entirely (an old agent binary that's never heard of this). */
|
|
448
452
|
activeBuildIds: z.array(z.string()).optional(),
|
|
453
|
+
/** Whether this Mac has the signed WireGuard helper and can serve a
|
|
454
|
+
* site-to-site VPN build (migrations/0037_vpn.sql). Same COALESCE-on-
|
|
455
|
+
* omission reasoning as agentVersion above: an agent binary that
|
|
456
|
+
* predates the VPN feature omits it and stays `vpnCapable = 0`, so it
|
|
457
|
+
* is never offered a VPN build. */
|
|
458
|
+
vpnCapable: z.boolean().optional(),
|
|
449
459
|
});
|
|
450
460
|
// `POST /builds/:buildId/logs` (apps/admin-api/src/routes/agents.ts) —
|
|
451
461
|
// one call per flushed line/burst from `packages/agent/src/lib/
|
|
@@ -525,6 +535,14 @@ export const updateOtaReleaseRolloutSchema = z.object({
|
|
|
525
535
|
export const setAgentRemoteControlSchema = z.object({
|
|
526
536
|
enabled: z.boolean(),
|
|
527
537
|
});
|
|
538
|
+
/** `PATCH /orgs/:orgId/agents/:agentId/vpn-approved` (apps/admin-api) —
|
|
539
|
+
* the only way `Agent.vpnApproved` ever changes (see @appforge/db's
|
|
540
|
+
* migrations/0039_agent_vpn_approved.sql, issue #643). Deliberately not in
|
|
541
|
+
* agentHeartbeatSchema: the heartbeat's `vpnCapable` is the agent's claim
|
|
542
|
+
* that the helper is installed; this is the platform admin's decision. */
|
|
543
|
+
export const setAgentVpnApprovedSchema = z.object({
|
|
544
|
+
approved: z.boolean(),
|
|
545
|
+
});
|
|
528
546
|
/** `PATCH /orgs/:orgId/agents/:agentId/device-stream-hostname` (apps/
|
|
529
547
|
* admin-api)'s request body — `hostname: null` clears it, going back
|
|
530
548
|
* to the global DEVICE_STREAM_WS_URL fallback (see migrations/0034's
|
|
@@ -544,4 +562,51 @@ export const setAgentDeviceStreamHostnameSchema = z.object({
|
|
|
544
562
|
export const startVncSessionSchema = z.object({
|
|
545
563
|
mode: z.enum(["view", "control"]).optional(),
|
|
546
564
|
});
|
|
565
|
+
// Site-to-site VPN (migrations/0037_vpn.sql). Field-level shape and size
|
|
566
|
+
// bounds only: the cross-field rules (a tunnel /30 not overlapping a LAN,
|
|
567
|
+
// a DNS server inside a LAN, no default routes, a public gateway endpoint)
|
|
568
|
+
// live in `validateVpnTunnelConfig` (vpn-network.ts) so the dashboard, CLI
|
|
569
|
+
// and the route all apply the identical checks, with every problem
|
|
570
|
+
// reported at once.
|
|
571
|
+
const vpnNameSchema = z.string().min(1).max(64, "must be at most 64 characters");
|
|
572
|
+
export const createVpnTunnelSchema = z.object({
|
|
573
|
+
name: vpnNameSchema,
|
|
574
|
+
gatewayEndpoint: z.string().min(1).max(300),
|
|
575
|
+
gatewayPublicKey: z.string().min(1).max(64),
|
|
576
|
+
lanCidrs: z.array(z.string().min(1).max(32)).min(1).max(16),
|
|
577
|
+
dnsServer: z.string().min(1).max(64).nullable().optional(),
|
|
578
|
+
allowedDomains: z.array(z.string().min(1).max(255)).max(32).optional(),
|
|
579
|
+
/** Omit to have the server allocate a free /30. Supply it only when a
|
|
580
|
+
* customer network already routes the allocated range. */
|
|
581
|
+
tunnelCidr: z.string().min(1).max(32).optional(),
|
|
582
|
+
/** Lab mode — allow a private (RFC1918/CGNAT) gateway endpoint. Setting it
|
|
583
|
+
* `true` is platform-admin only (enforced by the route, not here). */
|
|
584
|
+
allowPrivateEndpoint: z.boolean().optional(),
|
|
585
|
+
});
|
|
586
|
+
export const updateVpnTunnelSchema = z.object({
|
|
587
|
+
name: vpnNameSchema.optional(),
|
|
588
|
+
gatewayEndpoint: z.string().min(1).max(300).optional(),
|
|
589
|
+
gatewayPublicKey: z.string().min(1).max(64).optional(),
|
|
590
|
+
lanCidrs: z.array(z.string().min(1).max(32)).min(1).max(16).optional(),
|
|
591
|
+
/** Explicit `null` clears it; omitted leaves it unchanged. */
|
|
592
|
+
dnsServer: z.string().min(1).max(64).nullable().optional(),
|
|
593
|
+
allowedDomains: z.array(z.string().min(1).max(255)).max(32).optional(),
|
|
594
|
+
tunnelCidr: z.string().min(1).max(32).optional(),
|
|
595
|
+
/** Lab mode. `true` is platform-admin only; omitted leaves it unchanged. */
|
|
596
|
+
allowPrivateEndpoint: z.boolean().optional(),
|
|
597
|
+
/** `false` disables the tunnel (builds that need it then fail fast
|
|
598
|
+
* instead of queueing); `true` re-enables it, back to `pending` until
|
|
599
|
+
* the next handshake proves it works. */
|
|
600
|
+
enabled: z.boolean().optional(),
|
|
601
|
+
});
|
|
602
|
+
/** `POST /agents/vpn/report` (apps/admin-api) — what the agent that holds
|
|
603
|
+
* an org's tunnel for a build tells the control plane about it. The
|
|
604
|
+
* handshake outcome drives `VpnTunnel.status` (pending/ready/degraded);
|
|
605
|
+
* every event lands in the org's audit log. `detail` is agent-supplied
|
|
606
|
+
* free text shown to the customer, so it is length-bounded. */
|
|
607
|
+
export const reportVpnEventSchema = z.object({
|
|
608
|
+
buildId: z.string().min(1),
|
|
609
|
+
event: z.enum(["tunnel_up", "tunnel_down", "handshake_ok", "handshake_failed"]),
|
|
610
|
+
detail: z.string().max(300).optional(),
|
|
611
|
+
});
|
|
547
612
|
//# sourceMappingURL=schemas.js.map
|
package/dist/schemas.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -105,6 +105,10 @@ export interface App {
|
|
|
105
105
|
* destructive rotation that invalidates every build already
|
|
106
106
|
* embedding the old key. See `appforge ota app-key`. */
|
|
107
107
|
hasOtaAppKey: boolean;
|
|
108
|
+
/** Opt-in: this app's builds get the org's site-to-site VPN tunnel —
|
|
109
|
+
* see `VpnTunnel`. Optional on the type so a client built before the
|
|
110
|
+
* VPN feature keeps type-checking against a newer server. */
|
|
111
|
+
useVpn?: boolean;
|
|
108
112
|
}
|
|
109
113
|
/** Public shape of `GET /orgs/:orgId/tokens` — deliberately never
|
|
110
114
|
* includes the token value or its hash (see docs/security.md); once
|
|
@@ -231,6 +235,15 @@ export interface AgentInfo {
|
|
|
231
235
|
* permissive-on-null convention, since this gates actual control of
|
|
232
236
|
* hardware, not just a read. */
|
|
233
237
|
remoteControlEnabled: number | null;
|
|
238
|
+
/** The agent reports the verified WireGuard helper is installed (0/1) —
|
|
239
|
+
* self-reported telemetry, see migrations/0037_vpn.sql. Optional so a
|
|
240
|
+
* client typed against this still works against an older API. */
|
|
241
|
+
vpnCapable?: number;
|
|
242
|
+
/** A platform admin granted this Mac VPN duty (0/1) — never self-reported
|
|
243
|
+
* (migrations/0039, issue #643). A Mac serves VPN builds only when this
|
|
244
|
+
* AND `vpnCapable` are 1. Changes via `PATCH .../vpn-approved` or
|
|
245
|
+
* `appforge-admin agents allow-vpn`. Optional for old APIs. */
|
|
246
|
+
vpnApproved?: number;
|
|
234
247
|
cpuUsagePercent: number;
|
|
235
248
|
memUsagePercent: number;
|
|
236
249
|
diskFreeGb: number;
|
|
@@ -442,4 +455,92 @@ export declare function tokenPackDisplay(pack: TokenPack): {
|
|
|
442
455
|
priceCents: number;
|
|
443
456
|
};
|
|
444
457
|
export declare function findTokenPack(packId: string): TokenPack | undefined;
|
|
458
|
+
export type VpnTunnelStatus = "pending" | "ready" | "degraded" | "disabled";
|
|
459
|
+
/**
|
|
460
|
+
* An org's site-to-site VPN tunnel as returned to a client — see
|
|
461
|
+
* packages/db/migrations/0037_vpn.sql. The tunnel's private key and
|
|
462
|
+
* preshared key are never part of this shape; the customer-facing pair of
|
|
463
|
+
* values lives in `VpnPeerConfig`, behind its own admin-only route.
|
|
464
|
+
*/
|
|
465
|
+
export interface VpnTunnel {
|
|
466
|
+
id: string;
|
|
467
|
+
orgId: string;
|
|
468
|
+
name: string;
|
|
469
|
+
/** `pending` until a build completes a real WireGuard handshake,
|
|
470
|
+
* `degraded` after a failed one, `disabled` when the org turned it off. */
|
|
471
|
+
status: VpnTunnelStatus;
|
|
472
|
+
/** The customer's own gateway, `host:port`. */
|
|
473
|
+
gatewayEndpoint: string;
|
|
474
|
+
gatewayPublicKey: string;
|
|
475
|
+
lanCidrs: string[];
|
|
476
|
+
dnsServer: string | null;
|
|
477
|
+
allowedDomains: string[];
|
|
478
|
+
/** The /30 for the two tunnel endpoints — see `tunnelAddresses`. */
|
|
479
|
+
tunnelCidr: string;
|
|
480
|
+
/** "Lab mode": the gateway endpoint may be an RFC1918/CGNAT address (never
|
|
481
|
+
* loopback, link-local, multicast/reserved or 0.0.0.0/8). Only a platform
|
|
482
|
+
* admin can turn it on. Optional so a client built before it existed
|
|
483
|
+
* still type-checks against a newer server. */
|
|
484
|
+
allowPrivateEndpoint?: boolean;
|
|
485
|
+
/** AppForge's side's public key — what the customer adds to their gateway. */
|
|
486
|
+
publicKey: string;
|
|
487
|
+
keyVersion: number;
|
|
488
|
+
lastHandshakeAt: string | null;
|
|
489
|
+
createdAt: string;
|
|
490
|
+
updatedAt: string;
|
|
491
|
+
}
|
|
492
|
+
/** What an org admin pastes into their own gateway. Contains the
|
|
493
|
+
* preshared key, so it is returned only to org owners/admins. */
|
|
494
|
+
export interface VpnPeerConfig {
|
|
495
|
+
/** Ready-to-paste WireGuard `[Peer]` block with setup comments. */
|
|
496
|
+
peerConfig: string;
|
|
497
|
+
publicKey: string;
|
|
498
|
+
presharedKey: string;
|
|
499
|
+
tunnelCidr: string;
|
|
500
|
+
/** The address the customer gives their own WireGuard interface (/30). */
|
|
501
|
+
gatewayAddress: string;
|
|
502
|
+
/** The source address AppForge's builds appear from inside the tunnel. */
|
|
503
|
+
localAddress: string;
|
|
504
|
+
}
|
|
505
|
+
export type VpnEventType = "tunnel_created" | "tunnel_updated" | "tunnel_deleted" | "key_rotated" | "lock_acquired" | "lock_released" | "tunnel_up" | "tunnel_down" | "handshake_ok" | "handshake_failed";
|
|
506
|
+
export interface VpnEvent {
|
|
507
|
+
id: string;
|
|
508
|
+
type: VpnEventType;
|
|
509
|
+
buildId: string | null;
|
|
510
|
+
detail: string | null;
|
|
511
|
+
createdAt: string;
|
|
512
|
+
}
|
|
513
|
+
/**
|
|
514
|
+
* What `/agents/lease-job` hands the one Mac that won an org's exclusive-
|
|
515
|
+
* host lock for a VPN build — everything the agent's WireGuard helper
|
|
516
|
+
* needs and nothing else. Contains the tunnel's private key and preshared
|
|
517
|
+
* key in plaintext, so it exists only in that one in-memory response and
|
|
518
|
+
* the helper's stdin; the agent must never log or persist it.
|
|
519
|
+
*/
|
|
520
|
+
export interface VpnJobConfig {
|
|
521
|
+
tunnelId: string;
|
|
522
|
+
/** Bumped on every key rotation — lets the agent notice stale config. */
|
|
523
|
+
keyVersion: number;
|
|
524
|
+
/** The customer's gateway, `host:port`. The agent must re-resolve the
|
|
525
|
+
* host and re-check it for non-public addresses before dialing. */
|
|
526
|
+
gatewayEndpoint: string;
|
|
527
|
+
gatewayPublicKey: string;
|
|
528
|
+
/** Base64 WireGuard private key / preshared key. */
|
|
529
|
+
privateKey: string;
|
|
530
|
+
presharedKey: string;
|
|
531
|
+
/** This Mac's address inside the tunnel (the builds' source IP), /32. */
|
|
532
|
+
localAddress: string;
|
|
533
|
+
gatewayAddress: string;
|
|
534
|
+
tunnelCidr: string;
|
|
535
|
+
/** Only destinations in these ranges go through the tunnel. */
|
|
536
|
+
lanCidrs: string[];
|
|
537
|
+
dnsServer: string | null;
|
|
538
|
+
allowedDomains: string[];
|
|
539
|
+
/** Lab mode (`VpnTunnel.allowPrivateEndpoint`): the agent re-checks the
|
|
540
|
+
* resolved gateway address against the narrower forbidden set (loopback,
|
|
541
|
+
* link-local, multicast/reserved, 0.0.0.0/8) instead of requiring a public
|
|
542
|
+
* one. Optional so an older server (field absent => false) and an older
|
|
543
|
+
* agent (ignores it => stricter, fails closed) both interoperate. */
|
|
544
|
+
allowPrivateEndpoint?: boolean;
|
|
545
|
+
}
|
|
445
546
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAubH;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAErC;;;+CAG+C;AAC/C,MAAM,CAAC,MAAM,6BAA6B,GAA6B;IACrE,GAAG,EAAE,iBAAiB;IACtB,OAAO,EAAE,iBAAiB;IAC1B,OAAO,EAAE,iBAAiB;IAC1B,cAAc,EAAE,iBAAiB;CAClC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAAkB;IACnD,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAa,CAAC;IAC1D,OAAO,6BAA6B,CAAC,QAAQ,CAAC,IAAI,iBAAiB,CAAC;AACtE,CAAC;AASD,SAAS,kBAAkB,CAAC,IAAe;IACzC,OAAO,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;AACvC,CAAC;AAED,4GAA4G;AAC5G,SAAS,eAAe,CAAC,IAAe,EAAE,iBAAyB;IACjE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,GAAG,GAAG,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAAgB;IACtC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,iCAAiC;IACxG,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,8BAA8B;IACnG,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,gCAAgC;IACrG,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,iCAAiC;CAC1G,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAE,CAAC,CAAC;AAE9E,MAAM,UAAU,gBAAgB,CAAC,IAAe;IAC9C,OAAO;QACL,GAAG,IAAI;QACP,QAAQ,EAAE,IAAI,CAAC,UAAU,GAAG,GAAG;QAC/B,kBAAkB,EAAE,kBAAkB,CAAC,IAAI,CAAC;QAC5C,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,iBAAiB,CAAC;QAC3D,eAAe,EAAE,eAAe,CAAC,IAAI,EAAE,0BAA0B,CAAC;KACnE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;AAClD,CAAC"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure validation + addressing helpers for the site-to-site VPN
|
|
3
|
+
* (`VpnTunnel`, packages/db/migrations/0037_vpn.sql). No I/O, so the API
|
|
4
|
+
* route, CLI and dashboard all validate a tunnel config identically
|
|
5
|
+
* before it reaches the server, and the server never has to trust them.
|
|
6
|
+
*
|
|
7
|
+
* IPv4 only in v1: the tunnel's own /30, every LAN CIDR and the gateway's
|
|
8
|
+
* endpoint IP literal are IPv4. A customer gateway reachable by an IPv6
|
|
9
|
+
* hostname still works through DNS (a hostname endpoint is allowed) — what
|
|
10
|
+
* isn't supported yet is a LAN or tunnel range that is itself IPv6.
|
|
11
|
+
*/
|
|
12
|
+
export interface ParsedCidr {
|
|
13
|
+
/** Network address as an unsigned 32-bit integer. */
|
|
14
|
+
network: number;
|
|
15
|
+
prefix: number;
|
|
16
|
+
}
|
|
17
|
+
export declare function parseIpv4(ip: string): number | null;
|
|
18
|
+
export declare function formatIpv4(n: number): string;
|
|
19
|
+
/** Parses "a.b.c.d/n". Returns null for anything malformed, and for a
|
|
20
|
+
* CIDR whose host bits are set ("10.0.0.5/24") — a silent normalize
|
|
21
|
+
* would hide a typo that routes a different range than the customer
|
|
22
|
+
* meant. */
|
|
23
|
+
export declare function parseCidr(cidr: string): ParsedCidr | null;
|
|
24
|
+
export declare function cidrsOverlap(a: ParsedCidr, b: ParsedCidr): boolean;
|
|
25
|
+
export declare const MAX_LAN_CIDRS = 16;
|
|
26
|
+
export declare const MIN_LAN_PREFIX = 8;
|
|
27
|
+
/** The two usable addresses of a tunnel /30: `gateway` is the customer
|
|
28
|
+
* side (network + 1), `local` is AppForge's side (network + 2). */
|
|
29
|
+
export declare function tunnelAddresses(tunnelCidr: string): {
|
|
30
|
+
gateway: string;
|
|
31
|
+
local: string;
|
|
32
|
+
} | null;
|
|
33
|
+
/**
|
|
34
|
+
* Picks a free /30 from the tunnel pool that doesn't overlap any of the
|
|
35
|
+
* customer's LAN CIDRs. `random` returns a float in [0, 1) — injected so
|
|
36
|
+
* tests are deterministic and the Worker can pass a crypto-backed source.
|
|
37
|
+
*/
|
|
38
|
+
export declare function allocateTunnelCidr(lanCidrs: string[], random: () => number): string;
|
|
39
|
+
/** A WireGuard key is 32 bytes, base64-encoded (44 chars, one trailing '='). */
|
|
40
|
+
export declare function isWireguardKey(value: string): boolean;
|
|
41
|
+
export interface ParsedEndpoint {
|
|
42
|
+
host: string;
|
|
43
|
+
port: number;
|
|
44
|
+
}
|
|
45
|
+
/** True for an IPv4 address (as a 32-bit integer, see `parseIpv4`) that is
|
|
46
|
+
* never a customer's public gateway: pointing the Mac's UDP at one would aim
|
|
47
|
+
* it at the Mac's own network. Exported for the agent, which must re-check a
|
|
48
|
+
* gateway *hostname's* resolved addresses with the same rule right before it
|
|
49
|
+
* dials (a DNS name can resolve to a private IP; the Worker can't see that).
|
|
50
|
+
*
|
|
51
|
+
* This is the DEFAULT rule. A tunnel in "lab mode" (`allowPrivateEndpoint`,
|
|
52
|
+
* migrations/0040) swaps it for the narrower `isForbiddenEndpointIpv4`. */
|
|
53
|
+
export declare function isNonPublicIpv4(ip: number): boolean;
|
|
54
|
+
/**
|
|
55
|
+
* The subset of `isNonPublicIpv4` that must be refused EVEN IN LAB MODE: the
|
|
56
|
+
* RFC1918 (10/8, 172.16/12, 192.168/16) and CGNAT (100.64/10) ranges are the
|
|
57
|
+
* ones a lab or an on-site Mac legitimately needs, so they are exactly what
|
|
58
|
+
* is left out here. What remains has no legitimate gateway behind it and is
|
|
59
|
+
* dangerous to aim the Mac's UDP at:
|
|
60
|
+
* - 127.0.0.0/8: the Mac itself (and anything bound to loopback on it);
|
|
61
|
+
* - 169.254.0.0/16: link-local, including the cloud-metadata address
|
|
62
|
+
* 169.254.169.254 and AppForge's own tunnel pool;
|
|
63
|
+
* - 224.0.0.0/3: multicast, the 240/4 reserved block and 255.255.255.255
|
|
64
|
+
* broadcast;
|
|
65
|
+
* - 0.0.0.0/8: "this host" / unspecified.
|
|
66
|
+
* Mirrored in the agent (vpn-session.ts) and the Go helper
|
|
67
|
+
* (packages/vpn-proxy/internal/config) — keep all three identical.
|
|
68
|
+
*/
|
|
69
|
+
export declare function isForbiddenEndpointIpv4(ip: number): boolean;
|
|
70
|
+
export interface ParseEndpointOptions {
|
|
71
|
+
/** Lab mode (`VpnTunnel.allowPrivateEndpoint`): accept RFC1918/CGNAT IP
|
|
72
|
+
* literals. Loopback, link-local, multicast/reserved and 0.0.0.0/8 are
|
|
73
|
+
* still refused. Default false. */
|
|
74
|
+
allowPrivate?: boolean;
|
|
75
|
+
}
|
|
76
|
+
/** `host:port` where host is a DNS name or a *public* IPv4 literal (or, with
|
|
77
|
+
* `allowPrivate`, a public-or-RFC1918/CGNAT literal). A hostname is only
|
|
78
|
+
* syntax-checked here; what it resolves to is the agent's job, with the same
|
|
79
|
+
* predicate that matches `allowPrivate`. */
|
|
80
|
+
export declare function parseEndpoint(endpoint: string, opts?: ParseEndpointOptions): ParsedEndpoint | {
|
|
81
|
+
error: string;
|
|
82
|
+
};
|
|
83
|
+
export interface VpnTunnelConfigInput {
|
|
84
|
+
gatewayEndpoint: string;
|
|
85
|
+
gatewayPublicKey: string;
|
|
86
|
+
lanCidrs: string[];
|
|
87
|
+
dnsServer?: string | null;
|
|
88
|
+
allowedDomains?: string[];
|
|
89
|
+
tunnelCidr: string;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Validates a complete tunnel config and returns every problem found (an
|
|
93
|
+
* empty array means valid) — callers show them all at once rather than one
|
|
94
|
+
* round trip per mistake. Checks the cross-field rules a per-field zod
|
|
95
|
+
* schema can't: the tunnel /30 must not overlap any LAN range, and the
|
|
96
|
+
* DNS server must sit inside a LAN range (otherwise its queries would not
|
|
97
|
+
* go through the tunnel at all). `opts.allowPrivate` is the tunnel's lab-mode
|
|
98
|
+
* flag; callers pass the tunnel's *effective* value (never one the requester
|
|
99
|
+
* isn't entitled to set), and nothing else in the config is relaxed by it.
|
|
100
|
+
*/
|
|
101
|
+
export declare function validateVpnTunnelConfig(config: VpnTunnelConfigInput, opts?: ParseEndpointOptions): string[];
|
|
102
|
+
/**
|
|
103
|
+
* The text the customer pastes into their own gateway so it accepts our
|
|
104
|
+
* side of the tunnel. Plain WireGuard `[Peer]` syntax — wg-quick, pfSense,
|
|
105
|
+
* OPNsense, MikroTik, FortiGate and UniFi all take these four values. The
|
|
106
|
+
* Mac dials out, so there is deliberately no `Endpoint` line: the gateway
|
|
107
|
+
* learns our address from the handshake and follows it as Macs change.
|
|
108
|
+
*/
|
|
109
|
+
export declare function renderGatewayPeerConfig(input: {
|
|
110
|
+
orgName: string;
|
|
111
|
+
tunnelCidr: string;
|
|
112
|
+
ourPublicKey: string;
|
|
113
|
+
presharedKey: string;
|
|
114
|
+
lanCidrs: string[];
|
|
115
|
+
}): string;
|
|
116
|
+
//# sourceMappingURL=vpn-network.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vpn-network.d.ts","sourceRoot":"","sources":["../src/vpn-network.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,UAAU;IACzB,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAID,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAanD;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE5C;AAMD;;;aAGa;AACb,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAUzD;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,GAAG,OAAO,CAIlE;AAyBD,eAAO,MAAM,aAAa,KAAK,CAAC;AAChC,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC;oEACoE;AACpE,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAI7F;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,MAAM,GAAG,MAAM,CAWnF;AAED,gFAAgF;AAChF,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAKrD;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAKD;;;;;;;4EAO4E;AAC5E,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAWnD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAI3D;AAED,MAAM,WAAW,oBAAoB;IACnC;;wCAEoC;IACpC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;6CAG6C;AAC7C,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,oBAAyB,GAAG,cAAc,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAwCnH;AAID,MAAM,WAAW,oBAAoB;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,oBAAoB,EAAE,IAAI,GAAE,oBAAyB,GAAG,MAAM,EAAE,CAwE/G;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,GAAG,MAAM,CA2BT"}
|