@overmap-ai/core 1.0.71-fields.1 → 1.0.71-fields.10
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 +184 -174
- package/dist/overmap-core.js.map +1 -1
- package/dist/overmap-core.umd.cjs +184 -174
- package/dist/overmap-core.umd.cjs.map +1 -1
- package/dist/sdk/services/AssetTypeFieldValuesAttachmentService.d.ts +2 -3
- 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 +1 -0
- package/dist/store/slices/assetTypeFieldsSlice.d.ts +1 -0
- package/dist/store/slices/formRevisionSlice.d.ts +1 -2
- package/dist/store/slices/formSlice.d.ts +1 -3
- package/dist/store/slices/formSubmissionSlice.d.ts +0 -2
- package/dist/store/slices/issueTypeFieldsSlice.d.ts +3 -1
- package/package.json +1 -1
|
@@ -2093,17 +2093,6 @@ 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
|
-
});
|
|
2107
2096
|
const formRevisionReducer = formRevisionsSlice.reducer;
|
|
2108
2097
|
const formAdapter = createModelAdapter((form) => form.offline_id);
|
|
2109
2098
|
const initialState$n = formAdapter.getInitialState({});
|
|
@@ -2128,6 +2117,9 @@ var __publicField = (obj, key, value) => {
|
|
|
2128
2117
|
const selectForms = toolkit.createSelector([selectFormMapping], (formsMapping) => {
|
|
2129
2118
|
return Object.values(formsMapping);
|
|
2130
2119
|
});
|
|
2120
|
+
const selectFormById = (formId) => (state) => {
|
|
2121
|
+
return state.formReducer.instances[formId];
|
|
2122
|
+
};
|
|
2131
2123
|
const selectFilteredForms = restructureCreateSelectorWithArgs(
|
|
2132
2124
|
toolkit.createSelector(
|
|
2133
2125
|
[
|
|
@@ -2153,15 +2145,6 @@ var __publicField = (obj, key, value) => {
|
|
|
2153
2145
|
{ memoizeOptions: { equalityCheck: shallowEqual } }
|
|
2154
2146
|
)
|
|
2155
2147
|
);
|
|
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
|
-
});
|
|
2165
2148
|
const submissionAdapter = createModelAdapter((submission) => submission.offline_id);
|
|
2166
2149
|
const initialState$m = submissionAdapter.getInitialState({});
|
|
2167
2150
|
const formSubmissionSlice = toolkit.createSlice({
|
|
@@ -2223,43 +2206,6 @@ var __publicField = (obj, key, value) => {
|
|
|
2223
2206
|
}
|
|
2224
2207
|
)
|
|
2225
2208
|
);
|
|
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
|
-
);
|
|
2263
2209
|
const selectFormSubmissionsOfIssue = restructureCreateSelectorWithArgs(
|
|
2264
2210
|
toolkit.createSelector(
|
|
2265
2211
|
[selectFormSubmissions, (_state, issueId) => issueId],
|
|
@@ -3027,56 +2973,14 @@ var __publicField = (obj, key, value) => {
|
|
|
3027
2973
|
)
|
|
3028
2974
|
);
|
|
3029
2975
|
const issueAssociationReducer = issueAssociationSlice.reducer;
|
|
3030
|
-
const issueTypeFieldsAdapter = createModelAdapter((fields) => fields.offline_id);
|
|
3031
|
-
const initialState$7 = issueTypeFieldsAdapter.getInitialState({});
|
|
3032
|
-
const issueTypeFieldsSlice = toolkit.createSlice({
|
|
3033
|
-
name: "issueTypeFields",
|
|
3034
|
-
initialState: initialState$7,
|
|
3035
|
-
extraReducers: (builder) => builder.addCase("RESET", (state) => Object.assign(state, initialState$7)),
|
|
3036
|
-
reducers: {
|
|
3037
|
-
initializeIssueTypeFields: issueTypeFieldsAdapter.initialize,
|
|
3038
|
-
addIssueTypeFields: issueTypeFieldsAdapter.addOne,
|
|
3039
|
-
addIssueTypeFieldsMany: issueTypeFieldsAdapter.addMany,
|
|
3040
|
-
setIssueTypeFields: issueTypeFieldsAdapter.setOne,
|
|
3041
|
-
setIssueTypeFieldsMany: issueTypeFieldsAdapter.setMany,
|
|
3042
|
-
updateIssueTypeFields: issueTypeFieldsAdapter.updateOne,
|
|
3043
|
-
updateIssueTypeFieldsMany: issueTypeFieldsAdapter.updateMany,
|
|
3044
|
-
deleteIssueTypeFields: issueTypeFieldsAdapter.deleteOne,
|
|
3045
|
-
deleteIssueTypeFieldsMany: issueTypeFieldsAdapter.deleteMany
|
|
3046
|
-
}
|
|
3047
|
-
});
|
|
3048
|
-
const {
|
|
3049
|
-
initializeIssueTypeFields,
|
|
3050
|
-
addIssueTypeFields,
|
|
3051
|
-
addIssueTypeFieldsMany,
|
|
3052
|
-
setIssueTypeFields,
|
|
3053
|
-
setIssueTypeFieldsMany,
|
|
3054
|
-
updateIssueTypeFields,
|
|
3055
|
-
updateIssueTypeFieldsMany,
|
|
3056
|
-
deleteIssueTypeFields,
|
|
3057
|
-
deleteIssueTypeFieldsMany
|
|
3058
|
-
} = issueTypeFieldsSlice.actions;
|
|
3059
|
-
const selectIssueTypeFieldsMapping = (state) => state.issueTypeFieldsReducer.instances;
|
|
3060
|
-
const selectIssueTypeFields = toolkit.createSelector([selectIssueTypeFieldsMapping], (fieldsMapping) => {
|
|
3061
|
-
return Object.values(fieldsMapping);
|
|
3062
|
-
});
|
|
3063
|
-
const selectIssueTypeFieldsOfIssueType = restructureCreateSelectorWithArgs(
|
|
3064
|
-
toolkit.createSelector([selectIssueTypeFields, (_state, issueTypeId) => issueTypeId], (fields, issueTypeId) => {
|
|
3065
|
-
return fallbackToEmptyArray(fields.filter((field) => field.issue_type === issueTypeId));
|
|
3066
|
-
})
|
|
3067
|
-
);
|
|
3068
|
-
const selectIssueTypeFieldsById = (fieldsId) => (state) => {
|
|
3069
|
-
return state.issueTypeFieldsReducer.instances[fieldsId];
|
|
3070
|
-
};
|
|
3071
|
-
const issueTypeFieldsReducer = issueTypeFieldsSlice.reducer;
|
|
3072
2976
|
const issueTypeFieldValuesAdapter = createModelAdapter(
|
|
3073
2977
|
(fieldValues) => fieldValues.offline_id
|
|
3074
2978
|
);
|
|
3075
|
-
const initialState$
|
|
2979
|
+
const initialState$7 = issueTypeFieldValuesAdapter.getInitialState({});
|
|
3076
2980
|
const issueTypeFieldValuesSlice = toolkit.createSlice({
|
|
3077
2981
|
name: "issueTypeFieldValues",
|
|
3078
|
-
initialState: initialState$
|
|
3079
|
-
extraReducers: (builder) => builder.addCase("RESET", (state) => Object.assign(state, initialState$
|
|
2982
|
+
initialState: initialState$7,
|
|
2983
|
+
extraReducers: (builder) => builder.addCase("RESET", (state) => Object.assign(state, initialState$7)),
|
|
3080
2984
|
reducers: {
|
|
3081
2985
|
initializeIssueTypeFieldValues: issueTypeFieldValuesAdapter.initialize,
|
|
3082
2986
|
addIssueTypeFieldValues: issueTypeFieldValuesAdapter.addOne,
|
|
@@ -3113,6 +3017,64 @@ var __publicField = (obj, key, value) => {
|
|
|
3113
3017
|
return state.issueTypeFieldValuesReducer.instances[fieldValuesId];
|
|
3114
3018
|
};
|
|
3115
3019
|
const issueTypeFieldValuesReducer = issueTypeFieldValuesSlice.reducer;
|
|
3020
|
+
const issueTypeFieldsAdapter = createModelAdapter((fields) => fields.offline_id);
|
|
3021
|
+
const initialState$6 = issueTypeFieldsAdapter.getInitialState({});
|
|
3022
|
+
const issueTypeFieldsSlice = toolkit.createSlice({
|
|
3023
|
+
name: "issueTypeFields",
|
|
3024
|
+
initialState: initialState$6,
|
|
3025
|
+
extraReducers: (builder) => builder.addCase("RESET", (state) => Object.assign(state, initialState$6)),
|
|
3026
|
+
reducers: {
|
|
3027
|
+
initializeIssueTypeFields: issueTypeFieldsAdapter.initialize,
|
|
3028
|
+
addIssueTypeFields: issueTypeFieldsAdapter.addOne,
|
|
3029
|
+
addIssueTypeFieldsMany: issueTypeFieldsAdapter.addMany,
|
|
3030
|
+
setIssueTypeFields: issueTypeFieldsAdapter.setOne,
|
|
3031
|
+
setIssueTypeFieldsMany: issueTypeFieldsAdapter.setMany,
|
|
3032
|
+
updateIssueTypeFields: issueTypeFieldsAdapter.updateOne,
|
|
3033
|
+
updateIssueTypeFieldsMany: issueTypeFieldsAdapter.updateMany,
|
|
3034
|
+
deleteIssueTypeFields: issueTypeFieldsAdapter.deleteOne,
|
|
3035
|
+
deleteIssueTypeFieldsMany: issueTypeFieldsAdapter.deleteMany
|
|
3036
|
+
}
|
|
3037
|
+
});
|
|
3038
|
+
const {
|
|
3039
|
+
initializeIssueTypeFields,
|
|
3040
|
+
addIssueTypeFields,
|
|
3041
|
+
addIssueTypeFieldsMany,
|
|
3042
|
+
setIssueTypeFields,
|
|
3043
|
+
setIssueTypeFieldsMany,
|
|
3044
|
+
updateIssueTypeFields,
|
|
3045
|
+
updateIssueTypeFieldsMany,
|
|
3046
|
+
deleteIssueTypeFields,
|
|
3047
|
+
deleteIssueTypeFieldsMany
|
|
3048
|
+
} = issueTypeFieldsSlice.actions;
|
|
3049
|
+
const selectIssueTypeFieldsMapping = (state) => state.issueTypeFieldsReducer.instances;
|
|
3050
|
+
const selectIssueTypeFields = toolkit.createSelector([selectIssueTypeFieldsMapping], (fieldsMapping) => {
|
|
3051
|
+
return Object.values(fieldsMapping);
|
|
3052
|
+
});
|
|
3053
|
+
const selectIssueTypeFieldsOfIssueType = restructureCreateSelectorWithArgs(
|
|
3054
|
+
toolkit.createSelector([selectIssueTypeFields, (_state, issueTypeId) => issueTypeId], (fields, issueTypeId) => {
|
|
3055
|
+
return fallbackToEmptyArray(fields.filter((field) => field.issue_type === issueTypeId));
|
|
3056
|
+
})
|
|
3057
|
+
);
|
|
3058
|
+
const selectLatestIssueTypeFieldsOfIssueType = restructureCreateSelectorWithArgs(
|
|
3059
|
+
toolkit.createSelector([selectIssueTypeFields, (_state, id) => id], (fields, id) => {
|
|
3060
|
+
return fields.filter((field) => field.issue_type === id).sort((a, b) => a.submitted_at > b.submitted_at ? -1 : 1)[0];
|
|
3061
|
+
})
|
|
3062
|
+
);
|
|
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
|
+
const selectIssueTypeFieldsById = (fieldsId) => (state) => {
|
|
3075
|
+
return state.issueTypeFieldsReducer.instances[fieldsId];
|
|
3076
|
+
};
|
|
3077
|
+
const issueTypeFieldsReducer = issueTypeFieldsSlice.reducer;
|
|
3116
3078
|
const issueTypeFieldsAttachmentAdapter = createModelAdapter(
|
|
3117
3079
|
(attachment) => attachment.offline_id
|
|
3118
3080
|
);
|
|
@@ -3253,6 +3215,11 @@ var __publicField = (obj, key, value) => {
|
|
|
3253
3215
|
return fallbackToEmptyArray(fields.filter((field) => field.asset_type === assetTypeId));
|
|
3254
3216
|
})
|
|
3255
3217
|
);
|
|
3218
|
+
const selectLatestAssetTypeFieldsOfAssetType = restructureCreateSelectorWithArgs(
|
|
3219
|
+
toolkit.createSelector([selectAssetTypeFields, (_state, id) => id], (fields, id) => {
|
|
3220
|
+
return fields.filter((field) => field.asset_type === id).sort((a, b) => a.submitted_at > b.submitted_at ? -1 : 1)[0];
|
|
3221
|
+
})
|
|
3222
|
+
);
|
|
3256
3223
|
const selectAssetTypeFieldsById = (fieldsId) => (state) => {
|
|
3257
3224
|
return state.assetTypeFieldsReducer.instances[fieldsId];
|
|
3258
3225
|
};
|
|
@@ -3297,6 +3264,17 @@ var __publicField = (obj, key, value) => {
|
|
|
3297
3264
|
return fallbackToEmptyArray(fieldValues.filter((fieldValue) => fieldValue.asset === assetId));
|
|
3298
3265
|
})
|
|
3299
3266
|
);
|
|
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
|
+
);
|
|
3300
3278
|
const selectAssetTypeFieldValuesById = (fieldValuesId) => (state) => {
|
|
3301
3279
|
return state.assetTypeFieldValuesReducer.instances[fieldValuesId];
|
|
3302
3280
|
};
|
|
@@ -5288,15 +5266,7 @@ var __publicField = (obj, key, value) => {
|
|
|
5288
5266
|
const promise = this.enqueueRequest({
|
|
5289
5267
|
method: HttpMethod.POST,
|
|
5290
5268
|
url: "/issue-types/",
|
|
5291
|
-
|
|
5292
|
-
payload: {
|
|
5293
|
-
offline_id: offlineIssueType.offline_id,
|
|
5294
|
-
submitted_at: offlineIssueType.submitted_at,
|
|
5295
|
-
icon: offlineIssueType.icon,
|
|
5296
|
-
color: offlineIssueType.color,
|
|
5297
|
-
name: offlineIssueType.name,
|
|
5298
|
-
description: offlineIssueType.description
|
|
5299
|
-
},
|
|
5269
|
+
payload: offlineIssueType,
|
|
5300
5270
|
blockers: [],
|
|
5301
5271
|
blocks: [offlineIssueType.offline_id]
|
|
5302
5272
|
});
|
|
@@ -7583,24 +7553,39 @@ var __publicField = (obj, key, value) => {
|
|
|
7583
7553
|
return [offlineAssetTypeFieldValues, promise];
|
|
7584
7554
|
}
|
|
7585
7555
|
bulkAdd(payload, batchSize) {
|
|
7556
|
+
var _a2;
|
|
7586
7557
|
const submittedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
7587
7558
|
const { values } = separateFilesFromValues(payload.values);
|
|
7588
|
-
const
|
|
7589
|
-
const
|
|
7590
|
-
|
|
7559
|
+
const offlineAssetTypeFieldValuesMany = [];
|
|
7560
|
+
const batches = chunkArray(payload.payloads, batchSize ?? payload.payloads.length);
|
|
7561
|
+
const batchPayloads = [];
|
|
7562
|
+
for (const batch of batches) {
|
|
7563
|
+
const assetTypeFieldValuesPayloads = [];
|
|
7564
|
+
for (const payload2 of batch) {
|
|
7565
|
+
const offlineAssetTypeFieldValues = offline({
|
|
7566
|
+
...payload2,
|
|
7567
|
+
values: separateFilesFromValues(payload2.values).values,
|
|
7568
|
+
created_by: (_a2 = this.client.store.getState().userReducer.currentUser) == null ? void 0 : _a2.id,
|
|
7569
|
+
submitted_at: submittedAt
|
|
7570
|
+
});
|
|
7571
|
+
offlineAssetTypeFieldValuesMany.push(offlineAssetTypeFieldValues);
|
|
7572
|
+
assetTypeFieldValuesPayloads.push({
|
|
7573
|
+
offline_id: offlineAssetTypeFieldValues.offline_id,
|
|
7574
|
+
asset: payload2.asset,
|
|
7575
|
+
fields_revision: payload2.fields_revision,
|
|
7576
|
+
published_at: payload2.published_at,
|
|
7577
|
+
values: offlineAssetTypeFieldValues.values
|
|
7578
|
+
});
|
|
7579
|
+
}
|
|
7580
|
+
batchPayloads.push({
|
|
7591
7581
|
submitted_at: submittedAt,
|
|
7592
7582
|
values,
|
|
7593
|
-
field_values:
|
|
7594
|
-
|
|
7595
|
-
|
|
7596
|
-
|
|
7597
|
-
values: values2
|
|
7598
|
-
});
|
|
7599
|
-
})
|
|
7600
|
-
};
|
|
7601
|
-
});
|
|
7583
|
+
field_values: assetTypeFieldValuesPayloads
|
|
7584
|
+
});
|
|
7585
|
+
}
|
|
7586
|
+
this.dispatch(addAssetTypeFieldValuesMany(offlineAssetTypeFieldValuesMany));
|
|
7602
7587
|
const promises = [];
|
|
7603
|
-
for (const payload2 of
|
|
7588
|
+
for (const payload2 of batchPayloads) {
|
|
7604
7589
|
const assetIds = payload2.field_values.map((x) => x.asset);
|
|
7605
7590
|
const assetTypeFieldsIds = payload2.field_values.map((x) => x.fields_revision);
|
|
7606
7591
|
const assetTypeFieldValuesIds = payload2.field_values.map((x) => x.offline_id);
|
|
@@ -7615,9 +7600,11 @@ var __publicField = (obj, key, value) => {
|
|
|
7615
7600
|
promises.push(promise);
|
|
7616
7601
|
}
|
|
7617
7602
|
void Promise.all(promises).then((results) => {
|
|
7618
|
-
this.dispatch(
|
|
7603
|
+
this.dispatch(updateAssetTypeFieldValuesMany(results.flat()));
|
|
7604
|
+
}).catch(() => {
|
|
7605
|
+
this.dispatch(deleteAssetTypeFieldValuesMany(offlineAssetTypeFieldValuesMany.map((x) => x.offline_id)));
|
|
7619
7606
|
});
|
|
7620
|
-
return promises;
|
|
7607
|
+
return [offlineAssetTypeFieldValuesMany, promises];
|
|
7621
7608
|
}
|
|
7622
7609
|
update(payload) {
|
|
7623
7610
|
const { store } = this.client;
|
|
@@ -7641,7 +7628,13 @@ var __publicField = (obj, key, value) => {
|
|
|
7641
7628
|
description: "Delete asset type field values",
|
|
7642
7629
|
method: HttpMethod.PATCH,
|
|
7643
7630
|
url: `/asset-type-field-values/${payload.offline_id}/`,
|
|
7644
|
-
payload
|
|
7631
|
+
payload: {
|
|
7632
|
+
...payload,
|
|
7633
|
+
values: {
|
|
7634
|
+
...assetTypeFieldValues.values,
|
|
7635
|
+
...values
|
|
7636
|
+
}
|
|
7637
|
+
},
|
|
7645
7638
|
blockers: [
|
|
7646
7639
|
updatedAssetTypeFieldValues.offline_id,
|
|
7647
7640
|
updatedAssetTypeFieldValues.fields_revision,
|
|
@@ -7695,54 +7688,63 @@ var __publicField = (obj, key, value) => {
|
|
|
7695
7688
|
}
|
|
7696
7689
|
}
|
|
7697
7690
|
class AssetTypeFieldValuesAttachmentService extends BaseUploadService {
|
|
7698
|
-
async bulkAdd(payloads) {
|
|
7691
|
+
async bulkAdd(payloads, batchSize) {
|
|
7699
7692
|
var _a2;
|
|
7700
7693
|
const submittedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
7701
7694
|
const createdBy = (_a2 = this.client.store.getState().userReducer.currentUser) == null ? void 0 : _a2.id;
|
|
7702
|
-
const
|
|
7695
|
+
const batches = chunkArray(payloads, batchSize ?? payloads.length);
|
|
7703
7696
|
const offlineAssetTypeFieldValuesAttachments = [];
|
|
7704
|
-
const
|
|
7705
|
-
for (const
|
|
7706
|
-
const
|
|
7707
|
-
const
|
|
7708
|
-
|
|
7709
|
-
|
|
7710
|
-
|
|
7711
|
-
|
|
7712
|
-
|
|
7713
|
-
|
|
7714
|
-
|
|
7715
|
-
|
|
7716
|
-
|
|
7697
|
+
const batchPayloads = [];
|
|
7698
|
+
for (const batch of batches) {
|
|
7699
|
+
const filePayloads = {};
|
|
7700
|
+
const attachmentPayloads = [];
|
|
7701
|
+
for (const payload of batch) {
|
|
7702
|
+
const { fieldValuesId, fieldIdentifier, file } = payload;
|
|
7703
|
+
const filePayload = await this.getFilePayload(file);
|
|
7704
|
+
if (!(filePayload.sha1 in filePayloads))
|
|
7705
|
+
filePayloads[filePayload.sha1] = filePayload;
|
|
7706
|
+
const offlineAssetTypeFieldValuesAttachment = offline({
|
|
7707
|
+
file: URL.createObjectURL(file),
|
|
7708
|
+
file_type: file.type,
|
|
7709
|
+
file_name: file.name,
|
|
7710
|
+
file_sha1: filePayload.sha1,
|
|
7711
|
+
created_by: createdBy,
|
|
7712
|
+
field_values: fieldValuesId,
|
|
7713
|
+
submitted_at: submittedAt,
|
|
7714
|
+
field_identifier: fieldIdentifier
|
|
7715
|
+
});
|
|
7716
|
+
offlineAssetTypeFieldValuesAttachments.push(offlineAssetTypeFieldValuesAttachment);
|
|
7717
|
+
const attachmentPayload = {
|
|
7718
|
+
offline_id: offlineAssetTypeFieldValuesAttachment.offline_id,
|
|
7719
|
+
file_name: file.name,
|
|
7720
|
+
file_sha1: filePayload.sha1,
|
|
7721
|
+
file_extension: filePayload.extension,
|
|
7722
|
+
field_identifier: fieldIdentifier,
|
|
7723
|
+
field_values: fieldValuesId
|
|
7724
|
+
};
|
|
7725
|
+
attachmentPayloads.push(attachmentPayload);
|
|
7726
|
+
}
|
|
7727
|
+
batchPayloads.push({
|
|
7717
7728
|
submitted_at: submittedAt,
|
|
7718
|
-
|
|
7729
|
+
attachments: attachmentPayloads,
|
|
7730
|
+
files: Object.values(filePayloads)
|
|
7719
7731
|
});
|
|
7720
|
-
offlineAssetTypeFieldValuesAttachments.push(offlineAssetTypeFieldValuesAttachment);
|
|
7721
|
-
const attachmentPayload = {
|
|
7722
|
-
offline_id: offlineAssetTypeFieldValuesAttachment.offline_id,
|
|
7723
|
-
file_name: file.name,
|
|
7724
|
-
file_sha1: filePayload.sha1,
|
|
7725
|
-
file_extension: filePayload.extension,
|
|
7726
|
-
field_identifier: fieldIdentifier,
|
|
7727
|
-
field_values: fieldValuesId
|
|
7728
|
-
};
|
|
7729
|
-
attachmentPayloads.push(attachmentPayload);
|
|
7730
7732
|
}
|
|
7731
7733
|
this.dispatch(addAssetTypeFieldValuesAttachments(offlineAssetTypeFieldValuesAttachments));
|
|
7732
|
-
const
|
|
7733
|
-
|
|
7734
|
-
|
|
7735
|
-
|
|
7736
|
-
|
|
7737
|
-
|
|
7738
|
-
|
|
7739
|
-
|
|
7740
|
-
}
|
|
7741
|
-
blockers: offlineAssetTypeFieldValuesAttachments.map((attachment) => attachment.field_values),
|
|
7742
|
-
blocks: offlineAssetTypeFieldValuesAttachments.map((attachment) => attachment.offline_id)
|
|
7734
|
+
const promises = batchPayloads.map((payload) => {
|
|
7735
|
+
return this.enqueueRequest({
|
|
7736
|
+
description: "Add asset type field values attachments",
|
|
7737
|
+
method: HttpMethod.POST,
|
|
7738
|
+
url: "/asset-type-field-values-attachments/bulk/",
|
|
7739
|
+
payload,
|
|
7740
|
+
blockers: payload.attachments.map((payload2) => payload2.field_values),
|
|
7741
|
+
blocks: payload.attachments.map((payload2) => payload2.offline_id)
|
|
7742
|
+
});
|
|
7743
7743
|
});
|
|
7744
|
-
|
|
7745
|
-
|
|
7744
|
+
Promise.all(promises).then((result) => {
|
|
7745
|
+
for (const res of result)
|
|
7746
|
+
this.processPresignedUrls(res.presigned_urls);
|
|
7747
|
+
const attachments = result.flatMap((res) => res.attachments);
|
|
7746
7748
|
this.dispatch(updateAssetTypeFieldValuesAttachments(attachments));
|
|
7747
7749
|
}).catch((error) => {
|
|
7748
7750
|
this.dispatch(
|
|
@@ -7752,7 +7754,10 @@ var __publicField = (obj, key, value) => {
|
|
|
7752
7754
|
);
|
|
7753
7755
|
throw error;
|
|
7754
7756
|
});
|
|
7755
|
-
return [
|
|
7757
|
+
return [
|
|
7758
|
+
offlineAssetTypeFieldValuesAttachments,
|
|
7759
|
+
promises.map((promise) => promise.then(({ attachments }) => attachments))
|
|
7760
|
+
];
|
|
7756
7761
|
}
|
|
7757
7762
|
async bulkDelete(ids) {
|
|
7758
7763
|
const { store } = this.client;
|
|
@@ -7775,7 +7780,7 @@ var __publicField = (obj, key, value) => {
|
|
|
7775
7780
|
}
|
|
7776
7781
|
async refreshStore(projectId) {
|
|
7777
7782
|
const result = await this.enqueueRequest({
|
|
7778
|
-
description: "
|
|
7783
|
+
description: "Get asset type field values attachments",
|
|
7779
7784
|
method: HttpMethod.GET,
|
|
7780
7785
|
url: "/asset-type-field-values-attachments/",
|
|
7781
7786
|
queryParams: {
|
|
@@ -8046,7 +8051,13 @@ var __publicField = (obj, key, value) => {
|
|
|
8046
8051
|
description: "Update issue type field values",
|
|
8047
8052
|
method: HttpMethod.PATCH,
|
|
8048
8053
|
url: `/issue-type-field-values/${payload.offline_id}/`,
|
|
8049
|
-
payload
|
|
8054
|
+
payload: {
|
|
8055
|
+
...payload,
|
|
8056
|
+
values: {
|
|
8057
|
+
...issueTypeFieldValues.values,
|
|
8058
|
+
...values
|
|
8059
|
+
}
|
|
8060
|
+
},
|
|
8050
8061
|
blockers: [
|
|
8051
8062
|
updatedIssueTypeFieldValues.offline_id,
|
|
8052
8063
|
updatedIssueTypeFieldValues.fields_revision,
|
|
@@ -8527,6 +8538,7 @@ var __publicField = (obj, key, value) => {
|
|
|
8527
8538
|
exports2.selectAssetTypeFieldsMapping = selectAssetTypeFieldsMapping;
|
|
8528
8539
|
exports2.selectAssetTypeFieldsOfAssetType = selectAssetTypeFieldsOfAssetType;
|
|
8529
8540
|
exports2.selectAssetTypeStagesMapping = selectAssetTypeStagesMapping;
|
|
8541
|
+
exports2.selectAssetTypeValuesOfAssetType = selectAssetTypeValuesOfAssetType;
|
|
8530
8542
|
exports2.selectAssetTypes = selectAssetTypes;
|
|
8531
8543
|
exports2.selectAssetTypesByIds = selectAssetTypesByIds;
|
|
8532
8544
|
exports2.selectAssetTypesMapping = selectAssetTypesMapping;
|
|
@@ -8584,14 +8596,11 @@ var __publicField = (obj, key, value) => {
|
|
|
8584
8596
|
exports2.selectFormSubmissionAttachmentsMapping = selectFormSubmissionAttachmentsMapping;
|
|
8585
8597
|
exports2.selectFormSubmissionById = selectFormSubmissionById;
|
|
8586
8598
|
exports2.selectFormSubmissions = selectFormSubmissions;
|
|
8587
|
-
exports2.selectFormSubmissionsByFormRevisions = selectFormSubmissionsByFormRevisions;
|
|
8588
8599
|
exports2.selectFormSubmissionsMapping = selectFormSubmissionsMapping;
|
|
8589
8600
|
exports2.selectFormSubmissionsOfAsset = selectFormSubmissionsOfAsset;
|
|
8590
8601
|
exports2.selectFormSubmissionsOfForm = selectFormSubmissionsOfForm;
|
|
8591
8602
|
exports2.selectFormSubmissionsOfIssue = selectFormSubmissionsOfIssue;
|
|
8592
8603
|
exports2.selectForms = selectForms;
|
|
8593
|
-
exports2.selectFormsCount = selectFormsCount;
|
|
8594
|
-
exports2.selectGeneralFormCount = selectGeneralFormCount;
|
|
8595
8604
|
exports2.selectGeoImageById = selectGeoImageById;
|
|
8596
8605
|
exports2.selectGeoImageMapping = selectGeoImageMapping;
|
|
8597
8606
|
exports2.selectGeoImages = selectGeoImages;
|
|
@@ -8628,6 +8637,7 @@ var __publicField = (obj, key, value) => {
|
|
|
8628
8637
|
exports2.selectIssueTypeFieldsMapping = selectIssueTypeFieldsMapping;
|
|
8629
8638
|
exports2.selectIssueTypeFieldsOfIssueType = selectIssueTypeFieldsOfIssueType;
|
|
8630
8639
|
exports2.selectIssueTypeMapping = selectIssueTypeMapping;
|
|
8640
|
+
exports2.selectIssueTypeValuesOfIssueType = selectIssueTypeValuesOfIssueType;
|
|
8631
8641
|
exports2.selectIssueTypes = selectIssueTypes;
|
|
8632
8642
|
exports2.selectIssueTypesByIds = selectIssueTypesByIds;
|
|
8633
8643
|
exports2.selectIssueTypesOfOrganization = selectIssueTypesOfOrganization;
|
|
@@ -8636,8 +8646,9 @@ var __publicField = (obj, key, value) => {
|
|
|
8636
8646
|
exports2.selectIssuesByIds = selectIssuesByIds;
|
|
8637
8647
|
exports2.selectIssuesOfIssueType = selectIssuesOfIssueType;
|
|
8638
8648
|
exports2.selectIssuesOfIssueTypeCount = selectIssuesOfIssueTypeCount;
|
|
8639
|
-
exports2.
|
|
8649
|
+
exports2.selectLatestAssetTypeFieldsOfAssetType = selectLatestAssetTypeFieldsOfAssetType;
|
|
8640
8650
|
exports2.selectLatestFormRevisionOfForm = selectLatestFormRevisionOfForm;
|
|
8651
|
+
exports2.selectLatestIssueTypeFieldsOfIssueType = selectLatestIssueTypeFieldsOfIssueType;
|
|
8641
8652
|
exports2.selectLatestRetryTime = selectLatestRetryTime;
|
|
8642
8653
|
exports2.selectLicense = selectLicense;
|
|
8643
8654
|
exports2.selectLicenseForProject = selectLicenseForProject;
|
|
@@ -8674,7 +8685,6 @@ var __publicField = (obj, key, value) => {
|
|
|
8674
8685
|
exports2.selectProjectsOfOrganization = selectProjectsOfOrganization;
|
|
8675
8686
|
exports2.selectRehydrated = selectRehydrated;
|
|
8676
8687
|
exports2.selectRootDocuments = selectRootDocuments;
|
|
8677
|
-
exports2.selectSortedFormSubmissionsOfForm = selectSortedFormSubmissionsOfForm;
|
|
8678
8688
|
exports2.selectSortedOrganizationUsers = selectSortedOrganizationUsers;
|
|
8679
8689
|
exports2.selectSortedProjectUsers = selectSortedProjectUsers;
|
|
8680
8690
|
exports2.selectStageFormIdsFromStageIds = selectStageFormIdsFromStageIds;
|