@overmap-ai/core 1.0.38 → 1.0.39

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.
@@ -5,5 +5,7 @@ export declare class ComponentStageService extends BaseApiService {
5
5
  bulkUpdateStages(stagesToUpdate: ComponentStage[], componentTypeId: string): Promise<ComponentStage[]>;
6
6
  bulkDelete(idsToDelete: string[]): Promise<undefined>;
7
7
  update(componentStage: ComponentStage): Promise<undefined>;
8
+ linkForm(stageId: string, formId: string): Promise<undefined>;
9
+ unlinkForm(stageId: string, formId: string): Promise<undefined>;
8
10
  refreshStore(): Promise<undefined>;
9
11
  }
@@ -1,11 +1,11 @@
1
- import { UserForm, UserFormRevision, UserFormRevisionPayload } from '../../typings/models/forms';
1
+ import { SubmittedUserForm, UserFormRevision, UserFormRevisionPayload } from '../../typings/models/forms';
2
2
  import { OptimisticModelResult } from "../typings";
3
3
  import { BaseApiService } from "./BaseApiService";
4
4
  export declare class UserFormService extends BaseApiService {
5
5
  private getAttachImagePromises;
6
6
  private add;
7
- addForOrganization(initialRevision: UserFormRevisionPayload): Promise<[UserForm, UserFormRevision, Promise<UserFormRevision>, Promise<UserFormRevision>]>;
8
- addForCurrentUser(initialRevision: UserFormRevision): Promise<[UserForm, UserFormRevision, Promise<UserFormRevision>, Promise<UserFormRevision>]>;
7
+ addForOrganization(initialRevision: UserFormRevisionPayload, componentTypeId?: string): Promise<[SubmittedUserForm, UserFormRevision, Promise<UserFormRevision>, Promise<UserFormRevision>]>;
8
+ addForCurrentUser(initialRevision: UserFormRevision, componentTypeId?: string): Promise<[SubmittedUserForm, UserFormRevision, Promise<UserFormRevision>, Promise<UserFormRevision>]>;
9
9
  createRevision(formId: string, revision: UserFormRevisionPayload): Promise<OptimisticModelResult<UserFormRevision>>;
10
10
  favorite(formId: string): Promise<undefined>;
11
11
  unfavorite(formId: string): Promise<undefined>;
@@ -3,7 +3,9 @@ import { BaseApiService } from "./BaseApiService";
3
3
  import { UserFormSubmission, UserFormSubmissionPayload } from '../../typings/models/forms';
4
4
  import { OptimisticModelResult } from "../typings";
5
5
  export declare class UserFormSubmissionService extends BaseApiService {
6
+ private getAttachFilesPromises;
6
7
  add(payload: Offline<UserFormSubmissionPayload>): OptimisticModelResult<UserFormSubmission>;
8
+ update(submission: UserFormSubmission): Promise<UserFormSubmission>;
7
9
  delete(submissionId: string): Promise<undefined>;
8
10
  refreshStore(): Promise<void>;
9
11
  }
@@ -13,11 +13,28 @@ export declare const componentStageSlice: import("@reduxjs/toolkit").Slice<Compo
13
13
  removeStages: (state: import("immer/dist/internal.js").WritableDraft<ComponentStageState>, action: {
14
14
  payload: string[];
15
15
  }) => void;
16
+ linkStageToForm: (state: import("immer/dist/internal.js").WritableDraft<ComponentStageState>, action: {
17
+ payload: {
18
+ stageId: string;
19
+ formId: string;
20
+ };
21
+ }) => void;
22
+ unlinkStageToForm: (state: import("immer/dist/internal.js").WritableDraft<ComponentStageState>, action: {
23
+ payload: {
24
+ stageId: string;
25
+ };
26
+ }) => void;
16
27
  }, "componentStages">;
17
28
  export declare const selectStageMapping: (state: RootState) => Record<string, ComponentStage>;
18
29
  export declare const selectStages: (state: RootState) => ComponentStage[];
19
30
  export declare const selectStagesFromComponentTypeIds: SelectorWithArgs<string[], Record<string, ComponentStage[]>>;
20
31
  export declare const selectStagesFromComponentType: SelectorWithArgs<string, ComponentStage[]>;
21
32
  export declare const selectStagesFromStageIds: SelectorWithArgs<string[], ComponentStage[]>;
22
- export declare const addStages: import("@reduxjs/toolkit").ActionCreatorWithPayload<ComponentStage[], "componentStages/addStages">, updateStages: import("@reduxjs/toolkit").ActionCreatorWithPayload<ComponentStage[], "componentStages/updateStages">, removeStages: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "componentStages/removeStages">;
33
+ export declare const selectStageFormIdsFromStageIds: SelectorWithArgs<string[], Record<string, string>>;
34
+ export declare const addStages: import("@reduxjs/toolkit").ActionCreatorWithPayload<ComponentStage[], "componentStages/addStages">, updateStages: import("@reduxjs/toolkit").ActionCreatorWithPayload<ComponentStage[], "componentStages/updateStages">, removeStages: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "componentStages/removeStages">, linkStageToForm: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
35
+ stageId: string;
36
+ formId: string;
37
+ }, "componentStages/linkStageToForm">, unlinkStageToForm: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
38
+ stageId: string;
39
+ }, "componentStages/unlinkStageToForm">;
23
40
  export declare const componentStageReducer: Reducer<ComponentStageState>;
@@ -28,7 +28,7 @@ export declare const userFormSlice: import("@reduxjs/toolkit").Slice<UserFormSta
28
28
  deleteUserFormRevisions: (state: import("immer/dist/internal.js").WritableDraft<UserFormState>, action: {
29
29
  payload: UserFormRevision[];
30
30
  }) => void;
31
- addUserFormSubmission: (state: import("immer/dist/internal.js").WritableDraft<UserFormState>, action: {
31
+ updateOrCreateUserFormSubmission: (state: import("immer/dist/internal.js").WritableDraft<UserFormState>, action: {
32
32
  payload: UserFormSubmission;
33
33
  }) => void;
34
34
  addUserFormSubmissionAttachment: (state: import("immer/dist/internal.js").WritableDraft<UserFormState>, action: {
@@ -69,6 +69,7 @@ export declare const userFormSlice: import("@reduxjs/toolkit").Slice<UserFormSta
69
69
  }, "userForms">;
70
70
  export declare const addUserForm: import("@reduxjs/toolkit").ActionCreatorWithPayload<(Pick<import('../../typings/models/workspace').WorkspaceIndexedModel, "index_workspace"> & {
71
71
  favorite: boolean;
72
+ component_type?: string | undefined;
72
73
  } & {
73
74
  owner_organization: number;
74
75
  owner_user: undefined;
@@ -79,6 +80,7 @@ export declare const addUserForm: import("@reduxjs/toolkit").ActionCreatorWithPa
79
80
  submitted_at: string;
80
81
  }) | (Pick<import('../../typings/models/workspace').WorkspaceIndexedModel, "index_workspace"> & {
81
82
  favorite: boolean;
83
+ component_type?: string | undefined;
82
84
  } & {
83
85
  owner_organization: undefined;
84
86
  owner_user: number;
@@ -89,6 +91,7 @@ export declare const addUserForm: import("@reduxjs/toolkit").ActionCreatorWithPa
89
91
  submitted_at: string;
90
92
  }), "userForms/addUserForm">, addUserForms: import("@reduxjs/toolkit").ActionCreatorWithPayload<((Pick<import('../../typings/models/workspace').WorkspaceIndexedModel, "index_workspace"> & {
91
93
  favorite: boolean;
94
+ component_type?: string | undefined;
92
95
  } & {
93
96
  owner_organization: number;
94
97
  owner_user: undefined;
@@ -99,6 +102,7 @@ export declare const addUserForm: import("@reduxjs/toolkit").ActionCreatorWithPa
99
102
  submitted_at: string;
100
103
  }) | (Pick<import('../../typings/models/workspace').WorkspaceIndexedModel, "index_workspace"> & {
101
104
  favorite: boolean;
105
+ component_type?: string | undefined;
102
106
  } & {
103
107
  owner_organization: undefined;
104
108
  owner_user: number;
@@ -107,7 +111,7 @@ export declare const addUserForm: import("@reduxjs/toolkit").ActionCreatorWithPa
107
111
  } & import('../../typings/models/base').OfflineModel & {
108
112
  created_by: number;
109
113
  submitted_at: string;
110
- }))[], "userForms/addUserForms">, addUserFormRevisions: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormRevision<import('../../forms').ISerializedField>[], "userForms/addUserFormRevisions">, addUserFormSubmission: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormSubmission, "userForms/addUserFormSubmission">, addUserFormSubmissions: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormSubmission[], "userForms/addUserFormSubmissions">, deleteUserFormSubmission: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "userForms/deleteUserFormSubmission">, deleteUserFormSubmissions: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormSubmission[], "userForms/deleteUserFormSubmissions">, favoriteForm: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
114
+ }))[], "userForms/addUserForms">, addUserFormRevisions: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormRevision<import('../../forms').ISerializedField>[], "userForms/addUserFormRevisions">, updateOrCreateUserFormSubmission: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormSubmission, "userForms/updateOrCreateUserFormSubmission">, addUserFormSubmissions: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormSubmission[], "userForms/addUserFormSubmissions">, deleteUserFormSubmission: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "userForms/deleteUserFormSubmission">, deleteUserFormSubmissions: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormSubmission[], "userForms/deleteUserFormSubmissions">, favoriteForm: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
111
115
  formId: string;
112
116
  }, "userForms/favoriteForm">, unfavoriteForm: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
113
117
  formId: string;
@@ -131,7 +135,9 @@ export declare const selectSubmissionsForForm: SelectorWithArgs<string, UserForm
131
135
  export declare const selectSubmissionsForIssue: SelectorWithArgs<string, UserFormSubmission[]>;
132
136
  export declare const selectSubmissionsForComponent: SelectorWithArgs<string, UserFormSubmission[]>;
133
137
  export declare const selectUserFormMapping: Selector<Record<Stored<UserForm>["offline_id"], Stored<UserForm>>>;
138
+ export declare const selectComponentTypeForm: SelectorWithArgs<string, Stored<UserForm>>;
139
+ export declare const selectLatestRevisionsFromComponentTypeIds: SelectorWithArgs<string[], Record<string, Stored<UserFormRevision>>>;
134
140
  export declare const selectLatestRevisionByFormId: Selector<Record<Stored<UserForm>["offline_id"], UserFormRevision>>;
135
- export declare const selectAllRevisionAttachmentsByLatestRevisionId: Selector<Record<Stored<UserFormRevision>["offline_id"], UserFormRevisionAttachment[]>>;
136
141
  export declare const selectNumberOfUserForms: Selector<number>;
142
+ export declare const selectNumberOfGeneralUserForms: Selector<number>;
137
143
  export declare const userFormReducer: Reducer<UserFormState>;
package/dist/style.css CHANGED
@@ -1,15 +1,15 @@
1
- ._description_p31lm_1 {
1
+ ._description_1w0fq_1 {
2
2
  white-space: pre-line;
3
3
  }
4
4
 
5
- ._floatingButtonContainer_p31lm_5 {
5
+ ._floatingButtonContainer_1w0fq_5 {
6
6
  position: sticky;
7
7
  bottom: 0;
8
8
  padding-bottom: 10px;
9
9
  padding-right: 10px;
10
10
  }
11
11
 
12
- ._FullScreenImageContainer_p31lm_12 {
12
+ ._FullScreenImageContainer_1w0fq_12 {
13
13
  position: fixed;
14
14
  top: 0;
15
15
  left: 0;
@@ -19,7 +19,8 @@
19
19
  background-color: rgba(0, 0, 0, 0.85);
20
20
  }
21
21
 
22
- ._TopBarContainer_p31lm_22 {
22
+ ._TopBarContainer_1w0fq_22 {
23
+ background-color: var(--color-background);
23
24
  position: fixed;
24
25
  top: 0;
25
26
  left: 0;
@@ -27,18 +28,18 @@
27
28
  z-index: 5001;
28
29
  }
29
30
 
30
- ._fileName_p31lm_30 {
31
+ ._fileName_1w0fq_31 {
31
32
  flex-grow: 1;
32
33
  text-align: center;
33
34
  }
34
35
 
35
- ._longIconButton_p31lm_35 {
36
+ ._longIconButton_1w0fq_36 {
36
37
  font-size: 0.8em;
37
38
  min-width: 50px;
38
39
  margin: 10px;
39
40
  }
40
41
 
41
- ._previewImage_p31lm_41 {
42
+ ._previewImage_1w0fq_42 {
42
43
  object-fit: cover;
43
44
  width: min(300px, 100%);
44
45
  height: 100px;
@@ -46,7 +47,7 @@
46
47
  cursor: pointer;
47
48
  }
48
49
 
49
- ._FullScreenImage_p31lm_12 {
50
+ ._FullScreenImage_1w0fq_12 {
50
51
  position: absolute;
51
52
  top: 50%;
52
53
  left: 50%;
@@ -57,7 +58,7 @@
57
58
  z-index: 5001;
58
59
  }
59
60
 
60
- ._tabsList_p31lm_60 {
61
+ ._tabsList_1w0fq_61 {
61
62
  display: flex;
62
63
  position: sticky;
63
64
  background-color: var(--color-background);
@@ -65,40 +66,40 @@
65
66
  z-index: 2000;
66
67
  }
67
68
 
68
- ._tabTrigger_p31lm_68 {
69
+ ._tabTrigger_1w0fq_69 {
69
70
  flex: 1;
70
71
  }
71
72
 
72
- ._patchfieldBorder_p31lm_72, ._description_p31lm_1, ._title_p31lm_72 {
73
+ ._patchfieldBorder_1w0fq_73, ._description_1w0fq_1, ._title_1w0fq_73 {
73
74
  accent-color: var(--gray-surface);
74
75
  border: 1px solid var(--gray-a7);
75
76
  border-radius: 8px;
76
77
  padding-left: var(--space-2);
77
78
  }
78
79
 
79
- ._title_p31lm_72 {
80
+ ._title_1w0fq_73 {
80
81
  font-weight: bold;
81
82
  }
82
83
 
83
- ._description_p31lm_1 {
84
+ ._description_1w0fq_1 {
84
85
  min-height: max-content;
85
86
  padding-top: var(--space-2);
86
87
  }
87
88
 
88
- ._error_p31lm_88 {
89
+ ._error_1w0fq_89 {
89
90
  border-color: var(--red-a11);
90
- }._description_1kceu_1 {
91
+ }._description_10o76_1 {
91
92
  white-space: pre-line;
92
93
  }
93
94
 
94
- ._floatingButtonContainer_1kceu_5 {
95
+ ._floatingButtonContainer_10o76_5 {
95
96
  position: sticky;
96
97
  bottom: 0;
97
98
  padding-bottom: 10px;
98
99
  padding-right: 10px;
99
100
  }
100
101
 
101
- ._FullScreenImageContainer_1kceu_12 {
102
+ ._FullScreenImageContainer_10o76_12 {
102
103
  position: fixed;
103
104
  top: 0;
104
105
  left: 0;
@@ -108,7 +109,8 @@
108
109
  background-color: rgba(0, 0, 0, 0.85);
109
110
  }
110
111
 
111
- ._TopBarContainer_1kceu_22 {
112
+ ._TopBarContainer_10o76_22 {
113
+ background-color: var(--color-background);
112
114
  position: fixed;
113
115
  top: 0;
114
116
  left: 0;
@@ -116,18 +118,18 @@
116
118
  z-index: 5001;
117
119
  }
118
120
 
119
- ._fileName_1kceu_30 {
121
+ ._fileName_10o76_31 {
120
122
  flex-grow: 1;
121
123
  text-align: center;
122
124
  }
123
125
 
124
- ._longIconButton_1kceu_35 {
126
+ ._longIconButton_10o76_36 {
125
127
  font-size: 0.8em;
126
128
  min-width: 50px;
127
129
  margin: 10px;
128
130
  }
129
131
 
130
- ._previewImage_1kceu_41 {
132
+ ._previewImage_10o76_42 {
131
133
  object-fit: cover;
132
134
  width: min(300px, 100%);
133
135
  height: 100px;
@@ -135,7 +137,7 @@
135
137
  cursor: pointer;
136
138
  }
137
139
 
138
- ._FullScreenImage_1kceu_12 {
140
+ ._FullScreenImage_10o76_12 {
139
141
  position: absolute;
140
142
  top: 50%;
141
143
  left: 50%;
@@ -152,25 +154,34 @@
152
154
  overflow-x: auto;
153
155
  white-space: nowrap;
154
156
  padding-top: calc(var(--space-1) + 1px);
155
- }._previewImage_ebhyt_1 {
156
- max-height: 100px;
157
- border-radius: max(var(--radius-2), var(--radius-4));
158
- flex-basis: 50%;
157
+ }._displayFileContainer_1vdfw_1 {
158
+ width: 100%;
159
+ background-color: var(--surface-900);
160
+ }
161
+
162
+ ._infoContainer_1vdfw_6 {
163
+ margin-bottom: calc(-1 * var(--space-1));
164
+ }
165
+
166
+ ._previewImage_1vdfw_10 {
159
167
  object-fit: cover;
168
+ width: 100%;
169
+ max-height: 150px;
170
+ overflow: hidden !important;
171
+ border-radius: max(var(--radius-full), var(--radius-4));
160
172
  cursor: pointer;
161
173
  }
162
174
 
163
- ._nameContainer_ebhyt_9 {
164
- width: 80%;
175
+ ._fileSizeText_1vdfw_19 {
176
+ white-space: nowrap;
177
+ margin-right: var(--space-2);
165
178
  }
166
179
 
167
- @media only screen and (min-width: 768px) {
168
- ._hasPreview_ebhyt_14 {
169
- max-width: 250px;
170
- }
180
+ ._nameContainer_1vdfw_24 {
181
+ width: calc(100% - var(--space-6));
171
182
  }
172
183
 
173
- ._useEllipsis_ebhyt_19 {
184
+ ._useEllipsis_1vdfw_28 {
174
185
  overflow: hidden;
175
186
  white-space: nowrap;
176
187
  text-overflow: ellipsis;
@@ -198,18 +209,18 @@
198
209
 
199
210
  ._addSectionButton_an5ff_5 {
200
211
  margin-bottom: var(--space-4);
201
- }._description_o5qyx_1 {
212
+ }._description_6795p_1 {
202
213
  white-space: pre-line;
203
214
  }
204
215
 
205
- ._floatingButtonContainer_o5qyx_5 {
216
+ ._floatingButtonContainer_6795p_5 {
206
217
  position: sticky;
207
218
  bottom: 0;
208
219
  padding-bottom: 10px;
209
220
  padding-right: 10px;
210
221
  }
211
222
 
212
- ._FullScreenImageContainer_o5qyx_12 {
223
+ ._FullScreenImageContainer_6795p_12 {
213
224
  position: fixed;
214
225
  top: 0;
215
226
  left: 0;
@@ -219,7 +230,8 @@
219
230
  background-color: rgba(0, 0, 0, 0.85);
220
231
  }
221
232
 
222
- ._TopBarContainer_o5qyx_22 {
233
+ ._TopBarContainer_6795p_22 {
234
+ background-color: var(--color-background);
223
235
  position: fixed;
224
236
  top: 0;
225
237
  left: 0;
@@ -227,18 +239,18 @@
227
239
  z-index: 5001;
228
240
  }
229
241
 
230
- ._fileName_o5qyx_30 {
242
+ ._fileName_6795p_31 {
231
243
  flex-grow: 1;
232
244
  text-align: center;
233
245
  }
234
246
 
235
- ._longIconButton_o5qyx_35 {
247
+ ._longIconButton_6795p_36 {
236
248
  font-size: 0.8em;
237
249
  min-width: 50px;
238
250
  margin: 10px;
239
251
  }
240
252
 
241
- ._previewImage_o5qyx_41 {
253
+ ._previewImage_6795p_42 {
242
254
  object-fit: cover;
243
255
  width: min(300px, 100%);
244
256
  height: 100px;
@@ -246,7 +258,7 @@
246
258
  cursor: pointer;
247
259
  }
248
260
 
249
- ._FullScreenImage_o5qyx_12 {
261
+ ._FullScreenImage_6795p_12 {
250
262
  position: absolute;
251
263
  top: 50%;
252
264
  left: 50%;
@@ -257,62 +269,62 @@
257
269
  z-index: 5001;
258
270
  }
259
271
 
260
- ._popoverInputsContainer_o5qyx_60 {
272
+ ._popoverInputsContainer_6795p_61 {
261
273
  max-width: 240px;
262
274
  }
263
275
 
264
- ._imageContainer_o5qyx_64 {
276
+ ._imageContainer_6795p_65 {
265
277
  position: relative;
266
278
  display: inline-block;
267
279
  width: min(300px, 100%);
268
280
  }
269
- ._imageContainer_o5qyx_64:hover:not(:disabled) ._deleteImageButton_o5qyx_69 {
281
+ ._imageContainer_6795p_65:hover:not(:disabled) ._deleteImageButton_6795p_70 {
270
282
  display: flex;
271
283
  }
272
284
 
273
- ._deleteImageButton_o5qyx_69 {
285
+ ._deleteImageButton_6795p_70 {
274
286
  position: absolute;
275
287
  top: var(--space-2);
276
288
  right: var(--space-2);
277
289
  display: none;
278
290
  }
279
291
 
280
- ._typeBadge_o5qyx_80 {
292
+ ._typeBadge_6795p_81 {
281
293
  width: fit-content;
282
294
  height: var(--space-5);
283
295
  }
284
296
 
285
- ._previewInput_o5qyx_85 button[id=upload-input-upload-button] {
297
+ ._previewInput_6795p_86 button[id=upload-input-upload-button] {
286
298
  width: 100%;
287
299
  }
288
300
 
289
- ._directInput_o5qyx_89 {
301
+ ._directInput_6795p_90 {
290
302
  min-width: 40%;
291
303
  margin-left: var(--space-3);
292
304
  }
293
305
 
294
- ._grow_o5qyx_94 {
306
+ ._grow_6795p_95 {
295
307
  display: grid;
296
308
  }
297
309
 
298
- ._grow_o5qyx_94::after {
310
+ ._grow_6795p_95::after {
299
311
  content: attr(data-replicated-value) " ";
300
312
  white-space: pre-wrap;
301
313
  visibility: hidden;
302
314
  }
303
315
 
304
- ._grow_o5qyx_94 > textarea {
316
+ ._grow_6795p_95 > textarea {
305
317
  resize: none;
306
318
  overflow: hidden;
307
319
  min-height: max-content;
308
320
  }
309
321
 
310
- ._grow_o5qyx_94 > input,
311
- ._grow_o5qyx_94::after {
322
+ ._grow_6795p_95 > input,
323
+ ._grow_6795p_95::after {
312
324
  grid-area: 1/1;
313
325
  }
314
326
 
315
- ._grow_o5qyx_94 > textarea,
316
- ._grow_o5qyx_94::after {
327
+ ._grow_6795p_95 > textarea,
328
+ ._grow_6795p_95::after {
317
329
  grid-area: 1/1/2/2;
318
330
  }
@@ -7,7 +7,7 @@ export type Offline<T> = T & {
7
7
  offline_id: string;
8
8
  };
9
9
  export type OfflineIdMapping<TModel extends OfflineModel> = Record<TModel["offline_id"], TModel>;
10
- export type Payload<TModel> = Omit<TModel, "offline_id" | "created_at" | "id">;
10
+ export type Payload<TModel> = Omit<TModel, "offline_id" | "created_at" | "updated_at" | "id">;
11
11
  export type MaybePayload<TModel extends OfflineModel> = Payload<TModel> & {
12
12
  offline_id?: string | null;
13
13
  };
@@ -16,6 +16,7 @@ export interface ComponentStage extends OfflineModel {
16
16
  name: string;
17
17
  description?: string;
18
18
  priority: number;
19
+ user_form?: string;
19
20
  }
20
21
  export type ComponentStagePayload = Omit<ComponentStage, "component_type">;
21
22
  export type CompletedStagesMapping = Record<string, Record<string, string>>;
@@ -4,6 +4,7 @@ import { UploadedFileModel } from '../files';
4
4
  import { WorkspaceIndexedModel } from "./workspace";
5
5
  export type UserForm = Pick<WorkspaceIndexedModel, "index_workspace"> & {
6
6
  favorite: boolean;
7
+ component_type?: string;
7
8
  } & ({
8
9
  owner_organization: number;
9
10
  owner_user: undefined;
@@ -36,8 +37,10 @@ export interface UserFormSubmission extends OfflineModel {
36
37
  created_by: number;
37
38
  created_at: string;
38
39
  submitted_at: string;
40
+ updated_at: string;
39
41
  issue?: string;
40
42
  component?: string;
43
+ component_stage?: string;
41
44
  }
42
45
  export interface UserFormSubmissionAttachment extends OfflineModel, UploadedFileModel {
43
46
  submission: string;
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "Core functionality for Overmap",
4
4
  "author": "Wôrdn Inc.",
5
5
  "license": "UNLICENSED",
6
- "version": "1.0.38",
6
+ "version": "1.0.39",
7
7
  "type": "module",
8
8
  "main": "dist/overmap-core.umd.cjs",
9
9
  "module": "dist/overmap-core.js",
@@ -47,7 +47,7 @@
47
47
  "devDependencies": {
48
48
  "@esbuild-plugins/node-globals-polyfill": "^0.2.3",
49
49
  "@esbuild-plugins/node-modules-polyfill": "^0.2.2",
50
- "@overmap-ai/blocks": "1.0.27",
50
+ "@overmap-ai/blocks": "1.0.23",
51
51
  "@rollup/plugin-commonjs": "^25.0.4",
52
52
  "@storybook/addon-essentials": "7.3.2",
53
53
  "@storybook/addon-interactions": "7.3.2",