@notionhq/apps 0.0.17 → 0.0.18
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/AGENTS.md +27 -0
- package/README.md +60 -35
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/notion-as-code/database.d.ts +88 -48
- package/dist/notion-as-code/database.d.ts.map +1 -1
- package/dist/notion-as-code/database.js +132 -45
- package/dist/notion-as-code/database.test.d.ts +2 -0
- package/dist/notion-as-code/database.test.d.ts.map +1 -0
- package/dist/notion-as-code/index.d.ts +2 -2
- package/dist/notion-as-code/index.d.ts.map +1 -1
- package/dist/notion-as-code/intents.d.ts +34 -2
- package/dist/notion-as-code/intents.d.ts.map +1 -1
- package/dist/notion-as-code/schema.d.ts +8 -4
- package/dist/notion-as-code/schema.d.ts.map +1 -1
- package/dist/notion-as-code/views.d.ts +29 -10
- package/dist/notion-as-code/views.d.ts.map +1 -1
- package/dist/sync.d.ts +33 -15
- package/dist/sync.d.ts.map +1 -1
- package/dist/sync.js +12 -0
- package/dist/workflow-state.d.ts +13 -0
- package/dist/workflow-state.d.ts.map +1 -0
- package/dist/workflow-state.js +107 -0
- package/dist/workflow.d.ts +48 -3
- package/dist/workflow.d.ts.map +1 -1
- package/dist/workflow.js +111 -4
- package/docs/BUILD.md +96 -0
- package/package.json +1 -1
- package/skills/notion-as-code/SKILL.md +81 -49
- package/skills/sync/SKILL.md +21 -18
- package/skills/workflow/SKILL.md +52 -3
- package/src/cli/build.test.ts +124 -64
- package/src/index.ts +1 -0
- package/src/notion-as-code/database.test.ts +661 -0
- package/src/notion-as-code/database.ts +344 -127
- package/src/notion-as-code/index.ts +16 -1
- package/src/notion-as-code/intents.ts +39 -2
- package/src/notion-as-code/schema.ts +11 -3
- package/src/notion-as-code/views.ts +29 -10
- package/src/sync.test.ts +295 -0
- package/src/sync.ts +85 -21
- package/src/workflow-state.ts +152 -0
- package/src/workflow.test.ts +329 -1
- package/src/workflow.ts +180 -6
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { CustomAgentArgs } from "./custom-agent.js";
|
|
2
|
-
import type { DatabaseArgs } from "./database.js";
|
|
3
2
|
import type { PageArgs } from "./page.js";
|
|
4
3
|
import type { TeamspaceArgs } from "./teamspace.js";
|
|
5
4
|
import type { ViewSchema } from "./views.js";
|
|
@@ -44,6 +43,7 @@ type UnsupportedProperty = PropertyBase & {
|
|
|
44
43
|
type: "relation" | "formula" | "rollup" | "created_time" | "last_edited_time" | "created_by" | "last_edited_by" | "auto_increment_id" | "person" | "verification";
|
|
45
44
|
[key: string]: unknown;
|
|
46
45
|
};
|
|
46
|
+
/** A normalized Notion-as-Code property with its resolved display name. */
|
|
47
47
|
export type NotionAsCodeProperty = (PropertyBase & {
|
|
48
48
|
type: "title";
|
|
49
49
|
}) | (PropertyBase & {
|
|
@@ -82,6 +82,24 @@ export type NotionAsCodeProperty = (PropertyBase & {
|
|
|
82
82
|
}) | (PropertyBase & {
|
|
83
83
|
type: "file";
|
|
84
84
|
}) | UnsupportedProperty;
|
|
85
|
+
/**
|
|
86
|
+
* `T extends unknown` applies Omit to each property variant separately, preserving
|
|
87
|
+
* variant-specific fields such as required status options. Plain Omit on the union
|
|
88
|
+
* would retain only shared keys. Pick also restores type/resourceId on the
|
|
89
|
+
* unsupported variant, whose string index signature would otherwise erase them.
|
|
90
|
+
*/
|
|
91
|
+
type DistributivePropertyConfig<T extends NotionAsCodeProperty> = T extends unknown ? Omit<T, "name"> & Pick<T, "type" | "resourceId"> : never;
|
|
92
|
+
/**
|
|
93
|
+
* Authoring properties are keyed by their schema object name. A property-level
|
|
94
|
+
* `name` override would make the key and serialized property diverge, so it is
|
|
95
|
+
* explicitly rejected even for the string-indexed unsupported-property variant.
|
|
96
|
+
*/
|
|
97
|
+
export type NotionAsCodePropertyConfig = DistributivePropertyConfig<NotionAsCodeProperty> & {
|
|
98
|
+
name?: never;
|
|
99
|
+
};
|
|
100
|
+
/** A keyed property schema, with object keys supplying serialized property names. */
|
|
101
|
+
export type NotionAsCodeSchema = Record<string, NotionAsCodePropertyConfig>;
|
|
102
|
+
/** The normalized data-source shape emitted in provisioning artifacts. */
|
|
85
103
|
export type DataSourceDefinition<Properties extends readonly NotionAsCodeProperty[] = readonly NotionAsCodeProperty[]> = {
|
|
86
104
|
resourceId: ResourceId;
|
|
87
105
|
name: string;
|
|
@@ -92,9 +110,23 @@ export type DataSourceDefinition<Properties extends readonly NotionAsCodePropert
|
|
|
92
110
|
export type TeamspaceIntent = TeamspaceArgs & {
|
|
93
111
|
parent: Parent;
|
|
94
112
|
};
|
|
95
|
-
|
|
113
|
+
/**
|
|
114
|
+
* The normalized database shape emitted in provisioning artifacts.
|
|
115
|
+
*
|
|
116
|
+
* This intentionally does not depend on the authoring argument shape. Authoring
|
|
117
|
+
* accepts keyed schemas and data-source maps; the recorder always stores arrays.
|
|
118
|
+
*/
|
|
119
|
+
export type DatabaseIntent = {
|
|
120
|
+
resourceId: ResourceId;
|
|
96
121
|
parent: Parent;
|
|
97
122
|
dataSources: readonly DataSourceDefinition[];
|
|
123
|
+
views?: readonly ViewSchema[];
|
|
124
|
+
icon?: NotionAsCodeIcon;
|
|
125
|
+
cover?: unknown;
|
|
126
|
+
hideDataSourceTitle?: boolean;
|
|
127
|
+
hideDatabaseTitleIfEmpty?: boolean;
|
|
128
|
+
name?: string;
|
|
129
|
+
description?: string;
|
|
98
130
|
};
|
|
99
131
|
export type PageIntent = PageArgs & {
|
|
100
132
|
parent: Parent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intents.d.ts","sourceRoot":"","sources":["../../src/notion-as-code/intents.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"intents.d.ts","sourceRoot":"","sources":["../../src/notion-as-code/intents.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type Database } from "../database.js";
|
|
2
2
|
import type { PropertyConfiguration } from "../schema.js";
|
|
3
3
|
import type { SelectOption, StatusGroup } from "../types.js";
|
|
4
|
-
import type { DataSourceDefinition,
|
|
5
|
-
type AppsPropertyFor<Property extends
|
|
4
|
+
import type { DataSourceDefinition, NotionAsCodePropertyConfig, NotionAsCodeSchema } from "./intents.js";
|
|
5
|
+
type AppsPropertyFor<Property extends NotionAsCodePropertyConfig> = Property extends {
|
|
6
6
|
type: "title";
|
|
7
7
|
} ? {
|
|
8
8
|
type: "title";
|
|
@@ -54,8 +54,12 @@ type AppsPropertyFor<Property extends NotionAsCodeProperty> = Property extends {
|
|
|
54
54
|
} ? {
|
|
55
55
|
type: "file";
|
|
56
56
|
} : PropertyConfiguration;
|
|
57
|
-
|
|
58
|
-
|
|
57
|
+
/**
|
|
58
|
+
* Map keyed authoring properties to the Apps schema used by sync handlers. The explicit
|
|
59
|
+
* string-key mapping avoids a homomorphic mapped type interfering with `NoInfer` key checks.
|
|
60
|
+
*/
|
|
61
|
+
export type AppsSchemaForSchema<Schema extends NotionAsCodeSchema> = {
|
|
62
|
+
[Property in keyof Schema & string]: AppsPropertyFor<Schema[Property]>;
|
|
59
63
|
};
|
|
60
64
|
/** Convert a Notion-as-Code data source into the Apps database used by sync handlers. */
|
|
61
65
|
export declare function createAppsDatabase(databaseKey: string, dataSource: DataSourceDefinition): Database;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/notion-as-code/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,KAAK,EAAkB,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EACX,oBAAoB,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/notion-as-code/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,KAAK,EAAkB,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EACX,oBAAoB,EAEpB,0BAA0B,EAC1B,kBAAkB,EAGlB,MAAM,cAAc,CAAC;AAEtB,KAAK,eAAe,CAAC,QAAQ,SAAS,0BAA0B,IAAI,QAAQ,SAAS;IACpF,IAAI,EAAE,OAAO,CAAC;CACd,GACE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB,QAAQ,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB,QAAQ,SAAS;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB,QAAQ,SAAS;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,GAC3C,QAAQ,SAAS;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,GACjD,QAAQ,SAAS;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,WAAW,EAAE,CAAA;CAAE,GACzC,QAAQ,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB,QAAQ,SAAS;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB,QAAQ,SAAS;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,GACf,QAAQ,SAAS;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB,QAAQ,SAAS;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB,QAAQ,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB,qBAAqB,CAAC;AAEpC;;;GAGG;AACH,MAAM,MAAM,mBAAmB,CAAC,MAAM,SAAS,kBAAkB,IAAI;KACnE,QAAQ,IAAI,MAAM,MAAM,GAAG,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;CACtE,CAAC;AAEF,yFAAyF;AACzF,wBAAgB,kBAAkB,CACjC,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,oBAAoB,GAC9B,QAAQ,CAsCV"}
|
|
@@ -337,29 +337,48 @@ export type AdvancedFilterSchema = {
|
|
|
337
337
|
* `dataSourceResourceId` must reference a data source created by the script or
|
|
338
338
|
* supplied through existing resources.
|
|
339
339
|
*
|
|
340
|
+
* Database declarations require at least one data source or at least one view.
|
|
341
|
+
* A linked-only database may omit `datasources`, or use `datasources: {}`, only
|
|
342
|
+
* when its `views` list is nonempty. `{}`, `{ datasources: {} }`, and
|
|
343
|
+
* `{ datasources: {}, views: [] }` are invalid.
|
|
344
|
+
*
|
|
345
|
+
* @example
|
|
346
|
+
* // A linked-only database can use a typed table view for an explicit source.
|
|
347
|
+
* const linkedTableView: TableViewSchema = {
|
|
348
|
+
* resourceId: "issues-table-view",
|
|
349
|
+
* type: "table",
|
|
350
|
+
* dataSourceResourceId: "issues-source",
|
|
351
|
+
* properties: [{ property: "issue-title", visible: true }]
|
|
352
|
+
* };
|
|
353
|
+
* const linkedDatabase = notion.database("issues-linked-database", {
|
|
354
|
+
* parent: { type: "resourceId", resourceId: "project-page" },
|
|
355
|
+
* views: [linkedTableView]
|
|
356
|
+
* })
|
|
357
|
+
*
|
|
340
358
|
* @example
|
|
341
359
|
* // When creating a database with a data source
|
|
342
|
-
* const db =
|
|
343
|
-
*
|
|
344
|
-
*
|
|
360
|
+
* const db = notion.database("my-database", {
|
|
361
|
+
* dataSourceResourceId: "my-datasource",
|
|
362
|
+
* name: "Main",
|
|
363
|
+
* schema: { Name: { resourceId: "my-title", type: "title" } }
|
|
345
364
|
* })
|
|
346
365
|
*
|
|
347
366
|
* // Views must reference that data source
|
|
348
|
-
*
|
|
367
|
+
* db.addView({
|
|
349
368
|
* resourceId: "my-table-view",
|
|
350
369
|
* type: "table",
|
|
351
370
|
* dataSourceResourceId: "my-datasource" // REQUIRED: matches data source above
|
|
352
371
|
* })
|
|
353
372
|
*
|
|
354
373
|
* @example
|
|
355
|
-
* //
|
|
356
|
-
* const
|
|
357
|
-
*
|
|
358
|
-
* parent: { type: "resourceId", resourceId: "project-page" },
|
|
374
|
+
* // The explicit empty `datasources` form is valid with a nonempty view list.
|
|
375
|
+
* const explicitLinkedDatabase = notion.database("issues-linked-database-explicit", {
|
|
376
|
+
* datasources: {},
|
|
359
377
|
* views: [{
|
|
360
|
-
* resourceId: "
|
|
378
|
+
* resourceId: "issues-table-view-explicit",
|
|
361
379
|
* type: "table",
|
|
362
|
-
* dataSourceResourceId: "
|
|
380
|
+
* dataSourceResourceId: "issues-source",
|
|
381
|
+
* properties: [{ property: "issue-title", visible: true }]
|
|
363
382
|
* }]
|
|
364
383
|
* })
|
|
365
384
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"views.d.ts","sourceRoot":"","sources":["../../src/notion-as-code/views.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"views.d.ts","sourceRoot":"","sources":["../../src/notion-as-code/views.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAGvF,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,UAAU,CAAC;AAEjG,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,GAAG,eAAe,CAAC;AAEnE;;;;;;;;GAQG;AACH,MAAM,MAAM,cAAc,GAAG;IAC5B,4DAA4D;IAC5D,QAAQ,EAAE,UAAU,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,kBAAkB,CAAC;CAChC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,GAAG;IACzB,4DAA4D;IAC5D,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;KACzC,CAAC;CACF,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC/B,4DAA4D;IAC5D,QAAQ,EAAE,UAAU,CAAC;IACrB,oEAAoE;IACpE,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvC,QAAQ,CAAC,EAAE,KAAK,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,GAAG;IACrD,IAAI,EAAE,QAAQ,GAAG,cAAc,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,GAAG;IACvE,IAAI,EAAE,QAAQ,CAAC;IACf,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,GAAG;IACrD,IAAI,EAAE,QAAQ,GAAG,YAAY,GAAG,gBAAgB,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,GAAG;IACnD,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,kBAAkB,GAAG,mBAAmB,CAAC;CACzE,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,GAAG;IACnD,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,cAAc,CAAC;CAC1D,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,GAAG;IACrD,IAAI,EAAE,QAAQ,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG;IACvD,IAAI,EAAE,UAAU,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG;IACvD,IAAI,EAAE,UAAU,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG;IACvD,IAAI,EAAE,UAAU,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,GAAG;IACtD,IAAI,EAAE,SAAS,CAAC;CAChB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,GACtB,mBAAmB,GACnB,mBAAmB,GACnB,mBAAmB,GACnB,iBAAiB,GACjB,iBAAiB,GACjB,mBAAmB,GACnB,qBAAqB,GACrB,qBAAqB,GACrB,qBAAqB,GACrB,oBAAoB,CAAC;AAExB,MAAM,MAAM,WAAW,GACpB;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IAAE,IAAI,EAAE,oBAAoB,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1C,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE3D,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,OAAO,CAAC;AAEpD,MAAM,MAAM,yBAAyB,GAAG,WAAW,GAAG,YAAY,CAAC;AAEnE;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,yBAAyB,CAAC;CACrC,CAAC;AAEF,KAAK,YAAY,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAEjD,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,cAAc,GAAG,kBAAkB,CAAC;AAE7E,MAAM,MAAM,kBAAkB,GAAG;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,UAAU,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAChC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,cAAc,CAAC,CAAC;IACzF,QAAQ,EACL,WAAW,GACX,eAAe,GACf,iBAAiB,GACjB,yBAAyB,GACzB,oBAAoB,GACpB,kBAAkB,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACd,GAAG,kBAAkB,CAAC;AAEvB,MAAM,MAAM,oBAAoB,GAAG;IAClC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC9C,QAAQ,EACL,eAAe,GACf,uBAAuB,GACvB,qBAAqB,GACrB,kBAAkB,GAClB,iCAAiC,GACjC,8BAA8B,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;CACd,GAAG,kBAAkB,CAAC;AAEvB,MAAM,MAAM,sBAAsB,GAAG;IACpC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAChD,QAAQ,EAAE,aAAa,GAAG,iBAAiB,CAAC;IAC5C,KAAK,EAAE,OAAO,CAAC;CACf,GAAG,kBAAkB,CAAC;AAEvB,MAAM,MAAM,oBAAoB,GAAG;IAClC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC9C,QAAQ,EAAE,SAAS,GAAG,aAAa,CAAC;IACpC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACrB,GAAG,kBAAkB,CAAC;AAEvB,MAAM,MAAM,yBAAyB,GAAG;IACvC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IACpD,QAAQ,EAAE,eAAe,GAAG,uBAAuB,GAAG,mBAAmB,CAAC;IAC1E,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACrB,GAAG,kBAAkB,CAAC;AAEvB,MAAM,MAAM,oBAAoB,GAAG;IAClC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC9C,QAAQ,EAAE,WAAW,GAAG,eAAe,CAAC;IACxC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACrB,GAAG,kBAAkB,CAAC;AAEvB;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAC3B,OAAO,GACP,UAAU,GACV,WAAW,GACX,cAAc,GACd,mBAAmB,GACnB,eAAe,GACf,oBAAoB,CAAC;AAExB;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,UAAU,CAAC;AAEvD,MAAM,MAAM,4BAA4B,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5E,MAAM,MAAM,+BAA+B,GAAG;IAC7C,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,kBAAkB,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,sCAAsC,GAAG;IACpD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE;QACN,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;QACpC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,qBAAqB,CAAC;KAC5B,CAAC;CACF,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,iCAAiC,GAAG;IAC/C,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACzF,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,MAAM,uBAAuB,GAChC,4BAA4B,GAC5B,+BAA+B,GAC/B,sCAAsC,GACtC,iCAAiC,CAAC;AAErC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,MAAM,MAAM,kBAAkB,GAC3B,CAAC;IACD,YAAY,EAAE,iBAAiB,CAAC;IAChC,QAAQ,EACL,SAAS,GACT,gBAAgB,GAChB,eAAe,GACf,sBAAsB,GACtB,qBAAqB,CAAC;IACzB,KAAK,EAAE,4BAA4B,GAAG,+BAA+B,CAAC;IACtE,cAAc,CAAC,EAAE,cAAc,CAAC;CAC/B,GAAG,kBAAkB,CAAC,GACvB,CAAC;IACD,YAAY,EAAE,iBAAiB,CAAC;IAChC,QAAQ,EAAE,qBAAqB,CAAC;IAChC,KAAK,EAAE,sCAAsC,CAAC;IAC9C,cAAc,CAAC,EAAE,cAAc,CAAC;CAC/B,GAAG,kBAAkB,CAAC,GACvB,CAAC;IACD,YAAY,EAAE,iBAAiB,CAAC;IAChC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,KAAK,EAAE,iCAAiC,CAAC;IACzC,cAAc,CAAC,EAAE,cAAc,CAAC;CAC/B,GAAG,kBAAkB,CAAC,CAAC;AAE3B,MAAM,MAAM,sBAAsB,GAAG;IACpC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAChD,QAAQ,EAAE,mBAAmB,GAAG,2BAA2B,CAAC;IAC5D,wFAAwF;IACxF,KAAK,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,KAAK,EAAE,WAAW,CAAA;KAAE,CAAC;CAC9F,GAAG,kBAAkB,CAAC;AAEvB;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG;IAClC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,QAAQ,GAAG,YAAY,GAAG,gBAAgB,CAAC,CAAC;IAChF,QAAQ,EAAE,iBAAiB,GAAG,yBAAyB,CAAC;IAExD,KAAK,EAAE,CAAC;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,KAAK,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;CAC3C,GAAG,kBAAkB,CAAC;AAEvB;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,oBAAoB,GAC7B,kBAAkB,GAClB,oBAAoB,GACpB,sBAAsB,GACtB,oBAAoB,GACpB,yBAAyB,GACzB,oBAAoB,GACpB,kBAAkB,GAClB,sBAAsB,GACtB,oBAAoB,CAAC;AAExB,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,oBAAoB,GAAG,oBAAoB,CAAC,CAAC;AAE9E,MAAM,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,MAAM,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC,gBAAgB,EAAE;QAAE,IAAI,EAAE,aAAa,CAAA;KAAE,CAAC,CAAC;IAC1D,IAAI,EAAE,QAAQ,CAAC;IACf,+DAA+D;IAC/D,oBAAoB,EAAE,UAAU,CAAC;IACjC;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACtC,kEAAkE;IAClE,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,iDAAiD;IACjD,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG;IAC9C,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG;IAC9C,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,OAAO,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAC7B,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,cAAc,GAAG;IACjD,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACnC;;;;;;OAMG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,cAAc,GAAG;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG;IAChD,IAAI,EAAE,SAAS,CAAC;IAChB,UAAU,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,WAAW,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,cAAc,GAAG;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,cAAc,GAAG;IACjD,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACnC,eAAe,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACxC;;;;;;OAMG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,UAAU,GACnB,eAAe,GACf,eAAe,GACf,kBAAkB,GAClB,cAAc,GACd,iBAAiB,GACjB,cAAc,GACd,kBAAkB,CAAC"}
|
package/dist/sync.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { CapabilityContext } from "./context.js";
|
|
2
2
|
import type { Database } from "./database.js";
|
|
3
3
|
import type { DataSourceHandle } from "./notion-as-code/database.js";
|
|
4
|
-
import type {
|
|
5
|
-
import type {
|
|
4
|
+
import type { NotionAsCodeSchema } from "./notion-as-code/intents.js";
|
|
5
|
+
import type { AppsSchemaForSchema } from "./notion-as-code/schema.js";
|
|
6
6
|
import { type PacerEntry } from "./pacer.js";
|
|
7
7
|
import type { DatabaseSchema, PropertyConfiguration, TextProperty, TitleProperty } from "./schema.js";
|
|
8
8
|
import type { Cover, HandlerOptions, Icon, NormalizedSchedule, PeopleValue, PlaceValue, RelationValue, Schedule, TextValue } from "./types.js";
|
|
@@ -18,13 +18,35 @@ type PropertyValue<T extends PropertyConfiguration> = T extends {
|
|
|
18
18
|
} ? PlaceValue : T extends {
|
|
19
19
|
type: "relation";
|
|
20
20
|
} ? RelationValue : TextValue;
|
|
21
|
+
type SyncPropertyName<S extends DatabaseSchema> = Extract<keyof S, string>;
|
|
22
|
+
/**
|
|
23
|
+
* Collect unknown property names across the whole inferred change union before checking it.
|
|
24
|
+
* Otherwise a valid subset properties object could structurally hide an invalid sibling row.
|
|
25
|
+
*/
|
|
26
|
+
type SyncUnknownPropertyNames<AllowedPropertyNames extends string, Change> = Change extends {
|
|
27
|
+
type: "upsert";
|
|
28
|
+
properties: infer Properties extends object;
|
|
29
|
+
} ? Exclude<keyof Properties, AllowedPropertyNames> : never;
|
|
30
|
+
/** Require at least one key while keeping all other keys optional. */
|
|
31
|
+
type AtLeastOne<T extends object> = Partial<T> & {
|
|
32
|
+
[RequiredKey in keyof T]-?: Required<Pick<T, RequiredKey>>;
|
|
33
|
+
}[keyof T];
|
|
34
|
+
type SyncUpsertProperties<S extends DatabaseSchema, PrimaryKey extends KeyPropertyName<S>> = AtLeastOne<{
|
|
35
|
+
[P in Exclude<SyncPropertyName<S>, PrimaryKey>]: PropertyValue<S[P]>;
|
|
36
|
+
}>;
|
|
37
|
+
type ExactSyncHandlerResult<AllowedPropertyNames extends string, Result extends {
|
|
38
|
+
changes: readonly unknown[];
|
|
39
|
+
}> = Result & {
|
|
40
|
+
changes: [SyncUnknownPropertyNames<AllowedPropertyNames, Result["changes"][number]>] extends [
|
|
41
|
+
never
|
|
42
|
+
] ? Result["changes"] : never;
|
|
43
|
+
};
|
|
21
44
|
export type SyncMode = "replace" | "incremental";
|
|
45
|
+
/** Upsert one or more known non-primary-key properties; the key is supplied separately. */
|
|
22
46
|
export type SyncChangeUpsert<S extends DatabaseSchema, PrimaryKey extends KeyPropertyName<S>> = {
|
|
23
47
|
type: "upsert";
|
|
24
48
|
key: string;
|
|
25
|
-
properties:
|
|
26
|
-
[P in keyof S]: PropertyValue<S[P]>;
|
|
27
|
-
}, PrimaryKey>;
|
|
49
|
+
properties: SyncUpsertProperties<S, PrimaryKey>;
|
|
28
50
|
upstreamUpdatedAt?: string;
|
|
29
51
|
icon?: Icon;
|
|
30
52
|
cover?: Cover;
|
|
@@ -40,20 +62,16 @@ export type SyncHandlerResult<S extends DatabaseSchema, PrimaryKey extends KeyPr
|
|
|
40
62
|
hasMore?: boolean;
|
|
41
63
|
nextState?: State;
|
|
42
64
|
};
|
|
43
|
-
export type SyncConfiguration<S extends DatabaseSchema, PrimaryKey extends KeyPropertyName<S>, State> = {
|
|
65
|
+
export type SyncConfiguration<S extends DatabaseSchema, PrimaryKey extends KeyPropertyName<S>, State, Result extends SyncHandlerResult<S, PrimaryKey, State> = SyncHandlerResult<S, PrimaryKey, State>> = {
|
|
44
66
|
database: Database<S>;
|
|
45
67
|
primaryKey: PrimaryKey;
|
|
46
68
|
mode?: SyncMode;
|
|
47
69
|
schedule?: Schedule;
|
|
48
|
-
handler: (state: State | undefined, context: CapabilityContext) => Promise<SyncHandlerResult<NoInfer<S>, NoInfer<PrimaryKey>, State>>;
|
|
70
|
+
handler: (state: State | undefined, context: CapabilityContext) => Promise<SyncHandlerResult<NoInfer<S>, NoInfer<PrimaryKey>, State> & ExactSyncHandlerResult<Exclude<SyncPropertyName<NoInfer<S>>, NoInfer<PrimaryKey>>, Result>>;
|
|
49
71
|
};
|
|
50
72
|
/** Configuration for a sync backed by a Notion-as-Code data source. */
|
|
51
|
-
export type DataSourceSyncConfiguration<
|
|
52
|
-
dataSource: DataSourceHandle<
|
|
53
|
-
primaryKey: PrimaryKey;
|
|
54
|
-
mode?: SyncMode;
|
|
55
|
-
schedule?: Schedule;
|
|
56
|
-
handler: (state: State | undefined, context: CapabilityContext) => Promise<SyncHandlerResult<NoInfer<AppsSchemaForProperties<Properties>>, NoInfer<PrimaryKey>, State>>;
|
|
73
|
+
export type DataSourceSyncConfiguration<Schema extends NotionAsCodeSchema, PrimaryKey extends KeyPropertyName<AppsSchemaForSchema<Schema>>, State, Result extends SyncHandlerResult<AppsSchemaForSchema<Schema>, PrimaryKey, State> = SyncHandlerResult<AppsSchemaForSchema<Schema>, PrimaryKey, State>> = Omit<SyncConfiguration<AppsSchemaForSchema<Schema>, PrimaryKey, State, Result>, "database"> & {
|
|
74
|
+
dataSource: DataSourceHandle<Schema>;
|
|
57
75
|
};
|
|
58
76
|
export type SyncRuntimeContext = {
|
|
59
77
|
state?: unknown;
|
|
@@ -78,8 +96,8 @@ export type Sync = {
|
|
|
78
96
|
handler: (context?: SyncRuntimeContext, options?: HandlerOptions) => Promise<SyncRunResult>;
|
|
79
97
|
};
|
|
80
98
|
/** Create a database sync. Default-export it from a sync file. */
|
|
81
|
-
export declare function createSync<const S extends DatabaseSchema, const PrimaryKey extends KeyPropertyName<S>, State = unknown>(configuration: SyncConfiguration<S, PrimaryKey, State>): Sync;
|
|
99
|
+
export declare function createSync<const S extends DatabaseSchema, const PrimaryKey extends KeyPropertyName<S>, State = unknown, const Result extends SyncHandlerResult<S, PrimaryKey, State> = SyncHandlerResult<S, PrimaryKey, State>>(configuration: SyncConfiguration<S, PrimaryKey, State, Result>): Sync;
|
|
82
100
|
/** Create a sync backed by a Notion-as-Code data source. */
|
|
83
|
-
export declare function sync<const
|
|
101
|
+
export declare function sync<const Schema extends NotionAsCodeSchema, const PrimaryKey extends KeyPropertyName<AppsSchemaForSchema<Schema>>, State = unknown, const Result extends SyncHandlerResult<AppsSchemaForSchema<Schema>, PrimaryKey, State> = SyncHandlerResult<AppsSchemaForSchema<Schema>, PrimaryKey, State>>(configuration: DataSourceSyncConfiguration<Schema, PrimaryKey, State, Result>): Sync;
|
|
84
102
|
export {};
|
|
85
103
|
//# sourceMappingURL=sync.d.ts.map
|
package/dist/sync.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"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"}
|
package/dist/sync.js
CHANGED
|
@@ -35,6 +35,18 @@ function createSyncDefinition(configuration) {
|
|
|
35
35
|
if (change.type === "delete") {
|
|
36
36
|
return { ...change, targetDatabaseKey: database.key };
|
|
37
37
|
}
|
|
38
|
+
let hasOwnEnumerableProperty = false;
|
|
39
|
+
for (const propertyName in change.properties) {
|
|
40
|
+
if (Object.hasOwn(change.properties, propertyName)) {
|
|
41
|
+
hasOwnEnumerableProperty = true;
|
|
42
|
+
break;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
if (!hasOwnEnumerableProperty) {
|
|
46
|
+
throw new Error(
|
|
47
|
+
"Sync upsert properties must include at least one property."
|
|
48
|
+
);
|
|
49
|
+
}
|
|
38
50
|
return {
|
|
39
51
|
...change,
|
|
40
52
|
properties: {
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { RunMetadata } from "./runtime-metadata.js";
|
|
2
|
+
export type WorkflowStateValue = null | boolean | number | string | ReadonlyArray<WorkflowStateValue> | {
|
|
3
|
+
readonly [key: string]: WorkflowStateValue;
|
|
4
|
+
};
|
|
5
|
+
export type WorkflowState = {
|
|
6
|
+
get(key: string): Promise<WorkflowStateValue | undefined>;
|
|
7
|
+
set(key: string, value: WorkflowStateValue | undefined): void;
|
|
8
|
+
};
|
|
9
|
+
export declare function createWorkflowStepState(metadata: Pick<RunMetadata, "workerId">, stepId: string): {
|
|
10
|
+
state: WorkflowState;
|
|
11
|
+
run<T>(fn: () => T | Promise<T>): Promise<T>;
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=workflow-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-state.d.ts","sourceRoot":"","sources":["../src/workflow-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,MAAM,kBAAkB,GAC3B,IAAI,GACJ,OAAO,GACP,MAAM,GACN,MAAM,GACN,aAAa,CAAC,kBAAkB,CAAC,GACjC;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAA;CAAE,CAAC;AAElD,MAAM,MAAM,aAAa,GAAG;IAC3B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC;IAC1D,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,GAAG,SAAS,GAAG,IAAI,CAAC;CAC9D,CAAC;AAeF,wBAAgB,uBAAuB,CACtC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,EACvC,MAAM,EAAE,MAAM,GACZ;IACF,KAAK,EAAE,aAAa,CAAC;IACrB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC7C,CA2DA"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
const MAX_STATE_KEY_BYTES = 256;
|
|
2
|
+
const WORKFLOW_CAPABILITY_KEY_ENV = "NOTION_WORKFLOW_CAPABILITY_KEY";
|
|
3
|
+
function createWorkflowStepState(metadata, stepId) {
|
|
4
|
+
const scope = {
|
|
5
|
+
id: stepId,
|
|
6
|
+
active: true,
|
|
7
|
+
mutations: /* @__PURE__ */ new Map()
|
|
8
|
+
};
|
|
9
|
+
const state = {
|
|
10
|
+
async get(key) {
|
|
11
|
+
requireActiveStep(scope, "get");
|
|
12
|
+
validateStateKey(key);
|
|
13
|
+
const pending = scope.mutations.get(key);
|
|
14
|
+
if (pending?.operation === "set") {
|
|
15
|
+
return pending.value;
|
|
16
|
+
}
|
|
17
|
+
if (pending?.operation === "delete") {
|
|
18
|
+
return void 0;
|
|
19
|
+
}
|
|
20
|
+
const response = await requestWorkflowState(metadata, {
|
|
21
|
+
operation: "get",
|
|
22
|
+
key
|
|
23
|
+
});
|
|
24
|
+
const body = JSON.parse(
|
|
25
|
+
await response.text()
|
|
26
|
+
);
|
|
27
|
+
if (!body.exists) {
|
|
28
|
+
return void 0;
|
|
29
|
+
}
|
|
30
|
+
return body.value;
|
|
31
|
+
},
|
|
32
|
+
set(key, value) {
|
|
33
|
+
requireActiveStep(scope, "set");
|
|
34
|
+
validateStateKey(key);
|
|
35
|
+
if (value === void 0) {
|
|
36
|
+
recordMutation(scope, { operation: "delete", key });
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
recordMutation(scope, { operation: "set", key, value });
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
return {
|
|
43
|
+
state,
|
|
44
|
+
async run(fn) {
|
|
45
|
+
try {
|
|
46
|
+
const result = await fn();
|
|
47
|
+
if (scope.mutations.size > 0) {
|
|
48
|
+
await requestWorkflowState(metadata, {
|
|
49
|
+
operation: "commit",
|
|
50
|
+
operationId: scope.id,
|
|
51
|
+
mutations: [...scope.mutations.values()]
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
return result;
|
|
55
|
+
} finally {
|
|
56
|
+
scope.active = false;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
function requireActiveStep(expectedScope, operation) {
|
|
62
|
+
if (!expectedScope.active) {
|
|
63
|
+
throw new Error(`state.${operation}() must be called inside context.step().`);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
function recordMutation(scope, mutation) {
|
|
67
|
+
scope.mutations.set(mutation.key, mutation);
|
|
68
|
+
}
|
|
69
|
+
async function requestWorkflowState(metadata, request) {
|
|
70
|
+
const baseUrl = process.env.NOTION_API_BASE_URL;
|
|
71
|
+
const token = process.env.NOTION_API_TOKEN;
|
|
72
|
+
const capabilityKey = process.env[WORKFLOW_CAPABILITY_KEY_ENV];
|
|
73
|
+
if (!baseUrl || !token || !capabilityKey) {
|
|
74
|
+
throw new Error(
|
|
75
|
+
`Workflow state is only available when the workflow runtime provides NOTION_API_BASE_URL, NOTION_API_TOKEN, and ${WORKFLOW_CAPABILITY_KEY_ENV}.`
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
const response = await fetch(`${baseUrl.replace(/\/$/, "")}/api/v3/workersWorkflowState`, {
|
|
79
|
+
method: "POST",
|
|
80
|
+
headers: {
|
|
81
|
+
authorization: `Bearer ${token}`,
|
|
82
|
+
"content-type": "application/json"
|
|
83
|
+
},
|
|
84
|
+
body: JSON.stringify({
|
|
85
|
+
...request,
|
|
86
|
+
workerId: metadata.workerId,
|
|
87
|
+
capabilityKey
|
|
88
|
+
})
|
|
89
|
+
});
|
|
90
|
+
if (!response.ok) {
|
|
91
|
+
throw new Error(
|
|
92
|
+
`Workflow state ${request.operation} failed with status ${response.status}.`
|
|
93
|
+
);
|
|
94
|
+
}
|
|
95
|
+
return response;
|
|
96
|
+
}
|
|
97
|
+
function validateStateKey(key) {
|
|
98
|
+
if (key.length === 0) {
|
|
99
|
+
throw new Error("Workflow state keys must not be empty.");
|
|
100
|
+
}
|
|
101
|
+
if (Buffer.byteLength(key) > MAX_STATE_KEY_BYTES) {
|
|
102
|
+
throw new Error(`Workflow state keys must be at most ${MAX_STATE_KEY_BYTES} UTF-8 bytes.`);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
export {
|
|
106
|
+
createWorkflowStepState
|
|
107
|
+
};
|
package/dist/workflow.d.ts
CHANGED
|
@@ -1,11 +1,42 @@
|
|
|
1
1
|
import { type WorkflowConnectionDeclarations, type WorkflowConnectionRequirement, type WorkflowConnections } from "./connections.js";
|
|
2
2
|
import type { CapabilityContext } from "./context.js";
|
|
3
3
|
import { type RunMetadata } from "./runtime-metadata.js";
|
|
4
|
+
import { type WorkflowState } from "./workflow-state.js";
|
|
4
5
|
import type { WorkflowEventMap, WorkflowTrigger, WorkflowTriggerCreators, WorkflowTriggerForConnections } from "./triggers.generated.js";
|
|
5
6
|
type HandlerOptions = {
|
|
6
7
|
/** Return the concrete result instead of writing the output envelope. */
|
|
7
8
|
concreteOutput?: true;
|
|
8
9
|
};
|
|
10
|
+
type WorkflowWaitDurationValues = {
|
|
11
|
+
milliseconds?: number;
|
|
12
|
+
seconds?: number;
|
|
13
|
+
minutes?: number;
|
|
14
|
+
hours?: number;
|
|
15
|
+
days?: number;
|
|
16
|
+
weeks?: number;
|
|
17
|
+
};
|
|
18
|
+
export type WorkflowWaitDuration = {
|
|
19
|
+
[Unit in keyof WorkflowWaitDurationValues]-?: Required<Pick<WorkflowWaitDurationValues, Unit>> & WorkflowWaitDurationValues;
|
|
20
|
+
}[keyof WorkflowWaitDurationValues];
|
|
21
|
+
type WorkflowWaitKey = string | string[];
|
|
22
|
+
export type WorkflowWaitUntilOptions = {
|
|
23
|
+
at: Date;
|
|
24
|
+
key?: WorkflowWaitKey;
|
|
25
|
+
} | {
|
|
26
|
+
after: WorkflowWaitDuration;
|
|
27
|
+
key?: WorkflowWaitKey;
|
|
28
|
+
};
|
|
29
|
+
export type WorkflowWaitUntilResult = {
|
|
30
|
+
status: "waiting";
|
|
31
|
+
wait: {
|
|
32
|
+
type: "until";
|
|
33
|
+
name: string;
|
|
34
|
+
resumeAtMs: number;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
type WorkflowHandlerResult = {
|
|
38
|
+
status: "success";
|
|
39
|
+
} | WorkflowWaitUntilResult;
|
|
9
40
|
export type WorkflowEvent = WorkflowEventMap[keyof WorkflowEventMap];
|
|
10
41
|
export type WorkflowEventForTrigger<T extends WorkflowTrigger> = WorkflowEventMap[T["type"]];
|
|
11
42
|
export type WorkflowEventForTriggers<T extends readonly WorkflowTrigger[]> = WorkflowEventForTrigger<T[number]>;
|
|
@@ -57,9 +88,7 @@ export type Workflow<TTriggers extends readonly [WorkflowTrigger, ...WorkflowTri
|
|
|
57
88
|
triggers: TTriggers;
|
|
58
89
|
connections?: readonly WorkflowConnectionRequirement[];
|
|
59
90
|
};
|
|
60
|
-
handler: (event: WorkflowEventForTriggers<TTriggers>, options?: HandlerOptions) => Promise<
|
|
61
|
-
status: "success";
|
|
62
|
-
} | undefined>;
|
|
91
|
+
handler: (event: WorkflowEventForTriggers<TTriggers>, options?: HandlerOptions) => Promise<WorkflowHandlerResult | undefined>;
|
|
63
92
|
};
|
|
64
93
|
/**
|
|
65
94
|
* Create a workflow capability.
|
|
@@ -99,6 +128,13 @@ export type StepContext = {
|
|
|
99
128
|
* Use this to make side effects idempotent when the workflow is retried.
|
|
100
129
|
*/
|
|
101
130
|
id: string;
|
|
131
|
+
/**
|
|
132
|
+
* Durable key-value state shared by every run of this workflow.
|
|
133
|
+
*
|
|
134
|
+
* State is exposed on the step context because every operation participates
|
|
135
|
+
* in the active step's durability and replay boundary.
|
|
136
|
+
*/
|
|
137
|
+
state: WorkflowState;
|
|
102
138
|
};
|
|
103
139
|
type WorkflowStepResult<T> = T extends void ? null : T;
|
|
104
140
|
/** Options for a workflow step. */
|
|
@@ -114,6 +150,13 @@ type WorkflowStep = {
|
|
|
114
150
|
<T>(name: string, fn: (context: StepContext) => T | Promise<T>): Promise<WorkflowStepResult<T>>;
|
|
115
151
|
<T>(name: string, options: WorkflowStepOptions, fn: (context: StepContext) => T | Promise<T>): Promise<WorkflowStepResult<T>>;
|
|
116
152
|
};
|
|
153
|
+
type WorkflowWait = {
|
|
154
|
+
/**
|
|
155
|
+
* Suspend the workflow until a relative duration has elapsed or an absolute
|
|
156
|
+
* date has been reached.
|
|
157
|
+
*/
|
|
158
|
+
until(name: string, options: WorkflowWaitUntilOptions): Promise<void>;
|
|
159
|
+
};
|
|
117
160
|
/** Context passed to a workflow handler. */
|
|
118
161
|
export type WorkflowContext<TConnections extends WorkflowConnectionDeclarations = WorkflowConnectionDeclarations> = CapabilityContext & {
|
|
119
162
|
connections: WorkflowConnections<TConnections>;
|
|
@@ -139,5 +182,7 @@ export type WorkflowContext<TConnections extends WorkflowConnectionDeclarations
|
|
|
139
182
|
* ```
|
|
140
183
|
*/
|
|
141
184
|
step: WorkflowStep;
|
|
185
|
+
/** Suspend this workflow without consuming compute resources. */
|
|
186
|
+
wait: WorkflowWait;
|
|
142
187
|
};
|
|
143
188
|
//# sourceMappingURL=workflow.d.ts.map
|
package/dist/workflow.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../src/workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAIN,KAAK,8BAA8B,EACnC,KAAK,6BAA6B,EAClC,KAAK,mBAAmB,EACxB,MAAM,kBAAkB,CAAC;AAK1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAKtD,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAE1E,OAAO,KAAK,EACX,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,6BAA6B,EAC7B,MAAM,yBAAyB,CAAC;AAEjC,KAAK,cAAc,GAAG;IACrB,yEAAyE;IACzE,cAAc,CAAC,EAAE,IAAI,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,gBAAgB,CAAC,CAAC;AAErE,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,eAAe,IAAI,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAE7F,MAAM,MAAM,wBAAwB,CAAC,CAAC,SAAS,SAAS,eAAe,EAAE,IACxE,uBAAuB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAEpC,OAAO,EACN,WAAW,EACX,KAAK,kBAAkB,EACvB,KAAK,8BAA8B,EACnC,KAAK,6BAA6B,EAClC,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,eAAe,GACpB,MAAM,kBAAkB,CAAC;AAE1B;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAChC,SAAS,SAAS,SAAS,CAAC,eAAe,EAAE,GAAG,eAAe,EAAE,CAAC,EAClE,YAAY,SAAS,8BAA8B,GAAG,8BAA8B,IACjF;IACH;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,QAAQ,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,WAAW,CAAC,EAAE,YAAY,CAAC;IAE3B,OAAO,EAAE,CACR,KAAK,EAAE,wBAAwB,CAAC,SAAS,CAAC,EAC1C,OAAO,EAAE,eAAe,CAAC,YAAY,CAAC,KAClC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC1B,CAAC;AAEF,2EAA2E;AAC3E,MAAM,MAAM,4BAA4B,CACvC,SAAS,SAAS,SAAS,CAAC,eAAe,EAAE,GAAG,eAAe,EAAE,CAAC,EAClE,YAAY,SAAS,8BAA8B,IAChD,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,UAAU,CAAC,GAAG;IACtE,QAAQ,EAAE,CAAC,OAAO,EAAE;QAAE,QAAQ,EAAE,uBAAuB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAA;KAAE,KAAK,SAAS,CAAC;CAC/F,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,CACnB,SAAS,SAAS,SAAS,CAAC,eAAe,EAAE,GAAG,eAAe,EAAE,CAAC,GAAG,SAAS;IAC7E,eAAe;IACf,GAAG,eAAe,EAAE;CACpB,IACE;IACH,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,SAAS,CAAC;QACpB,WAAW,CAAC,EAAE,SAAS,6BAA6B,EAAE,CAAC;KACvD,CAAC;IACF,OAAO,EAAE,CACR,KAAK,EAAE,wBAAwB,CAAC,SAAS,CAAC,EAC1C,OAAO,CAAC,EAAE,cAAc,KACpB,OAAO,CAAC
|
|
1
|
+
{"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../src/workflow.ts"],"names":[],"mappings":"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"}
|