@saltcorn/data 0.7.4-beta.3 → 0.8.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/base-plugin/actions.d.ts.map +1 -1
- package/dist/base-plugin/actions.js +3 -0
- package/dist/base-plugin/actions.js.map +1 -1
- package/dist/base-plugin/fieldviews.d.ts.map +1 -1
- package/dist/base-plugin/fieldviews.js +23 -4
- package/dist/base-plugin/fieldviews.js.map +1 -1
- package/dist/base-plugin/fileviews.d.ts +29 -7
- package/dist/base-plugin/fileviews.d.ts.map +1 -1
- package/dist/base-plugin/fileviews.js +54 -20
- package/dist/base-plugin/fileviews.js.map +1 -1
- package/dist/base-plugin/index.d.ts +20 -9
- package/dist/base-plugin/index.d.ts.map +1 -1
- package/dist/base-plugin/types.d.ts +142 -130
- package/dist/base-plugin/types.d.ts.map +1 -1
- package/dist/base-plugin/types.js +33 -8
- package/dist/base-plugin/types.js.map +1 -1
- package/dist/base-plugin/viewtemplates/edit.d.ts +7 -3
- package/dist/base-plugin/viewtemplates/edit.d.ts.map +1 -1
- package/dist/base-plugin/viewtemplates/edit.js +107 -21
- package/dist/base-plugin/viewtemplates/edit.js.map +1 -1
- package/dist/base-plugin/viewtemplates/feed.d.ts.map +1 -1
- package/dist/base-plugin/viewtemplates/feed.js +71 -57
- package/dist/base-plugin/viewtemplates/feed.js.map +1 -1
- package/dist/base-plugin/viewtemplates/filter.d.ts.map +1 -1
- package/dist/base-plugin/viewtemplates/filter.js +13 -7
- package/dist/base-plugin/viewtemplates/filter.js.map +1 -1
- package/dist/base-plugin/viewtemplates/list.d.ts +3 -3
- package/dist/base-plugin/viewtemplates/list.d.ts.map +1 -1
- package/dist/base-plugin/viewtemplates/list.js +134 -120
- package/dist/base-plugin/viewtemplates/list.js.map +1 -1
- package/dist/base-plugin/viewtemplates/listshowlist.d.ts +0 -2
- package/dist/base-plugin/viewtemplates/listshowlist.d.ts.map +1 -1
- package/dist/base-plugin/viewtemplates/listshowlist.js +4 -23
- package/dist/base-plugin/viewtemplates/listshowlist.js.map +1 -1
- package/dist/base-plugin/viewtemplates/show.d.ts +2 -2
- package/dist/base-plugin/viewtemplates/show.d.ts.map +1 -1
- package/dist/base-plugin/viewtemplates/show.js +30 -11
- package/dist/base-plugin/viewtemplates/show.js.map +1 -1
- package/dist/base-plugin/viewtemplates/viewable_fields.d.ts +1 -1
- package/dist/base-plugin/viewtemplates/viewable_fields.d.ts.map +1 -1
- package/dist/base-plugin/viewtemplates/viewable_fields.js +34 -11
- package/dist/base-plugin/viewtemplates/viewable_fields.js.map +1 -1
- package/dist/contracts.d.ts.map +1 -1
- package/dist/contracts.js +0 -1
- package/dist/contracts.js.map +1 -1
- package/dist/db/state.d.ts +1 -0
- package/dist/db/state.d.ts.map +1 -1
- package/dist/db/state.js +3 -1
- package/dist/db/state.js.map +1 -1
- package/dist/diagram/cy_generate_utils.d.ts +11 -4
- package/dist/diagram/cy_generate_utils.d.ts.map +1 -1
- package/dist/diagram/cy_generate_utils.js +42 -6
- package/dist/diagram/cy_generate_utils.js.map +1 -1
- package/dist/diagram/cy_raster.d.ts +4 -2
- package/dist/diagram/cy_raster.d.ts.map +1 -1
- package/dist/diagram/cy_raster.js +146 -32
- package/dist/diagram/cy_raster.js.map +1 -1
- package/dist/diagram/node.d.ts +3 -2
- package/dist/diagram/node.d.ts.map +1 -1
- package/dist/diagram/node.js +2 -1
- package/dist/diagram/node.js.map +1 -1
- package/dist/diagram/node_extract_utils.d.ts +19 -3
- package/dist/diagram/node_extract_utils.d.ts.map +1 -1
- package/dist/diagram/node_extract_utils.js +165 -35
- package/dist/diagram/node_extract_utils.js.map +1 -1
- package/dist/diagram/nodes/dummy_node.d.ts +6 -0
- package/dist/diagram/nodes/dummy_node.d.ts.map +1 -0
- package/dist/diagram/nodes/dummy_node.js +17 -0
- package/dist/diagram/nodes/dummy_node.js.map +1 -0
- package/dist/diagram/nodes/node.d.ts +33 -0
- package/dist/diagram/nodes/node.d.ts.map +1 -0
- package/dist/diagram/nodes/node.js +42 -0
- package/dist/diagram/nodes/node.js.map +1 -0
- package/dist/diagram/nodes/page_node.d.ts +9 -0
- package/dist/diagram/nodes/page_node.d.ts.map +1 -0
- package/dist/diagram/nodes/page_node.js +20 -0
- package/dist/diagram/nodes/page_node.js.map +1 -0
- package/dist/diagram/nodes/table_node.d.ts +9 -0
- package/dist/diagram/nodes/table_node.d.ts.map +1 -0
- package/dist/diagram/nodes/table_node.js +24 -0
- package/dist/diagram/nodes/table_node.js.map +1 -0
- package/dist/diagram/nodes/trigger_node.d.ts +9 -0
- package/dist/diagram/nodes/trigger_node.d.ts.map +1 -0
- package/dist/diagram/nodes/trigger_node.js +19 -0
- package/dist/diagram/nodes/trigger_node.js.map +1 -0
- package/dist/diagram/nodes/view_node.d.ts +9 -0
- package/dist/diagram/nodes/view_node.d.ts.map +1 -0
- package/dist/diagram/nodes/view_node.js +23 -0
- package/dist/diagram/nodes/view_node.js.map +1 -0
- package/dist/migrate.js +1 -1
- package/dist/migrate.js.map +1 -1
- package/dist/migrations/202210051058.d.ts +2 -0
- package/dist/migrations/202210051058.d.ts.map +1 -0
- package/dist/migrations/202210051058.js +121 -0
- package/dist/migrations/202210051058.js.map +1 -0
- package/dist/migrations/202210101540.d.ts +2 -0
- package/dist/migrations/202210101540.d.ts.map +1 -0
- package/dist/migrations/202210101540.js +47 -0
- package/dist/migrations/202210101540.js.map +1 -0
- package/dist/migrations/202211040031.d.ts +2 -0
- package/dist/migrations/202211040031.d.ts.map +1 -0
- package/dist/migrations/202211040031.js +7 -0
- package/dist/migrations/202211040031.js.map +1 -0
- package/dist/mobile-mocks/npm/fs-xattr.d.ts +1 -0
- package/dist/mobile-mocks/npm/fs-xattr.d.ts.map +1 -0
- package/dist/mobile-mocks/npm/fs-xattr.js +2 -0
- package/dist/mobile-mocks/npm/fs-xattr.js.map +1 -0
- package/dist/models/config.d.ts.map +1 -1
- package/dist/models/config.js +14 -0
- package/dist/models/config.js.map +1 -1
- package/dist/models/discovery.d.ts.map +1 -1
- package/dist/models/discovery.js +6 -1
- package/dist/models/discovery.js.map +1 -1
- package/dist/models/disk_file.d.ts +138 -0
- package/dist/models/disk_file.d.ts.map +1 -0
- package/dist/models/disk_file.js +255 -0
- package/dist/models/disk_file.js.map +1 -0
- package/dist/models/email.d.ts +3 -1
- package/dist/models/email.d.ts.map +1 -1
- package/dist/models/email.js +14 -4
- package/dist/models/email.js.map +1 -1
- package/dist/models/expression.d.ts +1 -1
- package/dist/models/expression.d.ts.map +1 -1
- package/dist/models/expression.js +33 -7
- package/dist/models/expression.js.map +1 -1
- package/dist/models/field.d.ts +1 -0
- package/dist/models/field.d.ts.map +1 -1
- package/dist/models/field.js +56 -15
- package/dist/models/field.js.map +1 -1
- package/dist/models/file.d.ts +19 -14
- package/dist/models/file.d.ts.map +1 -1
- package/dist/models/file.js +264 -52
- package/dist/models/file.js.map +1 -1
- package/dist/models/form.d.ts +6 -3
- package/dist/models/form.d.ts.map +1 -1
- package/dist/models/form.js +7 -3
- package/dist/models/form.js.map +1 -1
- package/dist/models/index.d.ts +4 -2
- package/dist/models/index.d.ts.map +1 -1
- package/dist/models/page.d.ts +2 -0
- package/dist/models/page.d.ts.map +1 -1
- package/dist/models/page.js +27 -0
- package/dist/models/page.js.map +1 -1
- package/dist/models/scheduler.d.ts.map +1 -1
- package/dist/models/scheduler.js +9 -4
- package/dist/models/scheduler.js.map +1 -1
- package/dist/models/table.d.ts +8 -5
- package/dist/models/table.d.ts.map +1 -1
- package/dist/models/table.js +68 -28
- package/dist/models/table.js.map +1 -1
- package/dist/models/tag.d.ts +4 -2
- package/dist/models/tag.d.ts.map +1 -1
- package/dist/models/tag.js +11 -4
- package/dist/models/tag.js.map +1 -1
- package/dist/models/tag_entry.d.ts +2 -2
- package/dist/models/tag_entry.d.ts.map +1 -1
- package/dist/models/tag_entry.js +2 -2
- package/dist/models/tag_entry.js.map +1 -1
- package/dist/models/trigger.d.ts +12 -3
- package/dist/models/trigger.d.ts.map +1 -1
- package/dist/models/trigger.js +57 -10
- package/dist/models/trigger.js.map +1 -1
- package/dist/models/user.d.ts.map +1 -1
- package/dist/models/user.js +13 -1
- package/dist/models/user.js.map +1 -1
- package/dist/models/view.d.ts +2 -7
- package/dist/models/view.d.ts.map +1 -1
- package/dist/models/view.js +17 -51
- package/dist/models/view.js.map +1 -1
- package/dist/models/workflow.d.ts +2 -0
- package/dist/models/workflow.d.ts.map +1 -1
- package/dist/models/workflow.js +4 -0
- package/dist/models/workflow.js.map +1 -1
- package/dist/plugin-helper.d.ts +5 -3
- package/dist/plugin-helper.d.ts.map +1 -1
- package/dist/plugin-helper.js +144 -32
- package/dist/plugin-helper.js.map +1 -1
- package/dist/plugin-testing.js +1 -1
- package/dist/plugin-testing.js.map +1 -1
- package/dist/tests/calc.test.js +13 -0
- package/dist/tests/calc.test.js.map +1 -1
- package/dist/tests/discover.test.js +3 -0
- package/dist/tests/discover.test.js.map +1 -1
- package/dist/tests/email.test.js +156 -13
- package/dist/tests/email.test.js.map +1 -1
- package/dist/tests/exact_views.test.js +26 -34
- package/dist/tests/exact_views.test.js.map +1 -1
- package/dist/tests/field.test.js +67 -1
- package/dist/tests/field.test.js.map +1 -1
- package/dist/tests/models.test.js +10 -7
- package/dist/tests/models.test.js.map +1 -1
- package/dist/tests/table.test.js +88 -2
- package/dist/tests/table.test.js.map +1 -1
- package/dist/tests/user.test.js +56 -0
- package/dist/tests/user.test.js.map +1 -1
- package/dist/tests/view.test.js +1 -11
- package/dist/tests/view.test.js.map +1 -1
- package/dist/utils.d.ts +3 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +27 -0
- package/dist/utils.js.map +1 -1
- package/package.json +8 -7
- package/webpack.config.js +1 -0
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* File Database Access Layer
|
|
3
|
+
* @category saltcorn-data
|
|
4
|
+
* @module models/file
|
|
5
|
+
* @subcategory models
|
|
6
|
+
*/
|
|
7
|
+
import type { Where, SelectOptions, Row } from "@saltcorn/db-common/internal";
|
|
8
|
+
/**
|
|
9
|
+
* File Descriptor class
|
|
10
|
+
*
|
|
11
|
+
* Architecture tips:
|
|
12
|
+
* 1. Physically Saltcorn stores files on local filesystem of the server, where Saltcorn runs.
|
|
13
|
+
* 2. The path to file store is defined in db.connectObj.file_store.
|
|
14
|
+
* 3. List of files stored in _sc_files table in Saltcorn database.
|
|
15
|
+
* 4. Each tenant has own file list and file storage.
|
|
16
|
+
* 5. This class provides file descriptor and basic functions to manipulate with files.
|
|
17
|
+
* @category saltcorn-data
|
|
18
|
+
*/
|
|
19
|
+
declare class File {
|
|
20
|
+
filename: string;
|
|
21
|
+
folder?: string;
|
|
22
|
+
location: string;
|
|
23
|
+
mime_super: string;
|
|
24
|
+
mime_sub: string;
|
|
25
|
+
uploaded_at: Date;
|
|
26
|
+
size_kb: number;
|
|
27
|
+
id?: number;
|
|
28
|
+
user_id?: number;
|
|
29
|
+
min_role_read: number;
|
|
30
|
+
s3_store: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Constructor
|
|
33
|
+
* @param o {object}
|
|
34
|
+
*/
|
|
35
|
+
constructor(o: FileCfg);
|
|
36
|
+
/**
|
|
37
|
+
* Select list of file descriptors
|
|
38
|
+
* @param where
|
|
39
|
+
* @param selectopts
|
|
40
|
+
* @returns {Promise<*>}
|
|
41
|
+
*/
|
|
42
|
+
static find(where?: Where, selectopts?: SelectOptions): Promise<Array<File>>;
|
|
43
|
+
/**
|
|
44
|
+
* Select one file descriptor
|
|
45
|
+
*
|
|
46
|
+
* @param where
|
|
47
|
+
* @returns {Promise<File|null>}
|
|
48
|
+
*/
|
|
49
|
+
static findOne(where: Where): Promise<File | null>;
|
|
50
|
+
/**
|
|
51
|
+
* Update File descriptor
|
|
52
|
+
*
|
|
53
|
+
* @param id - primary key
|
|
54
|
+
* @param row - row data
|
|
55
|
+
* @returns {Promise<void>} no returns
|
|
56
|
+
*/
|
|
57
|
+
static update(id: number, row: Row): Promise<void>;
|
|
58
|
+
/**
|
|
59
|
+
* Get absolute path to new file in db.connectObj.file_store.
|
|
60
|
+
*
|
|
61
|
+
* @param suggest - path to file inside file store. If undefined that autogenerated uudv4 is used.
|
|
62
|
+
* @returns {string} - path to file
|
|
63
|
+
*/
|
|
64
|
+
static get_new_path(suggest?: string): string;
|
|
65
|
+
/**
|
|
66
|
+
* Ensure that file_store path is physically exists in file system.
|
|
67
|
+
* In reality just recursively creates full absolute path to db.connectObj.file_store.
|
|
68
|
+
*
|
|
69
|
+
* @returns {Promise<void>}
|
|
70
|
+
*/
|
|
71
|
+
static ensure_file_store(): Promise<void>;
|
|
72
|
+
/**
|
|
73
|
+
* Create new file
|
|
74
|
+
* @param file
|
|
75
|
+
* @param user_id
|
|
76
|
+
* @param min_role_read
|
|
77
|
+
* @returns
|
|
78
|
+
*/
|
|
79
|
+
static from_req_files(file: {
|
|
80
|
+
mimetype: string;
|
|
81
|
+
name: string;
|
|
82
|
+
mv: Function;
|
|
83
|
+
size: number;
|
|
84
|
+
s3object?: boolean;
|
|
85
|
+
}, user_id: number, min_role_read?: number): Promise<File>;
|
|
86
|
+
/**
|
|
87
|
+
* create a '_sc_files' entry from an existing file.
|
|
88
|
+
* The old file will be moved to a new location.
|
|
89
|
+
*
|
|
90
|
+
* @param directory directory of existing file
|
|
91
|
+
* @param name name of existing file
|
|
92
|
+
* @param userId id of creating user
|
|
93
|
+
* @returns the new File object
|
|
94
|
+
*/
|
|
95
|
+
static from_existing_file(directory: string, name: string, userId: number): Promise<File | null>;
|
|
96
|
+
/**
|
|
97
|
+
* Delete file
|
|
98
|
+
* @returns {Promise<{error}>}
|
|
99
|
+
*/
|
|
100
|
+
delete(unlinker?: (arg0: File) => Promise<void>): Promise<{
|
|
101
|
+
error: string;
|
|
102
|
+
} | void>;
|
|
103
|
+
/**
|
|
104
|
+
* MIME type of the file
|
|
105
|
+
* @type {string}
|
|
106
|
+
*/
|
|
107
|
+
get mimetype(): string;
|
|
108
|
+
/**
|
|
109
|
+
* Create file
|
|
110
|
+
* @param f
|
|
111
|
+
* @returns {Promise<File>}
|
|
112
|
+
*/
|
|
113
|
+
static create(f: FileCfg): Promise<File>;
|
|
114
|
+
/**
|
|
115
|
+
* This is a mobile-app function, it uploads a file to the saltcorn server.
|
|
116
|
+
* @param f file to upload
|
|
117
|
+
* @returns JSON response from POST 'file/upload'
|
|
118
|
+
*/
|
|
119
|
+
static upload(f: any): Promise<any>;
|
|
120
|
+
}
|
|
121
|
+
declare namespace File {
|
|
122
|
+
type FileCfg = {
|
|
123
|
+
filename: string;
|
|
124
|
+
location: string;
|
|
125
|
+
folder?: string;
|
|
126
|
+
uploaded_at: string | number | Date;
|
|
127
|
+
size_kb: number;
|
|
128
|
+
id?: number;
|
|
129
|
+
user_id?: number;
|
|
130
|
+
mime_super: string;
|
|
131
|
+
mime_sub: string;
|
|
132
|
+
min_role_read: number;
|
|
133
|
+
s3_store?: boolean;
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
declare type FileCfg = File.FileCfg;
|
|
137
|
+
export = File;
|
|
138
|
+
//# sourceMappingURL=disk_file.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"disk_file.d.ts","sourceRoot":"","sources":["../../models/disk_file.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAQ9E;;;;;;;;;;GAUG;AACH,cAAM,IAAI;IACR,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,IAAI,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAElB;;;OAGG;gBACS,CAAC,EAAE,OAAO;IAkBtB;;;;;OAKG;WACU,IAAI,CACf,KAAK,CAAC,EAAE,KAAK,EACb,UAAU,GAAE,aAAkB,GAC7B,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAqBvB;;;;;OAKG;WACU,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAUxD;;;;;;OAMG;WACU,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxD;;;;;OAKG;IACH,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAY7C;;;;;OAKG;WAEU,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAS/C;;;;;;OAMG;WACU,cAAc,CACzB,IAAI,EAAE;QACJ,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,QAAQ,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,EACD,OAAO,EAAE,MAAM,EACf,aAAa,GAAE,MAAU,GACxB,OAAO,CAAC,IAAI,CAAC;IA2BhB;;;;;;;;OAQG;WACU,kBAAkB,CAC7B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM;IAehB;;;OAGG;IAEG,MAAM,CACV,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,GACvC,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAepC;;;OAGG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;;;OAIG;WACU,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAW9C;;;;OAIG;WACU,MAAM,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;CAiB1C;AAED,kBAAU,IAAI,CAAC;IACb,KAAY,OAAO,GAAG;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;QACpC,OAAO,EAAE,MAAM,CAAC;QAChB,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;CACH;AACD,aAAK,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;AAE5B,SAAS,IAAI,CAAC"}
|
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* File Database Access Layer
|
|
4
|
+
* @category saltcorn-data
|
|
5
|
+
* @module models/file
|
|
6
|
+
* @subcategory models
|
|
7
|
+
*/
|
|
8
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
+
};
|
|
11
|
+
const db_1 = __importDefault(require("../db"));
|
|
12
|
+
const uuid_1 = require("uuid");
|
|
13
|
+
const path_1 = require("path");
|
|
14
|
+
const { asyncMap } = require("../utils");
|
|
15
|
+
const promises_1 = require("fs/promises");
|
|
16
|
+
const axios_1 = __importDefault(require("axios"));
|
|
17
|
+
const form_data_1 = __importDefault(require("form-data"));
|
|
18
|
+
const fs_1 = require("fs");
|
|
19
|
+
const mime_types_1 = require("mime-types");
|
|
20
|
+
/**
|
|
21
|
+
* File Descriptor class
|
|
22
|
+
*
|
|
23
|
+
* Architecture tips:
|
|
24
|
+
* 1. Physically Saltcorn stores files on local filesystem of the server, where Saltcorn runs.
|
|
25
|
+
* 2. The path to file store is defined in db.connectObj.file_store.
|
|
26
|
+
* 3. List of files stored in _sc_files table in Saltcorn database.
|
|
27
|
+
* 4. Each tenant has own file list and file storage.
|
|
28
|
+
* 5. This class provides file descriptor and basic functions to manipulate with files.
|
|
29
|
+
* @category saltcorn-data
|
|
30
|
+
*/
|
|
31
|
+
class File {
|
|
32
|
+
/**
|
|
33
|
+
* Constructor
|
|
34
|
+
* @param o {object}
|
|
35
|
+
*/
|
|
36
|
+
constructor(o) {
|
|
37
|
+
this.filename = o.filename;
|
|
38
|
+
this.location = o.location;
|
|
39
|
+
this.folder = o.folder || "/";
|
|
40
|
+
this.uploaded_at =
|
|
41
|
+
typeof o.uploaded_at === "string" || typeof o.uploaded_at === "number"
|
|
42
|
+
? new Date(o.uploaded_at)
|
|
43
|
+
: o.uploaded_at;
|
|
44
|
+
this.size_kb = o.size_kb;
|
|
45
|
+
this.id = o.id;
|
|
46
|
+
this.user_id = o.user_id;
|
|
47
|
+
this.mime_super = o.mime_super;
|
|
48
|
+
this.mime_sub = o.mime_sub;
|
|
49
|
+
this.min_role_read = o.min_role_read;
|
|
50
|
+
this.s3_store = !!o.s3_store;
|
|
51
|
+
// TBD add checksum this.checksum = o.checksum;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Select list of file descriptors
|
|
55
|
+
* @param where
|
|
56
|
+
* @param selectopts
|
|
57
|
+
* @returns {Promise<*>}
|
|
58
|
+
*/
|
|
59
|
+
static async find(where, selectopts = {}) {
|
|
60
|
+
const { getState } = require("../db/state");
|
|
61
|
+
const useS3 = getState().getConfig("storage_s3_enabled");
|
|
62
|
+
if (useS3 || where?.inDB) {
|
|
63
|
+
if (selectopts.cached) {
|
|
64
|
+
const { getState } = require("../db/state");
|
|
65
|
+
// TODO ch migrate State and replace any
|
|
66
|
+
const files = Object.values(getState().files).sort((a, b) => a.filename > b.filename ? 1 : -1);
|
|
67
|
+
return files.map((t) => new File(t));
|
|
68
|
+
}
|
|
69
|
+
const db_flds = await db_1.default.select("_sc_files", where, selectopts);
|
|
70
|
+
return db_flds.map((dbf) => new File(dbf));
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
const searchFolder = where?.folder || "/";
|
|
74
|
+
return [];
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Select one file descriptor
|
|
79
|
+
*
|
|
80
|
+
* @param where
|
|
81
|
+
* @returns {Promise<File|null>}
|
|
82
|
+
*/
|
|
83
|
+
static async findOne(where) {
|
|
84
|
+
if (where.id) {
|
|
85
|
+
const { getState } = require("../db/state");
|
|
86
|
+
const cf = getState().files[+where.id];
|
|
87
|
+
if (cf)
|
|
88
|
+
return new File(cf);
|
|
89
|
+
}
|
|
90
|
+
const f = await db_1.default.selectMaybeOne("_sc_files", where);
|
|
91
|
+
return f ? new File(f) : null;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Update File descriptor
|
|
95
|
+
*
|
|
96
|
+
* @param id - primary key
|
|
97
|
+
* @param row - row data
|
|
98
|
+
* @returns {Promise<void>} no returns
|
|
99
|
+
*/
|
|
100
|
+
static async update(id, row) {
|
|
101
|
+
await db_1.default.update("_sc_files", row, id);
|
|
102
|
+
await require("../db/state").getState().refresh_files();
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Get absolute path to new file in db.connectObj.file_store.
|
|
106
|
+
*
|
|
107
|
+
* @param suggest - path to file inside file store. If undefined that autogenerated uudv4 is used.
|
|
108
|
+
* @returns {string} - path to file
|
|
109
|
+
*/
|
|
110
|
+
static get_new_path(suggest) {
|
|
111
|
+
const { getState } = require("../db/state");
|
|
112
|
+
// Check if it uses S3, then use a default "saltcorn" folder
|
|
113
|
+
const useS3 = getState().getConfig("storage_s3_enabled");
|
|
114
|
+
const file_store = !useS3 ? db_1.default.connectObj.file_store : "saltcorn/";
|
|
115
|
+
const newFnm = suggest || (0, uuid_1.v4)();
|
|
116
|
+
const newPath = (0, path_1.join)(file_store, newFnm);
|
|
117
|
+
return newPath;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Ensure that file_store path is physically exists in file system.
|
|
121
|
+
* In reality just recursively creates full absolute path to db.connectObj.file_store.
|
|
122
|
+
*
|
|
123
|
+
* @returns {Promise<void>}
|
|
124
|
+
*/
|
|
125
|
+
// TBD fs errors handling
|
|
126
|
+
static async ensure_file_store() {
|
|
127
|
+
const { getState } = require("../db/state");
|
|
128
|
+
if (!getState().getConfig("storage_s3_enabled")) {
|
|
129
|
+
const file_store = db_1.default.connectObj.file_store;
|
|
130
|
+
await (0, promises_1.mkdir)(file_store, { recursive: true });
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Create new file
|
|
135
|
+
* @param file
|
|
136
|
+
* @param user_id
|
|
137
|
+
* @param min_role_read
|
|
138
|
+
* @returns
|
|
139
|
+
*/
|
|
140
|
+
static async from_req_files(file, user_id, min_role_read = 1) {
|
|
141
|
+
if (Array.isArray(file)) {
|
|
142
|
+
return await asyncMap(file, (f) => File.from_req_files(f, user_id, min_role_read));
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
// get path to file
|
|
146
|
+
const newPath = File.get_new_path();
|
|
147
|
+
// set mime type
|
|
148
|
+
const [mime_super, mime_sub] = file.mimetype.split("/");
|
|
149
|
+
// move file in file system to newPath
|
|
150
|
+
await file.mv(newPath);
|
|
151
|
+
// create file
|
|
152
|
+
return await File.create({
|
|
153
|
+
filename: file.name,
|
|
154
|
+
location: newPath,
|
|
155
|
+
uploaded_at: new Date(),
|
|
156
|
+
size_kb: Math.round(file.size / 1024),
|
|
157
|
+
user_id,
|
|
158
|
+
mime_super,
|
|
159
|
+
mime_sub,
|
|
160
|
+
min_role_read,
|
|
161
|
+
s3_store: !!file.s3object,
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* create a '_sc_files' entry from an existing file.
|
|
167
|
+
* The old file will be moved to a new location.
|
|
168
|
+
*
|
|
169
|
+
* @param directory directory of existing file
|
|
170
|
+
* @param name name of existing file
|
|
171
|
+
* @param userId id of creating user
|
|
172
|
+
* @returns the new File object
|
|
173
|
+
*/
|
|
174
|
+
static async from_existing_file(directory, name, userId) {
|
|
175
|
+
const fullPath = (0, path_1.join)(directory, name);
|
|
176
|
+
if (!(0, fs_1.existsSync)(fullPath))
|
|
177
|
+
return null;
|
|
178
|
+
const file = {
|
|
179
|
+
mimetype: (0, mime_types_1.lookup)(fullPath),
|
|
180
|
+
name: name,
|
|
181
|
+
mv: (newPath) => {
|
|
182
|
+
(0, fs_1.renameSync)(fullPath, newPath);
|
|
183
|
+
},
|
|
184
|
+
size: (0, fs_1.statSync)(fullPath).size,
|
|
185
|
+
};
|
|
186
|
+
return await File.from_req_files(file, userId);
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Delete file
|
|
190
|
+
* @returns {Promise<{error}>}
|
|
191
|
+
*/
|
|
192
|
+
async delete(unlinker) {
|
|
193
|
+
try {
|
|
194
|
+
// delete file from database
|
|
195
|
+
await db_1.default.deleteWhere("_sc_files", { id: this.id });
|
|
196
|
+
// delete name and possible file from file system
|
|
197
|
+
if (unlinker)
|
|
198
|
+
await unlinker(this);
|
|
199
|
+
else
|
|
200
|
+
await (0, promises_1.unlink)(this.location);
|
|
201
|
+
if (db_1.default.reset_sequence)
|
|
202
|
+
await db_1.default.reset_sequence("_sc_files");
|
|
203
|
+
// reload file list cache
|
|
204
|
+
await require("../db/state").getState().refresh_files();
|
|
205
|
+
}
|
|
206
|
+
catch (e) {
|
|
207
|
+
return { error: e.message };
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* MIME type of the file
|
|
212
|
+
* @type {string}
|
|
213
|
+
*/
|
|
214
|
+
get mimetype() {
|
|
215
|
+
return `${this.mime_super}/${this.mime_sub}`;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Create file
|
|
219
|
+
* @param f
|
|
220
|
+
* @returns {Promise<File>}
|
|
221
|
+
*/
|
|
222
|
+
static async create(f) {
|
|
223
|
+
const file = new File(f);
|
|
224
|
+
const { id, ...rest } = file;
|
|
225
|
+
// insert file descriptor row to database
|
|
226
|
+
file.id = await db_1.default.insert("_sc_files", rest);
|
|
227
|
+
// refresh file list cache
|
|
228
|
+
await require("../db/state").getState().refresh_files();
|
|
229
|
+
return file;
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* This is a mobile-app function, it uploads a file to the saltcorn server.
|
|
233
|
+
* @param f file to upload
|
|
234
|
+
* @returns JSON response from POST 'file/upload'
|
|
235
|
+
*/
|
|
236
|
+
static async upload(f) {
|
|
237
|
+
const { getState } = require("../db/state");
|
|
238
|
+
const base_url = getState().getConfig("base_url") || "http://10.0.2.2:3000";
|
|
239
|
+
const url = `${base_url}/files/upload`;
|
|
240
|
+
const token = window.localStorage.getItem("auth_jwt");
|
|
241
|
+
const formData = new form_data_1.default();
|
|
242
|
+
formData.append("file", f);
|
|
243
|
+
const response = await axios_1.default.post(url, formData, {
|
|
244
|
+
headers: {
|
|
245
|
+
"Content-Type": "multipart/form-data",
|
|
246
|
+
Authorization: `jwt ${token}`,
|
|
247
|
+
"X-Requested-With": "XMLHttpRequest",
|
|
248
|
+
"X-Saltcorn-Client": "mobile-app",
|
|
249
|
+
},
|
|
250
|
+
});
|
|
251
|
+
return response.data.success;
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
module.exports = File;
|
|
255
|
+
//# sourceMappingURL=disk_file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"disk_file.js","sourceRoot":"","sources":["../../models/disk_file.ts"],"names":[],"mappings":"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"}
|
package/dist/models/email.d.ts
CHANGED
|
@@ -7,7 +7,9 @@ import { Transporter } from "nodemailer";
|
|
|
7
7
|
import User from "./user";
|
|
8
8
|
declare const _default: {
|
|
9
9
|
getMailTransport: () => Transporter<any>;
|
|
10
|
-
send_verification_email: (user: User, req: any
|
|
10
|
+
send_verification_email: (user: User, req: any, opts?: {
|
|
11
|
+
new_verification_token?: string | undefined;
|
|
12
|
+
} | undefined) => Promise<any>;
|
|
11
13
|
emailMockReqRes: {
|
|
12
14
|
req: {
|
|
13
15
|
generate_email: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../models/email.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAmB,WAAW,EAAE,MAAM,YAAY,CAAC;AAQ1D,OAAO,IAAI,MAAM,QAAQ,CAAC
|
|
1
|
+
{"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../models/email.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAmB,WAAW,EAAE,MAAM,YAAY,CAAC;AAQ1D,OAAO,IAAI,MAAM,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4G1B,kBAME"}
|
package/dist/models/email.js
CHANGED
|
@@ -42,8 +42,18 @@ const getMailTransport = () => {
|
|
|
42
42
|
});
|
|
43
43
|
};
|
|
44
44
|
const viewToMjml = async (view, state) => {
|
|
45
|
-
const
|
|
46
|
-
|
|
45
|
+
const result = await view.run(state, emailMockReqRes);
|
|
46
|
+
const allStyles = result.styles.map((style) => mjml_tags_1.default.style(`
|
|
47
|
+
.${style.className} div {
|
|
48
|
+
${style.style}
|
|
49
|
+
}
|
|
50
|
+
`));
|
|
51
|
+
const bsCss = `
|
|
52
|
+
<link
|
|
53
|
+
href="https://stackpath.bootstrapcdn.com/bootswatch/4.5.0/flatly/bootstrap.min.css"
|
|
54
|
+
rel="stylesheet"
|
|
55
|
+
/>`;
|
|
56
|
+
return mjml_tags_1.default.mjml(mjml_tags_1.default.head(mjml_tags_1.default.raw(bsCss) + allStyles.join(" ")) + mjml_tags_1.default.body(result.markup));
|
|
47
57
|
};
|
|
48
58
|
const viewToEmailHtml = async (view, state) => {
|
|
49
59
|
const mjmlMarkup = await viewToMjml(view, state);
|
|
@@ -60,14 +70,14 @@ const viewToEmailHtml = async (view, state) => {
|
|
|
60
70
|
* @param {object} [req]
|
|
61
71
|
* @returns {Promise<object>}
|
|
62
72
|
*/
|
|
63
|
-
const send_verification_email = async (user, req) => {
|
|
73
|
+
const send_verification_email = async (user, req, opts) => {
|
|
64
74
|
const verification_view_name = getState().getConfig("verification_view");
|
|
65
75
|
if (verification_view_name) {
|
|
66
76
|
const verification_view = await view_1.default.findOne({
|
|
67
77
|
name: verification_view_name,
|
|
68
78
|
});
|
|
69
79
|
if (verification_view) {
|
|
70
|
-
const verification_token = (0, uuid_1.v4)();
|
|
80
|
+
const verification_token = opts?.new_verification_token || (0, uuid_1.v4)();
|
|
71
81
|
try {
|
|
72
82
|
await user.update({ verification_token });
|
|
73
83
|
user.verification_token = verification_token;
|
package/dist/models/email.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../models/email.ts"],"names":[],"mappings":";;;;AAAA;;;;GAIG;AACH,2CAA0D;AAC1D,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAC5C,2CAA2C;AAC3C,2EAA8C;AAC9C,uBAAuB;AACvB,kDAA0B;AAC1B,+BAAoC;AAGpC,2DAAmC;AACnC,gDAA6B;AAC7B,MAAM,EAAE,UAAU,EAAE,GAAG,eAAK,CAAC;AAE7B,MAAM,eAAe,GAAG;IACtB,GAAG,EAAE;QACH,GAAG,UAAU,CAAC,GAAG;QACjB,cAAc,EAAE,IAAI;QACpB,YAAY,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC;KACrD;IACD,GAAG,EAAE,UAAU,CAAC,GAAG;CACpB,CAAC;AAEF;;GAEG;AACH,MAAM,gBAAgB,GAAG,GAAgB,EAAE;IACzC,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,KAAK,GAAG,CAAC,CAAC;IACjE,OAAO,IAAA,4BAAe,EAAC;QACrB,IAAI,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,WAAW,CAAC;QACvC,IAAI;QACJ,MAAM;QACN,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,eAAe,CAAC;YAC3C,IAAI,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,eAAe,CAAC;SAC5C;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,KAAK,EAAE,IAAS,EAAE,KAAU,EAAE,EAAE;IACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;IACtD,OAAO,mBAAI,CAAC,IAAI,CAAC,mBAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../models/email.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,7 @@ declare function jsexprToSQL(expression: string, extraCtx?: any): String;
|
|
|
19
19
|
* @throws {Error}
|
|
20
20
|
* @returns {object}
|
|
21
21
|
*/
|
|
22
|
-
declare function jsexprToWhere(expression: string, extraCtx?: any): Where;
|
|
22
|
+
declare function jsexprToWhere(expression: string, extraCtx?: any, fields?: Field[]): Where;
|
|
23
23
|
declare function freeVariables(expression: string): Set<string>;
|
|
24
24
|
/**
|
|
25
25
|
* @param {string} expression
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression.d.ts","sourceRoot":"","sources":["../../models/expression.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D;;;GAGG;AACH,iBAAS,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAQrD;AAED,iBAAS,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAGrE;
|
|
1
|
+
{"version":3,"file":"expression.d.ts","sourceRoot":"","sources":["../../models/expression.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D;;;GAGG;AACH,iBAAS,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAQrD;AAED,iBAAS,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAGrE;AAWD;;;;GAIG;AACH,iBAAS,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,GAAE,GAAQ,GAAG,MAAM,CA+CnE;AAED;;;;GAIG;AACH,iBAAS,aAAa,CACpB,UAAU,EAAE,MAAM,EAClB,QAAQ,GAAE,GAAQ,EAClB,MAAM,GAAE,KAAK,EAAO,GACnB,KAAK,CA6GP;AAED,iBAAS,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CA2DtD;AAMD;;;;GAIG;AACH,iBAAS,mBAAmB,CAC1B,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC;;;EAuB1C;AAED;;;;GAIG;AACH,iBAAS,uBAAuB,CAC9B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,GACnB,QAAQ,CAUV;AAED;;;;GAIG;AACH,iBAAS,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,CAUtE;AAED;;;;;GAKG;AACH,iBAAS,6BAA6B,CACpC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,EACpB,YAAY,KAAK,GAChB,GAAG,CAYL;AAED;;;;GAIG;AACH,iBAAS,uBAAuB,CAC9B,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,EAChB,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,GACnB,KAAK,CAAC,GAAG,CAAC,CA4BZ;;;;;;;;;;;;;;;AA+DD,kBAaE"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
/**
|
|
3
6
|
* @category saltcorn-data
|
|
4
7
|
* @module models/expression
|
|
@@ -8,6 +11,7 @@ const vm_1 = require("vm");
|
|
|
8
11
|
const acorn_1 = require("acorn");
|
|
9
12
|
const estraverse_1 = require("estraverse");
|
|
10
13
|
const astring_1 = require("astring");
|
|
14
|
+
const db_1 = __importDefault(require("../db"));
|
|
11
15
|
/**
|
|
12
16
|
* @param {string} s
|
|
13
17
|
* @returns {boolean|void}
|
|
@@ -80,7 +84,7 @@ function jsexprToSQL(expression, extraCtx = {}) {
|
|
|
80
84
|
* @throws {Error}
|
|
81
85
|
* @returns {object}
|
|
82
86
|
*/
|
|
83
|
-
function jsexprToWhere(expression, extraCtx = {}) {
|
|
87
|
+
function jsexprToWhere(expression, extraCtx = {}, fields = []) {
|
|
84
88
|
if (!expression)
|
|
85
89
|
return {};
|
|
86
90
|
try {
|
|
@@ -94,9 +98,13 @@ function jsexprToWhere(expression, extraCtx = {}) {
|
|
|
94
98
|
const cleft = compile(node.left);
|
|
95
99
|
const cleftName = typeof cleft === "symbol" ? cleft.description : cleft;
|
|
96
100
|
const cright = compile(node.right);
|
|
97
|
-
const cmp = typeof
|
|
98
|
-
?
|
|
99
|
-
:
|
|
101
|
+
const cmp = typeof cright === "function"
|
|
102
|
+
? cright(cleft)
|
|
103
|
+
: typeof cleft === "function"
|
|
104
|
+
? cleft(cright)
|
|
105
|
+
: typeof cleft === "string" || cleft === null
|
|
106
|
+
? { eq: [cleft, cright] }
|
|
107
|
+
: { [cleftName]: cright };
|
|
100
108
|
const operators = {
|
|
101
109
|
"=="() {
|
|
102
110
|
return cmp;
|
|
@@ -125,6 +133,24 @@ function jsexprToWhere(expression, extraCtx = {}) {
|
|
|
125
133
|
};
|
|
126
134
|
return operators[node.operator](node);
|
|
127
135
|
},
|
|
136
|
+
MemberExpression() {
|
|
137
|
+
const cleft = compile(node.object);
|
|
138
|
+
const cleftName = typeof cleft === "symbol" ? cleft.description : cleft;
|
|
139
|
+
const cright = compile(node.property);
|
|
140
|
+
const crightName = typeof cright === "symbol" ? cright.description : cright;
|
|
141
|
+
const field = fields.find((f) => f.name === cleftName);
|
|
142
|
+
if (!field)
|
|
143
|
+
throw new Error(`Field not found: ${cleftName}`);
|
|
144
|
+
return (val) => ({
|
|
145
|
+
[cleftName]: {
|
|
146
|
+
inSelect: {
|
|
147
|
+
table: `${db_1.default.getTenantSchemaPrefix()}"${field.reftable_name}"`,
|
|
148
|
+
field: "id",
|
|
149
|
+
where: { [crightName]: val },
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
});
|
|
153
|
+
},
|
|
128
154
|
UnaryExpression() {
|
|
129
155
|
return {
|
|
130
156
|
"!"({ argument }) {
|
|
@@ -264,10 +290,10 @@ function get_expression_function(expression, fields) {
|
|
|
264
290
|
function eval_expression(expression, row, user) {
|
|
265
291
|
const field_names = Object.keys(row);
|
|
266
292
|
const args = field_names.includes("user")
|
|
267
|
-
? `{${field_names.join()}}`
|
|
268
|
-
: `{${field_names.join()}}, user`;
|
|
293
|
+
? `row, {${field_names.join()}}`
|
|
294
|
+
: `row, {${field_names.join()}}, user`;
|
|
269
295
|
const { getState } = require("../db/state");
|
|
270
|
-
return (0, vm_1.runInNewContext)(`(${args})=>(${expression})`, getState().function_context)(row, user);
|
|
296
|
+
return (0, vm_1.runInNewContext)(`(${args})=>(${expression})`, getState().function_context)(row, row, user);
|
|
271
297
|
}
|
|
272
298
|
/**
|
|
273
299
|
* @param {string} expression
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression.js","sourceRoot":"","sources":["../../models/expression.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"expression.js","sourceRoot":"","sources":["../../models/expression.ts"],"names":[],"mappings":";;;;AAAA;;;;GAIG;AACH,2BAA6C;AAC7C,iCAAgD;AAChD,2CAA+C;AAE/C,qCAAmC;AAKnC,+CAAuB;AACvB;;;GAGG;AACH,SAAS,mBAAmB,CAAC,CAAS;IACpC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,iBAAiB,CAAC;IAClD,IAAI;QACF,MAAM,CAAC,GAAG,IAAI,WAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,wCAAwC;QACxE,OAAO,IAAI,CAAC;KACb;IAAC,OAAO,CAAM,EAAE;QACf,OAAO,CAAC,CAAC,OAAO,CAAC;KAClB;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,CAAS,EAAE,MAAc,EAAE,MAAgB;IACpE,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;IACtC,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;AAC/D,CAAC;AAWD;;;;GAIG;AACH,SAAS,WAAW,CAAC,UAAkB,EAAE,WAAgB,EAAE;IACzD,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAC3B,IAAI;QACF,MAAM,GAAG,GAAG,IAAA,yBAAiB,EAAC,UAAU,EAAE,CAAC,EAAE;YAC3C,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QACH,mBAAmB;QACnB,MAAM,OAAO,GAAgC,CAAC,IAAkB,EAAO,EAAE,CACvE,CAAmB;YACjB,gBAAgB;gBACd,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;gBAElC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,KAAM,CAAC,CAAC;gBACpC,OAAO,IAAI,KAAK,IAAI,IAAI,CAAC,QAAQ,IAAI,MAAM,GAAG,CAAC;YACjD,CAAC;YACD,eAAe;gBACb,OAA0B;oBACxB,GAAG,CAAC,EAAE,QAAQ,EAA8B;wBAC1C,OAAO,QAAQ,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;oBACtC,CAAC;iBACD,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC;YACD,iBAAiB;gBACf,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;gBAElC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,KAAM,CAAC,CAAC;gBAEpC,MAAM,SAAS,GAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBACnD,OAAO,IAAI,KAAK,IACd,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QACnC,IAAI,MAAM,GAAG,CAAC;YAChB,CAAC;YACD,UAAU,CAAC,EAAE,IAAI,EAAoB;gBACnC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,CAAC,EAAE,KAAK,EAA2B;gBACxC,OAAO,GAAG,KAAK,EAAE,CAAC;YACpB,CAAC;SACD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAA,CAAC;QACtB,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;KACrB;IAAC,OAAO,CAAM,EAAE;QACf,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,eAAe,UAAU,2CAA2C,CACrE,CAAC;KACH;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CACpB,UAAkB,EAClB,WAAgB,EAAE,EAClB,SAAkB,EAAE;IAEpB,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAC3B,IAAI;QACF,MAAM,GAAG,GAAG,IAAA,yBAAiB,EAAC,UAAU,EAAE,CAAC,EAAE;YAC3C,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QACH,mBAAmB;QACnB,MAAM,OAAO,GAAgC,CAAC,IAAkB,EAAO,EAAE,CACvE,CAAmB;YACjB,gBAAgB;gBACd,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;gBAClC,MAAM,SAAS,GACb,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC;gBACxD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,KAAM,CAAC,CAAC;gBACpC,MAAM,GAAG,GACP,OAAO,MAAM,KAAK,UAAU;oBAC1B,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBACf,CAAC,CAAC,OAAO,KAAK,KAAK,UAAU;wBAC7B,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;wBACf,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;4BAC7C,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE;4BACzB,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;gBAC9B,MAAM,SAAS,GAAqB;oBAClC,IAAI;wBACF,OAAO,GAAG,CAAC;oBACb,CAAC;oBACD,KAAK;wBACH,OAAO,GAAG,CAAC;oBACb,CAAC;oBACD,IAAI;wBACF,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;oBACtB,CAAC;oBACD,KAAK;wBACH,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;oBACtB,CAAC;oBACD,GAAG;wBACD,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC;oBACzC,CAAC;oBACD,GAAG;wBACD,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC;oBACzC,CAAC;oBACD,IAAI;wBACF,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC;oBACtD,CAAC;oBACD,IAAI;wBACF,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC;oBACtD,CAAC;iBACF,CAAC;gBACF,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;YACxC,CAAC;YACD,gBAAgB;gBACd,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,MAAO,CAAC,CAAC;gBACpC,MAAM,SAAS,GACb,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC;gBACxD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,QAAS,CAAC,CAAC;gBACvC,MAAM,UAAU,GACd,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC3D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;gBAEvD,IAAI,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,SAAS,EAAE,CAAC,CAAC;gBAC7D,OAAO,CAAC,GAAQ,EAAE,EAAE,CAAC,CAAC;oBACpB,CAAC,SAAS,CAAC,EAAE;wBACX,QAAQ,EAAE;4BACR,KAAK,EAAE,GAAG,YAAE,CAAC,qBAAqB,EAAE,IAAI,KAAK,CAAC,aAAa,GAAG;4BAC9D,KAAK,EAAE,IAAI;4BACX,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE;yBAC7B;qBACF;iBACF,CAAC,CAAC;YACL,CAAC;YACD,eAAe;gBACb,OAA0B;oBACxB,GAAG,CAAC,EAAE,QAAQ,EAA8B;wBAC1C,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACpC,CAAC;iBACD,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC;YACD,iBAAiB;gBACf,MAAM,SAAS,GAAqB;oBAClC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAA+C;wBAC/D,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;wBACxB,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;wBACzB,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBACpB,OAAO,CAAC,CAAC;oBACX,CAAC;oBACD,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAA6B;wBAC7C,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;oBACjD,CAAC;iBACF,CAAC;gBACF,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;YACxC,CAAC;YACD,UAAU,CAAC,EAAE,IAAI,EAAoB;gBACnC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;oBACnB,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;iBAC5C;gBACD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;YACD,OAAO,CAAC,EAAE,KAAK,EAA2B;gBACxC,OAAO,KAAK,CAAC;YACf,CAAC;SACD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAA,CAAC;QACtB,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;KACrB;IAAC,OAAO,CAAM,EAAE;QACf,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,eAAe,UAAU,2CAA2C,CACrE,CAAC;KACH;AACH,CAAC;AAED,SAAS,aAAa,CAAC,UAAkB;IACvC,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,GAAG,GAAQ,IAAA,yBAAiB,EAAC,UAAU,EAAE,CAAC,EAAE;QAChD,WAAW,EAAE,IAAI;QACjB,yBAAyB,EAAE,IAAI;QAC/B,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;IACH,4CAA4C;IAE5C,IAAA,qBAAQ,EAAC,GAAG,EAAE;QACZ,KAAK,EAAE,UAAU,IAAI;YACnB,oBAAoB;YAEpB,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE;gBAC9B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC1B;YACD,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB,EAAE;gBACpC,IACE,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY;oBACjC,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,EACnC;oBACA,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACf,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACf,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;iBAC5D;qBAAM,IACL,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,kBAAkB;oBACvC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY;oBACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY;oBAC1C,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,EACnC;oBACA,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACf,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACf,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACf,QAAQ,CAAC,IAAI,CACX,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAChF,CAAC;iBACH;qBAAM,IACL,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,kBAAkB;oBACvC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,kBAAkB;oBAC9C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY;oBACjD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY;oBAC/C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY;oBAC1C,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,EACnC;oBACA,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACf,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACf,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACf,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACf,QAAQ,CAAC,IAAI,CACX,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAC3H,CAAC;iBACH;aACF;QACH,CAAC;KACF,CAAC,CAAC;IACH,oCAAoC;IAEpC,OAAO,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAS;IACrC,OAAO,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC;AAC3D,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,UAAkB,EAClB,SAAyC;IAEzC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,MAAM,GAAG,GAAQ,IAAA,yBAAiB,EAAC,UAAU,EAAE,CAAC,EAAE;QAChD,WAAW,EAAE,IAAI;QACjB,yBAAyB,EAAE,IAAI;QAC/B,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;IACH,IAAA,oBAAO,EAAC,GAAG,EAAE;QACX,KAAK,EAAE,UAAU,IAAI;YACnB,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,EAAE;gBAClC,IAAI,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;oBACrC,MAAM,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACvC,IAAI,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE;wBACpB,OAAO,GAAG,IAAI,CAAC;wBACf,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;qBACpD;iBACF;aACF;QACH,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,IAAA,kBAAQ,EAAC,GAAG,CAAC,EAAE,CAAC;AACjD,CAAC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAC9B,UAAkB,EAClB,MAAoB;IAEpB,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC;QACvC,CAAC,CAAC,IAAI,WAAW,CAAC,IAAI,EAAE,GAAG;QAC3B,CAAC,CAAC,IAAI,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC;IACpC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5C,OAAO,IAAA,oBAAe,EACpB,IAAI,IAAI,OAAO,UAAU,GAAG,EAC5B,QAAQ,EAAE,CAAC,gBAAgB,CAC5B,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,UAAkB,EAAE,GAAQ,EAAE,IAAU;IAC/D,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC;QACvC,CAAC,CAAC,SAAS,WAAW,CAAC,IAAI,EAAE,GAAG;QAChC,CAAC,CAAC,SAAS,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC;IACzC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5C,OAAO,IAAA,oBAAe,EACpB,IAAI,IAAI,OAAO,UAAU,GAAG,EAC5B,QAAQ,EAAE,CAAC,gBAAgB,CAC5B,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACH,SAAS,6BAA6B,CACpC,UAAkB,EAClB,MAAoB,EACpB,YAAY,GAAG,EAAE;IAEjB,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC;QACvC,CAAC,CAAC,IAAI,WAAW,CAAC,IAAI,EAAE,GAAG;QAC3B,CAAC,CAAC,IAAI,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC;IACpC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5C,MAAM,EAAE,WAAW,EAAE,GAAG,mBAAmB,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,UAAU,IAAI,OAAO,WAAW,GAAG,CAAC;IACpD,OAAO,IAAA,oBAAe,EAAC,OAAO,EAAE;QAC9B,GAAG,QAAQ,EAAE,CAAC,gBAAgB;QAC9B,GAAG,YAAY;KAChB,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAC9B,IAAgB,EAChB,MAAoB;IAEpB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,SAAS,GAAG,CAAC,CAAM,EAAO,EAAE,CAAC,CAAC,CAAC;IACnC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACrC,QAAQ,GAAG,IAAI,CAAC;YAChB,IAAI,CAAW,CAAC;YAChB,IAAI;gBACF,IAAI,CAAC,KAAK,CAAC,UAAU;oBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;gBACtE,CAAC,GAAG,uBAAuB,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;aACvD;YAAC,OAAO,CAAM,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;aACvE;YACD,MAAM,IAAI,GAAG,SAAS,CAAC;YACvB,SAAS,GAAG,CAAC,GAAG,EAAE,EAAE;gBAClB,IAAI;oBACF,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;oBACjB,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBACrB;gBAAC,OAAO,CAAM,EAAE;oBACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;iBACvE;gBACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC,CAAC;SACH;KACF;IACD,IAAI,QAAQ,EAAE;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;KAC5B;;QAAM,OAAO,IAAI,CAAC;AACrB,CAAC;AAED;;;;GAIG;AACH,MAAM,8BAA8B,GAAG,KAAK,EAC1C,GAAQ,EACR,MAAoB,EACN,EAAE;IAChB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,SAAS,GAAG,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,EAAE;YACpC,QAAQ,GAAG,IAAI,CAAC;YAChB,IAAI,CAAW,CAAC;YAChB,IAAI;gBACF,IAAI,CAAC,KAAK,CAAC,UAAU;oBAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBACvE,CAAC,GAAG,6BAA6B,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;aAC7D;YAAC,OAAO,CAAM,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;aACvE;YACD,MAAM,IAAI,GAAG,SAAS,CAAC;YACvB,SAAS,GAAG,KAAK,EAAE,GAAG,EAAE,EAAE;gBACxB,IAAI;oBACF,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;oBACvB,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBACrB;gBAAC,OAAO,CAAM,EAAE;oBACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;iBACvE;gBACD,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;YACzB,CAAC,CAAC;SACH;KACF;IACD,IAAI,QAAQ,EAAE;QACZ,OAAO,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC;KAC7B;;QAAM,OAAO,GAAG,CAAC;AACpB,CAAC,CAAC;AACF;;;;GAIG;AACH,MAAM,sBAAsB,GAAG,KAAK,EAAE,KAAY,EAAiB,EAAE;IACnE,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,GAAG;QACD,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CACxB,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EACrB,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAC7B,CAAC;QACF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,IAAI;gBACF,MAAM,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;aACpD;YAAC,OAAO,CAAM,EAAE;gBACf,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAClB;SACF;QACD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;KACvD,QAAQ,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE;AAC/B,CAAC,CAAC;AACF,iBAAS;IACP,mBAAmB;IACnB,iBAAiB;IACjB,uBAAuB;IACvB,6BAA6B;IAC7B,uBAAuB;IACvB,eAAe;IACf,sBAAsB;IACtB,mBAAmB;IACnB,8BAA8B;IAC9B,aAAa;IACb,WAAW;IACX,aAAa;CACd,CAAC"}
|
package/dist/models/field.d.ts
CHANGED
|
@@ -70,6 +70,7 @@ declare class Field implements AbstractField {
|
|
|
70
70
|
* @returns {string}
|
|
71
71
|
*/
|
|
72
72
|
get form_name(): string;
|
|
73
|
+
static select_options_query(table_name: string, where: string, attributes: any): Promise<any>;
|
|
73
74
|
/**
|
|
74
75
|
* Fills 'this.options' with values available via foreign key
|
|
75
76
|
* Could be used for <options /> in a <select/> to select a user
|