@kelpie/schemas 0.5.2 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agentTask.d.ts +17 -1
- package/dist/agentTask.d.ts.map +1 -1
- package/dist/agentTask.js +5 -0
- package/dist/agentTask.js.map +1 -1
- package/dist/events.d.ts +97 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +59 -0
- package/dist/events.js.map +1 -0
- package/dist/importExport.d.ts +34 -3
- package/dist/importExport.d.ts.map +1 -1
- package/dist/importExport.js +27 -3
- package/dist/importExport.js.map +1 -1
- package/dist/index.d.ts +6 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/publicConfig.d.ts +28 -0
- package/dist/publicConfig.d.ts.map +1 -0
- package/dist/publicConfig.js +11 -0
- package/dist/publicConfig.js.map +1 -0
- package/package.json +1 -1
- package/src/agentTask.ts +22 -1
- package/src/events.ts +90 -0
- package/src/importExport.ts +47 -3
- package/src/index.ts +14 -0
- package/src/publicConfig.ts +31 -0
package/dist/agentTask.d.ts
CHANGED
|
@@ -34,12 +34,28 @@ export interface AgentTaskContextPack {
|
|
|
34
34
|
readonly openDecisionIds: readonly string[];
|
|
35
35
|
readonly related: Readonly<Record<string, readonly string[]>>;
|
|
36
36
|
}
|
|
37
|
-
/**
|
|
37
|
+
/**
|
|
38
|
+
* What resolve answers, and what a run dispatches. Two prompts, one body.
|
|
39
|
+
*
|
|
40
|
+
* - `prompt` — the external-agent-framed prompt: opens with "operating via
|
|
41
|
+
* MCP / the public API" and closes with "Done when… applied allowed
|
|
42
|
+
* updates". What Copy hands to the user and what dispatch sends by
|
|
43
|
+
* default. An agent that runs its own tool loop reads this and works
|
|
44
|
+
* from it directly.
|
|
45
|
+
* - `basePrompt` — the shared body, without the framing. An agent that
|
|
46
|
+
* returns structured data for a caller to apply (the hosted AI in the
|
|
47
|
+
* cloud is the one that ships) reads this and adds its own instructions
|
|
48
|
+
* for how to reply.
|
|
49
|
+
*
|
|
50
|
+
* The wire also carries the base as `base_prompt` alongside `prompt`; a
|
|
51
|
+
* receiver picks the one that matches how it will execute.
|
|
52
|
+
*/
|
|
38
53
|
export interface ResolvedAgentTask {
|
|
39
54
|
readonly taskId: string;
|
|
40
55
|
readonly targetType: AgentTaskTargetType;
|
|
41
56
|
readonly targetId: string;
|
|
42
57
|
readonly prompt: string;
|
|
58
|
+
readonly basePrompt: string;
|
|
43
59
|
readonly context: AgentTaskContextPack;
|
|
44
60
|
}
|
|
45
61
|
export declare const resolvedAgentTaskSchema: z.ZodType<ResolvedAgentTask, unknown>;
|
package/dist/agentTask.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentTask.d.ts","sourceRoot":"","sources":["../src/agentTask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAOvB,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAO1F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAEjD;;;;;;;GAOG;AAEH,kFAAkF;AAClF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,WAAW,EAAE,SAAS,mBAAmB,EAAE,CAAA;IACpD,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAA;IACtC,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAA;IACzC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC7B;AAED,eAAO,MAAM,yBAAyB,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAE,OAAO,CAsB3E,CAAA;AAEH;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAA;IACzC,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAA;IACzC,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAA;IACvC,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAA;IAC3C,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAA;CAC9D;AAwBD
|
|
1
|
+
{"version":3,"file":"agentTask.d.ts","sourceRoot":"","sources":["../src/agentTask.ts"],"names":[],"mappings":"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"}
|
package/dist/agentTask.js
CHANGED
|
@@ -47,6 +47,10 @@ export const resolvedAgentTaskSchema = z
|
|
|
47
47
|
target_type: z.enum(AGENT_TASK_TARGET_TYPES),
|
|
48
48
|
target_id: idSchema,
|
|
49
49
|
prompt: z.string(),
|
|
50
|
+
// Older core versions did not send this; treat it as optional on parse
|
|
51
|
+
// and fall back to `prompt` so a client built against the new schema
|
|
52
|
+
// still works against an older server.
|
|
53
|
+
base_prompt: z.string().optional(),
|
|
50
54
|
context: contextPackSchema,
|
|
51
55
|
})
|
|
52
56
|
.transform((wire) => ({
|
|
@@ -54,6 +58,7 @@ export const resolvedAgentTaskSchema = z
|
|
|
54
58
|
targetType: wire.target_type,
|
|
55
59
|
targetId: wire.target_id,
|
|
56
60
|
prompt: wire.prompt,
|
|
61
|
+
basePrompt: wire.base_prompt ?? wire.prompt,
|
|
57
62
|
context: wire.context,
|
|
58
63
|
}));
|
|
59
64
|
export function resolveAgentTaskBody(input) {
|
package/dist/agentTask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentTask.js","sourceRoot":"","sources":["../src/agentTask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,aAAa,CAAA;AAEpB,OAAO,EACL,aAAa,EACb,QAAQ,EACR,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,WAAW,CAAA;AAwBlB,MAAM,CAAC,MAAM,yBAAyB,GAA4C,CAAC;KAChF,MAAM,CAAC;IACN,EAAE,EAAE,QAAQ;IACZ,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACtD,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC;IACxC,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACnC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;CACzB,CAAC;KACD,SAAS,CACR,CAAC,IAAI,EAAuB,EAAE,CAAC,CAAC;IAC9B,EAAE,EAAE,IAAI,CAAC,EAAE;IACX,KAAK,EAAE,IAAI,CAAC,KAAK;IACjB,WAAW,EAAE,IAAI,CAAC,WAAW;IAC7B,WAAW,EAAE,IAAI,CAAC,YAAY;IAC9B,SAAS,EAAE,IAAI,CAAC,SAAS;IACzB,aAAa,EAAE,IAAI,CAAC,cAAc;IAClC,YAAY,EAAE,IAAI,CAAC,YAAY;IAC/B,WAAW,EAAE,IAAI,CAAC,YAAY;CAC/B,CAAC,CACH,CAAA;AAgBH,MAAM,iBAAiB,GAA6C,CAAC;KAClE,MAAM,CAAC;IACN,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACnC,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC;IAClC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC;IAChC,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC;IACpC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;CACjD,CAAC;KACD,SAAS,CACR,CAAC,IAAI,EAAwB,EAAE,CAAC,CAAC;IAC/B,WAAW,EAAE,IAAI,CAAC,YAAY;IAC9B,QAAQ,EAAE,IAAI,CAAC,SAAS;IACxB,aAAa,EAAE,IAAI,CAAC,cAAc;IAClC,aAAa,EAAE,IAAI,CAAC,eAAe;IACnC,WAAW,EAAE,IAAI,CAAC,aAAa;IAC/B,eAAe,EAAE,IAAI,CAAC,iBAAiB;IACvC,OAAO,EAAE,IAAI,CAAC,OAAO;CACtB,CAAC,CACH,CAAA;
|
|
1
|
+
{"version":3,"file":"agentTask.js","sourceRoot":"","sources":["../src/agentTask.ts"],"names":[],"mappings":"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"}
|
package/dist/events.d.ts
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* The wire shape of a Kelpie event.
|
|
4
|
+
*
|
|
5
|
+
* Every event, no matter which module publishes it, uses the same envelope. The
|
|
6
|
+
* `data` field is the module-defined payload; everything else is universal so
|
|
7
|
+
* webhooks, MCP consumers, and downstream handlers can read the envelope without
|
|
8
|
+
* knowing which event type they are looking at.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Who caused the event.
|
|
12
|
+
*
|
|
13
|
+
* A user or an agent carries the actor id. A system actor is the server acting
|
|
14
|
+
* on its own (a background job, a scheduled task) and has no identity.
|
|
15
|
+
*/
|
|
16
|
+
export declare const eventActorSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
17
|
+
kind: z.ZodLiteral<"user">;
|
|
18
|
+
id: z.ZodString;
|
|
19
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
20
|
+
kind: z.ZodLiteral<"agent">;
|
|
21
|
+
id: z.ZodString;
|
|
22
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
23
|
+
kind: z.ZodLiteral<"system">;
|
|
24
|
+
}, z.core.$strip>], "kind">;
|
|
25
|
+
export type EventActor = z.infer<typeof eventActorSchema>;
|
|
26
|
+
/**
|
|
27
|
+
* What the event refers to. `type` is the CRM object type (`person`, `deal`,
|
|
28
|
+
* ...); `id` is its primary key.
|
|
29
|
+
*/
|
|
30
|
+
export declare const eventTargetSchema: z.ZodObject<{
|
|
31
|
+
type: z.ZodString;
|
|
32
|
+
id: z.ZodString;
|
|
33
|
+
}, z.core.$strip>;
|
|
34
|
+
export type EventTarget = z.infer<typeof eventTargetSchema>;
|
|
35
|
+
/**
|
|
36
|
+
* The universal fields around a module's `data`.
|
|
37
|
+
*
|
|
38
|
+
* `data` is left unknown here because the wire schema is not tied to any one
|
|
39
|
+
* module's catalog; a consumer that wants to type it dispatches on `name`.
|
|
40
|
+
*/
|
|
41
|
+
export declare const eventEnvelopeSchema: z.ZodObject<{
|
|
42
|
+
id: z.ZodString;
|
|
43
|
+
name: z.ZodString;
|
|
44
|
+
workspaceId: z.ZodString;
|
|
45
|
+
actor: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
46
|
+
kind: z.ZodLiteral<"user">;
|
|
47
|
+
id: z.ZodString;
|
|
48
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
49
|
+
kind: z.ZodLiteral<"agent">;
|
|
50
|
+
id: z.ZodString;
|
|
51
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
52
|
+
kind: z.ZodLiteral<"system">;
|
|
53
|
+
}, z.core.$strip>], "kind">;
|
|
54
|
+
occurredAt: z.ZodISODateTime;
|
|
55
|
+
target: z.ZodObject<{
|
|
56
|
+
type: z.ZodString;
|
|
57
|
+
id: z.ZodString;
|
|
58
|
+
}, z.core.$strip>;
|
|
59
|
+
causedBy: z.ZodOptional<z.ZodString>;
|
|
60
|
+
data: z.ZodUnknown;
|
|
61
|
+
}, z.core.$strip>;
|
|
62
|
+
/**
|
|
63
|
+
* The strongly-typed event as it moves through the in-process bus. The wire
|
|
64
|
+
* schema erases `data`; this generic keeps it typed for the module that owns
|
|
65
|
+
* the event.
|
|
66
|
+
*/
|
|
67
|
+
export interface KelpieEvent<Name extends string, Data> {
|
|
68
|
+
readonly id: string;
|
|
69
|
+
readonly name: Name;
|
|
70
|
+
readonly workspaceId: string;
|
|
71
|
+
readonly actor: EventActor;
|
|
72
|
+
readonly occurredAt: string;
|
|
73
|
+
readonly target: EventTarget;
|
|
74
|
+
readonly causedBy?: string;
|
|
75
|
+
readonly data: Data;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Builds a Zod schema for the payload of an update event. `changed` is what
|
|
79
|
+
* the emitter observed; `before` and `after` carry only those fields plus the
|
|
80
|
+
* primary key, so payloads stay small and subscribers can filter on `changed`
|
|
81
|
+
* without diffing again.
|
|
82
|
+
*/
|
|
83
|
+
export declare function updateEventSchema<Fields extends z.ZodObject<z.ZodRawShape>>(fields: Fields): z.ZodObject<{
|
|
84
|
+
before: z.ZodObject<{
|
|
85
|
+
[x: string]: z.ZodOptional<z.core.$ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>;
|
|
86
|
+
}, z.core.$strip>;
|
|
87
|
+
after: z.ZodObject<{
|
|
88
|
+
[x: string]: z.ZodOptional<z.core.$ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>;
|
|
89
|
+
}, z.core.$strip>;
|
|
90
|
+
changed: z.ZodArray<z.ZodString>;
|
|
91
|
+
}, z.core.$strip>;
|
|
92
|
+
export interface UpdateEventData<Fields> {
|
|
93
|
+
readonly before: Partial<Fields>;
|
|
94
|
+
readonly after: Partial<Fields>;
|
|
95
|
+
readonly changed: readonly string[];
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB;;;;;;;GAOG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;2BAI3B,CAAA;AAEF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAEzD;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;iBAG5B,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;iBAS9B,CAAA;AAEF;;;;GAIG;AACH,MAAM,WAAW,WAAW,CAAC,IAAI,SAAS,MAAM,EAAE,IAAI;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,MAAM;;;;;;;;kBAM1F;AAED,MAAM,WAAW,eAAe,CAAC,MAAM;IACrC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAChC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAC/B,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;CACpC"}
|
package/dist/events.js
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { idSchema } from './wire.js';
|
|
3
|
+
/**
|
|
4
|
+
* The wire shape of a Kelpie event.
|
|
5
|
+
*
|
|
6
|
+
* Every event, no matter which module publishes it, uses the same envelope. The
|
|
7
|
+
* `data` field is the module-defined payload; everything else is universal so
|
|
8
|
+
* webhooks, MCP consumers, and downstream handlers can read the envelope without
|
|
9
|
+
* knowing which event type they are looking at.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Who caused the event.
|
|
13
|
+
*
|
|
14
|
+
* A user or an agent carries the actor id. A system actor is the server acting
|
|
15
|
+
* on its own (a background job, a scheduled task) and has no identity.
|
|
16
|
+
*/
|
|
17
|
+
export const eventActorSchema = z.discriminatedUnion('kind', [
|
|
18
|
+
z.object({ kind: z.literal('user'), id: idSchema }),
|
|
19
|
+
z.object({ kind: z.literal('agent'), id: idSchema }),
|
|
20
|
+
z.object({ kind: z.literal('system') }),
|
|
21
|
+
]);
|
|
22
|
+
/**
|
|
23
|
+
* What the event refers to. `type` is the CRM object type (`person`, `deal`,
|
|
24
|
+
* ...); `id` is its primary key.
|
|
25
|
+
*/
|
|
26
|
+
export const eventTargetSchema = z.object({
|
|
27
|
+
type: z.string().min(1),
|
|
28
|
+
id: idSchema,
|
|
29
|
+
});
|
|
30
|
+
/**
|
|
31
|
+
* The universal fields around a module's `data`.
|
|
32
|
+
*
|
|
33
|
+
* `data` is left unknown here because the wire schema is not tied to any one
|
|
34
|
+
* module's catalog; a consumer that wants to type it dispatches on `name`.
|
|
35
|
+
*/
|
|
36
|
+
export const eventEnvelopeSchema = z.object({
|
|
37
|
+
id: idSchema,
|
|
38
|
+
name: z.string().min(1),
|
|
39
|
+
workspaceId: idSchema,
|
|
40
|
+
actor: eventActorSchema,
|
|
41
|
+
occurredAt: z.iso.datetime(),
|
|
42
|
+
target: eventTargetSchema,
|
|
43
|
+
causedBy: idSchema.optional(),
|
|
44
|
+
data: z.unknown(),
|
|
45
|
+
});
|
|
46
|
+
/**
|
|
47
|
+
* Builds a Zod schema for the payload of an update event. `changed` is what
|
|
48
|
+
* the emitter observed; `before` and `after` carry only those fields plus the
|
|
49
|
+
* primary key, so payloads stay small and subscribers can filter on `changed`
|
|
50
|
+
* without diffing again.
|
|
51
|
+
*/
|
|
52
|
+
export function updateEventSchema(fields) {
|
|
53
|
+
return z.object({
|
|
54
|
+
before: fields.partial(),
|
|
55
|
+
after: fields.partial(),
|
|
56
|
+
changed: z.array(z.string()),
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC;;;;;;;GAOG;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC3D,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;IACnD,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;IACpD,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;CACxC,CAAC,CAAA;AAIF;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,EAAE,EAAE,QAAQ;CACb,CAAC,CAAA;AAIF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,EAAE,EAAE,QAAQ;IACZ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,WAAW,EAAE,QAAQ;IACrB,KAAK,EAAE,gBAAgB;IACvB,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;IAC5B,MAAM,EAAE,iBAAiB;IACzB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE;IAC7B,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;CAClB,CAAC,CAAA;AAkBF;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAA4C,MAAc;IACzF,OAAO,CAAC,CAAC,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE;QACxB,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE;QACvB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;KAC7B,CAAC,CAAA;AACJ,CAAC"}
|
package/dist/importExport.d.ts
CHANGED
|
@@ -9,9 +9,19 @@ import type { RecordTimestamps } from './wire.ts';
|
|
|
9
9
|
* the mapping table from it. The source presets do not, so they stay server-side
|
|
10
10
|
* — a caller sends a `column_map` and never has to know how one was derived.
|
|
11
11
|
*/
|
|
12
|
-
export declare const IMPORT_SOURCES: readonly ['custom', 'hubspot', 'salesforce'];
|
|
12
|
+
export declare const IMPORT_SOURCES: readonly ['custom', 'hubspot', 'salesforce', 'attio'];
|
|
13
13
|
export declare const IMPORT_OBJECTS: readonly ['companies', 'people', 'positions', 'deals'];
|
|
14
14
|
export declare const IMPORT_CONFLICT_MODES: readonly ['skip', 'update'];
|
|
15
|
+
/**
|
|
16
|
+
* What a People import does when a row names a company that is not in the
|
|
17
|
+
* workspace yet.
|
|
18
|
+
*
|
|
19
|
+
* `skip` imports the person and leaves the affiliation unlinked, reporting it as
|
|
20
|
+
* a row warning. `create` invents the company from the row's own domain and name
|
|
21
|
+
* so the position can be linked. Only the People import reads this; the other
|
|
22
|
+
* objects fail a missing company outright, per `import-export.md`.
|
|
23
|
+
*/
|
|
24
|
+
export declare const ON_MISSING_COMPANY: readonly ['skip', 'create'];
|
|
15
25
|
/**
|
|
16
26
|
* `pending → validating → ready | failed → committing → completed | failed`.
|
|
17
27
|
*
|
|
@@ -31,6 +41,7 @@ export declare const IMPORT_ROW_ACTIONS: readonly ['pending', 'create', 'update'
|
|
|
31
41
|
export type ImportSource = (typeof IMPORT_SOURCES)[number];
|
|
32
42
|
export type ImportObject = (typeof IMPORT_OBJECTS)[number];
|
|
33
43
|
export type ImportConflictMode = (typeof IMPORT_CONFLICT_MODES)[number];
|
|
44
|
+
export type OnMissingCompany = (typeof ON_MISSING_COMPANY)[number];
|
|
34
45
|
export type ImportJobStatus = (typeof IMPORT_JOB_STATUSES)[number];
|
|
35
46
|
export type ImportRowAction = (typeof IMPORT_ROW_ACTIONS)[number];
|
|
36
47
|
/** A row that has been planned. What a dry run and a commit both write back. */
|
|
@@ -54,11 +65,21 @@ export declare const IMPORT_REPORTED_ERRORS = 50;
|
|
|
54
65
|
export declare const OBJECT_LABELS: Readonly<Record<ImportObject, string>>;
|
|
55
66
|
export declare const SOURCE_LABELS: Readonly<Record<ImportSource, string>>;
|
|
56
67
|
export declare const CONFLICT_MODE_LABELS: Readonly<Record<ImportConflictMode, string>>;
|
|
68
|
+
export declare const ON_MISSING_COMPANY_LABELS: Readonly<Record<OnMissingCompany, string>>;
|
|
57
69
|
export interface CsvColumn {
|
|
58
70
|
/** The Kelpie CSV header, and the key a `column_map` is keyed by. */
|
|
59
71
|
readonly key: string;
|
|
60
72
|
readonly label: string;
|
|
61
73
|
readonly required: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* A column an import may map but an export never writes.
|
|
76
|
+
*
|
|
77
|
+
* The People affiliation columns are the only ones: a person can hold many
|
|
78
|
+
* positions, so a single company and title on the person row would be lossy on
|
|
79
|
+
* the way out. They map on the way in to drive a Position, and the export and
|
|
80
|
+
* template leave them out. See `headersFor`.
|
|
81
|
+
*/
|
|
82
|
+
readonly importOnly?: boolean;
|
|
62
83
|
}
|
|
63
84
|
/**
|
|
64
85
|
* The canonical Kelpie CSV columns per object (`import-export.md`).
|
|
@@ -66,8 +87,10 @@ export interface CsvColumn {
|
|
|
66
87
|
* Order is the header order of an export and of a template, so a file Kelpie
|
|
67
88
|
* wrote maps onto itself by exact header match with no preset involved.
|
|
68
89
|
*
|
|
69
|
-
* Job title is
|
|
70
|
-
*
|
|
90
|
+
* Job title is never stored on Person: it lives on Position. A People import may
|
|
91
|
+
* still carry `company_domain`, `company_name` and `title`, which drive a
|
|
92
|
+
* Position for the person rather than a field on them. Those three are
|
|
93
|
+
* `importOnly`, so an export and a template leave them out.
|
|
71
94
|
*/
|
|
72
95
|
export declare const OBJECT_COLUMNS: Readonly<Record<ImportObject, readonly CsvColumn[]>>;
|
|
73
96
|
/** Columns whose value is a pipe-separated list (`a|b|c`), per `import-export.md`. */
|
|
@@ -122,6 +145,8 @@ export interface ImportJob extends RecordTimestamps {
|
|
|
122
145
|
readonly object: ImportObject;
|
|
123
146
|
readonly status: ImportJobStatus;
|
|
124
147
|
readonly conflictMode: ImportConflictMode;
|
|
148
|
+
/** What a People import does with a row naming an absent company. `skip` for every other object. */
|
|
149
|
+
readonly onMissingCompany: OnMissingCompany;
|
|
125
150
|
readonly matchKey: string;
|
|
126
151
|
readonly columnMap: ImportColumnMap;
|
|
127
152
|
/** The headers as they appeared in the uploaded file, in file order. */
|
|
@@ -130,6 +155,12 @@ export interface ImportJob extends RecordTimestamps {
|
|
|
130
155
|
readonly counts: ImportCounts;
|
|
131
156
|
/** At most `IMPORT_REPORTED_ERRORS`. `counts.error` is the true number of failing rows. */
|
|
132
157
|
readonly errors: readonly ImportRowError[];
|
|
158
|
+
/**
|
|
159
|
+
* Non-fatal notes about rows that were imported. A People row whose company is
|
|
160
|
+
* absent under `on_missing_company: skip` lands here: the person imported, the
|
|
161
|
+
* position did not. At most `IMPORT_REPORTED_ERRORS`.
|
|
162
|
+
*/
|
|
163
|
+
readonly warnings: readonly ImportRowError[];
|
|
133
164
|
readonly preview: readonly ImportPreviewRow[];
|
|
134
165
|
}
|
|
135
166
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importExport.d.ts","sourceRoot":"","sources":["../src/importExport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAEjD;;;;;;;;GAQG;AAEH,eAAO,MAAM,cAAc,YAAI,QAAQ,EAAE,SAAS,EAAE,YAAY,CAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"importExport.d.ts","sourceRoot":"","sources":["../src/importExport.ts"],"names":[],"mappings":"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"}
|
package/dist/importExport.js
CHANGED
|
@@ -9,9 +9,19 @@ import { idSchema, recordTimestamps } from './wire.js';
|
|
|
9
9
|
* the mapping table from it. The source presets do not, so they stay server-side
|
|
10
10
|
* — a caller sends a `column_map` and never has to know how one was derived.
|
|
11
11
|
*/
|
|
12
|
-
export const IMPORT_SOURCES = ['custom', 'hubspot', 'salesforce'];
|
|
12
|
+
export const IMPORT_SOURCES = ['custom', 'hubspot', 'salesforce', 'attio'];
|
|
13
13
|
export const IMPORT_OBJECTS = ['companies', 'people', 'positions', 'deals'];
|
|
14
14
|
export const IMPORT_CONFLICT_MODES = ['skip', 'update'];
|
|
15
|
+
/**
|
|
16
|
+
* What a People import does when a row names a company that is not in the
|
|
17
|
+
* workspace yet.
|
|
18
|
+
*
|
|
19
|
+
* `skip` imports the person and leaves the affiliation unlinked, reporting it as
|
|
20
|
+
* a row warning. `create` invents the company from the row's own domain and name
|
|
21
|
+
* so the position can be linked. Only the People import reads this; the other
|
|
22
|
+
* objects fail a missing company outright, per `import-export.md`.
|
|
23
|
+
*/
|
|
24
|
+
export const ON_MISSING_COMPANY = ['skip', 'create'];
|
|
15
25
|
/**
|
|
16
26
|
* `pending → validating → ready | failed → committing → completed | failed`.
|
|
17
27
|
*
|
|
@@ -61,19 +71,26 @@ export const SOURCE_LABELS = {
|
|
|
61
71
|
custom: 'Custom CSV',
|
|
62
72
|
hubspot: 'HubSpot CSV pack',
|
|
63
73
|
salesforce: 'Salesforce CSV pack',
|
|
74
|
+
attio: 'Attio CSV pack',
|
|
64
75
|
};
|
|
65
76
|
export const CONFLICT_MODE_LABELS = {
|
|
66
77
|
skip: 'Skip existing',
|
|
67
78
|
update: 'Update existing',
|
|
68
79
|
};
|
|
80
|
+
export const ON_MISSING_COMPANY_LABELS = {
|
|
81
|
+
skip: 'Skip and report',
|
|
82
|
+
create: 'Create the company',
|
|
83
|
+
};
|
|
69
84
|
/**
|
|
70
85
|
* The canonical Kelpie CSV columns per object (`import-export.md`).
|
|
71
86
|
*
|
|
72
87
|
* Order is the header order of an export and of a template, so a file Kelpie
|
|
73
88
|
* wrote maps onto itself by exact header match with no preset involved.
|
|
74
89
|
*
|
|
75
|
-
* Job title is
|
|
76
|
-
*
|
|
90
|
+
* Job title is never stored on Person: it lives on Position. A People import may
|
|
91
|
+
* still carry `company_domain`, `company_name` and `title`, which drive a
|
|
92
|
+
* Position for the person rather than a field on them. Those three are
|
|
93
|
+
* `importOnly`, so an export and a template leave them out.
|
|
77
94
|
*/
|
|
78
95
|
export const OBJECT_COLUMNS = {
|
|
79
96
|
companies: [
|
|
@@ -101,6 +118,9 @@ export const OBJECT_COLUMNS = {
|
|
|
101
118
|
{ key: 'summary', label: 'Summary', required: false },
|
|
102
119
|
{ key: 'tags', label: 'Tags', required: false },
|
|
103
120
|
{ key: 'phones', label: 'Phones', required: false },
|
|
121
|
+
{ key: 'company_domain', label: 'Company domain', required: false, importOnly: true },
|
|
122
|
+
{ key: 'company_name', label: 'Company name', required: false, importOnly: true },
|
|
123
|
+
{ key: 'title', label: 'Title', required: false, importOnly: true },
|
|
104
124
|
],
|
|
105
125
|
positions: [
|
|
106
126
|
{ key: 'person_email', label: 'Person email', required: true },
|
|
@@ -207,12 +227,14 @@ export const importJobSchema = z
|
|
|
207
227
|
object: z.enum(IMPORT_OBJECTS),
|
|
208
228
|
status: z.enum(IMPORT_JOB_STATUSES),
|
|
209
229
|
conflict_mode: z.enum(IMPORT_CONFLICT_MODES),
|
|
230
|
+
on_missing_company: z.enum(ON_MISSING_COMPANY),
|
|
210
231
|
match_key: z.string(),
|
|
211
232
|
column_map: z.record(z.string(), z.string().nullable()),
|
|
212
233
|
source_headers: z.array(z.string()),
|
|
213
234
|
file_name: z.string().nullable(),
|
|
214
235
|
counts: countsSchema,
|
|
215
236
|
errors: z.array(rowErrorSchema),
|
|
237
|
+
warnings: z.array(rowErrorSchema),
|
|
216
238
|
preview: z.array(previewRowSchema),
|
|
217
239
|
...recordTimestamps,
|
|
218
240
|
})
|
|
@@ -222,12 +244,14 @@ export const importJobSchema = z
|
|
|
222
244
|
object: wire.object,
|
|
223
245
|
status: wire.status,
|
|
224
246
|
conflictMode: wire.conflict_mode,
|
|
247
|
+
onMissingCompany: wire.on_missing_company,
|
|
225
248
|
matchKey: wire.match_key,
|
|
226
249
|
columnMap: wire.column_map,
|
|
227
250
|
sourceHeaders: wire.source_headers,
|
|
228
251
|
fileName: wire.file_name,
|
|
229
252
|
counts: wire.counts,
|
|
230
253
|
errors: wire.errors,
|
|
254
|
+
warnings: wire.warnings,
|
|
231
255
|
preview: wire.preview,
|
|
232
256
|
createdAt: wire.created_at,
|
|
233
257
|
updatedAt: wire.updated_at,
|
package/dist/importExport.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importExport.js","sourceRoot":"","sources":["../src/importExport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAGtD;;;;;;;;GAQG;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,CAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"importExport.js","sourceRoot":"","sources":["../src/importExport.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -16,6 +16,8 @@ export { ACCOUNT_TYPES, ACTIVITY_KINDS, AGENT_RUN_STATUS_LABELS, AGENT_RUN_STATU
|
|
|
16
16
|
export type { AccountType, ActivityKind, AgentRunStatus, AgentTaskPlacement, AgentTaskTargetType, ApiKeyKind, CandidateStatus, CompanyStage, ExtensibleRecordType, FormFieldMapTarget, FormFieldType, FormOptionValueType, FormStatus, IcpFit, Influence, InterviewStage, InvitableRole, InviteStatus, MemberRole, PipelineKind, PlanItemStatus, PreferredChannel, RecordTargetType, Relationship, RoleStatus, SearchCollection, SizeBand, SocialNetworkId, ThemePreference, WebhookDeliveryStatus, WebhookEvent, WebhookSettableStatus, WebhookStatus, } from './values.ts';
|
|
17
17
|
export { definedFields, idSchema, nullableTimestampSchema, timestampSchema } from './wire.ts';
|
|
18
18
|
export type { RecordTimestamps } from './wire.ts';
|
|
19
|
+
export { eventActorSchema, eventEnvelopeSchema, eventTargetSchema, updateEventSchema, } from './events.ts';
|
|
20
|
+
export type { EventActor, EventTarget, KelpieEvent, UpdateEventData } from './events.ts';
|
|
19
21
|
export { personBody, personSchema } from './person.ts';
|
|
20
22
|
export type { Person, PersonInput, SocialProfile } from './person.ts';
|
|
21
23
|
export { companyBody, companySchema } from './company.ts';
|
|
@@ -48,8 +50,8 @@ export { createFormBody, formBody, formSchema } from './form.ts';
|
|
|
48
50
|
export type { CreateFormInput, Form, FormField, FormFieldInput, FormFieldOption, FormFieldOptionInput, FormInput, } from './form.ts';
|
|
49
51
|
export { formSubmissionSchema, formSubmitResultSchema } from './formSubmission.ts';
|
|
50
52
|
export type { FormSubmission, FormSubmitResult } from './formSubmission.ts';
|
|
51
|
-
export { CONFLICT_MODE_LABELS, IMPORT_CONFLICT_MODES, IMPORT_JOB_STATUSES, IMPORT_OBJECTS, IMPORT_PREVIEW_ROWS, IMPORT_REPORTED_ERRORS, IMPORT_ROW_ACTIONS, IMPORT_SOURCES, LIST_COLUMNS, MATCH_KEYS, MAX_IMPORT_FILE_BYTES, MAX_IMPORT_ROWS, OBJECT_COLUMNS, OBJECT_LABELS, SOURCE_LABELS, SYNC_IMPORT_ROWS, defaultMatchKeyId, findMatchKey, importJobSchema, isImportJobSettled, requiredColumns, } from './importExport.ts';
|
|
52
|
-
export type { CsvColumn, ImportColumnMap, ImportConflictMode, ImportCounts, ImportJob, ImportJobStatus, ImportObject, ImportPreviewRow, ImportRowAction, ImportRowError, ImportSource, MatchKeyOption, SettledRowAction, } from './importExport.ts';
|
|
53
|
+
export { CONFLICT_MODE_LABELS, IMPORT_CONFLICT_MODES, IMPORT_JOB_STATUSES, IMPORT_OBJECTS, IMPORT_PREVIEW_ROWS, IMPORT_REPORTED_ERRORS, IMPORT_ROW_ACTIONS, IMPORT_SOURCES, LIST_COLUMNS, MATCH_KEYS, MAX_IMPORT_FILE_BYTES, MAX_IMPORT_ROWS, OBJECT_COLUMNS, OBJECT_LABELS, ON_MISSING_COMPANY, ON_MISSING_COMPANY_LABELS, SOURCE_LABELS, SYNC_IMPORT_ROWS, defaultMatchKeyId, findMatchKey, importJobSchema, isImportJobSettled, requiredColumns, } from './importExport.ts';
|
|
54
|
+
export type { CsvColumn, ImportColumnMap, ImportConflictMode, ImportCounts, ImportJob, ImportJobStatus, ImportObject, ImportPreviewRow, ImportRowAction, ImportRowError, ImportSource, MatchKeyOption, OnMissingCompany, SettledRowAction, } from './importExport.ts';
|
|
53
55
|
export { WEBHOOK_SECRET_OVERLAP_HOURS, createWebhookBody, createdWebhookSchema, rotateWebhookSecretBody, webhookBody, webhookDeliverySchema, webhookSchema, } from './webhook.ts';
|
|
54
56
|
export type { CreateWebhookInput, CreatedWebhook, RotateWebhookSecretInput, Webhook, WebhookDelivery, WebhookInput, } from './webhook.ts';
|
|
55
57
|
export { apiKeySchema, createApiKeyBody, createdApiKeySchema } from './apiKey.ts';
|
|
@@ -74,4 +76,6 @@ export { confirmEmailVerificationBody, confirmPasswordResetBody, createWorkspace
|
|
|
74
76
|
export type { ConfirmEmailVerificationInput, ConfirmPasswordResetInput, CreateWorkspaceInput, LogInInput, RequestPasswordResetInput, Session, SignUpInput, SignedInAccount, UpdateWorkspaceInput, Workspace, } from './session.ts';
|
|
75
77
|
export { MINIMUM_PASSWORD_LENGTH, accountPreferencesSchema, accountSchema, accountSessionSchema, changePasswordBody, updateAccountBody, updateAccountPreferencesBody, } from './account.ts';
|
|
76
78
|
export type { Account, AccountPreferences, AccountSession, ChangePasswordInput, UpdateAccountInput, UpdateAccountPreferencesInput, } from './account.ts';
|
|
79
|
+
export { publicConfigSchema } from './publicConfig.ts';
|
|
80
|
+
export type { PublicConfig, PublicRuntimeMode } from './publicConfig.ts';
|
|
77
81
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EACL,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EACvB,aAAa,EACb,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,sBAAsB,EACtB,gBAAgB,EAChB,uBAAuB,EACvB,aAAa,EACb,QAAQ,EACR,UAAU,EACV,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,yBAAyB,EACzB,cAAc,EACd,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,aAAa,CAAA;AACpB,YAAY,EACV,WAAW,EACX,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,EACV,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,mBAAmB,EACnB,UAAU,EACV,MAAM,EACN,SAAS,EACT,cAAc,EACd,aAAa,EACb,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,YAAY,EACZ,qBAAqB,EACrB,aAAa,GACd,MAAM,aAAa,CAAA;AAEpB,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC7F,YAAY,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAEjD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AACtD,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAErE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACzD,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAEzD,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AACtF,YAAY,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAElE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAChD,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAEhD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACrE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAErE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACrE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAErE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACnD,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEnD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAChD,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAEhD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AACpF,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAErF,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EACV,wBAAwB,EACxB,aAAa,EACb,wBAAwB,GACzB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAChE,YAAY,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAEjE,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAChF,YAAY,EAAE,mBAAmB,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAEjF,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAChF,YAAY,EAAE,mBAAmB,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAEjF,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EACV,uBAAuB,EACvB,YAAY,EACZ,iBAAiB,GAClB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAChE,YAAY,EACV,eAAe,EACf,IAAI,EACJ,SAAS,EACT,cAAc,EACd,eAAe,EACf,oBAAoB,EACpB,SAAS,GACV,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAClF,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAE3E,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,UAAU,EACV,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,eAAe,GAChB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EACV,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,SAAS,EACT,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,YAAY,EACZ,cAAc,EACd,gBAAgB,GACjB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EACL,4BAA4B,EAC5B,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,EACvB,WAAW,EACX,qBAAqB,EACrB,aAAa,GACd,MAAM,cAAc,CAAA;AACrB,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EACxB,OAAO,EACP,eAAe,EACf,YAAY,GACb,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjF,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAE3E,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,gBAAgB,CAAA;AACvB,YAAY,EACV,QAAQ,EACR,oBAAoB,EACpB,mBAAmB,EACnB,0BAA0B,EAC1B,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,YAAY,EACV,SAAS,EACT,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,SAAS,GACV,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEjF,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAChE,YAAY,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAEhE,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AACjF,YAAY,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAEjF,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,YAAY,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAE3C,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC5D,YAAY,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAE5D,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,mBAAmB,EACnB,SAAS,EACT,wBAAwB,EACxB,aAAa,EACb,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,GAChB,MAAM,cAAc,CAAA;AACrB,YAAY,EACV,6BAA6B,EAC7B,yBAAyB,EACzB,oBAAoB,EACpB,UAAU,EACV,yBAAyB,EACzB,OAAO,EACP,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,SAAS,GACV,MAAM,cAAc,CAAA;AAErB,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,cAAc,CAAA;AACrB,YAAY,EACV,OAAO,EACP,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,6BAA6B,GAC9B,MAAM,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
*/
|
|
15
15
|
export { ACCOUNT_TYPES, ACTIVITY_KINDS, AGENT_RUN_STATUS_LABELS, AGENT_RUN_STATUSES, AGENT_TASK_PLACEMENTS, AGENT_TASK_TARGET_TYPES, API_KEY_KINDS, CANDIDATE_STATUS_LABELS, CANDIDATE_STATUSES, COMPANY_STAGES, EXTENSIBLE_RECORD_TYPES, FIRST_INTERVIEW_STAGE, FORM_FIELD_MAP_TARGET_LABELS, FORM_FIELD_MAP_TARGETS, FORM_FIELD_TYPES, FORM_OPTION_VALUE_TYPES, FORM_STATUSES, ICP_FITS, IN_PROCESS, INFLUENCE_LEVELS, INTERVIEW_STAGE_LABELS, INTERVIEW_STAGES, INVITABLE_ROLES, INVITE_STATUSES, MEMBER_ROLES, OPEN_PLAN_ITEM_STATUSES, PERSON_EMAIL_TARGET, PIPELINE_KIND_LABELS, PIPELINE_KINDS, PLAN_ITEM_STATUS_LABELS, PLAN_ITEM_STATUSES, PREFERRED_CHANNELS, RECORD_TARGET_TYPES, RELATIONSHIP_LEVELS, ROLE_STATUS_LABELS, ROLE_STATUSES, SEARCH_COLLECTIONS, SIZE_BANDS, SOCIAL_NETWORK_IDS, SOCIAL_NETWORK_LABELS, THEME_PREFERENCES, WEBHOOK_DELIVERY_STATUSES, WEBHOOK_EVENTS, WEBHOOK_SETTABLE_STATUSES, WEBHOOK_STATUS_LABELS, WEBHOOK_STATUSES, } from './values.js';
|
|
16
16
|
export { definedFields, idSchema, nullableTimestampSchema, timestampSchema } from './wire.js';
|
|
17
|
+
export { eventActorSchema, eventEnvelopeSchema, eventTargetSchema, updateEventSchema, } from './events.js';
|
|
17
18
|
export { personBody, personSchema } from './person.js';
|
|
18
19
|
export { companyBody, companySchema } from './company.js';
|
|
19
20
|
export { createPositionBody, positionSchema, updatePositionBody } from './position.js';
|
|
@@ -30,7 +31,7 @@ export { createDecisionBody, decisionBody, decisionSchema } from './decision.js'
|
|
|
30
31
|
export { MAX_HANDBOOK_DEPTH, createHandbookPageBody, handbookPageBody, handbookPageSchema, } from './handbookPage.js';
|
|
31
32
|
export { createFormBody, formBody, formSchema } from './form.js';
|
|
32
33
|
export { formSubmissionSchema, formSubmitResultSchema } from './formSubmission.js';
|
|
33
|
-
export { CONFLICT_MODE_LABELS, IMPORT_CONFLICT_MODES, IMPORT_JOB_STATUSES, IMPORT_OBJECTS, IMPORT_PREVIEW_ROWS, IMPORT_REPORTED_ERRORS, IMPORT_ROW_ACTIONS, IMPORT_SOURCES, LIST_COLUMNS, MATCH_KEYS, MAX_IMPORT_FILE_BYTES, MAX_IMPORT_ROWS, OBJECT_COLUMNS, OBJECT_LABELS, SOURCE_LABELS, SYNC_IMPORT_ROWS, defaultMatchKeyId, findMatchKey, importJobSchema, isImportJobSettled, requiredColumns, } from './importExport.js';
|
|
34
|
+
export { CONFLICT_MODE_LABELS, IMPORT_CONFLICT_MODES, IMPORT_JOB_STATUSES, IMPORT_OBJECTS, IMPORT_PREVIEW_ROWS, IMPORT_REPORTED_ERRORS, IMPORT_ROW_ACTIONS, IMPORT_SOURCES, LIST_COLUMNS, MATCH_KEYS, MAX_IMPORT_FILE_BYTES, MAX_IMPORT_ROWS, OBJECT_COLUMNS, OBJECT_LABELS, ON_MISSING_COMPANY, ON_MISSING_COMPANY_LABELS, SOURCE_LABELS, SYNC_IMPORT_ROWS, defaultMatchKeyId, findMatchKey, importJobSchema, isImportJobSettled, requiredColumns, } from './importExport.js';
|
|
34
35
|
export { WEBHOOK_SECRET_OVERLAP_HOURS, createWebhookBody, createdWebhookSchema, rotateWebhookSecretBody, webhookBody, webhookDeliverySchema, webhookSchema, } from './webhook.js';
|
|
35
36
|
export { apiKeySchema, createApiKeyBody, createdApiKeySchema } from './apiKey.js';
|
|
36
37
|
export { agentRunSchema, agentTaskDefinitionSchema, createRegisteredAgentBody, registeredAgentBody, registeredAgentSchema, resolveAgentTaskBody, resolvedAgentTaskSchema, runAgentTaskBody, } from './agentTask.js';
|
|
@@ -43,4 +44,5 @@ export { mcpToolSchema } from './mcpTool.js';
|
|
|
43
44
|
export { createInviteBody, inviteSchema } from './invite.js';
|
|
44
45
|
export { confirmEmailVerificationBody, confirmPasswordResetBody, createWorkspaceBody, logInBody, requestPasswordResetBody, sessionSchema, signUpBody, signedInAccountSchema, updateWorkspaceBody, workspaceSchema, } from './session.js';
|
|
45
46
|
export { MINIMUM_PASSWORD_LENGTH, accountPreferencesSchema, accountSchema, accountSessionSchema, changePasswordBody, updateAccountBody, updateAccountPreferencesBody, } from './account.js';
|
|
47
|
+
export { publicConfigSchema } from './publicConfig.js';
|
|
46
48
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EACL,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EACvB,aAAa,EACb,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,sBAAsB,EACtB,gBAAgB,EAChB,uBAAuB,EACvB,aAAa,EACb,QAAQ,EACR,UAAU,EACV,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,yBAAyB,EACzB,cAAc,EACd,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,aAAa,CAAA;AAqCpB,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAG7F,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAGtD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAGzD,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAGtF,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAGhD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGrE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGrE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAGnD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAGhD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAGpF,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,oBAAoB,CAAA;AAO3B,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAGhE,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAGhF,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAGhF,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,mBAAmB,CAAA;AAO1B,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAWhE,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAGlF,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,UAAU,EACV,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,eAAe,GAChB,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* Wire shape for `GET /v1/public/config`.
|
|
4
|
+
*
|
|
5
|
+
* A public, credential-free endpoint the browser reads once at boot. It names
|
|
6
|
+
* which runtime the server is in, and the human-readable name of this
|
|
7
|
+
* deployment. The UI uses `runtimeMode` to gate a non-production banner and
|
|
8
|
+
* `siteName` to label it. Nothing here is sensitive: `runtimeMode` is
|
|
9
|
+
* observable from any error message, and `siteName` exists to be visible.
|
|
10
|
+
*/
|
|
11
|
+
export type PublicRuntimeMode = 'development' | 'test' | 'production';
|
|
12
|
+
export interface PublicConfig {
|
|
13
|
+
readonly runtimeMode: PublicRuntimeMode;
|
|
14
|
+
/** Undefined when the assembly did not set `KELPIE_SITE_NAME`. */
|
|
15
|
+
readonly siteName: string | null;
|
|
16
|
+
}
|
|
17
|
+
export declare const publicConfigSchema: z.ZodPipe<z.ZodObject<{
|
|
18
|
+
runtime_mode: z.ZodEnum<{
|
|
19
|
+
development: "development";
|
|
20
|
+
production: "production";
|
|
21
|
+
test: "test";
|
|
22
|
+
}>;
|
|
23
|
+
site_name: z.ZodNullable<z.ZodString>;
|
|
24
|
+
}, z.core.$strict>, z.ZodTransform<PublicConfig, {
|
|
25
|
+
runtime_mode: "development" | "production" | "test";
|
|
26
|
+
site_name: string | null;
|
|
27
|
+
}>>;
|
|
28
|
+
//# sourceMappingURL=publicConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publicConfig.d.ts","sourceRoot":"","sources":["../src/publicConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB;;;;;;;;GAQG;AAEH,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,MAAM,GAAG,YAAY,CAAA;AAErE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAA;IACvC,kEAAkE;IAClE,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CACjC;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;GAU5B,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export const publicConfigSchema = z
|
|
3
|
+
.strictObject({
|
|
4
|
+
runtime_mode: z.enum(['development', 'test', 'production']),
|
|
5
|
+
site_name: z.string().min(1).nullable(),
|
|
6
|
+
})
|
|
7
|
+
.transform((wire) => ({
|
|
8
|
+
runtimeMode: wire.runtime_mode,
|
|
9
|
+
siteName: wire.site_name,
|
|
10
|
+
}));
|
|
11
|
+
//# sourceMappingURL=publicConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publicConfig.js","sourceRoot":"","sources":["../src/publicConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAoBvB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,YAAY,CAAC;IACZ,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAC3D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACxC,CAAC;KACD,SAAS,CACR,CAAC,IAAI,EAAgB,EAAE,CAAC,CAAC;IACvB,WAAW,EAAE,IAAI,CAAC,YAAY;IAC9B,QAAQ,EAAE,IAAI,CAAC,SAAS;CACzB,CAAC,CACH,CAAA"}
|
package/package.json
CHANGED
package/src/agentTask.ts
CHANGED
|
@@ -95,12 +95,28 @@ const contextPackSchema: z.ZodType<AgentTaskContextPack, unknown> = z
|
|
|
95
95
|
}),
|
|
96
96
|
)
|
|
97
97
|
|
|
98
|
-
/**
|
|
98
|
+
/**
|
|
99
|
+
* What resolve answers, and what a run dispatches. Two prompts, one body.
|
|
100
|
+
*
|
|
101
|
+
* - `prompt` — the external-agent-framed prompt: opens with "operating via
|
|
102
|
+
* MCP / the public API" and closes with "Done when… applied allowed
|
|
103
|
+
* updates". What Copy hands to the user and what dispatch sends by
|
|
104
|
+
* default. An agent that runs its own tool loop reads this and works
|
|
105
|
+
* from it directly.
|
|
106
|
+
* - `basePrompt` — the shared body, without the framing. An agent that
|
|
107
|
+
* returns structured data for a caller to apply (the hosted AI in the
|
|
108
|
+
* cloud is the one that ships) reads this and adds its own instructions
|
|
109
|
+
* for how to reply.
|
|
110
|
+
*
|
|
111
|
+
* The wire also carries the base as `base_prompt` alongside `prompt`; a
|
|
112
|
+
* receiver picks the one that matches how it will execute.
|
|
113
|
+
*/
|
|
99
114
|
export interface ResolvedAgentTask {
|
|
100
115
|
readonly taskId: string
|
|
101
116
|
readonly targetType: AgentTaskTargetType
|
|
102
117
|
readonly targetId: string
|
|
103
118
|
readonly prompt: string
|
|
119
|
+
readonly basePrompt: string
|
|
104
120
|
readonly context: AgentTaskContextPack
|
|
105
121
|
}
|
|
106
122
|
|
|
@@ -110,6 +126,10 @@ export const resolvedAgentTaskSchema: z.ZodType<ResolvedAgentTask, unknown> = z
|
|
|
110
126
|
target_type: z.enum(AGENT_TASK_TARGET_TYPES),
|
|
111
127
|
target_id: idSchema,
|
|
112
128
|
prompt: z.string(),
|
|
129
|
+
// Older core versions did not send this; treat it as optional on parse
|
|
130
|
+
// and fall back to `prompt` so a client built against the new schema
|
|
131
|
+
// still works against an older server.
|
|
132
|
+
base_prompt: z.string().optional(),
|
|
113
133
|
context: contextPackSchema,
|
|
114
134
|
})
|
|
115
135
|
.transform(
|
|
@@ -118,6 +138,7 @@ export const resolvedAgentTaskSchema: z.ZodType<ResolvedAgentTask, unknown> = z
|
|
|
118
138
|
targetType: wire.target_type,
|
|
119
139
|
targetId: wire.target_id,
|
|
120
140
|
prompt: wire.prompt,
|
|
141
|
+
basePrompt: wire.base_prompt ?? wire.prompt,
|
|
121
142
|
context: wire.context,
|
|
122
143
|
}),
|
|
123
144
|
)
|
package/src/events.ts
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { z } from 'zod'
|
|
2
|
+
|
|
3
|
+
import { idSchema } from './wire.ts'
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* The wire shape of a Kelpie event.
|
|
7
|
+
*
|
|
8
|
+
* Every event, no matter which module publishes it, uses the same envelope. The
|
|
9
|
+
* `data` field is the module-defined payload; everything else is universal so
|
|
10
|
+
* webhooks, MCP consumers, and downstream handlers can read the envelope without
|
|
11
|
+
* knowing which event type they are looking at.
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Who caused the event.
|
|
16
|
+
*
|
|
17
|
+
* A user or an agent carries the actor id. A system actor is the server acting
|
|
18
|
+
* on its own (a background job, a scheduled task) and has no identity.
|
|
19
|
+
*/
|
|
20
|
+
export const eventActorSchema = z.discriminatedUnion('kind', [
|
|
21
|
+
z.object({ kind: z.literal('user'), id: idSchema }),
|
|
22
|
+
z.object({ kind: z.literal('agent'), id: idSchema }),
|
|
23
|
+
z.object({ kind: z.literal('system') }),
|
|
24
|
+
])
|
|
25
|
+
|
|
26
|
+
export type EventActor = z.infer<typeof eventActorSchema>
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* What the event refers to. `type` is the CRM object type (`person`, `deal`,
|
|
30
|
+
* ...); `id` is its primary key.
|
|
31
|
+
*/
|
|
32
|
+
export const eventTargetSchema = z.object({
|
|
33
|
+
type: z.string().min(1),
|
|
34
|
+
id: idSchema,
|
|
35
|
+
})
|
|
36
|
+
|
|
37
|
+
export type EventTarget = z.infer<typeof eventTargetSchema>
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* The universal fields around a module's `data`.
|
|
41
|
+
*
|
|
42
|
+
* `data` is left unknown here because the wire schema is not tied to any one
|
|
43
|
+
* module's catalog; a consumer that wants to type it dispatches on `name`.
|
|
44
|
+
*/
|
|
45
|
+
export const eventEnvelopeSchema = z.object({
|
|
46
|
+
id: idSchema,
|
|
47
|
+
name: z.string().min(1),
|
|
48
|
+
workspaceId: idSchema,
|
|
49
|
+
actor: eventActorSchema,
|
|
50
|
+
occurredAt: z.iso.datetime(),
|
|
51
|
+
target: eventTargetSchema,
|
|
52
|
+
causedBy: idSchema.optional(),
|
|
53
|
+
data: z.unknown(),
|
|
54
|
+
})
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* The strongly-typed event as it moves through the in-process bus. The wire
|
|
58
|
+
* schema erases `data`; this generic keeps it typed for the module that owns
|
|
59
|
+
* the event.
|
|
60
|
+
*/
|
|
61
|
+
export interface KelpieEvent<Name extends string, Data> {
|
|
62
|
+
readonly id: string
|
|
63
|
+
readonly name: Name
|
|
64
|
+
readonly workspaceId: string
|
|
65
|
+
readonly actor: EventActor
|
|
66
|
+
readonly occurredAt: string
|
|
67
|
+
readonly target: EventTarget
|
|
68
|
+
readonly causedBy?: string
|
|
69
|
+
readonly data: Data
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Builds a Zod schema for the payload of an update event. `changed` is what
|
|
74
|
+
* the emitter observed; `before` and `after` carry only those fields plus the
|
|
75
|
+
* primary key, so payloads stay small and subscribers can filter on `changed`
|
|
76
|
+
* without diffing again.
|
|
77
|
+
*/
|
|
78
|
+
export function updateEventSchema<Fields extends z.ZodObject<z.ZodRawShape>>(fields: Fields) {
|
|
79
|
+
return z.object({
|
|
80
|
+
before: fields.partial(),
|
|
81
|
+
after: fields.partial(),
|
|
82
|
+
changed: z.array(z.string()),
|
|
83
|
+
})
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export interface UpdateEventData<Fields> {
|
|
87
|
+
readonly before: Partial<Fields>
|
|
88
|
+
readonly after: Partial<Fields>
|
|
89
|
+
readonly changed: readonly string[]
|
|
90
|
+
}
|
package/src/importExport.ts
CHANGED
|
@@ -13,10 +13,21 @@ import type { RecordTimestamps } from './wire.ts'
|
|
|
13
13
|
* — a caller sends a `column_map` and never has to know how one was derived.
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
|
-
export const IMPORT_SOURCES = ['custom', 'hubspot', 'salesforce'] as const
|
|
16
|
+
export const IMPORT_SOURCES = ['custom', 'hubspot', 'salesforce', 'attio'] as const
|
|
17
17
|
export const IMPORT_OBJECTS = ['companies', 'people', 'positions', 'deals'] as const
|
|
18
18
|
export const IMPORT_CONFLICT_MODES = ['skip', 'update'] as const
|
|
19
19
|
|
|
20
|
+
/**
|
|
21
|
+
* What a People import does when a row names a company that is not in the
|
|
22
|
+
* workspace yet.
|
|
23
|
+
*
|
|
24
|
+
* `skip` imports the person and leaves the affiliation unlinked, reporting it as
|
|
25
|
+
* a row warning. `create` invents the company from the row's own domain and name
|
|
26
|
+
* so the position can be linked. Only the People import reads this; the other
|
|
27
|
+
* objects fail a missing company outright, per `import-export.md`.
|
|
28
|
+
*/
|
|
29
|
+
export const ON_MISSING_COMPANY = ['skip', 'create'] as const
|
|
30
|
+
|
|
20
31
|
/**
|
|
21
32
|
* `pending → validating → ready | failed → committing → completed | failed`.
|
|
22
33
|
*
|
|
@@ -45,6 +56,7 @@ export const IMPORT_ROW_ACTIONS = ['pending', 'create', 'update', 'skip', 'error
|
|
|
45
56
|
export type ImportSource = (typeof IMPORT_SOURCES)[number]
|
|
46
57
|
export type ImportObject = (typeof IMPORT_OBJECTS)[number]
|
|
47
58
|
export type ImportConflictMode = (typeof IMPORT_CONFLICT_MODES)[number]
|
|
59
|
+
export type OnMissingCompany = (typeof ON_MISSING_COMPANY)[number]
|
|
48
60
|
export type ImportJobStatus = (typeof IMPORT_JOB_STATUSES)[number]
|
|
49
61
|
export type ImportRowAction = (typeof IMPORT_ROW_ACTIONS)[number]
|
|
50
62
|
|
|
@@ -82,6 +94,7 @@ export const SOURCE_LABELS: Readonly<Record<ImportSource, string>> = {
|
|
|
82
94
|
custom: 'Custom CSV',
|
|
83
95
|
hubspot: 'HubSpot CSV pack',
|
|
84
96
|
salesforce: 'Salesforce CSV pack',
|
|
97
|
+
attio: 'Attio CSV pack',
|
|
85
98
|
}
|
|
86
99
|
|
|
87
100
|
export const CONFLICT_MODE_LABELS: Readonly<Record<ImportConflictMode, string>> = {
|
|
@@ -89,11 +102,25 @@ export const CONFLICT_MODE_LABELS: Readonly<Record<ImportConflictMode, string>>
|
|
|
89
102
|
update: 'Update existing',
|
|
90
103
|
}
|
|
91
104
|
|
|
105
|
+
export const ON_MISSING_COMPANY_LABELS: Readonly<Record<OnMissingCompany, string>> = {
|
|
106
|
+
skip: 'Skip and report',
|
|
107
|
+
create: 'Create the company',
|
|
108
|
+
}
|
|
109
|
+
|
|
92
110
|
export interface CsvColumn {
|
|
93
111
|
/** The Kelpie CSV header, and the key a `column_map` is keyed by. */
|
|
94
112
|
readonly key: string
|
|
95
113
|
readonly label: string
|
|
96
114
|
readonly required: boolean
|
|
115
|
+
/**
|
|
116
|
+
* A column an import may map but an export never writes.
|
|
117
|
+
*
|
|
118
|
+
* The People affiliation columns are the only ones: a person can hold many
|
|
119
|
+
* positions, so a single company and title on the person row would be lossy on
|
|
120
|
+
* the way out. They map on the way in to drive a Position, and the export and
|
|
121
|
+
* template leave them out. See `headersFor`.
|
|
122
|
+
*/
|
|
123
|
+
readonly importOnly?: boolean
|
|
97
124
|
}
|
|
98
125
|
|
|
99
126
|
/**
|
|
@@ -102,8 +129,10 @@ export interface CsvColumn {
|
|
|
102
129
|
* Order is the header order of an export and of a template, so a file Kelpie
|
|
103
130
|
* wrote maps onto itself by exact header match with no preset involved.
|
|
104
131
|
*
|
|
105
|
-
* Job title is
|
|
106
|
-
*
|
|
132
|
+
* Job title is never stored on Person: it lives on Position. A People import may
|
|
133
|
+
* still carry `company_domain`, `company_name` and `title`, which drive a
|
|
134
|
+
* Position for the person rather than a field on them. Those three are
|
|
135
|
+
* `importOnly`, so an export and a template leave them out.
|
|
107
136
|
*/
|
|
108
137
|
export const OBJECT_COLUMNS: Readonly<Record<ImportObject, readonly CsvColumn[]>> = {
|
|
109
138
|
companies: [
|
|
@@ -131,6 +160,9 @@ export const OBJECT_COLUMNS: Readonly<Record<ImportObject, readonly CsvColumn[]>
|
|
|
131
160
|
{ key: 'summary', label: 'Summary', required: false },
|
|
132
161
|
{ key: 'tags', label: 'Tags', required: false },
|
|
133
162
|
{ key: 'phones', label: 'Phones', required: false },
|
|
163
|
+
{ key: 'company_domain', label: 'Company domain', required: false, importOnly: true },
|
|
164
|
+
{ key: 'company_name', label: 'Company name', required: false, importOnly: true },
|
|
165
|
+
{ key: 'title', label: 'Title', required: false, importOnly: true },
|
|
134
166
|
],
|
|
135
167
|
positions: [
|
|
136
168
|
{ key: 'person_email', label: 'Person email', required: true },
|
|
@@ -262,6 +294,8 @@ export interface ImportJob extends RecordTimestamps {
|
|
|
262
294
|
readonly object: ImportObject
|
|
263
295
|
readonly status: ImportJobStatus
|
|
264
296
|
readonly conflictMode: ImportConflictMode
|
|
297
|
+
/** What a People import does with a row naming an absent company. `skip` for every other object. */
|
|
298
|
+
readonly onMissingCompany: OnMissingCompany
|
|
265
299
|
readonly matchKey: string
|
|
266
300
|
readonly columnMap: ImportColumnMap
|
|
267
301
|
/** The headers as they appeared in the uploaded file, in file order. */
|
|
@@ -270,6 +304,12 @@ export interface ImportJob extends RecordTimestamps {
|
|
|
270
304
|
readonly counts: ImportCounts
|
|
271
305
|
/** At most `IMPORT_REPORTED_ERRORS`. `counts.error` is the true number of failing rows. */
|
|
272
306
|
readonly errors: readonly ImportRowError[]
|
|
307
|
+
/**
|
|
308
|
+
* Non-fatal notes about rows that were imported. A People row whose company is
|
|
309
|
+
* absent under `on_missing_company: skip` lands here: the person imported, the
|
|
310
|
+
* position did not. At most `IMPORT_REPORTED_ERRORS`.
|
|
311
|
+
*/
|
|
312
|
+
readonly warnings: readonly ImportRowError[]
|
|
273
313
|
readonly preview: readonly ImportPreviewRow[]
|
|
274
314
|
}
|
|
275
315
|
|
|
@@ -305,12 +345,14 @@ export const importJobSchema: z.ZodType<ImportJob, unknown> = z
|
|
|
305
345
|
object: z.enum(IMPORT_OBJECTS),
|
|
306
346
|
status: z.enum(IMPORT_JOB_STATUSES),
|
|
307
347
|
conflict_mode: z.enum(IMPORT_CONFLICT_MODES),
|
|
348
|
+
on_missing_company: z.enum(ON_MISSING_COMPANY),
|
|
308
349
|
match_key: z.string(),
|
|
309
350
|
column_map: z.record(z.string(), z.string().nullable()),
|
|
310
351
|
source_headers: z.array(z.string()),
|
|
311
352
|
file_name: z.string().nullable(),
|
|
312
353
|
counts: countsSchema,
|
|
313
354
|
errors: z.array(rowErrorSchema),
|
|
355
|
+
warnings: z.array(rowErrorSchema),
|
|
314
356
|
preview: z.array(previewRowSchema),
|
|
315
357
|
...recordTimestamps,
|
|
316
358
|
})
|
|
@@ -321,12 +363,14 @@ export const importJobSchema: z.ZodType<ImportJob, unknown> = z
|
|
|
321
363
|
object: wire.object,
|
|
322
364
|
status: wire.status,
|
|
323
365
|
conflictMode: wire.conflict_mode,
|
|
366
|
+
onMissingCompany: wire.on_missing_company,
|
|
324
367
|
matchKey: wire.match_key,
|
|
325
368
|
columnMap: wire.column_map,
|
|
326
369
|
sourceHeaders: wire.source_headers,
|
|
327
370
|
fileName: wire.file_name,
|
|
328
371
|
counts: wire.counts,
|
|
329
372
|
errors: wire.errors,
|
|
373
|
+
warnings: wire.warnings,
|
|
330
374
|
preview: wire.preview,
|
|
331
375
|
createdAt: wire.created_at,
|
|
332
376
|
updatedAt: wire.updated_at,
|
package/src/index.ts
CHANGED
|
@@ -100,6 +100,14 @@ export type {
|
|
|
100
100
|
export { definedFields, idSchema, nullableTimestampSchema, timestampSchema } from './wire.ts'
|
|
101
101
|
export type { RecordTimestamps } from './wire.ts'
|
|
102
102
|
|
|
103
|
+
export {
|
|
104
|
+
eventActorSchema,
|
|
105
|
+
eventEnvelopeSchema,
|
|
106
|
+
eventTargetSchema,
|
|
107
|
+
updateEventSchema,
|
|
108
|
+
} from './events.ts'
|
|
109
|
+
export type { EventActor, EventTarget, KelpieEvent, UpdateEventData } from './events.ts'
|
|
110
|
+
|
|
103
111
|
export { personBody, personSchema } from './person.ts'
|
|
104
112
|
export type { Person, PersonInput, SocialProfile } from './person.ts'
|
|
105
113
|
|
|
@@ -188,6 +196,8 @@ export {
|
|
|
188
196
|
MAX_IMPORT_ROWS,
|
|
189
197
|
OBJECT_COLUMNS,
|
|
190
198
|
OBJECT_LABELS,
|
|
199
|
+
ON_MISSING_COMPANY,
|
|
200
|
+
ON_MISSING_COMPANY_LABELS,
|
|
191
201
|
SOURCE_LABELS,
|
|
192
202
|
SYNC_IMPORT_ROWS,
|
|
193
203
|
defaultMatchKeyId,
|
|
@@ -209,6 +219,7 @@ export type {
|
|
|
209
219
|
ImportRowError,
|
|
210
220
|
ImportSource,
|
|
211
221
|
MatchKeyOption,
|
|
222
|
+
OnMissingCompany,
|
|
212
223
|
SettledRowAction,
|
|
213
224
|
} from './importExport.ts'
|
|
214
225
|
|
|
@@ -329,3 +340,6 @@ export type {
|
|
|
329
340
|
UpdateAccountInput,
|
|
330
341
|
UpdateAccountPreferencesInput,
|
|
331
342
|
} from './account.ts'
|
|
343
|
+
|
|
344
|
+
export { publicConfigSchema } from './publicConfig.ts'
|
|
345
|
+
export type { PublicConfig, PublicRuntimeMode } from './publicConfig.ts'
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { z } from 'zod'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Wire shape for `GET /v1/public/config`.
|
|
5
|
+
*
|
|
6
|
+
* A public, credential-free endpoint the browser reads once at boot. It names
|
|
7
|
+
* which runtime the server is in, and the human-readable name of this
|
|
8
|
+
* deployment. The UI uses `runtimeMode` to gate a non-production banner and
|
|
9
|
+
* `siteName` to label it. Nothing here is sensitive: `runtimeMode` is
|
|
10
|
+
* observable from any error message, and `siteName` exists to be visible.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
export type PublicRuntimeMode = 'development' | 'test' | 'production'
|
|
14
|
+
|
|
15
|
+
export interface PublicConfig {
|
|
16
|
+
readonly runtimeMode: PublicRuntimeMode
|
|
17
|
+
/** Undefined when the assembly did not set `KELPIE_SITE_NAME`. */
|
|
18
|
+
readonly siteName: string | null
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export const publicConfigSchema = z
|
|
22
|
+
.strictObject({
|
|
23
|
+
runtime_mode: z.enum(['development', 'test', 'production']),
|
|
24
|
+
site_name: z.string().min(1).nullable(),
|
|
25
|
+
})
|
|
26
|
+
.transform(
|
|
27
|
+
(wire): PublicConfig => ({
|
|
28
|
+
runtimeMode: wire.runtime_mode,
|
|
29
|
+
siteName: wire.site_name,
|
|
30
|
+
}),
|
|
31
|
+
)
|