@budibase/types 2.8.21 → 2.8.22-alpha.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.
Files changed (64) hide show
  1. package/dist/cjs/api/account/accounts.d.ts +6 -0
  2. package/dist/cjs/api/web/debug.d.ts +11 -0
  3. package/dist/cjs/api/web/debug.js +3 -0
  4. package/dist/cjs/api/web/debug.js.map +1 -0
  5. package/dist/cjs/api/web/index.d.ts +1 -0
  6. package/dist/cjs/api/web/index.js +1 -0
  7. package/dist/cjs/api/web/index.js.map +1 -1
  8. package/dist/cjs/documents/app/app.d.ts +2 -0
  9. package/dist/cjs/documents/app/table/constants.d.ts +8 -0
  10. package/dist/cjs/documents/app/table/constants.js +14 -0
  11. package/dist/cjs/documents/app/table/constants.js.map +1 -0
  12. package/dist/cjs/documents/app/table/index.d.ts +3 -0
  13. package/dist/cjs/documents/app/table/index.js +20 -0
  14. package/dist/cjs/documents/app/table/index.js.map +1 -0
  15. package/dist/cjs/documents/app/table/schema.d.ts +71 -0
  16. package/dist/cjs/documents/app/table/schema.js +3 -0
  17. package/dist/cjs/documents/app/table/schema.js.map +1 -0
  18. package/dist/cjs/documents/app/table/table.d.ts +33 -0
  19. package/dist/cjs/documents/app/table/table.js +3 -0
  20. package/dist/cjs/documents/app/table/table.js.map +1 -0
  21. package/dist/cjs/sdk/db.d.ts +1 -1
  22. package/dist/cjs/sdk/search.d.ts +1 -1
  23. package/dist/cjs/tsconfig-cjs.build.tsbuildinfo +1 -1
  24. package/dist/mjs/api/account/accounts.d.ts +6 -0
  25. package/dist/mjs/api/web/debug.d.ts +11 -0
  26. package/dist/mjs/api/web/debug.js +2 -0
  27. package/dist/mjs/api/web/debug.js.map +1 -0
  28. package/dist/mjs/api/web/index.d.ts +1 -0
  29. package/dist/mjs/api/web/index.js +1 -0
  30. package/dist/mjs/api/web/index.js.map +1 -1
  31. package/dist/mjs/documents/app/app.d.ts +2 -0
  32. package/dist/mjs/documents/app/table/constants.d.ts +8 -0
  33. package/dist/mjs/documents/app/table/constants.js +11 -0
  34. package/dist/mjs/documents/app/table/constants.js.map +1 -0
  35. package/dist/mjs/documents/app/table/index.d.ts +3 -0
  36. package/dist/mjs/documents/app/table/index.js +4 -0
  37. package/dist/mjs/documents/app/table/index.js.map +1 -0
  38. package/dist/mjs/documents/app/table/schema.d.ts +71 -0
  39. package/dist/mjs/documents/app/table/schema.js +2 -0
  40. package/dist/mjs/documents/app/table/schema.js.map +1 -0
  41. package/dist/mjs/documents/app/table/table.d.ts +33 -0
  42. package/dist/mjs/documents/app/table/table.js +2 -0
  43. package/dist/mjs/documents/app/table/table.js.map +1 -0
  44. package/dist/mjs/sdk/db.d.ts +1 -1
  45. package/dist/mjs/sdk/search.d.ts +1 -1
  46. package/dist/mjs/tsconfig.build.tsbuildinfo +1 -1
  47. package/package.json +2 -2
  48. package/src/api/account/accounts.ts +9 -0
  49. package/src/api/web/debug.ts +11 -0
  50. package/src/api/web/index.ts +1 -0
  51. package/src/documents/app/app.ts +2 -0
  52. package/src/documents/app/table/constants.ts +9 -0
  53. package/src/documents/app/table/index.ts +3 -0
  54. package/src/documents/app/table/schema.ts +98 -0
  55. package/src/documents/app/table/table.ts +30 -0
  56. package/src/sdk/db.ts +1 -1
  57. package/src/sdk/search.ts +1 -1
  58. package/dist/cjs/documents/app/table.d.ts +0 -94
  59. package/dist/cjs/documents/app/table.js +0 -14
  60. package/dist/cjs/documents/app/table.js.map +0 -1
  61. package/dist/mjs/documents/app/table.d.ts +0 -94
  62. package/dist/mjs/documents/app/table.js +0 -11
  63. package/dist/mjs/documents/app/table.js.map +0 -1
  64. package/src/documents/app/table.ts +0 -97
@@ -0,0 +1,98 @@
1
+ // all added by grid/table when defining the
2
+ // column size, position and whether it can be viewed
3
+ import { FieldType } from "../row"
4
+ import { AutoReason, RelationshipType } from "./constants"
5
+
6
+ export interface UIFieldMetadata {
7
+ order?: number
8
+ width?: number
9
+ visible?: boolean
10
+ icon?: string
11
+ }
12
+
13
+ export interface RelationshipFieldMetadata {
14
+ main?: boolean
15
+ fieldName?: string
16
+ tableId?: string
17
+ // below is used for SQL relationships, needed to define the foreign keys
18
+ // or the tables used for many-to-many relationships (through)
19
+ relationshipType?: RelationshipType
20
+ through?: string
21
+ foreignKey?: string
22
+ throughFrom?: string
23
+ throughTo?: string
24
+ }
25
+
26
+ export interface AutoColumnFieldMetadata {
27
+ autocolumn?: boolean
28
+ subtype?: string
29
+ lastID?: number
30
+ // if the column was turned to an auto-column for SQL, explains why (primary, foreign etc)
31
+ autoReason?: AutoReason
32
+ }
33
+
34
+ export interface NumberFieldMetadata {
35
+ // used specifically when Budibase generates external tables, this denotes if a number field
36
+ // is a foreign key used for a many-to-many relationship
37
+ meta?: {
38
+ toTable: string
39
+ toKey: string
40
+ }
41
+ }
42
+
43
+ export interface DateFieldMetadata {
44
+ ignoreTimezones?: boolean
45
+ timeOnly?: boolean
46
+ }
47
+
48
+ export interface StringFieldMetadata {
49
+ useRichText?: boolean | null
50
+ }
51
+
52
+ export interface FormulaFieldMetadata {
53
+ formula?: string
54
+ formulaType?: string
55
+ }
56
+
57
+ export interface FieldConstraints {
58
+ type?: string
59
+ email?: boolean
60
+ inclusion?: string[]
61
+ length?: {
62
+ minimum?: string | number | null
63
+ maximum?: string | number | null
64
+ }
65
+ numericality?: {
66
+ greaterThanOrEqualTo: string | null
67
+ lessThanOrEqualTo: string | null
68
+ }
69
+ presence?:
70
+ | boolean
71
+ | {
72
+ allowEmpty?: boolean
73
+ }
74
+ datetime?: {
75
+ latest: string
76
+ earliest: string
77
+ }
78
+ }
79
+
80
+ export interface FieldSchema
81
+ extends UIFieldMetadata,
82
+ DateFieldMetadata,
83
+ RelationshipFieldMetadata,
84
+ AutoColumnFieldMetadata,
85
+ StringFieldMetadata,
86
+ FormulaFieldMetadata,
87
+ NumberFieldMetadata {
88
+ type: FieldType
89
+ name: string
90
+ sortable?: boolean
91
+ // only used by external databases, to denote the real type
92
+ externalType?: string
93
+ constraints?: FieldConstraints
94
+ }
95
+
96
+ export interface TableSchema {
97
+ [key: string]: FieldSchema
98
+ }
@@ -0,0 +1,30 @@
1
+ import { Document } from "../../document"
2
+ import { View } from "../view"
3
+ import { RenameColumn } from "../../../sdk"
4
+ import { TableSchema } from "./schema"
5
+
6
+ export interface Table extends Document {
7
+ type?: string
8
+ views?: { [key: string]: View }
9
+ name: string
10
+ primary?: string[]
11
+ schema: TableSchema
12
+ primaryDisplay?: string
13
+ sourceId?: string
14
+ relatedFormula?: string[]
15
+ constrained?: string[]
16
+ sql?: boolean
17
+ indexes?: { [key: string]: any }
18
+ rows?: { [key: string]: any }
19
+ created?: boolean
20
+ rowHeight?: number
21
+ }
22
+
23
+ export interface ExternalTable extends Table {
24
+ sourceId: string
25
+ }
26
+
27
+ export interface TableRequest extends Table {
28
+ _rename?: RenameColumn
29
+ created?: boolean
30
+ }
package/src/sdk/db.ts CHANGED
@@ -89,7 +89,7 @@ export interface Database {
89
89
 
90
90
  exists(): Promise<boolean>
91
91
  checkSetup(): Promise<Nano.DocumentScope<any>>
92
- get<T>(id?: string): Promise<T | any>
92
+ get<T>(id?: string): Promise<T>
93
93
  remove(
94
94
  id: string | Document,
95
95
  rev?: string
package/src/sdk/search.ts CHANGED
@@ -32,7 +32,7 @@ export interface SearchFilters {
32
32
  [key: string]: any[]
33
33
  }
34
34
  contains?: {
35
- [key: string]: any[]
35
+ [key: string]: any[] | any
36
36
  }
37
37
  notContains?: {
38
38
  [key: string]: any[]
@@ -1,94 +0,0 @@
1
- import { Document } from "../document";
2
- import { View } from "./view";
3
- import { RenameColumn } from "../../sdk";
4
- import { FieldType } from "./row";
5
- export declare enum RelationshipTypes {
6
- ONE_TO_MANY = "one-to-many",
7
- MANY_TO_ONE = "many-to-one",
8
- MANY_TO_MANY = "many-to-many"
9
- }
10
- export declare enum AutoReason {
11
- FOREIGN_KEY = "foreign_key"
12
- }
13
- export interface FieldSchema {
14
- type: FieldType;
15
- externalType?: string;
16
- fieldName?: string;
17
- name: string;
18
- sortable?: boolean;
19
- tableId?: string;
20
- relationshipType?: RelationshipTypes;
21
- through?: string;
22
- foreignKey?: string;
23
- icon?: string;
24
- autocolumn?: boolean;
25
- autoReason?: AutoReason;
26
- subtype?: string;
27
- throughFrom?: string;
28
- throughTo?: string;
29
- formula?: string;
30
- formulaType?: string;
31
- main?: boolean;
32
- ignoreTimezones?: boolean;
33
- timeOnly?: boolean;
34
- lastID?: number;
35
- useRichText?: boolean | null;
36
- order?: number;
37
- width?: number;
38
- meta?: {
39
- toTable: string;
40
- toKey: string;
41
- };
42
- constraints?: {
43
- type?: string;
44
- email?: boolean;
45
- inclusion?: string[];
46
- length?: {
47
- minimum?: string | number | null;
48
- maximum?: string | number | null;
49
- };
50
- numericality?: {
51
- greaterThanOrEqualTo: string | null;
52
- lessThanOrEqualTo: string | null;
53
- };
54
- presence?: boolean | {
55
- allowEmpty?: boolean;
56
- };
57
- datetime?: {
58
- latest: string;
59
- earliest: string;
60
- };
61
- };
62
- }
63
- export interface TableSchema {
64
- [key: string]: FieldSchema;
65
- }
66
- export interface Table extends Document {
67
- type?: string;
68
- views?: {
69
- [key: string]: View;
70
- };
71
- name: string;
72
- primary?: string[];
73
- schema: TableSchema;
74
- primaryDisplay?: string;
75
- sourceId?: string;
76
- relatedFormula?: string[];
77
- constrained?: string[];
78
- sql?: boolean;
79
- indexes?: {
80
- [key: string]: any;
81
- };
82
- rows?: {
83
- [key: string]: any;
84
- };
85
- created?: boolean;
86
- rowHeight?: number;
87
- }
88
- export interface ExternalTable extends Table {
89
- sourceId: string;
90
- }
91
- export interface TableRequest extends Table {
92
- _rename?: RenameColumn;
93
- created?: boolean;
94
- }
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AutoReason = exports.RelationshipTypes = void 0;
4
- var RelationshipTypes;
5
- (function (RelationshipTypes) {
6
- RelationshipTypes["ONE_TO_MANY"] = "one-to-many";
7
- RelationshipTypes["MANY_TO_ONE"] = "many-to-one";
8
- RelationshipTypes["MANY_TO_MANY"] = "many-to-many";
9
- })(RelationshipTypes = exports.RelationshipTypes || (exports.RelationshipTypes = {}));
10
- var AutoReason;
11
- (function (AutoReason) {
12
- AutoReason["FOREIGN_KEY"] = "foreign_key";
13
- })(AutoReason = exports.AutoReason || (exports.AutoReason = {}));
14
- //# sourceMappingURL=table.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table.js","sourceRoot":"","sources":["../../../../src/documents/app/table.ts"],"names":[],"mappings":";;;AAKA,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,gDAA2B,CAAA;IAC3B,gDAA2B,CAAA;IAC3B,kDAA6B,CAAA;AAC/B,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B;AAED,IAAY,UAEX;AAFD,WAAY,UAAU;IACpB,yCAA2B,CAAA;AAC7B,CAAC,EAFW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAErB"}
@@ -1,94 +0,0 @@
1
- import { Document } from "../document";
2
- import { View } from "./view";
3
- import { RenameColumn } from "../../sdk";
4
- import { FieldType } from "./row";
5
- export declare enum RelationshipTypes {
6
- ONE_TO_MANY = "one-to-many",
7
- MANY_TO_ONE = "many-to-one",
8
- MANY_TO_MANY = "many-to-many"
9
- }
10
- export declare enum AutoReason {
11
- FOREIGN_KEY = "foreign_key"
12
- }
13
- export interface FieldSchema {
14
- type: FieldType;
15
- externalType?: string;
16
- fieldName?: string;
17
- name: string;
18
- sortable?: boolean;
19
- tableId?: string;
20
- relationshipType?: RelationshipTypes;
21
- through?: string;
22
- foreignKey?: string;
23
- icon?: string;
24
- autocolumn?: boolean;
25
- autoReason?: AutoReason;
26
- subtype?: string;
27
- throughFrom?: string;
28
- throughTo?: string;
29
- formula?: string;
30
- formulaType?: string;
31
- main?: boolean;
32
- ignoreTimezones?: boolean;
33
- timeOnly?: boolean;
34
- lastID?: number;
35
- useRichText?: boolean | null;
36
- order?: number;
37
- width?: number;
38
- meta?: {
39
- toTable: string;
40
- toKey: string;
41
- };
42
- constraints?: {
43
- type?: string;
44
- email?: boolean;
45
- inclusion?: string[];
46
- length?: {
47
- minimum?: string | number | null;
48
- maximum?: string | number | null;
49
- };
50
- numericality?: {
51
- greaterThanOrEqualTo: string | null;
52
- lessThanOrEqualTo: string | null;
53
- };
54
- presence?: boolean | {
55
- allowEmpty?: boolean;
56
- };
57
- datetime?: {
58
- latest: string;
59
- earliest: string;
60
- };
61
- };
62
- }
63
- export interface TableSchema {
64
- [key: string]: FieldSchema;
65
- }
66
- export interface Table extends Document {
67
- type?: string;
68
- views?: {
69
- [key: string]: View;
70
- };
71
- name: string;
72
- primary?: string[];
73
- schema: TableSchema;
74
- primaryDisplay?: string;
75
- sourceId?: string;
76
- relatedFormula?: string[];
77
- constrained?: string[];
78
- sql?: boolean;
79
- indexes?: {
80
- [key: string]: any;
81
- };
82
- rows?: {
83
- [key: string]: any;
84
- };
85
- created?: boolean;
86
- rowHeight?: number;
87
- }
88
- export interface ExternalTable extends Table {
89
- sourceId: string;
90
- }
91
- export interface TableRequest extends Table {
92
- _rename?: RenameColumn;
93
- created?: boolean;
94
- }
@@ -1,11 +0,0 @@
1
- export var RelationshipTypes;
2
- (function (RelationshipTypes) {
3
- RelationshipTypes["ONE_TO_MANY"] = "one-to-many";
4
- RelationshipTypes["MANY_TO_ONE"] = "many-to-one";
5
- RelationshipTypes["MANY_TO_MANY"] = "many-to-many";
6
- })(RelationshipTypes || (RelationshipTypes = {}));
7
- export var AutoReason;
8
- (function (AutoReason) {
9
- AutoReason["FOREIGN_KEY"] = "foreign_key";
10
- })(AutoReason || (AutoReason = {}));
11
- //# sourceMappingURL=table.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table.js","sourceRoot":"","sources":["../../../../src/documents/app/table.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,gDAA2B,CAAA;IAC3B,gDAA2B,CAAA;IAC3B,kDAA6B,CAAA;AAC/B,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B;AAED,MAAM,CAAN,IAAY,UAEX;AAFD,WAAY,UAAU;IACpB,yCAA2B,CAAA;AAC7B,CAAC,EAFW,UAAU,KAAV,UAAU,QAErB"}
@@ -1,97 +0,0 @@
1
- import { Document } from "../document"
2
- import { View } from "./view"
3
- import { RenameColumn } from "../../sdk"
4
- import { FieldType } from "./row"
5
-
6
- export enum RelationshipTypes {
7
- ONE_TO_MANY = "one-to-many",
8
- MANY_TO_ONE = "many-to-one",
9
- MANY_TO_MANY = "many-to-many",
10
- }
11
-
12
- export enum AutoReason {
13
- FOREIGN_KEY = "foreign_key",
14
- }
15
-
16
- export interface FieldSchema {
17
- type: FieldType
18
- externalType?: string
19
- fieldName?: string
20
- name: string
21
- sortable?: boolean
22
- tableId?: string
23
- relationshipType?: RelationshipTypes
24
- through?: string
25
- foreignKey?: string
26
- icon?: string
27
- autocolumn?: boolean
28
- autoReason?: AutoReason
29
- subtype?: string
30
- throughFrom?: string
31
- throughTo?: string
32
- formula?: string
33
- formulaType?: string
34
- main?: boolean
35
- ignoreTimezones?: boolean
36
- timeOnly?: boolean
37
- lastID?: number
38
- useRichText?: boolean | null
39
- order?: number
40
- width?: number
41
- meta?: {
42
- toTable: string
43
- toKey: string
44
- }
45
- constraints?: {
46
- type?: string
47
- email?: boolean
48
- inclusion?: string[]
49
- length?: {
50
- minimum?: string | number | null
51
- maximum?: string | number | null
52
- }
53
- numericality?: {
54
- greaterThanOrEqualTo: string | null
55
- lessThanOrEqualTo: string | null
56
- }
57
- presence?:
58
- | boolean
59
- | {
60
- allowEmpty?: boolean
61
- }
62
- datetime?: {
63
- latest: string
64
- earliest: string
65
- }
66
- }
67
- }
68
-
69
- export interface TableSchema {
70
- [key: string]: FieldSchema
71
- }
72
-
73
- export interface Table extends Document {
74
- type?: string
75
- views?: { [key: string]: View }
76
- name: string
77
- primary?: string[]
78
- schema: TableSchema
79
- primaryDisplay?: string
80
- sourceId?: string
81
- relatedFormula?: string[]
82
- constrained?: string[]
83
- sql?: boolean
84
- indexes?: { [key: string]: any }
85
- rows?: { [key: string]: any }
86
- created?: boolean
87
- rowHeight?: number
88
- }
89
-
90
- export interface ExternalTable extends Table {
91
- sourceId: string
92
- }
93
-
94
- export interface TableRequest extends Table {
95
- _rename?: RenameColumn
96
- created?: boolean
97
- }