@overmap-ai/core 1.0.71-fields.13 → 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 +200 -218
- package/dist/overmap-core.js.map +1 -1
- package/dist/overmap-core.umd.cjs +200 -218
- 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/assetTypeFieldValuesAttachmentSlice.d.ts +1 -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/issueTypeFieldValuesAttachmentSlice.d.ts +1 -2
- 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
|
);
|
|
@@ -3165,20 +3208,6 @@ var __publicField = (obj, key, value) => {
|
|
|
3165
3208
|
return Object.values(attachmentsMapping);
|
|
3166
3209
|
}
|
|
3167
3210
|
);
|
|
3168
|
-
const selectIssueTypeFieldValuesAttachmentById = (attachmentId) => (state) => {
|
|
3169
|
-
return state.issueTypeFieldValuesAttachmentReducer.instances[attachmentId];
|
|
3170
|
-
};
|
|
3171
|
-
const selectIssueTypeFieldValuesAttachmentsByIds = restructureCreateSelectorWithArgs(
|
|
3172
|
-
toolkit.createSelector(
|
|
3173
|
-
[selectIssueTypeFieldValuesAttachmentsMapping, (_, attachmentIds) => attachmentIds],
|
|
3174
|
-
(mapping, attachmentIds) => {
|
|
3175
|
-
const attachmentIdsSet = new Set(attachmentIds);
|
|
3176
|
-
return fallbackToEmptyArray(
|
|
3177
|
-
Object.values(mapping).filter((attachment) => attachmentIdsSet.has(attachment.offline_id))
|
|
3178
|
-
);
|
|
3179
|
-
}
|
|
3180
|
-
)
|
|
3181
|
-
);
|
|
3182
3211
|
const selectAttachmentsOfIssueTypeFieldValues = restructureCreateSelectorWithArgs(
|
|
3183
3212
|
toolkit.createSelector(
|
|
3184
3213
|
[selectIssueTypeFieldValuesAttachments, (_state, fieldValuesId) => fieldValuesId],
|
|
@@ -3187,6 +3216,9 @@ var __publicField = (obj, key, value) => {
|
|
|
3187
3216
|
}
|
|
3188
3217
|
)
|
|
3189
3218
|
);
|
|
3219
|
+
const selectIssueTypeFieldValuesAttachmentById = (attachmentId) => (state) => {
|
|
3220
|
+
return state.issueTypeFieldValuesAttachmentReducer.instances[attachmentId];
|
|
3221
|
+
};
|
|
3190
3222
|
const issueTypeFieldValuesAttachmentReducer = issueTypeFieldValuesAttachmentSlice.reducer;
|
|
3191
3223
|
const assetTypeFieldsAdapter = createModelAdapter((fields) => fields.offline_id);
|
|
3192
3224
|
const initialState$3 = assetTypeFieldsAdapter.getInitialState({});
|
|
@@ -3228,7 +3260,7 @@ var __publicField = (obj, key, value) => {
|
|
|
3228
3260
|
);
|
|
3229
3261
|
const selectLatestAssetTypeFieldsOfAssetType = restructureCreateSelectorWithArgs(
|
|
3230
3262
|
toolkit.createSelector([selectAssetTypeFields, (_state, id) => id], (fields, id) => {
|
|
3231
|
-
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];
|
|
3232
3264
|
})
|
|
3233
3265
|
);
|
|
3234
3266
|
const selectAssetTypeFieldsById = (fieldsId) => (state) => {
|
|
@@ -3275,17 +3307,6 @@ var __publicField = (obj, key, value) => {
|
|
|
3275
3307
|
return fallbackToEmptyArray(fieldValues.filter((fieldValue) => fieldValue.asset === assetId));
|
|
3276
3308
|
})
|
|
3277
3309
|
);
|
|
3278
|
-
const selectAssetTypeValuesOfAssetType = restructureCreateSelectorWithArgs(
|
|
3279
|
-
toolkit.createSelector(
|
|
3280
|
-
[selectAssetTypeFields, selectAssetTypeFieldValues, (_state, id) => id],
|
|
3281
|
-
(fields, fieldValues, id) => {
|
|
3282
|
-
const fieldsIds = new Set(
|
|
3283
|
-
fields.filter((field) => field.asset_type === id).map((field) => field.offline_id)
|
|
3284
|
-
);
|
|
3285
|
-
return fallbackToEmptyArray(fieldValues.filter((values) => fieldsIds.has(values.fields_revision)));
|
|
3286
|
-
}
|
|
3287
|
-
)
|
|
3288
|
-
);
|
|
3289
3310
|
const selectAssetTypeFieldValuesById = (fieldValuesId) => (state) => {
|
|
3290
3311
|
return state.assetTypeFieldValuesReducer.instances[fieldValuesId];
|
|
3291
3312
|
};
|
|
@@ -3375,25 +3396,14 @@ var __publicField = (obj, key, value) => {
|
|
|
3375
3396
|
return Object.values(attachmentsMapping);
|
|
3376
3397
|
}
|
|
3377
3398
|
);
|
|
3378
|
-
const selectAssetTypeFieldValuesAttachmentById = (attachmentId) => (state) => {
|
|
3379
|
-
return state.assetTypeFieldValuesAttachmentReducer.instances[attachmentId];
|
|
3380
|
-
};
|
|
3381
|
-
const selectAssetTypeFieldValuesAttachmentsByIds = restructureCreateSelectorWithArgs(
|
|
3382
|
-
toolkit.createSelector(
|
|
3383
|
-
[selectAssetTypeFieldValuesAttachmentsMapping, (_, attachmentIds) => attachmentIds],
|
|
3384
|
-
(mapping, attachmentIds) => {
|
|
3385
|
-
const attachmentIdsSet = new Set(attachmentIds);
|
|
3386
|
-
return fallbackToEmptyArray(
|
|
3387
|
-
Object.values(mapping).filter((attachment) => attachmentIdsSet.has(attachment.offline_id))
|
|
3388
|
-
);
|
|
3389
|
-
}
|
|
3390
|
-
)
|
|
3391
|
-
);
|
|
3392
3399
|
const selectAttachmentsOfAssetTypeFieldValues = restructureCreateSelectorWithArgs(
|
|
3393
3400
|
toolkit.createSelector([selectAssetTypeFieldValuesAttachments, (_state, id) => id], (attachments, id) => {
|
|
3394
3401
|
return fallbackToEmptyArray(attachments.filter((attachment) => attachment.field_values === id));
|
|
3395
3402
|
})
|
|
3396
3403
|
);
|
|
3404
|
+
const selectAssetTypeFieldValuesAttachmentById = (attachmentId) => (state) => {
|
|
3405
|
+
return state.assetTypeFieldValuesAttachmentReducer.instances[attachmentId];
|
|
3406
|
+
};
|
|
3397
3407
|
const assetTypeFieldValuesAttachmentReducer = assetTypeFieldValuesAttachmentSlice.reducer;
|
|
3398
3408
|
let clientStore;
|
|
3399
3409
|
function setClientStore(store) {
|
|
@@ -5288,7 +5298,15 @@ var __publicField = (obj, key, value) => {
|
|
|
5288
5298
|
const promise = this.enqueueRequest({
|
|
5289
5299
|
method: HttpMethod.POST,
|
|
5290
5300
|
url: "/issue-types/",
|
|
5291
|
-
|
|
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
|
+
},
|
|
5292
5310
|
blockers: [],
|
|
5293
5311
|
blocks: [offlineIssueType.offline_id]
|
|
5294
5312
|
});
|
|
@@ -5708,7 +5726,9 @@ var __publicField = (obj, key, value) => {
|
|
|
5708
5726
|
method: HttpMethod.POST,
|
|
5709
5727
|
url: "/forms/",
|
|
5710
5728
|
payload: {
|
|
5711
|
-
|
|
5729
|
+
// Sending exactly what is currently needed for the endpoint
|
|
5730
|
+
offline_id: offlineForm.offline_id,
|
|
5731
|
+
submitted_at: offlineForm.submitted_at,
|
|
5712
5732
|
initial_revision: {
|
|
5713
5733
|
offline_id: offlineFormRevision.offline_id,
|
|
5714
5734
|
submitted_at: offlineFormRevision.submitted_at,
|
|
@@ -5717,7 +5737,10 @@ var __publicField = (obj, key, value) => {
|
|
|
5717
5737
|
fields: offlineFormRevision.fields
|
|
5718
5738
|
}
|
|
5719
5739
|
},
|
|
5720
|
-
blockers: [
|
|
5740
|
+
blockers: [
|
|
5741
|
+
...payload.project ? [payload.project.toString()] : [],
|
|
5742
|
+
...payload.organization ? [payload.organization.toString()] : []
|
|
5743
|
+
],
|
|
5721
5744
|
blocks: [offlineForm.offline_id, offlineFormRevision.offline_id]
|
|
5722
5745
|
});
|
|
5723
5746
|
void formPromise.catch((e) => {
|
|
@@ -6671,8 +6694,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6671
6694
|
file_name: offlineAttachment.file_name,
|
|
6672
6695
|
file_sha1: offlineAttachment.file_sha1,
|
|
6673
6696
|
file_extension: filePayload.extension,
|
|
6674
|
-
description: offlineAttachment.description
|
|
6675
|
-
document: documentId
|
|
6697
|
+
description: offlineAttachment.description
|
|
6676
6698
|
});
|
|
6677
6699
|
sha1ToAttachmentIds[filePayload.sha1].push(offlineAttachment.offline_id);
|
|
6678
6700
|
}
|
|
@@ -7571,39 +7593,24 @@ var __publicField = (obj, key, value) => {
|
|
|
7571
7593
|
return [offlineAssetTypeFieldValues, promise];
|
|
7572
7594
|
}
|
|
7573
7595
|
bulkAdd(payload, batchSize) {
|
|
7574
|
-
var _a2;
|
|
7575
7596
|
const submittedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
7576
7597
|
const { values } = separateFilesFromValues(payload.values);
|
|
7577
|
-
const
|
|
7578
|
-
const
|
|
7579
|
-
|
|
7580
|
-
for (const batch of batches) {
|
|
7581
|
-
const assetTypeFieldValuesPayloads = [];
|
|
7582
|
-
for (const payload2 of batch) {
|
|
7583
|
-
const offlineAssetTypeFieldValues = offline({
|
|
7584
|
-
...payload2,
|
|
7585
|
-
values: separateFilesFromValues(payload2.values).values,
|
|
7586
|
-
created_by: (_a2 = this.client.store.getState().userReducer.currentUser) == null ? void 0 : _a2.id,
|
|
7587
|
-
submitted_at: submittedAt
|
|
7588
|
-
});
|
|
7589
|
-
offlineAssetTypeFieldValuesMany.push(offlineAssetTypeFieldValues);
|
|
7590
|
-
assetTypeFieldValuesPayloads.push({
|
|
7591
|
-
offline_id: offlineAssetTypeFieldValues.offline_id,
|
|
7592
|
-
asset: payload2.asset,
|
|
7593
|
-
fields_revision: payload2.fields_revision,
|
|
7594
|
-
published_at: payload2.published_at,
|
|
7595
|
-
values: offlineAssetTypeFieldValues.values
|
|
7596
|
-
});
|
|
7597
|
-
}
|
|
7598
|
-
batchPayloads.push({
|
|
7598
|
+
const payloadsBatches = chunkArray(payload.payloads, batchSize);
|
|
7599
|
+
const bulkAddPayloads = payloadsBatches.map((batch) => {
|
|
7600
|
+
return {
|
|
7599
7601
|
submitted_at: submittedAt,
|
|
7600
7602
|
values,
|
|
7601
|
-
field_values:
|
|
7602
|
-
|
|
7603
|
-
|
|
7604
|
-
|
|
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
|
+
});
|
|
7605
7612
|
const promises = [];
|
|
7606
|
-
for (const payload2 of
|
|
7613
|
+
for (const payload2 of bulkAddPayloads) {
|
|
7607
7614
|
const assetIds = payload2.field_values.map((x) => x.asset);
|
|
7608
7615
|
const assetTypeFieldsIds = payload2.field_values.map((x) => x.fields_revision);
|
|
7609
7616
|
const assetTypeFieldValuesIds = payload2.field_values.map((x) => x.offline_id);
|
|
@@ -7618,11 +7625,9 @@ var __publicField = (obj, key, value) => {
|
|
|
7618
7625
|
promises.push(promise);
|
|
7619
7626
|
}
|
|
7620
7627
|
void Promise.all(promises).then((results) => {
|
|
7621
|
-
this.dispatch(
|
|
7622
|
-
}).catch(() => {
|
|
7623
|
-
this.dispatch(deleteAssetTypeFieldValuesMany(offlineAssetTypeFieldValuesMany.map((x) => x.offline_id)));
|
|
7628
|
+
this.dispatch(addAssetTypeFieldValuesMany(results.flat()));
|
|
7624
7629
|
});
|
|
7625
|
-
return
|
|
7630
|
+
return promises;
|
|
7626
7631
|
}
|
|
7627
7632
|
update(payload) {
|
|
7628
7633
|
const { store } = this.client;
|
|
@@ -7646,13 +7651,7 @@ var __publicField = (obj, key, value) => {
|
|
|
7646
7651
|
description: "Delete asset type field values",
|
|
7647
7652
|
method: HttpMethod.PATCH,
|
|
7648
7653
|
url: `/asset-type-field-values/${payload.offline_id}/`,
|
|
7649
|
-
payload
|
|
7650
|
-
...payload,
|
|
7651
|
-
values: {
|
|
7652
|
-
...assetTypeFieldValues.values,
|
|
7653
|
-
...values
|
|
7654
|
-
}
|
|
7655
|
-
},
|
|
7654
|
+
payload,
|
|
7656
7655
|
blockers: [
|
|
7657
7656
|
updatedAssetTypeFieldValues.offline_id,
|
|
7658
7657
|
updatedAssetTypeFieldValues.fields_revision,
|
|
@@ -7706,63 +7705,54 @@ var __publicField = (obj, key, value) => {
|
|
|
7706
7705
|
}
|
|
7707
7706
|
}
|
|
7708
7707
|
class AssetTypeFieldValuesAttachmentService extends BaseUploadService {
|
|
7709
|
-
async bulkAdd(payloads
|
|
7708
|
+
async bulkAdd(payloads) {
|
|
7710
7709
|
var _a2;
|
|
7711
7710
|
const submittedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
7712
7711
|
const createdBy = (_a2 = this.client.store.getState().userReducer.currentUser) == null ? void 0 : _a2.id;
|
|
7713
|
-
const
|
|
7712
|
+
const filePayloads = {};
|
|
7714
7713
|
const offlineAssetTypeFieldValuesAttachments = [];
|
|
7715
|
-
const
|
|
7716
|
-
for (const
|
|
7717
|
-
const
|
|
7718
|
-
const
|
|
7719
|
-
|
|
7720
|
-
|
|
7721
|
-
|
|
7722
|
-
|
|
7723
|
-
|
|
7724
|
-
|
|
7725
|
-
|
|
7726
|
-
|
|
7727
|
-
|
|
7728
|
-
file_sha1: filePayload.sha1,
|
|
7729
|
-
created_by: createdBy,
|
|
7730
|
-
field_values: fieldValuesId,
|
|
7731
|
-
submitted_at: submittedAt,
|
|
7732
|
-
field_identifier: fieldIdentifier
|
|
7733
|
-
});
|
|
7734
|
-
offlineAssetTypeFieldValuesAttachments.push(offlineAssetTypeFieldValuesAttachment);
|
|
7735
|
-
const attachmentPayload = {
|
|
7736
|
-
offline_id: offlineAssetTypeFieldValuesAttachment.offline_id,
|
|
7737
|
-
file_name: file.name,
|
|
7738
|
-
file_sha1: filePayload.sha1,
|
|
7739
|
-
file_extension: filePayload.extension,
|
|
7740
|
-
field_identifier: fieldIdentifier,
|
|
7741
|
-
field_values: fieldValuesId
|
|
7742
|
-
};
|
|
7743
|
-
attachmentPayloads.push(attachmentPayload);
|
|
7744
|
-
}
|
|
7745
|
-
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,
|
|
7746
7727
|
submitted_at: submittedAt,
|
|
7747
|
-
|
|
7748
|
-
files: Object.values(filePayloads)
|
|
7728
|
+
field_identifier: fieldIdentifier
|
|
7749
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);
|
|
7750
7740
|
}
|
|
7751
7741
|
this.dispatch(addAssetTypeFieldValuesAttachments(offlineAssetTypeFieldValuesAttachments));
|
|
7752
|
-
const
|
|
7753
|
-
|
|
7754
|
-
|
|
7755
|
-
|
|
7756
|
-
|
|
7757
|
-
|
|
7758
|
-
|
|
7759
|
-
|
|
7760
|
-
}
|
|
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)
|
|
7761
7753
|
});
|
|
7762
|
-
|
|
7763
|
-
|
|
7764
|
-
this.processPresignedUrls(res.presigned_urls);
|
|
7765
|
-
const attachments = result.flatMap((res) => res.attachments);
|
|
7754
|
+
promise.then(({ presigned_urls, attachments }) => {
|
|
7755
|
+
this.processPresignedUrls(presigned_urls);
|
|
7766
7756
|
this.dispatch(updateAssetTypeFieldValuesAttachments(attachments));
|
|
7767
7757
|
}).catch((error) => {
|
|
7768
7758
|
this.dispatch(
|
|
@@ -7772,16 +7762,13 @@ var __publicField = (obj, key, value) => {
|
|
|
7772
7762
|
);
|
|
7773
7763
|
throw error;
|
|
7774
7764
|
});
|
|
7775
|
-
return [
|
|
7776
|
-
offlineAssetTypeFieldValuesAttachments,
|
|
7777
|
-
promises.map((promise) => promise.then(({ attachments }) => attachments))
|
|
7778
|
-
];
|
|
7765
|
+
return [offlineAssetTypeFieldValuesAttachments, promise.then(({ attachments }) => attachments)];
|
|
7779
7766
|
}
|
|
7780
7767
|
async bulkDelete(ids) {
|
|
7781
7768
|
const { store } = this.client;
|
|
7782
7769
|
const state = store.getState();
|
|
7783
|
-
const
|
|
7784
|
-
this.dispatch(
|
|
7770
|
+
const formSubmissionAttachments = selectFormSubmissionAttachemntsByIds(ids)(state);
|
|
7771
|
+
this.dispatch(deleteFormSubmissionAttachments(ids));
|
|
7785
7772
|
try {
|
|
7786
7773
|
await this.enqueueRequest({
|
|
7787
7774
|
description: "Delete asset type field values attachments",
|
|
@@ -7792,13 +7779,13 @@ var __publicField = (obj, key, value) => {
|
|
|
7792
7779
|
blocks: []
|
|
7793
7780
|
});
|
|
7794
7781
|
} catch (e) {
|
|
7795
|
-
this.dispatch(
|
|
7782
|
+
this.dispatch(addFormSubmissionAttachments(formSubmissionAttachments));
|
|
7796
7783
|
throw e;
|
|
7797
7784
|
}
|
|
7798
7785
|
}
|
|
7799
7786
|
async refreshStore(projectId) {
|
|
7800
7787
|
const result = await this.enqueueRequest({
|
|
7801
|
-
description: "
|
|
7788
|
+
description: "Gfet asset type field values attachments",
|
|
7802
7789
|
method: HttpMethod.GET,
|
|
7803
7790
|
url: "/asset-type-field-values-attachments/",
|
|
7804
7791
|
queryParams: {
|
|
@@ -7988,8 +7975,8 @@ var __publicField = (obj, key, value) => {
|
|
|
7988
7975
|
async bulkDelete(attachmentsIds) {
|
|
7989
7976
|
const { store } = this.client;
|
|
7990
7977
|
const state = store.getState();
|
|
7991
|
-
const
|
|
7992
|
-
this.dispatch(
|
|
7978
|
+
const formSubmissionAttachments = selectFormSubmissionAttachemntsByIds(attachmentsIds)(state);
|
|
7979
|
+
this.dispatch(deleteFormSubmissionAttachments(attachmentsIds));
|
|
7993
7980
|
try {
|
|
7994
7981
|
await this.enqueueRequest({
|
|
7995
7982
|
description: "Delete issue type field values attachments",
|
|
@@ -8000,7 +7987,7 @@ var __publicField = (obj, key, value) => {
|
|
|
8000
7987
|
blocks: []
|
|
8001
7988
|
});
|
|
8002
7989
|
} catch (e) {
|
|
8003
|
-
this.dispatch(
|
|
7990
|
+
this.dispatch(addFormSubmissionAttachments(formSubmissionAttachments));
|
|
8004
7991
|
throw e;
|
|
8005
7992
|
}
|
|
8006
7993
|
}
|
|
@@ -8069,13 +8056,7 @@ var __publicField = (obj, key, value) => {
|
|
|
8069
8056
|
description: "Update issue type field values",
|
|
8070
8057
|
method: HttpMethod.PATCH,
|
|
8071
8058
|
url: `/issue-type-field-values/${payload.offline_id}/`,
|
|
8072
|
-
payload
|
|
8073
|
-
...payload,
|
|
8074
|
-
values: {
|
|
8075
|
-
...issueTypeFieldValues.values,
|
|
8076
|
-
...values
|
|
8077
|
-
}
|
|
8078
|
-
},
|
|
8059
|
+
payload,
|
|
8079
8060
|
blockers: [
|
|
8080
8061
|
updatedIssueTypeFieldValues.offline_id,
|
|
8081
8062
|
updatedIssueTypeFieldValues.fields_revision,
|
|
@@ -8544,7 +8525,6 @@ var __publicField = (obj, key, value) => {
|
|
|
8544
8525
|
exports2.selectAssetTypeFieldValues = selectAssetTypeFieldValues;
|
|
8545
8526
|
exports2.selectAssetTypeFieldValuesAttachmentById = selectAssetTypeFieldValuesAttachmentById;
|
|
8546
8527
|
exports2.selectAssetTypeFieldValuesAttachments = selectAssetTypeFieldValuesAttachments;
|
|
8547
|
-
exports2.selectAssetTypeFieldValuesAttachmentsByIds = selectAssetTypeFieldValuesAttachmentsByIds;
|
|
8548
8528
|
exports2.selectAssetTypeFieldValuesAttachmentsMapping = selectAssetTypeFieldValuesAttachmentsMapping;
|
|
8549
8529
|
exports2.selectAssetTypeFieldValuesById = selectAssetTypeFieldValuesById;
|
|
8550
8530
|
exports2.selectAssetTypeFieldValuesMapping = selectAssetTypeFieldValuesMapping;
|
|
@@ -8557,7 +8537,6 @@ var __publicField = (obj, key, value) => {
|
|
|
8557
8537
|
exports2.selectAssetTypeFieldsMapping = selectAssetTypeFieldsMapping;
|
|
8558
8538
|
exports2.selectAssetTypeFieldsOfAssetType = selectAssetTypeFieldsOfAssetType;
|
|
8559
8539
|
exports2.selectAssetTypeStagesMapping = selectAssetTypeStagesMapping;
|
|
8560
|
-
exports2.selectAssetTypeValuesOfAssetType = selectAssetTypeValuesOfAssetType;
|
|
8561
8540
|
exports2.selectAssetTypes = selectAssetTypes;
|
|
8562
8541
|
exports2.selectAssetTypesByIds = selectAssetTypesByIds;
|
|
8563
8542
|
exports2.selectAssetTypesMapping = selectAssetTypesMapping;
|
|
@@ -8615,11 +8594,14 @@ var __publicField = (obj, key, value) => {
|
|
|
8615
8594
|
exports2.selectFormSubmissionAttachmentsMapping = selectFormSubmissionAttachmentsMapping;
|
|
8616
8595
|
exports2.selectFormSubmissionById = selectFormSubmissionById;
|
|
8617
8596
|
exports2.selectFormSubmissions = selectFormSubmissions;
|
|
8597
|
+
exports2.selectFormSubmissionsByFormRevisions = selectFormSubmissionsByFormRevisions;
|
|
8618
8598
|
exports2.selectFormSubmissionsMapping = selectFormSubmissionsMapping;
|
|
8619
8599
|
exports2.selectFormSubmissionsOfAsset = selectFormSubmissionsOfAsset;
|
|
8620
8600
|
exports2.selectFormSubmissionsOfForm = selectFormSubmissionsOfForm;
|
|
8621
8601
|
exports2.selectFormSubmissionsOfIssue = selectFormSubmissionsOfIssue;
|
|
8622
8602
|
exports2.selectForms = selectForms;
|
|
8603
|
+
exports2.selectFormsCount = selectFormsCount;
|
|
8604
|
+
exports2.selectGeneralFormCount = selectGeneralFormCount;
|
|
8623
8605
|
exports2.selectGeoImageById = selectGeoImageById;
|
|
8624
8606
|
exports2.selectGeoImageMapping = selectGeoImageMapping;
|
|
8625
8607
|
exports2.selectGeoImages = selectGeoImages;
|
|
@@ -8644,7 +8626,6 @@ var __publicField = (obj, key, value) => {
|
|
|
8644
8626
|
exports2.selectIssueTypeFieldValues = selectIssueTypeFieldValues;
|
|
8645
8627
|
exports2.selectIssueTypeFieldValuesAttachmentById = selectIssueTypeFieldValuesAttachmentById;
|
|
8646
8628
|
exports2.selectIssueTypeFieldValuesAttachments = selectIssueTypeFieldValuesAttachments;
|
|
8647
|
-
exports2.selectIssueTypeFieldValuesAttachmentsByIds = selectIssueTypeFieldValuesAttachmentsByIds;
|
|
8648
8629
|
exports2.selectIssueTypeFieldValuesAttachmentsMapping = selectIssueTypeFieldValuesAttachmentsMapping;
|
|
8649
8630
|
exports2.selectIssueTypeFieldValuesById = selectIssueTypeFieldValuesById;
|
|
8650
8631
|
exports2.selectIssueTypeFieldValuesMapping = selectIssueTypeFieldValuesMapping;
|
|
@@ -8657,7 +8638,6 @@ var __publicField = (obj, key, value) => {
|
|
|
8657
8638
|
exports2.selectIssueTypeFieldsMapping = selectIssueTypeFieldsMapping;
|
|
8658
8639
|
exports2.selectIssueTypeFieldsOfIssueType = selectIssueTypeFieldsOfIssueType;
|
|
8659
8640
|
exports2.selectIssueTypeMapping = selectIssueTypeMapping;
|
|
8660
|
-
exports2.selectIssueTypeValuesOfIssueType = selectIssueTypeValuesOfIssueType;
|
|
8661
8641
|
exports2.selectIssueTypes = selectIssueTypes;
|
|
8662
8642
|
exports2.selectIssueTypesByIds = selectIssueTypesByIds;
|
|
8663
8643
|
exports2.selectIssueTypesOfOrganization = selectIssueTypesOfOrganization;
|
|
@@ -8667,8 +8647,9 @@ var __publicField = (obj, key, value) => {
|
|
|
8667
8647
|
exports2.selectIssuesOfIssueType = selectIssuesOfIssueType;
|
|
8668
8648
|
exports2.selectIssuesOfIssueTypeCount = selectIssuesOfIssueTypeCount;
|
|
8669
8649
|
exports2.selectLatestAssetTypeFieldsOfAssetType = selectLatestAssetTypeFieldsOfAssetType;
|
|
8650
|
+
exports2.selectLatestFormRevisionByForm = selectLatestFormRevisionByForm;
|
|
8670
8651
|
exports2.selectLatestFormRevisionOfForm = selectLatestFormRevisionOfForm;
|
|
8671
|
-
exports2.
|
|
8652
|
+
exports2.selectLatestIssueTypeFieldsOfAssetType = selectLatestIssueTypeFieldsOfAssetType;
|
|
8672
8653
|
exports2.selectLatestRetryTime = selectLatestRetryTime;
|
|
8673
8654
|
exports2.selectLicense = selectLicense;
|
|
8674
8655
|
exports2.selectLicenseForProject = selectLicenseForProject;
|
|
@@ -8705,6 +8686,7 @@ var __publicField = (obj, key, value) => {
|
|
|
8705
8686
|
exports2.selectProjectsOfOrganization = selectProjectsOfOrganization;
|
|
8706
8687
|
exports2.selectRehydrated = selectRehydrated;
|
|
8707
8688
|
exports2.selectRootDocuments = selectRootDocuments;
|
|
8689
|
+
exports2.selectSortedFormSubmissionsOfForm = selectSortedFormSubmissionsOfForm;
|
|
8708
8690
|
exports2.selectSortedOrganizationUsers = selectSortedOrganizationUsers;
|
|
8709
8691
|
exports2.selectSortedProjectUsers = selectSortedProjectUsers;
|
|
8710
8692
|
exports2.selectStageFormIdsFromStageIds = selectStageFormIdsFromStageIds;
|