@overmap-ai/core 1.0.48-bulk-form-submission.2 → 1.0.48-bulk-form-submission.4

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.
@@ -1,5 +1,5 @@
1
1
  import { BaseApiService } from "./BaseApiService";
2
- import type { OptimisticModelResult } from "../typings";
2
+ import { OptimisticModelResult, OptimisticMultipleModelResult } from "../typings";
3
3
  import { ComponentAttachment, ComponentTypeAttachment, Created, IssueAttachment, MaybeObjectURL, AttachmentPayload, Stored, ProjectAttachment, Project } from "../../typings";
4
4
  /**
5
5
  * Handles creation and caching of attachments
@@ -17,6 +17,7 @@ interface CreatedAttachments {
17
17
  project_attachments: Created<ProjectAttachment>[];
18
18
  }
19
19
  export declare class AttachmentService extends BaseApiService {
20
+ private processPresignedUrls;
20
21
  fetchAll(projectId: number): [StoredAttachments, Promise<CreatedAttachments>];
21
22
  addIssueAttachment(attachmentPayload: AttachmentPayload<IssueAttachment>): Promise<OptimisticModelResult<IssueAttachment>>;
22
23
  addComponentAttachment(attachmentPayload: AttachmentPayload<ComponentAttachment>): Promise<OptimisticModelResult<ComponentAttachment>>;
@@ -25,7 +26,7 @@ export declare class AttachmentService extends BaseApiService {
25
26
  /** the outer Promise is needed to await the hashing of each file, which is required before offline use. If wanting to
26
27
  * attach promise handlers to the request to add the attachment in the backend, apply it on the promise returned from the
27
28
  * OptimisticModelResult. */
28
- attachFilesToIssue(filesToSubmit: File[], issueId: string): Promise<OptimisticModelResult<IssueAttachment>>[];
29
+ attachFilesToIssue(files: File[], issueId: string): Promise<OptimisticMultipleModelResult<IssueAttachment>>;
29
30
  attachFilesToComponent(filesToSubmit: File[], componentId: string): Promise<OptimisticModelResult<ComponentAttachment>>[];
30
31
  attachFilesToComponentType(filesToSubmit: File[], componentTypeId: string): Promise<OptimisticModelResult<ComponentTypeAttachment>>[];
31
32
  attachFilesToProject(filesToSubmit: File[], projectId: Project["id"]): Promise<OptimisticModelResult<ProjectAttachment>>[];
@@ -10,8 +10,8 @@ export declare class UserFormSubmissionService extends BaseApiService {
10
10
  bulkAdd(args: {
11
11
  form_revision: string;
12
12
  values: Record<string, FieldValue>;
13
- component_offline_ids: string[];
14
- }): OptimisticMultipleModelResult<UserFormSubmission>;
13
+ componentOfflineIds: string[];
14
+ }): Promise<OptimisticMultipleModelResult<UserFormSubmission>>;
15
15
  update(submission: Stored<UserFormSubmission>): OptimisticModelResult<UserFormSubmission>;
16
16
  delete(submissionId: string): Promise<undefined>;
17
17
  refreshStore(): Promise<void>;
@@ -28,12 +28,13 @@ export declare const formSubmissionSlice: import("@reduxjs/toolkit").Slice<FormS
28
28
  setFormSubmissionAttachments: (state: import("immer/dist/internal.js").WritableDraft<FormSubmissionState>, action: {
29
29
  payload: UserFormSubmissionAttachment[];
30
30
  }) => void;
31
+ updateFormSubmissionAttachments: (state: import("immer/dist/internal.js").WritableDraft<FormSubmissionState>, action: PayloadAction<Stored<UserFormSubmissionAttachment>[]>) => void;
31
32
  deleteFormSubmissionAttachment: (state: import("immer/dist/internal.js").WritableDraft<FormSubmissionState>, action: PayloadAction<UserFormSubmissionAttachment["offline_id"]>) => void;
32
33
  deleteFormSubmissionAttachments: (state: import("immer/dist/internal.js").WritableDraft<FormSubmissionState>, action: {
33
34
  payload: UserFormSubmissionAttachment["offline_id"][];
34
35
  }) => void;
35
36
  }, "formSubmissions">;
36
- export declare const setFormSubmission: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmission>, "formSubmissions/setFormSubmission">, setFormSubmissions: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmission>[], "formSubmissions/setFormSubmissions">, addFormSubmission: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmission>, "formSubmissions/addFormSubmission">, addFormSubmissions: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmission>[], "formSubmissions/addFormSubmissions">, updateFormSubmission: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmission>, "formSubmissions/updateFormSubmission">, updateFormSubmissions: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmission>[], "formSubmissions/updateFormSubmissions">, deleteFormSubmission: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "formSubmissions/deleteFormSubmission">, deleteFormSubmissions: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "formSubmissions/deleteFormSubmissions">, addFormSubmissionAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormSubmissionAttachment, "formSubmissions/addFormSubmissionAttachment">, addFormSubmissionAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormSubmissionAttachment[], "formSubmissions/addFormSubmissionAttachments">, setFormSubmissionAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormSubmissionAttachment[], "formSubmissions/setFormSubmissionAttachments">, deleteFormSubmissionAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "formSubmissions/deleteFormSubmissionAttachment">, deleteFormSubmissionAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "formSubmissions/deleteFormSubmissionAttachments">;
37
+ export declare const setFormSubmission: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmission>, "formSubmissions/setFormSubmission">, setFormSubmissions: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmission>[], "formSubmissions/setFormSubmissions">, addFormSubmission: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmission>, "formSubmissions/addFormSubmission">, addFormSubmissions: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmission>[], "formSubmissions/addFormSubmissions">, updateFormSubmission: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmission>, "formSubmissions/updateFormSubmission">, updateFormSubmissions: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmission>[], "formSubmissions/updateFormSubmissions">, deleteFormSubmission: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "formSubmissions/deleteFormSubmission">, deleteFormSubmissions: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "formSubmissions/deleteFormSubmissions">, addFormSubmissionAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormSubmissionAttachment, "formSubmissions/addFormSubmissionAttachment">, addFormSubmissionAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormSubmissionAttachment[], "formSubmissions/addFormSubmissionAttachments">, setFormSubmissionAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserFormSubmissionAttachment[], "formSubmissions/setFormSubmissionAttachments">, updateFormSubmissionAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<UserFormSubmissionAttachment>[], "formSubmissions/updateFormSubmissionAttachments">, deleteFormSubmissionAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "formSubmissions/deleteFormSubmissionAttachment">, deleteFormSubmissionAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "formSubmissions/deleteFormSubmissionAttachments">;
37
38
  export declare const selectFormSubmissionsMapping: Selector<FormSubmissionState["formSubmissions"]>;
38
39
  export declare const selectFormSubmissions: Selector<Stored<UserFormSubmission>[]>;
39
40
  export declare const selectFormSubmission: SelectorWithArgs<string, Stored<UserFormSubmission>>;
@@ -14,7 +14,7 @@ export * from "./projectFileSlice";
14
14
  export * from "./projectSlice";
15
15
  export * from "./rehydratedSlice";
16
16
  export * from "./settingsSlice";
17
- export * from "./formSlice.ts";
17
+ export * from "./formSlice";
18
18
  export * from "./formSubmissionSlice";
19
19
  export * from "./formRevisionSlice";
20
20
  export * from "./userSlice";
@@ -59,11 +59,19 @@ export declare const issueSlice: import("@reduxjs/toolkit").Slice<IssueState, {
59
59
  payload: Submitted<IssueAttachment>;
60
60
  type: string;
61
61
  }) => void;
62
+ updateIssueAttachments: (state: IssueState, action: {
63
+ payload: Submitted<IssueAttachment>[];
64
+ type: string;
65
+ }) => void;
62
66
  removeIssue: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string>) => void;
63
67
  removeIssueAttachment: (state: IssueState, action: {
64
68
  payload: string;
65
69
  type: string;
66
70
  }) => void;
71
+ removeIssueAttachments: (state: IssueState, action: {
72
+ payload: string[];
73
+ type: string;
74
+ }) => void;
67
75
  removeIssueUpdate: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string>) => void;
68
76
  removeIssueUpdates: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string[]>) => void;
69
77
  removeAttachmentsOfIssue: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string>) => void;
@@ -85,7 +93,7 @@ export declare const issueSlice: import("@reduxjs/toolkit").Slice<IssueState, {
85
93
  resetRecentIssues: (state: import("immer/dist/internal.js").WritableDraft<IssueState>) => void;
86
94
  removeRecentIssue: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string>) => void;
87
95
  }, "issues">;
88
- export declare const addIssueAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>, "issues/addIssueAttachment">, addIssueAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>[], "issues/addIssueAttachments">, addIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<Issue>, "issues/addIssue">, addIssueUpdate: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueUpdate>, "issues/addIssueUpdate">, addIssueUpdates: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueUpdate>[], "issues/addIssueUpdates">, addOrReplaceIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueComment>, "issues/addOrReplaceIssueComment">, addToRecentIssues: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/addToRecentIssues">, cleanRecentIssues: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"issues/cleanRecentIssues">, removeIssueAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueAttachment">, removeAttachmentsOfIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeAttachmentsOfIssue">, removeIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssue">, removeIssueUpdate: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueUpdate">, removeIssueUpdates: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "issues/removeIssueUpdates">, removeRecentIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeRecentIssue">, resetRecentIssues: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"issues/resetRecentIssues">, setActiveIssueId: import("@reduxjs/toolkit").ActionCreatorWithPayload<string | null, "issues/setActiveIssueId">, setIssueAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<IssueAttachment>[], "issues/setIssueAttachments">, setIssueUpdates: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<IssueUpdate>[], "issues/setIssueUpdates">, setIssues: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<Issue>[], "issues/setIssues">, setVisibleStatuses: import("@reduxjs/toolkit").ActionCreatorWithPayload<IssueStatus[], "issues/setVisibleStatuses">, setVisibleUserIds: import("@reduxjs/toolkit").ActionCreatorWithPayload<(number | null)[], "issues/setVisibleUserIds">, updateIssueAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>, "issues/updateIssueAttachment">, updateIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<Partial<Issue>>, "issues/updateIssue">, addIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueComment>, "issues/addIssueComment">, addIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueComment>[], "issues/addIssueComments">, setIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<IssueComment>, "issues/setIssueComment">, setIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<IssueComment>[], "issues/setIssueComments">, removeIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueComment">, removeIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "issues/removeIssueComments">;
96
+ export declare const addIssueAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>, "issues/addIssueAttachment">, addIssueAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>[], "issues/addIssueAttachments">, addIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<Issue>, "issues/addIssue">, addIssueUpdate: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueUpdate>, "issues/addIssueUpdate">, addIssueUpdates: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueUpdate>[], "issues/addIssueUpdates">, addOrReplaceIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueComment>, "issues/addOrReplaceIssueComment">, addToRecentIssues: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/addToRecentIssues">, cleanRecentIssues: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"issues/cleanRecentIssues">, removeIssueAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueAttachment">, removeIssueAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "issues/removeIssueAttachments">, removeAttachmentsOfIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeAttachmentsOfIssue">, removeIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssue">, removeIssueUpdate: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueUpdate">, removeIssueUpdates: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "issues/removeIssueUpdates">, removeRecentIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeRecentIssue">, resetRecentIssues: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"issues/resetRecentIssues">, setActiveIssueId: import("@reduxjs/toolkit").ActionCreatorWithPayload<string | null, "issues/setActiveIssueId">, setIssueAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<IssueAttachment>[], "issues/setIssueAttachments">, setIssueUpdates: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<IssueUpdate>[], "issues/setIssueUpdates">, setIssues: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<Issue>[], "issues/setIssues">, setVisibleStatuses: import("@reduxjs/toolkit").ActionCreatorWithPayload<IssueStatus[], "issues/setVisibleStatuses">, setVisibleUserIds: import("@reduxjs/toolkit").ActionCreatorWithPayload<(number | null)[], "issues/setVisibleUserIds">, updateIssueAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>, "issues/updateIssueAttachment">, updateIssueAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>[], "issues/updateIssueAttachments">, updateIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<Partial<Issue>>, "issues/updateIssue">, addIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueComment>, "issues/addIssueComment">, addIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueComment>[], "issues/addIssueComments">, setIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<IssueComment>, "issues/setIssueComment">, setIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<IssueComment>[], "issues/setIssueComments">, removeIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueComment">, removeIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "issues/removeIssueComments">;
89
97
  export interface IssueFilterArgs {
90
98
  filterByAssignedTo: boolean;
91
99
  filterByStatus: boolean;
@@ -7,6 +7,7 @@ export declare function setAttachments<TAttachment, TState extends AttachmentSta
7
7
  export declare function addAttachment<TAttachment, TState extends AttachmentState<TAttachment>>(state: TState, action: PayloadAction<Submitted<TAttachment>>): void;
8
8
  export declare function addAttachments<TAttachment, TState extends AttachmentState<TAttachment>>(state: TState, action: PayloadAction<Submitted<TAttachment>[]>): void;
9
9
  export declare function updateAttachment<TAttachment, TState extends AttachmentState<TAttachment>>(state: TState, action: PayloadAction<Submitted<TAttachment>>): void;
10
+ export declare function updateAttachments<TAttachment, TState extends AttachmentState<TAttachment>>(state: TState, action: PayloadAction<Submitted<TAttachment>[]>): void;
10
11
  export declare function removeAttachment<TAttachment, TState extends AttachmentState<TAttachment>>(state: TState, action: PayloadAction<string>): void;
11
12
  export declare function removeAttachments<TAttachment, TState extends AttachmentState<TAttachment>>(state: TState, action: PayloadAction<string[]>): void;
12
13
  export {};
@@ -5,7 +5,17 @@ export type MaybeObjectURL<T> = T & {
5
5
  * Represents a file model that has been uploaded to the backend.
6
6
  * A corresponding abstract model exists in the backend (FileModelMixin).
7
7
  */
8
- export type UploadedFileModel = MaybeObjectURL<{
8
+ export type FileModel = MaybeObjectURL<{
9
9
  file_sha1: string;
10
10
  file: string;
11
11
  }>;
12
+ export interface FileWithNameModel extends FileModel {
13
+ file_name: string;
14
+ }
15
+ /** the attributes needed to generate a presigned url for a file that is being attempted to be uploaded */
16
+ export interface FileUploadPayload {
17
+ sha1: string;
18
+ extension: string;
19
+ file_type: string;
20
+ size: number;
21
+ }
@@ -1,23 +1,22 @@
1
1
  import { OfflineModel } from "./base";
2
- import { MaybeObjectURL, UploadedFileModel } from "../files";
2
+ import { MaybeObjectURL, FileModel, FileWithNameModel } from "../files";
3
3
  import { Project } from "./projects";
4
- export interface Attachment extends OfflineModel, UploadedFileModel {
4
+ export interface Attachment extends OfflineModel, FileWithNameModel {
5
5
  description?: string;
6
- file_name: string;
7
6
  file_type: string;
8
7
  submitted_at: string;
9
8
  created_by: number;
10
9
  }
11
- export interface IssueAttachment extends Attachment, UploadedFileModel {
10
+ export interface IssueAttachment extends Attachment {
12
11
  issue: string;
13
12
  }
14
- export interface ComponentAttachment extends Attachment, UploadedFileModel {
13
+ export interface ComponentAttachment extends Attachment {
15
14
  component: string;
16
15
  }
17
- export interface ComponentTypeAttachment extends Attachment, UploadedFileModel {
16
+ export interface ComponentTypeAttachment extends Attachment {
18
17
  component_type: string;
19
18
  }
20
- export interface ProjectAttachment extends Attachment, UploadedFileModel {
19
+ export interface ProjectAttachment extends Attachment {
21
20
  project: Project["id"];
22
21
  }
23
22
  /** to get an AttachmentPayload for a specific type, pass in the given AttachmentType
@@ -25,6 +24,4 @@ export interface ProjectAttachment extends Attachment, UploadedFileModel {
25
24
  export type AttachmentPayload<TAttachment> = Omit<TAttachment, "file" | "submitted_at" | "created_by"> & {
26
25
  file: MaybeObjectURL<File>;
27
26
  };
28
- export interface ProfilePic extends UploadedFileModel {
29
- file: string;
30
- }
27
+ export type ProfilePic = FileModel;
@@ -1,3 +1,4 @@
1
+ import { CSSColor } from "../colors";
1
2
  export interface Model {
2
3
  }
3
4
  export interface OfflineModel extends Model {
@@ -32,3 +33,7 @@ export interface OwnedByUserOrOrganization {
32
33
  user_owner: number;
33
34
  organization_owner: number;
34
35
  }
36
+ export interface IconModel {
37
+ icon: string;
38
+ icon_color: CSSColor;
39
+ }
@@ -1,4 +1,4 @@
1
- import { OfflineModel } from "./base";
1
+ import { IconModel, OfflineModel } from "./base";
2
2
  import { Marker } from "./geo";
3
3
  export interface Component extends OfflineModel {
4
4
  marker: Marker | null;
@@ -6,10 +6,9 @@ export interface Component extends OfflineModel {
6
6
  created_at?: string;
7
7
  label: string | null;
8
8
  }
9
- export interface ComponentType extends OfflineModel {
9
+ export interface ComponentType extends OfflineModel, IconModel {
10
10
  name?: string;
11
11
  description?: string;
12
- icon?: string;
13
12
  }
14
13
  export interface ComponentStage extends OfflineModel {
15
14
  component_type: string;
@@ -1,6 +1,6 @@
1
1
  import { OfflineModel, Payload, SubmittedAtModel } from "./base";
2
2
  import { BaseSerializedObject, FieldValue, ISerializedField } from "../../forms";
3
- import { UploadedFileModel } from '../files';
3
+ import { FileWithNameModel } from '../files';
4
4
  import { WorkspaceIndexedModel } from "./workspace";
5
5
  export type UserForm = Pick<WorkspaceIndexedModel, "index_workspace"> & {
6
6
  favorite: boolean;
@@ -39,14 +39,12 @@ export interface UserFormSubmission extends OfflineModel, SubmittedAtModel {
39
39
  component?: string;
40
40
  component_stage?: string;
41
41
  }
42
- export interface UserFormSubmissionAttachment extends OfflineModel, UploadedFileModel {
42
+ export interface UserFormSubmissionAttachment extends OfflineModel, FileWithNameModel {
43
43
  submission: string;
44
- file_name: string;
45
44
  field_identifier: string;
46
45
  }
47
- export interface UserFormRevisionAttachment extends OfflineModel, UploadedFileModel {
46
+ export interface UserFormRevisionAttachment extends OfflineModel, FileWithNameModel {
48
47
  revision: string;
49
- file_name: string;
50
48
  field_identifier: string;
51
49
  }
52
50
  export type UserFormSubmissionPayload = Omit<Payload<UserFormSubmission>, "created_by" | "submitted_at">;
@@ -1,3 +1,4 @@
1
+ import { FileUploadPayload } from "../typings";
1
2
  export declare const getFileS3Key: (file: File, hash?: string) => Promise<string>;
2
3
  export declare function hashFile(file: Blob): Promise<string>;
3
4
  export declare function getFileIdentifier(file: File): string;
@@ -5,6 +6,7 @@ export declare function getRenamedFile(file: File, newName: string): File & {
5
6
  name: string;
6
7
  };
7
8
  export declare function downloadInMemoryFile(filename: string, text: string): void;
9
+ export declare const constructUploadedFilePayloads: (files: File[]) => Promise<FileUploadPayload[]>;
8
10
  export declare const fileToBlob: (dataUrl: string) => Promise<Blob>;
9
11
  export declare const blobToBase64: (blob: Blob) => Promise<string>;
10
12
  export interface useFileSrcProps {
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.48-bulk-form-submission.2",
6
+ "version": "1.0.48-bulk-form-submission.4",
7
7
  "type": "module",
8
8
  "main": "dist/overmap-core.umd.cjs",
9
9
  "module": "dist/overmap-core.js",