@budibase/types 2.1.45 → 2.1.46-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 (98) hide show
  1. package/dist/api/web/user.d.ts +5 -0
  2. package/dist/documents/app/app.d.ts +2 -1
  3. package/dist/documents/app/automation.d.ts +28 -3
  4. package/dist/documents/app/automation.js +1 -0
  5. package/dist/documents/app/automation.js.map +1 -1
  6. package/dist/documents/app/backup.d.ts +1 -0
  7. package/dist/documents/app/component.d.ts +10 -0
  8. package/dist/documents/app/component.js +3 -0
  9. package/dist/documents/app/component.js.map +1 -0
  10. package/dist/documents/app/index.d.ts +2 -0
  11. package/dist/documents/app/index.js +2 -0
  12. package/dist/documents/app/index.js.map +1 -1
  13. package/dist/documents/app/links.d.ts +19 -0
  14. package/dist/documents/app/links.js +3 -0
  15. package/dist/documents/app/links.js.map +1 -0
  16. package/dist/documents/app/role.d.ts +1 -1
  17. package/dist/documents/app/screen.d.ts +8 -12
  18. package/dist/documents/app/table.d.ts +23 -3
  19. package/dist/documents/app/view.d.ts +4 -1
  20. package/dist/documents/app/view.js.map +1 -1
  21. package/dist/documents/document.d.ts +3 -0
  22. package/dist/documents/global/config.d.ts +22 -10
  23. package/dist/documents/global/config.js +2 -0
  24. package/dist/documents/global/config.js.map +1 -1
  25. package/dist/documents/global/index.d.ts +1 -0
  26. package/dist/documents/global/index.js +1 -0
  27. package/dist/documents/global/index.js.map +1 -1
  28. package/dist/documents/global/templates.d.ts +8 -0
  29. package/dist/documents/global/templates.js +3 -0
  30. package/dist/documents/global/templates.js.map +1 -0
  31. package/dist/documents/global/user.d.ts +32 -4
  32. package/dist/documents/platform/index.d.ts +1 -0
  33. package/dist/documents/platform/index.js +1 -0
  34. package/dist/documents/platform/index.js.map +1 -1
  35. package/dist/documents/platform/tenants.d.ts +4 -0
  36. package/dist/documents/platform/tenants.js +3 -0
  37. package/dist/documents/platform/tenants.js.map +1 -0
  38. package/dist/documents/pouch.d.ts +7 -2
  39. package/dist/sdk/auth.d.ts +8 -0
  40. package/dist/sdk/context.d.ts +1 -1
  41. package/dist/sdk/db.d.ts +55 -4
  42. package/dist/sdk/db.js +5 -1
  43. package/dist/sdk/db.js.map +1 -1
  44. package/dist/sdk/events/role.d.ts +3 -3
  45. package/dist/sdk/featureFlag.d.ts +6 -0
  46. package/dist/sdk/featureFlag.js +8 -0
  47. package/dist/sdk/featureFlag.js.map +1 -0
  48. package/dist/sdk/index.d.ts +2 -0
  49. package/dist/sdk/index.js +2 -0
  50. package/dist/sdk/index.js.map +1 -1
  51. package/dist/sdk/koa.d.ts +13 -4
  52. package/dist/sdk/middleware/index.d.ts +2 -0
  53. package/dist/sdk/middleware/index.js +19 -0
  54. package/dist/sdk/middleware/index.js.map +1 -0
  55. package/dist/sdk/middleware/matchers.d.ts +21 -0
  56. package/dist/sdk/middleware/matchers.js +3 -0
  57. package/dist/sdk/middleware/matchers.js.map +1 -0
  58. package/dist/sdk/middleware/tenancy.d.ts +12 -0
  59. package/dist/sdk/middleware/tenancy.js +12 -0
  60. package/dist/sdk/middleware/tenancy.js.map +1 -0
  61. package/dist/sdk/migrations.d.ts +1 -0
  62. package/dist/sdk/migrations.js +1 -0
  63. package/dist/sdk/migrations.js.map +1 -1
  64. package/dist/sdk/search.d.ts +2 -2
  65. package/dist/tsconfig.build.tsbuildinfo +1 -1
  66. package/package.json +4 -2
  67. package/src/api/web/user.ts +6 -0
  68. package/src/documents/app/app.ts +2 -1
  69. package/src/documents/app/automation.ts +30 -3
  70. package/src/documents/app/backup.ts +1 -0
  71. package/src/documents/app/component.ts +9 -0
  72. package/src/documents/app/index.ts +2 -0
  73. package/src/documents/app/links.ts +21 -0
  74. package/src/documents/app/role.ts +1 -1
  75. package/src/documents/app/screen.ts +9 -10
  76. package/src/documents/app/table.ts +26 -3
  77. package/src/documents/app/view.ts +4 -1
  78. package/src/documents/document.ts +4 -0
  79. package/src/documents/global/config.ts +23 -9
  80. package/src/documents/global/index.ts +1 -0
  81. package/src/documents/global/templates.ts +9 -0
  82. package/src/documents/global/user.ts +34 -4
  83. package/src/documents/platform/index.ts +1 -0
  84. package/src/documents/platform/tenants.ts +5 -0
  85. package/src/documents/pouch.ts +8 -2
  86. package/src/sdk/auth.ts +10 -0
  87. package/src/sdk/context.ts +1 -1
  88. package/src/sdk/db.ts +76 -4
  89. package/src/sdk/events/role.ts +3 -3
  90. package/src/sdk/featureFlag.ts +7 -0
  91. package/src/sdk/index.ts +2 -0
  92. package/src/sdk/koa.ts +13 -4
  93. package/src/sdk/middleware/index.ts +2 -0
  94. package/src/sdk/middleware/matchers.ts +22 -0
  95. package/src/sdk/middleware/tenancy.ts +13 -0
  96. package/src/sdk/migrations.ts +1 -0
  97. package/src/sdk/search.ts +2 -2
  98. package/tsconfig.build.json +0 -1
@@ -55,3 +55,8 @@ export interface SearchUsersRequest {
55
55
  appId?: string;
56
56
  userIds?: string[];
57
57
  }
58
+ export interface CreateAdminUserRequest {
59
+ email: string;
60
+ password: string;
61
+ tenantId: string;
62
+ }
@@ -1,4 +1,4 @@
1
- import { Document } from "../document";
1
+ import { User, Document } from "../";
2
2
  export declare type AppMetadataErrors = {
3
3
  [key: string]: string[];
4
4
  };
@@ -16,6 +16,7 @@ export interface App extends Document {
16
16
  theme?: string;
17
17
  customTheme?: AppCustomTheme;
18
18
  revertableVersion?: string;
19
+ lockedBy?: User;
19
20
  navigation?: AppNavigation;
20
21
  automationErrors?: AppMetadataErrors;
21
22
  icon?: AppIcon;
@@ -1,4 +1,6 @@
1
+ /// <reference types="node" />
1
2
  import { Document } from "../document";
3
+ import { EventEmitter } from "events";
2
4
  export declare enum AutomationTriggerStepId {
3
5
  ROW_SAVED = "ROW_SAVED",
4
6
  ROW_UPDATED = "ROW_UPDATED",
@@ -12,6 +14,7 @@ export declare enum AutomationActionStepId {
12
14
  CREATE_ROW = "CREATE_ROW",
13
15
  UPDATE_ROW = "UPDATE_ROW",
14
16
  DELETE_ROW = "DELETE_ROW",
17
+ EXECUTE_BASH = "EXECUTE_BASH",
15
18
  OUTGOING_WEBHOOK = "OUTGOING_WEBHOOK",
16
19
  EXECUTE_SCRIPT = "EXECUTE_SCRIPT",
17
20
  EXECUTE_QUERY = "EXECUTE_QUERY",
@@ -31,10 +34,17 @@ export interface Automation extends Document {
31
34
  trigger: AutomationTrigger;
32
35
  };
33
36
  appId: string;
37
+ live?: boolean;
34
38
  name: string;
35
39
  }
36
- export interface AutomationStep {
37
- id: string;
40
+ export interface AutomationStepSchema {
41
+ name: string;
42
+ tagline: string;
43
+ icon: string;
44
+ description: string;
45
+ type: string;
46
+ internal?: boolean;
47
+ deprecated?: boolean;
38
48
  stepId: AutomationTriggerStepId | AutomationActionStepId;
39
49
  inputs: {
40
50
  [key: string]: any;
@@ -46,11 +56,19 @@ export interface AutomationStep {
46
56
  outputs: {
47
57
  [key: string]: any;
48
58
  };
59
+ required?: string[];
49
60
  };
50
61
  }
51
- export interface AutomationTrigger extends AutomationStep {
62
+ export interface AutomationStep extends AutomationStepSchema {
63
+ id: string;
64
+ }
65
+ export interface AutomationTriggerSchema extends AutomationStepSchema {
66
+ event?: string;
52
67
  cronJobId?: string;
53
68
  }
69
+ export interface AutomationTrigger extends AutomationTriggerSchema {
70
+ id: string;
71
+ }
54
72
  export declare enum AutomationStatus {
55
73
  SUCCESS = "success",
56
74
  ERROR = "error",
@@ -80,3 +98,10 @@ export interface AutomationLogPage {
80
98
  hasNextPage: boolean;
81
99
  nextPage?: string;
82
100
  }
101
+ export declare type AutomationStepInput = {
102
+ inputs: Record<string, any>;
103
+ context: Record<string, any>;
104
+ emitter: EventEmitter;
105
+ appId: string;
106
+ apiKey?: string;
107
+ };
@@ -16,6 +16,7 @@ var AutomationActionStepId;
16
16
  AutomationActionStepId["CREATE_ROW"] = "CREATE_ROW";
17
17
  AutomationActionStepId["UPDATE_ROW"] = "UPDATE_ROW";
18
18
  AutomationActionStepId["DELETE_ROW"] = "DELETE_ROW";
19
+ AutomationActionStepId["EXECUTE_BASH"] = "EXECUTE_BASH";
19
20
  AutomationActionStepId["OUTGOING_WEBHOOK"] = "OUTGOING_WEBHOOK";
20
21
  AutomationActionStepId["EXECUTE_SCRIPT"] = "EXECUTE_SCRIPT";
21
22
  AutomationActionStepId["EXECUTE_QUERY"] = "EXECUTE_QUERY";
@@ -1 +1 @@
1
- {"version":3,"file":"automation.js","sourceRoot":"","sources":["../../../src/documents/app/automation.ts"],"names":[],"mappings":";;;AAEA,IAAY,uBAOX;AAPD,WAAY,uBAAuB;IACjC,kDAAuB,CAAA;IACvB,sDAA2B,CAAA;IAC3B,sDAA2B,CAAA;IAC3B,8CAAmB,CAAA;IACnB,sCAAW,CAAA;IACX,wCAAa,CAAA;AACf,CAAC,EAPW,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAOlC;AAED,IAAY,sBAkBX;AAlBD,WAAY,sBAAsB;IAChC,6DAAmC,CAAA;IACnC,mDAAyB,CAAA;IACzB,mDAAyB,CAAA;IACzB,mDAAyB,CAAA;IACzB,+DAAqC,CAAA;IACrC,2DAAiC,CAAA;IACjC,yDAA+B,CAAA;IAC/B,mDAAyB,CAAA;IACzB,yCAAe,CAAA;IACf,2CAAiB,CAAA;IACjB,mDAAyB,CAAA;IACzB,uCAAa,CAAA;IACb,qEAAqE;IACrE,6CAAmB,CAAA;IACnB,yCAAe,CAAA;IACf,2CAAiB,CAAA;IACjB,mDAAyB,CAAA;AAC3B,CAAC,EAlBW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAkBjC;AA+BD,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,mCAAe,CAAA;IACf,uCAAmB,CAAA;IACnB,mDAA+B,CAAA;AACjC,CAAC,EALW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAK3B"}
1
+ {"version":3,"file":"automation.js","sourceRoot":"","sources":["../../../src/documents/app/automation.ts"],"names":[],"mappings":";;;AAGA,IAAY,uBAOX;AAPD,WAAY,uBAAuB;IACjC,kDAAuB,CAAA;IACvB,sDAA2B,CAAA;IAC3B,sDAA2B,CAAA;IAC3B,8CAAmB,CAAA;IACnB,sCAAW,CAAA;IACX,wCAAa,CAAA;AACf,CAAC,EAPW,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAOlC;AAED,IAAY,sBAmBX;AAnBD,WAAY,sBAAsB;IAChC,6DAAmC,CAAA;IACnC,mDAAyB,CAAA;IACzB,mDAAyB,CAAA;IACzB,mDAAyB,CAAA;IACzB,uDAA6B,CAAA;IAC7B,+DAAqC,CAAA;IACrC,2DAAiC,CAAA;IACjC,yDAA+B,CAAA;IAC/B,mDAAyB,CAAA;IACzB,yCAAe,CAAA;IACf,2CAAiB,CAAA;IACjB,mDAAyB,CAAA;IACzB,uCAAa,CAAA;IACb,qEAAqE;IACrE,6CAAmB,CAAA;IACnB,yCAAe,CAAA;IACf,2CAAiB,CAAA;IACjB,mDAAyB,CAAA;AAC3B,CAAC,EAnBW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAmBjC;AAgDD,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,mCAAe,CAAA;IACf,uCAAmB,CAAA;IACnB,mDAA+B,CAAA;AACjC,CAAC,EALW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAK3B"}
@@ -34,6 +34,7 @@ export interface AppBackupMetadata {
34
34
  contents?: AppBackupContents;
35
35
  }
36
36
  export interface AppBackup extends Document, AppBackupMetadata {
37
+ _id: string;
37
38
  filename?: string;
38
39
  }
39
40
  export declare type AppBackupFetchOpts = {
@@ -0,0 +1,10 @@
1
+ import { Document } from "../document";
2
+ export interface Component extends Document {
3
+ _instanceName: string;
4
+ _styles: {
5
+ [key: string]: any;
6
+ };
7
+ _component: string;
8
+ _children?: Component[];
9
+ [key: string]: any;
10
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../src/documents/app/component.ts"],"names":[],"mappings":""}
@@ -12,3 +12,5 @@ export * from "./row";
12
12
  export * from "./user";
13
13
  export * from "./backup";
14
14
  export * from "./webhook";
15
+ export * from "./links";
16
+ export * from "./component";
@@ -28,4 +28,6 @@ __exportStar(require("./row"), exports);
28
28
  __exportStar(require("./user"), exports);
29
29
  __exportStar(require("./backup"), exports);
30
30
  __exportStar(require("./webhook"), exports);
31
+ __exportStar(require("./links"), exports);
32
+ __exportStar(require("./component"), exports);
31
33
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/documents/app/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAqB;AACrB,+CAA4B;AAC5B,+CAA4B;AAC5B,2CAAwB;AACxB,0CAAuB;AACvB,yCAAsB;AACtB,0CAAuB;AACvB,2CAAwB;AACxB,yCAAsB;AACtB,8CAA2B;AAC3B,wCAAqB;AACrB,yCAAsB;AACtB,2CAAwB;AACxB,4CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/documents/app/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAqB;AACrB,+CAA4B;AAC5B,+CAA4B;AAC5B,2CAAwB;AACxB,0CAAuB;AACvB,yCAAsB;AACtB,0CAAuB;AACvB,2CAAwB;AACxB,yCAAsB;AACtB,8CAA2B;AAC3B,wCAAqB;AACrB,yCAAsB;AACtB,2CAAwB;AACxB,4CAAyB;AACzB,0CAAuB;AACvB,8CAA2B"}
@@ -0,0 +1,19 @@
1
+ import { Document } from "../document";
2
+ export interface LinkDocument extends Document {
3
+ type: string;
4
+ doc1: {
5
+ rowId: string;
6
+ fieldName: string;
7
+ tableId: string;
8
+ };
9
+ doc2: {
10
+ rowId: string;
11
+ fieldName: string;
12
+ tableId: string;
13
+ };
14
+ }
15
+ export interface LinkDocumentValue {
16
+ id: string;
17
+ thisId: string;
18
+ fieldName: string;
19
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=links.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"links.js","sourceRoot":"","sources":["../../../src/documents/app/links.ts"],"names":[],"mappings":""}
@@ -1,7 +1,7 @@
1
1
  import { Document } from "../document";
2
2
  export interface Role extends Document {
3
3
  permissionId: string;
4
- inherits: string;
4
+ inherits?: string;
5
5
  permissions: {
6
6
  [key: string]: string[];
7
7
  };
@@ -1,25 +1,21 @@
1
1
  import { Document } from "../document";
2
- export interface ScreenProps extends Document {
3
- _instanceName: string;
4
- _styles: {
5
- [key: string]: any;
6
- };
7
- _component: string;
8
- _children: ScreenProps[];
2
+ import { Component } from "./component";
3
+ export interface ScreenProps extends Component {
9
4
  size?: string;
10
5
  gap?: string;
11
6
  direction?: string;
12
7
  vAlign?: string;
13
8
  hAlign?: string;
14
9
  }
10
+ export interface ScreenRouting {
11
+ route: string;
12
+ roleId: string;
13
+ homeScreen?: boolean;
14
+ }
15
15
  export interface Screen extends Document {
16
16
  layoutId?: string;
17
17
  showNavigation?: boolean;
18
18
  width?: string;
19
- routing: {
20
- route: string;
21
- roleId: string;
22
- homeScreen?: boolean;
23
- };
19
+ routing: ScreenRouting;
24
20
  props: ScreenProps;
25
21
  }
@@ -1,14 +1,17 @@
1
1
  import { Document } from "../document";
2
2
  import { View } from "./view";
3
+ import { RenameColumn } from "../../sdk";
3
4
  export interface FieldSchema {
4
5
  type: string;
5
6
  externalType?: string;
6
7
  fieldName?: string;
7
8
  name: string;
9
+ sortable?: boolean;
8
10
  tableId?: string;
9
11
  relationshipType?: string;
10
12
  through?: string;
11
13
  foreignKey?: string;
14
+ icon?: string;
12
15
  autocolumn?: boolean;
13
16
  subtype?: string;
14
17
  throughFrom?: string;
@@ -17,6 +20,9 @@ export interface FieldSchema {
17
20
  formulaType?: string;
18
21
  main?: boolean;
19
22
  ignoreTimezones?: boolean;
23
+ timeOnly?: boolean;
24
+ lastID?: number;
25
+ useRichText?: boolean | null;
20
26
  meta?: {
21
27
  toTable: string;
22
28
  toKey: string;
@@ -26,10 +32,20 @@ export interface FieldSchema {
26
32
  email?: boolean;
27
33
  inclusion?: string[];
28
34
  length?: {
29
- minimum?: string | number;
30
- maximum?: string | number;
35
+ minimum?: string | number | null;
36
+ maximum?: string | number | null;
37
+ };
38
+ numericality?: {
39
+ greaterThanOrEqualTo: string | null;
40
+ lessThanOrEqualTo: string | null;
41
+ };
42
+ presence?: boolean | {
43
+ allowEmpty?: boolean;
44
+ };
45
+ datetime?: {
46
+ latest: string;
47
+ earliest: string;
31
48
  };
32
- presence?: boolean;
33
49
  };
34
50
  }
35
51
  export interface TableSchema {
@@ -55,3 +71,7 @@ export interface Table extends Document {
55
71
  [key: string]: any;
56
72
  };
57
73
  }
74
+ export interface TableRequest extends Table {
75
+ _rename?: RenameColumn;
76
+ created?: boolean;
77
+ }
@@ -5,6 +5,9 @@ export interface View {
5
5
  filters: ViewFilter[];
6
6
  schema: ViewSchema;
7
7
  calculation?: ViewCalculation;
8
+ map?: string;
9
+ reduce?: any;
10
+ meta?: Record<string, any>;
8
11
  }
9
12
  export declare type ViewSchema = ViewCountOrSumSchema | ViewStatisticsSchema;
10
13
  export interface ViewCountOrSumSchema {
@@ -26,7 +29,7 @@ export interface ViewStatisticsSchema {
26
29
  };
27
30
  }
28
31
  export interface ViewFilter {
29
- value: any;
32
+ value?: any;
30
33
  condition: string;
31
34
  key: string;
32
35
  conjunction?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"view.js","sourceRoot":"","sources":["../../../src/documents/app/view.ts"],"names":[],"mappings":";;;AAsCA,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,8BAAW,CAAA;IACX,kCAAe,CAAA;IACf,uCAAoB,CAAA;AACtB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B"}
1
+ {"version":3,"file":"view.js","sourceRoot":"","sources":["../../../src/documents/app/view.ts"],"names":[],"mappings":";;;AAyCA,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,8BAAW,CAAA;IACX,kCAAe,CAAA;IACf,uCAAoB,CAAA;AACtB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B"}
@@ -4,3 +4,6 @@ export interface Document {
4
4
  createdAt?: string | number;
5
5
  updatedAt?: string;
6
6
  }
7
+ export interface AnyDocument extends Document {
8
+ [key: string]: any;
9
+ }
@@ -26,17 +26,27 @@ export interface GoogleConfig extends Config {
26
26
  activated: boolean;
27
27
  };
28
28
  }
29
+ export interface OIDCConfiguration {
30
+ issuer: string;
31
+ authorizationURL: string;
32
+ tokenURL: string;
33
+ userInfoURL: string;
34
+ clientID: string;
35
+ clientSecret: string;
36
+ callbackURL: string;
37
+ }
38
+ export interface OIDCInnerCfg {
39
+ configUrl: string;
40
+ clientID: string;
41
+ clientSecret: string;
42
+ logo: string;
43
+ name: string;
44
+ uuid: string;
45
+ activated: boolean;
46
+ }
29
47
  export interface OIDCConfig extends Config {
30
48
  config: {
31
- configs: {
32
- configUrl: string;
33
- clientID: string;
34
- clientSecret: string;
35
- logo: string;
36
- name: string;
37
- uuid: string;
38
- activated: boolean;
39
- }[];
49
+ configs: OIDCInnerCfg[];
40
50
  };
41
51
  }
42
52
  export declare type NestedConfig = SMTPConfig | SettingsConfig | GoogleConfig | OIDCConfig;
@@ -46,7 +56,9 @@ export declare const isGoogleConfig: (config: Config) => config is GoogleConfig;
46
56
  export declare const isOIDCConfig: (config: Config) => config is OIDCConfig;
47
57
  export declare enum ConfigType {
48
58
  SETTINGS = "settings",
59
+ ACCOUNT = "account",
49
60
  SMTP = "smtp",
50
61
  GOOGLE = "google",
51
- OIDC = "oidc"
62
+ OIDC = "oidc",
63
+ OIDC_LOGOS = "logos_oidc"
52
64
  }
@@ -12,8 +12,10 @@ exports.isOIDCConfig = isOIDCConfig;
12
12
  var ConfigType;
13
13
  (function (ConfigType) {
14
14
  ConfigType["SETTINGS"] = "settings";
15
+ ConfigType["ACCOUNT"] = "account";
15
16
  ConfigType["SMTP"] = "smtp";
16
17
  ConfigType["GOOGLE"] = "google";
17
18
  ConfigType["OIDC"] = "oidc";
19
+ ConfigType["OIDC_LOGOS"] = "logos_oidc";
18
20
  })(ConfigType = exports.ConfigType || (exports.ConfigType = {}));
19
21
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/documents/global/config.ts"],"names":[],"mappings":";;;AAqDO,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAA4B,EAAE,CAC3E,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,QAAQ,CAAA;AADxB,QAAA,gBAAgB,oBACQ;AAC9B,MAAM,YAAY,GAAG,CAAC,MAAc,EAAwB,EAAE,CACnE,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAA;AADpB,QAAA,YAAY,gBACQ;AAC1B,MAAM,cAAc,GAAG,CAAC,MAAc,EAA0B,EAAE,CACvE,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,MAAM,CAAA;AADtB,QAAA,cAAc,kBACQ;AAC5B,MAAM,YAAY,GAAG,CAAC,MAAc,EAAwB,EAAE,CACnE,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAA;AADpB,QAAA,YAAY,gBACQ;AAEjC,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,mCAAqB,CAAA;IACrB,2BAAa,CAAA;IACb,+BAAiB,CAAA;IACjB,2BAAa,CAAA;AACf,CAAC,EALW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAKrB"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/documents/global/config.ts"],"names":[],"mappings":";;;AAiEO,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAA4B,EAAE,CAC3E,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,QAAQ,CAAA;AADxB,QAAA,gBAAgB,oBACQ;AAC9B,MAAM,YAAY,GAAG,CAAC,MAAc,EAAwB,EAAE,CACnE,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAA;AADpB,QAAA,YAAY,gBACQ;AAC1B,MAAM,cAAc,GAAG,CAAC,MAAc,EAA0B,EAAE,CACvE,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,MAAM,CAAA;AADtB,QAAA,cAAc,kBACQ;AAC5B,MAAM,YAAY,GAAG,CAAC,MAAc,EAAwB,EAAE,CACnE,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAA;AADpB,QAAA,YAAY,gBACQ;AAEjC,IAAY,UAOX;AAPD,WAAY,UAAU;IACpB,mCAAqB,CAAA;IACrB,iCAAmB,CAAA;IACnB,2BAAa,CAAA;IACb,+BAAiB,CAAA;IACjB,2BAAa,CAAA;IACb,uCAAyB,CAAA;AAC3B,CAAC,EAPW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAOrB"}
@@ -4,3 +4,4 @@ export * from "./userGroup";
4
4
  export * from "./plugin";
5
5
  export * from "./quotas";
6
6
  export * from "./schedule";
7
+ export * from "./templates";
@@ -20,4 +20,5 @@ __exportStar(require("./userGroup"), exports);
20
20
  __exportStar(require("./plugin"), exports);
21
21
  __exportStar(require("./quotas"), exports);
22
22
  __exportStar(require("./schedule"), exports);
23
+ __exportStar(require("./templates"), exports);
23
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/documents/global/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,yCAAsB;AACtB,8CAA2B;AAC3B,2CAAwB;AACxB,2CAAwB;AACxB,6CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/documents/global/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,yCAAsB;AACtB,8CAA2B;AAC3B,2CAAwB;AACxB,2CAAwB;AACxB,6CAA0B;AAC1B,8CAA2B"}
@@ -0,0 +1,8 @@
1
+ import { Document } from "../document";
2
+ export interface Template extends Document {
3
+ ownerId?: string;
4
+ name?: string;
5
+ contents: string;
6
+ purpose: string;
7
+ type?: string;
8
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../src/documents/global/templates.ts"],"names":[],"mappings":""}
@@ -1,7 +1,35 @@
1
1
  import { Document } from "../document";
2
- export interface User extends Document {
2
+ export interface SSOProfile {
3
+ id: string;
4
+ name?: {
5
+ givenName?: string;
6
+ familyName?: string;
7
+ };
8
+ _json: {
9
+ email: string;
10
+ picture: string;
11
+ };
12
+ provider?: string;
13
+ }
14
+ export interface ThirdPartyUser extends Document {
15
+ thirdPartyProfile?: SSOProfile["_json"];
16
+ firstName?: string;
17
+ lastName?: string;
18
+ pictureUrl?: string;
19
+ profile?: SSOProfile;
20
+ oauth2?: any;
21
+ provider?: string;
22
+ providerType?: string;
23
+ email: string;
24
+ userId?: string;
25
+ forceResetPassword?: boolean;
26
+ userGroups?: string[];
27
+ }
28
+ export interface User extends ThirdPartyUser {
3
29
  tenantId: string;
4
30
  email: string;
31
+ userId?: string;
32
+ forceResetPassword?: boolean;
5
33
  roles: UserRoles;
6
34
  builder?: {
7
35
  global: boolean;
@@ -9,13 +37,13 @@ export interface User extends Document {
9
37
  admin?: {
10
38
  global: boolean;
11
39
  };
12
- providerType?: string;
13
40
  password?: string;
14
41
  status?: string;
15
42
  createdAt?: number;
16
- userGroups?: string[];
17
- forceResetPassword?: boolean;
18
43
  dayPassRecordedAt?: string;
44
+ account?: {
45
+ authType: string;
46
+ };
19
47
  }
20
48
  export interface UserRoles {
21
49
  [key: string]: string;
@@ -1,3 +1,4 @@
1
1
  export * from "./info";
2
2
  export * from "./users";
3
3
  export * from "./accounts";
4
+ export * from "./tenants";
@@ -17,4 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./info"), exports);
18
18
  __exportStar(require("./users"), exports);
19
19
  __exportStar(require("./accounts"), exports);
20
+ __exportStar(require("./tenants"), exports);
20
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/documents/platform/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAsB;AACtB,0CAAuB;AACvB,6CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/documents/platform/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAsB;AACtB,0CAAuB;AACvB,6CAA0B;AAC1B,4CAAyB"}
@@ -0,0 +1,4 @@
1
+ import { Document } from "../document";
2
+ export interface Tenants extends Document {
3
+ tenantIds: string[];
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=tenants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tenants.js","sourceRoot":"","sources":["../../../src/documents/platform/tenants.ts"],"names":[],"mappings":""}
@@ -6,8 +6,8 @@ export interface RowResponse<T> {
6
6
  id: string;
7
7
  key: string;
8
8
  error: string;
9
- value: RowValue;
10
- doc: T;
9
+ value: T | RowValue;
10
+ doc?: T | any;
11
11
  }
12
12
  export interface AllDocsResponse<T> {
13
13
  offset: number;
@@ -20,4 +20,9 @@ interface BulkDocResponse {
20
20
  id: string;
21
21
  rev: string;
22
22
  }
23
+ export interface PutResponse {
24
+ ok: boolean;
25
+ id: string;
26
+ rev: string;
27
+ }
23
28
  export {};
@@ -1,3 +1,5 @@
1
+ import { BBContext } from "./koa";
2
+ import { Hosting } from "./hosting";
1
3
  export interface AuthToken {
2
4
  userId: string;
3
5
  tenantId: string;
@@ -7,6 +9,7 @@ export interface CreateSession {
7
9
  sessionId: string;
8
10
  tenantId: string;
9
11
  csrfToken?: string;
12
+ hosting?: Hosting;
10
13
  }
11
14
  export interface Session extends CreateSession {
12
15
  userId: string;
@@ -20,3 +23,8 @@ export interface SessionKey {
20
23
  export interface ScannedSession {
21
24
  value: Session;
22
25
  }
26
+ export interface PlatformLogoutOpts {
27
+ ctx: BBContext;
28
+ userId: string;
29
+ keepActiveSession?: boolean;
30
+ }
@@ -1,5 +1,5 @@
1
1
  import { User, Account } from "../documents";
2
- import { IdentityType } from "./events/identification";
2
+ import { IdentityType } from "./events";
3
3
  export interface BaseContext {
4
4
  _id: string;
5
5
  type: IdentityType;
package/dist/sdk/db.d.ts CHANGED
@@ -1,9 +1,11 @@
1
1
  /// <reference types="pouchdb-find" />
2
+ import Nano from "nano";
3
+ import { AllDocsResponse, AnyDocument, Document } from "../";
2
4
  export declare type PouchOptions = {
3
- inMemory: boolean;
4
- replication: boolean;
5
- onDisk: boolean;
6
- find: boolean;
5
+ inMemory?: boolean;
6
+ replication?: boolean;
7
+ onDisk?: boolean;
8
+ find?: boolean;
7
9
  };
8
10
  export declare enum SortOption {
9
11
  ASCENDING = "asc",
@@ -19,3 +21,52 @@ export declare type CouchFindOptions = {
19
21
  skip?: number;
20
22
  bookmark?: string;
21
23
  };
24
+ export declare type DatabaseOpts = {
25
+ skip_setup?: boolean;
26
+ };
27
+ export declare type DatabasePutOpts = {
28
+ force?: boolean;
29
+ };
30
+ export declare type DatabaseCreateIndexOpts = {
31
+ index: {
32
+ fields: string[];
33
+ name?: string | undefined;
34
+ ddoc?: string | undefined;
35
+ type?: string | undefined;
36
+ };
37
+ };
38
+ export declare type DatabaseDeleteIndexOpts = {
39
+ name: string;
40
+ ddoc: string;
41
+ type?: string | undefined;
42
+ };
43
+ export declare type DatabaseQueryOpts = {
44
+ include_docs?: boolean;
45
+ startkey?: string;
46
+ endkey?: string;
47
+ limit?: number;
48
+ skip?: number;
49
+ descending?: boolean;
50
+ key?: string;
51
+ keys?: string[];
52
+ group?: boolean;
53
+ };
54
+ export declare const isDocument: (doc: any) => doc is Document;
55
+ export interface Database {
56
+ name: string;
57
+ exists(): Promise<boolean>;
58
+ checkSetup(): Promise<Nano.DocumentScope<any>>;
59
+ get<T>(id?: string): Promise<T | any>;
60
+ remove(id: string | Document, rev?: string): Promise<Nano.DocumentDestroyResponse>;
61
+ put(document: AnyDocument, opts?: DatabasePutOpts): Promise<Nano.DocumentInsertResponse>;
62
+ bulkDocs(documents: AnyDocument[]): Promise<Nano.DocumentBulkResponse[]>;
63
+ allDocs<T>(params: DatabaseQueryOpts): Promise<AllDocsResponse<T>>;
64
+ query<T>(viewName: string, params: DatabaseQueryOpts): Promise<AllDocsResponse<T>>;
65
+ destroy(): Promise<Nano.OkResponse | void>;
66
+ compact(): Promise<Nano.OkResponse | void>;
67
+ dump(...args: any[]): Promise<any>;
68
+ load(...args: any[]): Promise<any>;
69
+ createIndex(...args: any[]): Promise<any>;
70
+ deleteIndex(...args: any[]): Promise<any>;
71
+ getIndexes(...args: any[]): Promise<any>;
72
+ }
package/dist/sdk/db.js CHANGED
@@ -1,9 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SortOption = void 0;
3
+ exports.isDocument = exports.SortOption = void 0;
4
4
  var SortOption;
5
5
  (function (SortOption) {
6
6
  SortOption["ASCENDING"] = "asc";
7
7
  SortOption["DESCENDING"] = "desc";
8
8
  })(SortOption = exports.SortOption || (exports.SortOption = {}));
9
+ const isDocument = (doc) => {
10
+ return typeof doc === "object" && doc._id && doc._rev;
11
+ };
12
+ exports.isDocument = isDocument;
9
13
  //# sourceMappingURL=db.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/sdk/db.ts"],"names":[],"mappings":";;;AASA,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,+BAAiB,CAAA;IACjB,iCAAmB,CAAA;AACrB,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/sdk/db.ts"],"names":[],"mappings":";;;AAWA,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,+BAAiB,CAAA;IACjB,iCAAmB,CAAA;AACrB,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB;AAgDM,MAAM,UAAU,GAAG,CAAC,GAAQ,EAAmB,EAAE;IACtD,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAA;AACvD,CAAC,CAAA;AAFY,QAAA,UAAU,cAEtB"}