@overmap-ai/core 1.0.58-asset-description.2 → 1.0.58-asset-description.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.
@@ -2,3 +2,4 @@ export * from "./typings";
2
2
  export * from "./builder";
3
3
  export * from "./fields";
4
4
  export * from "./renderer";
5
+ export { validateForm } from "./utils";
@@ -7350,26 +7350,35 @@ class UserFormSubmissionService extends BaseApiService {
7350
7350
  // Note currently the bulkAdd method is specific to form submissions for assets
7351
7351
  // TODO: adapt the support bulk adding to any model type
7352
7352
  async bulkAdd(args) {
7353
- const { formRevision, values: argsValues, assetOfflineIds } = args;
7353
+ const { formRevision, commonFieldValues, fieldValuesByAsset } = args;
7354
7354
  const { store } = this.client;
7355
7355
  const offlineSubmissions = [];
7356
7356
  const offlineAttachments = [];
7357
7357
  const submissionOfflineIds = [];
7358
7358
  const submissionsPayload = [];
7359
7359
  const attachmentsPayload = [];
7360
- const { values, files } = separateFilesFromValues(argsValues);
7360
+ let files = {};
7361
+ const { values: fileSeperatedCommonFieldValues, files: commonFiles } = separateFilesFromValues(commonFieldValues);
7362
+ files = commonFiles;
7361
7363
  const submittedAt = (/* @__PURE__ */ new Date()).toISOString();
7362
7364
  const createdBy = store.getState().userReducer.currentUser.id;
7363
- for (const assetId of assetOfflineIds) {
7365
+ for (const assetId in fieldValuesByAsset) {
7366
+ const { values: fileSeperatedSubmissionSpecificValues, files: submissionSpecificFiles } = separateFilesFromValues(fieldValuesByAsset[assetId] ?? {});
7367
+ files = Object.assign(files, submissionSpecificFiles);
7368
+ const submissionValues = { ...fileSeperatedCommonFieldValues, ...fileSeperatedSubmissionSpecificValues };
7364
7369
  const submission = offline({
7365
7370
  form_revision: formRevision,
7366
- values,
7371
+ values: submissionValues,
7367
7372
  created_by: createdBy,
7368
7373
  submitted_at: submittedAt,
7369
7374
  asset: assetId
7370
7375
  });
7371
7376
  submissionOfflineIds.push(submission.offline_id);
7372
- submissionsPayload.push({ offline_id: submission.offline_id, asset_id: assetId });
7377
+ submissionsPayload.push({
7378
+ offline_id: submission.offline_id,
7379
+ asset_id: assetId,
7380
+ form_data: fileSeperatedSubmissionSpecificValues
7381
+ });
7373
7382
  offlineSubmissions.push(submission);
7374
7383
  for (const [fieldIdentifier, fileArray] of Object.entries(files)) {
7375
7384
  for (const file of fileArray) {
@@ -7410,13 +7419,13 @@ class UserFormSubmissionService extends BaseApiService {
7410
7419
  method: HttpMethod.POST,
7411
7420
  url: `/forms/revisions/${formRevision}/bulk-respond/`,
7412
7421
  payload: {
7413
- form_data: values,
7422
+ form_data: fileSeperatedCommonFieldValues,
7414
7423
  submitted_at: submittedAt,
7415
7424
  submissions: submissionsPayload,
7416
7425
  attachments: attachmentsPayload,
7417
7426
  files: Object.values(filesRecord)
7418
7427
  },
7419
- blockers: assetOfflineIds,
7428
+ blockers: Object.keys(fieldValuesByAsset),
7420
7429
  blocks: submissionOfflineIds
7421
7430
  });
7422
7431
  promise.then(({ submissions, attachments, presigned_urls }) => {
@@ -16715,6 +16724,7 @@ const index = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePropert
16715
16724
  useFieldInput,
16716
16725
  useFieldInputs,
16717
16726
  useFormikInput,
16727
+ validateForm,
16718
16728
  valueIsFile
16719
16729
  }, Symbol.toStringTag, { value: "Module" }));
16720
16730
  export {
@@ -17373,6 +17383,7 @@ export {
17373
17383
  useSDK,
17374
17384
  userReducer,
17375
17385
  userSlice,
17386
+ validateForm,
17376
17387
  valueIsFile,
17377
17388
  warningColor,
17378
17389
  workspaceReducer,