@scmbwis/bpg-gen 0.1.6

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 (230) hide show
  1. package/README.md +103 -0
  2. package/dist/cli/config.d.ts +13 -0
  3. package/dist/cli/config.js +94 -0
  4. package/dist/cli/config.js.map +1 -0
  5. package/dist/cli/generate.d.ts +9 -0
  6. package/dist/cli/generate.js +97 -0
  7. package/dist/cli/generate.js.map +1 -0
  8. package/dist/cli/index.d.ts +2 -0
  9. package/dist/cli/index.js +37 -0
  10. package/dist/cli/index.js.map +1 -0
  11. package/dist/cli/schema-loader.d.ts +2 -0
  12. package/dist/cli/schema-loader.js +104 -0
  13. package/dist/cli/schema-loader.js.map +1 -0
  14. package/dist/commands/gendata.d.ts +1 -0
  15. package/dist/commands/gendata.js +251 -0
  16. package/dist/commands/gendata.js.map +1 -0
  17. package/dist/commands/gendb.d.ts +5 -0
  18. package/dist/commands/gendb.js +82 -0
  19. package/dist/commands/gendb.js.map +1 -0
  20. package/dist/commands/nest-express/gennestservicemodels.d.ts +5 -0
  21. package/dist/commands/nest-express/gennestservicemodels.js +505 -0
  22. package/dist/commands/nest-express/gennestservicemodels.js.map +1 -0
  23. package/dist/commands/nest-express/gentsaccessmodel.d.ts +5 -0
  24. package/dist/commands/nest-express/gentsaccessmodel.js +396 -0
  25. package/dist/commands/nest-express/gentsaccessmodel.js.map +1 -0
  26. package/dist/commands/ng/genngbaseapi.d.ts +1 -0
  27. package/dist/commands/ng/genngbaseapi.js +289 -0
  28. package/dist/commands/ng/genngbaseapi.js.map +1 -0
  29. package/dist/configs/ddi.d.ts +2 -0
  30. package/dist/configs/ddi.js +564 -0
  31. package/dist/configs/ddi.js.map +1 -0
  32. package/dist/configs/index.d.ts +2 -0
  33. package/dist/configs/index.js +24 -0
  34. package/dist/configs/index.js.map +1 -0
  35. package/dist/configs/proef-old.d.ts +2 -0
  36. package/dist/configs/proef-old.js +592 -0
  37. package/dist/configs/proef-old.js.map +1 -0
  38. package/dist/configs/proef.d.ts +2 -0
  39. package/dist/configs/proef.js +1023 -0
  40. package/dist/configs/proef.js.map +1 -0
  41. package/dist/configs/tuvens.d.ts +2 -0
  42. package/dist/configs/tuvens.js +1249 -0
  43. package/dist/configs/tuvens.js.map +1 -0
  44. package/dist/data-access/data-types/common.d.ts +40 -0
  45. package/dist/data-access/data-types/common.js +60 -0
  46. package/dist/data-access/data-types/common.js.map +1 -0
  47. package/dist/data-access/data-types/index.d.ts +3 -0
  48. package/dist/data-access/data-types/index.js +110 -0
  49. package/dist/data-access/data-types/index.js.map +1 -0
  50. package/dist/data-access/data-types/support/reg-models.d.ts +16 -0
  51. package/dist/data-access/data-types/support/reg-models.js +4 -0
  52. package/dist/data-access/data-types/support/reg-models.js.map +1 -0
  53. package/dist/data-access/data-types/template.d.ts +22 -0
  54. package/dist/data-access/data-types/template.js +17 -0
  55. package/dist/data-access/data-types/template.js.map +1 -0
  56. package/dist/data-access/data-types/types/boolean-array.d.ts +18 -0
  57. package/dist/data-access/data-types/types/boolean-array.js +32 -0
  58. package/dist/data-access/data-types/types/boolean-array.js.map +1 -0
  59. package/dist/data-access/data-types/types/boolean.d.ts +18 -0
  60. package/dist/data-access/data-types/types/boolean.js +32 -0
  61. package/dist/data-access/data-types/types/boolean.js.map +1 -0
  62. package/dist/data-access/data-types/types/child-pub-id-seq.d.ts +16 -0
  63. package/dist/data-access/data-types/types/child-pub-id-seq.js +15 -0
  64. package/dist/data-access/data-types/types/child-pub-id-seq.js.map +1 -0
  65. package/dist/data-access/data-types/types/client/client-model.d.ts +223 -0
  66. package/dist/data-access/data-types/types/client/client-model.js +26 -0
  67. package/dist/data-access/data-types/types/client/client-model.js.map +1 -0
  68. package/dist/data-access/data-types/types/client/common.d.ts +23 -0
  69. package/dist/data-access/data-types/types/client/common.js +3 -0
  70. package/dist/data-access/data-types/types/client/common.js.map +1 -0
  71. package/dist/data-access/data-types/types/client/types/boolean-array.d.ts +10 -0
  72. package/dist/data-access/data-types/types/client/types/boolean-array.js +3 -0
  73. package/dist/data-access/data-types/types/client/types/boolean-array.js.map +1 -0
  74. package/dist/data-access/data-types/types/client/types/boolean.d.ts +10 -0
  75. package/dist/data-access/data-types/types/client/types/boolean.js +3 -0
  76. package/dist/data-access/data-types/types/client/types/boolean.js.map +1 -0
  77. package/dist/data-access/data-types/types/client/types/document.d.ts +7 -0
  78. package/dist/data-access/data-types/types/client/types/document.js +4 -0
  79. package/dist/data-access/data-types/types/client/types/document.js.map +1 -0
  80. package/dist/data-access/data-types/types/client/types/fk.d.ts +13 -0
  81. package/dist/data-access/data-types/types/client/types/fk.js +3 -0
  82. package/dist/data-access/data-types/types/client/types/fk.js.map +1 -0
  83. package/dist/data-access/data-types/types/client/types/object.d.ts +10 -0
  84. package/dist/data-access/data-types/types/client/types/object.js +3 -0
  85. package/dist/data-access/data-types/types/client/types/object.js.map +1 -0
  86. package/dist/data-access/data-types/types/client/types/pk.d.ts +9 -0
  87. package/dist/data-access/data-types/types/client/types/pk.js +3 -0
  88. package/dist/data-access/data-types/types/client/types/pk.js.map +1 -0
  89. package/dist/data-access/data-types/types/client/types/pub-id.d.ts +9 -0
  90. package/dist/data-access/data-types/types/client/types/pub-id.js +3 -0
  91. package/dist/data-access/data-types/types/client/types/pub-id.js.map +1 -0
  92. package/dist/data-access/data-types/types/client/types/real-num-array.d.ts +12 -0
  93. package/dist/data-access/data-types/types/client/types/real-num-array.js +3 -0
  94. package/dist/data-access/data-types/types/client/types/real-num-array.js.map +1 -0
  95. package/dist/data-access/data-types/types/client/types/real-num.d.ts +12 -0
  96. package/dist/data-access/data-types/types/client/types/real-num.js +3 -0
  97. package/dist/data-access/data-types/types/client/types/real-num.js.map +1 -0
  98. package/dist/data-access/data-types/types/client/types/string-array.d.ts +13 -0
  99. package/dist/data-access/data-types/types/client/types/string-array.js +3 -0
  100. package/dist/data-access/data-types/types/client/types/string-array.js.map +1 -0
  101. package/dist/data-access/data-types/types/client/types/string.d.ts +15 -0
  102. package/dist/data-access/data-types/types/client/types/string.js +3 -0
  103. package/dist/data-access/data-types/types/client/types/string.js.map +1 -0
  104. package/dist/data-access/data-types/types/client/types/timestamp-array.d.ts +10 -0
  105. package/dist/data-access/data-types/types/client/types/timestamp-array.js +3 -0
  106. package/dist/data-access/data-types/types/client/types/timestamp-array.js.map +1 -0
  107. package/dist/data-access/data-types/types/client/types/timestamp.d.ts +10 -0
  108. package/dist/data-access/data-types/types/client/types/timestamp.js +3 -0
  109. package/dist/data-access/data-types/types/client/types/timestamp.js.map +1 -0
  110. package/dist/data-access/data-types/types/client/types/type-key.d.ts +19 -0
  111. package/dist/data-access/data-types/types/client/types/type-key.js +3 -0
  112. package/dist/data-access/data-types/types/client/types/type-key.js.map +1 -0
  113. package/dist/data-access/data-types/types/client/types/user-picker.d.ts +0 -0
  114. package/dist/data-access/data-types/types/client/types/user-picker.js +2 -0
  115. package/dist/data-access/data-types/types/client/types/user-picker.js.map +1 -0
  116. package/dist/data-access/data-types/types/client/types/whole-num-array.d.ts +12 -0
  117. package/dist/data-access/data-types/types/client/types/whole-num-array.js +3 -0
  118. package/dist/data-access/data-types/types/client/types/whole-num-array.js.map +1 -0
  119. package/dist/data-access/data-types/types/client/types/whole-num.d.ts +12 -0
  120. package/dist/data-access/data-types/types/client/types/whole-num.js +3 -0
  121. package/dist/data-access/data-types/types/client/types/whole-num.js.map +1 -0
  122. package/dist/data-access/data-types/types/client/union.d.ts +25 -0
  123. package/dist/data-access/data-types/types/client/union.js +24 -0
  124. package/dist/data-access/data-types/types/client/union.js.map +1 -0
  125. package/dist/data-access/data-types/types/document.d.ts +16 -0
  126. package/dist/data-access/data-types/types/document.js +28 -0
  127. package/dist/data-access/data-types/types/document.js.map +1 -0
  128. package/dist/data-access/data-types/types/fk.d.ts +46 -0
  129. package/dist/data-access/data-types/types/fk.js +66 -0
  130. package/dist/data-access/data-types/types/fk.js.map +1 -0
  131. package/dist/data-access/data-types/types/object.d.ts +18 -0
  132. package/dist/data-access/data-types/types/object.js +30 -0
  133. package/dist/data-access/data-types/types/object.js.map +1 -0
  134. package/dist/data-access/data-types/types/pk.d.ts +11 -0
  135. package/dist/data-access/data-types/types/pk.js +25 -0
  136. package/dist/data-access/data-types/types/pk.js.map +1 -0
  137. package/dist/data-access/data-types/types/pub-id.d.ts +23 -0
  138. package/dist/data-access/data-types/types/pub-id.js +31 -0
  139. package/dist/data-access/data-types/types/pub-id.js.map +1 -0
  140. package/dist/data-access/data-types/types/real-num-array.d.ts +22 -0
  141. package/dist/data-access/data-types/types/real-num-array.js +38 -0
  142. package/dist/data-access/data-types/types/real-num-array.js.map +1 -0
  143. package/dist/data-access/data-types/types/real-num.d.ts +22 -0
  144. package/dist/data-access/data-types/types/real-num.js +37 -0
  145. package/dist/data-access/data-types/types/real-num.js.map +1 -0
  146. package/dist/data-access/data-types/types/string-array.d.ts +24 -0
  147. package/dist/data-access/data-types/types/string-array.js +47 -0
  148. package/dist/data-access/data-types/types/string-array.js.map +1 -0
  149. package/dist/data-access/data-types/types/string.d.ts +37 -0
  150. package/dist/data-access/data-types/types/string.js +63 -0
  151. package/dist/data-access/data-types/types/string.js.map +1 -0
  152. package/dist/data-access/data-types/types/timestamp-array.d.ts +18 -0
  153. package/dist/data-access/data-types/types/timestamp-array.js +32 -0
  154. package/dist/data-access/data-types/types/timestamp-array.js.map +1 -0
  155. package/dist/data-access/data-types/types/timestamp.d.ts +18 -0
  156. package/dist/data-access/data-types/types/timestamp.js +32 -0
  157. package/dist/data-access/data-types/types/timestamp.js.map +1 -0
  158. package/dist/data-access/data-types/types/type-key.d.ts +87 -0
  159. package/dist/data-access/data-types/types/type-key.js +56 -0
  160. package/dist/data-access/data-types/types/type-key.js.map +1 -0
  161. package/dist/data-access/data-types/types/user-picker.d.ts +0 -0
  162. package/dist/data-access/data-types/types/user-picker.js +2 -0
  163. package/dist/data-access/data-types/types/user-picker.js.map +1 -0
  164. package/dist/data-access/data-types/types/whole-num-array.d.ts +22 -0
  165. package/dist/data-access/data-types/types/whole-num-array.js +38 -0
  166. package/dist/data-access/data-types/types/whole-num-array.js.map +1 -0
  167. package/dist/data-access/data-types/types/whole-num.d.ts +22 -0
  168. package/dist/data-access/data-types/types/whole-num.js +37 -0
  169. package/dist/data-access/data-types/types/whole-num.js.map +1 -0
  170. package/dist/data-access/data-types/union.d.ts +36 -0
  171. package/dist/data-access/data-types/union.js +44 -0
  172. package/dist/data-access/data-types/union.js.map +1 -0
  173. package/dist/datamodel/db-model/app-model.d.ts +36 -0
  174. package/dist/datamodel/db-model/app-model.js +7 -0
  175. package/dist/datamodel/db-model/app-model.js.map +1 -0
  176. package/dist/datamodel/db-model/data-model-builder.d.ts +3 -0
  177. package/dist/datamodel/db-model/data-model-builder.js +437 -0
  178. package/dist/datamodel/db-model/data-model-builder.js.map +1 -0
  179. package/dist/datamodel/db-model/data-model.d.ts +74 -0
  180. package/dist/datamodel/db-model/data-model.js +8 -0
  181. package/dist/datamodel/db-model/data-model.js.map +1 -0
  182. package/dist/datamodel/db-model/data-type.d.ts +9 -0
  183. package/dist/datamodel/db-model/data-type.js +176 -0
  184. package/dist/datamodel/db-model/data-type.js.map +1 -0
  185. package/dist/datamodel/db-model/in-app-model.d.ts +9 -0
  186. package/dist/datamodel/db-model/in-app-model.js +6 -0
  187. package/dist/datamodel/db-model/in-app-model.js.map +1 -0
  188. package/dist/datamodel/db-model/in-data-model.d.ts +36 -0
  189. package/dist/datamodel/db-model/in-data-model.js +11 -0
  190. package/dist/datamodel/db-model/in-data-model.js.map +1 -0
  191. package/dist/datamodel/pg-migrate/infoschema-models.d.ts +40 -0
  192. package/dist/datamodel/pg-migrate/infoschema-models.js +3 -0
  193. package/dist/datamodel/pg-migrate/infoschema-models.js.map +1 -0
  194. package/dist/datamodel/pg-migrate/infoschema-queries.d.ts +2 -0
  195. package/dist/datamodel/pg-migrate/infoschema-queries.js +14 -0
  196. package/dist/datamodel/pg-migrate/infoschema-queries.js.map +1 -0
  197. package/dist/datamodel/pg-migrate/migration-methods.d.ts +19 -0
  198. package/dist/datamodel/pg-migrate/migration-methods.js +75 -0
  199. package/dist/datamodel/pg-migrate/migration-methods.js.map +1 -0
  200. package/dist/datamodel/pg-migrate/migration-queries.d.ts +2 -0
  201. package/dist/datamodel/pg-migrate/migration-queries.js +127 -0
  202. package/dist/datamodel/pg-migrate/migration-queries.js.map +1 -0
  203. package/dist/datamodel/ts-gen/app/api.d.ts +2 -0
  204. package/dist/datamodel/ts-gen/app/api.js +72 -0
  205. package/dist/datamodel/ts-gen/app/api.js.map +1 -0
  206. package/dist/datamodel/ts-gen/index.d.ts +6 -0
  207. package/dist/datamodel/ts-gen/index.js +98 -0
  208. package/dist/datamodel/ts-gen/index.js.map +1 -0
  209. package/dist/env.d.ts +3 -0
  210. package/dist/env.js +87 -0
  211. package/dist/env.js.map +1 -0
  212. package/dist/index.d.ts +2 -0
  213. package/dist/index.js +7 -0
  214. package/dist/index.js.map +1 -0
  215. package/dist/utils/casing.d.ts +17 -0
  216. package/dist/utils/casing.js +66 -0
  217. package/dist/utils/casing.js.map +1 -0
  218. package/dist/utils/conventions.d.ts +2 -0
  219. package/dist/utils/conventions.js +12 -0
  220. package/dist/utils/conventions.js.map +1 -0
  221. package/dist/utils/genutils.d.ts +55 -0
  222. package/dist/utils/genutils.js +501 -0
  223. package/dist/utils/genutils.js.map +1 -0
  224. package/dist/utils/pg.utils.d.ts +1 -0
  225. package/dist/utils/pg.utils.js +302 -0
  226. package/dist/utils/pg.utils.js.map +1 -0
  227. package/dist/utils/writingutils.d.ts +12 -0
  228. package/dist/utils/writingutils.js +63 -0
  229. package/dist/utils/writingutils.js.map +1 -0
  230. package/package.json +50 -0
@@ -0,0 +1,1249 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.tuvens = tuvens;
4
+ function tuvens() {
5
+ return {
6
+ schemaName: "public",
7
+ tables: [
8
+ {
9
+ name: "init_record", // table for checking init scripts run
10
+ cols: [
11
+ {
12
+ name: "init_key",
13
+ dataType: "string",
14
+ required: true
15
+ },
16
+ {
17
+ name: "init_notes",
18
+ dataType: "string",
19
+ stringFormat: "text"
20
+ },
21
+ {
22
+ name: "init_data",
23
+ dataType: "object"
24
+ }
25
+ ]
26
+ },
27
+ {
28
+ name: "user",
29
+ cols: [
30
+ {
31
+ name: "identity_key",
32
+ dataType: "string",
33
+ required: true,
34
+ immutable: true
35
+ },
36
+ {
37
+ name: "has_overall_admin",
38
+ dataType: "boolean",
39
+ defaultBool: false,
40
+ required: true
41
+ },
42
+ {
43
+ name: "is_approved_user",
44
+ dataType: "boolean",
45
+ defaultBool: false,
46
+ required: true
47
+ },
48
+ {
49
+ name: "approval_requested",
50
+ dataType: "whole-num",
51
+ defaultWholeNum: 0,
52
+ required: false
53
+ },
54
+ {
55
+ name: "last_requested_approval",
56
+ dataType: "timestamp",
57
+ required: false
58
+ },
59
+ {
60
+ name: "onboarding_data",
61
+ dataType: "object"
62
+ },
63
+ {
64
+ name: "has_completed_onboarding",
65
+ dataType: "boolean",
66
+ defaultBool: false,
67
+ required: true
68
+ },
69
+ {
70
+ name: "wants_curate",
71
+ dataType: "boolean",
72
+ defaultBool: false,
73
+ required: true
74
+ },
75
+ {
76
+ name: "wants_find",
77
+ dataType: "boolean",
78
+ defaultBool: false,
79
+ required: true
80
+ },
81
+ {
82
+ name: "wants_promote",
83
+ dataType: "boolean",
84
+ defaultBool: false,
85
+ required: true
86
+ },
87
+ {
88
+ name: "account_type",
89
+ dataType: "string",
90
+ pickValues: ["individual", "organisation"],
91
+ required: true,
92
+ defaultStr: "individual"
93
+ },
94
+ {
95
+ name: "display_name",
96
+ dataType: "string",
97
+ stringFormat: "title",
98
+ required: true,
99
+ defaultStr: "User"
100
+ },
101
+ {
102
+ name: "email",
103
+ dataType: "string",
104
+ stringFormat: "email",
105
+ required: false
106
+ },
107
+ {
108
+ name: "bio",
109
+ dataType: "object",
110
+ defaultObj: { "text": "" }
111
+ },
112
+ {
113
+ dataType: "fk",
114
+ targetTable: "server_file",
115
+ idPropName: "avatar_file_id"
116
+ }
117
+ ],
118
+ children: [
119
+ {
120
+ name: "user_interest",
121
+ cols: [
122
+ {
123
+ dataType: "fk",
124
+ targetTable: "interest",
125
+ required: true
126
+ }
127
+ ]
128
+ },
129
+ {
130
+ name: "user_location",
131
+ cols: [
132
+ {
133
+ dataType: "fk",
134
+ targetTable: "location",
135
+ required: true
136
+ }
137
+ ]
138
+ },
139
+ {
140
+ name: "follow_event",
141
+ cols: [
142
+ {
143
+ dataType: "fk",
144
+ targetTable: "event"
145
+ }
146
+ ]
147
+ },
148
+ {
149
+ name: "follow_list",
150
+ cols: [
151
+ {
152
+ dataType: "fk",
153
+ targetTable: "list"
154
+ }
155
+ ]
156
+ },
157
+ {
158
+ name: "follow_user",
159
+ cols: [
160
+ {
161
+ dataType: "fk",
162
+ targetTable: "user",
163
+ idPropName: "following"
164
+ }
165
+ ]
166
+ }
167
+ ]
168
+ },
169
+ {
170
+ name: "gpt_prompt",
171
+ cols: [
172
+ {
173
+ name: "title",
174
+ dataType: "string",
175
+ required: true
176
+ },
177
+ {
178
+ name: "description",
179
+ dataType: "string"
180
+ },
181
+ {
182
+ name: "is_default",
183
+ dataType: "boolean",
184
+ defaultBool: false,
185
+ required: true
186
+ },
187
+ {
188
+ name: "gpt_model",
189
+ dataType: "string",
190
+ pickValues: ["gpt-4o", "gpt-3.5-turbo", "gpt-4-turbo"],
191
+ defaultStr: "gpt-4o",
192
+ required: true
193
+ },
194
+ {
195
+ name: "system_prompt",
196
+ dataType: "string",
197
+ stringFormat: "text",
198
+ required: true
199
+ },
200
+ {
201
+ name: "prompt",
202
+ dataType: "string",
203
+ stringFormat: "text",
204
+ required: true
205
+ },
206
+ {
207
+ name: "temperature",
208
+ dataType: "real-num",
209
+ minRealNum: 0,
210
+ maxRealNum: 1,
211
+ defaultRealNum: 0.5,
212
+ required: true
213
+ },
214
+ {
215
+ name: "api_key_override",
216
+ dataType: "string",
217
+ stringFormat: "text",
218
+ required: false
219
+ }
220
+ ]
221
+ },
222
+ {
223
+ name: "setting",
224
+ cols: [
225
+ {
226
+ name: "type",
227
+ dataType: "string",
228
+ required: true
229
+ },
230
+ {
231
+ name: "title",
232
+ dataType: "string",
233
+ required: false
234
+ },
235
+ {
236
+ name: "val",
237
+ dataType: "object",
238
+ required: true
239
+ },
240
+ {
241
+ dataType: "fk",
242
+ targetTable: "user",
243
+ required: false,
244
+ immutable: true
245
+ }
246
+ ]
247
+ },
248
+ {
249
+ name: "geo_cluster",
250
+ cols: [
251
+ {
252
+ name: "title",
253
+ dataType: "string",
254
+ required: true
255
+ }
256
+ ],
257
+ children: [
258
+ {
259
+ name: "geo_cluster_location",
260
+ cols: [
261
+ {
262
+ dataType: "fk",
263
+ targetTable: "location",
264
+ required: true
265
+ }
266
+ ]
267
+ }
268
+ ]
269
+ },
270
+ {
271
+ name: "location",
272
+ cols: [
273
+ {
274
+ name: "mapbox_id",
275
+ dataType: "string",
276
+ stringFormat: "title",
277
+ required: true,
278
+ defaultStr: "venue"
279
+ },
280
+ {
281
+ name: "loc_type",
282
+ dataType: "string",
283
+ pickValues: ["country", "region", "place", "venue"],
284
+ required: true
285
+ },
286
+ {
287
+ name: "title",
288
+ dataType: "string",
289
+ stringFormat: "title",
290
+ required: true
291
+ },
292
+ {
293
+ name: "title_base",
294
+ dataType: "string",
295
+ stringFormat: "title",
296
+ required: true
297
+ },
298
+ {
299
+ name: "variants",
300
+ dataType: "string",
301
+ stringFormat: "scsv",
302
+ multiValue: true
303
+ },
304
+ {
305
+ name: "code",
306
+ dataType: "string",
307
+ stringFormat: "short",
308
+ comments: "country two letter or region without county code first, null for place"
309
+ },
310
+ {
311
+ name: "code_long",
312
+ dataType: "string",
313
+ stringFormat: "short",
314
+ comments: "country alpha 3 or full region code inc country, null for place"
315
+ },
316
+ {
317
+ name: "venue_address",
318
+ dataType: "string",
319
+ comments: "only applies to venue"
320
+ },
321
+ {
322
+ name: "venue_latitude",
323
+ dataType: "real-num",
324
+ comments: "only applies to venue"
325
+ },
326
+ {
327
+ name: "venue_longitude",
328
+ dataType: "real-num",
329
+ comments: "only applies to venue"
330
+ },
331
+ {
332
+ dataType: "fk",
333
+ targetTable: "location",
334
+ idPropName: "country_id",
335
+ comments: "required for region or place, N/A for country"
336
+ },
337
+ {
338
+ dataType: "fk",
339
+ targetTable: "location",
340
+ idPropName: "region_id",
341
+ comments: "optional for place, N/A for country and region"
342
+ },
343
+ {
344
+ dataType: "fk",
345
+ targetTable: "location",
346
+ idPropName: "place_id",
347
+ comments: "required for venue, N/A for place, country and region"
348
+ }
349
+ ]
350
+ },
351
+ {
352
+ name: "interest",
353
+ cols: [
354
+ {
355
+ name: "title",
356
+ dataType: "string",
357
+ stringFormat: "title",
358
+ required: true
359
+ },
360
+ {
361
+ name: "title_base",
362
+ dataType: "string",
363
+ stringFormat: "title",
364
+ required: true
365
+ },
366
+ {
367
+ dataType: "boolean",
368
+ name: "hidden",
369
+ defaultBool: false
370
+ },
371
+ {
372
+ name: "variants",
373
+ dataType: "string",
374
+ stringFormat: "scsv",
375
+ multiValue: true
376
+ },
377
+ {
378
+ name: "description",
379
+ dataType: "string",
380
+ stringFormat: "text",
381
+ required: true
382
+ }
383
+ ]
384
+ },
385
+ {
386
+ name: "event_type",
387
+ cols: [
388
+ {
389
+ name: "title",
390
+ dataType: "string",
391
+ stringFormat: "title",
392
+ required: true
393
+ },
394
+ {
395
+ name: "title_base",
396
+ dataType: "string",
397
+ stringFormat: "title",
398
+ required: true
399
+ },
400
+ {
401
+ name: "variants",
402
+ dataType: "string",
403
+ stringFormat: "scsv",
404
+ multiValue: true
405
+ },
406
+ {
407
+ dataType: "boolean",
408
+ name: "hidden",
409
+ defaultBool: false
410
+ },
411
+ {
412
+ name: "description",
413
+ dataType: "string",
414
+ stringFormat: "text",
415
+ required: true
416
+ }
417
+ ]
418
+ },
419
+ {
420
+ name: "event",
421
+ cols: [
422
+ {
423
+ name: "title",
424
+ dataType: "string",
425
+ stringFormat: "title",
426
+ required: true
427
+ },
428
+ {
429
+ name: "title_base",
430
+ dataType: "string",
431
+ stringFormat: "title",
432
+ required: true
433
+ },
434
+ {
435
+ name: "source_text",
436
+ dataType: "object"
437
+ },
438
+ {
439
+ name: "short_description",
440
+ dataType: "string",
441
+ stringFormat: "text"
442
+ },
443
+ {
444
+ name: "description",
445
+ dataType: "string",
446
+ stringFormat: "text"
447
+ },
448
+ {
449
+ name: "talent",
450
+ dataType: "string",
451
+ stringFormat: "scsv"
452
+ },
453
+ {
454
+ name: "venue_notes",
455
+ dataType: "string"
456
+ },
457
+ {
458
+ name: "venue_name",
459
+ dataType: "string"
460
+ },
461
+ {
462
+ name: "venue_mapbox_id",
463
+ dataType: "string",
464
+ stringFormat: "title"
465
+ },
466
+ {
467
+ name: "venue_address",
468
+ dataType: "string"
469
+ },
470
+ {
471
+ name: "venue_latitude",
472
+ dataType: "real-num"
473
+ },
474
+ {
475
+ name: "venue_longitude",
476
+ dataType: "real-num"
477
+ },
478
+ {
479
+ name: "start_date",
480
+ dataType: "timestamp",
481
+ dateFormat: "dateTime"
482
+ },
483
+ {
484
+ name: "end_date",
485
+ dataType: "timestamp",
486
+ dateFormat: "dateTime"
487
+ },
488
+ {
489
+ name: "time_zone",
490
+ dataType: "string",
491
+ stringFormat: "short"
492
+ },
493
+ {
494
+ name: "price_min",
495
+ dataType: "real-num",
496
+ defaultRealNum: 0
497
+ },
498
+ {
499
+ name: "price_max",
500
+ dataType: "real-num",
501
+ defaultRealNum: 0
502
+ },
503
+ {
504
+ name: "price_hide",
505
+ dataType: "boolean",
506
+ defaultBool: false
507
+ },
508
+ {
509
+ name: "price_free",
510
+ dataType: "boolean",
511
+ defaultBool: true
512
+ },
513
+ {
514
+ name: "price_currency",
515
+ dataType: "string",
516
+ stringFormat: "short",
517
+ mock: { specialFormat: "currency" },
518
+ defaultStr: "NA"
519
+ },
520
+ {
521
+ name: "price_reg_link_text",
522
+ dataType: "string",
523
+ stringFormat: "title"
524
+ },
525
+ {
526
+ name: "price_reg_link_uri",
527
+ dataType: "string",
528
+ stringFormat: "url"
529
+ },
530
+ {
531
+ name: "price_reg_notes",
532
+ dataType: "string",
533
+ stringFormat: "text"
534
+ },
535
+ {
536
+ name: "price_reg_required",
537
+ dataType: "boolean",
538
+ defaultBool: false
539
+ },
540
+ {
541
+ name: "ticket_status",
542
+ dataType: "string",
543
+ stringFormat: "title"
544
+ },
545
+ {
546
+ name: "contact_data",
547
+ dataType: "object"
548
+ },
549
+ {
550
+ name: "contact_email",
551
+ dataType: "string",
552
+ stringFormat: "email"
553
+ },
554
+ {
555
+ name: "contact_phone",
556
+ dataType: "string",
557
+ stringFormat: "phone"
558
+ },
559
+ {
560
+ name: "contact_link_text",
561
+ dataType: "string",
562
+ stringFormat: "title"
563
+ },
564
+ {
565
+ name: "contact_link_uri",
566
+ dataType: "string",
567
+ stringFormat: "url"
568
+ },
569
+ {
570
+ name: "contact_notes",
571
+ dataType: "string",
572
+ stringFormat: "text"
573
+ },
574
+ {
575
+ name: "is_organiser",
576
+ dataType: "boolean",
577
+ required: false
578
+ },
579
+ {
580
+ name: "published",
581
+ dataType: "boolean",
582
+ defaultBool: false,
583
+ required: true
584
+ },
585
+ {
586
+ name: "status",
587
+ dataType: "string",
588
+ pickValues: ["normal", "cancelled", "postponed"],
589
+ defaultStr: "normal"
590
+ },
591
+ {
592
+ dataType: "fk",
593
+ targetTable: "location",
594
+ idPropName: "country_id",
595
+ comments: "not required as import can create without, incomplete without"
596
+ },
597
+ {
598
+ dataType: "fk",
599
+ targetTable: "location",
600
+ idPropName: "region_id"
601
+ },
602
+ {
603
+ dataType: "fk",
604
+ targetTable: "location",
605
+ idPropName: "place_id",
606
+ comments: "not required as import can create without, incomplete without"
607
+ },
608
+ {
609
+ dataType: "fk",
610
+ targetTable: "location",
611
+ idPropName: "venue_id",
612
+ comments: "not required as import can create without, incomplete without"
613
+ },
614
+ {
615
+ dataType: "fk",
616
+ targetTable: "user",
617
+ idPropName: "creator_id",
618
+ required: true
619
+ },
620
+ {
621
+ dataType: "fk",
622
+ targetTable: "event",
623
+ idPropName: "parent_event_id"
624
+ }
625
+ ],
626
+ children: [
627
+ {
628
+ name: "session",
629
+ cols: [
630
+ {
631
+ name: "title",
632
+ dataType: "string",
633
+ stringFormat: "title",
634
+ required: true
635
+ },
636
+ {
637
+ name: "description",
638
+ dataType: "string",
639
+ stringFormat: "text"
640
+ },
641
+ {
642
+ name: "start_date",
643
+ dataType: "timestamp",
644
+ dateFormat: "dateTime",
645
+ required: true
646
+ },
647
+ {
648
+ name: "end_date",
649
+ dataType: "timestamp",
650
+ dateFormat: "dateTime",
651
+ required: true
652
+ }
653
+ ]
654
+ },
655
+ {
656
+ name: "event_section",
657
+ cols: [
658
+ {
659
+ name: "title",
660
+ dataType: "string",
661
+ stringFormat: "title",
662
+ required: true
663
+ },
664
+ {
665
+ name: "type",
666
+ dataType: "string",
667
+ stringFormat: "title",
668
+ required: true,
669
+ defaultStr: "plain-text"
670
+ },
671
+ {
672
+ name: "section_content",
673
+ dataType: "object",
674
+ required: true
675
+ }
676
+ ]
677
+ },
678
+ {
679
+ name: "event_event_type",
680
+ cols: [
681
+ {
682
+ dataType: "fk",
683
+ targetTable: "event_type",
684
+ required: true,
685
+ parent: true
686
+ }
687
+ ]
688
+ },
689
+ {
690
+ name: "event_interest",
691
+ cols: [
692
+ {
693
+ dataType: "fk",
694
+ targetTable: "interest",
695
+ required: true,
696
+ parent: true
697
+ }
698
+ ]
699
+ },
700
+ {
701
+ name: "event_file",
702
+ cols: [
703
+ {
704
+ dataType: "fk",
705
+ targetTable: "server_file",
706
+ required: true
707
+ },
708
+ {
709
+ name: "display_order",
710
+ dataType: "whole-num",
711
+ required: true
712
+ },
713
+ {
714
+ name: "category",
715
+ dataType: "string",
716
+ defaultStr: "image"
717
+ },
718
+ {
719
+ name: "alt_text",
720
+ dataType: "string",
721
+ defaultStr: ""
722
+ }
723
+ ]
724
+ },
725
+ {
726
+ name: "event_update",
727
+ cols: [
728
+ {
729
+ dataType: "fk",
730
+ targetTable: "user",
731
+ idPropName: "changed_by_id",
732
+ immutable: true
733
+ },
734
+ {
735
+ name: "importance",
736
+ dataType: "whole-num",
737
+ required: true,
738
+ minWholeNum: 1,
739
+ maxWholeNum: 10
740
+ },
741
+ {
742
+ name: "comment",
743
+ dataType: "string"
744
+ }
745
+ ],
746
+ children: [
747
+ {
748
+ name: "property_change",
749
+ cols: [
750
+ {
751
+ name: "property",
752
+ dataType: "string",
753
+ required: true,
754
+ immutable: true
755
+ },
756
+ {
757
+ name: "change",
758
+ dataType: "object", // {oldValue: any, newValue: any }
759
+ required: true,
760
+ immutable: true
761
+ }
762
+ ]
763
+ }
764
+ ]
765
+ }
766
+ ]
767
+ },
768
+ {
769
+ name: "thread",
770
+ cols: [
771
+ {
772
+ dataType: "fk",
773
+ targetTable: "user",
774
+ required: true,
775
+ parent: true
776
+ },
777
+ {
778
+ dataType: "fk",
779
+ targetTable: "event",
780
+ required: false
781
+ },
782
+ {
783
+ name: "thread_type",
784
+ dataType: "string",
785
+ pickValues: ["review", "question", "comment"],
786
+ required: true
787
+ },
788
+ {
789
+ name: "rating",
790
+ dataType: "whole-num",
791
+ required: false,
792
+ minWholeNum: 1,
793
+ maxWholeNum: 5
794
+ },
795
+ {
796
+ name: "text",
797
+ dataType: "string",
798
+ stringFormat: "text",
799
+ required: true
800
+ },
801
+ {
802
+ dataType: "boolean",
803
+ name: "hidden",
804
+ defaultBool: false
805
+ }
806
+ ],
807
+ children: [
808
+ {
809
+ name: "thread_comment",
810
+ cols: [
811
+ {
812
+ dataType: "fk",
813
+ targetTable: "user",
814
+ required: true,
815
+ parent: true
816
+ },
817
+ {
818
+ name: "text",
819
+ dataType: "string",
820
+ stringFormat: "text",
821
+ required: true
822
+ },
823
+ {
824
+ dataType: "boolean",
825
+ name: "main_answer",
826
+ defaultBool: false
827
+ },
828
+ {
829
+ dataType: "boolean",
830
+ name: "hidden",
831
+ defaultBool: false
832
+ }
833
+ ]
834
+ }
835
+ ]
836
+ },
837
+ {
838
+ name: "vote",
839
+ cols: [
840
+ {
841
+ dataType: "fk",
842
+ targetTable: "user",
843
+ required: true,
844
+ parent: true
845
+ },
846
+ {
847
+ dataType: "fk",
848
+ targetTable: "thread"
849
+ },
850
+ {
851
+ dataType: "fk",
852
+ targetTable: "thread_comment"
853
+ },
854
+ {
855
+ name: "vote",
856
+ dataType: "string",
857
+ pickValues: ["up", "down"],
858
+ required: true,
859
+ defaultStr: "up"
860
+ }
861
+ ]
862
+ },
863
+ {
864
+ name: "list",
865
+ cols: [
866
+ {
867
+ name: "title",
868
+ dataType: "string",
869
+ stringFormat: "title",
870
+ required: true
871
+ },
872
+ {
873
+ name: "title_base",
874
+ dataType: "string",
875
+ stringFormat: "title",
876
+ required: true
877
+ },
878
+ {
879
+ name: "description",
880
+ dataType: "string",
881
+ stringFormat: "text"
882
+ },
883
+ {
884
+ name: "visibility",
885
+ dataType: "string",
886
+ pickValues: ["public", "hidden", "private"],
887
+ defaultStr: "hidden",
888
+ required: true,
889
+ comments: "public listed on anon/list, hidden - anyone can access, private - owner only"
890
+ },
891
+ {
892
+ dataType: "fk",
893
+ targetTable: "user",
894
+ idPropName: "owner_id"
895
+ },
896
+ {
897
+ dataType: "fk",
898
+ targetTable: "list_image_set",
899
+ idPropName: "main_image_set"
900
+ }
901
+ ],
902
+ children: [
903
+ {
904
+ name: "list_image_set",
905
+ cols: [
906
+ {
907
+ name: "display_format",
908
+ dataType: "string",
909
+ stringFormat: "title",
910
+ required: true,
911
+ defaultStr: "image-set"
912
+ },
913
+ {
914
+ name: "caption",
915
+ dataType: "string",
916
+ stringFormat: "title",
917
+ comments: "caption or title"
918
+ }
919
+ ],
920
+ children: [
921
+ {
922
+ name: "list_image",
923
+ cols: [
924
+ {
925
+ name: "display_format",
926
+ dataType: "string",
927
+ required: true,
928
+ defaultStr: "unordered",
929
+ comments: "image_1...n, master"
930
+ },
931
+ {
932
+ name: "caption",
933
+ dataType: "string",
934
+ stringFormat: "title",
935
+ comments: "caption or title"
936
+ },
937
+ {
938
+ name: "alt_text",
939
+ dataType: "string",
940
+ stringFormat: "text"
941
+ },
942
+ {
943
+ dataType: "fk",
944
+ targetTable: "server_file",
945
+ idPropName: "file_id",
946
+ required: true
947
+ }
948
+ ]
949
+ },
950
+ {
951
+ name: "image_set_event", // the actual events used to generate the image
952
+ cols: [
953
+ {
954
+ dataType: "fk",
955
+ targetTable: "event",
956
+ required: true
957
+ }
958
+ ]
959
+ }
960
+ ]
961
+ },
962
+ {
963
+ name: "list_event",
964
+ cols: [
965
+ {
966
+ dataType: "fk",
967
+ targetTable: "event",
968
+ required: true
969
+ },
970
+ {
971
+ name: "notes",
972
+ dataType: "string",
973
+ stringFormat: "text"
974
+ }
975
+ ]
976
+ },
977
+ {
978
+ name: "push_feed",
979
+ cols: [
980
+ {
981
+ name: "title",
982
+ dataType: "string",
983
+ stringFormat: "title",
984
+ required: true
985
+ },
986
+ {
987
+ name: "type",
988
+ dataType: "string",
989
+ pickValues: ["rss"],
990
+ required: true,
991
+ immutable: true
992
+ },
993
+ {
994
+ name: "type_config",
995
+ dataType: "object",
996
+ required: true
997
+ },
998
+ {
999
+ name: "feed_uri",
1000
+ dataType: "string",
1001
+ stringFormat: "url"
1002
+ },
1003
+ {
1004
+ name: "last_published",
1005
+ dataType: "timestamp",
1006
+ comments: "undefined / null means never pushed"
1007
+ },
1008
+ {
1009
+ name: "active",
1010
+ dataType: "boolean",
1011
+ required: true,
1012
+ defaultBool: true
1013
+ }
1014
+ ],
1015
+ }
1016
+ ]
1017
+ },
1018
+ {
1019
+ name: "sys_lr_task", // system long running tasks
1020
+ cols: [
1021
+ {
1022
+ name: "type",
1023
+ dataType: "string",
1024
+ stringFormat: "title",
1025
+ required: true,
1026
+ immutable: true
1027
+ },
1028
+ {
1029
+ name: "summary_key",
1030
+ dataType: "string",
1031
+ stringFormat: "title",
1032
+ required: false,
1033
+ immutable: true,
1034
+ comments: "unique key, designed to allow for filtering of if bother to insert"
1035
+ },
1036
+ {
1037
+ name: "data",
1038
+ dataType: "object",
1039
+ required: true
1040
+ },
1041
+ {
1042
+ name: "result_info",
1043
+ dataType: "object",
1044
+ comments: "especially for fail, timeout, cancelled"
1045
+ },
1046
+ {
1047
+ name: "claimed_by_instance_id",
1048
+ dataType: "string"
1049
+ },
1050
+ {
1051
+ name: "started",
1052
+ dataType: "timestamp"
1053
+ },
1054
+ {
1055
+ name: "completed",
1056
+ dataType: "timestamp"
1057
+ },
1058
+ {
1059
+ name: "result",
1060
+ dataType: "string",
1061
+ pickValues: ["success", "fail", "timeout", "cancelled"]
1062
+ }
1063
+ ]
1064
+ },
1065
+ /*
1066
+ {
1067
+ name: "scheduled_job",
1068
+ cols: [
1069
+ {
1070
+ name: "when_exec_utc",
1071
+ dataType: "timestamp",
1072
+ required: true
1073
+ },
1074
+ {
1075
+ name: "job_key",
1076
+ dataType: "string",
1077
+ stringFormat: "short",
1078
+ required: true,
1079
+ immutable: true
1080
+ },
1081
+ {
1082
+ name: "job_info",
1083
+ dataType: "object",
1084
+ immutable: true
1085
+ },
1086
+ {
1087
+ name: "job_description",
1088
+ dataType: "string",
1089
+ stringFormat: "text",
1090
+ immutable: true,
1091
+ required: true
1092
+ },
1093
+ {
1094
+ name: "batch_id",
1095
+ dataType: "string",
1096
+ stringFormat: "title",
1097
+ required: true,
1098
+ immutable: true
1099
+ },
1100
+ {
1101
+ name: "batch_order",
1102
+ dataType: "whole-num",
1103
+ required: true,
1104
+ immutable: true
1105
+ },
1106
+ {
1107
+ name: "reservation_utc",
1108
+ dataType: "timestamp"
1109
+ },
1110
+ {
1111
+ name: "reservation_info",
1112
+ dataType: "object"
1113
+ },
1114
+ {
1115
+ name: "stopped_at_utc",
1116
+ dataType: "timestamp"
1117
+ },
1118
+ {
1119
+ name: "succeeded",
1120
+ dataType: "boolean"
1121
+ },
1122
+ {
1123
+ name: "result_info",
1124
+ dataType: "object"
1125
+ },
1126
+ {
1127
+ name: "orig_when_exec_utc",
1128
+ dataType: "timestamp",
1129
+ required: true,
1130
+ immutable: true
1131
+ },
1132
+ {
1133
+ name: "fail_count",
1134
+ dataType: "whole-num",
1135
+ required: true,
1136
+ defaultWholeNum: 0
1137
+ },
1138
+ {
1139
+ name: "max_retry",
1140
+ dataType: "whole-num",
1141
+ required: true,
1142
+ defaultWholeNum: 3
1143
+ },
1144
+ {
1145
+ name: "retry_delay_seconds",
1146
+ dataType: "whole-num",
1147
+ required: true,
1148
+ defaultWholeNum: 3
1149
+ },
1150
+ {
1151
+ name: "reservation_history_info",
1152
+ dataType: "object"
1153
+ }
1154
+ ]
1155
+ },*/
1156
+ {
1157
+ name: "server_file",
1158
+ cols: [
1159
+ {
1160
+ name: "original_name",
1161
+ dataType: "string",
1162
+ required: true
1163
+ },
1164
+ {
1165
+ name: "mime_type",
1166
+ dataType: "string",
1167
+ required: true
1168
+ },
1169
+ {
1170
+ name: "file_name",
1171
+ dataType: "string",
1172
+ required: true
1173
+ },
1174
+ {
1175
+ name: "file_size",
1176
+ dataType: "whole-num",
1177
+ required: true
1178
+ }
1179
+ ]
1180
+ },
1181
+ {
1182
+ name: "social", // an end group / channel to broadcast to
1183
+ cols: [
1184
+ {
1185
+ name: "title",
1186
+ dataType: "string",
1187
+ stringFormat: "title",
1188
+ required: true
1189
+ },
1190
+ {
1191
+ name: "description",
1192
+ dataType: "string",
1193
+ stringFormat: "text"
1194
+ },
1195
+ {
1196
+ name: "link",
1197
+ dataType: "string",
1198
+ stringFormat: "title"
1199
+ },
1200
+ {
1201
+ name: "medium",
1202
+ dataType: "string",
1203
+ pickValues: ["whatsApp", "telegram", "facebook"],
1204
+ required: true,
1205
+ immutable: true
1206
+ },
1207
+ {
1208
+ name: "medium_info",
1209
+ dataType: "object"
1210
+ },
1211
+ {
1212
+ dataType: "fk",
1213
+ targetTable: "user",
1214
+ idPropName: "owner_id",
1215
+ required: true
1216
+ }
1217
+ ],
1218
+ children: [
1219
+ {
1220
+ name: "social_post",
1221
+ cols: [
1222
+ {
1223
+ name: "medium",
1224
+ dataType: "string",
1225
+ pickValues: ["whatsApp", "telegram", "instagram", "facebook"],
1226
+ required: true,
1227
+ immutable: true
1228
+ },
1229
+ {
1230
+ name: "status",
1231
+ dataType: "string"
1232
+ },
1233
+ {
1234
+ name: "post_date",
1235
+ dataType: "timestamp",
1236
+ dateFormat: "dateTime"
1237
+ },
1238
+ {
1239
+ name: "post_info",
1240
+ dataType: "object"
1241
+ }
1242
+ ]
1243
+ }
1244
+ ]
1245
+ }
1246
+ ]
1247
+ };
1248
+ }
1249
+ //# sourceMappingURL=tuvens.js.map