@overmap-ai/core 1.0.71-fields.12 → 1.0.71-fields.2
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/overmap-core.js +188 -182
- package/dist/overmap-core.js.map +1 -1
- package/dist/overmap-core.umd.cjs +188 -182
- package/dist/overmap-core.umd.cjs.map +1 -1
- package/dist/sdk/services/AssetTypeFieldValuesAttachmentService.d.ts +3 -2
- package/dist/sdk/services/AssetTypeFieldValuesService.d.ts +2 -2
- package/dist/sdk/services/FormService.d.ts +2 -2
- package/dist/store/slices/assetTypeFieldValuesSlice.d.ts +0 -1
- package/dist/store/slices/formRevisionSlice.d.ts +2 -1
- package/dist/store/slices/formSlice.d.ts +3 -1
- package/dist/store/slices/formSubmissionSlice.d.ts +2 -0
- package/dist/store/slices/issueTypeFieldsSlice.d.ts +2 -3
- package/package.json +1 -1
|
@@ -2093,6 +2093,17 @@ var __publicField = (obj, key, value) => {
|
|
|
2093
2093
|
}
|
|
2094
2094
|
)
|
|
2095
2095
|
);
|
|
2096
|
+
const selectLatestFormRevisionByForm = toolkit.createSelector([selectFormRevisionMapping], (revisions) => {
|
|
2097
|
+
const latestRevisions = {};
|
|
2098
|
+
for (const revision of Object.values(revisions)) {
|
|
2099
|
+
const formId = revision.form;
|
|
2100
|
+
const currentLatestRevision = latestRevisions[formId];
|
|
2101
|
+
if (!currentLatestRevision || currentLatestRevision.revision < revision.revision) {
|
|
2102
|
+
latestRevisions[formId] = revision;
|
|
2103
|
+
}
|
|
2104
|
+
}
|
|
2105
|
+
return latestRevisions;
|
|
2106
|
+
});
|
|
2096
2107
|
const formRevisionReducer = formRevisionsSlice.reducer;
|
|
2097
2108
|
const formAdapter = createModelAdapter((form) => form.offline_id);
|
|
2098
2109
|
const initialState$n = formAdapter.getInitialState({});
|
|
@@ -2117,9 +2128,6 @@ var __publicField = (obj, key, value) => {
|
|
|
2117
2128
|
const selectForms = toolkit.createSelector([selectFormMapping], (formsMapping) => {
|
|
2118
2129
|
return Object.values(formsMapping);
|
|
2119
2130
|
});
|
|
2120
|
-
const selectFormById = (formId) => (state) => {
|
|
2121
|
-
return state.formReducer.instances[formId];
|
|
2122
|
-
};
|
|
2123
2131
|
const selectFilteredForms = restructureCreateSelectorWithArgs(
|
|
2124
2132
|
toolkit.createSelector(
|
|
2125
2133
|
[
|
|
@@ -2145,6 +2153,15 @@ var __publicField = (obj, key, value) => {
|
|
|
2145
2153
|
{ memoizeOptions: { equalityCheck: shallowEqual } }
|
|
2146
2154
|
)
|
|
2147
2155
|
);
|
|
2156
|
+
const selectFormById = (formId) => (state) => {
|
|
2157
|
+
return state.formReducer.instances[formId];
|
|
2158
|
+
};
|
|
2159
|
+
const selectFormsCount = toolkit.createSelector([selectFormMapping], (formsMapping) => {
|
|
2160
|
+
return Object.keys(formsMapping).length;
|
|
2161
|
+
});
|
|
2162
|
+
const selectGeneralFormCount = toolkit.createSelector([selectFormMapping], (formsMapping) => {
|
|
2163
|
+
return Object.values(formsMapping).length;
|
|
2164
|
+
});
|
|
2148
2165
|
const submissionAdapter = createModelAdapter((submission) => submission.offline_id);
|
|
2149
2166
|
const initialState$m = submissionAdapter.getInitialState({});
|
|
2150
2167
|
const formSubmissionSlice = toolkit.createSlice({
|
|
@@ -2206,6 +2223,43 @@ var __publicField = (obj, key, value) => {
|
|
|
2206
2223
|
}
|
|
2207
2224
|
)
|
|
2208
2225
|
);
|
|
2226
|
+
const selectFormSubmissionsByFormRevisions = toolkit.createSelector([selectFormRevisionMapping, selectFormSubmissions], (revisions, submissions) => {
|
|
2227
|
+
var _a2;
|
|
2228
|
+
const submissionMapping = {};
|
|
2229
|
+
for (const revisionId in revisions) {
|
|
2230
|
+
submissionMapping[revisionId] = [];
|
|
2231
|
+
}
|
|
2232
|
+
for (const submission of submissions) {
|
|
2233
|
+
(_a2 = submissionMapping[submission.form_revision]) == null ? void 0 : _a2.push(submission);
|
|
2234
|
+
}
|
|
2235
|
+
return submissionMapping;
|
|
2236
|
+
});
|
|
2237
|
+
const selectSortedFormSubmissionsOfForm = restructureCreateSelectorWithArgs(
|
|
2238
|
+
toolkit.createSelector(
|
|
2239
|
+
[
|
|
2240
|
+
selectFormRevisionMapping,
|
|
2241
|
+
selectFormSubmissionsByFormRevisions,
|
|
2242
|
+
(_state, formId) => formId
|
|
2243
|
+
],
|
|
2244
|
+
(revisionsMapping, submissionsByRevision, formId) => {
|
|
2245
|
+
const submissionsByFormRevisions = {};
|
|
2246
|
+
for (const revisionId in revisionsMapping) {
|
|
2247
|
+
const revision = revisionsMapping[revisionId];
|
|
2248
|
+
const submissionsOfRevision = submissionsByRevision[revisionId];
|
|
2249
|
+
if (revision && submissionsOfRevision && revision.form === formId) {
|
|
2250
|
+
submissionsByFormRevisions[revisionId] = submissionsOfRevision.sort(
|
|
2251
|
+
(a, b) => a.submitted_at < b.submitted_at ? -1 : 1
|
|
2252
|
+
);
|
|
2253
|
+
}
|
|
2254
|
+
}
|
|
2255
|
+
return Object.entries(submissionsByFormRevisions).sort((a, b) => {
|
|
2256
|
+
const aRevision = revisionsMapping[a[0]];
|
|
2257
|
+
const bRevision = revisionsMapping[b[0]];
|
|
2258
|
+
return formRevisionSortFn(aRevision, bRevision);
|
|
2259
|
+
}).map(([_revisionId, submissions]) => submissions).flat();
|
|
2260
|
+
}
|
|
2261
|
+
)
|
|
2262
|
+
);
|
|
2209
2263
|
const selectFormSubmissionsOfIssue = restructureCreateSelectorWithArgs(
|
|
2210
2264
|
toolkit.createSelector(
|
|
2211
2265
|
[selectFormSubmissions, (_state, issueId) => issueId],
|
|
@@ -2973,56 +3027,12 @@ var __publicField = (obj, key, value) => {
|
|
|
2973
3027
|
)
|
|
2974
3028
|
);
|
|
2975
3029
|
const issueAssociationReducer = issueAssociationSlice.reducer;
|
|
2976
|
-
const issueTypeFieldValuesAdapter = createModelAdapter(
|
|
2977
|
-
(fieldValues) => fieldValues.offline_id
|
|
2978
|
-
);
|
|
2979
|
-
const initialState$7 = issueTypeFieldValuesAdapter.getInitialState({});
|
|
2980
|
-
const issueTypeFieldValuesSlice = toolkit.createSlice({
|
|
2981
|
-
name: "issueTypeFieldValues",
|
|
2982
|
-
initialState: initialState$7,
|
|
2983
|
-
extraReducers: (builder) => builder.addCase("RESET", (state) => Object.assign(state, initialState$7)),
|
|
2984
|
-
reducers: {
|
|
2985
|
-
initializeIssueTypeFieldValues: issueTypeFieldValuesAdapter.initialize,
|
|
2986
|
-
addIssueTypeFieldValues: issueTypeFieldValuesAdapter.addOne,
|
|
2987
|
-
addIssueTypeFieldValuesMany: issueTypeFieldValuesAdapter.addMany,
|
|
2988
|
-
setIssueTypeFieldValues: issueTypeFieldValuesAdapter.setOne,
|
|
2989
|
-
setIssueTypeFieldValuesMany: issueTypeFieldValuesAdapter.setMany,
|
|
2990
|
-
updateIssueTypeFieldValues: issueTypeFieldValuesAdapter.updateOne,
|
|
2991
|
-
updateIssueTypeFieldValuesMany: issueTypeFieldValuesAdapter.updateMany,
|
|
2992
|
-
deleteIssueTypeFieldValues: issueTypeFieldValuesAdapter.deleteOne,
|
|
2993
|
-
deleteIssueTypeFieldValuesMany: issueTypeFieldValuesAdapter.deleteMany
|
|
2994
|
-
}
|
|
2995
|
-
});
|
|
2996
|
-
const {
|
|
2997
|
-
initializeIssueTypeFieldValues,
|
|
2998
|
-
addIssueTypeFieldValues,
|
|
2999
|
-
addIssueTypeFieldValuesMany,
|
|
3000
|
-
setIssueTypeFieldValues,
|
|
3001
|
-
setIssueTypeFieldValuesMany,
|
|
3002
|
-
updateIssueTypeFieldValues,
|
|
3003
|
-
updateIssueTypeFieldValuesMany,
|
|
3004
|
-
deleteIssueTypeFieldValues,
|
|
3005
|
-
deleteIssueTypeFieldValuesMany
|
|
3006
|
-
} = issueTypeFieldValuesSlice.actions;
|
|
3007
|
-
const selectIssueTypeFieldValuesMapping = (state) => state.issueTypeFieldValuesReducer.instances;
|
|
3008
|
-
const selectIssueTypeFieldValues = toolkit.createSelector([selectIssueTypeFieldValuesMapping], (fieldValuesMapping) => {
|
|
3009
|
-
return Object.values(fieldValuesMapping);
|
|
3010
|
-
});
|
|
3011
|
-
const selectIssueTypeFieldValuesOfIssue = restructureCreateSelectorWithArgs(
|
|
3012
|
-
toolkit.createSelector([selectIssueTypeFieldValues, (_state, issueId) => issueId], (fieldValues, issueId) => {
|
|
3013
|
-
return fallbackToEmptyArray(fieldValues.filter((fieldValue) => fieldValue.issue === issueId));
|
|
3014
|
-
})
|
|
3015
|
-
);
|
|
3016
|
-
const selectIssueTypeFieldValuesById = (fieldValuesId) => (state) => {
|
|
3017
|
-
return state.issueTypeFieldValuesReducer.instances[fieldValuesId];
|
|
3018
|
-
};
|
|
3019
|
-
const issueTypeFieldValuesReducer = issueTypeFieldValuesSlice.reducer;
|
|
3020
3030
|
const issueTypeFieldsAdapter = createModelAdapter((fields) => fields.offline_id);
|
|
3021
|
-
const initialState$
|
|
3031
|
+
const initialState$7 = issueTypeFieldsAdapter.getInitialState({});
|
|
3022
3032
|
const issueTypeFieldsSlice = toolkit.createSlice({
|
|
3023
3033
|
name: "issueTypeFields",
|
|
3024
|
-
initialState: initialState$
|
|
3025
|
-
extraReducers: (builder) => builder.addCase("RESET", (state) => Object.assign(state, initialState$
|
|
3034
|
+
initialState: initialState$7,
|
|
3035
|
+
extraReducers: (builder) => builder.addCase("RESET", (state) => Object.assign(state, initialState$7)),
|
|
3026
3036
|
reducers: {
|
|
3027
3037
|
initializeIssueTypeFields: issueTypeFieldsAdapter.initialize,
|
|
3028
3038
|
addIssueTypeFields: issueTypeFieldsAdapter.addOne,
|
|
@@ -3055,26 +3065,59 @@ var __publicField = (obj, key, value) => {
|
|
|
3055
3065
|
return fallbackToEmptyArray(fields.filter((field) => field.issue_type === issueTypeId));
|
|
3056
3066
|
})
|
|
3057
3067
|
);
|
|
3058
|
-
const
|
|
3068
|
+
const selectLatestIssueTypeFieldsOfAssetType = restructureCreateSelectorWithArgs(
|
|
3059
3069
|
toolkit.createSelector([selectIssueTypeFields, (_state, id) => id], (fields, id) => {
|
|
3060
|
-
return fields.filter((field) => field.issue_type === id).sort((a, b) => a.submitted_at
|
|
3070
|
+
return fields.filter((field) => field.issue_type === id).sort((a, b) => a.submitted_at < b.submitted_at ? -1 : 1)[0];
|
|
3061
3071
|
})
|
|
3062
3072
|
);
|
|
3063
|
-
const selectIssueTypeValuesOfIssueType = restructureCreateSelectorWithArgs(
|
|
3064
|
-
toolkit.createSelector(
|
|
3065
|
-
[selectIssueTypeFields, selectIssueTypeFieldValues, (_state, id) => id],
|
|
3066
|
-
(fields, fieldValues, id) => {
|
|
3067
|
-
const fieldsIds = new Set(
|
|
3068
|
-
fields.filter((field) => field.issue_type === id).map((field) => field.offline_id)
|
|
3069
|
-
);
|
|
3070
|
-
return fallbackToEmptyArray(fieldValues.filter((values) => fieldsIds.has(values.fields_revision)));
|
|
3071
|
-
}
|
|
3072
|
-
)
|
|
3073
|
-
);
|
|
3074
3073
|
const selectIssueTypeFieldsById = (fieldsId) => (state) => {
|
|
3075
3074
|
return state.issueTypeFieldsReducer.instances[fieldsId];
|
|
3076
3075
|
};
|
|
3077
3076
|
const issueTypeFieldsReducer = issueTypeFieldsSlice.reducer;
|
|
3077
|
+
const issueTypeFieldValuesAdapter = createModelAdapter(
|
|
3078
|
+
(fieldValues) => fieldValues.offline_id
|
|
3079
|
+
);
|
|
3080
|
+
const initialState$6 = issueTypeFieldValuesAdapter.getInitialState({});
|
|
3081
|
+
const issueTypeFieldValuesSlice = toolkit.createSlice({
|
|
3082
|
+
name: "issueTypeFieldValues",
|
|
3083
|
+
initialState: initialState$6,
|
|
3084
|
+
extraReducers: (builder) => builder.addCase("RESET", (state) => Object.assign(state, initialState$6)),
|
|
3085
|
+
reducers: {
|
|
3086
|
+
initializeIssueTypeFieldValues: issueTypeFieldValuesAdapter.initialize,
|
|
3087
|
+
addIssueTypeFieldValues: issueTypeFieldValuesAdapter.addOne,
|
|
3088
|
+
addIssueTypeFieldValuesMany: issueTypeFieldValuesAdapter.addMany,
|
|
3089
|
+
setIssueTypeFieldValues: issueTypeFieldValuesAdapter.setOne,
|
|
3090
|
+
setIssueTypeFieldValuesMany: issueTypeFieldValuesAdapter.setMany,
|
|
3091
|
+
updateIssueTypeFieldValues: issueTypeFieldValuesAdapter.updateOne,
|
|
3092
|
+
updateIssueTypeFieldValuesMany: issueTypeFieldValuesAdapter.updateMany,
|
|
3093
|
+
deleteIssueTypeFieldValues: issueTypeFieldValuesAdapter.deleteOne,
|
|
3094
|
+
deleteIssueTypeFieldValuesMany: issueTypeFieldValuesAdapter.deleteMany
|
|
3095
|
+
}
|
|
3096
|
+
});
|
|
3097
|
+
const {
|
|
3098
|
+
initializeIssueTypeFieldValues,
|
|
3099
|
+
addIssueTypeFieldValues,
|
|
3100
|
+
addIssueTypeFieldValuesMany,
|
|
3101
|
+
setIssueTypeFieldValues,
|
|
3102
|
+
setIssueTypeFieldValuesMany,
|
|
3103
|
+
updateIssueTypeFieldValues,
|
|
3104
|
+
updateIssueTypeFieldValuesMany,
|
|
3105
|
+
deleteIssueTypeFieldValues,
|
|
3106
|
+
deleteIssueTypeFieldValuesMany
|
|
3107
|
+
} = issueTypeFieldValuesSlice.actions;
|
|
3108
|
+
const selectIssueTypeFieldValuesMapping = (state) => state.issueTypeFieldValuesReducer.instances;
|
|
3109
|
+
const selectIssueTypeFieldValues = toolkit.createSelector([selectIssueTypeFieldValuesMapping], (fieldValuesMapping) => {
|
|
3110
|
+
return Object.values(fieldValuesMapping);
|
|
3111
|
+
});
|
|
3112
|
+
const selectIssueTypeFieldValuesOfIssue = restructureCreateSelectorWithArgs(
|
|
3113
|
+
toolkit.createSelector([selectIssueTypeFieldValues, (_state, issueId) => issueId], (fieldValues, issueId) => {
|
|
3114
|
+
return fallbackToEmptyArray(fieldValues.filter((fieldValue) => fieldValue.issue === issueId));
|
|
3115
|
+
})
|
|
3116
|
+
);
|
|
3117
|
+
const selectIssueTypeFieldValuesById = (fieldValuesId) => (state) => {
|
|
3118
|
+
return state.issueTypeFieldValuesReducer.instances[fieldValuesId];
|
|
3119
|
+
};
|
|
3120
|
+
const issueTypeFieldValuesReducer = issueTypeFieldValuesSlice.reducer;
|
|
3078
3121
|
const issueTypeFieldsAttachmentAdapter = createModelAdapter(
|
|
3079
3122
|
(attachment) => attachment.offline_id
|
|
3080
3123
|
);
|
|
@@ -3217,7 +3260,7 @@ var __publicField = (obj, key, value) => {
|
|
|
3217
3260
|
);
|
|
3218
3261
|
const selectLatestAssetTypeFieldsOfAssetType = restructureCreateSelectorWithArgs(
|
|
3219
3262
|
toolkit.createSelector([selectAssetTypeFields, (_state, id) => id], (fields, id) => {
|
|
3220
|
-
return fields.filter((field) => field.asset_type === id).sort((a, b) => a.submitted_at
|
|
3263
|
+
return fields.filter((field) => field.asset_type === id).sort((a, b) => a.submitted_at < b.submitted_at ? -1 : 1)[0];
|
|
3221
3264
|
})
|
|
3222
3265
|
);
|
|
3223
3266
|
const selectAssetTypeFieldsById = (fieldsId) => (state) => {
|
|
@@ -3264,17 +3307,6 @@ var __publicField = (obj, key, value) => {
|
|
|
3264
3307
|
return fallbackToEmptyArray(fieldValues.filter((fieldValue) => fieldValue.asset === assetId));
|
|
3265
3308
|
})
|
|
3266
3309
|
);
|
|
3267
|
-
const selectAssetTypeValuesOfAssetType = restructureCreateSelectorWithArgs(
|
|
3268
|
-
toolkit.createSelector(
|
|
3269
|
-
[selectAssetTypeFields, selectAssetTypeFieldValues, (_state, id) => id],
|
|
3270
|
-
(fields, fieldValues, id) => {
|
|
3271
|
-
const fieldsIds = new Set(
|
|
3272
|
-
fields.filter((field) => field.asset_type === id).map((field) => field.offline_id)
|
|
3273
|
-
);
|
|
3274
|
-
return fallbackToEmptyArray(fieldValues.filter((values) => fieldsIds.has(values.fields_revision)));
|
|
3275
|
-
}
|
|
3276
|
-
)
|
|
3277
|
-
);
|
|
3278
3310
|
const selectAssetTypeFieldValuesById = (fieldValuesId) => (state) => {
|
|
3279
3311
|
return state.assetTypeFieldValuesReducer.instances[fieldValuesId];
|
|
3280
3312
|
};
|
|
@@ -5266,7 +5298,15 @@ var __publicField = (obj, key, value) => {
|
|
|
5266
5298
|
const promise = this.enqueueRequest({
|
|
5267
5299
|
method: HttpMethod.POST,
|
|
5268
5300
|
url: "/issue-types/",
|
|
5269
|
-
|
|
5301
|
+
// Sending only whats needed here
|
|
5302
|
+
payload: {
|
|
5303
|
+
offline_id: offlineIssueType.offline_id,
|
|
5304
|
+
submitted_at: offlineIssueType.submitted_at,
|
|
5305
|
+
icon: offlineIssueType.icon,
|
|
5306
|
+
color: offlineIssueType.color,
|
|
5307
|
+
name: offlineIssueType.name,
|
|
5308
|
+
description: offlineIssueType.description
|
|
5309
|
+
},
|
|
5270
5310
|
blockers: [],
|
|
5271
5311
|
blocks: [offlineIssueType.offline_id]
|
|
5272
5312
|
});
|
|
@@ -5686,7 +5726,9 @@ var __publicField = (obj, key, value) => {
|
|
|
5686
5726
|
method: HttpMethod.POST,
|
|
5687
5727
|
url: "/forms/",
|
|
5688
5728
|
payload: {
|
|
5689
|
-
|
|
5729
|
+
// Sending exactly what is currently needed for the endpoint
|
|
5730
|
+
offline_id: offlineForm.offline_id,
|
|
5731
|
+
submitted_at: offlineForm.submitted_at,
|
|
5690
5732
|
initial_revision: {
|
|
5691
5733
|
offline_id: offlineFormRevision.offline_id,
|
|
5692
5734
|
submitted_at: offlineFormRevision.submitted_at,
|
|
@@ -5695,7 +5737,10 @@ var __publicField = (obj, key, value) => {
|
|
|
5695
5737
|
fields: offlineFormRevision.fields
|
|
5696
5738
|
}
|
|
5697
5739
|
},
|
|
5698
|
-
blockers: [
|
|
5740
|
+
blockers: [
|
|
5741
|
+
...payload.project ? [payload.project.toString()] : [],
|
|
5742
|
+
...payload.organization ? [payload.organization.toString()] : []
|
|
5743
|
+
],
|
|
5699
5744
|
blocks: [offlineForm.offline_id, offlineFormRevision.offline_id]
|
|
5700
5745
|
});
|
|
5701
5746
|
void formPromise.catch((e) => {
|
|
@@ -6649,8 +6694,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6649
6694
|
file_name: offlineAttachment.file_name,
|
|
6650
6695
|
file_sha1: offlineAttachment.file_sha1,
|
|
6651
6696
|
file_extension: filePayload.extension,
|
|
6652
|
-
description: offlineAttachment.description
|
|
6653
|
-
document: documentId
|
|
6697
|
+
description: offlineAttachment.description
|
|
6654
6698
|
});
|
|
6655
6699
|
sha1ToAttachmentIds[filePayload.sha1].push(offlineAttachment.offline_id);
|
|
6656
6700
|
}
|
|
@@ -7549,39 +7593,24 @@ var __publicField = (obj, key, value) => {
|
|
|
7549
7593
|
return [offlineAssetTypeFieldValues, promise];
|
|
7550
7594
|
}
|
|
7551
7595
|
bulkAdd(payload, batchSize) {
|
|
7552
|
-
var _a2;
|
|
7553
7596
|
const submittedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
7554
7597
|
const { values } = separateFilesFromValues(payload.values);
|
|
7555
|
-
const
|
|
7556
|
-
const
|
|
7557
|
-
|
|
7558
|
-
for (const batch of batches) {
|
|
7559
|
-
const assetTypeFieldValuesPayloads = [];
|
|
7560
|
-
for (const payload2 of batch) {
|
|
7561
|
-
const offlineAssetTypeFieldValues = offline({
|
|
7562
|
-
...payload2,
|
|
7563
|
-
values: separateFilesFromValues(payload2.values).values,
|
|
7564
|
-
created_by: (_a2 = this.client.store.getState().userReducer.currentUser) == null ? void 0 : _a2.id,
|
|
7565
|
-
submitted_at: submittedAt
|
|
7566
|
-
});
|
|
7567
|
-
offlineAssetTypeFieldValuesMany.push(offlineAssetTypeFieldValues);
|
|
7568
|
-
assetTypeFieldValuesPayloads.push({
|
|
7569
|
-
offline_id: offlineAssetTypeFieldValues.offline_id,
|
|
7570
|
-
asset: payload2.asset,
|
|
7571
|
-
fields_revision: payload2.fields_revision,
|
|
7572
|
-
published_at: payload2.published_at,
|
|
7573
|
-
values: offlineAssetTypeFieldValues.values
|
|
7574
|
-
});
|
|
7575
|
-
}
|
|
7576
|
-
batchPayloads.push({
|
|
7598
|
+
const payloadsBatches = chunkArray(payload.payloads, batchSize);
|
|
7599
|
+
const bulkAddPayloads = payloadsBatches.map((batch) => {
|
|
7600
|
+
return {
|
|
7577
7601
|
submitted_at: submittedAt,
|
|
7578
7602
|
values,
|
|
7579
|
-
field_values:
|
|
7580
|
-
|
|
7581
|
-
|
|
7582
|
-
|
|
7603
|
+
field_values: batch.map((payload2) => {
|
|
7604
|
+
const { values: values2 } = separateFilesFromValues(payload2.values);
|
|
7605
|
+
return offline({
|
|
7606
|
+
...payload2,
|
|
7607
|
+
values: values2
|
|
7608
|
+
});
|
|
7609
|
+
})
|
|
7610
|
+
};
|
|
7611
|
+
});
|
|
7583
7612
|
const promises = [];
|
|
7584
|
-
for (const payload2 of
|
|
7613
|
+
for (const payload2 of bulkAddPayloads) {
|
|
7585
7614
|
const assetIds = payload2.field_values.map((x) => x.asset);
|
|
7586
7615
|
const assetTypeFieldsIds = payload2.field_values.map((x) => x.fields_revision);
|
|
7587
7616
|
const assetTypeFieldValuesIds = payload2.field_values.map((x) => x.offline_id);
|
|
@@ -7596,11 +7625,9 @@ var __publicField = (obj, key, value) => {
|
|
|
7596
7625
|
promises.push(promise);
|
|
7597
7626
|
}
|
|
7598
7627
|
void Promise.all(promises).then((results) => {
|
|
7599
|
-
this.dispatch(
|
|
7600
|
-
}).catch(() => {
|
|
7601
|
-
this.dispatch(deleteAssetTypeFieldValuesMany(offlineAssetTypeFieldValuesMany.map((x) => x.offline_id)));
|
|
7628
|
+
this.dispatch(addAssetTypeFieldValuesMany(results.flat()));
|
|
7602
7629
|
});
|
|
7603
|
-
return
|
|
7630
|
+
return promises;
|
|
7604
7631
|
}
|
|
7605
7632
|
update(payload) {
|
|
7606
7633
|
const { store } = this.client;
|
|
@@ -7624,13 +7651,7 @@ var __publicField = (obj, key, value) => {
|
|
|
7624
7651
|
description: "Delete asset type field values",
|
|
7625
7652
|
method: HttpMethod.PATCH,
|
|
7626
7653
|
url: `/asset-type-field-values/${payload.offline_id}/`,
|
|
7627
|
-
payload
|
|
7628
|
-
...payload,
|
|
7629
|
-
values: {
|
|
7630
|
-
...assetTypeFieldValues.values,
|
|
7631
|
-
...values
|
|
7632
|
-
}
|
|
7633
|
-
},
|
|
7654
|
+
payload,
|
|
7634
7655
|
blockers: [
|
|
7635
7656
|
updatedAssetTypeFieldValues.offline_id,
|
|
7636
7657
|
updatedAssetTypeFieldValues.fields_revision,
|
|
@@ -7684,63 +7705,54 @@ var __publicField = (obj, key, value) => {
|
|
|
7684
7705
|
}
|
|
7685
7706
|
}
|
|
7686
7707
|
class AssetTypeFieldValuesAttachmentService extends BaseUploadService {
|
|
7687
|
-
async bulkAdd(payloads
|
|
7708
|
+
async bulkAdd(payloads) {
|
|
7688
7709
|
var _a2;
|
|
7689
7710
|
const submittedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
7690
7711
|
const createdBy = (_a2 = this.client.store.getState().userReducer.currentUser) == null ? void 0 : _a2.id;
|
|
7691
|
-
const
|
|
7712
|
+
const filePayloads = {};
|
|
7692
7713
|
const offlineAssetTypeFieldValuesAttachments = [];
|
|
7693
|
-
const
|
|
7694
|
-
for (const
|
|
7695
|
-
const
|
|
7696
|
-
const
|
|
7697
|
-
|
|
7698
|
-
|
|
7699
|
-
|
|
7700
|
-
|
|
7701
|
-
|
|
7702
|
-
|
|
7703
|
-
|
|
7704
|
-
|
|
7705
|
-
|
|
7706
|
-
file_sha1: filePayload.sha1,
|
|
7707
|
-
created_by: createdBy,
|
|
7708
|
-
field_values: fieldValuesId,
|
|
7709
|
-
submitted_at: submittedAt,
|
|
7710
|
-
field_identifier: fieldIdentifier
|
|
7711
|
-
});
|
|
7712
|
-
offlineAssetTypeFieldValuesAttachments.push(offlineAssetTypeFieldValuesAttachment);
|
|
7713
|
-
const attachmentPayload = {
|
|
7714
|
-
offline_id: offlineAssetTypeFieldValuesAttachment.offline_id,
|
|
7715
|
-
file_name: file.name,
|
|
7716
|
-
file_sha1: filePayload.sha1,
|
|
7717
|
-
file_extension: filePayload.extension,
|
|
7718
|
-
field_identifier: fieldIdentifier,
|
|
7719
|
-
field_values: fieldValuesId
|
|
7720
|
-
};
|
|
7721
|
-
attachmentPayloads.push(attachmentPayload);
|
|
7722
|
-
}
|
|
7723
|
-
batchPayloads.push({
|
|
7714
|
+
const attachmentPayloads = [];
|
|
7715
|
+
for (const payload of payloads) {
|
|
7716
|
+
const { fieldValuesId, fieldIdentifier, file } = payload;
|
|
7717
|
+
const filePayload = await this.getFilePayload(file);
|
|
7718
|
+
if (!(filePayload.sha1 in filePayloads))
|
|
7719
|
+
filePayloads[filePayload.sha1] = filePayload;
|
|
7720
|
+
const offlineAssetTypeFieldValuesAttachment = offline({
|
|
7721
|
+
file: URL.createObjectURL(file),
|
|
7722
|
+
file_type: file.type,
|
|
7723
|
+
file_name: file.name,
|
|
7724
|
+
file_sha1: filePayload.sha1,
|
|
7725
|
+
created_by: createdBy,
|
|
7726
|
+
field_values: fieldValuesId,
|
|
7724
7727
|
submitted_at: submittedAt,
|
|
7725
|
-
|
|
7726
|
-
files: Object.values(filePayloads)
|
|
7728
|
+
field_identifier: fieldIdentifier
|
|
7727
7729
|
});
|
|
7730
|
+
offlineAssetTypeFieldValuesAttachments.push(offlineAssetTypeFieldValuesAttachment);
|
|
7731
|
+
const attachmentPayload = {
|
|
7732
|
+
offline_id: offlineAssetTypeFieldValuesAttachment.offline_id,
|
|
7733
|
+
file_name: file.name,
|
|
7734
|
+
file_sha1: filePayload.sha1,
|
|
7735
|
+
file_extension: filePayload.extension,
|
|
7736
|
+
field_identifier: fieldIdentifier,
|
|
7737
|
+
field_values: fieldValuesId
|
|
7738
|
+
};
|
|
7739
|
+
attachmentPayloads.push(attachmentPayload);
|
|
7728
7740
|
}
|
|
7729
7741
|
this.dispatch(addAssetTypeFieldValuesAttachments(offlineAssetTypeFieldValuesAttachments));
|
|
7730
|
-
const
|
|
7731
|
-
|
|
7732
|
-
|
|
7733
|
-
|
|
7734
|
-
|
|
7735
|
-
|
|
7736
|
-
|
|
7737
|
-
|
|
7738
|
-
}
|
|
7742
|
+
const promise = this.enqueueRequest({
|
|
7743
|
+
description: "Add asset type field values attachments",
|
|
7744
|
+
method: HttpMethod.POST,
|
|
7745
|
+
url: "/asset-type-field-values-attachments/bulk/",
|
|
7746
|
+
payload: {
|
|
7747
|
+
submitted_at: submittedAt,
|
|
7748
|
+
attachments: attachmentPayloads,
|
|
7749
|
+
files: Object.values(filePayloads)
|
|
7750
|
+
},
|
|
7751
|
+
blockers: offlineAssetTypeFieldValuesAttachments.map((attachment) => attachment.field_values),
|
|
7752
|
+
blocks: offlineAssetTypeFieldValuesAttachments.map((attachment) => attachment.offline_id)
|
|
7739
7753
|
});
|
|
7740
|
-
|
|
7741
|
-
|
|
7742
|
-
this.processPresignedUrls(res.presigned_urls);
|
|
7743
|
-
const attachments = result.flatMap((res) => res.attachments);
|
|
7754
|
+
promise.then(({ presigned_urls, attachments }) => {
|
|
7755
|
+
this.processPresignedUrls(presigned_urls);
|
|
7744
7756
|
this.dispatch(updateAssetTypeFieldValuesAttachments(attachments));
|
|
7745
7757
|
}).catch((error) => {
|
|
7746
7758
|
this.dispatch(
|
|
@@ -7750,10 +7762,7 @@ var __publicField = (obj, key, value) => {
|
|
|
7750
7762
|
);
|
|
7751
7763
|
throw error;
|
|
7752
7764
|
});
|
|
7753
|
-
return [
|
|
7754
|
-
offlineAssetTypeFieldValuesAttachments,
|
|
7755
|
-
promises.map((promise) => promise.then(({ attachments }) => attachments))
|
|
7756
|
-
];
|
|
7765
|
+
return [offlineAssetTypeFieldValuesAttachments, promise.then(({ attachments }) => attachments)];
|
|
7757
7766
|
}
|
|
7758
7767
|
async bulkDelete(ids) {
|
|
7759
7768
|
const { store } = this.client;
|
|
@@ -7776,7 +7785,7 @@ var __publicField = (obj, key, value) => {
|
|
|
7776
7785
|
}
|
|
7777
7786
|
async refreshStore(projectId) {
|
|
7778
7787
|
const result = await this.enqueueRequest({
|
|
7779
|
-
description: "
|
|
7788
|
+
description: "Gfet asset type field values attachments",
|
|
7780
7789
|
method: HttpMethod.GET,
|
|
7781
7790
|
url: "/asset-type-field-values-attachments/",
|
|
7782
7791
|
queryParams: {
|
|
@@ -8047,13 +8056,7 @@ var __publicField = (obj, key, value) => {
|
|
|
8047
8056
|
description: "Update issue type field values",
|
|
8048
8057
|
method: HttpMethod.PATCH,
|
|
8049
8058
|
url: `/issue-type-field-values/${payload.offline_id}/`,
|
|
8050
|
-
payload
|
|
8051
|
-
...payload,
|
|
8052
|
-
values: {
|
|
8053
|
-
...issueTypeFieldValues.values,
|
|
8054
|
-
...values
|
|
8055
|
-
}
|
|
8056
|
-
},
|
|
8059
|
+
payload,
|
|
8057
8060
|
blockers: [
|
|
8058
8061
|
updatedIssueTypeFieldValues.offline_id,
|
|
8059
8062
|
updatedIssueTypeFieldValues.fields_revision,
|
|
@@ -8534,7 +8537,6 @@ var __publicField = (obj, key, value) => {
|
|
|
8534
8537
|
exports2.selectAssetTypeFieldsMapping = selectAssetTypeFieldsMapping;
|
|
8535
8538
|
exports2.selectAssetTypeFieldsOfAssetType = selectAssetTypeFieldsOfAssetType;
|
|
8536
8539
|
exports2.selectAssetTypeStagesMapping = selectAssetTypeStagesMapping;
|
|
8537
|
-
exports2.selectAssetTypeValuesOfAssetType = selectAssetTypeValuesOfAssetType;
|
|
8538
8540
|
exports2.selectAssetTypes = selectAssetTypes;
|
|
8539
8541
|
exports2.selectAssetTypesByIds = selectAssetTypesByIds;
|
|
8540
8542
|
exports2.selectAssetTypesMapping = selectAssetTypesMapping;
|
|
@@ -8592,11 +8594,14 @@ var __publicField = (obj, key, value) => {
|
|
|
8592
8594
|
exports2.selectFormSubmissionAttachmentsMapping = selectFormSubmissionAttachmentsMapping;
|
|
8593
8595
|
exports2.selectFormSubmissionById = selectFormSubmissionById;
|
|
8594
8596
|
exports2.selectFormSubmissions = selectFormSubmissions;
|
|
8597
|
+
exports2.selectFormSubmissionsByFormRevisions = selectFormSubmissionsByFormRevisions;
|
|
8595
8598
|
exports2.selectFormSubmissionsMapping = selectFormSubmissionsMapping;
|
|
8596
8599
|
exports2.selectFormSubmissionsOfAsset = selectFormSubmissionsOfAsset;
|
|
8597
8600
|
exports2.selectFormSubmissionsOfForm = selectFormSubmissionsOfForm;
|
|
8598
8601
|
exports2.selectFormSubmissionsOfIssue = selectFormSubmissionsOfIssue;
|
|
8599
8602
|
exports2.selectForms = selectForms;
|
|
8603
|
+
exports2.selectFormsCount = selectFormsCount;
|
|
8604
|
+
exports2.selectGeneralFormCount = selectGeneralFormCount;
|
|
8600
8605
|
exports2.selectGeoImageById = selectGeoImageById;
|
|
8601
8606
|
exports2.selectGeoImageMapping = selectGeoImageMapping;
|
|
8602
8607
|
exports2.selectGeoImages = selectGeoImages;
|
|
@@ -8633,7 +8638,6 @@ var __publicField = (obj, key, value) => {
|
|
|
8633
8638
|
exports2.selectIssueTypeFieldsMapping = selectIssueTypeFieldsMapping;
|
|
8634
8639
|
exports2.selectIssueTypeFieldsOfIssueType = selectIssueTypeFieldsOfIssueType;
|
|
8635
8640
|
exports2.selectIssueTypeMapping = selectIssueTypeMapping;
|
|
8636
|
-
exports2.selectIssueTypeValuesOfIssueType = selectIssueTypeValuesOfIssueType;
|
|
8637
8641
|
exports2.selectIssueTypes = selectIssueTypes;
|
|
8638
8642
|
exports2.selectIssueTypesByIds = selectIssueTypesByIds;
|
|
8639
8643
|
exports2.selectIssueTypesOfOrganization = selectIssueTypesOfOrganization;
|
|
@@ -8643,8 +8647,9 @@ var __publicField = (obj, key, value) => {
|
|
|
8643
8647
|
exports2.selectIssuesOfIssueType = selectIssuesOfIssueType;
|
|
8644
8648
|
exports2.selectIssuesOfIssueTypeCount = selectIssuesOfIssueTypeCount;
|
|
8645
8649
|
exports2.selectLatestAssetTypeFieldsOfAssetType = selectLatestAssetTypeFieldsOfAssetType;
|
|
8650
|
+
exports2.selectLatestFormRevisionByForm = selectLatestFormRevisionByForm;
|
|
8646
8651
|
exports2.selectLatestFormRevisionOfForm = selectLatestFormRevisionOfForm;
|
|
8647
|
-
exports2.
|
|
8652
|
+
exports2.selectLatestIssueTypeFieldsOfAssetType = selectLatestIssueTypeFieldsOfAssetType;
|
|
8648
8653
|
exports2.selectLatestRetryTime = selectLatestRetryTime;
|
|
8649
8654
|
exports2.selectLicense = selectLicense;
|
|
8650
8655
|
exports2.selectLicenseForProject = selectLicenseForProject;
|
|
@@ -8681,6 +8686,7 @@ var __publicField = (obj, key, value) => {
|
|
|
8681
8686
|
exports2.selectProjectsOfOrganization = selectProjectsOfOrganization;
|
|
8682
8687
|
exports2.selectRehydrated = selectRehydrated;
|
|
8683
8688
|
exports2.selectRootDocuments = selectRootDocuments;
|
|
8689
|
+
exports2.selectSortedFormSubmissionsOfForm = selectSortedFormSubmissionsOfForm;
|
|
8684
8690
|
exports2.selectSortedOrganizationUsers = selectSortedOrganizationUsers;
|
|
8685
8691
|
exports2.selectSortedProjectUsers = selectSortedProjectUsers;
|
|
8686
8692
|
exports2.selectStageFormIdsFromStageIds = selectStageFormIdsFromStageIds;
|