@haustle/notion-orm 0.0.42 → 0.0.43

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.
@@ -1,4 +1,5 @@
1
- import { Query, SupportedNotionColumnTypes } from "./queryTypes";
1
+ import { CreatePageParameters, CreatePageResponse } from "@notionhq/client/build/src/api-endpoints";
2
+ import { Query, SimpleQueryResponse, SupportedNotionColumnTypes } from "./queryTypes";
2
3
  export type propNameToColumnNameType = Record<string, {
3
4
  columnName: string;
4
5
  type: SupportedNotionColumnTypes;
@@ -9,8 +10,10 @@ export declare class DatabaseActions<DatabaseSchemaType extends Record<string, a
9
10
  private propNameToColumnName;
10
11
  private columnNames;
11
12
  constructor(datbaseId: string, propNameToColumnName: propNameToColumnNameType);
12
- add(pageObject: DatabaseSchemaType): Promise<void>;
13
- query(query: Query<DatabaseSchemaType, ColumnNameToColumnType>): Promise<void>;
13
+ add(pageObject: DatabaseSchemaType, getCallBody?: boolean): Promise<CreatePageParameters | CreatePageResponse>;
14
+ query(query: Query<DatabaseSchemaType, ColumnNameToColumnType>): Promise<SimpleQueryResponse<DatabaseSchemaType>>;
15
+ private simplifyQueryResponse;
16
+ private getResponseValue;
14
17
  private recursivelyBuildFilter;
15
18
  }
16
19
  //# sourceMappingURL=DatabaseActions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatabaseActions.d.ts","sourceRoot":"","sources":["../../src/DatabaseActions.ts"],"names":[],"mappings":"AAQA,OAAO,EAIN,KAAK,EAGL,0BAA0B,EAC1B,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAC5C,MAAM,EACN;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,0BAA0B,CAAA;CAAE,CACxD,CAAC;AAQF,qBAAa,eAAe,CAC3B,kBAAkB,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9C,sBAAsB,SAAS,MAAM,CACpC,MAAM,kBAAkB,EACxB,0BAA0B,CAC1B;IAED,OAAO,CAAC,YAAY,CAEjB;IACH,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,oBAAoB,CAA2B;IACvD,OAAO,CAAC,WAAW,CAAW;gBAG7B,SAAS,EAAE,MAAM,EACjB,oBAAoB,EAAE,wBAAwB;IAQzC,GAAG,CAAC,UAAU,EAAE,kBAAkB;IAwBlC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,kBAAkB,EAAE,sBAAsB,CAAC;IAqBpE,OAAO,CAAC,sBAAsB;CAyC9B"}
1
+ {"version":3,"file":"DatabaseActions.d.ts","sourceRoot":"","sources":["../../src/DatabaseActions.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,oBAAoB,EACpB,kBAAkB,EAIlB,MAAM,0CAA0C,CAAC;AAKlD,OAAO,EAIN,KAAK,EAEL,mBAAmB,EAEnB,0BAA0B,EAC1B,MAAM,cAAc,CAAC;AAGtB,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAC5C,MAAM,EACN;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,0BAA0B,CAAA;CAAE,CACxD,CAAC;AAQF,qBAAa,eAAe,CAC3B,kBAAkB,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9C,sBAAsB,SAAS,MAAM,CACpC,MAAM,kBAAkB,EACxB,0BAA0B,CAC1B;IAED,OAAO,CAAC,YAAY,CAEjB;IACH,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,oBAAoB,CAA2B;IACvD,OAAO,CAAC,WAAW,CAAW;gBAG7B,SAAS,EAAE,MAAM,EACjB,oBAAoB,EAAE,wBAAwB;IAQzC,GAAG,CACR,UAAU,EAAE,kBAAkB,EAC9B,WAAW,CAAC,EAAE,OAAO,GACnB,OAAO,CAAC,oBAAoB,GAAG,kBAAkB,CAAC;IA4B/C,KAAK,CACV,KAAK,EAAE,KAAK,CAAC,kBAAkB,EAAE,sBAAsB,CAAC,GACtD,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;IAoBnD,OAAO,CAAC,qBAAqB;IA+B7B,OAAO,CAAC,gBAAgB;IA2CxB,OAAO,CAAC,sBAAsB;CAyC9B"}
@@ -16,6 +16,7 @@ exports.DatabaseActions = void 0;
16
16
  const client_1 = require("@notionhq/client");
17
17
  const BuildCall_1 = require("./BuildCall");
18
18
  const path_1 = __importDefault(require("path"));
19
+ const GenerateTypes_1 = require("./GenerateTypes");
19
20
  // Import auth key from config file
20
21
  const { auth } = require(path_1.default.join(process.cwd(), "notion.config"));
21
22
  class DatabaseActions {
@@ -28,7 +29,7 @@ class DatabaseActions {
28
29
  this.columnNames = Object.keys(propNameToColumnName);
29
30
  }
30
31
  // Add page to a database
31
- add(pageObject) {
32
+ add(pageObject, getCallBody) {
32
33
  return __awaiter(this, void 0, void 0, function* () {
33
34
  const callBody = {
34
35
  parent: {
@@ -45,8 +46,11 @@ class DatabaseActions {
45
46
  });
46
47
  callBody.properties[columnName] = columnObject;
47
48
  });
48
- // console.log(JSON.stringify(callBody, null, 4));
49
- yield this.NotionClient.pages.create(callBody);
49
+ // CORS: If user wants the body of the call. Can then send to API
50
+ if (getCallBody) {
51
+ return callBody;
52
+ }
53
+ return yield this.NotionClient.pages.create(callBody);
50
54
  });
51
55
  }
52
56
  // Look for page inside the database
@@ -62,11 +66,64 @@ class DatabaseActions {
62
66
  // @ts-ignore errors vs notion api types
63
67
  queryCall["filter"] = filters;
64
68
  }
65
- console.log(JSON.stringify(queryCall, null, 4));
66
69
  const sort = query.sort;
67
- const apiQuery = yield this.NotionClient.databases.query(queryCall);
68
- console.log(apiQuery);
70
+ const response = yield this.NotionClient.databases.query(queryCall);
71
+ return this.simplifyQueryResponse(response);
72
+ });
73
+ }
74
+ simplifyQueryResponse(res) {
75
+ // Is this smart too do...idk
76
+ const rawResults = res.results;
77
+ const rawResponse = res;
78
+ const results = rawResults.map((result) => {
79
+ const simpleResult = {};
80
+ const properties = Object.entries(result.properties);
81
+ for (const [columnName, result] of properties) {
82
+ const camelizeColumnName = (0, GenerateTypes_1.camelize)(columnName);
83
+ const columnType = this.propNameToColumnName[camelizeColumnName].type;
84
+ // @ts-ignore
85
+ simpleResult[camelizeColumnName] = this.getResponseValue(columnType, result);
86
+ }
87
+ return simpleResult;
69
88
  });
89
+ return {
90
+ results,
91
+ rawResponse,
92
+ };
93
+ }
94
+ getResponseValue(prop, x) {
95
+ switch (prop) {
96
+ case "select": {
97
+ const { select } = x;
98
+ if (select) {
99
+ return select["name"];
100
+ }
101
+ return undefined;
102
+ }
103
+ case "title": {
104
+ const { title } = x;
105
+ if (title) {
106
+ const combinedText = title.map(({ plain_text }) => plain_text);
107
+ return combinedText.join("");
108
+ }
109
+ return undefined;
110
+ }
111
+ case "url": {
112
+ const { url } = x;
113
+ return url;
114
+ }
115
+ case "multi_select": {
116
+ const { multi_select } = x;
117
+ if (multi_select) {
118
+ const multi_selectArr = multi_select.map(({ name }) => name);
119
+ return multi_selectArr;
120
+ }
121
+ return undefined;
122
+ }
123
+ default: {
124
+ return "lol";
125
+ }
126
+ }
70
127
  }
71
128
  recursivelyBuildFilter(queryFilter) {
72
129
  // Need to loop because we don't kno
@@ -1 +1 @@
1
- {"version":3,"file":"DatabaseActions.js","sourceRoot":"","sources":["../../src/DatabaseActions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DatabaseActions.js","sourceRoot":"","sources":["../../src/DatabaseActions.ts"],"names":[],"mappings":"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"}
@@ -4,4 +4,5 @@ export declare function createTypescriptFileForDatabase(dbResponse: GetDatabaseR
4
4
  databaseClassName: string;
5
5
  databaseId: string;
6
6
  }>;
7
+ export declare function camelize(str: string): string;
7
8
  //# sourceMappingURL=GenerateTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GenerateTypes.d.ts","sourceRoot":"","sources":["../../src/GenerateTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,mBAAmB,EACnB,MAAM,0CAA0C,CAAC;AAelD,wBAAsB,+BAA+B,CACpD,UAAU,EAAE,mBAAmB;;;;GAwH/B"}
1
+ {"version":3,"file":"GenerateTypes.d.ts","sourceRoot":"","sources":["../../src/GenerateTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,mBAAmB,EACnB,MAAM,0CAA0C,CAAC;AAelD,wBAAsB,+BAA+B,CACpD,UAAU,EAAE,mBAAmB;;;;GAgI/B;AAuSD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,UAKnC"}
@@ -35,7 +35,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
35
35
  return (mod && mod.__esModule) ? mod : { "default": mod };
36
36
  };
37
37
  Object.defineProperty(exports, "__esModule", { value: true });
38
- exports.createTypescriptFileForDatabase = void 0;
38
+ exports.camelize = exports.createTypescriptFileForDatabase = void 0;
39
39
  const ts = __importStar(require("typescript"));
40
40
  const fs_1 = __importDefault(require("fs"));
41
41
  const path_1 = __importDefault(require("path"));
@@ -95,14 +95,22 @@ function createTypescriptFileForDatabase(dbResponse) {
95
95
  }
96
96
  });
97
97
  // Object type that represents the database schema
98
- const DatabaseSchemaType = ts.factory.createTypeAliasDeclaration(undefined, ts.factory.createIdentifier("DatabaseSchemaType"), undefined, ts.factory.createTypeLiteralNode(databaseColumnTypeProps));
98
+ const DatabaseSchemaType = ts.factory.createTypeAliasDeclaration([ts.factory.createToken(ts.SyntaxKind.ExportKeyword)], ts.factory.createIdentifier("DatabaseSchemaType"), undefined, ts.factory.createTypeLiteralNode(databaseColumnTypeProps));
99
99
  // Top level non-nested variable, functions, types for database files
100
100
  const TsNodesForDatabaseFile = ts.factory.createNodeArray([
101
- createDatabaseActionsClassImport(),
101
+ createNameImport({
102
+ namedImport: "DatabaseActions",
103
+ path: "../src/DatabaseActions",
104
+ }),
105
+ createNameImport({
106
+ namedImport: "Query",
107
+ path: "../src/queryTypes",
108
+ }),
102
109
  createDatabaseIdVariable(databaseId),
103
110
  DatabaseSchemaType,
104
111
  createColumnNameToColumnProperties(propNameToColumnName),
105
112
  createColumnNameToColumnType(),
113
+ createQueryTypeExport(),
106
114
  createDatabaseClassExport({ databaseName: databaseClassName }),
107
115
  ]);
108
116
  const sourceFile = ts.createSourceFile("", "", ts.ScriptTarget.ESNext, true, ts.ScriptKind.TS);
@@ -209,10 +217,17 @@ function createColumnNameToColumnType() {
209
217
  ));
210
218
  }
211
219
  // Need to import the database class used to execute database actions (adding + querying)
212
- function createDatabaseActionsClassImport() {
220
+ function createNameImport(args) {
221
+ const { namedImport, path } = args;
213
222
  return ts.factory.createImportDeclaration(undefined, ts.factory.createImportClause(false, undefined, ts.factory.createNamedImports([
214
- ts.factory.createImportSpecifier(false, undefined, ts.factory.createIdentifier("DatabaseActions")),
215
- ])), ts.factory.createStringLiteral("../src/DatabaseActions"), undefined);
223
+ ts.factory.createImportSpecifier(false, undefined, ts.factory.createIdentifier(namedImport)),
224
+ ])), ts.factory.createStringLiteral(path), undefined);
225
+ }
226
+ function createQueryTypeExport() {
227
+ return ts.factory.createTypeAliasDeclaration([ts.factory.createToken(ts.SyntaxKind.ExportKeyword)], ts.factory.createIdentifier("QuerySchemaType"), undefined, ts.factory.createTypeReferenceNode(ts.factory.createIdentifier("Query"), [
228
+ ts.factory.createTypeReferenceNode(ts.factory.createIdentifier("DatabaseSchemaType"), undefined),
229
+ ts.factory.createTypeReferenceNode(ts.factory.createIdentifier("ColumnNameToColumnType"), undefined),
230
+ ]));
216
231
  }
217
232
  /**
218
233
  * Create export statement for the database class
@@ -238,4 +253,5 @@ function camelize(str) {
238
253
  return index === 0 ? match.toLowerCase() : match.toUpperCase();
239
254
  });
240
255
  }
256
+ exports.camelize = camelize;
241
257
  //# sourceMappingURL=GenerateTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GenerateTypes.js","sourceRoot":"","sources":["../../src/GenerateTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GenerateTypes.js","sourceRoot":"","sources":["../../src/GenerateTypes.ts"],"names":[],"mappings":"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"}
package/build/src/cli.js CHANGED
File without changes
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Column types' for all query options
3
3
  */
4
- import { PageObjectResponse } from "@notionhq/client/build/src/api-endpoints";
4
+ import { PageObjectResponse, QueryDatabaseResponse } from "@notionhq/client/build/src/api-endpoints";
5
5
  type columnDiscriminatedUnionTypes = PageObjectResponse["properties"];
6
6
  export type NotionColumnTypes = columnDiscriminatedUnionTypes[keyof columnDiscriminatedUnionTypes]["type"];
7
7
  export type SupportedNotionColumnTypes = Exclude<NotionColumnTypes, "formula" | "files" | "people" | "relation" | "rollup" | "created_by" | "last_edited_by" | "created_time" | "last_edited_time">;
@@ -109,5 +109,9 @@ type apiAndFilter = {
109
109
  type apiOrFilter = {
110
110
  or: Array<apiFilterType>;
111
111
  };
112
+ export type SimpleQueryResponse<DatabaseSchema> = {
113
+ results: Partial<DatabaseSchema>[];
114
+ rawResponse: QueryDatabaseResponse;
115
+ };
112
116
  export {};
113
117
  //# sourceMappingURL=queryTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"queryTypes.d.ts","sourceRoot":"","sources":["../../src/queryTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queryTypes.d.ts","sourceRoot":"","sources":["../../src/queryTypes.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@haustle/notion-orm",
3
- "version": "0.0.42",
3
+ "version": "0.0.43",
4
4
  "description": "tool to bring notion databases schemas/types to typescript",
5
5
  "main": "build/databases/index.js",
6
6
  "bin": {
@@ -1,6 +1,9 @@
1
1
  import {
2
2
  CreatePageParameters,
3
+ CreatePageResponse,
4
+ PageObjectResponse,
3
5
  QueryDatabaseParameters,
6
+ QueryDatabaseResponse,
4
7
  } from "@notionhq/client/build/src/api-endpoints";
5
8
  import { Client } from "@notionhq/client";
6
9
  import { getCall } from "./BuildCall";
@@ -12,10 +15,12 @@ import {
12
15
  CompoundFilters,
13
16
  Query,
14
17
  QueryFilter,
18
+ SimpleQueryResponse,
15
19
  SingleFilter,
16
20
  SupportedNotionColumnTypes,
17
21
  } from "./queryTypes";
18
22
 
23
+ import { camelize } from "./GenerateTypes";
19
24
  export type propNameToColumnNameType = Record<
20
25
  string,
21
26
  { columnName: string; type: SupportedNotionColumnTypes }
@@ -51,7 +56,10 @@ export class DatabaseActions<
51
56
  }
52
57
 
53
58
  // Add page to a database
54
- async add(pageObject: DatabaseSchemaType) {
59
+ async add(
60
+ pageObject: DatabaseSchemaType,
61
+ getCallBody?: boolean
62
+ ): Promise<CreatePageParameters | CreatePageResponse> {
55
63
  const callBody: CreatePageParameters = {
56
64
  parent: {
57
65
  database_id: this.databaseId,
@@ -70,12 +78,18 @@ export class DatabaseActions<
70
78
  callBody.properties[columnName] = columnObject!;
71
79
  });
72
80
 
73
- // console.log(JSON.stringify(callBody, null, 4));
74
- await this.NotionClient.pages.create(callBody);
81
+ // CORS: If user wants the body of the call. Can then send to API
82
+ if (getCallBody) {
83
+ return callBody;
84
+ }
85
+
86
+ return await this.NotionClient.pages.create(callBody);
75
87
  }
76
88
 
77
89
  // Look for page inside the database
78
- async query(query: Query<DatabaseSchemaType, ColumnNameToColumnType>) {
90
+ async query(
91
+ query: Query<DatabaseSchemaType, ColumnNameToColumnType>
92
+ ): Promise<SimpleQueryResponse<DatabaseSchemaType>> {
79
93
  const queryCall: QueryDatabaseParameters = {
80
94
  database_id: this.databaseId,
81
95
  };
@@ -88,12 +102,85 @@ export class DatabaseActions<
88
102
  queryCall["filter"] = filters;
89
103
  }
90
104
 
91
- console.log(JSON.stringify(queryCall, null, 4));
92
-
93
105
  const sort = query.sort;
94
106
 
95
- const apiQuery = await this.NotionClient.databases.query(queryCall);
96
- console.log(apiQuery);
107
+ const response = await this.NotionClient.databases.query(queryCall);
108
+
109
+ return this.simplifyQueryResponse(response);
110
+ }
111
+
112
+ private simplifyQueryResponse(
113
+ res: QueryDatabaseResponse
114
+ ): SimpleQueryResponse<DatabaseSchemaType> {
115
+ // Is this smart too do...idk
116
+ const rawResults = res.results as PageObjectResponse[];
117
+ const rawResponse = res;
118
+
119
+ const results: Partial<DatabaseSchemaType>[] = rawResults.map((result) => {
120
+ const simpleResult: Partial<DatabaseSchemaType> = {};
121
+ const properties = Object.entries(result.properties);
122
+
123
+ for (const [columnName, result] of properties) {
124
+ const camelizeColumnName = camelize(columnName);
125
+
126
+ const columnType = this.propNameToColumnName[camelizeColumnName].type;
127
+
128
+ // @ts-ignore
129
+ simpleResult[camelizeColumnName] = this.getResponseValue(
130
+ columnType,
131
+ result
132
+ );
133
+ }
134
+ return simpleResult;
135
+ });
136
+
137
+ return {
138
+ results,
139
+ rawResponse,
140
+ };
141
+ }
142
+
143
+ private getResponseValue(
144
+ prop: SupportedNotionColumnTypes,
145
+ x: Record<string, any>
146
+ ) {
147
+ switch (prop) {
148
+ case "select": {
149
+ const { select } = x;
150
+ if (select) {
151
+ return select["name"];
152
+ }
153
+ return undefined;
154
+ }
155
+ case "title": {
156
+ const { title } = x;
157
+ if (title) {
158
+ const combinedText = title.map(
159
+ ({ plain_text }: { plain_text: string }) => plain_text
160
+ );
161
+ return combinedText.join("");
162
+ }
163
+ return undefined;
164
+ }
165
+ case "url": {
166
+ const { url } = x;
167
+ return url;
168
+ }
169
+
170
+ case "multi_select": {
171
+ const { multi_select } = x;
172
+ if (multi_select) {
173
+ const multi_selectArr: string[] = multi_select.map(
174
+ ({ name }: { name: string }) => name
175
+ );
176
+ return multi_selectArr;
177
+ }
178
+ return undefined;
179
+ }
180
+ default: {
181
+ return "lol";
182
+ }
183
+ }
97
184
  }
98
185
 
99
186
  private recursivelyBuildFilter(
@@ -86,7 +86,7 @@ export async function createTypescriptFileForDatabase(
86
86
 
87
87
  // Object type that represents the database schema
88
88
  const DatabaseSchemaType = ts.factory.createTypeAliasDeclaration(
89
- undefined,
89
+ [ts.factory.createToken(ts.SyntaxKind.ExportKeyword)],
90
90
  ts.factory.createIdentifier("DatabaseSchemaType"),
91
91
  undefined,
92
92
  ts.factory.createTypeLiteralNode(databaseColumnTypeProps)
@@ -94,11 +94,19 @@ export async function createTypescriptFileForDatabase(
94
94
 
95
95
  // Top level non-nested variable, functions, types for database files
96
96
  const TsNodesForDatabaseFile = ts.factory.createNodeArray([
97
- createDatabaseActionsClassImport(),
97
+ createNameImport({
98
+ namedImport: "DatabaseActions",
99
+ path: "../src/DatabaseActions",
100
+ }),
101
+ createNameImport({
102
+ namedImport: "Query",
103
+ path: "../src/queryTypes",
104
+ }),
98
105
  createDatabaseIdVariable(databaseId),
99
106
  DatabaseSchemaType,
100
107
  createColumnNameToColumnProperties(propNameToColumnName),
101
108
  createColumnNameToColumnType(),
109
+ createQueryTypeExport(),
102
110
  createDatabaseClassExport({ databaseName: databaseClassName }),
103
111
  ]);
104
112
 
@@ -355,7 +363,8 @@ function createColumnNameToColumnType() {
355
363
  }
356
364
 
357
365
  // Need to import the database class used to execute database actions (adding + querying)
358
- function createDatabaseActionsClassImport() {
366
+ function createNameImport(args: { namedImport: string; path: string }) {
367
+ const { namedImport, path } = args;
359
368
  return ts.factory.createImportDeclaration(
360
369
  undefined,
361
370
  ts.factory.createImportClause(
@@ -365,15 +374,33 @@ function createDatabaseActionsClassImport() {
365
374
  ts.factory.createImportSpecifier(
366
375
  false,
367
376
  undefined,
368
- ts.factory.createIdentifier("DatabaseActions")
377
+ ts.factory.createIdentifier(namedImport)
369
378
  ),
370
379
  ])
371
380
  ),
372
- ts.factory.createStringLiteral("../src/DatabaseActions"),
381
+ ts.factory.createStringLiteral(path),
373
382
  undefined
374
383
  );
375
384
  }
376
385
 
386
+ function createQueryTypeExport() {
387
+ return ts.factory.createTypeAliasDeclaration(
388
+ [ts.factory.createToken(ts.SyntaxKind.ExportKeyword)],
389
+ ts.factory.createIdentifier("QuerySchemaType"),
390
+ undefined,
391
+ ts.factory.createTypeReferenceNode(ts.factory.createIdentifier("Query"), [
392
+ ts.factory.createTypeReferenceNode(
393
+ ts.factory.createIdentifier("DatabaseSchemaType"),
394
+ undefined
395
+ ),
396
+ ts.factory.createTypeReferenceNode(
397
+ ts.factory.createIdentifier("ColumnNameToColumnType"),
398
+ undefined
399
+ ),
400
+ ])
401
+ );
402
+ }
403
+
377
404
  /**
378
405
  * Create export statement for the database class
379
406
  * export const <databaseName> = new DatabaseActions<DatabaseSchemaType>(datbaseId, columnNameToColumnProperties)
@@ -413,7 +440,7 @@ function createDatabaseClassExport(args: { databaseName: string }) {
413
440
  }
414
441
 
415
442
  // for a type's property name
416
- function camelize(str: string) {
443
+ export function camelize(str: string) {
417
444
  return str.replace(/(?:^\w|[A-Z]|\b\w|\s+)/g, function (match, index) {
418
445
  if (+match === 0) return ""; // or if (/\s+/.test(match)) for white spaces
419
446
  return index === 0 ? match.toLowerCase() : match.toUpperCase();
package/src/queryTypes.ts CHANGED
@@ -3,7 +3,10 @@
3
3
  */
4
4
  // import { PageObjectResponse }
5
5
 
6
- import { PageObjectResponse } from "@notionhq/client/build/src/api-endpoints";
6
+ import {
7
+ PageObjectResponse,
8
+ QueryDatabaseResponse,
9
+ } from "@notionhq/client/build/src/api-endpoints";
7
10
 
8
11
  type columnDiscriminatedUnionTypes = PageObjectResponse["properties"];
9
12
  export type NotionColumnTypes =
@@ -167,3 +170,8 @@ type apiAndFilter = {
167
170
  type apiOrFilter = {
168
171
  or: Array<apiFilterType>;
169
172
  };
173
+
174
+ export type SimpleQueryResponse<DatabaseSchema> = {
175
+ results: Partial<DatabaseSchema>[];
176
+ rawResponse: QueryDatabaseResponse;
177
+ };